summaryrefslogtreecommitdiffstats
path: root/src/platformsupport
Commit message (Collapse)AuthorAgeFilesLines
* Synchronize QInputDeviceManager touch device count with QTouchDeviceRomain Pokrzywka2015-09-234-32/+100
| | | | | | | | | | | | This ensures that the values and signals reported by QInputDeviceManager for touch devices always have corresponding entries in the list returned by QTouchDevice::devices(). It also adds proper QTouchDevice unregistration when the underlying input device gets removed by the evdevtouch QPA plugin. Change-Id: I7bdf2f7435c775d15bddce8ba1e731afdc1d948a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Clean up some Apple-related includes and declarations.Jake Petroules2015-09-221-2/+2
| | | | | Change-Id: I92db9691c2243ae72ecd4e11dd4640afaf4bf822 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Fix evdevtouch coordinates when high DPI scaling is in useMitch Curtis2015-09-211-2/+4
| | | | | | | | Report coordinates in the native coordinate system. Change-Id: I1bfc495dd02e9a6033707bccb11066732d6cc0da Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* CoreText: Respect Qt::AA_Use96Dpi flag when creating CT fontsTor Arne Vestbø2015-09-091-10/+6
| | | | | | | | | | | | | | | | The pixel size passed into QCoreTextFontDatabase::fontEngine() has already been scaled to take the destination DPI into account. In the normal case the destination DPI is the same as the screen's logical DPI, 72, and we end up with the pixel size being equal to the point size. But when the Qt::AA_Use96Dpi flag has been set, e.g. when running tests, the pixel size is larger than the point size, and we need to pass this information to CoreText, otherwise we end up with clipped text rendering. This was evident when looking at the lancelot baselines for OS X, which are produced using QTestLib, and hence run with Qt::AA_Use96Dpi set. Change-Id: Ib0f720bb318b2dc437172a6b712675e3dfe3f7ac Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Fix crash on exit caused by QStringLiteralsThiago Macieira2015-09-051-3/+6
| | | | | | | | | | | These QStringLiterals are passed to QtDBus, which records them. They will be used even after the libQt5XcbQpa.so library is unloaded, which causes a crash on exit, one that even valgrind gets lost on. Change-Id: I7de033f80b0e4431b7f1ffff13fc4888e45a346a Reviewed-by: Albert Astals Cid <aacid@kde.org> Reviewed-by: Richard J. Moore <rich@kde.org> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
* Move min left/right bearing calculations to QFontEngine baseclassTor Arne Vestbø2015-09-022-12/+0
| | | | | | | | | | | | | | | | The logic used in the FreeType font engine can be generalized and move to the QFontEngine baseclass. This allows the CoreText font engine to correctly report the minimum left/right bearings, which decreases the chance that an optimization in QTextLayout's line breaking algorithm will produce wrong results. The calculation of left and right bearing has been moved to the glyph_metrics_t type to reduce code duplication. This allows us to use the with and height of the bounding box to determine if the glyph has any contours. Change-Id: I864697d3f31ed56f22f04666199b6c5023c5e585 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2015-08-261-1/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/doc/snippets/code/doc_src_qmake-manual.pro qmake/doc/src/qmake-manual.qdoc src/corelib/io/qstorageinfo_unix.cpp src/corelib/tools/qbytearray.cpp src/widgets/kernel/qwidgetwindow.cpp tests/auto/corelib/io/qprocess/tst_qprocess.cpp tests/auto/corelib/mimetypes/qmimedatabase/tst_qmimedatabase.cpp tests/auto/network/access/qnetworkreply/BLACKLIST Change-Id: I9efcd7e1cce1c394eed425c43aa6fce7d2edf31c
| * egl: Do not do any further ops when context creation failsLaszlo Agocs2015-08-181-1/+2
| | | | | | | | | | Change-Id: I54bf4a720e8d414d310ecdb88f08a9705023aef9 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* | Adding plasma5 support for QKdeThemeStanislav Baiduzhyi2015-08-261-28/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Plasma 5 uses the same config files structure, but follows XDG spec instead of storing them in custom locations. Added '5' to supported KDE session version, and passing it to other methods because 'kdeglobals' is located directly under XDG config dirs and not deeper inside. [ChangeLog][QtPlatformSupport][QKdeTheme] adding plasma5 support Change-Id: I5f1d8d8f8d02449328db3ffc391ad23506cd67c7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: David Faure <david.faure@kdab.com>
* | libinput: Fix key mappingLaszlo Agocs2015-08-211-4/+7
| | | | | | | | | | | | | | | | | | | | Prevent generating 2 character long 'text' strings with some garbage as second char. This matches how xcb works. Change-Id: I88a248a89c80b0e100c1c4871cfab4f2c287535e Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* | libinput: Rename logging category to prevent clashesLaszlo Agocs2015-08-182-3/+9
| | | | | | | | | | | | | | | | Anything linking to platformsupport may use the same name so use something less generic. Change-Id: I657dd5dfcad9cf22585fcb17eda62deaf26ea6c4 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* | OSX FreeType: Add support for sub pixel font rendering.Sérgio Martins2015-08-141-2/+12
| | | | | | | | | | | | Task-number: QTBUG-42839 Change-Id: Iea4552d766936a55fd177e4287591d2715202d9c Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* | OSX FreeType: respect hinting preferenceAndreas Hartmetz2015-08-141-0/+1
| | | | | | | | | | | | Task-number: QTBUG-42839 Change-Id: I2bccd7bda74ccbbb752181f1caea7ecf4672c01c Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* | Move setter for QFont::HintingPreference to QFontEngineFT.Andreas Hartmetz2015-08-141-20/+2
| | | | | | | | | | | | | | Preparation for also using it from QCoreTextFontDatabase. Change-Id: I9cbef59c21f343a88a5cb3fdbee1ed4791d7a36e Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* | OSX: Add initial FreeType supportMathias Hasselmann2015-08-113-6/+137
| | | | | | | | | | | | | | | | | | This permits text rendering consistent with other FreeType enabled platforms, like Windows and Linux. Task-number: QTBUG-42839 Change-Id: I8c99bcaa3fb07c16e935a0c3705af467bc3da584 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Merge remote-tracking branch 'origin/5.5' into devFrederik Gladhorn2015-08-062-28/+15
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/global/qt-cpp-defines.qdocconf src/3rdparty/forkfd/forkfd.c src/corelib/codecs/qtextcodec.cpp src/corelib/kernel/qmetatype.cpp src/corelib/tools/qset.qdoc src/gui/accessible/qaccessible.cpp src/gui/image/qpixmapcache.cpp src/opengl/qgl.cpp src/tools/qdoc/generator.cpp src/widgets/kernel/qwidget.cpp tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp Change-Id: I4fbe1fa756a54c6843aa75f4ef70a1069ba7b085
| * [QBasicFontDatabase] Minor code clean-upKonstantin Ritt2015-07-312-7/+3
| | | | | | | | | | | | | | We do not use supportedWritingSystems anymore -> simply remove. Change-Id: I8c8b4b0614bf396c943d810c396d18e2d0201eff Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| * Micro optimization to Basic/Android FDB::populateFontDatabase()Konstantin Ritt2015-07-311-11/+12
| | | | | | | | | | | | | | | | | | Re-use QDir to check if dir exists (QDir::exists() also returns false if path specifies a file), and use somewhat faster QDir::entryInfoList() to iterate the font files. Change-Id: Iea3a6e5548928a01db71037425adf170cb722151 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| * Default implementation for QPlatformFontDatabase::fallbacksForFamily()Konstantin Ritt2015-07-312-10/+0
| | | | | | | | | | | | | | | | | | ...mainly for platforms that do not provide a native/unified way to obtain system-defined font fallbacks list (ie !CoreText && !FontConfig). Change-Id: I23c5589d79ddecb6311ccc52ec8b29977f06d408 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
* | Make EGL context init work when msaa is requested but there's no surfacelessLaszlo Agocs2015-08-042-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To query back certain things, like the actual OpenGL version from the created context, the eglconvenience code makes the new context current either without a surface (in case EGL_KHR_surfaceless_context is supported) or with a pbuffer (or other platform specific equivalent). There is no problem with the former. The latter can however fail when samples are requested for the context and there are no matching pbuffer configs. The result is a pbuffer without multisampling, which could lead to a BAD_MATCH. This is visible on GLES 2.0 devices like the Beaglebone. The solution is to fall back to creating a new, temporary context with a config matching the pbuffer's whenever the makeCurrent attempt fails. Change-Id: Icd9f3383f2cad36dd5b60dead655328b7b9af658 Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* | Turn off font hinting when active highdpi scalingPaul Olav Tvete2015-07-301-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Font hinting is done in the Qt coordinate system, and ends up looking very wrong if the painter is scaled. Now that high-DPI scaling is cross platform, we can move the responsibility for turning off hinting out of the platform plugin. Note that we cannot change our minds later, since Qt does not have a reference to all objects that perform text layout. Therefore, we turn off hinting if and only if there is at least one screen with scaling enabled at application startup. If this is not good enough for you, you should disable scaling and support resolution independence manually. Task-number: QTBUG-46615 Change-Id: I15fa09aa1e952cf3abeb2d8c26f13ad1f1cbf9bf Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* | Fix creation of QPlatformTheme on UNIX platforms.Friedemann Kleint2015-07-221-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Ubuntu 14.04.1 LTS, a file /etc/profile.d/appmenu-qt5.sh appeared, exporting QT_QPA_PLATFORMTHEME=appmenu-qt5 (application menu theme plugin). This caused QGenericUnixTheme::createUnixTheme() to return an instance of QGenericUnixTheme by theme name instead of the appropriate QKdeTheme, QGnomeTheme. Fix this by always appending the generic theme name to the list of available themes and returning it only if the name matches. Qt 5 applications will now appear correctly themed on Ubuntu, including theme icons. Change-Id: I68fcd80a620b74e2af73e938253dba9933816336 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* | platformsupport/dbustray: mark some types as movableMarc Mutz2015-07-191-0/+2
| | | | | | | | | | | | | | At least on is already held in QVector. Change-Id: Ifa29d924315a9d397bd591ae548f199dcefa03a4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | platformsupport/dbusmenu: fix uses of inefficient QListsMarc Mutz2015-07-191-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | These types are larger than a void*, so holding them in QLists is needlessly inefficient. Worse, the code could come to depend on the fragile property of (inefficient) QLists that references to elements therein never are invalidated. Fix by marking them movable, and holding in a QVector instead. Change-Id: I74b2ce327d6aee60e2cc3463ce09453a4305bba7 Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add a way for auxiliary threads to handle events without CoreAppThiago Macieira2015-07-184-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Long-lived threads started by Qt itself can now receive events even if QCoreApplication hasn't been created. This is required in all threads we start that will handle events, unless we're sure that the thread will exit before the global application object begins destruction. Otherwise, those threads will have race conditions dealing with the event delivery system trying to call the QCoreApplication::notify() virtual while the object is being destroyed. Change-Id: I27eaacb532114dd188c4ffff13d4ad2a4bb443e6 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Merge remote-tracking branch 'origin/5.5' into HEADSimon Hausmann2015-07-171-8/+14
|\| | | | | | | | | | | | | Conflicts: src/plugins/platforms/windows/qwindowsopengltester.cpp Change-Id: Ia7abeba9395ccf84e2fa81b91a5725a86dedb9fe
| * Map Shift+Tab to Shift+Backtab in evdevkeyboardLaszlo Agocs2015-07-171-8/+14
| | | | | | | | | | | | | | | | | | | | | | This mapping has to be done manually, like we do on Windows for example. libinput maps through xkbcommon, like xcb, so it is already correct. Task-number: QTBUG-46845 Change-Id: I61f3f1160e2581aae2ef43cc260f191f6d344fec Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
* | Move eglfs-only parts back from eglconvenienceLaszlo Agocs2015-07-169-1507/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The integration, screen, window and cursor classes were split in Qt 5.3 under a plan of sharing these between eglfs, the Android port and potentially other future plugins. This never materialized. Maintaining the artificial split is getting difficult and is prone to errors. Therefore it is time to merge back these base classes into eglfs. The result is cleaner, smaller, and potentially better performing code. eglconvenience is now restored to be a collection of convenience classes instead of platform plugin bits. Change-Id: I75c6ad876ef66a1a0c5b39c1c307f928d2ed47d4 Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
* | platformsupport/linuxaccessibility: fix uses of inefficient QListsMarc Mutz2015-07-083-14/+23
| | | | | | | | | | | | | | | | | | | | | | | | These types are larger than a void*, so holding them in QLists is needlessly inefficient. Worse, the code could come to depend on the fragile property of (inefficient) QLists that references to elements therein never are invalidated. Fix by marking them movable, and holding in a QVector instead. Change-Id: I3d5cf78c1597bd1b743ed3692aaa5e2e750a85f9 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-07-013-41/+52
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.cpp src/corelib/global/qglobal.h src/corelib/global/qsysinfo.h src/corelib/global/qsystemdetection.h src/corelib/kernel/qobjectdefs.h src/plugins/plugins.pro tests/auto/widgets/itemviews/qlistview/qlistview.pro Change-Id: Ib55aa79d707c4c1453fb9d697f6cf92211ed665c
| * Add missing Q_DECL_OVERRIDE in Cocoa specific header filesGabriel de Dietrich2015-06-242-40/+40
| | | | | | | | | | | | Change-Id: I91831390e9e0d97ab28f0e34ca0573fb2c84e954 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Disable surfaceless QOffscreenSurface with MesaLaszlo Agocs2015-06-221-1/+12
| | | | | | | | | | | | | | | | | | | | | | With Intel at least Mesa is unable to handle surfaceless contexts in glReadPixels(). This cripples QOpenGLFramebufferObject::toImage() and potentially others too. Task-number: QTBUG-46605 Change-Id: I07c1015eca67b8add14496ec0df0e0c17ac3d896 Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
* | Use QVector::reserve() all over the place.Sérgio Martins2015-06-292-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | Reduces internal memory fragmentation. The search criteria was: QVector::append(), QVector::push_back(), QVector::operator<<() and QVector::operator+=() calls inside for, do and while loops. Statements inside ifs and out of loops weren't considered. Change-Id: Ie5aaf3cdfac938994e6e5dfa5f51de501ed79a0c Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Use QList::reserve(), reduces reallocationsSérgio Martins2015-06-272-2/+7
| | | | | | | | | | Change-Id: I9f218bdd65a97ad9c867b695f3ba27ab64a54d2a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | evdevtouch driver: fix indentation.Andreas Hartmetz2015-06-121-5/+5
| | | | | | | | | | | | Change-Id: If9ef172bda6488c4516a5e0577d6b233bd2ed1ad Reviewed-by: Mikko Harju <mikko.harju@jolla.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devSimon Hausmann2015-06-034-7/+40
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qnamespace.qdoc src/corelib/io/qwindowspipereader.cpp src/corelib/io/qwindowspipereader_p.h src/corelib/statemachine/qstatemachine.cpp src/corelib/statemachine/qstatemachine_p.h src/plugins/platforms/xcb/qxcbconnection.h tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp tests/auto/tools/qmake/tst_qmake.cpp tests/manual/touch/main.cpp Change-Id: I917d694890e79ee3da7d65134b5b085e23e0dd62
| * Avoid QWidget dependency in QtGuiLaszlo Agocs2015-06-011-1/+1
| | | | | | | | | | | | | | | | It's not a real dependency as all we need is to store a pointer, but better not to use the name QWidget at all. Change-Id: I30ef1dd44ac7e42c1b9c84675f94088b8c516076 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
| * Clip QOpenGLWidget and QQuickWidget correctlyLaszlo Agocs2015-06-012-5/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | Introduce support for the widgets' clipRect(). Right now render-to-texture widgets in scroll areas placed close to each other result in broken (non-existent) clipping. Similarly, stack-on-top widgets fail to clip when placed inside a scroll area. This is now corrected and the qopenglwidget example is enhanced to utilize a scroll area. Task-number: QTBUG-45860 Change-Id: I859a63d61a50d64ba9e87244f83c5969dce12337 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
| * D-Bus system tray icon: submenus can be created after context menuShawn Rutledge2015-05-212-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QMenuPrivate::init() calls QPlatformTheme::createPlatformMenu() to create a platform menu, but on Linux, that returns null for now. QSystemTrayIcon::setContextMenu() results in recursive calls to QSystemTrayIconPrivate::addPlatformMenu() which then calls QDBusTrayIcon::createMenu() for the context menu and each submenu. However if a submenu is added afterwards, a corresponding platform menu is not immediately created. Now copyActionToPlatformItem() will detect and create the missing platform submenu, by calling a new method: DBusPlatformMenu::createSubMenu(). This is because there is no way of knowing that it's a tray-specific context menu (which is so far the only case in which we use DBusPlatformMenu). So, QPlatformMenu::createSubMenu() needs to exist as a new QPA interface for this use case. Task-number: QTBUG-45803 Change-Id: Ib319e873082196515ea0580d70d069099cf2c175 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* | Add shared implementation of a NSAutoreleasePool wrapper to qglobalTor Arne Vestbø2015-05-271-13/+1
| | | | | | | | | | | | | | | | | | | | | | We have at least 5 different (but equal) implementations of a wrapper in Qt, and some code uses explicit NSAutoreleasePools. Having a shared implementation lets us clean up things a bit and makes it easier to reason about which pools are actually needed. Change-Id: I2fd8eefc3ae7308595ef9899b7820206268362a5 Reviewed-by: Tim Blechmann <tim@klingt.org> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-227-64/+230
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/statemachine/qstatemachine.cpp src/corelib/statemachine/qstatemachine_p.h src/gui/painting/qdrawhelper.cpp src/plugins/platforms/xcb/qxcbnativeinterface.cpp src/plugins/platforms/xcb/qxcbwindow.cpp src/plugins/platforms/xcb/qxcbwindow.h src/testlib/qtestblacklist.cpp src/tools/qdoc/node.cpp src/tools/qdoc/node.h tests/auto/gui/painting/qcolor/tst_qcolor.cpp Change-Id: I6c78b7b162001712d5774293f501b06b4ff32684
| * Avoid signed-unsigned warning on OS XLaszlo Agocs2015-04-161-1/+1
| | | | | | | | | | Change-Id: I61db35a367b1a96b13af08a5102d6b2a55c68517 Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
| * evdevtouch: Add hotplug supportLaszlo Agocs2015-04-096-63/+229
| | | | | | | | | | | | | | | | | | | | | | Follow the exact same structure as evdevmouse and keyboard. We must do monitoring via device discovery just like we do for keyboards and mice. Otherwise the usage of touchscreens that connect via USB or can be turned on/off independently from the board becomes troublesome. Change-Id: I2de3b519e8d617b0612e5df486e481bbc09b9c8c Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-062-3/+3
|\| | | | | | | Change-Id: If9fd98525b6b4ca07e5e006fc98bf372a73b8a21
| * Fix a few clang warningAllan Sandfeld Jensen2015-04-012-3/+3
| | | | | | | | | | | | | | Clang likes to complain when override is not used consistently. Change-Id: I0fad18a7c3eb068aa1b6786243969aef53d1f42c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-04-0110-64/+86
|\| | | | | | | | | | | | | | | Conflicts: src/testlib/qtestblacklist.cpp src/widgets/accessible/qaccessiblewidgets.cpp Change-Id: If032adb9296428f62384ed835dbf41ee7a0b886c
| * D-Bus system tray: emit activated on middle and right clickShawn Rutledge2015-03-313-20/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ActivationReason provides the type of click. If the icon has a D-Bus menu, then QStatusNotifierItemAdaptor::ContextMenu will not be called: the tray is responsible for opening the context menu. But an application can alternatively do something different with a right-click by not providing a menu, and instead handling the QSystemTrayIcon::activated signal with the Context reason. Simplified the code by emitting the signal directly in QStatusNotifierItemAdaptor. Task-number: QTBUG-44929 Change-Id: Ia062a9a2fd99554418d58a1ff6ecd4e862035198 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
| * D-Bus system tray: emit QPlatformSystemTrayIcon::activated on clickShawn Rutledge2015-03-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | This was incomplete functionality in 38abd653774aa0b3c5cdfd9a8b78619605230726 Task-number: QTBUG-44929 Change-Id: I7120a3de011c5df57ef5a9fbdfe056eee42d572b Reviewed-by: Marco Martin <mart@kde.org> Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| * D-Bus tray icon menus: support submenusShawn Rutledge2015-03-305-26/+36
| | | | | | | | | | | | | | | | | | In this case GetLayout will be called with the D-Bus menu ID of the menu item which contains the submenu. Task-number: QTBUG-45191 Change-Id: Ia8108272910eac10f040db5865ec4e070da80edb Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
| * Build bundled freetype as qt_helper_libKonstantin Ritt2015-03-271-6/+1
| | | | | | | | | | | | | | | | And thus do not disable warnings for the whole module when configured with -qt-freetype. Change-Id: I601a7c2990c8e3377531a28078db73800c138ec1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>