summaryrefslogtreecommitdiff
path: root/vcl
AgeCommit message (Collapse)Author
2020-02-27loplugin:unusedfieldsNoel Grandin
Change-Id: I0d3941ed2a6f0caadbe080ac8a6273c5ec21462c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89616 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-27Fix compilation on Windows with --disable-skiaKelemen Gábor
Trying to compile with option --disable-skia failed with: error C2027: use of undefined type 'SkiaControlsCache' Change-Id: I44b40cf7c2a8f356f8a49312a413c924c141c7df Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89458 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-02-27loplugin:singlevalfieldsNoel Grandin
Change-Id: I3aa19805fab937cd9516ce8127753a0f599c73c1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89611 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-26lru_scale_cache - cache the same bitmap at multiple scales.Michael Meeks
Helps accelerate different views at different scales, as well as document / image thumbnailing on save, as well as stray views that can get rendered behind the scenes at odd scales on mobile. Each scale + bitmap combination is another key in the LRU table. Change-Id: Id82ce2e4180608082c9ca16fad35bba9e8c2e81a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89497 Reviewed-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89503 Tested-by: Jenkins
2020-02-26WIN prevent deadlock in SetForegroundWindowJan-Marek Glogowski
As mentioned in various blogs, like Raymon Chens "The old new thing", 2008-08-01, "I warned you: The dangers of attaching input queues", using AttachThreadInput to steal the input from an other thread, so SetForegroundWindow becomes more reliable, can deadlock in that call in win32u.dll!NtUserCallHwndLock. Stackoverflow also has a multitude of suggestions and links in "Win32 SetForegroundWindow unreliable", to circumvent Windows focus-stealing prevention mechanisms. A customer is experiencing these hangs reliably and often when opening LO windows via Java UNO, because the Window and the UNO thread are different and trigger this code path. Removing the calls to AttachThreadInput fixes the problem for them. This has started lately and nobody really knows why. I also know other customers with a similar Java UNO setup, which don't experience them. For better foreground handling, the calling app eventually should either use AllowSetForegroundWindow or CoAllowSetForegroundWindow (for COM servers), to give up the foreground / input handling. So this just drops the AttachThreadInput calls. Change-Id: I8de0a17aaaa44c24b1ee728b2ef6ec3aea951c54 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89527 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-02-26tdf#130845 sidebar widget visible when sidebar collapsedCaolán McNamara
default to "false" and track the parent widget clipping/visibility instead of "true" which makes it unconditionally visible Change-Id: I1f8cec2b07ac20c33ff09cc278424d7e20199946 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89552 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-26get the real last row, not the last toplevel rowCaolán McNamara
Change-Id: I7de72c383f11187ec706cd6971ff0431d04db72f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89539 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-26only call enter/leave page when not changing programaticallyCaolán McNamara
which is how the vcl version traditionally works, this results in the "General" tab in the basic dialog editor 'sticking' as the the default page Change-Id: I2bc88093df48724c32c99add5234968fa672e4a6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89463 Tested-by: Jenkins Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-26leave "skipped" events available to gtk parent handlerCaolán McNamara
Change-Id: I6cf4b8b308ec41a46aeb6b48554d87a2fa316d85 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89475 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-26Resolves tdf#130500 - Sukapura icon themeHeiko Tietze
Added to core and made default on macOS Change-Id: I1c1e8caab514198717cf6cd7e8c00a1c1d5c15da Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89183 Tested-by: Jenkins Tested-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id> Reviewed-by: Rizal Muttaqin <riz_17_oke@yahoo.co.id> Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2020-02-26loplugin:nullptr (clang-cl)Stephan Bergmann
Change-Id: I0d40f6ee515430f2d32fb7d3bcc193273d36c016 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89469 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-26loplugin:external (clang-cl)Stephan Bergmann
Change-Id: I2ea8eaeb9cc2e98d807678ec4716cf58b36f92c3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89468 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-26vcl: use UCBContentHelper in instead of implement own functionsTomaž Vajngerl
Change-Id: Iea617c8b5d3aa5f755b70ff2b6e00e8372057df0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89478 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-02-25vcl: move GraphicID out of impgraph.{cxx,hxx}Tomaž Vajngerl
Change-Id: I0b3b17736a76be290f6e5b77ee547b7e650d4489 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89449 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2020-02-25tdf#130915 SvTreeList::Move needs to move from lower index to higherCaolán McNamara
the reverse doesn't work Change-Id: I0d84e6e44b26c0c4f1f0d221de3fad03c183f6ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89425 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-25Resolves tdf#127782 - New Print dialog is too highHeiko Tietze
Amends Iea41f9cf335b75210de0acf5688fddd5e3dd3dbb Change-Id: Ic669332245ad9c5ee6366765da8a5bc632dd159c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89423 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2020-02-25turn off dnd target indicator on old target when changing targetCaolán McNamara
Change-Id: Ia1cd181789679fd3f99c791806bd53cb74076556 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89421 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-25cancelling drag from drag-begin doesn't work, call it asyncCaolán McNamara
Change-Id: I9323e8ab4d3df9f2ded0c7bfb21582faa3b5e1a4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89412 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-25Move SalInstanceEdit declaration to the header fileSzymon Kłos
Change-Id: I660de317b88c4e83ccc310743dc4ef5b4c955a21 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89370 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2020-02-24workaround GCC 9.2.1 -Og -Werror=maybe-uninitializedMichael Stahl
vcl/unx/generic/gdi/salbmp.cxx:727:32: error: ‘pixmapHandle’ may be used uninitialized in this function [-Werror=maybe-uninitialized] vcl/unx/gtk3/gtk3gtkinst.cxx:7336:16: error: ‘eRet’ may be used uninitialized in this function [-Werror=maybe-uninitialized] etc. One looks like it might occur in practice. Change-Id: I09af7d36b134b31cb7bd8047b5c73f4a49c9d9b3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89351 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-02-24vcl: GCC 9.2.1 -Werror=format-overflowMichael Stahl
vcl/source/gdi/metaact.cxx:104:26: error: ‘%u’ directive writing between 1 and 10 bytes into a region of size 6 [-Werror=format-overflow=] 104 | sprintf(buffer, "%u", static_cast<unsigned int>(nMetaAction)); Change-Id: Iec295a5a2477b2a13d771c392e0de6c3920a2eac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89350 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-02-24set the state on the widget instead of the context to get it to stickCaolán McNamara
Change-Id: I76f7487957d38f155ea086fd01855149ad170166 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89339 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-24gtk3: allow handling of ctrl key acceleratorsJim Raykowski
Change-Id: I681354f3b069a16d07a20bcc1fe110397d0ea2a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89315 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-22Fix typoAndrea Gelmini
Change-Id: Ib8a7cdffe765d3ef52add81a692eb7bd88bfed15 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89255 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2020-02-22tdf#130768 need to use mnOutOffX/mnOutOffYArmin Le Grand (Collabora)
in OutputDevice local stuff when want to get to pixel coordiantes. These are not often used local members of OutputDevice specially used in fake-Windows as internal windows offset. Thus there is the protected internal replacement ImplGetDeviceTransformation() for the usually used GetViewTransformation(). A very problematic thing - we should in principle add this to GetViewTransformation() but I am sure that this will lead to other problems - argh! Change-Id: Ibedc3a7d6eb3f17c266082729872b81f607836a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89259 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2020-02-22tdf#127205 split Desktop::terminate processJan-Marek Glogowski
Trying to somehow keep stuff correctly alive, truned out to be rather futile. Originally I tried the same way Caolan did in the attached patch to tdf#88985, when he finally settled on adding a special terminate listener. But this is not enough to handle in-process scripted extensions, like Java, Python or even Basic macros themself. So this separates the module shutdown and SfxApplication cleanup from the rest of the terminate call. Change-Id: Ice59816080c922a17511b68afe59348a662600c9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88835 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-02-22tdf#130827 Qt5 report frame-relative cursor posJan-Marek Glogowski
Qt5Frame::GetPointerState expects the cursor position relative to the frame position. Change-Id: Icaf7dcd8fc80d712f5138a9f9b843ccf345c5543 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89244 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-02-22tdf#130841 resize to client size after SetPosSizeJan-Marek Glogowski
This fixes the hack of the native menu bar with a smaller client size in relation to the frame geometry. Eventually this should be replaced by proper mnTopBorder usage, but this currently isn't working. Change-Id: Ib5825d9c8f77e463fcb086e0373228fe91d8705a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89202 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-02-22tdf#130499 Qt5 no qApp == main threadJan-Marek Glogowski
If there is no QApplication, we can ignore the GUI thread. Change-Id: I0d2faf4799d493ad0b6074b40242c443d4bc43dc Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89241 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-02-21tdf#130768 speedup huge pixel graphics CairoArmin Le Grand (Collabora)
For more information/documentation please refer to the bugzilla task Fixed a crash in CppunitTest_desktop_lib which led to a missing test of mpGraphics in OutputDevice::DrawTransformedBitmapEx. Other public methods test that and one of the goals of the cange was to use that method more often, so this may have never been detected before Change-Id: I10e57bd05db0c8cf868ff98d63f5af3d116a3015 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89230 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2020-02-21tdf#130831 Qt5 don't blit damage to empty imageJan-Marek Glogowski
This prevents the crash, but I'm not sure having an empty buffer image at this point is correct. But it doesn't look like anything is missing in the dialog and a crash is definitly worse. Change-Id: I7d0330b4e4a7ca64655a51c226e425e53ba12118 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89203 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2020-02-21Drop o3tl::optional wrapperStephan Bergmann
...now that macOS builds are guaranteed to have std::optional since 358146bbbd1b9775c12770fb5e497b6ec5adfc51 "Bump macOS build baseline to Xcode 11.3 and macOS 10.14.4". The change is done mostly mechanically with > for i in $(git grep -Fl optional); do > sed -i -e 's:<o3tl/optional\.hxx>\|\"o3tl/optional\.hxx\":<optional>:' \ > -e 's/\<o3tl::optional\>/std::optional/g' \ > -e 's/\<o3tl::make_optional\>/std::make_optional/g' "$i" > done > for i in $(git grep -Flw o3tl::nullopt); do > sed -i -e 's/\<o3tl::nullopt\>/std::nullopt/g' "$i" > done (though that causes some of the resulting #include <optional> to appear at different places relative to other includes than if they had been added manually), plus a few manual modifications: * adapt bin/find-unneeded-includes * adapt desktop/IwyuFilter_desktop.yaml * remove include/o3tl/optional.hxx * quote resulting "<"/">" as "&lt;"/"&gt;" in officecfg/registry/cppheader.xsl * and then solenv/clang-format/reformat-formatted-files Change-Id: I68833d9f7945e57aa2bc703349cbc5a56b342273 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89165 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-02-21tdf#130517 improve accelerators on Print dialog pageSeth Chaiklin
- add accelerator for Print - change accelerators for other "p" items - All Pages to A - Preview to v - Order (not needed, because _r on checkbox is enough) Change-Id: I7db4153829132dcbbb7c7356591f43df809583ca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89127 Tested-by: Jenkins Reviewed-by: Seth Chaiklin <sdc.blanco@youmail.dk> Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2020-02-21loplugin:unusedmethodsNoel Grandin
Change-Id: I2194158d555958f0192d8d6c18e4c093608b8fb8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89119 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-02-20Silence warnings in salvtables.hxxSzymon Kłos
Change-Id: I2d621688776c789b24ec1c593da2e4880cefd3a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89103 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2020-02-20Create header file for SalInstanceBuilderSzymon Kłos
Change-Id: If8d7578d9a5926cdf565efbf0bc12719e5ef6fc2 Move more declarations for SalInstance to header file Change-Id: Ib7240ffd003e202be04b462209cfb2abafcc18ea Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89102 Tested-by: Szymon Kłos <szymon.klos@collabora.com> Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
2020-02-20'rational' is an adjective, 'rationale' is a nounTor Lillqvist
Change-Id: I38678a74603729b63ac7a164249586e0891b74e2
2020-02-20tdf#130794 qt5: Actually, ignore non-spontaneous QEvent::ShortcutOverrideMichael Weghorn
In fact, the assumption in commit 034f56015c1c7a61faede33fb5306f63b5585632 ("tdf#126785 qt5: Ignore external QEvent::ShortcutOverride") was a fallacy and it's exactly the other way around: "Normal" typing leads to "spontaneous" events of type QEvent::ShortcutOverride, since those originate from outside, are triggered via X11 events or Wayland equivalent, and the non-spontaneous ones are the additional ones that happen when e.g. the Orca screen reader is enabled. In a short test, no non-spontaneous QEvent::ShortcutOverride ever occured when using LibreOffice a bit with Orca disabled on X11 or Wayland (and on Wayland also not with Orca enabled, since Qt accessibility is broken there, s. QTBUG-73945 [1]). (Side note: In a quick test with Qt 5.12.5 and Plasma on Wayland, 'xcbSourceDispatch' from Qt library's qxcbeventdispatcher.cpp was also used in the Wayland case to when processing the keyboard events). [1] https://bugreports.qt.io/browse/QTBUG-73945 Change-Id: I1be1977e67f84fa657f6fc197e0b91822b6a3a2a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89073 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2020-02-19start center is too narrowCaolán McNamara
since... commit c214ad383d5e7dc0a18dbe6cbfc1e32fea934fd9 Author: Caolán McNamara <caolanm@redhat.com> Date: Tue Feb 18 15:22:23 2020 +0000 support WB_SMALLSTYLE via small-toolbar icon size Change-Id: Iaef2b9485d7bbd0f380be18e40220b5383d03d3e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89044 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-19Resolves: tdf#130400 reserve ctrl+page_up and ctrl+page_down for notebooksCaolán McNamara
Change-Id: I627298cb844967eeb1e166720e3951be732a4dc5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89016 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-19Resolves: tdf#130762 honour "wrap" in FormattedFieldCaolán McNamara
Change-Id: Iefd9a537aa358eab179cf6f0eeb6f80a9a77284a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89011 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-19BitmapAccessMode::Info does not need bitmap dataLuboš Luňák
This was needlessly bailing out if the bitmap data wasn't ready but it wasn't necessary either. Change-Id: Ia2b78920f614f71630d31c353091c807d1db2af6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89009 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-02-19drop newly unused methodsCaolán McNamara
Change-Id: I390134b3cd0187f0adcced3625ad0a3a26f8fe28 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89008 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-19work around a driver/card(?) problem with Skia and AA-ed polygonsLuboš Luňák
See description in SkiaSalGraphicsImpl::drawPolyPolygon(). Change-Id: I4b2626e26cac6d145b417426fc2575845386db57 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88941 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2020-02-19move svtabbx.hxx to vcl/toolkitCaolán McNamara
Change-Id: Id4cf566f896b15b8d4e4cafbb92a990cedb447e7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88931 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-19weld WatchWindow panelCaolán McNamara
Change-Id: Idb43d7bd168ce37fce8694946be6c7de7ca5a2c3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88930 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-19support WB_SMALLSTYLE via small-toolbar icon sizeCaolán McNamara
Change-Id: I1c232a9e14df8a15142c1670f848c32fc0a245c1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88988 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-19change label in print dialog from "OK" to "Print"Seth Chaiklin
Change-Id: I1d6b04678ab039138908bc9555763bea057fa996 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88212 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2020-02-18skip on-demand children in all_foreachCaolán McNamara
Change-Id: I7151ba11a67db440edd22156586d94bb9a01fcd8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88942 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-02-18Resolves: tdf#130756 null deref in empty treeviewCaolán McNamara
Change-Id: Ie43081d5c1feb655ea1479476375ee7381f0a0ef Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88934 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>