Commit Graph

94 Commits

Author SHA1 Message Date
Carsten Haitzler cd431350a5 e sys - if logout has trouble - resume so user can see dialog 2014-01-20 15:23:30 +09:00
Mike Blumenkrantz 86656e4df9 compositor rewrite / charlie-foxtrot situation
huge fustercluck commit because there wasn't really a way to separate out the changes. better to just rip it all out at once.

* compositor and window management completely rewritten. this was the goal for E19, but it pretty much required everything existing to be scrapped since it wasn't optimized, streamlined, or sensible. now instead of having the compositor strapped to the window manager like an outboard motor, it's housed more like an automobile engine.

** various comp structs have been merged into other places (eg. E_Comp_Zone is now just part of E_Zone where applicable), leading to a large deduplication of attributes

** awful E_Comp_Win is totally dead, having been replaced with e_comp_object smart objects which work just like normal canvas objects

** protocol-specific window management and compositor functionality is now kept exclusively in backend files

** e_pixmap api provides generic client finding and rendering api

** screen/xinerama screens are now provided directly by compositor on startup and re-set on change

** e_comp_render_update finally replaced with eina_tiler

** wayland compositor no longer creates X windows

** compositor e_layout removed entirely

* e_container is gone. this was made unnecessary in E18, but I kept it to avoid having too much code churn in one release. its sole purpose was to catch some events and handle window stacking, both of which are now just done by the compositor infra

* e_manager is just for screensaver and keybind stuff now, possibly remove later?

* e_border is gone along with a lot of its api. e_client has replaced it, and e_client has been rewritten completely; some parts may be similar, but the design now relies upon having a functional compositor

** window configuration/focus functions are all removed. all windows are now managed solely with evas_object_X functions on the "frame" member of a client, just as any other canvas object can be managed.

*** do NOT set interceptors on a client's comp_object. seriously.

* startup order rewritten: compositor now starts much earlier, other things just use attrs and members of the compositor

* ecore_x_pointer_xy_get usage replaced with ecore_evas_pointer_xy_get

* e_popup is totally gone, existing usage replaced by e_comp_object_util_add where applicable, otherwise just placed normally on the canvas

* deskmirror is (more) broken for now

* illume is totally fucked

* Ecore_X_Window replaced with Ecore_Window in most cases

* edge binding XWindows replaced with regular canvas objects

* some E_Win functionality has changed such that delete callbacks are now correctly called in ALL cases. various dialogs have been updated to not crash as a result

comp files and descriptions:

e_comp.c - overall compositor functions, rendering/update loop, shape cutting

e_comp_x.c - X window management and compositor functionality

e_comp_wl.c - Wayland surface management and compositor functionality

e_comp_canvas.c - general compositor canvas functions and utilities

e_comp_object.c - E_Client->frame member for managing clients as Evas_Objects, utility functions for adding objects to the compositor rendering systems

additional authors: ivan.briano@intel.com

feature: new compositor

removal: e_border, e_container, e_popup
2014-01-14 20:22:02 -05:00
Carsten Haitzler 5f4027dbca save inhibit fd from systemd or fd is closed/lost and inhibit is lost! 2013-08-18 19:49:23 +09:00
José Roberto de Souza c6ea785a86 Use eldbus_proxy to simplify systemd support 2013-08-15 14:21:23 -03:00
Carsten Haitzler ea88d880a7 add systemd support to e_sys for shutdown/reboot/suspend/hibernate 2013-08-15 19:10:08 +09:00
Sebastian Dransfeld 79fba3fa9a Fix hibernate 2013-03-01 11:15:59 +01:00
Mike Blumenkrantz 9e8e755cdf formatting: all at once
SVN revision: 82625
2013-01-11 10:34:29 +00:00
Mike Blumenkrantz 5b385d91ca add new events for suspend/hibernate/resume
SVN revision: 76947
2012-09-21 09:16:37 +00:00
Carsten Haitzler cb5e1e563b add hooks to override the old sys popup boxy things so comp can do
something fancy on suspend, resume, hibernate, logout, reboot,
shutdown. much nicer now. much more polished.



SVN revision: 75929
2012-09-01 14:56:16 +00:00
Mike Blumenkrantz a8beb0950c fix usage of PATH_MAX when not working with files
SVN revision: 75518
2012-08-22 07:02:41 +00:00
Cedric BAIL eccf13058a e: add scripting feature to lock/unlock require some tests.
SVN revision: 73979
2012-07-17 13:33:21 +00:00
Vincent Torri c3b0637802 e17: whitespaces--
SVN revision: 72561
2012-06-21 06:19:43 +00:00
Mike Blumenkrantz 6e37074dcc formatting
SVN revision: 71833
2012-06-08 07:36:56 +00:00
Carsten Haitzler d9a3685ddc and make e sys not complain about repeat requests if within 2 secs of
eachother - solves a multi-press issues with pwr button etc.



SVN revision: 62648
2011-08-21 07:51:05 +00:00
Christopher Michael f6e699bbb5 E: Fix e_sys wrt Immortal windows. (for ppurka).
NB: Prior to this, if you had an Immortal window and selected
Restart/Exit/Etc the _e_sys_action_current variable was not getting
reset, thus if you tried another Restart/Exit you would always get the
'EEK' dialog and get stuck into an endless loop. Even if you removed
the lock on the window, this would still happen.



SVN revision: 61429
2011-07-16 16:53:20 +00:00
Christopher Michael cfe2544d9f E: Fix nasty formatting in e_sys.
SVN revision: 61427
2011-07-16 15:58:59 +00:00
Gustavo Sverzut Barbieri 6f2213cb25 convert init/shutdown to EINTERN, move some to _update().
Do not abuse the concept of e_*_init(), make them call-once and those
that needed multiple call are renamed to e_*_update(). To make sure
convert them to EINTERN so the symbols are not exported.

Actually I guess too much is exported as EAPI while they should be
EINTERN, but that would require manual investigation, while this patch
was basically created with sed + grep.



SVN revision: 54795
2010-11-22 15:21:32 +00:00
Sebastian Dransfeld 3c12d4daba __UNUSED__ last
SVN revision: 54193
2010-11-05 18:40:31 +00:00
Christopher Michael b2433413d9 Add UNUSED.
Use PATH_MAX.



SVN revision: 51355
2010-08-18 21:18:31 +00:00
Lucas De Marchi 6638a10e20 FORMATTING
* Remove vim modelines:
 find . -name '*.[chx]' -exec sed -i '/\/\*$/ {N;N;/ \* vim:ts/d}' \{\} \;
 find . -name '*.[chx]' -exec sed -i '/\/[\*\/] *vim:/d' \{\} \;

* Remove leading blank lines:
 find . -name '*.[cxh]' -exec sed -i '/./,$!d'

If you use vim, use this in your .vimrc:
set ts=8 sw=3 sts=8 expandtab cino=>5n-3f0^-2{2(0W1st0



SVN revision: 50816
2010-08-04 16:57:32 +00:00
Cedric BAIL c6a118d738 * e: remove warning due to Ecore API change.
SVN revision: 49833
2010-06-24 16:19:12 +00:00
Carsten Haitzler 348d599f8b lock on suspend option++ (also on hibernate - same options)
SVN revision: 49354
2010-05-31 15:17:02 +00:00
Gustavo Sverzut Barbieri c4d6295c8c Auto-logout after 60 seconds "logout confirm dialog" shows.
SVN revision: 46246
2010-02-17 14:03:06 +00:00
Cedric BAIL f8c05999e4 * e: Cleanup use of Eina data structure.
Patch from Peter van de Werken <pwerken-e@a-eskwadraat.nl>.


SVN revision: 41916
2009-08-21 15:08:49 +00:00
Gustavo Sverzut Barbieri 51fe41f439 have all exits and restarts to use e_sys_action_do()
SVN revision: 39569
2009-03-19 02:08:09 +00:00
Davide Andreoli 49fecd25b7 More icons renamed
SVN revision: 39400
2009-03-06 22:18:15 +00:00
Carsten Haitzler 145fc680ff shorten system action text - simpler. also fix actiosn to be system.
SVN revision: 38698
2009-01-22 20:54:26 +00:00
Carsten Haitzler 0c41ae041e move internal binaries to subdir - patch from albin
SVN revision: 38414
2009-01-02 01:08:14 +00:00
Carsten Haitzler 6cf459572f make extra actions work. use them from illume.
SVN revision: 37811
2008-11-26 12:54:23 +00:00
Carsten Haitzler 5a29e1f6b5 syscon module added - provides a system entry in main menu (build in one gone
now). syscon has a poup with buttons (configurale) that offer all the
logout/reboot etc. stuff. also able to extend with more items or inline them
into the theme too.

not complete. need config for being able to extend the syscon popup (and use
it) and no gui config for configuring what should appear and how it should
look. possibly theme should have custon elements for the ones curently using
button + icon look. also no keyboard control.



SVN revision: 37797
2008-11-25 08:05:58 +00:00
Cedric BAIL 1087de2397 Remove Evas list and replace them with Eina list.
No change for ->next and ->data access right now, as the patch is already
big enough.



SVN revision: 36962
2008-10-22 11:49:33 +00:00
Carsten Haitzler 24c3b610d2 finish halt_now
SVN revision: 35036
2008-07-08 15:48:39 +00:00
Carsten Haitzler caca225975 add a halt_now that bypasses logout
SVN revision: 35035
2008-07-08 14:00:53 +00:00
Carsten Haitzler 1e507658f3 and make the init splash use the right engine!
SVN revision: 31796
2007-09-24 10:53:44 +00:00
Sebastian Dransfeld b150b36b93 Formatting.
SVN revision: 29008
2007-03-24 12:55:30 +00:00
Carsten Haitzler b2a0abb8eb a lot of patches - also my work on moving the IO stuff in e_fm to a slave
process to stop e from ever "locking up". this unfortunately breaks the other
source stuff and thus breaks the app editor config dialogs and anything using
fm2 for .desktop stuff from the e applications/all repo. i am doing this as i
expect this to go away with efreet anyway so not too much of an issue. not
all fm operatiosn work currently - note. so beware. it can view files though :)


SVN revision: 28528
2007-03-02 17:00:20 +00:00
Carsten Haitzler 815e1699c7 patches from people (see mail list) and stuff.
SVN revision: 27174
2006-11-19 08:58:05 +00:00
Carsten Haitzler 4aec08c398 metrics sys patch
SVN revision: 26815
2006-10-28 01:30:31 +00:00
Carsten Haitzler 25b70e1548 put the e sys stuff 5 second in - not 10.
SVN revision: 26732
2006-10-21 11:19:40 +00:00
Carsten Haitzler 580a468103 been doing instrumentation. i'm cuttong down on startup time - a little here
and there - noticing lots of excessive io and stat and what not junk.
trimming out.


SVN revision: 26729
2006-10-21 10:28:01 +00:00
Carsten Haitzler a952e6a2e0 icons for most sys ops - not great, but something.
SVN revision: 25684
2006-09-10 09:15:54 +00:00
Carsten Haitzler 71be7e7882 sys actions have status/info/progress dialogs that should work right for all
actions (so you know what is going on and have some feedback/status).


SVN revision: 25670
2006-09-10 04:51:07 +00:00
Carsten Haitzler 04d99e3df8 main menu cleanups.
sys actions check error/status etc. logout implemented, and used. need to
have status for reboot/halt and for suspend and hibernate.


SVN revision: 25656
2006-09-09 07:00:14 +00:00
Carsten Haitzler 34d6645d66 lots of freaky stuff.
1. cleaned up actions for restart and exit
2. made main menu cleaner in just using the actions
3. added ilits unselect calls for ilist smart and widget
4. patch for cpufreq to set all cpu clocks
5. fix battery module to handle broken acpi impl's that don't report drain rate
6. add e_sys subsystem - for executing system sensitive stuff like halt, reboot
   suspend, hibernate etc. this also covers exit, restart and logout. logout
   is currently dormant and just an action - not bound or in a menu. not
   complete anyway (no code for it). halt and reboot should probably use
   logout logic to shut down apps - i will recycle it. i added a suid root
   binary to do the actions - uses a system config (default one supplied that
   is secure - root will need to modify it to allow things).
7. fixed suid install hook for cpufreq
8. added sysconf dir to build for sys config file.
9. pants on


SVN revision: 25395
2006-09-03 08:51:32 +00:00