Go to file
Tor Arne Vestbø 395e2d9bc4 macOS: Modernize QCocoaSystemTrayIcon
The code had not been touched in a very long time and was overgrown
with weeds from pre-QPA times.

We no longer maintain an indirection through QSystemTrayIconSys,
which was a remnant from Qt 4 times.

The Objective-C helper class used for callbacks has been slimmed
down to just a simple delegate, with the actual work done in the
QCocoaSystemTrayIcon implementation, further reducing indirection.

We no longer use a custom NSView for the status bar item, something
that has been deprecated for a long time. Instead we set properties
on the NSStatusItem's button. This gives us automatic support for
drawing the icon with the right highlight, including in dark mode.

Finally, the code has been updated to modern Objective-C syntax.

Change-Id: I59706081f6b179035b8216a7a6ebc08a47cec127
Fixes: QTBUG-77189
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-03-14 14:21:28 +01:00
bin Merge remote-tracking branch 'origin/5.13' into 5.14 2019-11-13 07:21:33 +01:00
config.tests Merge remote-tracking branch 'origin/5.14' into 5.15 2019-10-16 01:00:49 +02:00
dist Add 5.14.0 changelog entry about MinGW 2020-02-18 18:34:50 +01:00
doc Examples: update examples list for Android 2020-03-03 19:35:34 +02:00
examples Mandelbrot Example: Use High DPI scaling 2020-03-12 08:24:09 +01:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
mkspecs Android: Bump gradle (plugin) versions 2020-03-04 18:02:35 +00:00
qmake macOS: Merge qcore_mac cpp and mm files 2020-03-12 06:07:35 +01:00
src macOS: Modernize QCocoaSystemTrayIcon 2020-03-14 14:21:28 +01:00
tests Update UCD to Revision 26 2020-03-14 11:26:59 +01:00
util Update UCD to Revision 26 2020-03-14 11:26:59 +01:00
.gitattributes Update the git-archive export options 2012-09-07 15:39:31 +02:00
.gitignore qfloat16: Check in the tables to Git 2019-06-03 10:42:53 -07:00
.qmake.conf Bump version 2020-02-02 13:41:14 +01:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
config_help.txt Merge remote-tracking branch 'origin/5.14' into 5.15 2020-02-18 09:26:53 +01:00
configure Android: remove remaining reference to -android-toolchain-version 2019-11-18 14:13:32 +01:00
configure.bat Configure: simplify logic 2019-03-14 12:13:58 +00:00
configure.json Merge remote-tracking branch 'origin/5.14' into 5.15 2020-02-18 09:26:53 +01:00
configure.pri configure: Add switch for clang's "source-based" code coverage feature 2020-01-28 20:26:15 +00:00
header.BSD Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.FDL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL-EXCEPT Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3-COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-NOGPL2 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-ONLY Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.MIT qsimd: add support for new x86 CPU features 2018-05-05 06:20:07 +00:00
INSTALL INSTALL: Remove outdated reference to Windows CE 2019-02-13 13:01:57 +00:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.GPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPLv3 Remove LICENSE.GPLv3, LICENSE.LGPLv21, LGPL_EXCEPTION.txt 2018-04-16 11:02:14 +00:00
LICENSE.QT-LICENSE-AGREEMENT Update enterprise license agreement v4.2.1 2019-12-18 13:07:19 +02:00
qtbase.pro nuke configure -host-option 2016-12-13 18:55:59 +00:00
sync.profile Add QPasswordDigestor to syncqt 2019-12-12 12:43:56 +01:00