Age | Commit message (Collapse) | Author | Files | Lines |
|
which is very similar sounding to
https://gitlab.freedesktop.org/cairo/cairo/-/issues/390
seems to be a bad interaction of slight hinting and sub pixel positioning
with hints_metrics disabled with CAIRO_HINT_METRICS_OFF.
lets continue to assume we desire CAIRO_HINT_METRICS_OFF most and
disable hinting rather than use slight
Change-Id: Id7b35d0e4f9291987e8ab96814936700374c6e16
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137431
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I36669d953eb9438df73256676e2dfbfe3c263031
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137100
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
(cherry picked from commit db26f712e1edfef6b61a324b146310be00aeb100)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137174
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
Regression from commit 78e25558e86188314b9b72048b8ddca18697cb86
(tdf#106059 PDF export: create a reference XObject for JPG images with
PDF data, 2017-02-23), once a PDF image was inserted to a document, an
encrypted PDF export lost those images.
The reason for this is that we started to preserve PDF images as vector
data with the above commit, but this means we copied over PDF objects
from PDF images to the export result as-is, so encryption was not
performed for them.
Fix this by separating the write of the PDF object headers, stream
content and object footer and then calling
checkAndEnableStreamEncryption() / disableStreamEncryption() for each
object, even if it's not something our PDF export created but comes from
a PDF image.
Note that when existing PDF files are signed, PDF objects are also
copied into a vcl::filter::PDFDocument, but such PDF images are never
encrypted, so it's fine to have stub implementations in
vcl::filter::PDFDocument.
(cherry picked from commit 7d56dae3375dc0180aa6d20983b3f5f962302588)
Change-Id: I2f74b9f51cd35b4319221532ca890e197bab9cf3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137260
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I3a17d7967512a282b13894ba479aa3507f1be38f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137068
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
ATK (and AT-SPI) allows to specify 3 different coordinate
types [1]:
1) `ATK_XY_SCREEN`: coordinates relative to the screen.
2) `ATK_XY_WINDOW`: coordinates relative to the widget's
top-level window.
3) `ATK_XY_PARENT` coordinates relative to the widget's
immediate parent.
The `XAccessibleComponent` interface provides equivalents
for 1) and 3), but not 2), and the gtk3 VCL plugin wasn't
really handling 2) so far either.
This adds handling for `ATK_XY_WINDOW`. The position
in the window is calculated by recursively walking up the a11y
hierarchy and summing up the positions relative to the
parent, until a window is reached (or there's no parent,
or none implementing `AtkComponent`).
Also add an explicit check for `ATK_XY_PARENT` if
none of the other two constants is used and warn
and return if that isn't used either, to cover the case
that new constants will be introduced in newer ATK versions.
(That check needs to be conditional, because `ATK_XY_PARENT`
is only defined from ATK 2.30 on, while our minimum
required version is currently 2.28.1.)
The coordinates received when testing this with a
selected Writer paragraph in Accerciser's IPython console
look generally plausible now with this change in place:
In [108]: acc.queryComponent().getPosition(pyatspi.component.XY_SCREEN)
Out[109]: (1939, 417)
In [109]: acc.queryComponent().getPosition(pyatspi.component.XY_WINDOW)
Out[110]: (19, 245)
In [110]: acc.queryComponent().getPosition(pyatspi.component.XY_PARENT)
Out[111]: (19, 113)
In [111]: acc.queryText().getCharacterExtents(0, pyatspi.component.XY_SCREEN)
Out[112]: (2015, 417, 5, 19)
In [112]: acc.queryText().getCharacterExtents(0, pyatspi.component.XY_WINDOW)
Out[113]: (95, 245, 5, 19)
In [113]: acc.queryText().getCharacterExtents(0, pyatspi.component.XY_PARENT)
Out[114]: (76, 0, 5, 19)
(Previously, requesting window-relative coordinates gave the
same result as coordinates relative to direct parent.)
[1] https://docs.gtk.org/atk/enum.CoordType.html
Change-Id: Idf8f7d08f9054a8df28d1ee8fccc791a803de045
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137027
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
(cherry picked from commit 4ac4e8aacefcdc106a450895ab751f0544e76377)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137060
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Calculate the position at which to open the popup
menu from the passed window and rectangle, rather
than always opening the native popup menu at the
cursor position.
The commit message in
commit 1e0b16f8695498e4eea7c2208aabf7e7664ce749
Date: Wed Feb 12 08:07:42 2020 +0100
tdf#128921 tdf#130341 tdf#122053 qt5: Native PopupMenus
which had implemented native poup menus, already said:
> For now, this always shows the popup menu at cursor position, which
> can be changed by taking the Rectangle passed to
> 'Qt5Menu::ShowNativePopupMenu' into account if there should be any
> need.
Change-Id: If1a44b6d53f3dcd6fa7ceec0738219f11cfc22c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136356
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
(cherry picked from commit ee3976f2c613f9015477ab327996c074e8516f9d)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136707
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Actual use of the code was already disabled since 2014 with
b8bee05dbf85bc4f5834520aa5d64e9ae18aba4e - but the link flags were not
conditionalized.
Change-Id: Ia1dd299cb78274850eb6a7b10259991bb4970ab9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136614
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
(cherry picked from commit 788dcbef1bae7dbe600f8f193944cd9b31aa27d5)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136634
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
|
|
snap bounding box to full pixels
Change-Id: Iecd973e99cec49ee129bad422ae00f558f057abd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136546
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
above tracked heading
For gtk3, treeview scroll_to_row to a visible collapsed row makes
the row expanded. The sal version does not. To make the behavior
consistent, the patch removes the call to
gtk_tree_view_expand_to_path which causes a visible collapsed row to
expand.
Change-Id: I29e67535ab23aa1952b4ff97c1b81276794b8036
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136436
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj@gmail.com>
(cherry picked from commit 8e8e0aefc998adba749a93cacc4660d859fba675)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136462
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
See frame #5 and frame #45 where
both the same DNDEventDispatcher object and both functions lock m_aMutex which is a std::mutex since
commit 8de81db4e3fca488d50db2d74734109b31541a6f
Date: Mon Aug 2 09:21:17 2021 +0200
osl::Mutex->std::mutex in DNDEventDispatcher
#0 0x00007ff094530c40 in __lll_lock_wait () at /lib64/libc.so.6
#1 0x00007ff0945371d2 in pthread_mutex_lock@@GLIBC_2.2.5 () at /lib64/libc.so.6
#2 0x00007ff08b901663 in __gthread_mutex_lock(pthread_mutex_t*) (__mutex=0x1a32c60)
at /usr/bin/../lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/x86_64-redhat-linux/bits/gthr-default.h:749
#3 0x00007ff08b9024d5 in std::mutex::lock() (this=0x1a32c60) at /usr/bin/../lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/bits/std_mutex.h:100
#4 0x00007ff08b9018f3 in std::scoped_lock<std::mutex>::scoped_lock(std::mutex&) (this=0x7ffdd0d79240, __m=...)
at /usr/bin/../lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/mutex:731
#5 0x00007ff08b9006a8 in DNDEventDispatcher::dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&) (this=0x1a32c10, dtde=...)
at vcl/source/window/dndeventdispatcher.cxx:156
#6 0x00007ff075f47658 in GtkInstDropTarget::fire_dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&) (this=0x199eb40, dtde=...)
at vcl/unx/gtk3/gtkinst.cxx:1710
#7 0x00007ff0760a7010 in GtkInstDropTarget::signalDragMotion(_GtkWidget*, _GdkDragContext*, int, int, unsigned int)
(this=0x199eb40, pWidget=0x1c67e40, context=0x1957450, x=89, y=175, time=0) at vcl/unx/gtk3/gtkframe.cxx:5026
#8 0x00007ff07609bb77 in GtkSalFrame::signalDragMotion(_GtkWidget*, _GdkDragContext*, int, int, unsigned int, void*)
(pWidget=0x1c67e40, context=0x1957450, x=89, y=175, time=0, frame=0x19b7d70) at vcl/unx/gtk3/gtkframe.cxx:4922
#9 0x00007ff075649527 in _gtk_marshal_BOOLEAN__OBJECT_INT_INT_UINTv () at /lib64/libgtk-3.so.0
#10 0x00007ff0865dcd5b in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#11 0x00007ff0865ddeb8 in g_signal_emit_by_name () at /lib64/libgobject-2.0.so.0
#12 0x00007ff07595b491 in gtk_drag_dest_motion.lto_priv () at /lib64/libgtk-3.so.0
#13 0x00007ff0757b8f7d in gtk_main_do_event () at /lib64/libgtk-3.so.0
#14 0x00007ff0754e5463 in _gdk_event_emit () at /lib64/libgdk-3.so.0
#15 0x00007ff075518056 in gdk_event_source_dispatch () at /lib64/libgdk-3.so.0
#16 0x00007ff0864c3faf in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#17 0x00007ff0865192c8 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
#18 0x00007ff0864c1940 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#19 0x00007ff075f3e60f in GtkSalData::Yield(bool, bool) (this=0x952930, bWait=false, bHandleAllCurrentEvents=false) at vcl/unx/gtk3/gtkdata.cxx:405
#20 0x00007ff075f43e43 in GtkInstance::DoYield(bool, bool) (this=0x9527e0, bWait=false, bHandleAllCurrentEvents=false) at vcl/unx/gtk3/gtkinst.cxx:428
#21 0x00007ff08c2dc5df in ImplYield(bool, bool) (i_bWait=false, i_bAllEvents=false) at vcl/source/app/svapp.cxx:474
#22 0x00007ff08c2dc24d in Application::Reschedule(bool) (i_bAllEvents=false) at vcl/source/app/svapp.cxx:493
#23 0x00007ff091eeeb55 in SbiRuntime::Step() (this=0xa21eb20) at basic/source/runtime/runtime.cxx:801
#24 0x00007ff091e0e659 in (anonymous namespace)::RunInitGuard::run() (this=0x76a6290) at basic/source/classes/sbxmod.cxx:1015
#25 0x00007ff091e0d135 in SbModule::Run(SbMethod*) (this=0xa0ada00, pMeth=0xa16d7e0) at basic/source/classes/sbxmod.cxx:1176
#26 0x00007ff091e0c503 in SbModule::Notify(SfxBroadcaster&, SfxHint const&) (this=0xa0ada00, rBC=..., rHint=...) at basic/source/classes/sbxmod.cxx:775
#27 0x00007ff090b3ee6e in SfxBroadcaster::Broadcast(SfxHint const&) (this=0xa231de0, rHint=...) at svl/source/notify/SfxBroadcaster.cxx:39
#28 0x00007ff091e1372e in SbMethod::Broadcast(SfxHintId) (this=0xa231ca0, nHintId=SfxHintId::BasicDataWanted) at basic/source/classes/sbxmod.cxx:2113
#29 0x00007ff091f6ddfa in SbxObject::Call(rtl::OUString const&, SbxArray*) (this=0xa258670, rName="DTL_dragOver", pParam=0xa1e47d0)
at basic/source/sbx/sbxobj.cxx:274
#30 0x00007ff091d9dd76 in StarBASIC::Call(rtl::OUString const&, SbxArray*) (this=0xa258670, rName="DTL_dragOver", pParam=0xa1e47d0)
at basic/source/classes/sb.cxx:1324
#31 0x00007ff091dd7127 in (anonymous namespace)::BasicAllListener_Impl::firing_impl(com::sun::star::script::AllEventObject const&, com::sun::star::uno::Any*)
(this=0xa2344a0, Event=..., pRet=0x0) at basic/source/classes/sbunoobj.cxx:3831
#32 0x00007ff091dd6ba1 in (anonymous namespace)::BasicAllListener_Impl::firing(com::sun::star::script::AllEventObject const&) (this=0xa2344a0, Event=...)
at basic/source/classes/sbunoobj.cxx:3855
#33 0x00007ff091dd792f in (anonymous namespace)::InvocationToAllListenerMapper::invoke(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Sequence<short>&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&)
(this=0xa110b70, FunctionName="dragOver", Params=uno::Sequence of length 1 = {...}) at basic/source/classes/sbunoobj.cxx:3983
#34 0x00007ff091dd7be7 in non-virtual thunk to (anonymous namespace)::InvocationToAllListenerMapper::invoke(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::uno::Any> const&, com::sun::star::uno::Sequence<short>&, com::sun::star::uno::Sequence<com::sun::star::uno::Any>&) ()
at /home/caolan/LibreOffice/core/instdir/program/libsblo.so
#35 0x00007ff072d19921 in gcc3::callVirtualMethod(void*, unsigned int, void*, _typelib_TypeDescriptionReference*, bool, unsigned long*, unsigned int, unsigned long*, double*)
(pThis=0xa110b98, nVtableIndex=4, pRegisterReturn=0x7ffdd0d7b5c0, pReturnTypeRef=0xa875c0, bSimpleReturn=false, pStack=0x7ffdd0d7b5e0, nStack=0, pGPR=0x7ffdd0d7b900, pFPR=0x7ffdd0d7b8c0) at bridges/source/cpp_uno/gcc3_linux_x86-64/callvirtualmethod.cxx:77
#36 0x00007ff072d184fc in cpp_call(bridges::cpp_uno::shared::UnoInterfaceProxy*, bridges::cpp_uno::shared::VtableSlot, _typelib_TypeDescriptionReference*, int, _typelib_MethodParameter*, void*, void**, _uno_Any**)
(pThis=0xa238bb0, aVtableSlot=..., pReturnTypeRef=0xa875c0, nParams=4, pParams=0x2470e40, pUnoReturn=0x7ffdd0d7bb80, pUnoArgs=0x7ffdd0d7bbb0, ppUnoExc=0x7ffdd0d7bb60) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:233
#37 0x00007ff072d17c58 in unoInterfaceProxyDispatch(uno_Interface*, typelib_TypeDescription const*, void*, void**, uno_Any**)
(pUnoI=0xa238bb0, pMemberDescr=0x24c98c0, pReturn=0x7ffdd0d7bb80, pArgs=0x7ffdd0d7bbb0, ppException=0x7ffdd0d7bb60)
at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:413
#38 0x00007ff0472645ca in stoc_invadp::(anonymous namespace)::AdapterImpl::invoke(_typelib_TypeDescription const*, void*, void**, _uno_Any**)
(this=0xa112060, pMemberType=0xa11be80, pReturn=0x7ffdd0d7c4f0, pArgs=0x7ffdd0d7bca0, ppException=0x7ffdd0d7bde0)
at stoc/source/invocation_adapterfactory/iafactory.cxx:457
#39 0x00007ff04726379d in stoc_invadp::adapter_dispatch(_uno_Interface*, _typelib_TypeDescription const*, void*, void**, _uno_Any**)
(pUnoI=0xa118a50, pMemberType=0xa11be80, pReturn=0x7ffdd0d7c4f0, pArgs=0x7ffdd0d7bca0, ppException=0x7ffdd0d7bde0)
at stoc/source/invocation_adapterfactory/iafactory.cxx:605
#40 0x00007ff072d04e95 in cpp2uno_call(bridges::cpp_uno::shared::CppInterfaceProxy*, _typelib_TypeDescription const*, _typelib_TypeDescriptionReference*, int, _typelib_MethodParameter*, void**, void**, void**, unsigned long*)
(pThis=0xa11b350, pMemberTypeDescr=0xa11be80, pReturnTypeRef=0x939280, nParams=1, pParams=0xa112460, gpreg=0x7ffdd0d7c520, fpreg=0x7ffdd0d7c540, ovrflw=0x7ffdd0d7c590, pRegisterReturn=0x7ffdd0d7c4f0) at bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx:191
#41 0x00007ff072d04611 in cpp_vtable_call(sal_Int32, sal_Int32, void**, void**, void**, sal_uInt64*)
(nFunctionIndex=7, nVtableOffset=0, gpreg=0x7ffdd0d7c510, fpreg=0x7ffdd0d7c540, ovrflw=0x7ffdd0d7c590, pRegisterReturn=0x7ffdd0d7c4f0)
at bridges/source/cpp_uno/gcc3_linux_x86-64/cpp2uno.cxx:389
#42 0x00007ff072d29836 in privateSnippetExecutor () at /home/caolan/LibreOffice/core/instdir/program/libgcc3_uno.so
#43 0x00007ff08b903787 in DNDListenerContainer::fireDragOverEvent(com::sun::star::uno::Reference<com::sun::star::datatransfer::dnd::XDropTargetDragContext> const&, signed char, int, int, signed char)
(this=0x5a444c0, context=uno::Reference to ((anonymous namespace)::GtkDropTargetDragContext *) 0xa1dda68, dropAction=1 '\001', locationX=89, locationY=33, sourceActions=3 '\003') at vcl/source/window/dndlistenercontainer.cxx:224
#44 0x00007ff08b900b7d in DNDEventDispatcher::fireDragOverEvent(vcl::Window*, com::sun::star::uno::Reference<com::sun::star::datatransfer::dnd::XDropTargetDragContext> const&, signed char, Point const&, signed char)
(pWindow=0x5a27060, xContext=uno::Reference to ((anonymous namespace)::GtkDropTargetDragContext *) 0xa1dda68, nDropAction=1 '\001', rLocation=Point = {...}, nSourceActions=3 '\003') at vcl/source/window/dndeventdispatcher.cxx:297
#45 0x00007ff08b9007f5 in DNDEventDispatcher::dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&) (this=0x1a32c10, dtde=...)
at vcl/source/window/dndeventdispatcher.cxx:178
#46 0x00007ff075f47658 in GtkInstDropTarget::fire_dragOver(com::sun::star::datatransfer::dnd::DropTargetDragEvent const&) (this=0x199eb40, dtde=...)
at vcl/unx/gtk3/gtkinst.cxx:1710
Change-Id: I06f24ac50d6d029803d46974162e1afec898d866
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136390
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
When opening macro run dlg, the last selected entry is displayed again.
When no entry was found, a crash occured in some situations
(GetLastEntryDescriptor() returned garbage).
Initialize m_aLastEntryDesc properly, and make sure the method returns
when no last selected macro was found.
Also fix some nullptr crashes which occurred during UITests
Change-Id: I7bd1a0b8824725f9935876ae26d8222410a3bc25
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136140
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
(cherry picked from commit 499ecbf3a36990c29dc7e1fb9b0ecb1d297c2848)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136170
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
==2899330== Use of uninitialised value of size 8
==2899330== at 0xCABB82A: (anonymous namespace)::appendHex(signed char, rtl::OStringBuffer&) (pdfwriter_impl.cxx:120)
==2899330== by 0xCAEB14C: vcl::PDFWriterImpl::emitTrailer() (pdfwriter_impl.cxx:5466)
==2899330== by 0xCAEDA09: vcl::PDFWriterImpl::emit() (pdfwriter_impl.cxx:5773)
==2899330== by 0xCA9F10C: vcl::PDFWriter::Emit() (pdfwriter.cxx:53)
==2899330== by 0x3D5FE329: PDFExport::Export(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) (pdfexport.cxx:1012)
an issue since...
commit be39eba9a3d81e20c42f1073a365e91ce855c1cd
Date: Mon Jun 6 00:17:02 2022 +0200
Use same glyph width in PDF drawing and font subset
Change-Id: I72dbcf2bb7934c9f911c7c5c3035d3d166e9521a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136164
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
I get valgrind reports when I start LO with kf5 backend and
a maximized window, since in that case position and size are not
set (since the maximized state makes them irrelevant). The semantics
here seem to conflict, the caller of GetWindowState() sets flags
to say what data it wants, and SalFrame::GetWindowState() sets flags
to say what data it provides, but as can be seen here those aren't
necessarily the same. So actually use only those flags that are
in both sets.
Change-Id: I4559baab90d6f465382560549d52431b28119b3f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135563
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
(cherry picked from commit b7b06f28d5728c2c33c073df35ac0c3bcc51e583)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135709
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Because it's used only for LOK, and SvpSalVirtualDevice::CreateSurface()
otherwise wouldn't know whether to apply LOK DPI settings or not
(since this might be called for LOK tiled painting, when it should,
or it might be called from somewhere else while LOK is active, in which
case this should be handled normally). Getting that mismatched can cause
things like https://github.com/CollaboraOnline/online/issues/4834 .
Change-Id: I1df7b8a169c8ef2e799731a6695a032948536582
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135588
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
(cherry picked from commit 91b98efc2a5cf41d9442f90d7cb37075721519e0)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135710
|
|
The code passes adjusted position for pixel data in order to create
a sub-rect of the pixmap without copying, but at least on Intel Mac
the GC* functions then try to read the entire pixel row even though
it shouldn't be necessary. Since that may cause reading past the
pixmap data if the last line is involved, use entire pixmap width
to avoid that.
Change-Id: Ia08059b363d39dd465b2cadde5138ee045628f59
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136003
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
(cherry picked from commit fca6d9111314d659e7adb417d03de656b516b528)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136029
|
|
Crash seen:
> mergedlo.dll!SvTreeList::GetDepth(const SvTreeListEntry * pEntry) line 106
mergedlo.dll!SalInstanceTreeView::get_iter_depth(const weld::TreeIter & rIter) line 4230
basctllo.dll!basctl::SbTreeListBox::FindVariable(const weld::TreeIter * pEntry) line 271
basctllo.dll!basctl::SbTreeListBox::FindModule(const weld::TreeIter * pEntry) line 695
basctllo.dll!basctl::MacroChooser::BasicSelectHdl(weld::TreeView & __formal) line 473
basctllo.dll!basctl::MacroChooser::RestoreMacroDescription() line 158
basctllo.dll!basctl::MacroChooser::run() line 178
Change-Id: Ic85758c0bbee952d0a23b1d52e8bbdd231e8de26
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135914
Tested-by: Jenkins
Reviewed-by: Samuel Mehrbrodt <samuel.mehrbrodt@allotropia.de>
(cherry picked from commit 79f820b6822f8d3578975a4757b4293728c8c717)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135937
|
|
This went wrong in commit 13aa5081793f133077610cd01b7f01ee765b4add
(remove unused defines, 2021-11-19), the trouble is that
postprocess/CustomTarget_images.mk needs these images to be listed in
bitmaps.hlst explictly, and the makefile won't see that the same names
are used in Throbber::getDefaultImageURLs(), constructed dynamically.
(cherry picked from commit 214438f1dcce52043c27c39e529cf60ff96c98cf)
Change-Id: Ie7ea1734ed417d17e1ce54d6a755509ef52572d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135829
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Handle space key the same as the return key.
This e.g. allows to insert the selected element
into the formula this way in Math again after the
switch to IconView in
commit d79c527c2a599c7821d27cf03b95cb79e2abe685
Date: Wed Jun 1 11:20:12 2022 +0300
Use IconView in SmElementsControl
gtk3 was already behaving that way without this
change in place.
Change-Id: I061b286723fedf023551afbb2184abc946b54b9f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135592
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
(cherry picked from commit c66de992e1cb4f7f87035191832b5e28295c3477)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135702
|
|
which may explain the backtraces seen with BitmapFilterStackBlur::filter
and BitmapBasicMorphologyFilter::filter in crashreporting
Change-Id: Ib55cde1603d354b8ca0e336a08fe2d73b548f73f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135694
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
... after the changes made to IconView.
This partially reverts commit 54725f6e5f06b074d1c08d8efbd16518b96882d5
Author Mike Kaganski <mike.kaganski@collabora.com>
Date Tue May 03 09:49:07 2022 +0100
Don't add empty labels to fontwork's icon view
and instead, makes SvTreeListBox::GetEntryText tolerate absent text.
Change-Id: Ifc386263ad656478416907a6f6b567cd1f3331ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135582
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
|
|
look for local variables that can be std::move'd to parameters
off by default, since it doesn't do proper data flow analysis
Change-Id: I3403a0fcffd165bdea6a772528bc53995c5fdb40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135527
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I11ad776419ea3c0eb5babd0f1ee2c7c70b7e7485
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135580
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: Iaaeb0b248f84709855d9e83d34cecf22f1169769
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135581
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
I found those crashes scraping https://crashreport.libreoffice.org/stats/
so those are blind fixes basically. Add these asserts,
hoping one day someone will hit them so we can find the root cause.
See
7c8b9fa98f4c5f7f5620e797dbbe24081e252548
fae937b6859517bd9fe8e400cad3c84561ff98ab
ce39195e533336ce1482e2be6b1bec2b7f992125
23e3bff528ab38c8d5c6d401b672a0033cef2bd4
ea4cd397300120a0f825752182eb3b943eb8a1b2
Change-Id: I175f47361e07961417c87cc8f3d7d4d1fb50fb2c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135448
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: I65ca9d43f70a50e2e95aabfc3b8ba1b15f9ff8be
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135226
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: Ib89ab59f7ad7e90b2a44ddd122176cde904fba4d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135520
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
during creation it might not have all its children created yet
if a11y querys it during its setup.
Change-Id: Ifbbec7eeb80409dc5e871c2022d1ee1e36c6e74f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135526
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
During PDF drawing we already know the glyph width, but when subsetting
we get it again from the font subset.
For fonts without CFF table this is redundant but harmless, but for
fonts with CFF table, if the CFF and hmtx table (the authoritative
source of glyph widths) disagree, we will be drawing the PDF string with
the wrong adjustment resulting in displaced glyphs. This is a font bug,
but avoiding redundancy and having one source of truth is an improvement
overall.
I kept the code that calculates advance widths for font subsets, just in
case it is is still used elsewhere.
Change-Id: I757cd0c2ebb6477b2f840d0005e84b5a131f7efb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135442
Tested-by: Jenkins
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
... and use it to remove a duplicate and simplify code.
Should mostly be a refactoring, which was mainly done by some
larger sed calls, except for the new API calls, which helped
shrinking some LOC. All data is also now private.
Originally two of the "replaced" "classes" had unsigned width
and height and one had signed. Noel pointed out, that during
calculations, the value might get negative temporarly, so this
now settles with signed values. Still the set size should never
be negative and this is enforced this way. Not sure that is what
Noel had in mind.
This also includes:
- rename WindowState => WindowData
- rename WindowStateMask => WindowDataMask
- rename WindowStateState => WindowState
- move WindowState and WindowDataMask to vcl/windowstate.hxx
- move WindowData(Mask) and WindowState into vcl namespace
- readability: replace or'ed WindowState enums with "meta" enums
+ add "meta" WindowState enums PosSize and PosSizeState
Change-Id: Icd16cfb498531aa7238ddbde83fcb0ed6d9e4f77
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135426
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
and use it for the case in charnamepage
Change-Id: I5920aa429c750e9b147cbc09a6f3814166851a8c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135493
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
A one-pixel image will do the job.
Change-Id: Ied9b51c104a39b0bcf5401d8486c11f87c979805
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135477
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I2c1884722de2d40e96282d1efbba4be0ad078bd2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135465
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I313b07bb1a3c387abddcad85c997075bd584ae6f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135440
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
we never do this deliberately
Change-Id: I6d6d8ea13fb5f09bcf631c0474e671d4605f4c69
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135427
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
My code comment about "drawable area" and Michaels bug comment
12 about the "frameGeometry()" usage were both half right. LO
expects the window's frame position and the drawable client area
size almost everywhere when "geometry" is involved. The frame's
border is stored in the decorations members of SalFrameGeometry.
Change-Id: Ic00ad1f1d74d7afadcaca0c01e1a41ea7f2833de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135434
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Change-Id: I34e710c022e6362dc2381327eb896610c35bcbf0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135425
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Change-Id: Icc26f3adcb3273426e6892aafd16da23176e23de
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135373
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I8d6b1adb83963c229d71b9f593d39d8cd3e281e3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135363
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Iaed261c5b85ce507fb30b572eb08f09c89dda3e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135367
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
|
|
Change-Id: I6ebd284bb3fa2c220b6a09fa9875b97c79f4a239
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135364
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I19681d9bfcd91e205e684674d1ec8f0058c1eb91
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135350
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
defaults to the current status of "true"
Change-Id: Id4fa50d359e29fa3a7db845edbcb86a3b1caa790
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135345
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
when we are passing the result to a string_view, it is pointless.
Change-Id: Id5906bbd7315e80358d09a0d036e605c54ccbf93
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135328
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I643175f077723b0a865270691f3b50cc817e572d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135295
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Change-Id: I647888f13fc18010efc5ff6023790e91fa11611a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135293
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
which is what the old one did, so do that here as well, libtiff will
leave the stream some other pos by default, presumably the directory.
which explains the testTdf138818 mystery
Change-Id: I574700f81a21ee164d9911e05e2023aa48d10370
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135279
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I1c575027d53b93c5d08c7e4fdf6da9d34654bc4a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135249
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
|
Needed to eventual re-implementation of starmath's SmElementsControl
using IconView.
This required re-implementation of IconViewImpl, to layout entries
by iteration, because now it's impossible to find an entry position
just based on its index.
This coincidentally fixed some visual glitches in non-gtk IconView
implementation from commit 5813660e7bfe128ac076e592fe31de64a6863780
Author Szymon Kłos <eszkadev@gmail.com>
Date Tue Feb 16 16:03:30 2016 +0100
icon view for RemoteFilesDialog
where any selected element could become first in row when scrolling.
SvTreeListBox::SetEntryHeight taking a SvTreeListEntry const* had to
be renamed to CalcEntryHeight, to avoid both virtual and non-virtual
overloads, additionally having different accessibility.
A TODO is implement separators in GtkInstanceIconView. I couldn't
find a GTK API for separators in IconView, so possibly a workaround
would be needed with some non-selectable narrow elements.
Change-Id: Ie8dc35d94049a1c48e4eb49697681ffbe93c17f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135112
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
The parent may contain other controls (e.g. Fontworks dialog's grid
contains also a label above the icon view). The control already has
the correct size; just use it.
Fixes vertical scrollbar being partially hidden behind control's
bottom in non-GTK Fontworks dialog.
Change-Id: I424999777f24bbb28619d07a9de782057f0257a0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135003
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I211e3c21b4e0148c4ff6fc9931838e37ccd0cc41
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134897
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|