summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
Commit message (Collapse)AuthorAgeFilesLines
* Remove all code paths related to unsupported Apple platforms.Jake Petroules2016-06-041-81/+9
| | | | | | | | | Now that the minimum deployment target (and thus SDK) is 10.9 for OS X and 7.0 for iOS, all code paths affecting platform versions lower than the aforementioned are removed. Change-Id: Id985c7259c4ac069319d88f2c29c9559ae9e8641 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Merge remote-tracking branch 'origin/5.6' into devLiang Qi2016-01-211-1/+1
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qiodevice_p.h src/corelib/kernel/qvariant_p.h src/corelib/tools/qsimd.cpp src/gui/kernel/qguiapplication.cpp tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp Change-Id: I742a093cbb231b282b43e463ec67173e0d29f57a
| * OS X: Ensure system tray icon is prepared even when menu bar is hiddenTor Arne Vestbø2016-01-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On OS X 10.11 (El Capitan) the system menu bar can be automatically hidden, in which case the menu bar height is reported to be 0 when using the menuBarHeight API. This resulted in failing to prepare an image for the system tray icon item, making the tray item "invisible". Instead we now use the [[NSStatusBar systemStatusBar] thickness] API, which returns the correct height regardless of the menu bar being hidden or not. Task-number: QTBUG-48960 Change-Id: I208fb8df13754964a6f254cadfbff06dd56c6bab Reviewed-by: Markus Goetz (Woboq GmbH) <markus@woboq.com> Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
* | Updated license headersJani Heikkinen2016-01-151-14/+20
|/ | | | | | | | | | | From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new LGPL header instead of LGPL21 one (in those files which will be under LGPL v3) Change-Id: I046ec3e47b1876cd7b4b0353a576b352e3a946d9 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Add ability for QIcons to be marked as template images.James Turner2015-07-091-0/+1
| | | | | | | | | | | | | | | | This allows end users to create QSystemTrayIcons that are properly displayed as monochrome images on OS X, which is especially important on Yosemite and above when Dark Mode is turned on. [ChangeLog][QtGui][QIcon] Add ability for QIcons to be marked as template images. This allows end users to create QSystemTrayIcons that are properly displayed as monochrome images on OS X, which is especially important on Yosemite and above when Dark Mode is turned on. Task-number: QTBUG-42109 Change-Id: I095fb71355ffa572d0abb4769341f68b89b877c4 Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
* Merge remote-tracking branch 'origin/5.5' into devLiang Qi2015-07-011-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | 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
| * QNSImageView - remove observer before deallocTimur Pocheptsov2015-06-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | It can happen that NSMenuDidEndTrackingNotification comes after our imageCell QNSImageView was deallocated (for example, mouse button is not released yet when dealloc called). Remove soon-to-be-deallocated observer. Change-Id: Ib155cc5f0b884c6b1fed0f986d12599096b582c6 Task-number: QTBUG-46425 Reviewed-by: Thierry Bastian <thierryb@filewave.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* | Remove exec bits from files that should not be executableDmitry Shachnev2015-06-071-0/+0
|/ | | | | | | Change-Id: I66f49c6db82eadc3b11cc9b1cf01375e9596a8e6 Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* Merge remote-tracking branch 'origin/5.4' into 5.5Liang Qi2015-03-311-13/+6
|\ | | | | | | | | | | | | | | | | Conflicts: mkspecs/android-g++/qmake.conf qmake/generators/unix/unixmake2.cpp src/gui/image/qimage_conversions.cpp Change-Id: Ib76264b8c2d29a0228438ec02bd97d4b97545be0
| * OSX Fix disapearing tray iconJocelyn Turcotte2015-03-181-14/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It would happen together with an error: QPainter::begin: Paint device returned engine == 0 and would be caused by the size provided to QIcon::pixmap being empty, itself caused by the availableSizes list being empty for the Selected mode. This bug was most often hidden by the fact that the Selected icon mode was not triggered properly since we usually only set menuVisible after calling updateIcon, and most of the time when it did, we would overwrite it right after with a Normal mode icon. Fix the issue by disabling the broken feature completely since the default Selected icon is grayed out while tray icons are now usually black (or white when selected). To support the dark menu bar mode on 10.10 we'll need to use NSImage's setTemplate anyway and that knowing in advance if we can invert the colors ourselves would also better solve the menuVisible usecase. Task-number: QTBUG-42910 Change-Id: If9ec9659af28ecceb841bfc2f11721e6029fe891 Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
| * Cocoa: Fix systray SVG icons.Morten Johan Sørvig2015-03-111-0/+4
| | | | | | | | | | | | | | | | Regression caused by f3699510. Task-number: QTBUG-44686 Change-Id: I546422a67d4da29fac196025b09bddcb45c1b641 Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
* | Fixed license headersJani Heikkinen2015-02-171-1/+1
| | | | | | | | | | Change-Id: Ibebe1318d1c2de97601aa07269705c87737083ee Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Pass params of shareable type by const-ref rather than by valueKonstantin Ritt2015-02-131-1/+1
| | | | | | | | | | | | | | | | ...where passing them by value was not intentional. Change-Id: Ifd5036d57b41fddeeacfbd3f5890881605b80647 Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Update copyright headersJani Heikkinen2015-02-111-22/+14
|/ | | | | | | | | | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Outdated header.LGPL removed (use header.LGPL21 instead) Old header.LGPL3 renamed to header.LGPL3-COMM to match actual licensing combination. New header.LGPL-COMM taken in the use file which were using old header.LGPL3 (src/plugins/platforms/android/extract.cpp) Added new header.LGPL3 containing Commercial + LGPLv3 + GPLv2 license combination Change-Id: I6f49b819a8a20cc4f88b794a8f6726d975e8ffbe Reviewed-by: Matti Paaso <matti.paaso@theqtcompany.com>
* Cocoa: Fix icon size calculation for system tray.Christoph Schleifenbaum2014-10-221-32/+64
| | | | | | | | | | | | | | | | | | | | | The Overall goal is to make it possible to use correctly- sized pixmaps in a predictable way, while still doing something reasonable with small and large pixmaps. (The recommended pixmap height is up to 18 points.) Enable use of rectangular icons by selecting pixmaps based on pixmap height. Draw a low-resolution pixmap on retina displays if there is no high-resolution pixmap available. Scale large pixmaps to fit the available menu bar area. Add a manual-test with various pixmap sizes Task-number: QTBUG-33441 Change-Id: I1926181fe27cae526bae58022df3240bae9f8ac8 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* Improve Qt-in-namespace implementation in the Cocoa platform pluginRomain Perier2013-05-161-7/+11
| | | | | | | | | | | | | Objective-C++ does not support namespaces. In order to make this work, we decorate each symbol with suffix using the macro QT_MANGLE_NAMESPACE. However, with such a technic each public symbol needs to be explicitly exported through this macro. The use of @compatibility_alias allows to define alias to use it automatically and transparently. Task-number: QTBUG-23946 Change-Id: Id521b8160bab126fda40a9d960277b1c04cc8b66 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Cocoa: QSystemTrayIcon showing native messages on Mountain Lion.Christoph Schleifenbaum2013-02-161-1/+46
| | | | | | | | | | This patch enables usage of the new NSUserNotificationCenter as part of Mountain Lion. On earlier versions, or if compiled on earlier versions, Growl will be used, if installed. Change-Id: I676f9c63aa3c1ada19d36b6310ae90915be63011 Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Richard J. Moore <rich@kde.org>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-181-1/+1
| | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Compile with -no-widgets.Morten Johan Sorvig2012-11-191-2/+1
| | | | | | | | | | | | | | Remove QApplication usage in qcocoasystemtrayicon.mm Move qt_mac_cg_context from qpaintengine_mac.mm to qcocoahelpers.mm to make it available in no-widgets builds. (Move qt_mac_colorSpaceForDeviceType as well; color space support needs to be cleaned up later on.) Change-Id: I724fdb09538d65eae56c26165f3ba53b6814ea78 Reviewed-by: Liang Qi <liang.qi@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-221-24/+24
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Platform-plugin support for QSystemTrayIcon.Christoph Schleifenbaum2012-07-031-0/+465
Implement QPlatformSystemTrayIcon providing QPA-plugin-support for system tray icons. Make QSystemTrayIcon use this as new backend. Ported over qsystemtrayicon_mac.mm to qcocoasystemtrayicon.mm to provide Cocoa support for the new interface. It had to be changed to match the interface, especially for icon and menu handling. This interface is made to not use QStyle or QMenu which are related classes of QSystemTrayIcon. It's therefore not introducing QtWidget dependency into the platform plugin. Task-number: QTBUG-20978 Change-Id: I0d0a73835698b3b4f97219d4f5bbcfa2af57dbe2 Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>