Commit graph

502157 commits

Author SHA1 Message Date
Bogdan Buzea
82417b47bd tdf#163992 Improve tooltip for opened documents
Change-Id: I9d3cd55b05a684a8b21d5ee5a478202a3d0788c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177321
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2024-11-26 18:20:49 +01:00
Heiko Tietze
b32d040d64 Resolves tdf#126857 - Center object on page/slide
* uno:AlignMiddle labeled "Middle"
* uno:AlignOnPage added

Change-Id: Iafc162bdd80d7c20fabd55234e93212c1fa3435a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177348
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2024-11-26 18:19:32 +01:00
Christian Lohmaier
fd2c9abe52 show extension link on startcenter for macosxsandbox case
the ShowDonation has already a default value of true via the schema,
so it is enough to override it to false for the macosxsandbox case
similar to how it is done with the Infobar / using the install:module
method

Change-Id: I8f1ea6d3530e66806f66f9f2d2fb16ef0276e460
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177333
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2024-11-26 18:05:02 +01:00
Michael Weghorn
c630dbc1ab svtools a11y: Merge BrowseBoxImpl into BrowseBox
Change-Id: I3667e47867eb85f18cf8ad620cff903cc13f38c3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177352
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-11-26 17:49:13 +01:00
Michael Weghorn
649d2de3dc svtools: Move THeaderCellMapFunctorDispose struct out of impl class
Move to anonymous namespace in the only .cxx where it's used.

Change-Id: Ifa1219c49e5673d3440a889b2fd814059a29b5bb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177351
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-11-26 17:49:07 +01:00
Michael Weghorn
b5ac3d2092 svtools: Merge BrowseBox::ConstructImpl into ctor
Change-Id: I9bd8a018dbe2c3416af9b50a6ca782ac5fb3a4ef
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177350
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-11-26 17:49:01 +01:00
Noel Grandin
668dbfd99a tdf#162815 Greyscale images not corrrectly exported to PDF
regression from commit 21734247d5
"drop internal support for 1-bit images"

This only works on Linux because the HasGreyPaletteAny() check
is returning false on Linux, because on linux the swap in/out is more aggressive, and after it is has gone through the swap in/out process,
the image palette is no longer one that matches anything that HasGreyPaletteAny() checks for (it contains 256 entries, but only 2 of them are used)

I'm not exactly sure why the greyscale bitmap generation code
is generating bad PDF data, but the RGB code works great, so
lets just use that rather.

Change-Id: Ibb9e837540d5ed567c706e21e7ff93fe92118580
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177329
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2024-11-26 17:29:19 +01:00
Aron Budea
2af9fcddba Operator should be logical AND instead of OR
Change-Id: Ife1870da9979e974fa9dc11ca7dff87c8cfe66bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177310
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-11-26 16:26:26 +01:00
Miklos Vajna
7cfcfa30aa sfx2 lok: fix crash in SfxLokHelper::notifyUpdate()
Crashreport signature:

> kit-09946-09946 2024-11-25 16:46:13.180120 +0000 [ kitbroker_498 ] SIG   Fatal signal received: SIGSEGV code: 1 for address: 0x0
> program/libmergedlo.so
>       SfxLokHelper::notifyUpdate(SfxViewShell const*, int)
>               sfx2/source/view/lokhelper.cxx:1072
> program/libswlo.so
>       SwViewShell::GetSfxViewShell() const
>               sw/inc/viewsh.hxx:472
> program/libswlo.so
>       SwCursorShell::UpdateCursor(unsigned short, bool)
>               sw/source/core/crsr/crsrsh.cxx:2382
...
> program/libmergedlo.so
>       framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::uno::Sequence<com::sun:🫘:PropertyValue> const&)
>               framework/source/services/desktop.cxx:592

I.e. it can happen that during load we don't yet have a view, handle
this in SfxLokHelper::notifyUpdate() till it takes a pointer and not a
reference.

Change-Id: Ifa5d9300029076e91ba8722152a7d91a1f2ecbc0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177343
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
2024-11-26 16:22:22 +01:00
Xisco Fauli
0e334b25b9 libcdr: upgrade to 0.1.8
Generated with:
./autogen.sh
./configure
make dist-xz

Change-Id: I46b921f3c2ef41ab52e272df5afd82a1d9331f42
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177332
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2024-11-26 15:09:25 +01:00
Xisco Fauli
174d1d3f3b libqxp: fix copy&paste path
Since
commit 05aedcba66
Author: Stephan Bergmann <sbergman@redhat.com>
Date:   Thu Jan 21 23:19:20 2021 +0100

    Fix use of -fvisibility=hidden with Clang in external/libcdr, external/libqxp

Change-Id: Idb97eaea30f5a2b15379b18981455532de0308b6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177330
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-11-26 15:01:22 +01:00
Xisco Fauli
0a1025adeb libetonyek: upgrade to 0.1.12
Generated with:
./autogen.sh
./configure
make dist-xz

Change-Id: I74ac661c5f8db9abf7644212d98b29c3ec5b422f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176036
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-11-26 14:42:25 +01:00
Heiko Tietze
f395e6599f Resolves tdf#163685 - Save user-defined formula
Change-Id: I88a1c40d3e97d77c289c8b670b52dca50dea126f
Co-authored-by: Rafael Lima <rafael.palma.lima@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176788
Reviewed-by: Rafael Lima <rafael.palma.lima@gmail.com>
Tested-by: Jenkins
2024-11-26 13:56:48 +01:00
Michael Weghorn
f81af8f7a5 a11y: Handle combobox subedit a11y name in VCLXAccessibleEdit
Let VCLXAccessibleEdit::getAccessibleName take care
of returning the same accessible name as the combobox
parent for the combobox subedit instead of trying
to set the same name when that combobox child is
requested the first time.

This makes sure the name remains in sync, and prevents
trying to get the combobox a11y name while a dialog
containing it might still be in the process of getting
constructed by VclBuilder, in which case e.g. the
AccessibleRelation::LABELLED_BY relation that
gets used in Window::getDefaultAccessibleName
may not have been set. That relation e.g. gets
set if a label has the combobox set as its
"mnemonic-widget" in a .ui file.

The previous logic was triggering an assert
when opening the "Fonts" page in the "Tools" -> "Options"
dialog or using the search feature in that dialog on Windows
with an AT (like NVDA) active when trying to set the a11y
name of the "font2" combobox's entry
(UI file: cui/uiconfig/ui/optfontspage.ui):

    Assertion failed: GetChildCount() == 4 || pWindowImpl->mbInDispose, file .../vcl/source/window/layout.cxx, line 1945

Backtrace:

    1   abort                                                                                                     ucrtbase                           0x7ffad46e286e
    2   get_wpgmptr                                                                                               ucrtbase                           0x7ffad46e426e
    3   get_wpgmptr                                                                                               ucrtbase                           0x7ffad46e4165
    4   wassert                                                                                                   ucrtbase                           0x7ffad46e44f1
    5   VclScrolledWindow::get_child                                                                              layout.cxx                    1945 0x7ffa88f67e35
    6   nextLogicalChildOfParent                                                                                  dialog.cxx                    139  0x7ffa88f147cf
    7   nextLogicalChildOfParent                                                                                  dialog.cxx                    157  0x7ffa88f14884
    8   nextLogicalChildOfParent                                                                                  dialog.cxx                    157  0x7ffa88f14884
    9   ImplGetSubChildWindow                                                                                     dlgctrl.cxx                   137  0x7ffa88f197e1
    10  ImplGetChildWindow                                                                                        dlgctrl.cxx                   151  0x7ffa88f18dae
    11  ImplGetNextWindow                                                                                         dlgctrl.cxx                   180  0x7ffa88f19600
    12  ImplFindDlgCtrlWindow                                                                                     dlgctrl.cxx                   362  0x7ffa88f18a2b
    13  vcl::ImplGetLabeledBy                                                                                     legacyaccessibility.cxx       122  0x7ffa88e65437
    14  vcl::Window::getLegacyNonLayoutAccessibleRelationLabeledBy                                                legacyaccessibility.cxx       178  0x7ffa88e657ac
    15  vcl::Window::GetAccessibleRelationLabeledBy                                                               accessibility.cxx             604  0x7ffa88e6193a
    16  vcl::Window::getDefaultAccessibleName                                                                     accessibility.cxx             470  0x7ffa88e63c73
    17  vcl::Window::GetAccessibleName                                                                            accessibility.cxx             441  0x7ffa88e614ba
    18  vcl::Window::SetAccessibleName                                                                            accessibility.cxx             427  0x7ffa88e623bc
    19  VCLXAccessibleBox::getAccessibleChild                                                                     vclxaccessiblebox.cxx         319  0x7ffa853e3e02
    20  AccObjectWinManager::InsertChildrenAccObj                                                                 AccObjectWinManager.cxx       536  0x7ffa855b2ed1
    21  AccEventListener::HandleChildChangedEvent                                                                 AccEventListener.cxx          109  0x7ffa855b9593
    22  AccEventListener::notifyEvent                                                                             AccEventListener.cxx          64   0x7ffa855ba6ef
    23  AccContainerEventListener::notifyEvent                                                                    AccContainerEventListener.cxx 95   0x7ffa855bdfbc
    24  comphelper::AccessibleEventNotifier::addEvent                                                             accessibleeventnotifier.cxx   256  0x7ffa916598c0
    25  comphelper::OCommonAccessibleComponent::NotifyAccessibleEvent                                             accessiblecomponenthelper.cxx 127  0x7ffa9165071e
    26  VCLXAccessibleComponent::ProcessWindowChildEvent                                                          vclxaccessiblecomponent.cxx   165  0x7ffa8b7e6029
    27  VCLXAccessibleComponent::WindowChildEventListener                                                         vclxaccessiblecomponent.cxx   124  0x7ffa8b7e6d62
    28  VCLXAccessibleComponent::LinkStubWindowChildEventListener                                                 vclxaccessiblecomponent.cxx   114  0x7ffa8b7e5ee6
    29  Link<VclWindowEvent &,void>::Call                                                                         link.hxx                      111  0x7ffa88f3bf43
    30  vcl::Window::CallEventListeners                                                                           event.cxx                     300  0x7ffa88f3c57c
    31  vcl::Window::ImplSetReallyVisible                                                                         window.cxx                    1331 0x7ffa8904394d
    32  vcl::Window::ImplSetReallyVisible                                                                         window.cxx                    1344 0x7ffa89043a1d
    33  vcl::Window::Show                                                                                         window.cxx                    2336 0x7ffa89047671
    34  vcl::Window::Show                                                                                         window.cxx                    2349 0x7ffa8904776e
    35  vcl::Window::set_property                                                                                 window2.cxx                   1537 0x7ffa8902d4b3
    36  ComboBox::set_property                                                                                    combobox.cxx                  1553 0x7ffa89097521
    37  BuilderUtils::set_properties                                                                              builder.cxx                   2192 0x7ffa88ef13c5
    38  VclBuilder::insertObject                                                                                  builder.cxx                   2469 0x7ffa88ee18df
    39  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             230  0x7ffa88e23d54
    40  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    41  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             234  0x7ffa88e23dff
    42  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    43  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             234  0x7ffa88e23dff
    44  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    45  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             234  0x7ffa88e23dff
    46  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    47  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleObject                  widgetbuilder.hxx             234  0x7ffa88e23dff
    48  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::handleChild                   widgetbuilder.hxx             127  0x7ffa88e22c30
    49  WidgetBuilder<vcl::Window,VclPtr<vcl::Window>,PopupMenu,VclPtr<PopupMenu>>::processUIFile                 widgetbuilder.hxx             70   0x7ffa88e24b4a
    50  VclBuilder::VclBuilder                                                                                    builder.cxx                   523  0x7ffa88ea53be
    51  SalInstanceBuilder::SalInstanceBuilder                                                                    salvtables.cxx                7088 0x7ffa895da3ff
    52  std::make_unique<SalInstanceBuilder,vcl::Window * &,rtl::OUString const &,rtl::OUString const &,0>        memory                        3434 0x7ffa895d44c8
    53  SalInstance::CreateBuilder                                                                                salvtables.cxx                7470 0x7ffa895ef18e
    54  Application::CreateBuilder                                                                                builder.cxx                   198  0x7ffa88ebed2a
    55  BuilderPage::BuilderPage                                                                                  weldutils.cxx                 28   0x7ffa89684128
    56  SfxTabPage::SfxTabPage                                                                                    tabdlg.cxx                    137  0x7ffa8cd5f0e5
    57  SvxFontSubstTabPage::SvxFontSubstTabPage                                                                  fontsubs.cxx                  36   0x7ffa8372d1cd
    58  std::make_unique<SvxFontSubstTabPage,weld::Container * &,weld::DialogController * &,SfxItemSet const &,0> memory                        3434 0x7ffa8372cdbf
    59  SvxFontSubstTabPage::Create                                                                               fontsubs.cxx                  146  0x7ffa8372f692
    60  CreateGeneralTabPage                                                                                      treeopt.cxx                   289  0x7ffa8383199a
    61  OfaTreeOptionsDialog::SelectHdl_Impl                                                                      treeopt.cxx                   1317 0x7ffa838372e7
    62  OfaTreeOptionsDialog::ShowPageHdl_Impl                                                                    treeopt.cxx                   623  0x7ffa83837f11
    63  OfaTreeOptionsDialog::LinkStubShowPageHdl_Impl                                                            treeopt.cxx                   620  0x7ffa83834366
    64  Link<weld::TreeView &,void>::Call                                                                         link.hxx                      111  0x7ffa88ebdf13
    65  weld::TreeView::signal_changed                                                                            weld.hxx                      969  0x7ffa88ef210f
    66  SalInstanceTreeView::SelectHdl                                                                            salvtables.cxx                5304 0x7ffa895f4b39
    67  SalInstanceTreeView::LinkStubSelectHdl                                                                    salvtables.cxx                5299 0x7ffa895f38c6
    68  Link<SvTreeListBox *,void>::Call                                                                          link.hxx                      111  0x7ffa88ebe413
    69  SvTreeListBox::SelectHdl                                                                                  treelistbox.cxx               454  0x7ffa892ba7a1
    70  SvTreeListBox::Select                                                                                     treelistbox.cxx               2128 0x7ffa892ba514
    71  SvImpLBox::SetCursor                                                                                      svimpbox.cxx                  617  0x7ffa892d05e8
    72  ImpLBSelEng::SetCursorAtPoint                                                                             svimpbox.cxx                  2596 0x7ffa892d08a9
    73  SelectionEngine::SelMouseButtonDown                                                                       seleng.cxx                    174  0x7ffa88fd0071
    74  SvImpLBox::MouseButtonDown                                                                                svimpbox.cxx                  2016 0x7ffa892cc580
    75  SvTreeListBox::MouseButtonDown                                                                            treelistbox.cxx               2277 0x7ffa892b71e2
    76  ImplHandleMouseEvent                                                                                      winproc.cxx                   708  0x7ffa89059867
    77  ImplHandleSalMouseButtonDown                                                                              winproc.cxx                   2338 0x7ffa8905afef
    78  ImplWindowFrameProc                                                                                       winproc.cxx                   2683 0x7ffa8905ca47
    79  SalFrame::CallCallback                                                                                    salframe.hxx                  312  0x7ffa88e1ee56
    80  ImplHandleMouseMsg                                                                                        salframe.cxx                  3335 0x7ffa85c270bf
    81  SalFrameWndProc                                                                                           salframe.cxx                  5987 0x7ffa85c2de7d
    82  SalFrameWndProcW                                                                                          salframe.cxx                  6342 0x7ffa85c2ec60
    83  CallWindowProcW                                                                                           USER32                             0x7ffad61cef5c
    84  DispatchMessageW                                                                                          USER32                             0x7ffad61ce684
    85  ImplSalDispatchMessage                                                                                    salinst.cxx                   475  0x7ffa85b8cf98
    86  ImplSalYield                                                                                              salinst.cxx                   552  0x7ffa85b8d6bd
    87  WinSalInstance::DoYield                                                                                   salinst.cxx                   581  0x7ffa85b8cc61
    88  ImplYield                                                                                                 svapp.cxx                     385  0x7ffa89656364
    89  Application::Yield                                                                                        svapp.cxx                     474  0x7ffa89659fe2
    90  Dialog::Execute                                                                                           dialog.cxx                    1077 0x7ffa88f0c017
    91  SalInstanceDialog::run                                                                                    salvtables.cxx                1882 0x7ffa896149af
    92  weld::DialogController::run                                                                               weld.hxx                      2691 0x7ffa88eef436
    93  OfaTreeOptionsDialog::run                                                                                 treeopt.cxx                   2514 0x7ffa83841dd2
    94  CuiAbstractController_Impl::Execute                                                                       dlgfact.cxx                   144  0x7ffa837085c8
    95  SfxApplication::OfaExec_Impl                                                                              appserv.cxx                   1641 0x7ffa8cb36506
    96  SfxStubSfxApplicationOfaExec_Impl                                                                         sfxslots.hxx                  1307 0x7ffa8cb10165
    97  SfxDispatcher::Call_Impl                                                                                  dispatch.cxx                  257  0x7ffa8cc1f4ae
    98  SfxDispatcher::Execute_                                                                                   dispatch.cxx                  754  0x7ffa8cc2260f
    99  SfxBindings::Execute_Impl                                                                                 bindings.cxx                  1062 0x7ffa8cc0086d
    100 SfxDispatchController_Impl::dispatch                                                                      unoctitm.cxx                  736  0x7ffa8cc93caa
    101 SfxOfficeDispatch::dispatch                                                                               unoctitm.cxx                  254  0x7ffa8cc945b0
    102 framework::MenuBarManager::Select                                                                         menubarmanager.cxx            821  0x7ffa8d8574d4
    103 framework::MenuBarManager::LinkStubSelect                                                                 menubarmanager.cxx            776  0x7ffa8d855796
    104 Link<Menu *,bool>::Call                                                                                   link.hxx                      111  0x7ffa88f77d88
    105 Menu::Select                                                                                              menu.cxx                      360  0x7ffa88f83e19
    106 Menu::ImplCallSelect                                                                                      menu.cxx                      2152 0x7ffa88f7c761
    107 Menu::LinkStubImplCallSelect                                                                              menu.cxx                      2148 0x7ffa88f82366
    108 Link<void *,void>::Call                                                                                   link.hxx                      111  0x7ffa890529b3
    109 ImplHandleUserEvent                                                                                       winproc.cxx                   2288 0x7ffa8905ba97
    110 ImplWindowFrameProc                                                                                       winproc.cxx                   2850 0x7ffa8905d256
    111 SalFrame::CallCallback                                                                                    salframe.hxx                  312  0x7ffa88e1ee56
    112 ImplHandleUserEvent                                                                                       salframe.cxx                  4471 0x7ffa85c28fab
    113 SalFrameWndProc                                                                                           salframe.cxx                  6236 0x7ffa85c2e654
    114 SalFrameWndProcW                                                                                          salframe.cxx                  6342 0x7ffa85c2ec60
    115 CallWindowProcW                                                                                           USER32                             0x7ffad61cef5c
    116 DispatchMessageW                                                                                          USER32                             0x7ffad61ce684
    117 ImplSalDispatchMessage                                                                                    salinst.cxx                   475  0x7ffa85b8cf98
    118 ImplSalYield                                                                                              salinst.cxx                   506  0x7ffa85b8d09b
    119 WinSalInstance::DoYield                                                                                   salinst.cxx                   581  0x7ffa85b8cc61
    120 ImplYield                                                                                                 svapp.cxx                     385  0x7ffa89656364
    121 Application::Yield                                                                                        svapp.cxx                     474  0x7ffa89659fe2
    122 Application::Execute                                                                                      svapp.cxx                     361  0x7ffa89653aa6
    123 desktop::Desktop::Main                                                                                    app.cxx                       1679 0x7ffa9336887f
    124 ImplSVMain                                                                                                svmain.cxx                    228  0x7ffa8966b310
    125 SVMain                                                                                                    svmain.cxx                    247  0x7ffa8966baf2
    126 soffice_main                                                                                              sofficemain.cxx               121  0x7ffa933b86f4
    127 sal_main                                                                                                  main.c                        51   0x7ff64a491013
    128 main                                                                                                      main.c                        49   0x7ff64a49105a
    129 __scrt_common_main_seh                                                                                    exe_common.inl                288  0x7ff64a491344
    130 BaseThreadInitThunk                                                                                       KERNEL32                           0x7ffad5c07374
    131 RtlUserThreadStart                                                                                        ntdll                              0x7ffad679cc91

Change-Id: I3be8a8e4acd1c87fdfa495c755fd947e9a11b9aa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177314
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-11-26 12:04:14 +01:00
Michael Weghorn
4622e28f83 a11y: Drop misleading comment
The "The role is always AccessibleRole::COMBO_BOX." comment
for VCLXAccessibleBox::getAccessibleRole is misleading,
as the actual implementation can also return AccessibleRole::PANEL.

Change-Id: I15b089e168aa7ec0701eacc8630023123f3a10dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177313
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-11-26 12:04:07 +01:00
Michael Weghorn
c7e210919a a11y: Create VCLXAccessibleEdit::isComboBoxChild helper
It will be reused in another method in an upcoming commit.

Change-Id: Ie6b4559e268d9340b5b13844c906232c6ff38a6e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177312
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-11-26 12:04:01 +01:00
Michael Weghorn
c9cae91d0a a11y: Drop VCLXAccessibleComponent::supportsService overrides
Like the base class implementation, they call
cppu::supportsService, so there's no need to override
the former.

Change-Id: I6550edce0567502a411cac402923c2c02e02f58d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177311
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-11-26 12:03:54 +01:00
Stephan Bergmann
ea0b06415b external/postgresql: Include configure fix for C23 stdbool.h
...by backporting upstream
<https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=bc5a4dfcf7390145dc3ba3c1c18c5ce561b778cd>
"Assume that <stdbool.h> conforms to the C standard." to our REL_14_15 version.
GCC 15 trunk defaults to C23 now, so started to fail with

> In file included from fls.c:49:
> ../../src/include/c.h:419:23: error: two or more data types in declaration specifiers
>   419 | typedef unsigned char bool;
>       |                       ^~~~
> ../../src/include/c.h:419:1: warning: useless type name in empty declaration
>   419 | typedef unsigned char bool;
>       | ^~~~~~~
> make: *** [<builtin>: fls.o] Error 1
> make: Leaving directory 'workdir/UnpackedTarball/postgresql/src/port'

(Removing HAVE__BOOL and HAVE_STDBOOL_H also from src/tools/msvc/Solution.pm is
necessary to avoid failures like

> "C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/workdir/UnpackedTarball/openssl\apps\openssl.exe" version 2>&1unused defines: HAVE_STDBOOL_H HAVE__BOOL at /home/tdf/jenkins/workspace/gerrit_windows/workdir/UnpackedTarball/postgresql/src/tools/msvc/Mkvcbuild.pm line 870.
> make[1]: *** [C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/external/postgresql/ExternalProject_postgresql.mk:27: C:/cygwin64/home/tdf/jenkins/workspace/gerrit_windows/workdir/ExternalProject/postgresql/build] Error 1

in MSVC builds.)

Change-Id: I1f6bd0d613ae4d6ce70feaaf67aaf95496eeff87
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177280
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Tested-by: Jenkins
2024-11-26 11:25:34 +01:00
Xisco Fauli
2ed282bedf sc: prefix members of ScConditionalFormat
Change-Id: Ib8d6b19f4ff1a5a641039f7e06083430b53a6edb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177301
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-11-26 10:24:03 +01:00
Sahil Gautam
2baa317ae3 Libreoffice Theme Part 5: OSX Color Customization
We don't draw popup menus and menubar rather use the native ones. I don't know any Objective-C which made it really difficult for me to parse the widget toolkit code.

I can learn it if required, but it would be better if some macos developer takes this patch further; Themeing related objects like colors, persona settings (TODO) will be available via the ThemeColors class.

Change-Id: Idd89328ca82fbfa58b1e686b5b105469bea4b4a1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171239
Tested-by: Jenkins
Reviewed-by: Sahil Gautam <sahil.gautam.extern@allotropia.de>
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
2024-11-26 10:09:41 +01:00
Sahil Gautam
608deaf49c Libreoffice Theme Part 4: Windows Color Customization
I couldn't find any way of putting the colors from the theme back
into the system using the win32 api. Taking inspiration from Caolan's
dark mode patch (commit: a3f4008867,
related: tdf#118320 enable some windows dark theme support, 2022-03-17),
I was able to make it work.

I am working on vcl welding for windows, for which I am learning win32.
In the coming weeks/months the themeing approach for windows
is expected evolve because of that. There are some "rough edges" still...
something to be addressed later in different tickets.

Change-Id: I4b4cb3804b9b7a9d15e75a1b2511cdedda2b5b12
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170840
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Sahil Gautam <sahil.gautam.extern@allotropia.de>
2024-11-26 10:03:15 +01:00
Szymon Kłos
16bce5bb1c tdf#86731 bNoDictionaryAvailable should trigger meesagebox
Reverts "PVS: V547 Expression 'bNoDictionaryAvailable' is always false"
This reverts commit 816b51c7a9.

It removed the message completely from the code while, we should
fix it rather by using correct condition.

It was somehow too aggresively limited in commit f200dd5cb8
tdf#86731 Don't show 'start from beginning' when dictionary is missing

Change-Id: I5f4b859047216399a09c7aefb8a47244c4833df5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177271
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2024-11-26 08:59:28 +01:00
Gülşah Köse
d902401452 tdf#163842 Fix autofilter ascending sort condition reference import
if (rSorConditionLoaded.mbDescending) condition ignores the ascending sort.
So when we import a document that uses ascending sort then export it, we
don't know which column is sorted.

With the following patch we fix this case.

Signed-off-by: Gülşah Köse <gulsah.kose@collabora.com>
Change-Id: I561146517959a87eb0fb6cec419d68299bcb7eee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177016
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177222
Tested-by: Jenkins
2024-11-26 08:57:48 +01:00
Stephan Bergmann
4049405dcd Let a test use a copy of a SRCDIR test doc
Whatever the reason, but running the test against a read-only SRCDIR caused
CppunitTest_sfx2_view
CPPUNIT_TEST_NAME=testLokHelperCommandValuesSignature::TestBody to fail with

> sfx2/qa/cppunit/view.cxx:138:testLokHelperCommandValuesSignature::TestBody
> assertion failed
> - Expression: nSignatureTime != 0

Change-Id: I35d7df0de1b63937920687444ea0698fc0856446
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177302
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
2024-11-26 07:53:30 +01:00
Mike Kaganski
1e54b2037a tdf#146269: don't set modified when connecting frame, model and controller
Change-Id: I487a989a97389af11c98e10ac001c860d7855aec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177300
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-11-26 05:47:39 +01:00
Mike Kaganski
d88683e467 Some simplification
Change-Id: I8dc994421ef036f609e270c4891ac4494276ba23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177299
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-11-26 05:47:32 +01:00
Tomaž Vajngerl
8f2bf78a55 comphelper: fix test - key should be 32 bytes, not 16 bytes
Issue spotted when trying encryption and decryption with OpenSSL,
which doesn't handle the shorter keys correctly.

Also can't use the same instance of Encrypt after an attempt that
failed  (0 bytes written) as the blocks are inter-dependent and
it looks like OpenSSL already changes the state.

Change-Id: I061764e6727c7fbe600e11c5a5a6b8889d15c4e7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177305
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Jenkins
2024-11-26 03:54:55 +01:00
Tomaž Vajngerl
5e0c670e65 comphelper: add support for AES256_ECB encryption
Change-Id: I5e8ab2a2be6ea9cd5d1ed93b70780f1f6153f3fc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176892
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-11-26 01:36:07 +01:00
Tomaž Vajngerl
a0ff88da40 pdf: write encrption O and U values as hex string
This is easier to evaluate when opening the file in text editor
than binary. It is also more common in other PDF writers to use it
as hex string. There is no problem with viewers.

Change-Id: Ie453556d22695017916c7953f91c499e3d990b0c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176891
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Tested-by: Jenkins
2024-11-26 01:35:25 +01:00
Kurt Nordback
b10d331c1c tdf#161800 - I/O of '# of values in second plot' parameter not supported
Add support for input and output of 'split position' parameter (number of entries
in second plot) for of-pie charts. In OOXML this uses the supported split-pos
tag. For ODF I added an extension in loext namespace for this parameter.
This commit also includes simple tests for the I/O functionality in OOXML and
ODF.

Change-Id: I00ff59db721867fa836eb99b6677350040d005dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170666
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2024-11-26 01:34:07 +01:00
Oliver Specht
7c7e7da153 tdf#152839 remove paragraph spacing attributes in fill cells
Invisible cells in Word are added to Writer tables to get regular
tables. Borders of such cells are allready switched off. Now also
paragraph spacing is removed to not determine the row height.

Change-Id: I27d3d033de54f051527cf29e2655e7a564d1a5ec
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176219
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Tested-by: Jenkins
2024-11-25 23:17:00 +01:00
Oliver Specht
29a95e4b90 tdf#163870 remove list attribute on style apply
Follow-up to 075560420a
Removes hard list attribute also if the applied paragraph
style is applied again.

Change-Id: Ic08241b5e244690825dfe79c419298c5d5f7c17e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177270
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
Tested-by: Gabor Kelemen <gabor.kelemen.extern@allotropia.de>
2024-11-25 23:16:05 +01:00
Xisco Fauli
dc0307fd40 ScCondFormatList: pDoc is never nullptr
Change-Id: I764cd7eed4fe91bac7ad83dbbc48b2a2c4509c82
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177273
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-11-25 21:05:31 +01:00
Justin Luth
507c6fc66c tdf#124741 export xlsx: no defaultRowHeight without customHeight
Apparently, the value of defaultRowHeight is just some nice
kind of suggestion to Excel, since optimalRowHeight rows
can be less than what is specified in defaultRowHeight.

Since Calc always treats defaultRowHeight as authoritative,
on export it needs to always export it that way.

Apparently there are some TWIPS calculations
going on because while Calc defaults
to exporting a defaultRowHeight of 12.80,
Excel is still round-tripping it as 12.75.

make CppunitTest_sc_subsequent_export_test2 \
    CPPUNIT_TEST_NAME=testTdf120168
(In this unit test, it originates as customHeight=1,
but Calc was round-tripping it without that.
Although the round-trip looked identical in Calc,
in Excel the empty rows were now much shorter,
being height-formatted according to the default font size.)

Change-Id: I7ed6b612de0fa508a89dc4cf357b873de230962c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177276
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
2024-11-25 20:45:27 +01:00
Caolán McNamara
8f0a2c52f6 Resolves: tdf#163777 Ignore pageup and down when modifier held...
in a SalInstanceEntryTreeView, otherwise the ctrl+pageup/down gets
processed twice by the toplevel notebook due to the forwarding used
here.

Change-Id: Ic5003064ddba44f940fb4c4a727d8081c3644361
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177277
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2024-11-25 20:26:33 +01:00
prrvchr
4178b34521 tdf#164040 Expose XGridDataListener type in SortableGridDataModel
It had been introduced in commit de9dba9275
(gridsort: introduce XSortableGridDataModel::removeColumnSort, 2011-01-18),
but in getTypes, an explicit exclusion for it had been made.

Change-Id: I4915949b26ef15905ec810aa54e69d0e62100b90
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177256
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2024-11-25 19:41:51 +01:00
Patrick Luby
0807fe3628 Improve rendering speed for native controls when using Skia/Metal
While debugging tdf#163945, Xcode's Instruments application uncovered
the following performance bottlenecks when using Skia/Metal:

1. Very slow rendering an NSBox:
   Many system colors have the NSColorTypeCatalog color type. For
   some unkown reason, setting the NSBox's fill color to a color set
   to NSColorTypeCatalog causes drawing to take at least twice as
   long as when the fill color is set to NSColorTypeComponentBased.
   So, only draw with a fill color set to NSColorTypeComponentBased.

2. Excessively large offscreen buffers when drawing native controls:
   The temporary bitmap was set to the control region expanded by
   50 * mScaling (e.g. both width and height were increased by 200
   pixels when running on a Retina display). This caused temporary
   bitmaps to be up to several times larger than needed. Also,
   drawing NSBox objects to a CGBitmapContext is noticeably slow
   so filling all that unneeded temporary bitmap area can slow down
   performance when a large number of NSBox objects like the status
   bar are redrawn in quick succession.
   Using getNativeControlRegion() isn't perfect, but it does try to
   account for the focus ring as well as the minimum width and/or
   height of the native control so union the two regions set by
   getNativeControlRegion() and add double the focus ring width on
   each side just to be safe. In most cases, this should ensure
   that the temporary bitmap is large enough to draw the entire
   native control and a focus ring.

3. Unncessary copying of bitmap buffer when drawing native controls:
   Let Skia own the CGBitmapContext's buffer so that an SkImage
   can be created without Skia making a copy of the buffer.

Change-Id: Ibd3abb4b9d7045c47268319772fe97a5c4dba3c6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177225
Tested-by: Jenkins
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
2024-11-25 19:30:21 +01:00
Stephan Bergmann
fc1e12bb2d distro-configs/LibreOfficeFlatpak.conf lacks --without-system-java-websocket
...after 3de3f660af "add a
--with-system-java-websocket"

Change-Id: If96dafacbc33746934a2d388b11436c797290559
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177275
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
2024-11-25 18:24:40 +01:00
Justin Luth
8431865e6b tdf#108820 tdf#158713 sw layout: no footnote in repeated table rows
This fixes my LO 7.1 regression from bug 108820.

The problem was that footnotes-placed-in-table-headline
were being visually removed if a split-table was ever joined
during editing, etc. (i.e. one less page needed).

Avoid the join() cleanup code being triggered on GetFollow frames
because those were wrongly being informed that there was a footnote,
despite being deliberately disallowed in IsFootnoteAllowed,
so it really must not HasFootnote()!

make CppunitTest_sw_core_layout \
    CPPUNIT_TEST_NAME=testTdf158713_footnoteInHeadline

Change-Id: I8f395217ba66a258738fc3f32846b952c69d367b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177059
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
2024-11-25 17:31:42 +01:00
Stephan Bergmann
ac2b3c339e GCC 15 trunk now defaults to C23, where bool is a keyword
...so the existing C code started to fail with

> In file included from workdir/UnpackedTarball/mariadb-connector-c/libmariadb/ma_alloc.c:20:
> workdir/UnpackedTarball/mariadb-connector-c/include/ma_global.h:687:25: error: two or more data types in declaration specifiers
>   687 | typedef char            bool;   /* Ordinary boolean values 0 1 */
>       |                         ^~~~

(And the !defined(HAVE_BOOL) there, always being true, apparently started to get
in the way now and thus needed to be removed, whatever its original purpose.)

Change-Id: I781458d643e01a7199e19a178da3a32520d16b34
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177260
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Tested-by: Jenkins
2024-11-25 17:20:00 +01:00
Sahil Gautam
e2378e0074 tdf#85976 consider 'contains column labels' property for database range
A database range  is an <table:database-range> element in file  format. It has the
attribute 'table:contains-header'  with values  'true' (default) and  'false', and
the attribute  'table:orientation' with values  'row' (default) and  'column'. The
attributes are only written to file, if the value is not default.

If the  selected range has a  database range element then  use its contains-header
property rather than what was last selected.

Change-Id: I120daa2756c50b6c51fab4f6a0549a0b874abaee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177231
Reviewed-by: Sahil Gautam <sahil.gautam.extern@allotropia.de>
Tested-by: Jenkins
2024-11-25 17:06:43 +01:00
Michael Stahl
4fef75d4c8 sw: fix property set implementation of SwXTextRange RANGE_IS_SECTION
Use cursor that includes section nodes, the core implementation should
not need start/end to be a text node.

Fix one case in SwDoc::ResetAttrs() where a text node is expected.

(regression from commit 7ab349296d)

Change-Id: I56960b5d233ced02703a7c522ebe6afa3347cd25
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177259
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2024-11-25 15:55:04 +01:00
Michael Weghorn
ba3ac4735d a11y: Avoid const_cast in Window::getLegacyNonLayoutAccessibleRelationLabelFor
Make the ImplGetLabelFor param const, so the const
`this` can just be passed to it as is.

Change-Id: Ie6f0c5100cc67050012d9165b436cbd76550d8d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177248
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-11-25 15:38:32 +01:00
Michael Weghorn
4401a0ee3e vcl: Use non-const local var instead of const_casting later
Change-Id: I34ddf601a4f48aa894e32ae0842fd30f4cfe823b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177247
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-11-25 15:38:25 +01:00
Michael Weghorn
a3152312ac a11y: Make ImplGetLabeledBy param const and drop const_cast
Change-Id: I7b9d61a5a6752985d17633f2a1aff80d86a7011a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177246
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-11-25 15:38:17 +01:00
Xisco Fauli
afa42fcd26 PVS: V547 Expression 'pOldSelFly' is always true.
Since
commit 142dc93d9a
Author: Michael Stahl <Michael.Stahl@cib.de>
Date:   Mon Oct 26 16:41:29 2020 +0100

    (related: tdf#131679) sw: only unmark if this SwFlyFrame is marked

Change-Id: Ia916161d336dad3d06e9df0c5747fda78dbd404c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177254
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2024-11-25 14:20:29 +01:00
Caolán McNamara
93362fec3e fix: Gtk-CRITICAL gtk_label_set_label: assertion 'GTK_IS_LABEL (label)' failed
Change-Id: I45cbfbef038653e1e99e9b2f8907a1739d6c2214
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177257
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2024-11-25 14:20:26 +01:00
Xisco Fauli
32d81ed85c PVS: V560 A part of conditional expression is always true
Change-Id: I1c84f84f5d656e2a11f5b3a594f7f19641ff51ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177255
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2024-11-25 14:12:34 +01:00
Michael Weghorn
579d0a72a3 a11y: Move identical implementations to base class
Instead of having a purely virtual
VCLXAccessibleBox::IsValid that all subclasses
implement the same way, deduplicate this by
moving the implementation to the VCLXAccessibleBox
base class.

Change-Id: I354bf3d0be6751a165b373c06b951c6f0b63480b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177252
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2024-11-25 13:45:37 +01:00
Michael Weghorn
d2587b5646 gtk3: Drop gtk+-unix-print-3.0 from configure.ac
Unused since

    commit ed07ec7606
    Date:   Sun Dec 20 16:49:12 2020 +0000

        drop never completed GtkSalPrinter

Change-Id: Iacbf84449175863e5a6ad09f6946b3bd3b503a9a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177237
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2024-11-25 13:44:59 +01:00