summaryrefslogtreecommitdiff
path: root/vcl/osx
AgeCommit message (Collapse)Author
2022-07-10tdf#143148 Use pragma once instead of include guardsehsan
Change-Id: I89f7fb1ec47ee5d7fc3ddb737527bbf2497f9454 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136774 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-07-08[API CHANGE] Drop css::accessibility::XAccessibleStateSetNoel Grandin
which is internal API, unused (as far as I can tell) by external users. This state is purely a bitset (as implemented by utl::AccessibleStateSetHelper) so we can just return it as a 64-bit value. This shaves significant time off the performance profiles of code that loads very complex shapes, because this state is frequently used, and we no longer need to allocate a return value on the heap for every call. Change-Id: Icf1b3bd367c256646ae9015f9127025f59459c2c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136786 Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-06-26tdf#143148 Use pragma once instead of the include guardsAmir H
Change-Id: Ief3c0d01746ea1897b55f4f0994237d28a8a04e6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136440 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-06-22improve the look of the macOS comboboxNoel Grandin
Change-Id: I4484fabcf6d883deeb3e417e46ce3973f2332f94 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114251 Tested-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-06-21VCL expect correct frame size for native menubarsJan-Marek Glogowski
... and renove the wrong framesize hack in the Qt backend This wastes a few additional pixels in the frame backing store, actually covered by the real native menu bar, to get rid of all the hacks and eventually fix quite a bunch of bugs in Qt (and maybe other backends). This seems to work correct with Qt using either QPainter or Cairo as the painting backend. It's much simpler then my previous failed attempts to fix the Qt related bugs. I would like to convert every implementation to my interpretation of the API (at least I now documented the API). It looks like Win and Mac will just work, because Win has no native menu bar and Mac uses a global menu, so always returns the size of 0. And Gtk also seems to work, if it also lies about the menu bar size being zero. That just seems consequent, if the frame size is reduced by the menubar size. This fixes at least: tdf#64438 - Dockable panels in LibreOffice not dockable using KDE Works. tdf#130893 - XWindow::SetPosSize resizing based on XWindow::GetPosSize shrinks the window The document macro from tdf#130841 now doesn't resize the window. This is just fixed for Qt. tdf#134704 - KDE5 - unable to dock sidebar by dragging frame not fixed, because the sidebar window is now a dialog, which is not dockable. FWIW the same has happend the Navigator (F5), which also renders it non-dockable. No idea, if this is intentional. tdf#137471 - CMIS dialog advances beyond lower right corner of the screen So commit 3f8d3fd4649ef09e86c735617383a4bda0425540 ("tdf#137471 Qt return frame pos + client area size") was really not enought as a fix (at least it didn't break anything). The whole parent-based repositioning is wrong and it really depends on the correct frame size, so I'm keeping this as fixed by this patch. Change-Id: I7faeace61b456c2b0f42c7a826f58018b70d46ae Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135082 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-06-15Drop SalMenu::DrawMenuBar (is WIN-only)Jan-Marek Glogowski
This follow-up on commit 483f3125ecd4744cbcc2f8fd3cdf243d81a601ff ("WIN drop effectively empty ImplDrawMenuBar") should probably have been included in it. Windows was the only implementation of that API, but the API is just called for a native menubar, which Windows doesn't use (VisibleMenuBar returns false). Maybe Windows SalFrame::SetMenu should also be dropped? Change-Id: Ic3600e66c91ce9d56d7f911bce5674e0a9ee833c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135633 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2022-06-08VCL add vcl::WindowPosSize abstract classJan-Marek Glogowski
... 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>
2022-05-17loplugin:unnecessaryparenStephan Bergmann
Change-Id: Ic96e2ee710cb28b0475c103ab9cba5974301e164 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134407 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-05-08Delete CJK-style mnemonics on macOSxuenhua
Delete CJK-style mnemonics for the dropdown menu of the 'New button' and lower menu of 'File > New' on macOS Change-Id: Idd0ab671cd75151095c92b37e5b6b5e81ddae7e1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133973 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-05-02Delete mnemonics for CJK translations on macOSxuenhua
'Cop~y' translated into Chinese is '复制(~Y)' But the mnemonics '(Y)' is useless on macOS. In English, 'Cop~y' with the '~' removed is the correct result. But in CJK should remove along with '(' and ')', not just only for mbMenuBar. Use the method MnemonicGenerator::EraseAllMnemonicChars already defined in vcl/mnemonic.hxx Change-Id: Ic37ce566923e3dea47535d187b1b3dba2088e960 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133572 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2022-04-25loplugin:stringviewStephan Bergmann
Change-Id: I60b37ab39662c485855894642484b6d093070519 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133391 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-03-29a11y: Drop unused, deprecated table model change event typesMichael Weghorn
All places that were previously emitting `AccessibleTableModelChangeType::INSERT` and `AccessibleTableModelChangeType::DELETE` events have been ported to emit the 4 new event types introduced in Change-Id I30821a5acafa4f3d1dafdfc219f3b4568d9a6e89, "a11y: Add new table model change types for row/col insertion/del" instead. Therefore, the handling of those events can be dropped from the gtk3 VCL plugin and for macOS's a11y listener as well. Also, drop the now completely unused constants from the IDL file as mentioned in Change-Id I30821a5acafa4f3d1dafdfc219f3b4568d9a6e89: > From a UNO API perspective, this change > and the final removal of the > `AccessibleTableModelChangeType::DELETE` > and `AccessibleTableModelChangeType::INSERT` > constants in a follow-up commit > should be unproblematic, because the > corresponding APIs have been unpublished in > > commit 70626249cd247d9acdad417b8eaf252bae22c059 > Date: Thu Nov 29 00:27:03 2012 +0100 > > API CHANGE a11y unpublishing and add/removeListener rename. Change-Id: I1c062e26481b916af882e301c5f911aba9550ea3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132221 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2022-03-29a11y: Add new table model change types for row/col insertion/delMichael Weghorn
So far, there were two types/constants to use in an `AcessibleTableModelChange` event to indicate the insertion or deletion of rows and/or columns. From `offapi/com/sun/star/accessibility/AccessibleTableModelChangeType.idl`: > /** One or more rows and/or columns have been inserted. > > <p>Use the fields of the AccessibleTableModelChange > structure to determine the indices of the rows and/or columns that > have been inserted.</p> > */ > const short INSERT = 1; > > /** One or more rows and/or columns have been deleted. > > <p>The affected area of the table is stored in the fields of the > AccessibleTableModelChange structure.</p> > */ > const short DELETE = 2; From the documentation, it would be possible to indicate an insertion or deletion of both, rows and columns in a single event. However, there is no single instance where this is actually used to indicate the deletion/insertion of both, whole rows and whole columns at the same time. The way that indices are currently used is rather confusing and results in incorrect a11y events being sent on maOS as well as the gtk3 VCL plugin: When only rows are inserted, row indices are set as expected (index of the first and last inserted row), but the column indices are set to the first and last column in the table; i.e. the indices actually give the range of the newly inserted cell range, rather than just the indices of the rows that have been inserted. (The same applies the other way around when only columns are inserted.) That's not what I would have expected when reading the documentation. ("Use the fields of the AccessibleTableModelChange structure to determine the indices of the rows and/or columns that have been inserted.") In the same way, the range of deleted cells is set when emitting `AccessibleTableModelChangeType::DELETE` events. In this case, this can be seen as matching what the documentation says. ("The affected area of the table is stored in the fields of the AccessibleTableModelChange structure.") In any case, the way that the events are handled in the gtk3 VCL plugin and for macOS results in the emission of incorrect events, since those are handling such indices as if both, rows and columns had been inserted/deleted. Example for the gtk3 VCL plugin: Row with index 1 has been deleted from a table. -> an AccessibleTableModelChange event is sent with Type=AccessibleTableModelChangeType::DELETE FirstRow=1 LastRow=1 FirstColumn=0 LastColumn=<index of last column> This would then result in 2 AT-SPI events being emitted by the gtk3 VCL plugin: * one that indicates that row 1 has been deleted (OK) * another event that indicates that all columns have been deleted (NOT OK) Instead of changing the handling of the existing `AccessibleTableModelChangeType`s, introduce 4 new types to replace the existing ones that don't mix handling of rows and columns at the same time: one for row insertion, one for column insertion, one for row deletion, one for column deletion. This commit also adds handling for the newly added change types for macOS and the gtk3 VCL plugin on Linux. winaccessibility is unaffected because it doesn't have any handling specific to the change type. The qt5/qt6 VCL plugins don't yet have any handling for the `AcessibleTableModelChange` event yet (but that will be added in a follow-up commit). Existing uses of `AccessibleTableModelChangeType::INSERT` and `AccessibleTableModelChangeType::DELETE` will be migrated to use the new types in follow-up commits. From a UNO API perspective, this change and the final removal of the `AccessibleTableModelChangeType::DELETE` and `AccessibleTableModelChangeType::INSERT` constants in a follow-up commit should be unproblematic, because the corresponding APIs have been unpublished in commit 70626249cd247d9acdad417b8eaf252bae22c059 Date: Thu Nov 29 00:27:03 2012 +0100 API CHANGE a11y unpublishing and add/removeListener rename. The following Python script was used in follow-up commits to check that AT-SPI events with the expected indices are retrieved with the gtk3 VCL plugin after porting existing uses of `AccessibleTableModelChangeType::INSERT` and `AccessibleTableModelChangeType::DELETE`. #!/usr/bin/python3 import pyatspi def listener(e): try: if e.host_application.name != 'soffice': return except: return print(e) pyatspi.Registry.registerEventListener(listener, "object:row-inserted", "object:column-inserted", "object:column-deleted", "object:row-deleted") pyatspi.Registry.start() Change-Id: I30821a5acafa4f3d1dafdfc219f3b4568d9a6e89 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132217 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
2022-02-01loplugin:sallogareasStephan Bergmann
Change-Id: Ic116d0207df6d37fed850357ad41d7778bf08df9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129233 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-01-27Add a SAL_INFO listing types on pasteboardTor Lillqvist
Change-Id: I6b1fa8da47f1140fc42287b05ee8d2afe5ee5d68 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129031 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.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-04Drop all commented SAL_DEBUG callsJan-Marek Glogowski
Change-Id: I3be7153d27b83766303519e73d1a355ba327871a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127929 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-11-23O[U]String::replaceAt overloads that take string_viewNoel Grandin
which results in lots of nice string_view improvements picked up by the plugins Change-Id: Ib0ec3887816b3d4436d003b739d9814f83e244b2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125657 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-11-19rtl::Static->thread-safe static in vclNoel Grandin
Change-Id: I748c3b5608b76b4b847273856f6b1c66b53aced1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125497 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-11-16implement HiDPI support for Skia/Mac (tdf#144214)Luboš Luňák
The basic idea is the same as the 'aqua' backend, simply set up a scaling matrix for all drawing. That will take care of the basic drawing everything twice as large, which is twice the resolution. And then blit this data to the window, which expects data this way. Converting back from backing surface needs explicit coordinate conversions, and when converting to a bitmap the bitmap needs to be scaled down in order to appear normally sized. Fortunately I've already implemented delayed scaling, which means that if the bitmap is drawn later again without any modifications, no data would be lost (to be done in a follow-up commit). Unittests occassionally need special handling, as such scaling down to bitmap not being smoothed, because they expect exact color values. Change-Id: Ieadf2c3693f7c9676c31c7394d46299addf7880c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125060 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-11-01Prepare for removal of non-const operator[] from Sequence in vclMike Kaganski
Change-Id: I65f411affcf0340c054d09426483d57c530edb0f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124411 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-10-29Use non-deprecated names for bits and constantsTor Lillqvist
Change-Id: I9004aaef7b2d526ad99b316b78733671a785c847 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124328 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2021-10-27Remove lines that have been ifdeffed out since 2008Tor Lillqvist
Change-Id: I56e17e876803a11047904187ae2fd40fbae01487 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124264 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2021-10-27Use non-deprecated names for event types and flag bitsTor Lillqvist
The deprecations were introduced in SDK 10.12 and we require at least SDK 10.13 so this should not be controversial in any way. (And seriously, I doubt LO can be built with such an old SDK anyway.) Change-Id: I5e2b18b61fa66a6b06f2c751fc9d6ea87b6cbe47 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123990 Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2021-10-17Simplify vector initialization in vclJulien Nabet
Change-Id: I881627313221081f72f8421c91417e4c111cfd97 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123708 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2021-10-08loplugin:moveparam in vclNoel Grandin
Change-Id: Ic43e02576454e3ee174304db350659dd113a1d5f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123186 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-10-06drop 'using namespace std' in vcl (MacOs/ios), blindlyJulien Nabet
but hopefully there's a Jenkins machine on MacOs Change-Id: If5e87d16e64f010494ca1e5751ea6873f3a21a57 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123190 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2021-09-28gives names to all the Idles and TasksNoel Grandin
enforce it by making the constructor parameter non-default. Change-Id: I321543e4dcf15ea0a43ad8cce91d2f8dc22df6ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122766 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-09-20clean up ambiguous confusing rectangle APIs like IsInside()Luboš Luňák
Reading 'rectA.IsInside( rectB )' kind of suggests that the code checks whether 'rectA is inside rectB', but it's actually the other way around. Rename IsInside() -> Contains(), IsOver() -> Overlaps(), which should make it clear which way the logic goes. Change-Id: I9347450fe7dc34c96df6d636a4e3e660de1801ac Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122271 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Luboš Luňák <l.lunak@collabora.com> Tested-by: Jenkins
2021-09-09tdf#144241 don't return a negative width for osx edit regionCaolán McNamara
instead expand the region to the min osx width Change-Id: I01dc336c97ba9573948e1ca8f3eeb3ac46008819 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121857 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2021-09-04tdf#144289 invert / disable default OpenGL supportJan-Marek Glogowski
... and as a result drop setting a default in SalSvpInstance. This is also more consistent: now you must explicitly implement CreateOpenGLContext() and set "m_bSupportsOpenGL = true". Change-Id: I591580bf134907213b8308e0843c278d2f470ed3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121632 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-09-01use a dummy clipboard when running unit testsNoel Grandin
so the multiple unit tests don't stomp on each other. This fixes a couple of things in my earlier attempt (*) actually set the env variable on Windows (*) don't use a global variable to test the env var, because that variable might be initialised BEFORE the env var is actually set Change-Id: Id43a1dd2fbd324691e0b6578c9026b8a523012e8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121436 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-08-24implement explicit screen flushing also for Skia/MacLuboš Luňák
Change-Id: I29b9f54d24aece32949ac3ba916f1d6588cfd85f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120910 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-08-23Removed duplicated includesAndrea Gelmini
Change-Id: I2f922fb107a6e077d005ad3459a8d39009b90d03 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120897 Tested-by: Jenkins Reviewed-by: Andrea Gelmini <andrea.gelmini@gelma.net>
2021-08-23add CreateCGImage() variant for Mac/SkiaLuboš Luňák
Needed at least for 'recent documents' icons in the Mac menubar. Change-Id: I5a22cf64ff5c5aba2c70ca2556fd0b66c425bafd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120811 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-08-23implement mac native widget drawing also for SkiaLuboš Luňák
Change-Id: Ie91e48cb315d8e11508f064a6dcd9fafebb39abd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120809 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-08-23make SalGeometryProvider available for Aqua VCL backendsLuboš Luňák
This is needed for the Skia backend to know the geometry. The Mac Skia code now passes most VCL unittests. Change-Id: I6e35764d95ce821d8e11ed9979e5be75bcf6ff49 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120806 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-08-23first WIP version of mac skia SalGraphics backendLuboš Luňák
It doesn't yet blit to screen, but the basics should be there. Change-Id: I0f77b66756f578d84d0cee16cda00e7a2fea714f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120805 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2021-08-01o3tl::sorted_vector is better for small sets of pointersNoel Grandin
Change-Id: I6f67cf1ec02095c3953853d53f8750a97369fbcb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119814 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-06-28loplugin:indentation (macOS)Stephan Bergmann
Change-Id: Ia7b33ee93dbb4d27a2387af6e2dd247b5f0b0788 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118026 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-06-10-Werror,-Wunused-but-set-variable (Clang 13 trunk)Stephan Bergmann
...ever since the code's introduction in adf0066a17538a394550237a54f6fc0027f6ed29 "#i91478# aqua implementation (continued)" Change-Id: I2dd7bbaba9e8068929f4792b7f953cbf01e03a7d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116989 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-06-10loplugin:unnecessaryreturn SalFrame::SetPluginParentNoel Grandin
Change-Id: If927a834f5b5d722fc36cce40e161597af6234ca Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116972 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-05-22tdf#142061 Add window scaling to XOR emulation on macOSThorsten Wagner
Window scaling for retina displays on macOS has been added to fix tdf#138122 in commit 1a167625314bf36b735176ed488e6ba9b5e9b675 Missing window scaling for XOR emulation is added by this change. Code modified for macOS is moved from quartz/salgidcommon.cxx to osx/salmacos.cxx while original code is copied to ios/salios.cxx to prevent modifications for iOS. Change-Id: Ia8c52f9045379cc37d5aff1279650db0dddee8c0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115816 Tested-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com> Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
2021-05-18tdf#104169 - Change mouse cursor to FatCross in calc spreadsheetSarabjot Singh
Added new cursor FatCross to calc. Change mouse cursor to FatCross while hovering over the spreadsheet in calc instead of earlier Arrow. Co-authored-by: Mesut Çifci <mesutcifci97@gmail.com> Change-Id: I672a058cc702eab0cba6ac953534def915766859 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114679 Tested-by: Jenkins Reviewed-by: Heiko Tietze <heiko.tietze@documentfoundation.org>
2021-04-30vcl: iOS/macOS - move graphic render func. into AquaGraphicsBackendTomaž Vajngerl
This change moves graphic rendering function under AquaSalGraphics into a new AquaGraphicsBackend, which inherits from SalGraphicsImpl. This is part of the refactoring to make it mandatory that a SalGraphics always has a SalGraphicsImpl associated, which will make it possible to simplify the SalGraphics interface and enable the posibility to implement alernative graphic backends (Skia). Common variables and attributes are moved to AquaSharedAttributes and are shared between SalGraphics and SalGraphicsImpl. Change-Id: Ie48da87002ec8e4011ba92fdc9170f3a86761517 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114701 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
2021-04-26drop mask from BitmapExNoel Grandin
So that we have fewer cases to deal with when we transition to 32-bit bitmaps. (*) rename maMask to maAlphaMask, since now it is only being used for alpha duties. (*) drop mbAlpha and mbTransparent to simplify state management, the only thing we need to check for alpha is if maAlphaMask is non-empty. Change-Id: I06252e38e950e846a94b4c2ba8ea763be17801fe Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111679 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-04-05VCL drop Scheduler::ProcessTaskSchedulingJan-Marek Glogowski
Just process tasks (and system events) via DoYield and actually wake up the system timer on OSX. This drops the testFocus unit test. There is some comment about it in README.lifecycle, but the test's CPPUNIT_ASSERT was already commented and mmeeks suggested to simply drop it. Even worse: just replacing - Scheduler::ProcessTaskScheduling(); + Scheduler::ProcessEventsToIdle(); results in a SIGSEGV in my local Linux build, which is a totally unrelated crash. Change-Id: Ie3e2a8668b8501f081706dde0ba3684801c30cc2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112761 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
2021-03-28drop operator bool and operator! from Bitmap and BitmapExNoel
IRC chat: <quikee[m]> noelgrandin: doesn't adding operator bool to Bitmap has the same problem as Graphic and the reason why you dropped that commit 7334034ae93b49fc93b5859a3c047a319d138282 "drop Graphic::operator bool" <noelgrandin> quikee[m], hmmm, good point <noelgrandin> maybe I should just drop both operator bool and operator! in favor of IsEmpty <quikee[m]> noelgrandin: I don't remember what the problem is I just remembered we dropped it Graphic :) sure, dropping everything for IsEmpty is probably the best Change-Id: Ieae289cda64f0b8d8fdecd5ea9e6f2bb874ff4cd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113163 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-07tdf#140856 macOS listbox renderingNoel Grandin
Change-Id: Ib5d4af162da7264d9e6da8742e36c194448bd1fd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112132 Tested-by: Jenkins Reviewed-by: Thorsten Wagner <thorsten.wagner.4@gmail.com> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-03-06tdf#138314 Change selected tab text color on macOS Big SurThorsten Wagner
Change text color of selected tabs starting with macOS 10.16 (not with macOS 11.0) to ensure compatibilty with macOS SDKs prior to 11 used within LibreOffice build process The version check used in commit 058ad4b900b5e0ee902f3e89ed121c2b5f8c58f1 is amended by this change. Change-Id: I4814e8edd9aa11794a9fb1b1eaa391451bde4487 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112036 Tested-by: Jenkins Reviewed-by: Tor Lillqvist <tml@collabora.com>