summaryrefslogtreecommitdiff
path: root/vcl/unx
AgeCommit message (Collapse)Author
2022-02-15loplugin:fakeboolStephan Bergmann
("use 'bool' instead of 'gboolean' (aka 'int')") Change-Id: I9a2e830ecf22f65a8313985a07c98d4e92ea5688 Change-Id: I2cf51ce0ad6107339c8ec18592c952c829a7af42 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129951 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-02-15-Werror,-Wunused-private-fieldStephan Bergmann
(all its uses are wrapped in #if 0) Change-Id: I16ad0406327a9ced791bbd1baae40d66a2e5b3ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129950 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-02-08tdf#147251 can't generally shrink popovers if they don't fit under/overCaolán McNamara
so instead forget about forcing under/over if it doesn't fit on either side and just position so its visible Change-Id: I529bf0d2bb1a3108a8702792ef067372441c2002 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129662 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-02-04add toId/fromId to tidy up some ugly castingCaolán McNamara
Change-Id: I70f34ac5e9b5d2f2d6c0375e823908eaa2e540b2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129487 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-02-04Resolves: tdf#146997 use sal_Int64 instead of sal_Int32 for spinbutton valuesCaolán McNamara
for these cases where draw wants to massively scale the units the underlying "metric conversion" are already using sal_Int64 anyway Change-Id: I94e120d72644319548f75b2f68cfe60d4829a2e8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129356 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-29gtk4: dlsym hack for gdk_wayland_window_set_application_id not neededCaolán McNamara
Change-Id: I66b6c0157759caf20df9af1642e0f5488d47dc22 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129151 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-29gtk4: implement create_screenshot_windowCaolán McNamara
Change-Id: I7c99ead4a7a3107039d5ec096ad4a96463a8a432 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129137 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-28Related: tdf#146261 the intent it to keep the dialog within the screenCaolán McNamara
not the parent allocation Change-Id: I1801fca14e864e4e18c0b42d7f3c3956e71f8e23 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129115 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-27cid#1497856 Unchecked dynamic_castCaolán McNamara
and cid#1497857 Unchecked dynamic_cast cid#1497858 Unchecked dynamic_cast cid#1497859 Unchecked dynamic_cast cid#1497860 Unchecked dynamic_cast cid#1497861 Unchecked dynamic_cast Change-Id: I29d3abc66e86bcf03ebcd6cc0ea9dfbc24f8ff3d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129025 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-26tdf#146992 gtk_window_set_attached_to causing widgets to shiftCaolán McNamara
which isn't desirable, just drop its use. Change-Id: Ic29efa9e785cad3c221e0ef37816b8485979e719 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128990 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-26tdf#146648 make find and replace dialog reopen at last positionJim Raykowski
Makes the find and replace dialog reopen at the position it is closed/ canceled. this may have begun to go wrong for X11 at: commit 8e2398bf72507324718e99fb2066c068c7898bf8 Date: Thu Jul 21 16:00:30 2011 +0200 Remove supportsICCCMPos. Resize working with Sawfish anyway. Change-Id: I7bdcf5cd53dba8f3aacb1f2d1ae24f4bbcee26d9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128473 Tested-by: Jenkins Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-26Related: tdf#146648 store last known position when visible to return laterCaolán McNamara
if the window is hidden when its position is queried, which is what vcl does and the assumption this is possible is baked in Change-Id: I5ce96a638796a6691eeb1b09578e23752a70c243 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128980 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-25gtk4: GtkSpinButton doesn't have has-frame anymoreCaolán McNamara
Change-Id: If2d230021e7b1e4777e2b663aa835e3917d896d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128929 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-25Related: tdf#146971 remove %PRODUCTNAME from accessible-descriptionCaolán McNamara
Change-Id: I83ff18c8b5e95fa172de950eb351cbfd855c9d5d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128919 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-25tdf#146971 changing a11y desc to replace %PRODUCTNAME has perf issuesCaolán McNamara
so leave it alone, and do the conversion just for the originally report situation as a safely backportable change with a follow up to not allow us to get into this situation in the first place Change-Id: I4f95f85791d0f937e53d7541804870b2cbf62b44 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128886 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-24gtk3: "expand" icon in reference windows goes missing on entering shrunk modeCaolán McNamara
Change-Id: Ie303f82d1cc0de10ebd14248a31111a16be344f5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128867 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-24gtk4: use help-browser-symbolic for wizard help button tooCaolán McNamara
Change-Id: Icf16311cecf2b76afe62e4a415d7887864518bc1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128864 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-24gtk4: adapt to window_[g|s]et_default_widgetCaolán McNamara
Change-Id: I916e5db05f8ea10ecc8b319cc77a671ca7cbcb93 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128859 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-24gtk4: make wizards workCaolán McNamara
Change-Id: Icc268c4ca650de2684e1b3a4d37fdef42491582c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128855 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-21gtk4: set homogeneous to true to get two equal width buttonsCaolán McNamara
Change-Id: Iff8c9579bbb4758c2bb13b946fafcaf3b9433a84 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128735 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-21gtk4: GtkPopover::modal has been renamed to autohideCaolán McNamara
Change-Id: I0ccfbc1284ef85ea276979d3133f30628517200a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128734 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-20gtk4: gtk_file_filter_add_suffix now exists to fill this gapCaolán McNamara
Change-Id: Ia69b755f8a00621041de45974c4adf0d8c4b36f5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128712 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-20gtk4: implement SalGtkFilePicker::SetCurFilterCaolán McNamara
Change-Id: Ia147336c52422fb76600760526f3f020a052fd1c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128700 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-20gtk4: take SolarMutexGuard on key event handlerCaolán McNamara
Change-Id: Ifa195e02a2da1b530feb51f9473b41eb14e4e818 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128698 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-20gtk4: hide frame for gtk4 to pretty things upCaolán McNamara
they were typically invisible in gtk3 and we mostly designed assuming that so it doesn't look great Change-Id: Iae44e3fd92b4c5ef7bea25174978477d75c03433 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128690 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-19WASM add toolkit and Emscripten version to AboutJan-Marek Glogowski
Change-Id: I095cbb17accf04654a928bf0d89c0fbf1f443c9b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128610 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-18Add HAVE_(UNIX_)DLAPI config header defineJan-Marek Glogowski
..., add the configure test flags and rename DLOPEN_LIBS to UNIX_DLAPI_LIBS. Initinally convert two dlsym callers to use HAVE_DLAPI and osl_getAsciiFunctionSymbol. There are a lot of places, which still use -ldl and even more direct dlsym calls; good opportunity for many simple EasyHacks. Change-Id: I4f2d2f7cb079a075af8f9d01eb5ee45de40c7f03 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128523 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-14VCL drop m_pInstance from *nix SalDataJan-Marek Glogowski
AKA the "*nix SalData untangling" commit. The original plan was to get rid of vcl/inc/saldatabasic.hxx and even SalData for all the *nix backends. But after many backs and forths, reinspecting the code and imagining the resulting code, I decided against that plan. All these variants would have resulted in reinterpret_cast calls, I wanted to prevent. And they would have required larger renames for no benefit. An other, related idea was to include all SalData implementations in the vcl/inc/svdata.hxx header, but that seemed like an include explosion, so was also dropped. I tried to untangling iOS from using GenericUnixSalData, as it doesn't use any of it's features. The new, minimal SalData should be sufficient. I'm leaving the easier drop of mpInstance from the Windows and MacOSX backend as a minimal interesting EasyHack. Change-Id: I5be01c1f42131a7e31cb30899392308e1e2de53b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128402 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-14VCL move PrinterInfoManager into GenericUnixSalDataJan-Marek Glogowski
... and use a std::unique_ptr. PrinterInfoManager::release() was just called from ~SalData(), so this should make this more clear. Change-Id: Ic4aade2db3813fdc96ede116a50604692ef3dbec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128399 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-13set hint_metrics seperately from hint_styleCaolán McNamara
I unsure hint_metrics makes any difference to our use case, but probably won't hurt Change-Id: I82a4ff0d3a05e50ec30e878363e0c24a438c96cb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128389 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-13allow selecting text rendering mode suitable for natural glyph positionsCaolán McNamara
Change-Id: I6b8c815fda3a48917467719432071c0716e3e9ab Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127338 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-12keep positions as DeviceCoordinate within SalLayoutCaolán McNamara
Change-Id: I20bbb0e252ffd09901f587599430e715dbe977b3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128300 Tested-by: Caolán McNamara <caolanm@redhat.com> Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-08tdf#146641 allocations attempted while hidden are discarded by gtkCaolán McNamara
Change-Id: I46288cf4c106e2763feba298f1c44dbbf6c85581 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128132 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-01-07VCL move platform code from mouse.cxx into pluginsJan-Marek Glogowski
... by moving it into ImplCreate(DragSource|DropTarget). The existing Create* variant now checks for headless mode and the IsRunningUnitTest flag, before creating the platform variants. There are two small helpers to initialize either X11 or Ole based UNO DnD interace implementations. Unfortunatly Windows requires to move two dtrans header files, but at least any other changes are minimal. Change-Id: Id79459ad71a26243b1c9cb1fe38ab236b0ab8fa6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128049 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-01-04Fix typosAndrea Gelmini
Change-Id: Ia2629c23ed6d0da0a4863daee687671a4436d456 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126615 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-01-01vcl: move drawPolyLine (+legacy) to SvpGraphicsBackendTomaž Vajngerl
Also moves drawPolyLine with cairo context param. to CairoCommon as it is also needed in X11SalGraphics::drawPolyLine. Change-Id: I49b24bc31ecf3f6ab3cebca4eaab351c91564db5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127740 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2021-12-30vcl: move applyColor and clipRegion to CairoCommonTomaž Vajngerl
Change-Id: I0a207b10017923c4336d49ebc8abd53c78d809ac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127708 Tested-by: Tomaž Vajngerl <quikee@gmail.com> Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2021-12-29Always use <poll.h>, no modern system needs <sys/poll.h>Ismael Luceno
This was standardized in IEEE 1003.1-2001, so more than 20 years old. Verified following systems using online resources: - FreeBSD 3.0 (1998) - NetBSD 1.3 (1998) - OpenBSD 2.0 (1996) - CentOS 5.0 (2007) - Debian 4.0 (2007) - IRIX 6.5.30 (2006) - SunOS 4.1.3 (1992) - SUSE 10.2 (2008) - Red Hat 5.0 (1998) So the check used for BSDs on vcl/unx/generic/dtrans/X11_selection.cxx was never correct. On GNU/Linux specifically, <poll.h> is provided since glibc 2.0 (1997). musl libc produces the following warning if the non-standard header is included: /usr/include/sys/poll.h:1:2: warning: #warning redirecting incorrect #include <sys/poll.h> to <poll.h> [-Wcpp] Change-Id: Ia8f4b9e1ee069f86abe03140c18a77d17336d09c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127666 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-12-17tdf#146225 Revert "Use g_get_real_time instead of g_get_current_time"Hossein
This reverts commit 489d7298d2e609ee5900f05ba0064845a7a551ce and 4812c8df39cb03b59d8c033005e8e9dc45a260dd. Change-Id: Ic537a605eedc39c6cbafab4c28a77d81edfa1e20 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126998 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins
2021-12-15unset mpMenuBarWidget when it was destroyed along with its parentCaolán McNamara
Resolves: https://github.com/flathub/org.libreoffice.LibreOffice/issues/173 Change-Id: I875cf658fb86adfa389429ead059bfd7c4f08ef4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126866 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-15tdf#146225 Fix delay when exiting from the gtk3 uiHossein
While removing the deprecated g_get_current_time and replacing it with g_get_real_time in 489d7298d2e609ee5900f05ba0064845a7a551ce, a behaviour change in sal_gtk_timeout_expired static method is done, which lead to tdf#146225. With this commit, it is changed back to the previous state, with 2 additional variables of tv_sec and tv_usec. Eventually, the method should be simplified. Change-Id: I2f1bb22b9a2d518e6f0332472535be8d4adf92f2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126829 Tested-by: Hossein <hossein@libreoffice.org> Reviewed-by: Hossein <hossein@libreoffice.org>
2021-12-11Fix typosAndrea Gelmini
Change-Id: I8e6db5dfb5285e45f862fadf09ecb4142be6e075 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126659 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
2021-12-11Use g_get_real_time instead of g_get_current_timeHossein
g_get_current_time() which is deprecated, is replaced by the newer function g_get_real_time() in which is available since glib 2.28. Function GLib > get_real_time https://docs.gtk.org/glib/func.get_real_time.html Change-Id: I371c2efc290e70410b84346ed47d721ae9547273 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126374 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-12-10Revert "Re-Enable DrawTransformBitmapExDirect for render backends"Armin Le Grand
This reverts commit 7e5af164b7d293dd410710bed411e1ca64bbecf7. Reason for revert: Not the best/effective way to clear out the stuff remaining to be done, would need additional stuff Change-Id: Ia6ab90384da29a5e34eff0ab8881bad2ab49c58c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126601 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2021-12-10add resize_to_request to popoverCaolán McNamara
Change-Id: I4bd549efd934946f355f06645ed816acd370a51d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126634 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-09Related: tdf#145786 cooperate between our own grabsCaolán McNamara
Change-Id: I97a1868c3f086b7f414d18d0fb4daa1c6d09846f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126558 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-08only autopopup on mouse hover, not keyboard traversalCaolán McNamara
Change-Id: I4ec5c5c1d5a450a0d8531907da85216000cd6c4a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126547 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-08gtk3: GtkTreeView::gtk_widget_get_preferred_size can return a poor heightCaolán McNamara
if GtkTreeView's internal do_validate_rows hasn't been run yet, guarantee that's called by calling gtk_widget_get_preferred_width. this is noticable in the calc autofilter color dropdown on getting its preferred height right after inserting rows into it Change-Id: I6dcef6ddfb462bcd9ff31ac797862804661f46fa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126491 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-12-07Re-Enable DrawTransformBitmapExDirect for render backendsArmin Le Grand (Allotropia)
Unfortunately the add/usage of HasFastDrawTransformedBitmap did disable the system-dependent implementations/fast-path for DrawTransformBitmapExDirect and it's implemenations, except for Skia. This means that the current backends for Windows/Mac/Cairo/headless/Qt5 have to do expensive pixel operations when a Bitmap is 'really' transformed (rotate/shear) since some time. The nine implementations using ::hasFastDrawTransformedBitmap (grep for it) all return false, except the Skia one. Since HasFastDrawTransformedBitmap() uses that and itself is used in the very central mehod OutputDevice::DrawTransformedBitmapEx(...) to decide if that fast-path shall/can be used at all, it was *no longer used* - except for Skia - what makes Skia definitely performing better with transformed Bitmaps, or the other way around - the others worse. HasFastDrawTransformedBitmap() is used in only two places, the second is in the canvas helper to decide if to try to use that fast-path for presentation rendering. A method at OutputDevice to see if that fast-path is implemented is therefore currently needed, but for the canvas helper only. Since this will/should be converted to primitive usage (hopefully) anyways, nine impementations calling these virtual functions often and the danger to produce a mismatch/ error beween implementations of hasFastDrawTransformedBitmap and drawTransformedBitmap (as happened here, but can also happen when someone adds or removes an implementation) I looked for a way to solve that differenly and more safe. Since SalGraphics::DrawTransformedBitmap anyways returns a bool to signal it's success I take this as base to implement a buffered test directly at SalGraphics, also directly set a local flag to detect that functionality if DrawTransformedBitmap is used anyways before the test is/would be needed. Combined wih that small test to check only if this was not yet used and thus tested by DrawTransformedBitmap anyways I can offer a reliable non-virtual method at OutputDevice called ImplementsFastDrawTransformedBitmap() that will be used at the single necessary location - in the canvas helper. Since that small test direcly uses one of the nine implementations of hasFastDrawTransformedBitmap it is fundamenally more reliable and probably the copy bitmap/writeBack never really used (I tested that it works) due to an earlier use of DrawTransformedBitmap did the check potentially already. I also took a look at the cairo version (since I had this one running here) and ensured that the buffering of the system-dependent form of the Bitmap as cairo surface still works. Regarding the newly introduced fAlpha parameter I want to add some remarks: - It should be called fOpacity to make clear that it describes opacity, defining that if 1.0 == fAlpha means *no* transparency. That word is used in other graphic systems and makes more clear what function it has. It is the opposite of transparency, but works the same. - Currently all implementations of ::drawTransformedBitmap - except Skia where it was implemented - do not use it, but return false. It will in most cases not be too complicated to add/implement it, e.g. for cairo anyways a transparency surface will/is created, fAlpha can just be merged in, and the criteria for buffering that may be extended to remember for which value (if at all) of fAlpha that was prepared. I strongly recommend implementing these for our main graphic backends. - The primitive renderer uses another more general way to add an extra alpha channel to paint when needed - it draws the content (any content) that needs to be transparent to a buffer and then that buffer using the intended transparency. This is discussable since may be more expensive, but more general and keeps the interface less complex. We can see here that adding that complexity to the existing interface at OutputDevice makes the implementations more complex what might be the reason his was only implemented for one of nine backends. When adding something like this and extending the complexity I would prefer that at the same time it gets also *implemented* in all or most or at least most used cases. I want to make clear that from my POV in those cases choosing possible runtime speed over complexity is not always preferable. Change-Id: I5bab59f59fca878a7b11a20094e49e8b50196063 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126480 Tested-by: Jenkins Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
2021-12-06tdf#138999 only grab keyboard and not pointing devicesCaolán McNamara
this way scrolling in a combobox dropdown and moving the mouse outside the widget doesn't cause the scrollbar to jump to the top. No ill effect seen in a) autofilter dropdowns in calc b) color dropdown in writer main window or sidebar and clicking on combobox subwidget to launch its popup and select an entry to return to color dropdown c) submenu popups from style combobox dropdown Change-Id: I6ad445a6fab899d52907237e1f5506cce31b1f48 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126408 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>