Commit graph

497970 commits

Author SHA1 Message Date
Pierre F
27e5a74960 Update git submodules
* Update helpcontent2 from branch 'master'
  to 421ecbe5b8f35dc9a50ac6a329662231914132d4
  - clarify + link. tdf#155459
    
    Change-Id: I422016b32edf3d2bf898eb5ef4b1651eb7ee7c0c
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/170360
    Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
    Tested-by: Jenkins
2024-07-25 10:18:18 +02:00
Stephan Bergmann
e8358d0a0f Keep around a single configmgr::Components::WriteThread instance
...instead of joining and later re-spawning one.  This helps with the current
Emscripten setup (see 5b1df7709d "Document the
Emscripten threads issue"), and probably doesn't matter much either way on other
platforms (so just get it in unconditionally).  (Renaming the delay_ member
variable to delayOrTerminate_, to make its overall role more clear.)

(I ran into this when trying to turn the Emscripten build from starting up with
a Writer document to starting up with the start center, and then manually
opening a new Writer document.  The resulting different usage scheme happened to
exhaust our current -sPTHREAD_POOL_SIZE=4 pool quickly, so this is one of
multiple commits to address that.)

Change-Id: I1bd28604b4640d2afad982bfd82b1acee8200e26
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170993
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
2024-07-25 09:51:52 +02:00
Pierre F
4a608aa02d Update git submodules
* Update helpcontent2 from branch 'master'
  to 287be903d8fad56a92ee79f88ab4a6b863614459
  - Note on  Cannot toggle edit mode on New (unsaved) Documents. tdf#128836
    
    Change-Id: Ic2d416ec2f9add41958485bfb7b2db375eae432a
    Reviewed-on: https://gerrit.libreoffice.org/c/help/+/170882
    Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
    Tested-by: Jenkins
2024-07-25 09:35:08 +02:00
Đoàn Trần Công Danh
b6edb370a1 gtk4: fix -Wmaybe-uninitialized
Despite that we bailed out when both old and new value set,
gcc-13 cannot see that.

Change-Id: Ie727a14bb29a4b1cc304d2ce077c62f72cece19f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170973
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-25 07:52:13 +02:00
Javiya Vivekkumar Dineshbhai
35efb60e20 slideshow: Enable venetian transition for impress
Signed-off-by: Javiya Vivekkumar Dineshbhai <vivek.javiya@collabora.com>
Change-Id: I068864c5b383ca142fd0da8c274c485c3d7399d5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170261
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
(cherry picked from commit 379de66f0758cdc1a03811ef497e6fd456a16c4a)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170876
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Tested-by: Jenkins
2024-07-25 07:29:30 +02:00
Jim Raykowski
c60dd66d89 tdf#162018 Unexpected loss in focus in the "Manage Changes" window
when adding a change in the document (Track changes mode), round 4

Addresses "situation 4" when a new change makes a change to an entire
previous change or to multiple previously tracked changes.

Change-Id: I02175db6c7bc1258f8e7c05835b05ff79b7d7b83
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170984
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
Tested-by: Jenkins
2024-07-25 01:54:41 +02:00
Jim Raykowski
cac1b706ec related tdf#161717 Use a better approach to determine RedlinData
::pData type

Casting a void* RedlineData::pDate to either a SwRedlineDataParent*
or SwRedlineDataChild* works because of the order and variable types
declared in the SwRedlineDataChild and SwRedlineDataParent classes
match until an OUString is declared in SwRedlineDataParent. That
explains why the non-patched code behaves as expected even though
testing if the entry has children to determine which cast to do is
flawed. Better is to test the iterator depth which is what this patch
does.

Change-Id: I24ca0990a4edbd50a7e3dc5d0be4c5312c240921
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170860
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
2024-07-25 01:47:07 +02:00
Eike Rathke
f1f5e9c8d7 Resolves: tdf#162087 TableRef item specifier may occur standalone
This is what
https://learn.microsoft.com/en-us/openspecs/office_standards/ms-xlsx/3d025add-118d-4413-9856-ab65712ec1b0
specifies as  keyword  in

 intra-table-reference = spaced-lbracket inner-reference spaced-rbracket / keyword / ("[" [simple-column-name] "]")

with

 keyword = "[#All]" / "[#Data]" / "[#Headers]" / "[#Totals]" / "[#This Row]"

Change-Id: I52b200aad41d53a49e662d6238576f6f4f0deb37
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170986
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
2024-07-25 01:34:32 +02:00
Juergen Funk
e8a271dd53 tdf#160163 reset placeholder in Text field when empty
for all the Text field made a global define
  of the NonBreakSpaces mask

Change-Id: I7107f941ee9008415325aefe5487555d91dbf1ab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170596
Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
2024-07-25 00:49:55 +02:00
Andrea Gelmini
ee9da9e3e3 Fix typo
Change-Id: Iec45b32fce6381564f21c79d999a8db9a7757518
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170981
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-07-24 22:36:26 +02:00
Andrea Gelmini
77548ff919 Fix typo
Change-Id: Id89680653dec2edcb0529550d54a50036b736cc9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170982
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2024-07-24 22:36:07 +02:00
Andrea Gelmini
59c781f29b Fix typo
Change-Id: I582bf693085251725b314b6caab9247650b25c6f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170980
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-07-24 22:35:50 +02:00
Andrea Gelmini
7a369532d4 Fix typo
Change-Id: I78bf0f3c03c190fcb577e5342041330aee15a6d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170983
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2024-07-24 22:35:29 +02:00
Stephan Bergmann
8cdf186fac Remove bExitWasCalled-handling from confgimgr::Components dtor
That code had been added with 9fa4eff9be
"profilesafe: Enhancements to BackupFileHelper", but it looks dubious:

For one, I cannot find proof for the claim that MSVC would run destructors of
static objects upon _exit.  Building a simple C++ test program

> #include <iostream>
> #include <stdlib.h>
> struct S { ~S() { std::cerr << "hello\n"; } };
> S s;
> void f() { _exit(1); }
> int main() { f(); }

with contemporary MSVC 17.10 and executing it shows no "hello" stderr output
(see
<https://gcc.godbolt.org/#g:!((g:!((g:!((h:codeEditor,i:(filename:'1',fontScale:14,fontUsePx:'0',j:1,lang:c%2B%2B,selection:(endColumn:13,endLineNumber:5,positionColumn:13,positionLineNumber:5,selectionStartColumn:13,selectionStartLineNumber:5,startColumn:13,startLineNumber:5),source:'%23include+%3Ciostream%3E%0A%23include+%3Cstdlib.h%3E%0Astruct+S+%7B+~S()+%7B+std::cerr+%3C%3C+%22hello%5Cn%22%3B+%7D+%7D%3B%0AS+s%3B%0Avoid+f()+%7B+_exit(1)%3B+%7D%0Aint+main()+%7B+f()%3B+%7D%0A'),l:'5',n:'1',o:'C%2B%2B+source+%231',t:'0')),k:32.19670284753087,l:'4',m:100,n:'0',o:'',s:0,t:'0'),(g:!((h:compiler,i:(compiler:vcpp_v19_40_VS17_10_x64,filters:(b:'0',binary:'1',binaryObject:'1',commentOnly:'0',debugCalls:'1',demangle:'0',directives:'0',execute:'0',intel:'0',libraryCode:'0',trim:'1',verboseDemangling:'0'),flagsViewOpen:'1',fontScale:14,fontUsePx:'0',j:1,lang:c%2B%2B,libs:!(),options:'',overrides:!(),selection:(endColumn:1,endLineNumber:1,positionColumn:1,positionLineNumber:1,selectionStartColumn:1,selectionStartLineNumber:1,startColumn:1,startLineNumber:1),source:1),l:'5',n:'0',o:'+x64+msvc+v19.40+VS17.10+(Editor+%231)',t:'0'),(h:output,i:(compilerName:'x86-64+clang+18.1.0',editorid:1,fontScale:14,fontUsePx:'0',j:1,wrap:'1'),l:'5',n:'0',o:'Output+of+x64+msvc+v19.40+VS17.10+(Compiler+%231)',t:'0')),k:67.80329715246913,l:'4',m:100.00000000000001,n:'0',o:'',s:1,t:'0')),l:'2',n:'0',o:'',t:'0')),version:4>).

If there indeed were issues with MSVC and non-standard _exit, a solution might
be to use standard _Exit instead (in FatalError in desktop/source/app/app.cxx).

And for another, when bExitWasCalled was true in
configmgr::Components::~Components, it would still have called
writeThread_->join() (i.e., it would potentially still have called
writeModFile from within configmgr::Components::WriteThread::execute()), but (a)
only after waiting out its full

> delay_.wait(std::chrono::seconds(1));

(because it missed to call configmgr::Components::WriteThread::flush, which
calls delay_.set()), and (b) potentially running into a deadlock because it
called writeThread_->join() with *lock_ locked, which
configmgr::Components::WriteThread::execute wants to lock too.

(I came across this because it got into my way when trying to adapt the
lifecycle of configmgr::Components::WriteThread to the needs of the Emscripten
build.)

Change-Id: Icb4ebf00d1d316b80c29f7bd91b86614ef4ac430
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170940
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-07-24 22:15:30 +02:00
Stephan Bergmann
5b1df7709d Document the Emscripten threads issue
Change-Id: Ia26b48d46283a9528a665eb5028bd5b9bd0dd953
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170972
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
2024-07-24 22:15:08 +02:00
Caolán McNamara
7f135227a9 cid#1556131 COPY_INSTEAD_OF_MOVE
and

cid#1556135 COPY_INSTEAD_OF_MOVE
cid#1556146 COPY_INSTEAD_OF_MOVE
cid#1556164 COPY_INSTEAD_OF_MOVE
cid#1556171 COPY_INSTEAD_OF_MOVE
cid#1556177 COPY_INSTEAD_OF_MOVE
cid#1556181 COPY_INSTEAD_OF_MOVE
cid#1556182 COPY_INSTEAD_OF_MOVE
cid#1556183 COPY_INSTEAD_OF_MOVE
cid#1556192 COPY_INSTEAD_OF_MOVE
cid#1556201 COPY_INSTEAD_OF_MOVE
cid#1556208 COPY_INSTEAD_OF_MOVE
cid#1556215 COPY_INSTEAD_OF_MOVE
cid#1556224 COPY_INSTEAD_OF_MOVE
cid#1556227 COPY_INSTEAD_OF_MOVE
cid#1556228 COPY_INSTEAD_OF_MOVE
cid#1556238 COPY_INSTEAD_OF_MOVE
cid#1556246 COPY_INSTEAD_OF_MOVE
cid#1556247 COPY_INSTEAD_OF_MOVE
cid#1556288 COPY_INSTEAD_OF_MOVE
cid#1556293 COPY_INSTEAD_OF_MOVE
cid#1556305 COPY_INSTEAD_OF_MOVE
cid#1556310 COPY_INSTEAD_OF_MOVE
cid#1556317 COPY_INSTEAD_OF_MOVE
cid#1556321 COPY_INSTEAD_OF_MOVE
cid#1556322 COPY_INSTEAD_OF_MOVE
cid#1556331 COPY_INSTEAD_OF_MOVE
cid#1556339 COPY_INSTEAD_OF_MOVE
cid#1556342 COPY_INSTEAD_OF_MOVE
cid#1556351 COPY_INSTEAD_OF_MOVE
cid#1556358 COPY_INSTEAD_OF_MOVE
cid#1556370 COPY_INSTEAD_OF_MOVE
cid#1556379 COPY_INSTEAD_OF_MOVE
cid#1556390 COPY_INSTEAD_OF_MOVE
cid#1556423 COPY_INSTEAD_OF_MOVE
cid#1556532 COPY_INSTEAD_OF_MOVE
cid#1556561 COPY_INSTEAD_OF_MOVE
cid#1556662 COPY_INSTEAD_OF_MOVE
cid#1556704 COPY_INSTEAD_OF_MOVE
cid#1556730 COPY_INSTEAD_OF_MOVE
cid#1556988 COPY_INSTEAD_OF_MOVE
cid#1557071 COPY_INSTEAD_OF_MOVE
cid#1557081 COPY_INSTEAD_OF_MOVE
cid#1557177 COPY_INSTEAD_OF_MOVE

Change-Id: I2c723f0fe9a4eefa62a68f47049ed690d06eb0ba
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170932
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-07-24 22:12:32 +02:00
Xisco Fauli
e22dfeef0c related tdf#161865: fix another ODR violation
Change-Id: I082ad91c0c060e7231d0af15868960cb2399b088
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170971
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-07-24 21:39:56 +02:00
Patrick Luby
4bbdb2f071 tdf#162171 alpha mask pixels are now alpha instead of transparency
Starting with commit 81994cb2b8,
alpha masks now store alpha instead of transparency values.

Change-Id: I74d7a536e0ae1aea3b462d660ae3e4b815cf89c2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170968
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
2024-07-24 20:58:16 +02:00
Xisco Fauli
6ddd8287d2 libxml2: upgrade to 2.13.3
it fixes CVE-2024-40896

Downloaded from https://download.gnome.org/sources/libxml2/2.13/libxml2-2.13.3.tar.xz

Change-Id: Icba636106cc9d1f096f5479bd80d5e30712c2e6a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170975
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2024-07-24 20:32:17 +02:00
Justin Luth
926372b8de tdf#157952 sw content controls, drop-down: remove when obsolete
One place that was missed was when moving from one content control
to another (for example, using the tab key).

Change-Id: I62a3af2a5a7036aaac605d592c244a58f5b65a12
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170967
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
2024-07-24 20:01:18 +02:00
Michael Weghorn
84929c43df tdf#155447 qt a11y: Map TEXT_FRAME role to QAccessible::Pane
This makes the "sentence" drawing area from the spelling
dialog (cui/uiconfig/ui/spellingdialog.ui) show up with
role panel instead of "unknown" in Accerciser when using
the qt6 VCL plugin.

This is the same as with gtk3, where the `TEXT_FRAME` role
is mapped to `ATK_ROLE_PANEL`.

Change-Id: I41133c51c64749ccd808cb675fe647a0daefac33
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170944
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 18:20:52 +02:00
Xisco Fauli
0435460d22 nss: upgrade to 3.102
Downloaded from https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_102_RTM/src/nss-3.102-with-nspr-4.35.tar.gz

Change-Id: I0a045b91deb4540771aade2c7965dafaa269f762
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170943
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-07-24 17:54:12 +02:00
Armin Le Grand (Collabora)
1b74b95bba CairoSDPR: Improve animated tiled fills
Up to now these needed to be decomposed to be
rendered and did not support animation. I already
added animation, but that was a compromize.
Done that now in the correct way, so that animation
is possible and can be directly rendered using
a FillGraphicPrimitive2D if wanted, including one
extra layer of alpha, too.
This will also enhance other primitive processors,
but of course most those that do handle that now
directly, so CairoPixelProcessor2D does that.
Note that it does not need to support animation
in any way (that is part of the primitive stack),
but just direct tiled rendering.

Change-Id: I8860098dfb3f2369e361579cf1deea7c67b662b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170937
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2024-07-24 17:00:56 +02:00
Noel Grandin
ab704c00fd tdf#161865 Base Table Design View not editable
we had an ODR violation with a constant named PROPERTY_DATASOURCE which
is also defined inside dbaccess

regression from
commit bacb92275c
"add dbu to --enable-mergelibs=more"

Change-Id: I315ba82e0bccc49e01bd6a438b7e671b971410dc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170939
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-07-24 16:43:42 +02:00
Caolán McNamara
3e99775689 ofz#70572 build failure
Change-Id: Ib313e1c6ace119e1480587e2bd519a5841e51a4b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170941
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2024-07-24 16:06:42 +02:00
Jonathan Clark
15d92cd882 tdf#157390 Fix overlapping CJK characters in PDF export
This change fixes a vertical text glyph metrics regression that was
introduced while migrating PDF export to use metrics from HarfBuzz. The
root cause was incorrectly caching CJK glyph heights in place of widths
for vertical text.

Change-Id: I8426fc902658d1c045b42e760028f26b09eeef93
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170935
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
2024-07-24 15:05:59 +02:00
Michael Weghorn
f3d7d24b99 tdf#161501 icon choice ctrl: Actually set text colors for non-selection
commit 24103bdf3f
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Jul 18 08:58:10 2024 +0200

        tdf#161501 icon choice ctrl: Use tab text colors

        Instead of using the generic window or highlight
        text color, use the specific text colors for tabs
        when painting entries of the vertical tab control,
        similar to how it's done for the non-vertical
        tab control (see `TabControl::ImplDrawItem`).

        (...)

had added code to set the font color for the different
states of a vertical tab control item, but as this
was in the `if (bSelected)` block, only the one
for selection was actually used, so the other cases
were consequently removed in

    commit a4befb29f3
    Author: Caolán McNamara <caolan.mcnamara@collabora.com>
    Date:   Sat Jul 20 19:20:13 2024 +0100

        cid#1610738 Logically dead code

again.

Thanks to Chris Sherlock for pointing this out!

Reintroduce setting colors, but drop the `bSelected`
condition altogether. Drop explicitly setting a fill
color, which the implementation for the non-vertical
tab control in `TabControl::ImplDrawItem` also doesn't
do and which would e.g. result in an odd grey background
for non-selected entries when used unconditionally with
the gen VCL plugin.

I see no visual difference with or without this commit
in place on Windows or for the gen VCL plugin or the kf5 VCL
plugin with the Breeze style on Linux, but other theming/styles
could depend on according colors being set.

Change-Id: Iccf7170f2de04cead23607977ac8cf7acbc471f3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170926
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 14:45:01 +02:00
Michael Weghorn
87671a7250 tdf#161501 icon choice ctrl: Stop hover-highlight when mouse leaves
When the mouse leaves the vertical tab bar,
unset the entry to highlight as mouse-hovered,
as the previously one no longer is when the
mouse is outside the area of the tab bar.

This fixes the issue of the previously
mouse-hovered entry still being painted
with mouse-hover feedback when slowly moving the
mouse to the right away from an entry in the
"Insert" -> "Page Style" dialog with gen or kf5
at least, as shown in attachment 195467
of tdf#161501.

Change-Id: I646cab54f5031ed6a8aa88d4a162bb3a2456eec4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170923
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 14:44:54 +02:00
Michael Weghorn
b3626b0142 tdf#161501 icon choice ctrl: Drop WB_HIGHLIGHTFRAME
It is always set, so no need to have an
icon choice control specific window bit to
specify whether or not to highlight the
currently mouse-hovered entry. Just always
do it.

Change-Id: Ib259b6b1576e1968221c4f98661a3a93e600c93b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170922
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 14:44:46 +02:00
Xisco Fauli
282da64a8f curl: upgrade to 8.9.0
Downloaded from https://curl.se/download/curl-8.9.0.tar.xz

Change-Id: Id8198dcc73e1679e8f672459b19d84606ae3e762
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170934
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2024-07-24 14:32:24 +02:00
Justin Luth
3974c4748b tdf#138093 tdf#131722 docx import: sdt lost first date character #2
While GetIsDummyParaAddedForTableInSection() is true
for the entire section, it should only be used
against GetIsFirstParagraphInSection()
where the dummy para exists.

make CppunitTest_sw_ooxmlexport19 CPPUNIT_TEST_NAME=testTdf138093B

Change-Id: I457c0aa25eb7bd086c5c15bd889d9cd89c51db95
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170921
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
2024-07-24 13:52:00 +02:00
Justin Luth
62974cf6a8 tdf#158661 docx import plaintext sdt: remove unnecessary goRight
This fixes a 24.2 regression
from commit 5082d50d24
   writerfilter: use content controls for text in block SDTs

which was made even worse
with 24.2 commit 7c4dba1def.

Initially, the starting mark was made as soon as SdtContent was seen.
After that, you could get a w:tbl, or a w:tc which could trigger
the start of a table, and potentially add a dummy paragraph
which needed to be jumped over (at least for the first SDT,
but not for subsequent SDTs).

In the second patch, the starting mark was made just before
the text was appended, so all of the cell/table creation
has already been completed, so there is no more need to
jump over any dummy paragraphs, even for the first table.

Affected unit tests were
- table-start-2-sdt.docx
- sdt-company-multipara.docx
- paragraph-sdt.docx

make CppunitTest_sw_ooxmlfieldexport CPPUNIT_TEST_NAME=testParagraphSdt
make CppunitTest_sw_ooxmlfieldexport \
    CPPUNIT_TEST_NAME=testTdf158661_blockSDT

Change-Id: I4a8359cec27f88f6a2fc0464aa240b523a279e42
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170920
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
2024-07-24 13:50:55 +02:00
Christian Lohmaier
167897b776 Update git submodules
* Update translations from branch 'master'
  to d3e4d5213d29f57c45e2199822f2a68df9a884f6
  - update translations for 24.8.0 rc2
    
    and force-fix errors using pocheck
    
    Change-Id: If72ef1ab34b88547d6caa85763242e8f2a231015
2024-07-24 13:23:30 +02:00
Tuukka Orava
f0a79b4dc1 tdf#147021 Use std::size instead of SAL_N_ELEMENTS in editeng
Change-Id: I6cf0557b1e44dff08fa1efa4aefa14dec276458e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167134
Reviewed-by: Hossein <hossein@libreoffice.org>
Tested-by: Jenkins
2024-07-24 10:32:08 +02:00
Michael Weghorn
52f2edaa59 qt: Move resolution calc to static helper method
Instead of duplicating the same code in both,
`QtGraphics::GetResolution` and
`QtSvpGraphics::GetResolution`, create a static
helper method `QtGraphicsBase::ImplGetResolution`
in their base class and call that.

While at it, also move `QtGraphics::GetResolution`
to the source file where all of the other
`QtGraphics` methods are implemented.

Change-Id: I721459e8b65756f214fee77ac4d3cb8e500f0b57
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170930
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 10:10:34 +02:00
Michael Weghorn
7de061883d tdf#130857 qt weld a11y: Implement getting/setting a11y name/desc
Change-Id: I24149951d9d56d24ceac334c25357084a27708d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170905
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 08:27:12 +02:00
Sarper Akdemir
426c641976 tdf#159040: add sign with default certificate to save dialog
Include X.509 certificates under Tools->Options->UserData
among the keys for signing.

Add a new checkbox to Save file dialog, to sign with that
selected key easily.

The checkbox is disabled if there's no matching key found.

Change-Id: I9fc16790c479819cd1f35bcad040d0ebc7c4bdef
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170619
Tested-by: Jenkins
Reviewed-by: Sarper Akdemir <sarper.akdemir@allotropia.de>
2024-07-24 07:08:46 +02:00
Michael Weghorn
6ca02ef177 icon choice ctrl: Drop unnecessary cast
Change-Id: Ic9de7dae6f9341889fc4dec9ecf798aae63dd4b7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170899
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 05:52:28 +02:00
Michael Weghorn
aebf3d3820 tdf#161501 icon choice ctrl: Don't modify bound rect to center content
Don't modify the bound rect of tab items used used e.g.
for drawing the focus/selection/mouse-hover rectangles/indicators
in order to center the content horizontally and vertically.

Making the bound rect smaller in vertical direction
in `SvxIconChoiceCtrl_Impl::Center` resulted in margins
between entries for the non-native drawing path (e.g. the
gen VCL plugin on Linux) for the text-only case
(e.g. "Format" -> "Page Style" dialog in Writer).

Making sure that the content is centered should rather
happen in the drawing routine.

Horizontally centering already happens for the icon-case
anyway, as the `PAINTFLAG_VER_CENTERED` gets passed as flag
to the `PaintItem` call for the `WB_ICON` case in
`SvxIconChoiceCtrl_Impl::PaintEntry` anyway.

And for text-only mode, which was apparently the only one
for which centering vertically in `SvxIconChoiceCtrl_Impl::Center`
had an effect, vertically drawing text was implemented in the drawing
code path in

    commit 180f0c1ec8
    Author: Rafael Lima <rafael.palma.lima@gmail.com>
    Date:   Tue Jul 16 20:52:28 2024 +0200

        tdf#161501 Improve visuals of selected entries in Vertical tabs

. This commit addresses the

>   For the gen VCL plugin, there's still a small gap between
>   text-only items (e.g. in the "Format" -> "Page Style" dialog
>   which has a different cause and will be addressed in a separate
>   commit.

aspect mentioned in earlier commit

    Change-Id: Iac34098ef8d0f90f1ac0844df63839a6a99b83a7
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jul 22 11:39:48 2024 +0200

        tdf#161501 icon choice ctrl: Drop extra space between items

Change-Id: I2077efc8ce1e97d52cf078d63bb4e4b528e389eb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170895
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 05:45:34 +02:00
Michael Weghorn
7b645998e6 tdf#161501 icon choice ctrl: Use a single member for entry rect
`SvxIconChoiceCtrlEntry` has two members for maintaining
the bound rect:

* `aRect`, used almost everywhere
* `aGridRect`, used very rarely

`SvxIconChoiceCtrl_Impl::FindBoundingRect` calculates
a new bounding rect and assigns it to `pEntry->aGridRect`,
then calls `SvxIconChoiceCtrl_Impl::Center`, which
at first assigns the same value to `pEntry->aRect`,
so both are the same there.

The other place using the `aGridRect` member is
`SvxIconChoiceCtrl_Impl::CalcMaxTextRect` where
it's used as a fallback if `aRect` has not been
assigned a proper value yet.

However, since `aGridRect` is never assigned a
useful value apart from `aRect`, there doesn't
seem to be much value in doing that, so use
`aRect` there, too, and drop the `aGridRect`
member altogether and assign directly to `aRect` in
`SvxIconChoiceCtrl_Impl::FindBoundingRect` instead.

Instead of falling back to `aGridRect` in
`SvxIconChoiceCtrl_Impl::CalcMaxTextRect`,
add an assert that `aRect` is valid instead,
which never triggered in my tests with the
"Insert" -> "Hyperlink" and "Format" -> "Page Style"
dialogs, so should presumably be fine already.

Change-Id: I99f368672523279f530b937a73c3afb655f7853e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170894
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 05:45:13 +02:00
Michael Weghorn
14e1f10793 tdf#161501 Drop unused SvxIconChoiceCtrl_Impl::InvalidateEntry
Unused since:

    Change-Id: If309f84fcd9a99337bc5896ce5c3238333427da5
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Tue Jul 23 11:00:42 2024 +0200

        tdf#161501 icon choice ctrl: Drop debug-only mode switch feature

        Drop code that allows switching the text mode of
        the currently selected tab item in a vertical tab
        bar using Shift+F10 or Ctrl+F10, which is only
        available in dbgutil builds, and was therefore
        likely meant to be used for debugging purposes
        only.

        As related code will be changed in a follow-up
        commit, this would have to be adjusted to keep
        it working. Instead of spending time on that,
        just drop it. Testing how using another mode is still
        possible e.g. by locally changing the value assigned
        to `SvxIconChoiceCtrlEntry::eTextMode` in the
        `SvxIconChoiceCtrlEntry` ctor instead.

        Change-Id: If309f84fcd9a99337bc5896ce5c3238333427da5

Change-Id: I418fbf862ec94b04dbcfa4e7ff30cd5a8f9100e9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170893
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 05:45:04 +02:00
Michael Weghorn
c8234947b6 tdf#161501 icon choice ctrl: Drop debug-only mode switch feature
Drop code that allows switching the text mode of
the currently selected tab item in a vertical tab
bar using Shift+F10 or Ctrl+F10, which is only
available in dbgutil builds, and was therefore
likely meant to be used for debugging purposes
only.

As related code will be changed in a follow-up
commit, this would have to be adjusted to keep
it working. Instead of spending time on that,
just drop it. Testing how using another mode is still
possible e.g. by locally changing the value assigned
to `SvxIconChoiceCtrlEntry::eTextMode` in the
`SvxIconChoiceCtrlEntry` ctor instead.

Change-Id: If309f84fcd9a99337bc5896ce5c3238333427da5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170892
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 05:44:55 +02:00
Michael Weghorn
efd060187a tdf#161501 icon choice ctrl: Drop extra space between items
Drop the extra spacing between vertical tab bar items, which
became quite noticeable as extra white area between the otherwise
light-grey entries when using the Breeze (light) style and the
kf5 VCL plugin for the "Insert" -> "Hyperlink" dialog now that
the tab items are drawn natively since

    Change-Id: Ie0c8ba1b56f6bb76ece6761253b93a109bb3a3f4
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jul 22 11:05:30 2024 +0200

        tdf#161501 icon choice ctrl: Draw whole entry natively

and which is also more visible for non-natively drawn items
since

    Change-Id: I578755a8a82ea811765b2e0dc3815fb47f67863c
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Tue Jul 23 10:41:16 2024 +0200

        tdf#161501 icon choice ctrl: Draw selection within item bounds

With this in place, the extra margin between entries
in tab items with icons in the "Insert" -> "Hyperlink"
dialog in Writer is gone for both, the gen VCL plugin
and the kf5 one (tested with the Breeze style).

For the gen VCL plugin, there's still a small gap between
text-only items (e.g. in the "Format" -> "Page Style" dialog
which has a different cause and will be addressed in a separate
commit.

Change-Id: Iac34098ef8d0f90f1ac0844df63839a6a99b83a7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170850
Reviewed-by: Rafael Lima <rafael.palma.lima@gmail.com>
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 05:44:42 +02:00
Michael Weghorn
42024245c7 tdf#161501 icon choice ctrl: Draw selection within item bounds
In the same way that the calculated focus rect of an item
is used for drawing selection and focus indicators, use
it for mouse-hover highlighting as well, instead of
drawing a rectangle that reaches beyond the bounds
of the item itself for the non-native drawing path
of vertical tab bar items.

With this in place, hovering over an entry other than
the selected/focused one now shows a rectangle of the same
size as that for the focused entry, which is more
consistent and also aligns this with the case
where the native drawing API for drawing the item is used,
e.g. on Windows or with the kf5 VCL plugin on Linux.

This also means that a small gap can now be seen
between selected item and mouse-hovered item when
hovering over an item next to the currently selected
one for the gen VCL plugin as well, just as was
already the case before for the kf5 VCL plugin.
(Dropping that extra margin will happen in a
separate commit.)

Change-Id: I578755a8a82ea811765b2e0dc3815fb47f67863c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170891
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 05:43:52 +02:00
Michael Weghorn
22a2ddcb77 tdf#161501 icon choice ctrl: Consistently use bound rect
In `SvxIconChoiceCtrl_Impl::MakeEntryVisible`, always use
the bound rect as the area to make visible.

I see no reason to not do so when an entry is clicked
(s `SvxIconChoiceCtrl_Impl::MouseButtonDown`, which is
the only case that didn't do it yet.

Drop the `bBound` param accordingly.

Change-Id: I7a96e97585521943e7171c278fbd3509037cb7d3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170849
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 05:43:44 +02:00
Michael Weghorn
766417d8d7 tdf#161501 icon choice ctrl: OSL_FAIL -> assert
Change-Id: Ifa6528f9994c471828efcaedebee83bc0027775a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170848
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 05:43:35 +02:00
Michael Weghorn
c59730b46b tdf#161501 icon choice ctrl: Draw whole entry natively
When native drawing of tab items is supported,
natively draw the whole (vertical) tab item (except for the
text) in `SvxIconChoiceCtrl_Impl::PaintEntry`,
instead of using native drawing API only for highlighting
the mouse-hovered entry, as originally introduced in

    commit 8708e8cf90
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Jul 11 10:47:50 2024 +0200

        tdf#161026 tdf#161355 tdf#161501 icon choice ctrl: Natively draw mouse-hover

        ... feedback.

Set the corresponding state flags for selected and
focused entry, so that the native drawing routine
can take care of drawing the selected/focused
entry accordingly instead of using the native drawing
API to draw a `ControlType::WindowBackground` for that
purpose.

With this commit in place, all entries (not just the
mouse-hovered, focused or selected) entry are now
drawn using the native drawing API.

For the kf5 VCL plugin with the Breeze style, this
makes them look similar to the entries for the
non-vertical tabbar used elsewhere in LibreOffice,
or actual native `QTabBar`s.

Due to

    Change-Id: Idf1e41d3bc309d152a4a36d14e8617bd6429940c
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jul 22 08:25:32 2024 +0200

        tdf#161501 vcl: Make TabitemValue position-aware

, the selection indicator is drawn vertically as expected
when using the Breeze style.

Restrict manually drawing entries (including focus
and selection indicator) to the case where native drawing
is not implemented (e.g. the gen VCL plugin).

Further tweaking the visual appearance (e.g.
getting rid of extra white margins and space between the
entries for the variant where icons are used,
like the "Insert" -> "Hyperlink" dialog in Writer) can be
done in separate commits.

Change-Id: Ie0c8ba1b56f6bb76ece6761253b93a109bb3a3f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170847
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 05:43:27 +02:00
Michael Weghorn
72408ffd06 tdf#161501 icon choice ctrl: Merge two methods
Merge `SetBoundingRect_Impl` into
`SvxIconChoiceCtrl_Impl::FindBoundingRect` as that is the
only caller.

`SvxIconChoiceCtrl_Impl::SetBoundingRect_Impl` was ignoring
the bounding size being passed.
To be sure, still call `CalcBoundingSize` at the beginning
even though the return value itself is not used,
as the call to `SvxIconChoiceCtrl_Impl::CalcBoundingHeight`
that it does can result in class members like
`nMaxBoundHeight` getting updated.

Change-Id: I53b70bb8ddbf53afd9f95c38ce3dd05922e1110c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170846
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 05:43:19 +02:00
Michael Weghorn
3f1c3a0faa tdf#161501 Drop bSelected param for SvxIconChoiceCtrl_Impl::PaintEmphasis
The method doesn't do anything for `bSelected = true`,
so drop the param, and only call it for the `bSelected = false`
case in `SvxIconChoiceCtrl_Impl::PaintEntry` instead.

Change-Id: I5e180a42f2960531d16e5df35ce0a4e9c63a1f91
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170845
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-07-24 05:43:10 +02:00
Michael Weghorn
9288e66770 tdf#161501 icon choice ctrl: Simplify and drop extra local variable
No need to have a `bSolidTextRect` variable here,
just do the relevant call right away.

That also means that there's no need to save
and restore the previous fill color for the
`bSelected = true` case (it never gets changed),
so move that into the if block as well.

Change-Id: I57637e570b01e2a09708fc7776c867817a131d31
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170844
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-07-24 05:43:02 +02:00