summaryrefslogtreecommitdiffstats
path: root/src/platformsupport/dbustray
Commit message (Collapse)AuthorAgeFilesLines
* D-Bus tray icons: save temp file with size 22pxShawn Rutledge2015-02-081-5/+1
| | | | | | | | Gnome Classic on Ubuntu shows this icon but fails to scale it down. So if we do not pre-scale the icon, it will be too wide, and cropped. Change-Id: If8cf98de3672deff77b99b17da5491bd6c45cfdb Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* D-Bus tray icons: get devicePixelRatio at runtimeShawn Rutledge2015-02-041-8/+9
| | | | | | | | | | | In static builds of Qt, static initialization may not work because we need an initialized list of screens before devicePixelRatio() can use them to find the value. Anyway, it's better to know the dpr at the time the tray icon will be shown rather than when the application is started, just in case it changes. Change-Id: Iedffb674d8e8818c2a4e64d7c7a3c89a2dca77f3 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* D-Bus tray icons: make endian conversion work againShawn Rutledge2015-01-232-8/+10
| | | | | | | | | Endian conversion needs to be done on aligned data, but the data is stored unaligned in the QByteArray. So the new qFromUnaligned() function is needed. Change-Id: I12f9e52cea81d06129b306709bb9d2cd004f04e1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* D-Bus tray icon: when eliminating large icons, scale to medium sizeShawn Rutledge2015-01-231-5/+12
| | | | | | | | | 22px is not always large enough: KDE5 seems to like to make icons up to 28px, and they could be even larger on high-DPI screens. Change-Id: Ifa8e0d49b310e4b4304207596f0f32c36a5db6a7 Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* D-Bus tray icon: ensure that the image is square before sendingShawn Rutledge2015-01-231-6/+17
| | | | | | | | | Sometimes KDE doesn't render non-square icons properly when they have been received over the D-Bus protocol. Change-Id: Icc6fa3d64a1598ea8f719192ae18d32f287d6a79 Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* QSystemTrayIcon uses D-Bus org.freedesktop.Notifications on LinuxShawn Rutledge2015-01-235-1/+226
| | | | | | | | | | | | If StatusNotifier is working, then QSystemTrayIcon::showMessage() will send notifications using the org.freedesktop.Notifications protocol. https://developer.gnome.org/notification-spec/ Task-number: QTBUG-4011 Task-number: QTBUG-31762 Change-Id: Ia1925ec3dd81b1b7b8f3b490b6364aaf8f93f395 Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
* QSystemTrayIcon uses D-Bus StatusNotifier on Linux when possibleShawn Rutledge2015-01-227-11/+831
| | | | | | | | | | | | | | | | | | | | | Implementing org.kde.StatusNotifier DBus interface http://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/ as well as org.canonical.dbusmenu for the limited purpose of showing the tray icon's context menu. If a desktop environment (such as KDE or Unity) has a StatusNotifierWatcher listening, then tray icon information is sent to be displayed by the tray implementation instead of being rendered directly in an XEmbed window. This is necessary because some modern tray implementations no longer provide XEmbed "hosting". [ChangeLog][QPA][Xcb] QSystemTrayIcon uses StatusNotifier D-Bus protocol when the desktop environment supports it Task-number: QTBUG-31762 Done-with: Marco Martin <mart@kde.org> Change-Id: I3b1f744d621eefc7e9c61d1469460ebfcc77fc54 Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com> Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
* Add D-Bus types marshalling for Linux tray icon supportMarco Martin2015-01-122-0/+244
Add marshalling for icon pixmaps to be used in DBus tray icon support according to the specification http://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/Icons/ Task-number: QTBUG-31762 Change-Id: I16e66c272eef413a7c94345c273e5fd3a8c0f771 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Albert Astals Cid <albert.astals@canonical.com> Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>