Age | Commit message (Collapse) | Author |
|
This change fixes issues causing Writer to clip paragraphs at the ascent
of the top line, and descent of the last line, of a paragraph. This
issue caused certain diacritics to render incompletely, or not at all.
Change-Id: I99a3a25335f8b1d798fc8a55ff42d5c78749fca4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168557
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
|
|
so we can drop the hierarchical search
these probably do nothing in the absence of the classic help. fpicker
case might benefit from moving some a11y translations out of help into
core.
Change-Id: I01b8d0c7cc1a1b3697d3332e330c6b4654e76af1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168507
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Add support for exporting more PDF annotation types and props.
Prefix member variables in PDFNote class, extract it out of
pdfwriter.hxx file into it's own header file.
Change-Id: I99fb4cbb0c68fcec6585c9c21d81daaef26344cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168418
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
In the same way that
Change-Id: I17ce71198ec37cb1735194818bae17d1a5654d89
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Mon May 27 13:35:52 2024 +0200
tdf#160971 qt a11y: Don't select combobox text on entry selection
together with
Change-Id: Ia2c77245049d708885cbd374c20ce1892259329b
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Mon May 27 13:29:39 2024 +0200
tdf#160971 vcl a11y: Make combobox text selection mode style-able
sets the style option to not select combobox text when switching
between entries in an editable combobox for the Qt-based VCL plugins,
do the same for the GTK-based VCL plugins, except for putting the
text cursor at the beginning of the entry text instead of the end,
as happens when using a native GtkComboBox (see tdf#160971 comment 11).
Since the GTK-based VCL plugins use native GTK widgets
in most places, the behavior for e.g. the "Font Name"
combobox in Writer's Formatting toolbar is already like that
without this change in place and is unaffected by this change
(even though LO's gtk3 VCL plugin is using a custom combobox
implementation, see vcl/uiconfig/ui/combobox.ui).
However, the new behavior applies for combobox form
controls, as can be seen e.g. with the sample doc
attachment 194376 from tdf#160971.
Change-Id: I5b17efaa167ab49d07f19b3649ff934cf0f34754
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168104
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
|
|
When selecting an entry of an editable combobox,
the whole text of the text entry currently gets
selected.
That matches the behavior observed with a sample
Windows Forms application.
However, both native GTK and Qt applications
behave differently and do not select the combobox
entry text (s. tdf#160971 comment 11 and the
referenced sample programs and screencasts).
The extra text (un)selection makes the Orca
screen reader on Linux announce an extra
"selection deleted" every time
another entry is selected using the up/down keys
e.g. in the font selection combobox in Writer's
Formatting toolbar when using the qt6 VCL plugin
and the combobox popup is not shown.
Introduce a new style setting to define the
text selection behavior when switching between
entries in a ComboBox and take that
into account in `ComboBox::ImplSelectHdl`.
The default behaviour remains unchanged.
Behavior for the Qt and GTK based VCL plugins
will be aligned more with the behavior of corresponding
native widgets in separate upcoming commits.
Change-Id: Ia2c77245049d708885cbd374c20ce1892259329b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168102
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Previously, Writer performed shaping for each span of text separately.
In certain situations, this caused incorrect glyph use, or incorrect
glyph positioning. This change updates Writer so it will also consider
neighboring text while performing shaping.
This change resolves the outstanding duplicates filed against tdf#61444.
As a side effect, this change also fixes tdf#134226.
In addition to the shaping fix, this change implements rendering for
individually-styled glyphs, which is required to fix tdf#71956. However,
this change does not implement diacritic selection, which is also
required for that issue.
Change-Id: Iab4774ffaab5ad6113778c54d02cb260a70c1010
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167699
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
Tested-by: Jenkins
|
|
Change-Id: I3d18ed505c2eea7305903f9a476c332db0148113
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167837
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
This should help to associate the right view-ids, with the right
windows, and help to catch any stray / lingering windows from closed
sessions - hopefully.
Change-Id: I197a3280d5d2aeddd356ee037c51e4887f43278b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167765
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
(cherry picked from commit 8d979fae0c435b820302c76fcfdc2642b4820360)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167684
Tested-by: Jenkins
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
|
|
VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D does the
scaling, taking into account the font scaling. Before commit
8557ea84c9336ba8061246f1f46ddb6e02f413a1, D2DWriteTextOutRenderer was
doing own scaling in addition, but it seems that it somehow didn't
affect the result much. The said commit removed the scalng from
D2DWriteTextOutRenderer. As tdf#160901 demonstrated, the scaling is
necessary in different code paths - and it turns out, that we need to
know, if the caller does its own scaling or not, to make a decision,
if the scaling should be fone in D2DWriteTextOutRenderer.
This hack passes this from VclProcessor2D to D2DWriteTextOutRenderer
through OutputDevice. Thanks to Miklos for the isea. I still don't
understand, why all this seemingly doesn't affect other renderers.
Change-Id: I001036f4574898b8e7606652525638df43c35240
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167786
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
|
|
Previously, Writer performed text layout for each span of text
separately. This caused incorrect kerning when the text style changed
mid-word, for example by highlighting or changing the color of a single
letter.
This change updates Writer so it will also consider neighboring text
while performing text layout.
Change-Id: I511096c009343f39cc1b9ba745909c5b8cbad86f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167016
Tested-by: Jenkins
Reviewed-by: Jonathan Clark <jonathan@libreoffice.org>
|
|
FlashWindow() can be used to bring user attention to application
in background. Right now in LO it has implementation only for
Windows. Here some new cases were added when flashing is used:
* dialog window did open
* document loaded
* LO started
Some redesign of previous solution is also performed: no manual
search for top window, let's reuse existing code.
Changed behavior for bringing LO window to foreground: it is made always and not depending on current value of NewDocumentHandling:ForceFocusAndToFront. It has no sense to tweak this behavior: if user clicks on document in file explorer, LO should came to foreground, no exceptions.
Change-Id: I22b5b4e2b170cd25632083a55b3e9f0358bcae03
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166615
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
|
|
Change-Id: I0e03e5a009500144abcf9b35ca2224b60837872d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167568
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
This removes one level of indirection.
`ComboBox::Impl` had originally been introduced in
commit ece8699f8f22f6bae137c601bc29b83b75dc3bf3
Author: Michael Stahl <mstahl@redhat.com>
Date: Fri Jul 10 12:05:48 2015 +0200
vcl: pImplify ComboBox
The boost::signal stuff is quite heavy (33 kloc), so try to hide it
from the header.
Change-Id: I87826ccfd2a151aff274ffa6b7159a988f751808
, but all of the boost usage in here has been replaced
since then.
Change-Id: Ia8fb5cb895800edae104857c7713fa65e509a3c2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167485
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
Change-Id: I5b6ee5bda0c5ff69d297f7f8e87d4c3f3d21791c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167470
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
|
|
FillStyle is directly updated to prevent deferred resize
when additional controls are created.
Change-Id: I48ed987971cf6c711af31d552e8d64fa9982a416
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165993
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
Similar to how the previous
Change-Id: I00e62016ced2fbb8796960671f5e58a3ceac4b29
Author: Michael Weghorn <m.weghorn@posteo.de>
Date: Mon May 6 14:44:36 2024 +0200
tdf#160806 tdf#160837 gtk3 a11y: Drop handling of some VclEventIds
dropped handling for `VclEventId::WindowGetFocus`
and `VclEventId::ObjectDying` in the gtk3 a11y bridge,
do the same for `VclEventId::ToolboxButtonStateChanged`.
And drop `VclEventId::ObjectDying` completely, as the
gtk3 a11y bridge was the only place processing it.
That event and the handling had been introduced in
commit 3b40f502341272e989ae5266a1f8a03f2736449b
Author: Ivo Hinkelmann <ihi@openoffice.org>
Date: Tue Feb 5 11:30:51 2008 +0000
INTEGRATION: CWS fwk83_SRC680 (1.7.186); FILE MERGED
2008/01/30 12:40:39 obr 1.7.186.2: fix for fedora tinderbox (64bit)
2008/01/15 23:49:28 obr 1.7.186.1: #i70872# create wrapper for toolbox items that change state
commit a1cbbd113da4ce3d5342d9ae5ff1c8d2137aa59c
Author: Ivo Hinkelmann <ihi@openoffice.org>
Date: Tue Feb 5 11:30:25 2008 +0000
INTEGRATION: CWS fwk83_SRC680 (1.51.160); FILE MERGED
2008/01/14 14:35:26 cd 1.51.160.1: #i70872# Added VCLEVENT_TOOLBOX_BUTTONCHANGED to notify accessibility implementation that an action happens to a toolbox button
commit 3f1afd178875babe7ab79d22ab260221665bfb3f
Author: Ivo Hinkelmann <ihi@openoffice.org>
Date: Tue Feb 5 11:29:57 2008 +0000
INTEGRATION: CWS fwk83_SRC680 (1.2.262); FILE MERGED
2008/01/14 14:35:26 cd 1.2.262.1: #i70872# Added VCLEVENT_TOOLBOX_BUTTONCHANGED to notify accessibility implementation that an action happens to a toolbox button
to ensure that an a11y object is created for toolbar
buttons whose state changes, so that the corresponding
a11y events are forwarded to the platform layer, see
the referenced OOo bug #i70872# [1] for more details.
This seems to be no longer necessary.
By now, at least the scenario of toggling the
bold/italics/underline status of text is
announced just fine by Orca 46.1-1 on Debian
testing with this change in place.
(FWIW, tdf#123864 and the corresponding commits are more
recent tickets/commits related to the topic.)
Like for the above-mentioned change,
dropping that handling addresses another case where the
work window/root pane's a11y object when walking up
the a11y hierarchy would be problematic, as it doesn't
take into account the GtkWidget hierarchy.
Sample backtrace of how the "problematic" a11y object
was created (frame 1 below is the one where the a11y object
with role root pane is created.)
1 atk_object_wrapper_new atkwrapper.cxx 983 0x7f620365672b
2 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0
3 atk_object_wrapper_new atkwrapper.cxx 1000 0x7f6203656952
4 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0
5 atk_object_wrapper_new atkwrapper.cxx 1000 0x7f6203656952
6 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0
7 atk_object_wrapper_new atkwrapper.cxx 1000 0x7f6203656952
8 atk_object_wrapper_ref atkwrapper.cxx 948 0x7f62036560a0
9 create_wrapper_for_child atkutil.cxx 359 0x7f620364c740
10 handle_toolbox_buttonchange atkutil.cxx 376 0x7f620364c1ef
11 WindowEventHandler atkutil.cxx 438 0x7f620364bd7f
12 Link<VclSimpleEvent&, void>::Call link.hxx 111 0x7f620dfd4ef8
13 VclEventListeners::Call vclevent.cxx 46 0x7f620dfd3f1a
14 Application::ImplCallEventListeners svapp.cxx 725 0x7f620df96b0d
15 vcl::Window::CallEventListeners event.cxx 225 0x7f620d59f6ee
16 ToolBox::SetItemState toolbox2.cxx 1197 0x7f620d6afd81
17 ToolBox::CheckItem toolbox.hxx 515 0x7f6214502c53
18 (anonymous namespace)::PopupMenuToolbarController::statusChanged popuptoolbarcontroller.cxx 180 0x7f621454205d
19 (anonymous namespace)::GenericPopupToolbarController::statusChanged popuptoolbarcontroller.cxx 373 0x7f6214540855
20 SfxDispatchController_Impl::addStatusListener unoctitm.cxx 797 0x7f6213090e95
21 SfxOfficeDispatch::addStatusListener unoctitm.cxx 279 0x7f6213090ade
22 svt::ToolboxController::bindListener toolboxcontroller.cxx 558 0x7f620fe9fbce
23 svt::ToolboxController::update toolboxcontroller.cxx 235 0x7f620fe9f207
24 framework::ToolBarManager::UpdateControllers toolbarmanager.cxx 726 0x7f62145b0f25
25 framework::ToolBarManager::AsyncUpdateControllersHdl toolbarmanager.cxx 2291 0x7f62145bdbfc
26 framework::ToolBarManager::LinkStubAsyncUpdateControllersHdl toolbarmanager.cxx 2278 0x7f62145aff9d
27 Link<Timer *, void>::Call link.hxx 111 0x7f620dfbc618
28 Timer::Invoke timer.cxx 75 0x7f620dfbc46c
29 Scheduler::CallbackTaskScheduling scheduler.cxx 509 0x7f620df5fa08
30 SalTimer::CallCallback saltimer.hxx 54 0x7f620368b566
31 sal_gtk_timeout_dispatch gtkdata.cxx 733 0x7f620368a573
32 ?? 0x7f62097110d9
33 ?? 0x7f6209714317
34 g_main_context_iteration 0x7f6209714930
35 GtkSalData::Yield gtkdata.cxx 405 0x7f62036888ef
36 GtkInstance::DoYield gtkinst.cxx 435 0x7f620368dd73
37 ImplYield svapp.cxx 378 0x7f620df94dfc
38 Application::Yield svapp.cxx 466 0x7f620df9470b
39 Application::Execute svapp.cxx 353 0x7f620df944a2
40 desktop::Desktop::Main app.cxx 1615 0x7f62171254fc
41 ImplSVMain svmain.cxx 229 0x7f620dfb760e
42 SVMain svmain.cxx 261 0x7f620dfb9659
43 soffice_main sofficemain.cxx 93 0x7f62171a7eb3
44 sal_main main.c 51 0x56162eceea5d
45 main main.c 49 0x56162eceea37
[1] https://bz.apache.org/ooo/show_bug.cgi?id=70872
Change-Id: I7409806071a00f32b201b08a831dc6941f072047
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167209
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
This adds support for the (weld)LinkButton (FixedHyperlink) as an
independent widget and not part of FixedText to jsdialog. In addition
add "click" event that triggers activate_link method.
Change-Id: Id110b4a0fd60fc24592e00235243783d46ae4575
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166898
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
The most exciting was to discover that this functionality was actually
already implemented prior to 2001, and then accidentally dropped, and
nobody noticed, until Noel did his great cleanups, and made an amazing
investigation in commit ed2ae3c3bb0a708cafc3de6a01adc9ddc43fb859 (remove
dead SwNoteURL, 2018-03-14). The detailed commit message made my task
so much easier: I knew where and what to restore.
So this change restores relevant pieces removed over the time in commits
* 1b666235f6b0b0f0b13f473bf3b639f4f5f0b12f (loplugin:singlevalfields
improve copy constructor check, 2018-01-03),
* be8c414567f49242164b1fdfb12764b16be355c1 (loplugin:unusedmethods also
check for functions returning bool, 2018-01-19),
* 73139fe600fc1399ae828077981a2498cb0a0b0c (loplugin:unusedmethods,
2018-01-20)
* bb7ade140df807b6a0f12766a1365b8f8d0fd342 (loplugin:unusedmethods,
2018-03-08),
* ed2ae3c3bb0a708cafc3de6a01adc9ddc43fb859 (remove dead SwNoteURL,
2018-03-14),
* fd1cfd25b48cb4bd5c87e9cb317b37699ca3a1d6 (PortionType::Url is unused,
2019-01-18).
It re-implements the functionality accidentally removed in commit
da7671e4f7482110ecd0cfbfd7dbd9e0b873c81c (Opt.(FME): The new attribute
handler makes a lot of code superfluous, 2001-03-15), moving it into
SwAttrHandler, which replaced the ChgFnt in SwTxtAttr.
It also fixes the code writing the HTML image map, to output valid HTML.
And finally, it adds a unit test, to avoid repeating the story :-)
Change-Id: I72ae3cf30f0e9689f50a2c877e1622e4ae46de49
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166924
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: Ibc850eb12c38f2985015f06e330585b02d6bf15f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166822
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins
|
|
Change-Id: Iad2d114d257244f456d5579636e5c25ce070a08a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166805
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I836c8f85474dc564efa3ca781f47a25e1d8c55fb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166582
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
|
|
Change-Id: I3edc7495975618357f002536857a11dcc72cc0b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166460
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: I17471a9c70a38d05de5ad476f817285fb2438e5a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166429
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: I56862163b7bf1177120081c95ab7851a5fc4019b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166428
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: I03230e122a10dd6ada6af357c674c278b6b99d9e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166427
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
In my initial approach, I tranformed the primitive2DContainers
before converting them to BitmapEx. This caused circles like
https://bugs.documentfoundation.org/attachment.cgi?id=193790
not to be displayed.
Simplify how BitmapExs are created by just using the range both
primitive2DContainers have in common. This way, DrawBitmapInRect
can be dropped now
Change-Id: I2401dc87b98e04b9cf9f5ebade2b5622d884fc3a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166391
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
And introduce GetTextWidth / GetTextHeight variants returning double.
It allows to avoid premature rounding.
At least in one case - testTdf145111_anchor_in_Fontwork - it allowed
to make the test DPI-independent (at least in my testing on Windows,
using 125, 150, and 175% UI scaling).
Change-Id: I973d2c729ec6bb7114b4f99b9027f1ead7c1d061
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166237
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
This avoids premature rounding in TextLayouterDevice::getTextBoundRect.
The box in D2DWriteTextOutRenderer::performRender needs to be expanded
to allow room for the line width (which now will be guaranteed on all
sides; previously, the rounding could happen to give no room on some
side, even prior to commit 8962141a12c966b2d891829925e6203bf8d51852).
Fixes some lines partially cut off in smaller text (or zoomed out).
Change-Id: I07335136021f894cf045363b4d736bfab06c64d4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166236
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I7447e649dc3ef4e51242f69c7486a3e84e103d2e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166159
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Took https://github.com/w3c/csswg-drafts/issues/3831
as a reference
Change-Id: I42039c481ec114c3faeae51526a5f29b86960146
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165828
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: Iefe655a370cca930319290baa2a25d791371f55c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165958
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Re-arrange the calling convention to make it obvious that
a valid stream is the same as a good (true) result.
Change-Id: I974b023a8e7231e70ab649628fdbe43c33001e5b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165874
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
It is really just an SvStream instance, and the lifetime does
not need reference counting
Change-Id: Idb5ffd96f852aae0dc1a94cddc0a83fbcdf974ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165655
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
And introduce methods in TransferableDataHelper to handle that.
Change-Id: I1d91f0f6b7e8523125f9cc1507dbd6737968f7d5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165607
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
using == to compare them doesnt work, because we return
a new one with every call to getTopFocusWindow and similar.
So add a equals() method to the UNO interface to do the comparison.
Change-Id: Ie909fe9b4e84fe07f4ca87bbebf65b56d3da8f78
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165436
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This fixes the JSDialog layout of the sheet protection dialog.
This was introduced for 24.02 to provide password strength indication
of the sheet password.
Defined a new WindowType of PROGRESSBAR.
The type property in JSDialog JSON will be "progressbar".
Change-Id: I202528a81706943e1838f3c37fb555f4a1bf889e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165236
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
As discussed on https://gerrit.libreoffice.org/c/core/+/164843/2#message-8873d3d119de7206b33bc824f5809b8b1d3d97da,
it is impossible at times to know in advance, if a specific code, that
must not be guarded by SolarMutex (e.g., calling to other threads, which
might need to grab the mutex), will itself be guarded by SolarMutex.
Before this change, a required pre-requisite for SolarMutexReleaser use
was existing lock of SolarMutex; otherwise, an attempt to release it
would call abort(). Thus, in some places we had to grab the mutex prior
to releasing it, and that itself introduced more potential for deadlock.
Now the SolarMutexReleaser is safe to use without the lock, in which
case, it will do nothing.
Change-Id: I8759c2f6ed448598b3be4d6c5109804b5e7523ed
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165262
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
* hard-coded colors from infobar moved to settings
* weld::LabelType::Warning and ::Error uses these colors
* gtk3 native configuration removed
Change-Id: Ia80584e9267b8385f7f6b25322f5a85a2570af68
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165161
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
|
|
Makes no sense (and would case serious problems) to set the size
(pixel) from the outside of the BitmapEx.
Change-Id: Iab597f755d45be2380884ec6685d119fcc8b1e98
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164946
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Starting with commit bfa21ce5fa08f2c634ccb6162914be55aef9f3c2,
horizontal swiping in Calc moved in the wrong direction scrollbars
were drawn mirrored.
So, revert parts of commit bfa21ce5fa08f2c634ccb6162914be55aef9f3c2
so that we are using Calc's previous "negative scrollbar range"
implementation for RTL UIs, but only for horizontal scrollbars since
vertical scrollbars are the same in LTR and RTL UIs.
Also, always disable RTL for scrollbars. Enabling RTL causes the
following bugs when clicking or dragging the mouse in scrollbars in
Calc's RTL UI:
- Click or drag events get mirrored so you must click or drag in
unexpected locations to move the scrollbar thumb in the desired
direction
- Repeatedly dragging the scrollbar thumb leftward can only move
no highter than the R, S, or T columns
Note: even though RTL is always disabled for Calc scrollbars, the arrows
must still be swapped in vcl's ScrollBar class.
Change-Id: I85aac94ffaf7df2eeb251a3ff150cc0363b5d770
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164959
Reviewed-by: Stéphane Guillou <stephane.guillou@libreoffice.org>
Tested-by: Jenkins
Reviewed-by: Patrick Luby <guibomacdev@gmail.com>
|
|
Change-Id: I991b6e908d4139723c2d408d4ba3586676fded18
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164693
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Ibe6154dc5de6251fb39952caa190d53a6fd1fd89
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164926
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ia56bb092a4634e301ff8922ae63e6f7ede874d80
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164865
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This fixes my GCC 13.2.0 --enable-gtk4 build on Debian
testing, which started failing after
commit acd40306b3737d50cf24462b2d3e451092543e64
Date: Thu Mar 14 12:22:13 2024 +0200
reduce symbol visibility in vcl
like this:
/home/michi/development/git/libreoffice-WORKTREE/vcl/unx/gtk4/../gtk3/salnativewidgets-gtk.cxx:2195: error: undefined reference to 'vcl::bitmap::get_unpremultiply_table()'
collect2: error: ld returned 1 exit status
make[1]: *** [/home/michi/development/git/libreoffice-WORKTREE/vcl/Library_vclplug_gtk4.mk:20: /home/michi/development/git/libreoffice-WORKTREE/instdir/program/libvclplug_gtk4lo.so] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:290: build] Error 2
Change-Id: I0921801f6ad0f20f5250ca15a2749d7da044fcd8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164856
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
|
|
[LNK] Library/libupdatecheckuilo.so
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:96: error: undefined reference to 'MenuBarUpdateIconManager::MenuBarUpdateIconManager()'
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:105: error: undefined reference to 'MenuBarUpdateIconManager::SetBubbleImage(Image const&)'
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:107: error: undefined reference to 'MenuBarUpdateIconManager::~MenuBarUpdateIconManager()'
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:166: error: undefined reference to 'MenuBarUpdateIconManager::RemoveBubbleWindow()'
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:187: error: undefined reference to 'MenuBarUpdateIconManager::SetBubbleTitle(rtl::OUString const&)'
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:191: error: undefined reference to 'MenuBarUpdateIconManager::SetBubbleText(rtl::OUString const&)'
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:197: error: undefined reference to 'MenuBarUpdateIconManager::SetBubbleImage(Image const&)'
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:203: error: undefined reference to 'MenuBarUpdateIconManager::SetShowBubble(bool)'
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:215: error: undefined reference to 'MenuBarUpdateIconManager::SetShowMenuIcon(bool)'
/home/mk/core/extensions/source/update/ui/updatecheckui.cxx:55: error: undefined reference to 'MenuBarUpdateIconManager::~MenuBarUpdateIconManager()'
collect2: error: ld returned 1 exit status
Change-Id: I7175126d82731c3dd2cdba64646006f4be664450
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164855
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: Ifaa37246e79678aa0c548b9ca8a9faf8036b9195
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164804
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
it is always SAL_DLLPRIVATE, and we are already using SAL_DLLPRIVATE
mostly, so just be consistent
Change-Id: I7df969506a9b7a078921400cf245cede3c60c5f0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164805
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
In a following scenario, there could be a crash:
1. Platform: a Windows system with MS Word installed.
2. LibreOffice is run in a listener mode;
3. A Java program opens a Writer document in a visible mode, with an
embedded Word OLE object;
4. It adds some text; then resizes the OLE object; then removes the
OLE object.
Word OLE objects have OLEMISC_RECOMPOSEONRESIZE flag [1]; this means,
that every re-layout of the document with this object must ask the
OLE server to re-layout the object content. So, the request thread
changes the document text, which triggers idle re-layout or redraw;
the idles start executing immediately in the idle main thread, with
solar mutex locked; then the request thread starts the OLE object
removal operation. The ongoing relayout in main thread would at some
stage need to execute a call to the OLE object, which temporarily
releases the solar mutex (this makes impossible using solar mutex to
synchronize the order of operations in this scenario). Other mutexes
guarding OLE object (in OleEmbeddedObject, and in OleComponent) are
also released for the duration of the call. Thus, the removal that
happens in the request thread proceeds, and the node containing the
OLE object is destroyed, while the main thread (processing exactly
this node) is waiting for the OLE server response, then for mutexes,
to proceed. After that, the main thread would attempt to access the
destroyed node object.
This change introduces a scheduler guard (a RAII object), that sets
a flag to not process idle events during the lifetime of the guard.
In its constructor, it also makes sure, that current pending idle
events are finished. This would make sure that guarded code started
from other threads would not race with idles potentially accessing
the model that is currently in transient state.
[1] https://learn.microsoft.com/en-us/windows/win32/api/oleidl/ne-oleidl-olemisc
Change-Id: I2ef0601ccd8b5872588a88493d1f43e39022dbed
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164753
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: If811c9ec336543227db73c990248b9113846cf2f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164657
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Revert "Implement hyperlinkInfoAtPosition for Impress."
This reverts commit 876543305c78cb596720da087454a5c54e5feb06.
Revert "Readonly Hyperlink Info - normalize the clicked coordinates."
This reverts commit 322669725b771f5fa2b3c10c5fb73238ca3713f6.
Revert "Implement hyperlinkInfoAtPosition function for Calc."
This reverts commit be01dd78c47b51b19603a6259504e29b11979b0b.
Revert "Implement hyperlinkInfoAtPosition for Writer."
This reverts commit 6773c8929690f557d29bc282dd8f5c4381da3484.
Revert "In readonly mode, we restrict many events like click."
This reverts commit a4f3b97e506f38e0c43d6fbf1192cc523750a9fd.
(cherry picked from commit c3f1d63178d6aaa0888085c7b641eb6d49a18276)
Conflicts:
sc/source/ui/unoobj/docuno.cxx
sd/source/ui/unoidl/unomodel.cxx
sw/source/uibase/uno/unotxdoc.cxx
Change-Id: Ie821a4bca6e6b4649cea17748c44af105cd45d30
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164481
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|