| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
target
The more modern LC_BUILD_VERSION load command was introduced in the 10.13
SDK to unify the various versions of the LC_*_VERSION_MIN command. When
building with a deployment target of 10.14, the linker will use this
load command instead.
Change-Id: Ic3571fdbfdf4dfb9346128c6f6e75d1e06f86cd2
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
this considerably speeds up failures, as no doomed build is attempted,
and produces more reliable results, as no second lookup (which would be
subject to environment changes) is done any more during the build.
in principle, this also opens up possibilities like selecting specific
variants of dependencies, automatically extracting rpaths, etc.
qt_helper_lib.prf also needs to create fully resolved library names now.
Change-Id: I65f13564b635433030e40fa017427bbc72d1c130
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
Make the decoder fail early to avoid spending time and memory on
attempting to decode a corrupt image file.
Change-Id: I598db817c387867a449040f5be5427c8b8746483
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
| |
Change-Id: I57909603732de6c1a91c744a358968941e64acdf
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
If the application gets suspended when a blocking queued connection is
made then it will cause the application to hang when being resumed.
Therefore a check is needed to still post the event to the other thread
but in a non blocking manner so that it does not cause a hang on return.
Fixes: QTBUG-72101
Change-Id: I6d53c97ed6d9d500559da2a9fd195226d1fc9905
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commits that added this code:
7ce8491280990350162933a0716d1b014f65aeb6 and
f005dee1b3692a09e47782dcff9b5b07aa659b51
I guess this was a work-around, before we started bundling
XCB libs a year later in 21bd66e1ea06e466754ab06ee2c5f8b737bb4bd7
0.3.8 was released in 2011-04-26 and we are bundling 0.3.9, so
it is safe to remove the include work-around as well.
Change-Id: I5794f40d86e10ebdad984aa4b61311979aaadcf3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was a regression from Qt4, due to not setting the window
group leader in WM_HINTS property. Qt4 did set this property.
It was not obvious that something was missing because of the
similarly named WM_CLIENT_LEADER property, which we do set.
Testing revealed that setting WM_CLIENT_LEADER is sufficient
on some DEs, e.g. KDE, Unity, but did not have the desired
effect on e.g Gnome and XFCE.
EWMH/ICCCM specs are known to be ambiguous, WM_CLIENT_LEADER
is only mentioned in the section on the session management, so
it is not surprising that there is this inconsistency between
various WMs.
This patch merely restores a lost WM hint. This solves the
reported issues on major desktops. If we support calling show()
on a dialog before its parent has been shown is still an open
question, which should be handled in QTBUG-72040.
Task-number: QTBUG-56829
Fixes: QTBUG-46626
Fixes: QTBUG-70756
Task-number: QTBUG-72040
Change-Id: Id2c575850e5f4f5af3e57963c577d33572e30b6e
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit 17b73b0d2b8 regressed performance by grabbing
the entire screen and then copying the grab region.
Move back to grabbing a minimal rectangle instead.
Also handle multi-screen grabs at different device
pixel ratios.
Multi-screen grabbing is handled by grabbing each screen
individually, and then stitching together the result.
The returned pixmap is created using the highest DPR
available, upscaling lower resolution parts as needed.
Change-Id: I9d45c5f7ec7b342360b745f49ef2939dc588f40b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The only reason why we bundled this library ~6 years ago was because
it was not available on distributions that we supported at the time,
but library was a hard dependency for XCB plugin. See:
2122e731abdb619249df89642c0800640b2fa428
Later more and more projects started to depend on it (compose input
context plugin, libinput, mir, wayland). The configuration had become
too complex, because some projects used bundled and some used the
version from the system.
Having libxkbcommon in 3rdparty sources is not necessary anymore, after
RHEL 6.6 was removed from the list of supported platforms for Qt 5.12.
Ubuntu 16.04 - 0.5.0
Ubuntu 18.04 - 0.8.0
openSUSE 42.3 - 0.6.1
RHEL-7.4 - 0.7.1
This will also simplify further development, e.g. QTBUG-42181
Bumped the minimal required version 0.4.1 -> 0.5.0.
The patch also contains a code marked with "TRANSITION HACK", which
is temporary needed so we can update the dependent wayland module.
[ChangeLog][Third-Party Code] Removed xkbcommon from bundled sources.
This library is present on all supported platforms. The minimal required
version now is 0.5.0.
Task-number: QTBUG-65503
Change-Id: Iec50829bb6f8fbb19f3c4e4ad62e332beb837de5
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
How to test:
* Have two printers
* Use lpoptions -d to set the default printer to be one and then the
other
* Use lpstat -d to check setting the default printer worked
* Use this simple test program and check the resulting values make
sense
qDebug() << "DefaultPrinter" << QPrinterInfo::defaultPrinter().printerName();
const QList<QPrinterInfo> list = QPrinterInfo::availablePrinters();
for(const QPrinterInfo &pi : list) {
qDebug() << pi.printerName() << pi.isDefault();
}
Fixes: QTBUG-70317
Change-Id: I535d11451c568630a374f5c37d8cac32cbb6d3ab
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The setting is not relevant for modern macOS applications, and none of
the applications shipped with macOS today are affected by it.
The only code path in macOS that picks it up is +[NSFont initialize] in
the UIFoundation framework, storing it for later so that -[NSFont screenFont]
and -[NSFont screenFontWithRenderingMode:] can use it, but these APIs are
deprecated and we don't use them in Qt.
Other NSFont code paths will not hit these APIs unless screen font
substitution is enabled, something it hasn't been since OSX 10.7.
https://preview.tinyurl.com/yctpfnqp
Removing handling of this setting allows us to simplify the reasoning
for whether or not antialiasing and font smoothing is enabled for a given
engine.
Change-Id: Ie2809052a1a0815d9bddedd4a6236eb6c898f993
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
|
| |
It will avoid a creation of temporary object and avoid copying.
Change-Id: Ifae5f6f9e36bcb07f4bacc31f151f8adcfa621a3
Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru>
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The way macOS does font smoothing has changed in Mojave, and we need to
take both this new algorithm into account, as well as support users who
set legacy preferences to revert back to subpixel font smoothing.
As a followup to this patch we will tweak some of the existing logic
to take the new font smoothing algorithm into account, so this is
just a first step.
Change-Id: If37014c18515f406b8bb8194c9df7a75c2eb10fc
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
|
|
|
|
|
|
| |
The leak has been there since the beginnings of Qt 5.0.
Change-Id: I238181dcc63cb4cf8a60b5c565b184d8278d0315
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
|
|
|
|
|
|
| |
This patch amends 243c3044b647357ca6df79ac1497ae43de957d31
Change-Id: Ieeebb1e2b94d7c191bf80a1f439c826c406a0c08
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
|\
| |
| |
| | |
Change-Id: I12bcee17e349edd0dd4fd08da76361d1ffb1a727
|
| |
| |
| |
| |
| |
| |
| |
| | |
PasteboardGetItemCount() can return -1 as result to unsigned variable,
so the further loop will iterate "forever". Return early to avoid hang.
Change-Id: Ie91dba1c193d04513f0496d20bd0b6b0b5b6c151
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
VoiceOver or other tools may query this property even when there is no text
interface. Make sure not to crash by verifying that the interface is supported.
Found while using AccessibilityInspector to verify other changes.
Change-Id: If7ee21b7616f091b71e86bab03a871ddbabe9200
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
As a start, we just log the changes, but going forward we can use this
to report parent changes to QPA or get rid of old QNSWindows.
Change-Id: Id3625fb0b7608d85240f58bdecc70a5892075da3
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ic598d200e2f774ced489a37c33b7a02767db4402
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
We do already require glXGetProcAddress in line 241.
Fixes: QTBUG-71488
Change-Id: Id0f3bc256a71097241b99d2dcba927c1165e980e
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A plugin (such as the Qt virtual keyboard) may provide a platform
input context.
Change-Id: I349ac6c4b96a3536bcde0d44a785cb7bb989fcc6
Fixes: QTBUG-68328
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
CGContextRelease was called twice, both manual and from the destructor
of QMacCGContext.
Change-Id: Icba7dcda37af7e1f7c72937b3dd2d2cc4ea22c63
Fixes: QTBUG-71934
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
fix the plugin name (it was missing the leading 'q') and the name used
in configure (the latter making it unnecessary to mess with it in the
mkspec). the qt.prf override which forced linkage of the plugin is also
removed due to being completely redundant.
Change-Id: I94687a34a295c36754e36a298af902b656ba2ecc
Reviewed-by: Kyle Edwards <kyle.edwards@kitware.com>
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
in this case w->parentWidget() is not QTabBar, but QTabWidget and we
never draw PE_IndicatorTabClose control (before the recent major
re-write in qmacstyle we never tested the actual type).
Task-number: QTBUG-61092
Change-Id: I87c4813258cc2b483b2ef278c4a2f8796973af1c
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ie6945f2a1f35db6d1259b77ee63137abcaf68318
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
All the delegate callbacks give us the relevant NSWindow, so we don't
need one delegate per window just to be able to resolve the correct
platform window.
Change-Id: I8e44186da63bf01f029bb0b1fefcd8880f49dda6
Fixes: QTBUG-65693
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Releasing it in [QNSWindow closeAndRelease] is wrong, as we only call
that method from a few call sites, and can easily end up with a normal
dealloc by means of e.g. the [m_nsWindow release] in ~QCocoaWindow.
This still leaves Xcode thinking we have a single leaking delegate
per active NSWindow, as it apparently doesn't realize we're calling
release manually. This needs to be investigated further.
Task-number: QTBUG-65693
Change-Id: I9105602274d8532465e5108aba2b05bf253268e9
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
Change-Id: I66a08c770767a93cd26535689e3e7806486aab06
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We had a global static, a setter for it (that's nowhere used within Qt
code) and a getter for it whose only use was commented out. Neither
was declared in any header; the getter's commented-out client had a
local extern declaration at the point of (non-)use.
Found while reviewing a change to the next few lines of code after the
commented-out use of the getter.
Change-Id: I393d56219cb7dd7cf836ca80e1bdd605a2914003
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
|\ \
| | |
| | |
| | | |
Change-Id: Ic1dd39044e19f50e1068d4ac70dacaad6440e570
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QWindowsInputContext::isInputPanelVisible() was ignoring the visibility
status of the IME, only returning the status of the Win10 virtual keyboard.
This issue caused qtwebengine to try to show the IME multiple times,
breaking Asian languages input.
Task-number: QTBUG-71753
Change-Id: Iaa4cef37b7dc98a9e0a787750a34d2e98a87a777
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This issue was caused by missing logic in the implementation of the
pointer message handler, necessary to support "click to focus" for
native child windows.
Fixes: QTBUG-71352
Change-Id: I2e261caa8dfab096647799ec1e7d781bec40654e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
AppKit expects rendering to happen on the main thread, or at least any
interaction with AppKit UI classes such as NSView. Our OpenGL helpers,
such as QOpenGLContext, do not enforce this, and we may end up calling
into AppKit UI classes on the render thread, deadlocking the application.
Until this can be investigated and new APIs possibly introduced that allow
a more fine grained control in our own classes, we disable threaded GL
as a capability of the platform, which will inform clients such as
QtQuick to use the basic render loop.
[ChangeLog][macOS] Threaded OpenGL usage has been disabled when building
using Xcode 10/SDK 10.14 and later. Qt Quick defaults to the 'basic' render
loop now on macOS.
Task-number: QTBUG-71731
Change-Id: I6fc3295e833ecd48ad49382b8275c762fa7978a6
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I0c8fb7d0aa9a0d95a13447315bd8c1104089fed1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Instead of explicitly enabling layer-backing for Qt 5.12 on all macOS
version, we follow the macOS default to enable it for 10.14 if the
application binary was built against the 10.14 SDK.
Aligning ourselves with Apple's switch to forced layer-backing means
we have an easier story when it comes to supporting different runtime
configurations.
Fixes: QTBUG-71499
Change-Id: I34ee49b3daeb6ed8df444a3759d3573ebc9ea30f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The current state of (emulated) mouse buttons was being incorrectly
reported for touchpad events under some conditions. In the handling
of pointer messages, GetAsyncKeyState() was being used to retrieve the
mouse button state. However, it does not seem to work always with all
touchpads. Furthermore, its use is not necessary, since the button
state information comes as a set of flags with the pointer message
itself. This change makes the handler use these flags instead.
Fixes: QTBUG-71470
Change-Id: Ie2e35bd80778ef74db672604a0f2af659785efbf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change fixes building Qt with the -no-feature-tabletevent configure
option by disabling handling of pointer messages associated with tablet
events within the pointer message handler.
Fixes: QTBUG-71774
Change-Id: Icb47a39793edb9a0f87c07c656b6ea6573d5f947
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Numbers look completely out of thin air, and while I trust it was not
an error back then it was introduced, today we end up with QComboBox
vertically translated and thus misaligned.
Task-number: QTBUG-69908
Change-Id: I784e06f00e4c92c4af67e9bd885b86648183f2e0
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When the on-screen keyboard completes a word via text prediction, the
message contains VK_PACKET as identifier for a character sequence.
While each character is send, the code only contains the first character
of the sequence.
Hence, resolve the actual code manually in case of a sequence.
This does not modify the virtual key, so that users are able to
distinguish between manual and predictive input.
Fixes: QTBUG-71210
Change-Id: I787f1f2d83acaf124dfbbab6c4614a1bfe7bb2eb
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The rgbSwap produces an image that fits the X-server, but not one that
fits our internal image definitions, so instead return our internal
image.
Task-number: QTBUG-56806
Change-Id: I25aedf7279bcd86792213b11dbd07a77b49538de
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Commit 17b73b0d2b8 introduced a regression where the
grab rect position was added to the size when bounding
to the display size. This is incorrect.
Change-Id: I11d7ba7f53b96badfdead190ef9ddb525ed4ba99
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This matches the behavior of QScreen::grabWindow(),
and gives the caller direct access to the scale factor.
Change-Id: Ia3ed165a62eaa0f386f8b508ea6b1128ba6be604
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Output URL string and file system name, too.
Task-number: QTBUG-67932
Change-Id: Ic5d1927d70d98f7c081bee06af85b9f3a2a09812
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
|
|\ \ \
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
.qmake.conf
qmake/Makefile.unix
src/gui/text/qtextdocument.cpp
src/gui/text/qtextdocument.h
Change-Id: Iba26da0ecbf2aa4ff4b956391cfb373f977f88c9
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Also clean up QTextCodec usage in qmake build and some includes
of qtextcodec.h.
Change-Id: I0475b82690024054add4e85a8724c8ea3adcf62a
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fix invalid destination address in memcpy operation when RestoreImage disposal method is used.
Task-number: QTBUG-71599
Change-Id: Ib74a044c0e45250ff708268c463f831ee54933e6
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Opt out of switching between the normal and OpenGL based flush paths.
Once a QOpenGLWidget or QQuickWidget becomes visible in a window, the
window contents will be composed using OpenGL from that point on, even
if said widgets become invisible afterwards. Now that Qt Creator does
not rely on QQuickWidget the issue is less burning anyways.
Task-number: QTBUG-68329
Change-Id: I177e6e6094ee06ea26d8d0343bd3d84aadfa5913
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
On Linux the correspondence between cursor functions and names
of cursors has never been standardized. Projects have either
assembled their own cursor function-to-name lookup table or
borrowed the table from other projects. The origins of our table
is described in QTBUG-71423.
On Ubuntu the default theme is called Adwaita. Before
bd72950fbedc457fb997e99beff4767505ff5d8f, we would not find a
cursor for 'openhand' and would fall-back to QXcbCursor::
createNonStandardCursor(). Which was sub-optimal, because the
cursors created by the fall-back path don't look like the
themed ones. But the situation was worse after bd72950fb (hence
the regression) - the 'openhand' fall-back name 'fleur' is a
symbolic link to 'grabbing', so we would get into a situation
where Qt::OpenHandCursor displays the same as Qt::ClosedHandCursor.
This patch adds a correct fall-back name for 'openhand' on Adwaita,
which is 'grab'. 'grab' actually is a symbolic link to 'hand1', but
'hand1' with other theams is a pointing hand cursor, that is why we
use the symbolic link's name in this case.
The lookup table still appears to be incomplete when comparing e.g
with KWin. Eventually we need to revise the table and put in a common
place so it can be shared between X11 and Wayland, but is out-of-scope
for this patch (see QTBUG-71423).
Fixes: QTBUG-71296
Task-number: QTBUG-71423
Change-Id: I247ed4b346c2cd3fe1c7fd0440d3763e0033346b
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For this we can use whatever the current NSColor.gridColor contains.
While this is mostly needed by the 'Dark' appearance, it also affects
the 'Light' theme, since the color QCommonStyle returns is different.
Let's use whatever Apple suggests.
Task-number: QTBUG-71048
Change-Id: I084414bad546755e9e67792484fe4601826ed0fa
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|