AwnApplet and friends rework for 0.4
AwnApplet and AwnAppletSimple need to be updated for various changes in 0.4. AwnAppletSimple also needs to be split where it makes sense to do so.
Blueprint information
- Status:
- Complete
- Approver:
- Neil J. Patel
- Priority:
- Essential
- Drafter:
- Neil J. Patel
- Direction:
- Approved
- Assignee:
- Neil J. Patel
- Definition:
- Approved
- Series goal:
- Proposed for 0.4
- Implementation:
- Implemented
- Milestone target:
- 0.4.0
- Started by
- Michal Hruby
- Completed by
- Michal Hruby
Whiteboard
AwnApplet new features:
- Orientation support
AwnAppletSimple new features:
- Split out the icon rendering code into another object, AwnIcon. Thre reason for this is that there are a few applets that need to put icons side-by-side in one applet, and want those icons to behave correctly. AwnAppletSimple can still provide its current features, but it will contain a AwnIcon at heart.
- Important so all the icon rendering code (for 99% cases) is handled by libawn.
- Taskmanager/plugger need this functionality.
- Internal support for AwnIcons?
AwnIcon features:
- Represents 1 icon on the panel
- handles all drawing and animations
- Provides hooks for indicating progress on the icon (e.g. download progress)
- Provides hooks for displaying arbitrary numbers on the icon (e.g. unread messages)
- Provides hooks for seeking attention from the user (e.g. windows needing attention)
- Provides hooks for indicating activity (arrows for launchers/tasks)
- Can be detached from the panel (???)
mhr3: Move all drawing into AwnEffects - including the active rectangle, progress bar and extra text??? Would give the benefit of easy redefinition of the expose-event for applets for vector scaling.