Commit Graph
8515 Commits
Author SHA1 Message Date
Dan Williams e4e60f2769 vcl: standardize Reset dialog button response code
Qt plugin automatically orders buttons for each platform based on
the button's role, which we derive from the Gtk .ui file's
action-widget response code. But to do that conversion from response
code to Qt button role, we need a standard response.

Without a standard response, the button has no role, and gets ordered
to the right of OK/Cancel buttons on Mac. With the correct role, it
is correctly placed far-left along with the Help button.

Change-Id: I16d3126d4999649e7aa6e72ec5e7b1a25f48c2a3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210223
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Reviewed-by: Dan Williams <dcbw@libreoffice.org>
Tested-by: Jenkins
2026-09-08 13:42:17 +02:00
Noel Grandin 1b276f9265 merge the outliner ParagraphData information into the regular EditTextObject
as part of the process of merging the Outliner code into the normal EditEngine paths.

So instead of keeping a bunch of information "on the side" and then having to merge information
from multiple sources, it all lives where it logically belongs.

Also take the chance to rename the depth/getdepth/setdepth
fields and methods to NumberingDepth, which makes the purpose
more obvious.

Change-Id: I314673ee1b9efa14f178ac34a122995a554cd788
Signed-off-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/10551
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 284bbe0af12b96844976f30bb35ade3a327ea76d)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210503
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-09-05 00:09:20 +02:00
Jim Raykowski c51dff06a9 Impress slide properties dialog: use "slide" instead of "page"
* Makes the title show as "Slide Properties" instead of "Page
Properties".

* Makes the label for the resize all slides checkbox show as "Resize all
slides" instead of "Resize all pages"

Change-Id: Idda0bdf6ef6215696ae4189549f62c05ef0076c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209996
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Tested-by: Jenkins
2026-08-31 17:04:56 +02:00
Michael Weghorn ef7971f80c Use QueryDialog directly instead of via cui abstraction
Now that previous commit

    Change-Id: I57bdade32c21c7ab40c5a4c90bd86e8dea5d2fad
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Aug 27 19:00:42 2026 +0200

        Move QueryDialog to svtools

moved QueryDialog to svtools, use it directly instead
of via the extra AbstractQueryDialog abstraction.

This simplifies the code and rules out one potential cause
for the crash seen in crash reports like [1] (see backtrace below).

From looking at the backtrace and code, I don't currently see anything
that looks problematic to me and could result in a null dialog or button
in a proper installation. Simplifying this seems a good idea anyway, and
rules out a null dialog.
Related discussion: [2]

The dialog can e.g. be triggered like this:

* start Writer
* Ctrl+Shift+S for "Save As"
* select "Text (.txt)" for the file type
* press OK

(Resetting the profile ensures the dialog gets shown
in case the "Don't show again" checkbox has been ticked
previously.)

Backtrace from [1]:

    0 	mergedlo.dll 	static void `anonymous namespace'::AbstractQueryDialog_Impl::SetYesLabel(const class rtl::OUString & const) 	cui/source/factory/dlgfact.cxx:1562
    1 	mergedlo.dll 	static void `anonymous namespace'::AbstractQueryDialog_Impl::SetYesLabel(const class rtl::OUString & const) 	cui/source/factory/dlgfact.cxx:1562
    2 	mergedlo.dll 	ConfirmationDlg::Query<officecfg::Office::Common::Save::Document::WarnAlienFormat>(weld::Window *,rtl::OUString const &,rtl::OUString const &,rtl::OUString const &,rtl::OUString const &,rtl::OUString const &) 	include/svtools/confirmationdlg.hxx:32
    3 	mergedlo.dll 	ConfirmationDlg::Query<officecfg::Office::Common::Save::Document::WarnAlienFormat>(weld::Window *,rtl::OUString const &,rtl::OUString const &,rtl::OUString const &,rtl::OUString const &,rtl::OUString const &) 	include/svtools/confirmationdlg.hxx:24
    4 	mergedlo.dll 	SfxStoringHelper::WarnUnacceptableFormat(com::sun::star::uno::Reference<com::sun::star::frame::XModel2> const &,std::basic_string_view<char16_t,std::char_traits<char16_t> >,std::basic_string_view<char16_t,std::char_traits<char16_t> >,rtl::OUString const &,bool) 	sfx2/source/doc/guisaveas.cxx:2114
    5 	mergedlo.dll 	ModelData_Impl::CheckFilter(rtl::OUString const &) 	sfx2/source/doc/guisaveas.cxx:861
    6 	mergedlo.dll 	com::sun::star::uno::cppu_detail_getUnoType(com::sun::star::uno::RuntimeException const *) 	E:/build/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/uno/RuntimeException.hpp:89
    7 	ntdll.dll 	0x3c3a0
    8 	mergedlo.dll 	ModelData_Impl::CheckFilter(rtl::OUString const &) 	sfx2/source/doc/guisaveas.cxx:781
    9 	mergedlo.dll 	SfxStoringHelper::FinishGUIStoreModel(std::_List_const_iterator<std::_List_val<std::_List_simple_types<std::pair<comphelper::OUStringAndHashCode const ,com::sun::star::uno::Any> > > > &,ModelData_Impl &,bool,short,com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const &,bool,bool,bool,std::basic_string_view<char16_t,std::char_traits<char16_t> >,std::basic_string_view<char16_t,std::char_traits<char16_t> >,com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> &,rtl::OUString,SignatureState) 	sfx2/source/doc/guisaveas.cxx:1680
    10 	cppu3.dll 	typelib_typedescriptionreference_release 	cppu/source/typelib/typelib.cxx:2145
    11 	cppu3.dll 	cppu::_destructData(void *,_typelib_TypeDescriptionReference *,_typelib_TypeDescription *,void (*)(void *)) 	cppu/source/uno/destr.hxx:312
    12 	cppu3.dll 	cppu::_destructData(void *,_typelib_TypeDescriptionReference *,_typelib_TypeDescription *,void (*)(void *)) 	cppu/source/uno/destr.hxx:308
    13 	ucrtbase.dll 	0x1364b
    14 	sal3.dll 	rtl_uString_assign 	sal/rtl/ustring.cxx:1169
    15 	sal3.dll 	rtl_uString_release 	sal/rtl/ustring.cxx:1118
    16 	mergedlo.dll 	SfxStoringHelper::FinishGUIStoreModel(std::_List_const_iterator<std::_List_val<std::_List_simple_types<std::pair<comphelper::OUStringAndHashCode const ,com::sun::star::uno::Any> > > > &,ModelData_Impl &,bool,short,com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const &,bool,bool,bool,std::basic_string_view<char16_t,std::char_traits<char16_t> >,std::basic_string_view<char16_t,std::char_traits<char16_t> >,com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> &,rtl::OUString,SignatureState) 	sfx2/source/doc/guisaveas.cxx:1620
    17 	mergedlo.dll 	SfxStoringHelper::GUIStoreModel(com::sun::star::uno::Reference<com::sun::star::frame::XModel2> const &,std::basic_string_view<char16_t,std::char_traits<char16_t> >,com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> &,bool,SignatureState,SignatureState,bool) 	sfx2/source/doc/guisaveas.cxx:1605
    18 	mergedlo.dll 	SvtSecurityOptions::SetTrustedAuthors(std::vector<SvtSecurityOptions::Certificate,std::allocator<SvtSecurityOptions::Certificate> > const &) 	unotools/source/config/securityoptions.cxx:283
    19 	ntdll.dll 	0x3ccea
    20 	ucrtbase.dll 	0x1f038
    21 	ntdll.dll 	0x3b041
    22 	cppu3.dll 	uno_type_sequence_construct 	cppu/source/uno/sequence.cxx:668
    23 	mergedlo.dll 	SfxObjectShell::ExecFile_Impl(SfxRequest &) 	sfx2/source/doc/objserv.cxx:1150
    24 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    25 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    26 	cppu3.dll 	cppu::icopyConstructSequence(_sal_Sequence *,_typelib_TypeDescriptionReference *,void (*)(void *),_uno_Mapping *) 	cppu/source/uno/copy.hxx:398
    27 	cppu3.dll 	cppu::_copyConstructAnyFromData(_uno_Any *,void *,_typelib_TypeDescriptionReference *,_typelib_TypeDescription *,void (*)(void *),_uno_Mapping *) 	cppu/source/uno/copy.hxx:231
    28 	cppu3.dll 	cppu::_copyConstructAny(_uno_Any *,void *,_typelib_TypeDescriptionReference *,_typelib_TypeDescription *,void (*)(void *),_uno_Mapping *) 	cppu/source/uno/copy.hxx:284
    29 	cppu3.dll 	uno_type_any_assign 	cppu/source/uno/any.cxx:38
    30 	salhelper3MSC.dll 	salhelper::SimpleReferenceObject::release() 	include/salhelper/simplereferenceobject.hxx:80
    31 	mergedlo.dll 	configmgr::Access::getByNameFast(rtl::OUString const &,com::sun::star::uno::Any &) 	configmgr/source/access.cxx:393
    32 	ntdll.dll 	0x3b041
    33 	ucrtbase.dll 	0x1364b
    34 	cppu3.dll 	cppu::_type_equals(_typelib_TypeDescriptionReference const *,_typelib_TypeDescriptionReference const *) 	cppu/source/uno/prim.hxx:144
    35 	cppu3.dll 	cppu::_assignData(void *,_typelib_TypeDescriptionReference *,_typelib_TypeDescription *,void *,_typelib_TypeDescriptionReference *,_typelib_TypeDescription *,void * (*)(void *,_typelib_TypeDescriptionReference *),void (*)(void *),void (*)(void *)) 	cppu/source/uno/assign.hxx:387
    36 	sal3.dll 	rtl_uString_release 	sal/rtl/ustring.cxx:1118
    37 	cppu3.dll 	typelib_typedescription_release 	cppu/source/typelib/typelib.cxx:1313
    38 	cppu3.dll 	typelib_typedescriptionreference_release 	cppu/source/typelib/typelib.cxx:2145
    39 	ntdll.dll 	0x3d6da
    40 	ntdll.dll 	0x3ccea
    41 	mergedlo.dll 	FontMetricData::ShouldNotUseUnderlineMetrics() 	vcl/source/font/fontmetric.cxx:186
    42 	mergedlo.dll 	OutputDevice::InitFont() 	vcl/source/outdev/font.cxx:668
    43 	ntdll.dll 	0x3c3a0
    44 	i18nlangtag.dll 	LanguageTag::LanguageTag(LanguageTag const &) 	include/i18nlangtag/languagetag.hxx:142
    45 	mergedlo.dll 	o3tl::cow_wrapper<ImplFont,o3tl::RefCountingPolicy_t<unsigned __int64> >::make_unique() 	include/o3tl/cow_wrapper.hxx:298
    46 	ucrtbase.dll 	0x276aa
    47 	mergedlo.dll 	vcl::Font::SetFontSize(Size const &) 	vcl/source/font/font.cxx:156
    48 	ucrtbase.dll 	0x1364b
    49 	sal3.dll 	rtl_uString_release 	sal/rtl/ustring.cxx:1118
    50 	mergedlo.dll 	o3tl::cow_wrapper<ImplFont,o3tl::RefCountingPolicy_t<unsigned __int64> >::release() 	include/o3tl/cow_wrapper.hxx:201
    51 	mergedlo.dll 	o3tl::cow_wrapper<ImplFont,o3tl::RefCountingPolicy_t<unsigned __int64> >::release() 	include/o3tl/cow_wrapper.hxx:198
    52 	mergedlo.dll 	ImpEditEngine::RecalcFormatterFontMetrics(FormatterFontMetric &,SvxFont &) 	editeng/source/editeng/impedit3.cxx:3182
    53 	ucrtbase.dll 	0x272e4
    54 	mergedlo.dll 	SfxItemSet::Get(unsigned short,bool) 	svl/source/items/itemset.cxx:965
    55 	ucrtbase.dll 	0x27691
    56 	mergedlo.dll 	ImpEditEngine::GetJustification(long) 	editeng/source/editeng/impedit2.cxx:2077
    57 	mergedlo.dll 	o3tl::cow_wrapper<ImplFont,o3tl::RefCountingPolicy_t<unsigned __int64> >::release() 	include/o3tl/cow_wrapper.hxx:198
    58 	mergedlo.dll 	ImpEditEngine::CreateAndInsertEmptyLine(ParaPortion &) 	editeng/source/editeng/impedit3.cxx:1994
    59 	mergedlo.dll 	SfxItemPool::GetUserOrPoolDefaultItem(unsigned short) 	svl/source/items/itempool.cxx:723
    60 	mergedlo.dll 	SfxItemSet::Get(unsigned short,bool) 	svl/source/items/itemset.cxx:965
    61 	mergedlo.dll 	ParaPortionList::GetPos(ParaPortion const *) 	editeng/source/editeng/editdoc.cxx:496
    62 	mergedlo.dll 	ImpEditEngine::CalcHeight(ParaPortion &) 	editeng/source/editeng/impedit2.cxx:4791
    63 	mergedlo.dll 	ImpEditEngine::FinishCreateLines(ParaPortion &) 	editeng/source/editeng/impedit3.cxx:2003
    64 	mergedlo.dll 	ImpEditEngine::FinishCreateLines(ParaPortion &) 	editeng/source/editeng/impedit3.cxx:1999
    65 	mergedlo.dll 	ImpEditEngine::CreateLines(long,unsigned long) 	editeng/source/editeng/impedit3.cxx:670
    66 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    67 	mergedlo.dll 	static lo_destroy$dtor$0()
    68 	mergedlo.dll 	boost::locale::gnu_gettext::mo_file::value(unsigned int) 	E:/build/workdir/UnpackedTarball/boost/libs/locale/src/shared/message.cpp:196
    69 	mergedlo.dll 	boost::locale::gnu_gettext::mo_file::find(char const *,char const *) 	E:/build/workdir/UnpackedTarball/boost/libs/locale/src/shared/message.cpp:145
    70 	ucrtbase.dll 	0x11966
    71 	sal3.dll 	rtl_uString_ImplAlloc(long) 	sal/rtl/ustring.cxx:1109
    72 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    73 	ntdll.dll 	0x3d6da
    74 	ntdll.dll 	0x3d6da
    75 	mergedlo.dll 	SfxItemPool::GetUserOrPoolDefaultItem(unsigned short) 	svl/source/items/itempool.cxx:723
    76 	mergedlo.dll 	SfxItemSet::Get(unsigned short,bool) 	svl/source/items/itemset.cxx:965
    77 	mergedlo.dll 	SfxItemSet::Get(unsigned short,bool) 	svl/source/items/itemset.cxx:935
    78 	mergedlo.dll 	ImpEditEngine::CalcVertLineSpacing(Point &) 	editeng/source/editeng/impedit3.cxx:4436
    79 	mergedlo.dll 	SfxItemPool::GetUserOrPoolDefaultItem(unsigned short) 	svl/source/items/itempool.cxx:723
    80 	mergedlo.dll 	SfxItemSet::Get(unsigned short,bool) 	svl/source/items/itemset.cxx:965
    81 	mergedlo.dll 	SfxItemSet::Get(unsigned short,bool) 	svl/source/items/itemset.cxx:935
    82 	mergedlo.dll 	ImpEditEngine::IterateLineAreas(std::function<ImpEditEngine::CallbackResult > const &,ImpEditEngine::IterFlag) 	editeng/source/editeng/impedit2.cxx:3417
    83 	mergedlo.dll 	_std_minmax_8i 	D:/a/_work/1/s/src/vctools/crt/github/stl/src/vector_algorithms.cpp:2451
    84 	mergedlo.dll 	SfxItemSet::Get(unsigned short,bool) 	svl/source/items/itemset.cxx:965
    85 	mergedlo.dll 	RectangleTemplateBase::Union(RectangleTemplateBase const &) 	tools/source/generic/gen.cxx:88
    86 	mergedlo.dll 	ImpEditEngine::CalcVertLineSpacing(Point &) 	editeng/source/editeng/impedit3.cxx:4436
    87 	mergedlo.dll 	SfxItemSet::Get(unsigned short,bool) 	svl/source/items/itemset.cxx:965
    88 	ntdll.dll 	0x3c3a0
    89 	mergedlo.dll 	ImpEditEngine::IterateLineAreas(std::function<ImpEditEngine::CallbackResult > const &,ImpEditEngine::IterFlag) 	editeng/source/editeng/impedit2.cxx:3417
    90 	ntdll.dll 	0x3b041
    91 	ucrtbase.dll 	0x1364b
    92 	mergedlo.dll 	std::allocator<long>::deallocate(long * const,unsigned __int64) 	C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/include/xmemory:985
    93 	mergedlo.dll 	std::allocator<long>::deallocate(long * const,unsigned __int64) 	C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/include/xmemory:982
    94 	mergedlo.dll 	ImpEditEngine::FormatDoc() 	editeng/source/editeng/impedit3.cxx:412
    95 	mergedlo.dll 	ImpEditEngine::CallStatusHdl() 	editeng/source/editeng/impedit3.cxx:4368
    96 	mergedlo.dll 	ImpEditEngine::UpdateViews(EditView *) 	editeng/source/editeng/impedit3.cxx:188
    97 	mergedlo.dll 	ImpEditEngine::UpdateViews(EditView *) 	editeng/source/editeng/impedit3.cxx:155
    98 	mergedlo.dll 	ImpEditEngine::SetUpdateLayout(bool,EditView *,bool) 	editeng/source/editeng/impedit3.cxx:4247
    99 	mergedlo.dll 	EditEngine::SetUpdateLayout(bool,bool) 	editeng/source/editeng/editeng.cxx:800
    100 	sal3.dll 	rtl_uString_release 	sal/rtl/ustring.cxx:1118
    101 	sclo.dll 	ScInputHandler::EnterHandler2(ScEnterMode,bool,rtl::OUString,rtl::OUString const &) 	sc/source/ui/app/inputhdl.cxx:3646
    102 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    103 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    104 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    105 	ucrtbase.dll 	0x11966
    106 	ntdll.dll 	0x633f2
    107 	ntdll.dll 	0x3c3a0
    108 	ucrtbase.dll 	0x1364b
    109 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    110 	mergedlo.dll 	ContentNode::GetExpandedText(long,long) 	editeng/source/editeng/ContentNode.cxx:472
    111 	sal3.dll 	rtl_uString_release 	sal/rtl/ustring.cxx:1118
    112 	mergedlo.dll 	EditEngine::GetText(long) 	editeng/source/editeng/editeng.cxx:946
    113 	ntdll.dll 	0x3b041
    114 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    115 	ucrtbase.dll 	0x1364b
    116 	sclo.dll 	ScInputHandler::EnterHandler2(ScEnterMode,bool,rtl::OUString,rtl::OUString const &) 	sc/source/ui/app/inputhdl.cxx:3333
    117 	sal3.dll 	rtl_uString_release 	sal/rtl/ustring.cxx:1119
    118 	sal3.dll 	rtl_uString_release 	sal/rtl/ustring.cxx:1118
    119 	sclo.dll 	ScInputHandler::EnterHandler(ScEnterMode,bool) 	sc/source/ui/app/inputhdl.cxx:3329
    120 	mergedlo.dll 	static void xmloff::token::`dynamic initializer for 'aTokenList''() 	xmloff/source/core/xmltoken.cxx:3474
    121 	ntdll.dll 	0x53850
    122 	KERNELBASE.dll 	0x2931b
    123 	VCRUNTIME140.dll 	0x48a9
    124 	ntdll.dll 	0x53850
    125 	ucrtbase.dll 	0x1f038
    126 	mergedlo.dll 	SfxInterface::GetSlot(unsigned short) 	sfx2/source/control/objface.cxx:163
    127 	mergedlo.dll 	SfxInterface::GetSlot(unsigned short) 	sfx2/source/control/objface.cxx:157
    128 	mergedlo.dll 	SfxObjectShell::ExecFile_Impl(SfxRequest &) 	sfx2/source/doc/objserv.cxx:557
    129 	mergedlo.dll 	SfxShell::ExecuteSlot(SfxRequest &,SfxInterface const *) 	sfx2/source/control/shell.cxx:475
    130 	sclo.dll 	SfxStubScTabViewShellExecuteSave(SfxShell *,SfxRequest &) 	E:/build/workdir/SdiTarget/sc/sdi/scslots.hxx:1584
    131 	sclo.dll 	SfxStubScTabViewShellExecuteSave(SfxShell *,SfxRequest &) 	E:/build/workdir/SdiTarget/sc/sdi/scslots.hxx:1584
    132 	mergedlo.dll 	SfxDispatcher::Call_Impl(SfxShell &,SfxSlot const &,SfxRequest &,bool) 	sfx2/source/control/dispatch.cxx:258
    133 	mergedlo.dll 	SfxDispatcher::Call_Impl(SfxShell &,SfxSlot const &,SfxRequest &,bool) 	sfx2/source/control/dispatch.cxx:219
    134 	mergedlo.dll 	SfxBindings::Execute_Impl(SfxRequest &,SfxSlot const *,SfxShell &) 	sfx2/source/control/bindings.cxx:1051
    135 	mergedlo.dll 	operator new(unsigned __int64) 	D:/a/_work/1/s/src/vctools/crt/vcstartup/src/heap/new_scalar.cpp:36
    136 	mergedlo.dll 	cppu::PartialWeakComponentImplHelper<com::sun::star::lang::XServiceInfo,com::sun::star::frame::XFrame2,com::sun::star::awt::XWindowListener,com::sun::star::awt::XTopWindowListener,com::sun::star::awt::XFocusListener,com::sun::star::document::XActionLockable,com::sun::star::util::XCloseable,com::sun::star::frame::XComponentLoader,com::sun::star::frame::XTitle,com::sun::star::frame::XTitleChangeBroadcaster,com::sun::star::beans::XPropertySet,com::sun::star::beans::XPropertySetInfo>::acquire() 	include/cppuhelper/compbase.hxx:83
    137 	mergedlo.dll 	SfxUnoFrameItem::SfxUnoFrameItem(SfxUnoFrameItem const &)
    138 	mergedlo.dll 	struct std::pair<std::_List_node<std::pair<unsigned short const ,SfxPoolItem const *>,void *> *,bool> std::_Hash<std::_Umap_traits<unsigned short,SfxPoolItem const *,std::_Uhash_compare<unsigned short,std::hash<unsigned short>,std::equal_to<unsigned short> >,std::allocator<std::pair<unsigned short const ,SfxPoolItem const *> >,0> >::_Try_emplace<unsigned short const &>(const unsigned short & const) 	C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.44.35207/include/xhash:707
    139 	mergedlo.dll 	SfxUnoFrameItem::SfxUnoFrameItem(SfxUnoFrameItem const &)
    140 	mergedlo.dll 	SfxItemSet::SfxItemSet(SfxItemSet const &) 	svl/source/items/itemset.cxx:270
    141 	mergedlo.dll 	SfxBindings::Execute_Impl(SfxRequest &,SfxSlot const *,SfxShell &) 	sfx2/source/control/bindings.cxx:965
    142 	mergedlo.dll 	SfxDispatchController_Impl::dispatch(com::sun::star::util::URL const &,com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const &,com::sun::star::uno::Reference<com::sun::star::frame::XDispatchResultListener> const &) 	sfx2/source/control/unoctitm.cxx:737
    143 	cppu3.dll 	cppu::_copyConstructAnyFromData(_uno_Any *,void *,_typelib_TypeDescriptionReference *,_typelib_TypeDescription *,void (*)(void *),_uno_Mapping *) 	cppu/source/uno/copy.hxx:250
    144 	cppu3.dll 	cppu::_assignData(void *,_typelib_TypeDescriptionReference *,_typelib_TypeDescription *,void *,_typelib_TypeDescriptionReference *,_typelib_TypeDescription *,void * (*)(void *,_typelib_TypeDescriptionReference *),void (*)(void *),void (*)(void *)) 	cppu/source/uno/assign.hxx:417
    145 	cppu3.dll 	static void typelib_typedescription_destructExtendedMembers(struct _typelib_TypeDescription *) 	cppu/source/typelib/typelib.cxx:1308
    146 	mergedlo.dll 	static class std::unique_ptr<com::sun::star::uno::ContextLayer,std::default_delete<com::sun::star::uno::ContextLayer> > `anonymous namespace'::EnsureJavaContext() 	sfx2/source/control/unoctitm.cxx:229
    147 	mergedlo.dll 	SfxDispatchController_Impl::dispatch(com::sun::star::util::URL const &,com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const &,com::sun::star::uno::Reference<com::sun::star::frame::XDispatchResultListener> const &) 	sfx2/source/control/unoctitm.cxx:572
    148 	mergedlo.dll 	static class std::unique_ptr<com::sun::star::uno::ContextLayer,std::default_delete<com::sun::star::uno::ContextLayer> > `anonymous namespace'::EnsureJavaContext() 	sfx2/source/control/unoctitm.cxx:229
    149 	mergedlo.dll 	SfxOfficeDispatch::dispatch(com::sun::star::util::URL const &,com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const &) 	sfx2/source/control/unoctitm.cxx:256
    150 	mergedlo.dll 	static void framework::`anonymous namespace'::AsyncMenuExecute(void *, void *) 	framework/source/uielement/menubarmanager.cxx:793
    151 	mergedlo.dll 	static void framework::`anonymous namespace'::AsyncMenuExecute(void *, void *) 	framework/source/uielement/menubarmanager.cxx:789
    152 	mergedlo.dll 	ImplWindowFrameProc(vcl::Window *,SalEvent,void const *) 	vcl/source/window/winproc.cxx:2871
    153 	vclplug_winlo.dll 	static bool ImplHandleMouseMsg(struct HWND__ *, unsigned int, unsigned __int64, __int64) 	vcl/win/window/salframe.cxx:3311
    154 	ntdll.dll 	0x3365b
    155 	ntdll.dll 	0x3d809
    156 	user32.dll 	0x1b5e9
    157 	mergedlo.dll 	SalFrame::CallCallback(SalEvent,void const *) 	vcl/inc/salframe.hxx:311
    158 	mergedlo.dll 	SalFrame::CallCallback(SalEvent,void const *) 	vcl/inc/salframe.hxx:311
    159 	vclplug_winlo.dll 	static __int64 SalFrameWndProc(struct HWND__ *, unsigned int, unsigned __int64, __int64, bool & const) 	vcl/win/window/salframe.cxx:6136
    160 	user32.dll 	0x13b04
    161 	skialo.dll 	static void `anonymous namespace'::RasterWindowContext_win::onSwapBuffers(const struct SkIRect *) 	E:/build/workdir/UnpackedTarball/skia/tools/window/win/RasterWindowContext_win.cpp:89
    162 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    163 	ntdll.dll 	0x2e71a
    164 	ntdll.dll 	0x28b33
    165 	vclplug_winlo.dll 	static __int64 SalFrameWndProc(struct HWND__ *, unsigned int, unsigned __int64, __int64, bool & const) 	vcl/win/window/salframe.cxx:5738
    166 	vclplug_winlo.dll 	SalFrameWndProcW(HWND__ *,unsigned int,unsigned __int64,__int64) 	vcl/win/window/salframe.cxx:6145
    167 	vclplug_winlo.dll 	SalFrameWndProcW(HWND__ *,unsigned int,unsigned __int64,__int64) 	vcl/win/window/salframe.cxx:6140
    168 	user32.dll 	0x18eb8
    169 	vclplug_winlo.dll 	WinSalYieldMutex::doRelease(bool) 	vcl/win/app/salinst.cxx:150
    170 	msvcp140.dll 	0x1285b
    171 	user32.dll 	0x18bec
    172 	vclplug_winlo.dll 	static __int64 SalFrameWndProc(struct HWND__ *, unsigned int, unsigned __int64, __int64, bool & const) 	vcl/win/window/salframe.cxx:6137
    173 	user32.dll 	0x18771
    174 	vclplug_winlo.dll 	static __int64 SalFrameWndProc(struct HWND__ *, unsigned int, unsigned __int64, __int64, bool & const) 	vcl/win/window/salframe.cxx:6137
    175 	mergedlo.dll 	OpenGLContext::prepareForYield() 	vcl/source/opengl/OpenGLContext.cxx:377
    176 	vclplug_winlo.dll 	ImplSalYield(bool,bool) 	vcl/win/app/salinst.cxx:409
    177 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    178 	sal3.dll 	osl_setCondition 	sal/osl/w32/conditn.cxx:55
    179 	vclplug_winlo.dll 	WinSalInstance::DoYield(bool,bool) 	vcl/win/app/salinst.cxx:484
    180 	vclplug_winlo.dll 	WinSalInstance::DoYield(bool,bool) 	vcl/win/app/salinst.cxx:468
    181 	mergedlo.dll 	static bool InnerYield(bool, bool) 	vcl/source/app/svapp.cxx:389
    182 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    183 	mergedlo.dll 	static bool InnerYield(bool, bool) 	vcl/source/app/svapp.cxx:376
    184 	mergedlo.dll 	Application::Execute() 	vcl/source/app/svapp.cxx:364
    185 	mergedlo.dll 	desktop::Desktop::Main() 	desktop/source/app/app.cxx:1679
    186 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    187 	MSVCP140_1.dll 	0x11ef
    188 	ucrtbase.dll 	0x20475
    189 	mergedlo.dll 	operator<<<char,std::char_traits<char> >(std::basic_ostream<char,std::char_traits<char> > &,FontMetric const &) 	include/vcl/metric.hxx:107
    190 	mergedlo.dll 	static lo_initialize$catch$194() 	desktop/source/lib/init.cxx:8401
    191 	sal3.dll 	rtl_uString_release 	sal/rtl/ustring.cxx:1118
    192 	mergedlo.dll 	InitVCL() 	vcl/source/app/svmain.cxx:371
    193 	mergedlo.dll 	desktop::Desktop::Main() 	desktop/source/app/app.cxx:1304
    194 	mergedlo.dll 	ImplSVMainRun() 	vcl/source/app/svmain.cxx:234
    195 	mergedlo.dll 	soffice_main 	desktop/source/app/sofficemain.cxx:122
    196 	ntdll.dll 	0x53850
    197 	ucrtbase.dll 	0x20400
    198 	mergedlo.dll 	static `desktop::CallbackFlushHandler::CallbackData::CallbackData'::`1'::dtor$0()
    199 	mergedlo.dll 	soffice_main 	desktop/source/app/sofficemain.cxx:59
    200 	soffice.bin 	main 	desktop/source/app/main.c:49
    201 	soffice.bin 	static int __scrt_common_main_seh() 	D:/a/_work/1/s/src/vctools/crt/vcstartup/src/startup/exe_common.inl:288
    202 	soffice.bin 	mainCRTStartup 	D:/a/_work/1/s/src/vctools/crt/vcstartup/src/startup/exe_main.cpp:16
    203 	kernel32.dll 	0x1259d
    204 	ntdll.dll 	0x5af78

[1] https://crashreport.libreoffice.org/stats/crash_details/6812315d-e79b-46ce-893d-688d6908c41c
[2] https://gerrit.libreoffice.org/c/core/+/203572/comment/95fcd0be_db5a3d02/

Change-Id: Ia30eecd2667d15220b9f7824faea5adc04c94e93
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210137
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-08-27 23:36:19 +02:00
Michael Weghorn 8bf40d62b6 Move QueryDialog to svtools
Move QueryDialog from cui to a public svtools header.
This is in preparation of using the class directly
and dropping the AbstractQueryDialog abstraction
altogether.

The dialog can e.g. be triggered like this:

* start Writer
* Ctrl+Shift+S for "Save As"
* select "Text (.txt)" for the file type
* press OK

(Resetting the profile ensures the dialog gets shown
in case the "Don't show again" checkbox has been ticked
previously.)

Change-Id: I57bdade32c21c7ab40c5a4c90bd86e8dea5d2fad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210136
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-08-27 23:36:10 +02:00
Andrea Gelmini 8acc72d8c2 Fix typos
Change-Id: I1a3aa6e77a31e1d60bfaf98006799657f91bcb1d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209890
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
2026-08-25 14:30:23 +02:00
Caolán McNamara ecd9ee7aa1 pass a referer through setSvxBrushItemAsFillAttributesToTargetSet
SvxBrushItem::GetGraphic wants the name of the document the brush came
from, so take it as an argument and hand in SwDoc::GetLinkReferer
wherever a document is at hand, the Writer style, frame and background
shell paths included.

The dialog and example-window callers pass the name of the active
document shell through a new svx helper getActiveDocumentLinkReferer.

The hand-rolled copies of the GetPersist, HasName, GetMedium GetName
sequence elsewhere in sw now call SwDoc::GetLinkReferer too.

Change-Id: I8693d27869baed79962b2d5bdcb7b7e2c63227bb
Signed-off-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/8200
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 18f91ac71710027479dfe9f206ae2207bad8f2b7)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209827
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-08-25 11:16:39 +02:00
Olivier Hallot 4f09a06484 Improve wording for "Resize all pages" in Impress page dialog
Change-Id: I774fa8133c62d12a59cf840bd4df1e5aecbf71e8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209424
Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Tested-by: Jenkins
2026-08-21 19:45:59 +02:00
Xisco Fauli 0c91381485 loplugin:unusedmethods
Change-Id: I17586b49f970be17c5f6d2823d4a973521b2ed62
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209407
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-08-21 09:31:35 +02:00
Neil Roberts 66dfcf9803 tdf#173170 Don’t show the “resize all pages” checkbox if not requested
If the caller of the dialog doesn’t request the
SID_ATTR_RESIZE_ALL_PAGES attribute then the checkbox to configure
whether to resize all pages will now be hidden. This fixes the problem
that the checkbox was shown in Writer and Calc but it actually only has
any effect in Draw and Impress.

Change-Id: I47a0d5320071c00830f5e95ad3d6753c56ecc0f1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209413
Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
Tested-by: Jenkins
2026-08-21 08:07:02 +02:00
Michael Weghorn 8da9b9d8e5 Enforce UI rules (Run ui-rules-enforcer)
Commit the result of running ui-rules-enforcer:

    for a in `git ls-files "*.ui"`; do bin/ui-rules-enforcer.py $a; done

Change-Id: I12ea4ed35e3b05cc6f9855df2159d3d677c85fe7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209387
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-08-20 22:29:37 +02:00
Olivier Hallot 29a5796177 Add extended tips to page style dialog
Change-Id: Ie2575363c812fb0cc346778795a003a86a773f2c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209221
Tested-by: Jenkins
Reviewed-by: Olivier Hallot <olivier.hallot@libreoffice.org>
2026-08-20 13:35:01 +02:00
Julien Nabet 33bb828ae5 tdf#173186: "Pick" button inactive in "Area" dialog box
After 2016 Gsoc rework of color tab, UpdateModified is:
- useless since the color pick isn't relied with m_pColorList
- wrong since there's no case where color pick button should be disabled.
So when starting a brand new odp and right click on Area, color pick button should be enabled.

Change-Id: I5b1b0f0c3eb7e100a69379ca014eeb1b14263611
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209317
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2026-08-19 16:22:34 +02:00
Heiko Tietze c831687ef2 Related tdf#91816 - Fix comment for text alignment
Follow-up on d36bc2232e

Change-Id: I6b49a21d54f9afae8fc6665914c38c4913be5bea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209142
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2026-08-16 11:57:24 +02:00
Heiko Tietze d36bc2232e Resolves tdf#91816 - Allow indentation of right-aligned text in Calc
Change-Id: I3b2af718a8e3bdc97c84da64b011b54697ff2023
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209118
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2026-08-14 13:00:23 +02:00
Heiko Tietze c99cf5b32b Resolves tdf#140561 - Change gutter label in case of mirrored style
In case of mirrored pages the gutter cannot be left or right but
inner or outer. To make the dialog easier to understand the modifier
checkbox for Left turning this into Right was changed to radio buttons.

Change-Id: I71b32d89f9a9054f5351e3c0d51ba348b66c1f0c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209072
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2026-08-13 15:57:25 +02:00
László Németh f3d5dbfb18 tdf#172674 sw: fix terminology + UX of new hyphenation settings
Replace label "Less Hyphen" of the new hyphenation slider
with "Fewer Hyphens", also "Hyphenation leveled x%" with
"Hyphenation level x%".

On the General pane of the paragraph style settings, add missing
commas and spaces inside the summary of the enabled new hyphenation
settings. Show only the non-default values here. Remove redundant
"No hyphenation across" title, where its value is a full-text
explanation.

Change-Id: Icc9d8bb4023d03be497d76289967b5d6061316ad
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209067
Tested-by: Jenkins
Reviewed-by: Neil Roberts <nroberts@libreoffice.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
2026-08-10 19:21:01 +02:00
Neil Roberts 9dd7345159 tdf#173043 Add translator comments to strings containing “outline”
The word “outline” in LibreOffice can refer to either the lines of the
shape of something or an overview of something. When the string is quite
short it’s difficult for translators to know which meaning is intended.
There seems to be quite a lot of cases where the translators have got
this wrong. In order to help them this patch adds translator comments to
a bunch of the strings to explain which meaning should be used.

Change-Id: I4b75cc829128633bc9382817fc574d55a09af8a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209037
Tested-by: Jenkins
Reviewed-by: Neil Roberts <nroberts@libreoffice.org>
2026-08-09 12:12:44 +02:00
Neil Roberts 0066e963bc cui: Add a translator comment for the “No Bold/Italic” strings
The string in Weblate is presented just as “No %1”. The %1 is replaced
with the name of a font style. Without the context it’s easy to
misunderstand this as being an abbreviation for “number”. At least the
Dutch and Esperanto translations seem to have done this.

Change-Id: I220db88346a84e67b0e34affb1b8e7023cfbb90d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209053
Reviewed-by: Neil Roberts <nroberts@libreoffice.org>
Tested-by: Jenkins
2026-08-09 11:28:20 +02:00
Neil Roberts 6685fe38e0 Use “allows X-ing” instead of “allows to X” in UI
“Allows to X” sounds wrong if it doesn’t also have the person it is
allowing as the object of the sentence. See this:

https://english.stackexchange.com/questions/60271/grammatical-complements-for-allow

For the text in the tooltip it is describing what the widget does rather
than giving a command so it should have an “s”, like “[this widget]
allows selecting…”.

Change-Id: I39883bfcd7b8f8e3392b3bf564130720fa6daaf2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208986
Reviewed-by: Neil Roberts <nroberts@libreoffice.org>
Tested-by: Jenkins
2026-08-06 16:24:00 +02:00
AsmatZahra-code b28b657416 tdf#172210 Advise restart when changing High Contrast setting
Tools > Options > LibreOffice > Accessibility > High Contrast
has three possible values. Changing this setting requires a
restart to take effect, but no restart dialog was shown.

Add a new RESTART_REASON_HIGH_CONTRAST reason and wire it up
in SvxAccessibilityOptionsTabPage::FillItemSet() following the
same pattern used for Skia and Threaded Calculation settings.

Also call save_value() in Reset() so that
get_value_changed_from_saved() correctly detects whether the
user actually changed the combo-box value before showing the
dialog.

Change-Id: I1d628ce04bc8f7cf6f1b4e4a8bb7a44a0a653c0c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208996
Reviewed-by: Hossein <hossein@libreoffice.org>
Tested-by: Jenkins
Tested-by: Hossein <hossein@libreoffice.org>
2026-08-05 12:08:39 +02:00
Neil Roberts dce6dcd302 tdf#172952 uitabpage: Use separate strings for the Apply to X button
The dialog for choosing a UI has a button at the bottom to apply the
setting only to the current module and it has the text “Apply to
%MODULE” where %MODULE gets replaced with a non-translatable name for
the module.

For better or worse, some translations (such as Esperanto) have
different names for the modules. For example Writer is Verkilo. For the
sake of consistency, it would be nice to be able to translate these
strings.

It is also difficult translate this string in languages that have a lot
of grammatical cases. For example, in Slovakian the translator might
ideally want to translate the string as “Použiť vo Writeri” and “Použiť
v Calcu” etc, but they currently can’t do this because they would need
to be able to add a different suffix depending on which module is being
used.

In order to fix both problems there is now a specific string with the
whole text for each module.

Change-Id: I7c478790d89bf33f26b53642a076f9e308d1e64a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208800
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2026-07-31 12:39:05 +02:00
Neil Roberts 33cdc558f9 uitabpage: Split part of GetCurrentApp into version to get the enum
The part of GetCurrentApp that gets the enum of the current app is now
split out into a separate function so that it can be used in a later
patch.

Change-Id: Iee2d00cc8384c6c05cd36c5ebcfe5df3174dfd21
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208859
Tested-by: Jenkins
Reviewed-by: Neil Roberts <nroberts@libreoffice.org>
2026-07-31 12:38:33 +02:00
Justin Luth af99f74cd6 tdf#159398 cui chardlg: Allow 'Without' capitalization immediately
This fixes an initial import copy paste typo.

Without the fix, the user would first need to select another choice,
close the format dialog with an OK, and then open it up again
where this time it allows the choice of 'Without' to stick.

Change-Id: I3f63d68002135b8aed9370ba829b74c6f72753b5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208873
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
2026-07-31 10:54:12 +02:00
Michael Weghorn 3aad0eac0e tdf#172275 tdf#172831 cui: Drop unused CustomNotebookbarGenerator
This class is unused now after

    Change-Id: If15d1519cea179596bd72aaf5354d01f89ccb9e7
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jul 27 13:38:37 2026 +0200

        tdf#172275 tdf#172831 cui: Drop unused SvxConfigPage::m_s{App,File}Name

Drop it.

Change-Id: Ic670d1db42f2262ee67d87b84819bf0aab8d9c30
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208673
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-07-28 23:20:51 +02:00
Michael Weghorn 38f1a7768c tdf#172275 tdf#172831 cui: Drop unused SvxConfigPage::m_s{App,File}Name
The getters for these members are no longer used since

    Change-Id: I45bcbdcbf89d8f50b18512cde81d7af26e52a2a2
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jul 27 13:12:52 2026 +0200

        tdf#172275 tdf#172831 Drop unused SvxNotebookbarConfigPage

and the members are not used inside the class (except for assigning
a value to them) either, so drop them.

Change-Id: If15d1519cea179596bd72aaf5354d01f89ccb9e7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208672
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-07-28 23:20:44 +02:00
Michael Weghorn 6864d76c2a tdf#172275 tdf#172831 Drop unused CustomNotebookbarGenerator::get*UIPath
These are unused now after

    Change-Id: I3a07781df97cec9bc4f449aaee758dc73fa97157
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jul 27 13:31:37 2026 +0200

        tdf#172275 tdf#172831 Drop more unused CustomNotebookbarGenerator methods

Change-Id: Ia2fe4b814d15be96cd68b3b425c6deed16a664a9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208671
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-28 23:20:37 +02:00
Michael Weghorn 97b205db7a tdf#172275 tdf#172831 Drop more unused CustomNotebookbarGenerator methods
These methods are no longer needed after

    Change-Id: I45bcbdcbf89d8f50b18512cde81d7af26e52a2a2
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jul 27 13:12:52 2026 +0200

        tdf#172275 tdf#172831 Drop unused SvxNotebookbarConfigPage

Change-Id: I3a07781df97cec9bc4f449aaee758dc73fa97157
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208670
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-28 23:20:28 +02:00
Michael Weghorn dd24135865 tdf#172275 tdf#172831 Drop unused CustomNotebookbarGenerator methods
CustomNotebookbarGenerator::modifyCustomizedUIFile is unused now
after

    Change-Id: I45bcbdcbf89d8f50b18512cde81d7af26e52a2a2
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jul 27 13:12:52 2026 +0200

        tdf#172275 tdf#172831 Drop unused SvxNotebookbarConfigPage

. Drop it, and also the then also unused
CustomNotebookbarGenerator::getSystemPath and static
local helper functions.

Change-Id: Ia231effca982405e5e8b88af1c6e6805de7bd770
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208669
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-07-28 23:20:14 +02:00
Michael Weghorn 968bc97a37 tdf#172275 tdf#172831 Drop unused SvxNotebookbarConfigPage
SvxNotebookbarConfigPage is unused since

    commit 7312d7d3c9
    Date:   Wed May 20 15:28:42 2026 +0200

        Relates tdf#166641 - Add category labels to Writer's Tabbed Notebookbar

        * gla11y-conform
        * consistent IDs (gd*/lb* and btn*/bx*)
        * consistent layout with grids
        * defined spacing of 3px
        * defined margins of 6px
        * category labels
        * redundant Insert sections from Home and Forms from Tools removed
        * customization of Notebookbars removed since the new position
        of commands is not properly found

and its ctor was dropped in

    commit 00aebb5e88
    Date:   Fri Jun 26 18:55:24 2026 +0200

        loplugin:unusedmethods

. Drop the class altogether, along with the code
commented out since the above commit that would
have used it.

Change-Id: I45bcbdcbf89d8f50b18512cde81d7af26e52a2a2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208668
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-28 23:20:07 +02:00
Michael Weghorn b29aa904ce cui: Drop OfaTreeOptionsDialog::showDialog comment duplicating code
This comment just repeats the mapping that the code
underneath it implements.
Drop it, to deduplicate this.

Change-Id: I60497fbd52b057986f76b88cef82d4a991927c7b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208600
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-25 10:41:22 +02:00
Michael Weghorn 794f03b084 cui: Make OfaTreeOptionsDialog::showDialog param const
This vector can be passed by const reference. Also use
an "r" prefix; this is not a pointer.

Change-Id: I5c96a3701a24096a045c58a99d81ad6b49145c4e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208599
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-25 10:41:15 +02:00
Michael Weghorn 0bebfb032b tdf#130857 Define widgets in numbering options page in order
Switch the order in which the widgets in the .ui file
are defined so that the order better matches the visual appearance
and logical order, which makes sure that tab focus order with the
Qt-based VCL plugins is correct as well when using native Qt
widgets (SAL_VCL_QT_USE_WELDED_WIDGETS=1), where
focus order is (by default) based on widget creation order.

See

    commit 02692566ad
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Oct 24 17:43:35 2024 +0200

        tdf#130857 optnewdictionarydialog.ui: Define focusable widgets in order

for more background.

The page can be triggered like this:

* start Writer
* open the "Styles" sidebar deck
* press the "List Styles" button at the top of the sidebar deck
* right-click on an existing bullet style to open the context menu
* select "Edit Style..." context menu entry
* switch to the "Customize" tab

The Python script mentioned in the commit message of

    commit 327679b2fb
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Wed Jul 8 15:50:59 2026 +0200

        tdf#130857 Define widgets in Calc "General" options page in order

was used to reorder the GtkGrid children automatically.

Change-Id: I0010eb3af1272342f2f40e8f3b0952b676a22618
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208462
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-25 10:33:22 +02:00
Neil Roberts 54ba86b578 scripting: Replace XAggregation of XBrowseNode with helper function
The browse node factory had a wrapper using XAggregation that wraps
every XBrowseNode. As far as I can tell this was used to replace the
implementation of getChildNodes with one that checks for exceptions from
the underlying provider and then sorts all of the resulting nodes by
name. The trouble with this is that it prevents the script providers
from detecting when a node is one from the same script provider and thus
makes it difficult to implement the XCopyableBrowseNode interface. The
documentation for XAggregation mentions this problem and also states
that the interface is deprecated.

To avoid this overhead, this patch replaces the aggregation with a
helper function in comphelper that should be used to retrieve children
from a browse node. That takes care of catching exceptions and sorting
the results.

Change-Id: I319888fee1b84ddcef397317d2cf7e72bd2867cd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208160
Tested-by: Jenkins
Reviewed-by: Neil Roberts <nroberts@libreoffice.org>
2026-07-23 15:18:22 +02:00
Justin Luth 78f371e500 NFC tdf#111843 SfxViewShell: HasSelection(bText=true), remove =true
No Functional Change intended

This function is used very specifically for only UI stuff.
It is very different from any regular stuff.

So help to differentiate it by requiring the bool value.

To make sure I got all of them, I tested by requiring
a bogus OUString variable as well - make sure it compiled.

Change-Id: I4879427a806324d9fb9c033ef6b66ad24ba0bd54
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208234
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
2026-07-21 11:22:20 +02:00
Heiko Tietze a435d56867 Related tdf#115805 - Use correct increments for numbering dialogs
Rather than using set_unit() use the function SetFieldUnit() to set
the unit property according the configuration

Change-Id: I1a8638d34d71b509f2d0a52fef8a673c8e112c55
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207353
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
Tested-by: Jenkins
2026-07-21 07:46:10 +02:00
Xisco Fauli 208d055212 skia: turn ForceSkiaRaster into ForceSkiaGPU
so unless ForceSkiaGPU is specifically enabled by the user,
hardware accelatarion will be disabled by default.
Some discussion on the topic can be found here
https://gerrit.libreoffice.org/c/core/+/208116/comments/273234df_69198d70
and here
https://gerrit.libreoffice.org/c/core/+/208116/comments/372732df_f989e4f3

In libreoffice-26-2 branch, Vulkan has been put under experimental mode
so it doesn't touch translations,
see https://gerrit.libreoffice.org/c/core/+/208134

Change-Id: Ib7a39d269f24b5ef82752edb238944d3d453153c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208148
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-07-18 13:00:28 +02:00
Michael Weghorn 312aac710b Move SvtViewOptions from unotools to svtools
The SvtViewOptions class is used to store the state
of windows/dialogs.

So far, SvtViewOptions::SetWindowState and
SvtViewOptions::GetWindowState are string-based
and the callers are responsible for (de)serializing
the vcl::WindowData to/from string.

This will be changed to become the responsibility
of SvtViewOptions in an upcoming commit.

Since unotools is below vcl in the module
dependency chain, it cannot make use of vcl,
i.e. vcl::WindowData couldn't be used there.

Therefore, move SvtViewOptions from unotools
to svtools, which is above vcl in the module
dependencies.
(svtools/README.md summarizes the purpose of the
module as "Tools on the Top of VCL", which seems
an appropriate place for helper code to manage
the state/options for dialogs, tab pages,...)

Change-Id: If849224c35c7ac895659ddb7c17e6d17061d61a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208124
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-15 14:45:41 +02:00
Neil Roberts becb1c338e tdf#165689 MacroManagerDialog: Add copy/paste buttons
Adds copy and paste buttons to the Macro Manager dialog so that script
files can be copied with script providers that support the
XCopyableBrowseNode interface. The “copy” button selects the file to be
copied and then the “paste” button works when a destination is selected.

Change-Id: I058b7ed53c837d17723b5f1b4e69f0bc7ae2594f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207738
Tested-by: Jenkins
Reviewed-by: Neil Roberts <nroberts@libreoffice.org>
2026-07-15 12:28:50 +02:00
Neil Roberts 2365c64aa3 comphelper: Add helpers for accessing duck-typed methods of XBrowseNode
Implementations of XBrowseNode have a bunch of extra methods which are
accessed by using XPropertySet::getPropertyValue to determine if the
action is possible and then XInvocation::invoke to invoke it. This patch
adds wrappers around checking and invoking these methods. The idea is to
abstract away the actual implementation so that the approach can be
changed in a later patch.

Change-Id: I117ab848391dbb1277f9331d6a93f71c2cb556ea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207343
Reviewed-by: Neil Roberts <nroberts@libreoffice.org>
Tested-by: Jenkins
2026-07-15 09:05:13 +02:00
Michael Weghorn 447f1f77a0 cui: Don't count entries again in SvxLinguData_Impl::MergeDisplayArray
`nCnt` starts with a value of 0 and is incremented
`nEntries` times (unless there is an early return
in the loop, in which case the value is irrelevant).

That means that the value of `nCnt` is the same
as `nEntries` after the loop.

Just use `nEntries` directly and drop `nCnt` to
simplify this.

Change-Id: If9667875cc2b8bffb421cbf78badd404080e8d71
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207963
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-13 14:09:23 +02:00
Michael Weghorn 6c6a33065b cui: Prefix SvxLinguData_Impl members with "m_"
Use the usual "m_" prefix for class members to
distinguish them from local variables.

Change-Id: I9194e72223df84c8fbd896b8b6f93baa3de8b185
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207962
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-07-13 14:09:15 +02:00
Michael Weghorn eed4e2af19 cui: Drop SvxLinguData_Impl::SetDisplayServiceCount
Access the own class member directly instead.

Change-Id: I6b065e83abeff925b3876b655a39a9d3dd1de6b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207961
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-13 14:09:07 +02:00
Michael Weghorn 1886b0f018 cui: Convert lcl_MergeDisplayArray to a SvxLinguData_Impl method
Instead of passing `this` as the first param in
all callers, convert the static helper into a
class method and drop the extra param.

Change-Id: I4141c1eac68e483f520db880f435c4b64efe8e4b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207960
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-13 14:08:59 +02:00
Michael Weghorn cead31a8fa cui: Deduplicate SvxLinguTabPage::FillItemSet logic
SvxLinguTabPage::FillItemSet basically implements
the same logic 4 times, just using a different
table + service name each time.

Extract logic to a new helper method and pass
those as parameters.

Change-Id: If929ee97be7da38de55c735104e5ce296f03a4b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207959
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-13 14:08:51 +02:00
Michael Weghorn 42305c6c1b cui: Drop always true local var in SvxLinguTabPage::FillItemSet
Change-Id: I11cac6dd70d22b08325da04e1586894f095bde5b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207958
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-13 14:08:43 +02:00
Michael Weghorn 396c007f91 cui: Prefix SvxLinguTabPage members with "m_"
Use the usual "m_" prefix for class member names,
to distinguish them from local variables.

Change-Id: Ieec720a8420ba11bac20915bcf2a15a2722223d2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207957
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-13 14:08:36 +02:00
Ilmari Lauhakangas c8f2e03a4f Revert "tdf#166435 Improve tip of the day"
This reverts commit c7a6961fb0.

Reason for revert: not what the task asked.

Change-Id: I5280fe1091383d44cb0037ba396c8b31f9842e47
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207970
Tested-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
Reviewed-by: Ilmari Lauhakangas <ilmari.lauhakangas@libreoffice.org>
2026-07-11 11:19:21 +02:00
Michael Weghorn f1f6a505a0 weld: Pass weld::TextWidget& in text change callback/handler
Switch the weld::Entry and weld::TextView handlers
that are called when the text changes due to user
interaction to pass a weld::TextWidget& param
instead of a weld::Entry& and weld::TextView&
one respectively.
Adjust related methods across the code base accordingly.

This unifies the behavior for both of these
weld::TextWidget subclasses and prepares for
deduplicating the logic and moving it to the
common base class in an upcoming commit.

That will also ensure they stay in sync.
(Change also motivated by the fact that their behavior was
differing before

    Change-Id: I03d2a13cd84d53d806eb9e363f49c4b6be28d938
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Jul 9 13:08:58 2026 +0200

        tdf#130857 weld: Don't signal about programmatic TextView text change
.)

Change-Id: I5572fc88caf577fae9a23a39f1ec4f2179935a99
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207936
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2026-07-10 18:17:27 +02:00
Michael Weghorn 8c2d8e1616 cui: Use weld::Entry member directly in callback
Use OfaLanguagesTabPage::m_xDatePatternsED instead of the
callback param, as the callback is only connected
for that member.

This prepares for an upcoming commit that will
change the callback param to weld::TextWidget& to
unify/deduplicate the weld::Entry and weld::TextView
implementations.

Change-Id: I186e6f1958d744c78e3ba60fd5fc6f56633407b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207935
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
2026-07-10 18:17:15 +02:00