summaryrefslogtreecommitdiff
path: root/sw/source
AgeCommit message (Collapse)AuthorFilesLines
6 hourstdf#168446 Unique name for images and better image representationUjjawal Kumar3-11/+8
Change-Id: Icff3556ed179b1a6ae7ad11583b752e77ea747ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191102 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
15 hourstdf#168448 sw letter spacing: enable it + glyph scaling at hyphenationLászló Németh3-14/+48
Letter spacing and glyph scaling were disabled in hyphenated lines because of their broken layout. Now the hyphen mark is positioned correctly at the end of the line, not before that, applying plus letter spacing and glyph scaling on horizontal position of the hyphen portion, and without expanding the text over the hyphen portion. Follow-up to commit 33f20d0a0fb32bf4452c15c6ae0e7c85b2ee6d46 "tdf#168351 sw letter spacing: fix spaces in the last line", commit 45ec7bd76196dcc60b4c2db2f6f00623ecbaf5a4 "tdf#168251 cui offapi xmloff sw glyph scaling: extend UNO/UX/ODF", commit 3c53797210bf0a4e3ffb36ed2beac4d5ce229ff2 "tdf#167648 sw letter spacing: implement minimum letter spacing" and commit f83a04c51056445bbf947a31c8c1866a5c30bef1 "tdf#167648 cui offapi xmloff sw: add DTP-feature maximum letter spacing". Change-Id: I36ec02be9afc60e1d640c40b628a786aea9a12aa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191080 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>
29 hourstdf#79356 - Adding connector support for Writer.Irgaliev Amin3-0/+86
Currently, the connector functionality in Writer is only available after copying such lines from Draw. This patch adds connector functionality directly to Writer. This functionality is available in: 1. "Insert" -> "Shape" -> "Connectors" in Standart Toolbar (UI variants) 2. "Insert" -> "Connectors" in Tabbed (UI variants) Change-Id: I51b517f160a69248458100ebe4fb97695bbfe1d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189911 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
30 hourstdf#162153 Add missing task lists symbolsUjjawal Kumar3-3/+13
Change-Id: I5c99fcc3ca621bd4058a05303908671a897722c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190976 Tested-by: Jenkins Reviewed-by: Thorsten Behrens <thorsten.behrens@collabora.com>
35 hourstdf#162153 Refactor: Improved Image HandlingUjjawal Kumar3-26/+64
Change-Id: If7f56cea743bbb250c7e0318d86dbc6a555b3056 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190953 Reviewed-by: Thorsten Behrens <thorsten.behrens@collabora.com> Tested-by: Jenkins
36 hourstdf#145689 sw: transfer breaks to table-in-tableJustin Luth1-1/+40
A table is allowed to specify a page break. If a table-in-table is the first thing in cell A1, then (only) that table-in-table is checked for the page breaks, so transfer page breaks when inserting a table-in-table. make CppunitTest_sw_htmlimport CPPUNIT_TEST_NAME=testTdf155011 Change-Id: Iae6d54aa2c7c33e07cdd235ff347a9d0fde3dc65 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191050 Reviewed-by: Justin Luth <jluth@mail.com> Tested-by: Jenkins
44 hourssw doc model xml dump: handle SwFlyFrameFormatMiklos Vajna1-0/+14
Turns out this can have an own title/description which is not on the underlying SdrObject, show this. Change-Id: I536d9d6b65c2eb65140d8aeb3a1ff65cf29f6995 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191039 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
47 hourssw: lokit: enable standard.dicRashesh Padia1-11/+3
- always have option to add words to standard.dic - it would make things easier for user if they haven't uploaded the custom dictionaries. Change-Id: Id1eb1936e57fc77756cfa87b983fb506dd83e63e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189359 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> (cherry picked from commit 9d6c672e11e6101f03644e30760927186cd2e74d) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189562 Tested-by: Jenkins
47 hourssimplify EmbeddedObjectContainer::CreateEmbeddedObjectNoel Grandin2-4/+2
dont need the variant that passes extra params, we already take that param but convert that extra parameter from a pointer to a std::optional, because some of the call sites pass a temporary OUString, and taking the address of a temporary is a no-no. Change-Id: I4d55f01a14230f5c64a052a143666a08bfcbf704 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191021 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
2 dayscid#1665431 Dereference null return valueCaolán McNamara1-14/+16
Change-Id: Icba6d8bdc8f07c8125c7c4784f93c19dd7d1bd7f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191000 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
3 daysRevert "Revert "Silence warning C6011: Dereferencing NULL pointer in sw""Xisco Fauli1-0/+2
So at least https://ci.libreoffice.org/job/lo_tb_master_win_analyze/ is happy This reverts commit 420e8a140a92b3ecaf2a71ca6d53445a5b8bc7dc. Change-Id: Iffb8c392a00626e729a0b27558773ae13ad8d92f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190962 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins
3 dayssw markdown export: handle line breaksMiklos Vajna1-1/+3
Export the bugdoc as markdown, the line break is lost when opening the result with a markdown viewer. <https://spec.commonmark.org/0.31.2/#hard-line-breaks> says the markup to be used is a normal line break that "is preceded by two or more spaces", which explains why just writing the newline character as-is wasn't enough. Fix the problem in OutEscapedChars() where we can emit the "escaped" line break as a special case. The alternative markup would be a backslash at the end of the line, which is more readable, but seems that's less supported by parsers (e.g. okular and https://markdowntohtml.com/ doesn't support it). Change-Id: Iedabe7ef2b42027f90595bf76e952253141d9b3f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190951 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
5 daysRevert "Silence warning C6011: Dereferencing NULL pointer in sw"Julien Nabet1-1/+0
This reverts commit 7c2d43b5af09a59b62694491a0a6e0815b74e989. It seems a false positive after all. Change-Id: I2f688fa809c89c188a8b772d6cb4b8fb875cb55d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190919 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Julien Nabet <serval2412@yahoo.fr>
5 daysSilence warning C6011: Dereferencing NULL pointer in swJulien Nabet1-0/+1
Change-Id: Ia0902cff8ba2785425fdbe6544cdc71eb97cc709 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190918 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
6 daysRelated: tdf#168355 Optimize the fixMike Kaganski1-26/+7
Inspired by the code I found in sw::HasPageBreakBefore, the change finds the frame that may provide the page description information once. Change-Id: Ie16b93d97e5a32e2991d68aa9c605fc0a411c1f4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190873 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
6 daysResolves tdf#168059 - Reinstate tab order at the image/frames dialogHeiko Tietze1-8/+7
Change-Id: I40dd3f59ccef90a33dc5d48568c132d76ec4fdf4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190856 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
6 daystdf#168351 sw letter spacing: fix spaces in the last lineLászló Németh1-0/+3
Minimum letter spacing and glyph scaling were applied in the last paragraph line incompletely, because of missing update of the break width, when the last two paragraph lines were compressed into a single one. This resulted in calculating more blank space, than available, and positive kerning, also glyph expansion with missing word spacing and overlapping words, instead of negative kerning and glyph compression for the desired word spacing. Follow-up to commit 45ec7bd76196dcc60b4c2db2f6f00623ecbaf5a4 "tdf#168251 cui offapi xmloff sw glyph scaling: extend UNO/UX/ODF", commit 3c53797210bf0a4e3ffb36ed2beac4d5ce229ff2 "tdf#167648 sw letter spacing: implement minimum letter spacing" and commit f83a04c51056445bbf947a31c8c1866a5c30bef1 "tdf#167648 cui offapi xmloff sw: add DTP-feature maximum letter spacing". Change-Id: I0d72a6fa2f9d945bd463fbe162ef5d0eb377f49a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190862 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: Jenkins
6 daystdf#168355 Page break with page style with page number in tableNoel Grandin1-0/+24
regression from commit 7d924018f3ea58050081936bde067391714a8bb5 Author: Noel Grandin <noel.grandin@collabora.co.uk> Date: Fri Jul 19 10:44:10 2024 +0200 don't use GetItemSurrogates in SwFrame::GetVirtPageNum Change-Id: Ibdc223842013ad11b56f402571f276de38a01f6a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190814 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
6 dayssw: silence warning C6011: Dereferencing NULL pointer 'pFormat'Xisco Fauli1-1/+1
Change-Id: I2c075588d6efff4f51832ccefc241e8e135954c0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190840 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
6 daystdf#168341 sw markdown filter: handle links on imagesMiklos Vajna4-8/+55
The bugdoc has an image which has a link: the link is lost on both import and export. The doc model for links is different for text an images: the text is covered by an SwFormatINetFormat hint, but images have their SwFlyFrameFormat, and that can contain an SwFormatURL. Fix the problem by looking at the currently pending attributes stack while inserting images: if a link is open, also set that on the image. The original link will be discarded, because it covers no text. Also fix the export to write markup when the fly format has an SwFormatURL. Change-Id: Ib94bcd0903835d6eb197ef2077075390305f37c8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190813 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
7 daystdf#46623 sw PageBreakWin: always move cursor to FindFirstBodyContentJustin Luth1-7/+7
When activating the blue-line page break decorator menu (edit or delete), the page break would be disabled if the cursor was not in FrameTypeFlags::BODY (or in a table). Well, the cursor position doesn't matter when the mouse activates this SwBreakDashedLine, so just always do what the table had to do anyway and that is to move the cursor so that a call to rSh.GetFrameType can return BODY. This allows SwBreakDashedLine to work when the cursor is in the header/footer/footnotes/flies etc. Change-Id: I64b49bed13821b46c3db2b132edeeb798dd2c3ca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190828 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com>
7 daysRevert "tdf#62032 sw: make List Level UI experimental"Justin Luth1-6/+0
This reverts commit 46e74a8bf03c06776cb144418206db7c4b843b41, which makes it non-experimental. Change-Id: I2274b0fbb8df156582e3c2970bb1409176e91fa2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190815 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com>
7 daystdf#142785 stashedFooter: fix copy/paste errorJustin Luth1-1/+1
Change-Id: I1455420a9bc8566648aee8972b47e0408e1255da Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190811 Reviewed-by: Justin Luth <jluth@mail.com> Tested-by: Jenkins
7 dayssw: PDF export: fix crash on section in table in sectionMichael Stahl1-3/+6
soffice.bin: vcl/source/gdi/pdfextoutdevdata.cxx:798: void vcl::PDFExtOutDevData::EndStructureElement(): Assertion `mpGlobalSyncData->mCurrentStructElement != 0' failed. The problem is that the parent-opening code in SwTaggedPDFHelper::BeginBlockStructureElements() when called for a section in a table cell opens a section that is outside the table. In this case, there are actually 2 section frames, one containing the table and one in the table cell, so reopening the outer section frame that is already on the stack ends up restoring a 0 parent SE and that triggers the assert. (regression from commit d5f68529a79c615f989fcfeef248d887a6e10f5a) Change-Id: Idd5be655345f96e1c2de84c5623f6e1dba4aae1b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190781 Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Tested-by: Jenkins
8 daystdf#168196 sw: copy header properties to all (first, even, odd)Justin Luth6-19/+91
Although a page style can have different CONTENTS on left, right, and first pages, the other header properties are the same/duplicated. This patch tries to set up the plumbing, and implements it for both the Borders and Background context dialog as well as for the general Page Style dialog. Unfortunately, our current implementation does not use an actual shared format, so the properties must be duplicated 4 times, and yet sadly I couldn't find any existing mechanism that attempted to keep them in sync. Doing it properly doesn't sound like copy/paste, so not something that I would attempt. I don't see any interoperability reasons in DOC/DOCX that would force the properties to be kept separate. Certainly for ODF, it appears that only Master is exported (in terms of the header and footer properties). tdf#144448 was a nice duplicate report that pointed out the need for FillHdFt to be used in order for Height/Spacing to also be affected. Otherwise SID_ATTR_PAGE_SIZE and SID_ATTR_PAGE_DYNAMIC were just ignored as !GetRanges().doesContainWhich(nWhich) Change-Id: I94f8cdf8bc6006dbea80941a2d6756e162f82411 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190420 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com>
8 daystdf#152519 Distinguish cursor/anchor for IM selectionMichael Weghorn1-1/+5
The Selection class is used in either of two ways for text selection: 1) Selection::Min() reports the selection anchor and Selection::Max() reports the cursor position. 2) Selection::Min() reports the smaller of the two indices mentioned in 1), and Selection::Max() returns the greater one. vcl::Window::GetSurroundingTextSelection and its overrides are used for input method handling and were so far implementing either of the semantics. Adjust those that were so far using 2) to 1), which will allow distinguishing between the cursor and the selection anchor in the input method logic in the platform/VCL plugin implementations. (SalInstanceEntry::get_position is another non-IM related example already relying on Edit::GetSelection implementing the behavior as described in 1).) Calling Selection::Normalize can be used to transform an object using the 1) semantics into 2). Currently, ImplHandleSalSurroundingTextRequest (in vcl/source/window/winproc.cxx) - which uses vcl::Window::GetSurroundingTextSelection - does this, so this commit shouldn't result in any change in behavior by itself yet. This commit prepares for porting QtWidget::inputMethodQuery/lcl_retrieveSurrounding from using a11y API to using SalEvent::SurroundingTextRequest, similar to what commit ce5e41ab99af350ca8f4b9fef3017d53f3526f83 Author: Caolán McNamara <caolanm@redhat.com> Date: Sun Oct 25 15:14:56 2020 +0000 Related: tdf#137620 use existing SalEvent::SurroundingTextRequest did for gtk3. This commit will help to keep distinguishing Qt::ImCursorPosition and Qt::ImAnchorPosition in QtWidget::inputMethodQuery/lcl_retrieveSurrounding. Change-Id: I46fdff87e84fbbe62f9b60b50376b6123d59fdac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190744 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 dayssw: Return result early in SwEditWin::GetSurroundingTextSelectionMichael Weghorn1-5/+5
... instead of first assigning it to local variable. `aSel`. Change-Id: I99734a12f03d8d3315b3a5966cf55a60ca1ae1cf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190743 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
8 daysUse Date ctor taking css::util::DateMike Kaganski1-3/+1
Change-Id: I2c652450f8d722af0115f556cb510836f13318db Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190759 Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> Tested-by: Jenkins
8 daystdf#168349: fix "standard" date in SwInsertDBColAutoPilot::DataToDoc (3)Mike Kaganski1-1/+1
This fixes bAsTable case. Change-Id: I48febf1def0198b9a7275fe4167e19287a0d1e19 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190758 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
8 daystdf#168348: fix "standard" date in SwInsertDBColAutoPilot::DataToDoc (2)Mike Kaganski1-1/+1
This fixes DB_Column::Type::COL_FIELD case. Change-Id: I1566f69bb38a2fda9a0c0c48d8662b7b4ddf3682 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190757 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
8 daystdf#168347: fix "standard" date in SwInsertDBColAutoPilot::DataToDoc (1)Mike Kaganski1-1/+1
This fixes DB_Column::Type::COL_TEXT case. Change-Id: I2b758000b49ae8d1729f3ce61b066f5d0eeb434b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190756 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
8 daystdf#168252: fix "standard" date in SwDBField::FormatValueMike Kaganski1-1/+1
... after commit 5b808448dc79e996efa7cb5082145d4e5803daa6 (Related: tdf#167591 Make STANDARD_DB_DATE more standard, 2025-07-21). Change-Id: I3bbe87c77aafb44cf53bc43613eeb3eb975b42f2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190749 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
8 dayssw markdown export: handle table cell adjustmentMiklos Vajna2-2/+36
The bugdoc has a table where all lines have the same amount of cells, and the "columns" are left, center and right aligned. All alignment is set to "left" on markdown export. The problem is that Writer has no way to represent cell-level horizontal alignment, but the HTML parser sets the cell alignment on the content of the cell. Fix the problem by doing the same on markdown export: take the first text node in the cell, and if that has a custom alignment, then work with that. Interestingly this cell-level horizontal alignment is not only missing from ODF, it's also missing from OOXML. Change-Id: Ibf0cfd1e947f342e8745e6198742882893f08fe3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190739 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
8 daysmove ItemInfoPackageSwAttributes to SwModuleCaolán McNamara6-12/+34
for the edgecase that DeInitVCL isn't called during lokit teardown, so in a dbgutil version the SolarMutex assert fires when the g_aItemInfoPackageSwAttributes is destroyed on exit because DeInitVCL unsets the pDbgTestSolarMutex pointer In this scenario the SwDLL is still destoyed at a sensible time due to the unique_disposing_solar_mutex_reset_ptr SwDLLInstance. So move the ItemInfoPackageSwAttributes to someplace which SwDLLInstance shutdown can clear it, SwModule seems like the sensible place as its the owner of the primorial SwAttrPool, so make SwModule own the ItemInfoPackageSwAttributes Change-Id: I0f075ee5b488df5a8011648457779eddbbd95c37 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190207 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190736 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
8 dayssw: rename variableXisco Fauli3-7/+7
To be inline with the other ones after commit 6fc54eea2f904a6704495f6b53fd5eff0dff1496 Author: Xisco Fauli <xiscofauli@libreoffice.org> Date: Mon Sep 8 19:55:45 2025 +0200 crashreport: avoid crash in InspectorTextPanel Change-Id: If3ac530ee069a9d1ed308c96a0633cad40cbe78c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190737 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
8 daystdf#137833 Always respect EXIF Orientation tag when importing a JPEGAndras Timar1-22/+0
Previously EXIF Orientation tag was read only via the Insert -> Image route. Now it is respected even via File -> Open or drag&drop. Change-Id: I16a79940823f4a62e8df5fa5d7c2e28a755e3460 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190717 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190733 Reviewed-by: Andras Timar <andras.timar@collabora.com> Tested-by: Jenkins
9 dayslok: use locale units for all dialogsPranam Lashkari1-0/+3
problem: in lok table dialog used inches when language was de but sidebar was set correctly to cm continues work from e2708fecb34fb4084f8db5f2c5ffb4d8923002ca Change-Id: I59b2aa28ec219c7298de6d0abd712617e9ddf7a6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190580 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> (cherry picked from commit ca185af0838243290ee204f049923ef3bd39d236) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190706 Reviewed-by: Pranam Lashkari <lpranam@collabora.com> Tested-by: Jenkins
9 dayscrashreport: avoid crash in InspectorTextPanelXisco Fauli1-3/+3
define FN_HIGHLIGHT_CHAR_DF in sfx2 like the other spotlight slots and rename it accordingly Seen in https://crashreport.libreoffice.org/stats/crash_details/a6200006-147e-4829-9293-93de0487133b Since commit 0d0e5c72e6344de48227b74846a6ff638b803c64 Author: Karthik <me@karthikreddy.org> Date: Mon Mar 10 13:34:39 2025 +0530 tdf#160194 Add 3 checkboxes in Style InspectorPanel Change-Id: I108fcbf39c8f6879258c9804f7f5a15313d259ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190684 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
9 daysHide hyperlink dialog fields based on selectionMaya Stephens5-0/+11
Hides the name field in all cases except writer text or draw text, as these seem to be the only types of text that can store link names. Hides text field for non-text links, such as shapes or images. If a shell does not set the properties m_showText or m_showName, deafult values to true, to avoid regressions for unimplemented shells. Change-Id: I228dc7f9d65c5cb17717afb79feb515376cd4d31 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/189885 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190678 Tested-by: Jenkins
9 daystdf#168317 sw markdown export: handle code blockMiklos Vajna1-1/+24
The bugdoc has a multi-paragraph code block, import that to Writer, save as markdown, the text is written as normal text. Note that unlike block quote or heading, there is no marker at the start of all paragraphs: only before the first and after the last one. However, in the Writer doc model, this is a per-paragraph setting for the used style. Fix the problem by checking if the para style is RES_POOLCOLL_HTML_PRE, then seeing if there is a similar paragraph before/after, so we only emit the start/end marker only once, even for multi-paragraph code blocks. Note that our own markdown import currently creates single-paragraph code blocks by replacing paragraph breaks with newlines. Change-Id: I0803bc71c758f250489d11e90b7f090966c8a8cc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190693 Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Jenkins
10 dayssw markdown export: handle block quoteMiklos Vajna2-5/+9
<https://spec.commonmark.org/0.31.2/#example-228> says the quote block markup should be written first, then the heading, so do it in that order. Also fix the import side: set the paragraph style in SwMarkdownParser::AddBlockQuote(), similar to how HtmlTokenId::BLOCKQUOTE_ON is handled in SwHTMLParser::NextToken(), so the export side has an easier time with recognizing this is a block quote. Change-Id: I305c7a31832cba44cb66943a5fc45a966ad62d55 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190656 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
10 daysSend search selection for comments to LOKit clientSamuel Mehrbrodt1-2/+15
This helps with highlighting search results within comments. Change-Id: I6c474dea70b6ec14c42d7dc70802c622152e0d1e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190581 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> (cherry picked from commit 63d82925f9ba4fe2b884523920b36c3f3309c440) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190585 Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@collabora.com> Tested-by: Jenkins
13 daystdf#168221 DOCX import, altChunk: fix lost header/footerMiklos Vajna1-1/+4
Open the bugdoc, first page should have a header, but it has no header. This went wrong in 32c322e9d037b29ded2297b400a2c596c042f1fa (DOCX import, altChunk: fix missing page break, 2020-10-26), the problem is that somewhat similar to copy&paste, the altChunk mechanism drops styles from the inner document: the section breaks in the middle of the document are wanted, but the final section break is not wanted. So fix the problem by restricting when SectionPropertyMap::CloseSectionGroup() sets the page style name: instead of always doing that for alt chunks, only do it for non-last section breaks. This keeps the old page break case working and fixes the new, lost header problem. Change-Id: I5fc2a3d0561795612d39e50d780c7f78757486e2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190625 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
13 daystdf#167648 sw letter spacing: fix division by zeroLászló Németh1-0/+4
/sw/source/core/text/portxt.cxx:351:90: runtime error: division by zero #0 0x7f7bf4700824 in SwTextPortion::SetSpacing(SwTextFormatInfo&, o3tl::strong_int<int, Tag_TextFrameIndex>, int, short) /sw/source/core/text/portxt.cxx:351:90 (<https://ci.libreoffice.org//job/lo_ubsan/3669/>) Regression from commit 3c53797210bf0a4e3ffb36ed2beac4d5ce229ff2 "tdf#167648 sw letter spacing: implement minimum letter spacing". Change-Id: I1dbea7ce855c1f4cb0604e6f9b96b875dd8eb646 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190608 Reviewed-by: László Németh <nemeth@numbertext.org> Tested-by: Jenkins
13 daysremove BitmapExNoel Grandin3-2/+3
all use-sites have been converted to Bitmap Change-Id: I1a8842217a266eef100bd387ab013b004e532256 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190618 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Tested-by: Jenkins
13 daystdf#143148 - Use pragma once instead of include guardsBogdan Buzea1-4/+1
Change-Id: I765f7fd9c0ad94e8acedeb9a62b0570c2cf526ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/186116 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
14 daystdf#167446 Fix Unordered and Ordered list entries in Bullets andIlmari Lauhakangas1-2/+2
Numbering dialog and place them in the order they used to be in Change-Id: I16333b47766e76f8a65fb1c176a22cdfb857148e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190571 Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org> Tested-by: Jenkins
2025-09-04tdf#131132 SwFrame::OnFirstPage: replace GetPageDesc w/ FindPageDescJustin Luth1-2/+2
SwFormat::GetPageDesc might be obsolete. It certainly is when wsfrm.cxx's SwContentFrame::UpdateAttr_ calls pagechg.cxx SwFrame::CheckPageDesc for a RES_PAGEDESC change. In that case bFirst was set true every time because SwFrame::CheckPageDescs's SwPageDesc *pDesc = pPage->FindPageDesc(); used FindPageDesc to get real, new PageDesc while SwFrame::OnFirstPage's const SwPageDesc* pDesc = pPage-GetPageDesc(); was just getting the layout's cached attribute. A code read suggests there was no situation that requires the old logic in order to function properly. In some test documents, CheckPageDesc was soon called a second time, and in that case the PageDesc has already been refreshed, so bFirst gets set appropriately and the wrong layout caused by the first run is not noticed. Change-Id: I7c13cd7ee47d5d5eeb4c524c4e514b4bb964d36b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190570 Tested-by: Jenkins Reviewed-by: Justin Luth <jluth@mail.com>
2025-09-03Fix typoAndrea Gelmini1-1/+1
Change-Id: Id247c923c98f95ac953904281c4a2696d27e3d86 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190561 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
2025-09-03tdf#168251 cui offapi xmloff sw glyph scaling: extend UNO/UX/ODFLászló Németh9-3/+86
Add new paragraph justification options "Minimum glyph scaling" and "Maximum glyph scaling" to improve typography, like DTP software do, allowing to typeset visually better paragraphs, especially narrow columns without unacceptably big word spacing. * Add spin boxes to Alignment in paragraph formatting dialog window; * Store properties in paragraph model: css::style::ParagraphProperties::ParaPropScaleWidthMinimum css::style::ParagraphProperties::ParaPropScaleWidthMaximum Note: desired glyph scaling is already supported by ODF/UNO, see css::style::CharacterProperties::CharScaleWidth. * Implement visual layout of minimum and maximum glyph scaling, limited by the available extra word spacing and letter spacing, too. Note: last line can exceed the paragraph width, because minimum glyph scaling, also minimum letter scaling of the last line haven't been applied there, yet. * Add ODF import/export (loext:text-scale-maximum and loext:text-scale-minimum, where style:text-scale is for the desired text scaling). * Add ODF unit test. Note: hyphenated lines, lines with multiple portions haven't been using custom glyph scaling, yet. Note: resolution of glyph scaling is 1 percent, which will avoid of overgeneration of font types using variable fonts. Change-Id: I9b4576dde4303437b64e37202c47f888f94c3f67 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190534 Tested-by: Jenkins Reviewed-by: László Németh <nemeth@numbertext.org>