|
|
|
TODO:
|
|
|
|
* scriptlets: stdin/out module that provides gui services to some
|
|
|
|
back-end script or process where e just talks via stdin/out.
|
|
|
|
things to provide:
|
|
|
|
* only run scriptlet every N seconds to poll then send back data
|
|
|
|
* only run scriptlet at specific times of day (cron-like)
|
|
|
|
* only run scriptlet when some event happens
|
|
|
|
* dbus signals (some way to define what to listen for)
|
|
|
|
* acpi bindings
|
|
|
|
* key bindings
|
|
|
|
* mouse bindings
|
|
|
|
* startup, shutdown, suspend, resume, lock/unlock, ...
|
|
|
|
* ... screen add/del, backlight dim/undim, ...
|
|
|
|
* ... blank/unblank, ac plug/unplug, battery full, ...
|
|
|
|
* ... battery charge begin, battery charge end, ...
|
|
|
|
* ... network connect/disconnect (connman), ...
|
|
|
|
* ... bt device find/lose, ...
|
|
|
|
* ... volume/mute/audio dev change, virtual desktop change, ...
|
|
|
|
* ... app window appear/disappear/exit, ...
|
|
|
|
* ... something goes fullscreen/unfluscreen, ...
|
|
|
|
* other events on the system or in e?
|
|
|
|
* run script all the time and talk to it and "keep state"
|
|
|
|
* provide menu content in menu specific tree...
|
|
|
|
* provide popups like pager mid-screen one with content like below...
|
|
|
|
* provide gadgets with display content like below...
|
|
|
|
* provide gadget popups (like mixer/clock) with content like below...
|
|
|
|
* provide full windows with content like below...
|
|
|
|
* possible content in a tree:
|
|
|
|
* probably have to provide markdown of below in some way...
|
|
|
|
* thinkimg of mustache style {{{ }}} ?
|
|
|
|
* shell friendly so it doesnt have special meanings in sh
|
|
|
|
* image (png/jpg/gif/video ... whatever)
|
|
|
|
* edje theme element/file fallback
|
|
|
|
* send/get signals
|
|
|
|
* set text parts
|
|
|
|
* send/get messages
|
|
|
|
* create, delete, swallow other edje/image objects
|
|
|
|
* box
|
|
|
|
* table
|
|
|
|
* grid
|
|
|
|
* scroller (content holder)
|
|
|
|
* lists to select from (icon, text, icon at end, groups - genlist)
|
|
|
|
* button
|
|
|
|
* radio
|
|
|
|
* check
|
|
|
|
* label/text
|
|
|
|
* entry (editable single/multi line, passwd)
|
|
|
|
* separator
|
|
|
|
* frame (content holder)
|
|
|
|
* slider
|
|
|
|
* progress/busy spinner
|
|
|
|
* dropdown/hoversel
|
|
|
|
* graph (multiple overlayed with N points horiz or vert, line/solid)
|
|
|
|
* dials (like cpufreq)
|
|
|
|
* mixers like ... mixer
|
|
|
|
* temperature guages like temperature
|
|
|
|
* scrollable logs with per line/item content objects
|
|
|
|
* list trees (genlist)
|
|
|
|
* grid lists (gengrid)
|
|
|
|
* efm show dir
|
|
|
|
* efm open specific file with default mime handler
|
|
|
|
* efm open specific file with mime handler chooser
|
|
|
|
* tell scriptlet where it is stored (env var)
|
|
|
|
* tmpdir setup/deletion for scriptlet (env var)
|
|
|
|
* more permanent config dir setup/storage for scriptlet (env var)
|
|
|
|
* pop up specified menu content
|
|
|
|
* display screen popup with content
|
|
|
|
* display gadget popup with content
|
|
|
|
* get events from content (clicked, selected, etc.)
|
|
|
|
* get state of content
|
|
|
|
* create timers and get called on timeout
|
|
|
|
* built in wget via e/ecore_con_url
|
|
|
|
* built in tcp/tcp+ssl netcat provided by ecore_con
|
|
|
|
* direct notification display (via notification module) e/stdin/out
|
|
|
|
* provide built-in editor to edit scripts and auto-re-run as you edit
|
|
|
|
* entry or elm code based?
|
|
|
|
* massive lowering of barrier ro create/change scriptlets
|
|
|
|
* offer a share mechanism like shots?
|
|
|
|
* security issue - they run. verification needed?
|
|
|
|
* login manager mode - be able to function as a login manager/gui since
|
|
|
|
most everything you want in a login manager is already present in e
|
|
|
|
like suspend/resume on lid open/close, multi screen config and even
|
|
|
|
auto-extension, backlight and other such controls.
|
|
|
|
* console logger much like quake console like dropdown for logging etc
|
|
|
|
(api to append logs. always stores to disk to specific file.
|
|
|
|
add button to explicitly share like screenshots. add higher level
|
|
|
|
logging like tables, icons, timelines and graphs that can be output
|
|
|
|
in text emulation and to screen - change eina log to go into here
|
|
|
|
with eina_log_print_cb_set() )
|
|
|
|
* alert - use full fat efl stack and remove xcb/ecore_drm2 stuff
|
|
|
|
(supply custom theme to guarantee theme is not an issue. create text
|
|
|
|
mode fallback with detection for crashes in crash handler. turtles
|
|
|
|
all the way down - a crash handler for our crash handler)
|
|
|
|
* start - add watchdog handling to e_start to detect a hung e
|
|
|
|
* config dialog redo and simplification
|
|
|
|
* remove e_dnd and use elm's dnd instead
|
|
|
|
* defer signal emits for init splash and stuff like that until after
|
|
|
|
mainloop and pre-caching theme file, wallpaper file, own binary,
|
|
|
|
shared libs and module .so files etc. to minimize any stalls and
|
|
|
|
have a smooth init (maybe on linux just open /proc/sefl/fd after we
|
|
|
|
finally hit mainloop and go to sleep and just find every fd that is
|
|
|
|
a path to a file and load the whole file into ram? simple and effective)
|
|
|
|
* new gad usability: be able to move, resize etc. without alt
|
|
|
|
(needs old gadget move/resize mode enable/disable in the menu)
|
|
|
|
* new gad usability: initial gadget bar setup dnd needs to be normal dnd
|
|
|
|
* new gad usability: setup needs an obvious "add" button as dnd not obvious
|
|
|
|
* efm: use elm for window
|
|
|
|
* efm: use elm scroller for fm view
|
|
|
|
* efm: use elm for file popup
|
|
|
|
* efm: add disk space used bar for disk volume icons
|
|
|
|
* efm: add space used "du -sh" summery for all folders
|
|
|
|
* efm: add filesystem cache (all dirs cached in files and updated in bg)
|
|
|
|
* efm: thumbs for music getting album art like rage
|
|
|
|
* efm: thumbs for videos with movie posters like rage
|
|
|
|
* efm: show symlink info in icon
|
|
|
|
* efm: fuse support (mtp, sshfs, cifs/smb etc.)
|
|
|
|
* efm: rsync integration for fsync to/from targets
|
|
|
|
* may need ssh setup too (add to authorized keys on other end)
|
|
|
|
* shot: add manual cropping ability
|
|
|
|
* shot: add simple free draw, box, line and text on top of shot before save
|
|
|
|
* bz5: add icon set for actions/states per bt device (pair.unpair, etc.)
|
|
|
|
* bz5: add obex agent support integrated with efm for sharing via bt
|
|
|
|
and downloads when received via obex bt (~/Downloads/...)
|
|
|
|
* battery: redesign popup to list other battery details like the
|
|
|
|
charge if you have multiple batteries for real or separately the
|
|
|
|
battery levels of e.g. bt mice, kbd's and other such devices
|
|
|
|
* randr: get auto layout to handle screens laid out like:
|
|
|
|
[dp2-2][dp2-1] <- 2 external monitors
|
|
|
|
[edp-1] <- laptop main display
|
|
|
|
* battery: on click display popup like wireless/bluez5
|
|
|
|
in popup show detailed list of battery devices and data per device
|
|
|
|
like bluez5 use genlist with groups for core batteris vs other misc devices
|
|
|
|
filter out hid devices with batteries from core battery state
|
|
|
|
display other devices in above list separately
|
|
|
|
handle string capacity values like Full, High, Normal, Low, Critical...
|
|
|
|
* device manager: new tool to browser /sys etc. and display nicely present
|
|
|
|
hardware and device drivers and state
|
|
|
|
* sys top: new tool displays cpu/mem "top" - evisum. we want it to be shipped
|
|
|
|
with e though so it's always there guaranteed have back-end system status
|
|
|
|
logging to files all day long that always starts with e. gui is a front-end
|
|
|
|
view to this back-end data log and follows it as it updates.
|
|
|
|
can go back in time then to previous logs
|
|
|
|
should have the ability to draw nice graphs etc.
|
|
|
|
|
|
|
|
DONE:
|
|
|
|
* music-control: fix aspect ratio of album cover image
|