summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
| | * xcb: Monitor XSETTINGS changeAlexander Volkov2018-07-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Register QXcbXSettings object as a listener of events received by XSETTINGS window. It was forgotten to be done in 0f31a5d91f13bd6a574bed8db894a7ebb2813292 which introduced QXcbXSettings. XSettings are used by QXcbCursor to get cursor theme. Without this change QXcbCursor can't react on theme change. Change-Id: I0fdd4c913b1d7a482b507c5a054b7052cac61666 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
| | * Show the toolbutton's menu in the right place on multiple screensAndy Shaw2018-07-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a screen is positioned to be above another, then the toolbutton menu could be shown on the wrong screen if it was deemed to not fit below the button the same screen. This ensures that it shows it on the right screen when there is sufficient space to do so. Change-Id: Ia626b28f74c1931904ff5b30cca17e63914d3c79 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| | * QSplashScreen: Pass the layout direction set on widget to the painterAndy Shaw2018-07-101-0/+1
| | | | | | | | | | | | | | | Change-Id: I6adc9f6fd77b6e9f9387393884e13285f4452018 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| | * Fix the copyright year of the qgrayraster.c dependencyNicolas Ettlin2018-07-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The copyright year of the qgrayraster.c dependency was incorrectly set to “2006-2015”, instead of 2000-2016 (as stated in the file’s header comments). This commit solves this issue. Task-number: QTBUG-69261 Change-Id: I307b6eabdd133fe4f8371b963577b59af8620838 Reviewed-by: hjk <hjk@qt.io>
| | * Doc: Extend description of Qt::Key_ClearPaul Wicking2018-07-101-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add information about to which physical key this virtual key code is commonly mapped. Task-number: QTBUG-68497 Change-Id: I467516ad0c731efb48b62fe64d723acd7c38f2b1 Reviewed-by: Nico Vertriest <nico.vertriest@qt.io>
| | * xcb: Move handling of RRScreenChangeNotify from QXcbScreen to QXcbVirtualDesktopAlexander Volkov2018-07-093-100/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This event relates to xcb_screen_t (virtual desktop), not to RandR crtcs, so move its processing to QXcbVirtualDesktop. Currently it triggers redundant calling of RRGetCrtcInfo (from QXcbScreen::updateGeometry()). It's called anyway after receiving RRCrtcChangeNotify, so just drop it. There is also a mess between the rotation of Screen and crtcs, obviously they should be processed separately. Task-number: QTBUG-65598 Change-Id: I124752ccbde03adb15e9ba592dd8b2d8d7fc35f4 Reviewed-by: Daniel Vrátil <dvratil@kde.org> Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
| | * Doc: Fix typo and grammar issuesPaul Wicking2018-07-091-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed typo in code snippet (s/string/strings/). Capitalized start of sentence in comments and added missing dots. Task-number: QTBUG-69331 Change-Id: I397d4f2082c859c014f776ff8e169b6a6cbe4e79 Reviewed-by: Nico Vertriest <nico.vertriest@qt.io>
| | * Fix regression in QPointF::operator==Allan Sandfeld Jensen2018-07-091-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Handle hard zero independently in each coordinate, otherwise hard zero is never equal to anything but itself. Task-number: QTBUG-69368 Change-Id: I8b1131472bb92efc706a04e0b067e2211a5ccb0c Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| | * macOS: Ensure all windows are created on a valid screenTor Arne Vestbø2018-07-051-13/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We rely on AppKit repositioning the window if the original position is not on any of the available screens. We do this by keeping the original position, but using the primary screen as reference. This doesn't work unless the window has a title bar, so in the corner case where the window has an invalid position, we apply the title bar style mask for a brief moment, so that AppKit will place the window correctly. Task-number: QTBUG-69221 Change-Id: If66cac36bf36f051570ba5854951ce4504fe771f Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| | * Fix Clang annoying, useless warning about using %llu when it wants %luThiago Macieira2018-07-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The types have the same size. So it's stupid for it to make the issue a warning... qkmsdevice.cpp:737:88: error: format specifies type 'unsigned long long' but the argument has type '__u64' (aka 'unsigned long') [-Werror,-Wformat] Change-Id: I117816bf0f5e469b8d34fffd153e640b62bef635 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * Add missing override keyword found by ClangThiago Macieira2018-07-051-1/+1
| | | | | | | | | | | | | | | | | | | | | qbsdfbscreen.h:57:10: error: 'initialize' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override] Change-Id: I117816bf0f5e469b8d34fffd153e649318d2fd7c Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
| | * Tidy-up after recent change: combine declaration with initializerEdward Welbourne2018-07-031-2/+1
| | | | | | | | | | | | | | | | | | Change-Id: I94420a3dfa30e4a2a4d8786621bea1dd9309bed8 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Ownership is unclear, so document it to avoid crashes for usersSune Vuorela2018-07-021-0/+4
| | | | | | | | | | | | | | | | | | Change-Id: I708b04fcdf4f118526317f3aea2401f5dafd2e87 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| | * QNX: Add the ability to disable EGL_KHR_surfaceless_context useJames McDonnell2018-07-013-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QML fails to draw when this is used on at least one jacinto6 platform. Works when it's disabled. Task-number: QTBUG-68227 Change-Id: I7b3c081d4d5a4fe22136f4bdd8ad1f34495cd94a Reviewed-by: Adam Treat <adam.treat@qt.io> Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
* | | SecureTransport - enable ALPN on macOSTimur Pocheptsov2018-07-171-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Initially macOS SDK 10.13 had a missing symbol (only a function declaration in a header), while iOS, tvOS and watchOS SDKs all had the required symbol. Now it appears more recent SDK for macOS also has the function we need and thus we enable ALPN on macOS (as a result 'h2' protocol can now be negotiated as required by RFC 7540). [ChangeLog][QtNetwork][QSslSocket] Enable ALPN (and thus HTTP/2 negotiation) in SecureTransport backend (macOS). Change-Id: I65bd8262a9571a5495d11f7f5a29d150334cd09c Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | Remove left-over commentFrederik Gladhorn2018-07-161-2/+0
| | | | | | | | | | | | | | | | | | | | | This is private API and the protected does hardly matter. Change-Id: I8e5c99db16d521d47eb9a5fb57a6519301d63a9b Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | | Fix typo as->hasFrederik Gladhorn2018-07-161-2/+2
|/ / | | | | | | | | | | | | Change-Id: I4f9033660c06686d7b499ec6d28be2c3b64353e2 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Martin Smith <martin.smith@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Update CLDR to version 33.1 (2018/June/20)Edward Welbourne2018-07-164-4434/+4535
| | | | | | | | | | | | | | | | | | | | | | | | Routine update in preparation for 5.12 * omitting Chakma because QLocale can't represent the zero digit, * de_DE no longer uses vorm./nachm. but AM/PM [ChangeLog][Third-party code] Updated CLDR to version 33.1 Task-number: QTBUG-67654 Change-Id: If20c47bb030abc3700b4f5a592152e617e2767c2 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | configure: group tests' includes properlyOswald Buddenhagen2018-07-161-19/+36
| | | | | | | | | | | | | | | | | | this puts the actually relevant includes into the correct field, which potentially allows early header resolution, and is generally just cleaner. Change-Id: I9db870442d22a329441eafe53098d18cdc91ce16 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | testlib: Move qtestsystem helpers to their respective modulesTor Arne Vestbø2018-07-1613-233/+555
| | | | | | | | | | | | | | | | | | | | | | | | | | Having the helpers in each respective module lets us implement the helpers using private APIs without forcing the test to add private dependencies. It also makes it easier to test Qt using a third party testing framework (for running the test suite), while still using the helpers for ensuring tests behave expectedly. Change-Id: I2a6ce24526ed345f3513548f11da05c7804c203f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Fix build without 'library'Frederik Gladhorn2018-07-161-2/+4
| | | | | | | | | | | | | | | | Without QT_CONFIG(library) qdbus_resolve_conditionally would be declared but not defined. Change-Id: Id90f6c736080e4c1609568b3fab1f464c0e46aa3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | QDateTime: fix some misnamed variables, s/local/zone/Edward Welbourne2018-07-161-7/+7
| | | | | | | | | | | | | | | | | | | | When I wrote zoneMSecsToEpochMSecs I seem to have copied names from localMSecsToEpochMSecs, that need a s/local/zone/ change to their names to make sense in this context. Flipped an if/else for clarity in the process. Change-Id: If2b288532b16d999f6ff0b9241e2dbcbc016b010 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Use context when connecting to functors in docsFrederik Gladhorn2018-07-161-1/+3
| | | | | | | | | | | | | | | | | | This is the introduction text to signals and slots and should rather show best practices. Using context is generally advisable to have life-time of connections under control. Change-Id: I213b13d978a38e13834cdbccf1bea06d53ba8320 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | QCocoaTheme: Fix system palettes in macOS 10.14Gabriel de Dietrich2018-07-141-14/+50
| | | | | | | | | | | | | | | | | | | | Some colors, like selectedMenuItemColor, won't return the right value anymore. Other can be updated to new system UI element colors for more accuracy. Task-number: QTBUG-68891 Change-Id: I781ef47791648f332208eb780361c60ffb6fcb96 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Doc: harmonize toDouble() and toFloat() for QString and QByteArrayAndre Hartmann2018-07-143-1/+34
| | | | | | | | | | Change-Id: Ic81461899c73c8a68bc3b8bdc1de4be4dd6bdf27 Reviewed-by: Martin Smith <martin.smith@qt.io>
* | QCborArray: add const_iterator overloads for insert/erase/extractThiago Macieira2018-07-142-0/+9
| | | | | | | | | | | | | | | | | | They return regular iterators, since the container has been modified. Change-Id: Id59bdd8f1a804b809e22fffd153f92d4460f9b76 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QCborMap: make take() & remove() efficient if the item isn't thereThiago Macieira2018-07-141-8/+8
| | | | | | | | | | | | | | | | | | By using constFind(), we won't detach if the item isn't there. Both extract() and erase() can take const_iterators. Change-Id: Id59bdd8f1a804b809e22fffd153f92989ef84644 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | CBOR: Use "noexcept" directlyThiago Macieira2018-07-148-49/+49
| | | | | | | | | | | | | | | | | | | | | | All supported compilers support it. Doing this just for the new API. We should do it throughout Qt, but only if it won't interfere with the header review. Change-Id: Id59bdd8f1a804b809e22fffd153f9254688e5152 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | QCborValue: Silence Coverity warning about null-pointer dereferenceThiago Macieira2018-07-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | It's a false positive, since we've checked that the item HasByteData. But it's cheap to rewrite so the warning is silenced. >>> CID 190741: Null pointer dereferences (NULL_RETURNS) >>> Dereferencing a null pointer "this->byteData(idx)". Change-Id: If48c5c2e920c433298f1fffd153f7534be42a30b Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | QCborValue/QDebug: restore decimal state after hexThiago Macieira2018-07-141-1/+1
| | | | | | | | | | | | | | | | | | | | Found by Coverity: >>> CID 190746: API usage errors (STREAM_FORMAT_STATE) >>> Changing format state of stream "dbg" for category basefield without later restoring it. Change-Id: If48c5c2e920c433298f1fffd153f74f9bbe7ef29 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Make sure there's an event dispatcher in QWindowsRemovableDriveListenerThiago Macieira2018-07-141-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to add the listener, we need to hook into the internal HWND. Creating the QThreadData (thus adopting the thread) and the event dispatcher are ok because they would happen anyway. QFileSystemWatcher works only with the Qt event loop. [ChangeLog][QtCore][QFileSystemWatcher] Fixed a bug that caused addPaths() to crash on Windows if adding a path to be watched on removeable storage, if that addPaths() was called on a thread not created by QThread and no QEventLoop has been created yet. Task-number: QTBUG-69320 Change-Id: If48c5c2e920c433298f1fffd153ee20bea56c62f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | QThread: Centralize the creation of the event dispatcherThiago Macieira2018-07-146-20/+22
| | | | | | | | | | | | | | | | | | | | | | In some places we call startingUp(), in others we don't. It's probably ok for those that have just created an object of a given class, which knows whether the virtual call is necessary or not. But for the generic case, we do call it. Change-Id: If48c5c2e920c433298f1fffd153ee1cc75703204 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Fix Windows+ICU buildThiago Macieira2018-07-141-12/+13
| | | | | | | | | | | | | | qstring.cpp(6655): error C2065: 'lhs': undeclared identifier Change-Id: Id59bdd8f1a804b809e22fffd15405ed7607bdaca Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | SecureTransport - cleanup the code a bitTimur Pocheptsov2018-07-141-35/+30
| | | | | | | | | | | | | | | | | | | | No need in ugly macro ioErr and if-ery, no need in generic noErr. SecureTransport has its own, more specific error codes: errSecIO and errSecSuccess (which have the equivalent values). Change-Id: Ifd99fbcbee290fe27caa0c258923f4527c047ba8 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Android: Support mouse hoverMichael Dippold2018-07-132-20/+34
| | | | | | | | | | | | | | | | | | Android supports hover events through the generic motion event. Routed mouse events to specific mouse handler. Task-number: QTBUG-42799 Change-Id: Iee17c71c09d84f52235e66ec08c65ffa30ec9cd9 Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* | QStringView: Add compare() member functionFriedemann Kleint2018-07-132-0/+17
| | | | | | | | | | | | | | | | | | | | There was no public API for doing case-insensitive comparisons of QStringView. Task-number: QTBUG-69389 Change-Id: I1b021eefec35e135b97fb87704c8dc137232d83d Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | macOS: Add logging when applying new window stateTor Arne Vestbø2018-07-131-0/+2
| | | | | | | | | | Change-Id: Ibbd38b27b9251a0a4a9fd4224529e2131e167b89 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | macOS: Group window state handling in QCocoaWindowTor Arne Vestbø2018-07-131-220/+224
| | | | | | | | | | | | | | | | The flow of changing the window state, especially for fullscreen, is complicated enough that it helps to keep the code together. Change-Id: I216ff95c03fc149f42a0199f7c3bc4fb04ff5e6e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Extend the feature 'dtls' to handle missing DTLS support in OpenSSLTimur Pocheptsov2018-07-1313-30/+118
| | | | | | | | | | | | | | | | | | | | | | | | OpenSSL has 'no-dtls' configure option (or can be too ancient to properly support it), we shall respect such builds. This patch extends configure.json with a 'dtls' test and adds protection against linkage/compile-time issues in the QtNetwork's code. Change-Id: I0c0dd94f5c226115cee4285b82c83aa546555aea Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | OpenSSL: remove unused symbols/declarationsTimur Pocheptsov2018-07-133-15/+0
| | | | | | | | | | | | | | | | | | | | These are leftovers from the prototype version of DTLS connection and no code is using them now. Change-Id: I3970a56303a59ce95e9c22344fac89e89f6559c8 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Add Windows Pointer Input Messages supportAndre de la Rocha2018-07-1211-65/+854
| | | | | | | | | | | | | | | | | | | | Replaces the handling of tablet/touchscreen/touchpad/mouse input with a unified implementation based on the Windows Pointer Input Messages added to Windows 8. The legacy implementation is still used for Windows 7. Task-number: QTBUG-60437 Change-Id: I0a0f48ee9d5365f84ba528aa04c6ab1fe4253c50 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | macOS: Correctly restart display-link when window is moved between screensTor Arne Vestbø2018-07-121-1/+3
| | | | | | | | | | Change-Id: I4b9cdd3d259965f9094ef1bbbca3ebed8df18443 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | QSslSocketBackendPrivate - avoid recursion while handing errorsTimur Pocheptsov2018-07-122-7/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The logic seems to be simple - if client code on error signal tries to close TLS socket and this socket has buffered data, it calls 'flush' and 'transmit' or even 'startHandshake' as a result, which in turn will set and emit error again. To auto- test this, we initiate a handshake with pre-shared key hint on a server side and both client/server sockets incorrectly configured (missing PSK signals). We also do early write into the client socket to make sure it has some data buffered by the moment we call 'close'. Task-number: QTBUG-68089 Task-number: QTBUG-56476 Change-Id: I6ba6435bd572ad85d9209c4c81774a397081b34f Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Add QStyle::SH_SpinBox_StepModifier style hintNathan Collins2018-07-124-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch allows the developer to pick which keyboard modifier increases the number of steps a QAbstractSpinBox takes when the user interacts with it. The modifier can be either Qt::ControlModifier (default), Qt::ShiftModifier or Qt::NoModifier. Qt::NoModifier disables the step modifier. Note that on macOS, Control corresponds to the Command key. Holding the modifier increases the step rate when: - scrolling; - pressing the up/down keys; - pressing the spin box up/down buttons. [ChangeLog][QtWidgets][QStyle] QStyle::SH_SpinBox_StepModifier allows the developer to pick which keyboard modifier increases the number of steps a QAbstractSpinBox takes for the following interactions: scrolling, up/down keyboard keys and the spin box buttons. The Qt::ShiftModifier can now be used, or the feature can be disabled using Qt::NoModifier. Previously, only Qt::ControlModifier could be used as the modifier. Change-Id: Ib5518127e86a8f67798a9a1d6e860c6e35896e6f Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Fix build with '-no-feature-action' configurationValentin Fokin2018-07-126-0/+28
| | | | | | | | | | | | | | Task-number: QTBUG-68353 Change-Id: Ia949e4a72a363df5fba86504e5f7e3ce8a3ad347 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Allow loading of empty translation filesKai Koehne2018-07-121-6/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not return false for loading an empty .qm file - that is, a valid file without any translations. We're already shipping empty .qm files for English translations of Qt since a while, mainly as a stop for the QTranslator::load(const QLocale &, ...) logic. Note that QCoreApplication::installTranslator() will still return false for an empty translation file - which is ok, because it arguably does not make much sense to install it. [ChangeLog][QtCore][QTranslator] It is now possible to load qm files without any translations. This is particularly useful for the language the untranslated strings are written in; logic to load translations can now handle the source language like all other languages. Task-number: QTBUG-31031 Change-Id: Ibcb84aa755538cb2fa21b14f8635295a58440bbb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | xcb: Remove unused QXcbNativeInterface::locateSystemTray()Alexander Volkov2018-07-102-21/+0
| | | | | | | | | | | | | | It was forgotten to be removed in 8f9a72c39df46e94b38dd804b7cdffaed9f340b9. Change-Id: I028bea448a2c99cdbdfa0db07de2b1fcd50c93b2 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
* | QSystemTrayIcon/X11: Move platform-specific calls to the xcb pluginAlexander Volkov2018-07-1013-311/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Detect the tray icon window in the platform plugin by the object name. This way we don't need QXcbWindowFunctions::requestSystemTrayWindowDockIdentifier(). - Get rid of unused calls QXcbIntegrationFunctions::xEmbedSystemTrayVisualHasAlphaChannel() and QXcbWindowFunctions::setParentRelativeBackPixmap(). - Mark the tray icon window as embedded to be able to get the correct result from QWindow::mapToGlobal(). It allows to drop QXcbWindowFunctions::systemTrayWindowGlobalGeometry(). This change allows to remove the intermediate level between the QSystemTrayIconSys widget and the xcb plugin. The code looks clearer. Change-Id: I7d067131287a6dec162b36f0bddc8cb518aaa38c Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
* | xcb: Fix artifacts on the tray background with lock screensAlexander Volkov2018-07-108-71/+261
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the current method of painting the tray icon with 24 bpp visuals we grab the window's background once on the first show and then use it in all paint operations. This leads to a wrong background if an application shows the system tray icon when the lock screen is active. We can avoid this by painting with XRender when it's available. This change introduces QXcbSystemTrayBackingStore and moves the selection of a suitable painting method from QSystemTrayIconSys into it. In addition the visual for the window is selected according to the system tray specification and the platform window for the tray icon is created without needless OpenGL and Vulkan support. Task-number: QTBUG-55540 Change-Id: Ib3ca42bc02dcbdd4ccfe5d6e23f870ef22f0d25a Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
* | Support interactive authorization flag in DBusMessageKai Uwe Broulik2018-07-104-1/+104
| | | | | | | | | | | | | | | | This flag was introduced to serve as a replacement for a dedicated "interactive" boolean argument in method calls guarded by Polkit. Change-Id: Ida91c9872e70f8ca6672563d0ca6642f38c498ab Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>