looks like a stray line I think
Change-Id: I065a35d6e161c37d832e308f7ed1ce239e4e2bbf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177516
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
regression from
commit 6c2f827697
Author: Noel Grandin <noel.grandin@collabora.co.uk>
Date: Sun Oct 20 15:07:41 2024 +0200
improve style searching in SvXMLStylesContext
Two problems - the original code was searching by DisplayName,
not Name, so add another index for DisplayName,
and the prefix matching was not properly matching.
Change-Id: Ifd43bdb89d33067954298115c8700b87c7f93050
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177488
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
* Update helpcontent2 from branch 'master'
to dc50ebde81a0e9266806878b69de81da422ec39c
- Revert "enable help for Tagalog (tl)"
This reverts commit 3d37519d37c1ac9e5d30b45f1cd922c73107d4d1.
Reason for revert: apparently not all files have been added for master
Change-Id: Ia0979a8abca4aa598563598276c9a9c0e0518a33
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/177515
Tested-by: Jenkins
Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
When we save - we block UI. In the lok we disable that for
some cases like in commit e005690e9c
lok: avoid sending jsdialog messages during background save.
But we also use save file to generate previews of shapes what happens
on eg. resize in Online. Then we trigger disable and enable cycle
for frames - and we end with FontNameBox enabled!
That was causing the JSDialog combobox still being locked - because
frame unlock was using direct VCL API, not weld:: one in the
InterimItemWindow. Let's fix that with proper StateChanged handling.
So now it is functional. But still I think there is some error in the
logic - as after save we should beg the "before save" state of control
not "always enabled". But it's different problem.
Change-Id: Ia8e5c8c864156271b5f68d482234e83eb57b0deb
(cherry picked from commit cbe229ec219e56ce1bb5dd9598f9052a98504249)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177489
Tested-by: Jenkins
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
... and use a non-const pointer when iterating instead.
Change-Id: I165b0ce907cadacc76562bff974ff913a3a711da
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177480
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
This change adds loext:margin-left and loext:margin-right, which
implement margins that support font-relative units.
See tdf#36709 for additional details.
Change-Id: I31b0dd2b6f98cb5b02fd4dca3608db6fdee4054c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177473
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
* Update helpcontent2 from branch 'master'
to 3d37519d37c1ac9e5d30b45f1cd922c73107d4d1
- enable help for Tagalog (tl)
Change-Id: I0e35015d4d2526ea0d09404140a1ee73ce658350
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/175653
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
Tested-by: Jenkins
so the first use of nNum is dead after scope
no logic change intended
Change-Id: I81a51531418b32a09f5b9dba1131bc65ac71df3d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177483
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
given that we return early on the opposite condition
no logic change intended, git diff -w is your friend
Change-Id: I37b7db3a1d092ffbe0ef41561982555f6b6d3bae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177482
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Not all properties are available for all kind of shapes.
In this case Visible is not available for a SvxFrameShape.
Change-Id: I7811ab6cd04d782f8758fbee449bbc5bc421fd51
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177470
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Move inline headings with their outline tree in
Navigator, clicking on the Move Heading Up/Down icons.
Instead of changing CompareSwOutlineNodes, which breaks
the code at other places, add a new SwOutlineNodesInline
and CompareSwOutlineNodesInline to sort inline headings
(put in Inline Heading frames) with normal headings only
for MoveOutlinePara and other part of Navigator's
outline moving.
Reordering chapters and sections using the Navigator was
limited for normal (root) headings, but not for headings
in text frames and tables.
Recent implementation of inline headings use text frames
with Inline Heading frame style, anchored as characters
to their paragraphs. Now these inline headings are movable
with the Navigator, with their outline tree, i.e. the paragraph
where the inline heading anchored as character, the following
paragraphs without inline heading, or the following subsections.
Note: selecting the inline headings is possible by the Navigator
content tree or or by clicking inside the text of the inline
heading in the document.
Note: according to the fix for tdf#143569, multiple headings
in the same text frame or table are ordered alphabetically in
the Navigator. This doesn't effect the inline headings, where
there is only a single heading in an Inline Heading text frame.
Follow-up to commit 7a35f3dc74
"tdf#48459 sw inline heading: apply it on the selected words",
commit d87cf67f8f
"tdf#131728 sw inline heading: fix missing/broken DOCX export"
and commit a1dcbd1d1c
"tdf48459 sw inline heading: add Inline Heading frame style".
Change-Id: I7618aa1d4e1ddc20512d81c9a2babfa660053cbf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177438
Tested-by: Jenkins
Reviewed-by: László Németh <nemeth@numbertext.org>
The creation of own TransferableDataHelper was needed when the code
was introduced initially, taking a reference to XTransferable; now,
when it already takes a helper, it's no more needed.
Change-Id: I4c42327ab9b964c61572be13a4a89b44efc8d343
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177466
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
In commit 5e6def1bd4 (Redesign for XTransferable,
2001-01-19), a code was introduced, that used two different pPickObj variables.
Later, in commit 507aced21a (INTEGRATION: CWS
sdwarningsbegone (1.68.10); FILE MERGED, 2006-12-12), the name conflict was
fixed; but that fix changed the object used here, from the nearest, that was
just initialized in the current scope, to the one that was optionally assigned
early in the function, depending on a variable not used in current scope. I
assume that that was an overlook; so fix it now.
I don't have a failure case, just found it by code reading, so this could be
wrong, and need be reverted, hopefully with an explanation.
Change-Id: Ib95bc450b78f64e1ac468e9676f32395ddaf0870
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177464
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
A potential dereference of nullptr was introduced as renaming overlook
in commit 507aced21a (INTEGRATION: CWS
sdwarningsbegone (1.68.10); FILE MERGED, 2006-12-12).
Change-Id: I4cf787e3ec3e1819040368d17279cae4db391bc7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177461
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Set the allowed range using weld::SpinButton::set_range
so that weld::SpinButton makes sure that a value within
the correct range is set, instead of having a custom
handler called when the text of the spinbutton changes
that effectively does the same thing (+ manually setting
cursor to the end of the edit, but sticking to the toolkit
default there instead makes sense to me for consistency).
Adjust the test case to no longer type invalid input
for the page number ("3a"), as SalInstanceSpinButton
doesn't parse the number then, but would set the value to
the minimum (here: 1) instead.
(If a different behavior were intended here, that
should be implemented in SalInstanceSpinButton or
the underlying VCL widgets to be consistent
across dialogs.)
In GotoPageDlg::GetPageSelection, use weld::SpinButton::get_value
to get the integer value right away, instead of
getting the text and converting that into an
integer manually.
All that custom handling provided an interesting test case
while implementing support for that dialog using native
Qt widgets, see commits up to
commit 70825e677f
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Thu Nov 28 00:30:10 2024 +0100
tdf#130857 qt weld: Notify about spinbox combined value+text change
, but apart from that (which is done now), I think
that a more standard approach makes more sense.
Change-Id: I06492b6629a4210c6325d50467da8e195daa4c94
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177463
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
since:
commit 1ae71d8f09
CommitDate: Fri Dec 16 20:18:04 2022 +0000
Revert "fix math export/import in docx/rtf"
tidy up here, and possibly
commit ef53355355
CommitDate: Wed Jan 4 13:49:58 2023 +0000
Rudimentary support for dynamic_cast on UNO proxy objects
is also relevant
Change-Id: I27548c5071df4f3231a49a1ee47fa72d0a93148c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177471
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Seen in export of forum-mso-en-11772.docx to rtf and reimport
so rtf cannot be imported, a problem probably since:
commit c14355592c
CommitDate: Tue Dec 31 18:02:07 2013 +0100
Related: fdo#66440 RTF export: handle NULL component in FlyFrameOLEMath()
A problem with casting the uno proxy obj probably got fixed with:
commit ef53355355
CommitDate: Wed Jan 4 13:49:58 2023 +0000
Rudimentary support for dynamic_cast on UNO proxy objects
At least now converting the original test case to rtf doesn't crash for
me on export, and now uses "if (pBase)" to keep balanced and at least
output a preview image if not the math text content.
Change-Id: Ib428ab89fac6f36f1fa8e3bd7b3b01cd0a889d7e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177442
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
This puts NSS and OpenSSL implementations into own classes and
adds an interface to make this possible. The implementation is
now determined in Library_comphelper.
Change-Id: I4918f19bca0adfd2f9180fb418d1bd57bb83982d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177383
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
While QtInstanceEntry generally takes care of handling signals
for the spinbox's QLineEdit, this doesn't work when the value
is changed as a result of setting a new spinbox value (e.g.
by using the spinbox buttons), as the QLineEdit signals are blocked
then, see QAbstractSpinBoxPrivate::updateEdit in qtbase [1].
Therefore, connect the QDoubleSpinBox::textChanged signal
to the slot that calls signal_changed() instead to ensure
it gets called nonetheless, and disconnect from the other signal.
While at it, also add a SolarMutexGuard when calling the
signal.
This fixes the issue noticed with the "Go to Page"
dialog mentioned in previous commit
Change-Id: I1f24cf3925e945ae78a9f1646535e08736cd8786
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Wed Nov 27 23:53:58 2024 +0100
tdf#130857 qt weld: Support "Go to Page" dialog
as:
> One issue seen with the dialog is that by using the
> up arrow of the spinbox to increase the value, it
> is currently possible to increase the value
> beyond the maximum value (last page number),
> while this is not the case when typing a number
> into the box manually.
>
> This is because the GotoPageDlg::PageModifiedHdl
> handler currently only gets called for the
> latter case, not the former one, despite
>
> Change-Id: Ie19bc852f4ceed0fa79565302975376db7126ea4
> Author: Michael Weghorn <m.weghorn@posteo.de>
> Date: Wed Nov 27 22:53:55 2024 +0100
>
> tdf#130857 qt weld: Also notify about programmatic text changes
>
> and will be addressed in a separate commit.
[1] https://code.qt.io/cgit/qt/qtbase.git/tree/src/widgets/widgets/qabstractspinbox.cpp?id=ced47a590aeb85953a16eaf362887f14c2815c45#n1790
Change-Id: Ifba9a0877442f9e84f0103d8aab202ae3583c5cf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177451
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Declare support for the "Edit" -> "Go to Page" dialog
available in e.g. Writer.
This means that native Qt widgets are used for that dialog
now when using the qt5 or qt6 VCL plugin and starting LO with
environment variable SAL_VCL_QT_USE_WELDED_WIDGETS=1 set.
One issue seen with the dialog is that by using the
up arrow of the spinbox to increase the value, it
is currently possible to increase the value
beyond the maximum value (last page number),
while this is not the case when typing a number
into the box manually.
This is because the GotoPageDlg::PageModifiedHdl
handler currently only gets called for the
latter case, not the former one, despite
Change-Id: Ie19bc852f4ceed0fa79565302975376db7126ea4
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Wed Nov 27 22:53:55 2024 +0100
tdf#130857 qt weld: Also notify about programmatic text changes
and will be addressed in a separate commit.
Change-Id: I1f24cf3925e945ae78a9f1646535e08736cd8786
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177450
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
As weld::SpinButton derives from weld::Entry,
also let QtInstanceSpinButton derive from
QtInstanceEntry, instead of duplicating code
by reimplementing all of the weld::Entry methods
anew.
As the QtDoubleSpinBox derived from QDoubleSpinBox
itself is not a subclass of QLineEdit, it cannot
itself be passed down as the widget to the
QtInstanceEntry ctor.
Pass the spin box's QLineEdit instead. Make it
available by adding a new QtDoubleSpinBox::lineEdit
method which overrides the base class method of the same
name that is protected.
With this in place, QtInstanceSpinButton is now
the only QtInstanceWidget subclass where the
widget passed down to QtInstanceWidget is not
the same as passed by QtInstanceBuilder in
the QtInstanceSpinButton ctor, i.e.
QtInstanceWidget::getQWidget does not return
the QtDoubleSpinBox, but it's line edit.
Therefore, make QtInstanceWidget::getQWidget
virtual and override it in QtInstanceSpinButton
to return the spin box.
Drop the QtInstanceSpinButton methods of all
methods already implemented in QtInstanceEntry.
Change-Id: Ide2e1fe91216a5ec7f90a4f72ae34e3f63f624d3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177449
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Implement special handling for cursor position value
of -1 according to the comment above weld::Entry::set_position
in include/vcl/weld.hxx:
// nCursorPos can be -1 to set to the end
Change-Id: I078d2123f391cf1fcab6f40d26309e2a2eb2315f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177448
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Connect to the QLineEdit::textChanged [1] signal instead
of QLineEdit::textEdited [2].
As the doc of the latter says:
> Unlike textChanged(), this signal is not emitted when the text is
> changed programmatically, for example, by calling setText().
Programmatic changes are of interest, however, e.g.
GotoPageDlg::GotoPageDlg connects to the changed signal
of the weld::SpinButton and expects to be notified
when the text is changed by using the spin button
buttons to change the value (and thus the text).
[1] https://doc.qt.io/qt-6/qlineedit.html#textChanged
[2] https://doc.qt.io/qt-6/qlineedit.html#textEdited
Change-Id: Ie19bc852f4ceed0fa79565302975376db7126ea4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177447
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
This fixes my 24.8 regression 6dd6891a3d
related tdf#126533 tdf#159824 VML: don't export: negative angles
So far I really haven't touched radial gradient code,
but the above patch swapped the colors around for linear/axials,
and (while the import for radials is probably wrong)
that also changed round-tripped radials - swapping colors each time.
Note that on the unit test, the initial focus is 100,
so on the first import the colors are NOT swapped.
But since we don't write a focus, re-imports will start swapping.
See FillModel::pushToPropMap in oox/source/vml/vmlformatting.cxx
make CppunitTest_sw_ooxmlexport21 \
CPPUNIT_TEST_NAME=testTdf126533_pageGradient
Change-Id: I469fe7fba520e338df90e2eb0d8bdf96709d2ecc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177452
Tested-by: Jenkins
Reviewed-by: Justin Luth <jluth@mail.com>
Implement QtInstanceSpinButton methods related to
the text cursor and selection.
The QDoubleSpinBox base class QAbstractSpinBox
has a method QAbstractSpinBox::lineEdit [1]
that provides access to the spin box's QLineEdit.
However, that method is protected, and can therefore
not be accessed from QtInstanceBuilder.
Therefore, add corresponding methods to
QtDoubleSpinBox and forward calls to the line edit
from there.
The methods implemented in this commit are
very similar to the corresponding ones in
QtInstanceEntry (which however has has direct access to
the QLineEdit).
[1] https://doc.qt.io/qt-6/qabstractspinbox.html#lineEdit
Change-Id: Ib5d2b55478f88618ed58adc2353824c59015a039
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177436
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Introduce a new QtDoubleSpinBox subclass for the
stock QDoubleSpinBox and use it for the native Qt
weld::SpinButton implementation.
Initially, the new subclass doesn't add any
additional functionality, but that will be
added in future commits to provide functionality
needed to implement more of the QtInstanceSpinButton
methods.
Change-Id: Icebbf6485172b065d6a6d2c1c8ef87be9d3d244e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177435
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
This is the .ui file for the "Edit" -> "Go to page"
dialog in Writer.
This luckily also moves the "page_value" GtkAdjustment
to the top of the file, which (at least for now, in
order to support that dialog) avoids the need to
extend QtBuilder to implement handling of GtkAdjustments
that are referenced in the .ui file before they are
defined.
(If it's still needed in the future, extracting
some of the current logic from VclBuilder into
the BuilderBase or WidgetBuilder base classes for
reuse also by QtBuilder might be an idea.)
Change-Id: Ic03acc1d514d412cd609543754829a370a5678e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177434
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>