Opened 15 years ago
Last modified 5 years ago
#99 new enhancement
Finalize xsystray and QSystemTrayIcon
Reported by: | Dmitry A. Kuminov | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | xsystray | Version: | 4.5.1 Beta 3 |
Severity: | medium | Keywords: | |
Cc: |
Description
This includes the following:
- Optimize server-side memory pool performance by organizing free blocks in a one-way linked list (this makes sense when there are many allocations in the pool which currently may lead to full scan when searching for a free block).
- Alpha blend icons in the tray.
- Native-drawn notification balloons.
- Support SysTray?/WPS API (DDE).
Change History (15)
comment:1 by , 15 years ago
comment:2 by , 15 years ago
Severity: | → medium |
---|
comment:4 by , 14 years ago
Milestone: | Qt Enhanced → Qt 4.7 |
---|
comment:5 by , 14 years ago
It is known from the beginning that xsystray belongs to XWP, not to Qt and one day it will be moved here. Besides, the client API part of xsystray needs to go to a separate DLL (rather than e.g. being a static library) because of its dependence on kLIBC. This is necessary to let other applications (like Odin) easily use xsystray.
Since moving to XWP actually requires to branch it first, we postpone this for now and will still host xsystray within the Qt SVN for a while but will not be distributing it with Qt and will create a separate WPI instead. These actions will be tracked in this ticket too.
comment:6 by , 14 years ago
Placed xsystray API to a separate DLL in r835. This will go to a separate xsystray WPI a bit later (most likely, for the Java GA).
comment:7 by , 14 years ago
Component: | QtGui → xsystray |
---|
comment:8 by , 14 years ago
Sounds really nice. And what 'bout other SysTray's features, like displaying current keyboard input layer icon and clock? Do you plan to implement them also?
comment:9 by , 14 years ago
We don't really need yet another clock :) So I don't plan to add it. I'm though thinking on combining the standard xCenter Time widget with the xsystray widget. But I'm not sure if I will finally do that as it will make impossible to have them placed apart (if someone ever wishes so).
Regarding the input indicator, I assume you mean the support for Keyboard Layer/2. KL/2 uses the old SysTray/WPS API so it will work once step 4. above is implemented. In the mean time, you may use my other widget, Keyboard Layer/2 Indicator which is independent of any of the systrays at all :)
comment:10 by , 14 years ago
Well... I never meant that KL/2 thing. I'm just talking about this feature:
SysTray's readme:
Hidden feature: Experimental feature for showing keyboard layout in system tray. You need to add SET SYSTRAY_LANGVIEW_LATIN and SET SYSTRAY_LANGVIEW_NATIONAL settings into CONFIG.SYS with values referring to icons for national/default keyboard layout images. Example: SET SYSTRAY_LANGVIEW_LATIN=c:\os2\default.ico SET SYSTRAY_LANGVIEW_NATIONAL=c:\os2\national.ico Do not open Language Viewer from System Setup folder - it will cause total functionality lost of system tray keyboard layout viewer until reboot. For icons, see folder "lang_ico" which contain icons that I use.
The feature is really useful for those, who uses more than one keyboard layer.
comment:11 by , 13 years ago
I will add the language icon to xsystray. This will act like a default icon in a newly added xsystray widget, which is also good because now it's empty which confuses users.
For that, I will take the icons from my xkblayer xCenter plugin. Will probably also add SYSTRAY_LANGVIEW_* support as well.
comment:12 by , 13 years ago
Milestone: | Qt 4.7 → Qt Enhanced |
---|
This is not related to Qt too much, so we postpone it past the 4.7 milestone.
comment:13 by , 12 years ago
Milestone: | Qt Enhanced → Qt 4.next |
---|
this finaly needs to be adressed. and then we need to integrate it to xwp.
As for alpha blending, I don't actually think it makes sense to implement it only in xsystray itself: the icons will still be drawn w/o alpha blending in e.g. the window's title bar and in other XCenter plugins like the window list. So if we do it in xsystray, we should also do so in these two mentioned cases: by subclassing WC_TITLEBAR and by patching the relevant XCenter plugins. See also #99.