Open the bugdoc, start text edit on the only slide, in the only shape.
Use the toolbar button to change from no numbering to bullet, some very
small bullet with no spacing between the bullet and the text shows up.
This happens since commit f60ee00edcc5b0fdee5227bb695448119cddb013
(tdf#89365 sd UI: fix transitioning from a numbered list to a bulleted
list, 2025-11-04), previously the numbering to bullet transitioning was
broken and you had to click on the "turn on bullets" button twice. A
side effect of the old two-step transitioning was that no formatting
from the old numbering was kept, so better defaults were used (but the
numbering level was lost).
Keep the old use-case fixed and fix the new use-case by looking at how
this works on master pages: there TextObjectBar::ExecuteImpl()'s
FN_NUM_BULLET_ON block calls
SdStyleSheetPool::setDefaultOutlineNumberFormatBulletAndIndent() before
setting the number format for a specific level of the numbering rule. Do
the same for non-master pages in
FuBulletAndPosition::SetCurrentBulletsNumbering(): if we transition to a
bullet, then use the same defaults in the non-master-page case, too.
Note that turning bullets on or off as direct formatting is not ideal: a
better style is to assign bullets (or no bullets) to different outline
levels in the master page, and then just change the list level of
paragraphs in the outliner shape, which avoids this sort of problem in
the first place.
Change-Id: I4227988593baeaa91cc21525fb895c3acaf3afd7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195839
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Import and round-trip tests don't run when libeot is not available.
Export test doesn't depend on libeot, so it can run.
Change-Id: I71d290b3f93a0ccdb9f8a5bdb9c933464c7059ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184974
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Not a split, to avoid too many conflicts while cherry-picking, but at
least create a new suite where next tests can be added without too much
build time after source code edits.
Change-Id: Idb421db0a63dccee205a4092d368f6d48a093a10
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165163
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
This reverts commit 2cf7c26293.
Reason for revert:
<_rene_> noelgrandin: sdui->sd... and what about people not needing that ui?
<_rene_> (e.g. --disable-gui and libreoffice-draw-nogui and impress-nogui)
<_rene_> i.e. the use case of --convert-to for ppt(x) etc
Change-Id: I6755c209e63f34b3fc9f9fdc4af7001b18579e8b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163348
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
which eliminates another dynamic-symbol lookup and another complication
which was making it harder to do better with --enable-mergedlibs
sd is relatively small, so even the combined library is not as big as
one of the sw and sc libraries
Change-Id: Ibef8077d70a5abc7361c95f5dbb8c43447610188
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163302
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
When in edit mode, the text can be deleted, so the text box size
can become smaller, but the auto-fit algorithm didn't take into
account.
In this case we already have the font and spacing scaling already
set to a specific value and we need to find a scaling value where
the margin is the smallest.
This change also adds a test for the issue.
Change-Id: I6c52f06dfbf5a1e582f7b31aceabf4736498ee90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151412
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Inset values for top, bottom are calcualted differently in OOXML
and need to be coverted on import to the text distance LO values,
that place the text relative to the shape correctly.
At export, the values can be converted back to the OOXML inset
compatible values, but the values are not always converted back to
the same values as the conversion is not bijective, however they
do render the same.
This also adds the test for the conversion when importing and
checks that the exported values are expected.
Change-Id: Ic64eec1a2a80ddad997f916da3e87dc30aaa12be
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135463
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
PPT can't store an OOXML custom shape with fill bitmap, PowerPoint
generates a fallback bitmap when saving to PPT.
We used to keep the bitmap and loose the custom shape geometry, but that
was changed with commit f4ba484183 (ooxml
import: supprt cropping to shape, 2019-05-13).
Fix the regression by going back to keeping the bitmap, a full fallback
bitmap (ala PowerPoint), would be more work, taking e.g. blurry shadows
(changing the shape position and size) into account.
Change-Id: I7192f912077f2de026573855dbebbdf576e39ebc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106219
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Open a simple PDF document, run the "break" action, check that
we get the expected text as a text object.
Change-Id: Iadb458f06b437689202eb013cb900edaabf17673
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93395
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
If one view has an active text edit, then current code doesn't handle
manipulating the undo text outside the text edit, so avoid problems by
simply not adding an undo action to the undo stack for shape creation or
move.
Other actions might want to do the same in the future: check for
CanDoSdrUndo() before calling SdrUndoFactory member functions.
[ Found no existing test suite similar to CppunitTest_sw_uiwriter, so
added one. ]
Change-Id: I3a364bf4fe6f9b0c13aa07283681b1045368cf7a
Reviewed-on: https://gerrit.libreoffice.org/73558
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
In order to get the Impress-specific dialogs in the (new,
Online-based) iOS and Android apps, too.
Change-Id: I7400326bafc1b8a0470b5ed0fb631ae984b7b795
since it has nothing to do with the headless command line option, so
use the name it has in the configure.ac file
Change-Id: Ibf0615ed02695d6e48a797f5632e4f417c010c70
Reviewed-on: https://gerrit.libreoffice.org/59611
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
* Use the same structure for export what MSO uses
** Position and size information are exported as VML shape properties
** Different handling of inline and floating controls (pict or object)
** Do some changes on VML shape export to match how MSO exports these controls
** Write out activeX.xml and activeX.bin to store control properties
** Use persistStorage storage type defined in activeX.xml
* Drop grabbaging of activex.XML and activeX.bin
* Cleanup control related test code
Change-Id: I38bb2b2ffd2676c5459b61ec2549c31348bab41c
Signed-off-by: Tamás Zolnai <tamas.zolnai@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/41256
Tested-by: Jenkins <ci@libreoffice.org>
* all .ui files go from <interface> to <interface domain="MODULE"> e.g. vcl
* all .src files go away and the english source strings folded into the .hrc as NC_("context", "source string")
* ResMgr is dropped in favour of std::locale imbued by boost::locale::generator pointed at matching
MODULE .mo files
* UIConfig translations are folded into the module .mo, so e.g. UIConfig_cui
goes from l10n target to normal one, so the res/lang.zips of UI files go away
* translation via Translation::get(hrc-define-key, imbued-std::locale)
* python can now be translated with its inbuilt gettext support (we keep the name strings.hrc there
to keep finding the .hrc file uniform) so magic numbers can go away there
* java and starbasic components can be translated via the pre-existing css.resource.StringResourceWithLocation
mechanism
* en-US res files go away, their strings are now the .hrc keys in the source code
* remaining .res files are replaced by .mo files
* in .res/.ui-lang-zip files, the old scheme missing translations of strings
results in inserting the english original so something can be found, now the
standard fallback of using the english original from the source key is used, so
partial translations shrink dramatically in size
* extract .hrc strings with hrcex which backs onto
xgettext -C --add-comments --keyword=NC_:1c,2 --from-code=UTF-8 --no-wrap
* extract .ui strings with uiex which backs onto
xgettext --add-comments --no-wrap
* qtz for gettext translations is generated at runtime as ascii-ified crc32 of
content + "|" + msgid
* [API CHANGE] remove deprecated binary .res resouce loader related uno apis
com::sun::star::resource::OfficeResourceLoader
com::sun::star::resource::XResourceBundleLoader
com::sun::star::resource::XResourceBundle
when translating strings via uno apis
com.sun.star.resource.StringResourceWithLocation
can continue to be used
Change-Id: Ia2594a2672b7301d9c3421fdf31b6cfe7f3f8d0a
Up to now the screenshot creation was added/dependent of
target slowcheck. Since quite some modules have added screenshot
creations now, I added an own target 'screenshot' to allow to keep
current slowcheck and screenshot creation separated
Change-Id: I80a49a0db607edf8e0405672d570f624d29912e7
... to prevent duplicating masters on slide copy-paste.
Also fixed a 10-year copy-paste error (pRefPage wasn't replaced
with pNPage).
Fixed argument evaluation order issue (aStream.GetEndOfData()
depends on Flush() but doesn't call it, so will return incorrect
result if called before aStream.GetBuffer()).
Replaced compare of hashes with results of stringify(),
because it removes useless overhead (hashes are calculated from
stringify() anyway, and are not cached anywhere).
Removed Flush() called from SvMemoryStream::GetBuffer(), because
it calls GetData(), which calls Flush() itself.
Thanks to Andras Timar for unit test framework.
Change-Id: Ia46d4e9a017fc628d424949a9d229045a249a4ca
Reviewed-on: https://gerrit.libreoffice.org/20367
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>