enlightenment/TODO

122 lines
5.7 KiB
Plaintext

<<<
Some of the things (in very short form) that need to be done to E17...
(These are in no particular order)
>>>
[[[
-------------------------------------------------------------------------------
BUGS / FIXES
-------------------------------------------------------------------------------
* BUG: change exe name in basic mode in eap editor and icon vanishes (don't
extract existing icon and write out to tmp .png while rebuilding).
* BUG: resolution (xrandr) changes seem to screw the shelf up a bit.
* BUG: openoffice2's impress presentation fullscreen has sizing and
configuration issues.
* BUG: ghost windows happen if windows close when on another desktop or if
windows are very short-lived
* BUG: k3b has minimization issues when burning cds (it tries to unminimize
its window and this doesn't work)
* BUG: openoffice 2 when displaying a presentation with xinerama (multiple
zones) weird things happen (the presentation doesnt display - it seemingly
attaches to the 2nd zone, not the first), crashes have been reported too.
* BUG: dnd icon from window that has no .eap defining its icon to ibar and the
ibar icon ends up blank (can't build .eap from ARGB pixels)
* BUG: modules need to destroy config dialogs on shutdown (otherwise - segv!)
* BUG: xdaliclock -transparent doesnt use shaped border (not handling shape
change later)
* BUG: if a user selects a border the border should not just change based on
properties. if user selects a border in border selector, then lock border
* BUG: if you iconify a window and while iconified the window unmaps
(rhythmbox does this a lot apparently) e doesnt realize and still thinks
it's iconified.
* BUG: in general fullscreen needs work, cleaning and testing. dont allow
desktop switches for the desk a fullscreened window is on, nor allow windows
to be raised above the fs win etc. ie the app must seem to be entirely fs for
that zone.
* BUG: if you have 2 zones and you fill up zone 2 (right) mostly and then run
a big xev (xev -g 1280x1024) that won't fit it gets placed offscreen to the
right of zone 2
* BUG: Hiding the label of e_widget_slider causes the slider line to disappear
]]]
[[[
-------------------------------------------------------------------------------
ESSENTIAL FEATURES
-------------------------------------------------------------------------------
* on xrandr screen res change e moves and resizes windows to fit in the new
resolution. this is good and bad. if some other app temporarily changes
res this means everything gets squeezed. we need a "temporary resize due to
res change" geometry state for apps where they get resized to a new pos/size
and the old size/pos stored. on a move or resize etc. by a user this old
geom is freed, but on a res change, e takes the old geom, if there, and
tries to use it (then limiting geom to the new screen res as it cuurently
does) otherwise it creates a new saved geom for the cur geom before
limiting it. maximized windows are reset to their old size/pos then
re-maximized too. old szie from unmaximize needs to have this check too
on unmaximize as do fullscreen windows. NB: what if app moves/resizes
itself during this - i assume for now all bets are off with prior geometry
then.
* language packs: need to have a tool to load/setup a language pack (which
means .mo compiled files from a .po, an optional font and a config file that
specifies the locale and font) and then install the font(s) either as a user
or superuser, and the .mo in the system or a user locales dir.
* finish off icccm support
* finish complete netwm support
* add a "taskbar" module
* add cpu load module
* add a way to access "all" apps app dir (and dnd from it into ibar etc.)
* add setup/install wizard to seed eap files etc. etc.
* support color classes (gui config etc. etc.)
* add clientinfo pane/popdown for borders
* gui config dialogs for all config
* make it possible to disable border buttons/actions (tell theme what is
disabled)
]]]
[[[
-------------------------------------------------------------------------------
CLEANUPS
-------------------------------------------------------------------------------
* ipc is a mess. overgrown. hard to work with. what to do? remove?
* EAP cache files can be hit and miss and have problems. move things to be
explicit reloads.
* winlist should support place for window "screenshot" in list as well as
app icon
* winlist could divide windows up into blocks - sub-lists within a container
per desktop (with stick windows considered to live on the "current" desk
when winlist starts)
* make it easy for modules to hook into ipc and extend it for themselves
]]]
[[[
-------------------------------------------------------------------------------
"NICE TO HAVE" FEATURES
-------------------------------------------------------------------------------
* winlist and exebuf can let the mouse select items
* switch to desktop of a new window if it opens on another desktop than the
current one (optional too)
* emit signal to submenu entries if they have a submenu shown for them or not
* setup configs for gnome and kde (as options) if they are installed (eg
run gnome-settings-daemon).
* check evas engine can work on a given screen before using it
* non opaque move/resize
* add "osd" subsystem for things like volume controls on keybboards, etc.
that overlay the screen
* file icons on the desktop (people ask for it) - xdnd for these
* improve drag/resize of gadget items
* pager should be able to be configured to control more than the current zone
(select which zone they control)
]]]
[[[
-------------------------------------------------------------------------------
OPTIMISATIONS
-------------------------------------------------------------------------------
* optimize clock theme (speed/cpu) (rotation in edje??? or evas???)
]]]