[Cs22800] Proposal: e17 taskbar framework

Ziba Scott zrscott at uchicago.edu
Mon Oct 14 08:13:42 CDT 2002


Proposal:  Enlightenment 0.17 taskbar framework.

    The 0.17 version of Enlightenment marks its transition from being a 
window manager to a desktop manager.  Two essential components of a 
desktop manager that are absent from "e16" are the iconbar and the 
taskbar.  E17 has a functional iconbar, but no taskbar.  A search of the 
developers' mailing list shows that a taskbar is a desired component but 
any implementation has not been discussed since march of this year.

    E16 is clearly an underdog in the world of linux desktops, however, 
it has retained popularity because of its extreme versatility and speed 
due to its relative simplicity.  Not only does e17 plan greater 
functionality, but it has an impressive canvas engine called evas.  Evas 
is a layer of abstraction between applications and X11 that enables 
speed and visual effects that can rival any desktop on any system.  In 
addition Evas can take advantage of hardware rendering devices.  

    Much of the speed and flexabiliy of e17 is derived from its layers 
of abstraction for dealing with text and images, therefore we propose to 
make a layer of abstraction which will make the creation of any number 
of different taskbars very simple.  To test our layer we will create a 
sample taskbar.  The gnome and kde taskbars can serve as examples, but 
not neccesarily finished models of what our layer will be capable of. 
 Ideally, our layer would enable the creation of a taskbar that could 
possess every feature used in any taskbar in use and beyond.

    The challenges we forsee at this stage are choosing a point in the 
e17 project where this code should be encoded, utilizing existing 
abstraction layers efficiently, and ensuring modularity.  For example, 
we will have to use the "Ecore" layer for window tracking, the "Etox" 
layer to handle text, and the "Ebits" layer for decoration.  

Ziba Scott
Stephen Dranger




More information about the CS22800 mailing list