Commit Graph

131 Commits

Author SHA1 Message Date
Mike Blumenkrantz 5fb09a0249 add minor optimization for e_manager_current_get for most common case
there's only more than one manager when we're running true multi-head, which is pretty rare/non-existent with compositing, so we can avoid an X call here by just returning the only possible manager
2013-10-07 03:52:09 +01:00
discomfitor f5aa2779b1 ignore netwm activate messages during startup to avoid annoying desk flips 2013-09-27 06:20:17 +01:00
discomfitor 373c32a83f unused warn-- 2013-09-19 20:09:41 +01:00
Mike Blumenkrantz a7c4552bbe fix manager show request handler to be global and fire before the comp handler; fixes stacking and theme setting 2013-08-27 09:24:00 +01:00
Mike Blumenkrantz a67d211e09 don't resize manager when manager has same size as set size 2013-07-09 09:34:13 +01:00
Mike Blumenkrantz 505cec1d91 giant comp rejiggering commit #5:
* border frame/object now drawn directly on compositor canvas

* border shadows now in border theme with edje hint, non-updated themes still receive comp object shadows FOR NOW

* e_border MOVE/RESIZE pointer mode defines are now e_pointer.h enums

* added BD_CHANGED() util macro for setting bd->changed and printing a debug line to assist in finding places where this all-important flag is wrongly set

* bd->bg_win removed entirely

* bd->pointer objects moved to compositor object; now only one pointer object exists for each compositor

* resizing windows now shows a new and totally-intended scaling effect for window contents

* some additional retooling of border deletion/free callbacks

* fixed lurking potential bug where window could recieve focus from autoraise timer after border had been deleted

* more comp shape improvements/rewrites

* desk transitions are now BROKEN(ish)

* various modules updated to not be totally broken with these changes
2013-04-15 08:39:16 +01:00
Mike Blumenkrantz 7f35677bc0 e_manager_new now creates compositors for new managers instead of creating them all at once
SVN revision: 83743
2013-02-07 13:19:36 +00:00
Mike Blumenkrantz a57d11f111 use handler list macro when creating manager handlers
SVN revision: 83292
2013-01-24 10:48:11 +00:00
Mike Blumenkrantz 8fcf2cbcca remove old e_msg-based comp api as well as e_manager_comp api, replacing both with e_comp functions and events
this completely breaks anything external which used comp, so module api version has been bumped


SVN revision: 82973
2013-01-18 12:47:14 +00:00
Mike Blumenkrantz 91748cdc92 e_manager_comp_set now sends an event instead of using e_msg, though I don't even think this is necessary anymore since it will only be called on startup and shutdown...
SVN revision: 82696
2013-01-12 12:57:53 +00:00
Mike Blumenkrantz 9e8e755cdf formatting: all at once
SVN revision: 82625
2013-01-11 10:34:29 +00:00
Mike Blumenkrantz d94ca3aae7 e_manager_comp_set() is now EINTERN; external compositors are officially dead
SVN revision: 82622
2013-01-11 08:40:14 +00:00
Carsten Haitzler 27624264ee netwm actgivate requests simply do absoluttely nothing now with this
as false. this breaks expected functionality from apps - that they
request activation and eg - window is minimized... it gets shown at
least. app here wants attention/activation... this is better than
ignoring ti entirely. theres activation policy config specifically for
turning this off separately. :/



SVN revision: 82402
2013-01-08 11:03:55 +00:00
Mike Blumenkrantz ae7ca9105f Hi,
here is a patch.

 1. free() already null-checks the passed argument, so it is not
    necessary to do 'if(x) free(x)'.

 2. Moved some '{free(x); x = NULL}' to E_FREE.

 3. In e_start_main.c, 'buf' is allocated with the size of the
    two arguments + '=', so we don't need to check for lenght;
    we should use sprintf().

 thanks
Maxime Villard


SVN revision: 81364
2012-12-19 14:20:34 +00:00
Mike Blumenkrantz 7fb5b16ee4 void functions don't return values
SVN revision: 80839
2012-12-13 12:55:59 +00:00
Mike Blumenkrantz 6999eb8ad1 add new event for when managers regrab keys
SVN revision: 80774
2012-12-12 19:21:31 +00:00
Carsten Haitzler f0c9f5121c lots of buglet-fixing. this does:
1. make idle fade timer work at all (dodnt work before)
2. fixes backlight status on e restart
3. fixes setting bl level on start
4. improves the compositor fade in/out effect by ALSO fading backlight
in and out... oh so much smoother now
5. fixes label in ui to be seconds, not minutes.
6. in order to make this all work - it adds a special screensaver
event inside of e that the screensaver subsystem generates based on
the real x one.



SVN revision: 80538
2012-12-09 06:27:42 +00:00
Mike Blumenkrantz 3fc68c6c43 fix old FIXME regarding handling of NET_ACTIVE_WINDOW hint: new window focus option allows ignoring, animating, activating (current behavior is activating) on hint
right now this uses the "urgent" signal for the animate state, may want to change it to something else if separate theming is desired
ticket #1642


SVN revision: 78647
2012-10-30 11:57:35 +00:00
Mike Blumenkrantz 6657834714 formatting
SVN revision: 78643
2012-10-30 11:44:54 +00:00
Carsten Haitzler 7a59e58273 add support for X-Enlightenment-Single-Instance :)
SVN revision: 76756
2012-09-17 11:51:04 +00:00
Mike Blumenkrantz a977ceecf0 add function for getting comp source based on the border win (uses different hash)
SVN revision: 73364
2012-07-05 14:57:05 +00:00
Vincent Torri c3b0637802 e17: whitespaces--
SVN revision: 72561
2012-06-21 06:19:43 +00:00
Cedric BAIL 2d0970da9a e: warning--.
SVN revision: 70751
2012-05-04 02:34:56 +00:00
Cedric BAIL 984f5ef27c e: just detect reordering of screen when it happens.
SVN revision: 70689
2012-05-03 08:45:20 +00:00
Carsten Haitzler 687c994aa2 be more insistent on setting root bg color - add timer to black it out
in 10 sec in case gnome-settings-daemon runs off and sets it or
something.



SVN revision: 68191
2012-02-21 03:16:32 +00:00
Carsten Haitzler 7fd02afae4 and remove virtual roots config that isnt ever used or able to be
enabled or tested...also remove the config vals from profiles.



SVN revision: 66514
2011-12-26 06:32:21 +00:00
Hannes Janetzek 3d1ecd29e5 e17/comp: ok, dont make Comp_Source public, add functions needed by comp-scale instead
SVN revision: 63965
2011-10-10 21:09:26 +00:00
Hannes Janetzek b59bdf6761 e17/comp: add function to get Comp_Source for window.
- make part of comp source struct public, better than having all modules using Comp_Source
  copying E_Comp_Win private struct. 


SVN revision: 63963
2011-10-10 20:30:33 +00:00
Christopher Michael 277cbfdcaf E: Reduce need for extra variable and just directly add handlers to
the list.



SVN revision: 63530
2011-09-22 05:45:45 +00:00
Michael BOUCHAUD dddfbe2a86 e: fix warning
SVN revision: 59836
2011-05-31 09:47:23 +00:00
Hannes Janetzek a2a8da2886 e17: manage xembed windows as long as they are not override_redirect.
- might fix urxvt tabs, might break other stuff


SVN revision: 59346
2011-05-12 13:23:57 +00:00
Hannes Janetzek a513603dff e17: on _NET_ACTIVE_WINDOW client message: only switch to desk if border is not sticky
SVN revision: 57676
2011-03-10 16:52:22 +00:00
Hannes Janetzek 915cf71368 e17: handle ooffice _net_active window messages specifically
SVN revision: 57610
2011-03-09 03:09:59 +00:00
Hannes Janetzek d11a154acf e17: disable pointer warp on _net_active_window client message
SVN revision: 57608
2011-03-08 23:09:09 +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
Carsten Haitzler d484062996 1. only make zone black win+canvas if/when needed (btw - can still do
better and only create what is needed to surround the fullscreen
window if it cant be fullscren and needs a black border).
2. set bg color of root to black - e has its own bg anyway.



SVN revision: 54748
2010-11-20 16:18:58 +00:00
Sebastian Dransfeld 3c12d4daba __UNUSED__ last
SVN revision: 54193
2010-11-05 18:40:31 +00:00
Leif Middelschulte 935774e161 From: Leif Middelschulte <leif.middelschulte@gmail.com>
patch for ecore-x xrandr 1.3 support - breaks previous api. final api
change (i know about) before we go alpha. in to svn we go.



SVN revision: 51109
2010-08-14 10:21:03 +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
Carsten Haitzler 4edb627ea6 extending comp to allow "expose" and other such things - other modules
that can trivially get objects inside the compositor canvas as well as
get the compositor canvas and events when it comes and goes, changes,
when client sources are added, removed etc. etc.



SVN revision: 50727
2010-08-01 14:29:19 +00:00
Cedric BAIL c6a118d738 * e: remove warning due to Ecore API change.
SVN revision: 49833
2010-06-24 16:19:12 +00:00
Sebastian Dransfeld 78b294c4a8 make clang happy
SVN revision: 45176
2010-01-15 11:29:50 +00:00
Hannes Janetzek 1e8112a09e remember the borders' .desktop file after restart
SVN revision: 42067
2009-08-28 09:25:36 +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
Christopher Michael 72f10aab04 Remove annoying printf. If you are using this to debug something, please use
#if 0 around it.


SVN revision: 41422
2009-07-18 21:10:27 +00:00
Gustavo Sverzut Barbieri ddd175a2f2 Ask to enter presentation mode.
If you deactivate screensaver (ie: move mouse) or unlock desklock
within some given threshold, ask user if he would like to enter
presentation mode or even if should increase timeout to next event.

This is also useful when at the office and you quickly move mouse in
order to keep your explanation. If you know your explanation is short,
just hit "increase timeout", otherwise "Yes" to increase timeout.

Increase timeout is a multiplier that will increment the factor on
each dialog answer.

There is an option to stop asking. This can be changed in "Advanced"
versions of screensaver and desklock dialogs.



SVN revision: 40414
2009-04-27 02:54:43 +00:00
Gustavo Sverzut Barbieri f7b1ad0f9b Option to enable desklock after screensaver timeout.
This option will make it possible to lock the screen after some
seconds screensaver started.

It is useful in cases you want a short screensaver and uses screenlock
but often need to unlock it quickly (ie: was talking to someone at the
office, screensaver starts and you would like to quickly avoid
desklock, otherwise need to stop talking, unlock and continue).



SVN revision: 40413
2009-04-27 02:49:50 +00:00
Carsten Haitzler c5680c811c and handle premapped windows
SVN revision: 40075
2009-04-15 04:52:40 +00:00
Vincent Torri 7506655ca9 ecore_x_window_del -> ecore_x_window_free
SVN revision: 39924
2009-04-10 09:57:57 +00:00
Carsten Haitzler 834952304f ghost windows-- ?
SVN revision: 39655
2009-03-23 13:39:24 +00:00