Commit Graph

19328 Commits

Author SHA1 Message Date
Mike Blumenkrantz 510660e157 use runtime check for determining x11 compositor grab behavior
this should fix the case of users not recompiling enlightenment after
upgrading their efl version
2015-07-24 13:00:16 -04:00
Mike Blumenkrantz 9eb813b939 19.6 NEWS updates 2015-07-23 14:10:12 -04:00
Mike Blumenkrantz 2b733b7443 19.6 release 2015-07-23 14:07:14 -04:00
Mike Blumenkrantz 73102c7048 simulate modal windows for badly behaved x11 clients
it seems that some clients, eg. libreoffice, don't set the modal window
property on child dialogs. instead of fighting for focus, set up the child
as a modal on the parent and then avoid the whole issue

fix T2594
2015-07-21 18:35:47 -04:00
Mike Blumenkrantz 64add23543 always stop passing key events on once they reach the lokker callback 2015-07-21 14:37:47 -04:00
Mike Blumenkrantz ef18cc3f93 ensure clients possess comp_data before dereferencing it during x11 stacking
ref T2566
2015-07-21 14:36:33 -04:00
Mike Blumenkrantz a6990c69a8 never use new clients for stacking part 2: the secret of the stacking
a client with this flag set here is unreliable to use as a stacking
reference since it has yet to be stacked and can be located anywhere
in the window stack.

fixes internal window stacking on startup
2015-07-15 16:26:06 -04:00
Mike Blumenkrantz 8fb7bb18bd ensure that focus is set and focus stack is managed on winlist hide
if pointer warping is disabled, attempting to pointer warp with mouse-based
focus policies will fail here, preventing focus from being applied as expected

ref T2566
2015-07-15 16:25:07 -04:00
Mike Blumenkrantz 3dfb5e07af only trigger client mouse-in from x11 mouse move event if client+desk are visible
ref T2566
2015-07-15 16:24:50 -04:00
Mike Blumenkrantz 75df7e0943 only unset e MANAGED atom on non-shutdown
broken during a bad rebase of 4f8af72fe3
2015-07-15 15:19:24 -04:00
Mike Blumenkrantz 276d979534 fix compile warning 2015-07-10 13:11:42 -04:00
Mike Blumenkrantz b8ee271011 always set x11 override client geometry on startup
this geometry isn't something we can change later, so apply it now.
also fixes an ACK when trying to show input_only clients early
2015-07-10 13:10:41 -04:00
Mike Blumenkrantz 4f8af72fe3 move grabinput focus fix timer to x11 compositor and fix it to Work Better
see inline comments about x11 focus eventing for details

fix T2547
2015-07-08 12:49:06 -04:00
Mike Blumenkrantz 2342a4d38f fix compile against newer efl 2015-07-08 12:46:05 -04:00
Mike Blumenkrantz 0fa853d742 account for race condition when creating initial comp object updates tiler
added to maintain compositor logic parity
2015-07-08 12:45:41 -04:00
Mike Blumenkrantz eef5efe8c3 move E_Client->mouse.in to E_Client->mouse_in to avoid abi breakage 2015-07-07 13:15:45 -04:00
Mike Blumenkrantz 303edb544d block client signal binding activation when mouse action is active
this prevents oddities such as activating [window shade] and [resize] actions
simultaneously from breaking the compositor
2015-07-07 13:12:40 -04:00
Mike Blumenkrantz 2cba6e0417 set CRITICAL urgency for notification internal notifications
ensure that presentation/offline mode toggles will display a notify
2015-07-06 16:22:41 -04:00
Mike Blumenkrantz ee17719d28 make pager popups only trigger on urgency hint if client is not currently visible
the annoyance of having this popup constantly triggered while a window is visible
cannot be understated.
2015-07-06 12:48:03 -04:00
Mike Blumenkrantz b8cfc7238c make e_client_util_desk_visible() work for overrides without desks 2015-07-06 12:48:02 -04:00
Derek Foreman 01ef4980d7 wizard: Prevent crash
Summary: If we get here when curpage is NULL, we'll crash later, so we should test for it.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2793
2015-07-03 11:56:05 -04:00
Derek Foreman c9958e8e03 wizard: Prevent crash
Summary: If we get here when curpage is NULL, we'll crash later, so we should test for it.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2789
2015-07-02 18:13:40 -04:00
Mike Blumenkrantz 62da0f32bf do not apply x11 focus grabs to internal clients if efl version > 1.14
due to recent changes in ecore-input-evas, mouse events are propagated
differently; specifically, there are now "more" events than there previously were.
as a result, grabs on internal wins are no longer necessary, though they probably
never were necessary after the elm conversion

see 5cb6cdbc5e1a13ea0262e155983b494e6519abde in efl
2015-07-02 12:35:21 -04:00
Mike Blumenkrantz 632bdd84a7 fix build break from last commit 2015-07-02 12:34:55 -04:00
Mike Blumenkrantz 0c518414e1 reject x11 replay clicks when event window != client window 2015-07-01 18:02:26 -04:00
Mike Blumenkrantz 26c291c02d only ungrab x11 windows when appropriate focus options are set 2015-07-01 16:50:01 -04:00
Mike Blumenkrantz b0df36d595 ensure x11 focus grabs are applied on client init when needed 2015-07-01 15:57:39 -04:00
Chris Michael 099861c55a enlightenment: Make E build again with EFL from git
sed -i 's/EAPI/E_API/g'

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 15:56:20 -04:00
Mike Blumenkrantz 00904480d5 straggler ungrab of x11 parent window from previous commit 2015-07-01 15:33:34 -04:00
Mike Blumenkrantz f1fdb26d20 redo all x11 client mouse grabbing for focus
I did an audit of this and it seemed that it no longer served the purpose
for which it was originally intended. specifically, this is for enforcing
click: raise/focus options, and so grabs must be in play on client windows
only when they are not focused to ensure that we get mouse events and can
then focus them. the grabs must then be removed once the window has focus
to avoid spurious mouse eventing
2015-07-01 15:32:06 -04:00
Mike Blumenkrantz 87f4a69612 use client window for x11 button ungrabbing
ref afb62b4989
2015-06-30 18:49:26 -04:00
Carsten Haitzler d7f384f092 e passive window grabs - fix side-effect leave/enter events on clients
when you have click to focus we have a passive grab set up. somewhere
that window changed to the parent window instead of the client. this
leads to a side effect of a leave and enter event on clients for every
click. generally clients are ok with this, but some seem to have buggy
event handling. these enter/leave events are a side effect of the
passive grab even though we allow/replay the event.

this fixes that by placing passive grabs on the client window itself
instead of the parent.

@fix
2015-06-30 18:46:07 -04:00
Mike Blumenkrantz 5182693d8d enforce pstate's extremely-confusing no_turbo option in cpufreq
fix T2411
2015-06-29 16:39:06 -04:00
Mike Blumenkrantz cf332e874c trigger client mouse-in on x11 mouse movement for non-action clients
this should fix the case of mouse-based focus policies trying to reapply
focus after another client has stolen it away without the pointer leaving
the window
2015-06-29 16:08:47 -04:00
Mike Blumenkrantz 9e5c227689 trigger fake mouse-out on clients when unsetting focus
this will allow a more reasonable determination of pointer location
when attempting to apply mouse-based focus policies
2015-06-29 16:08:47 -04:00
Mike Blumenkrantz d9b6e25075 add E_Client->mouse.in for determining mouse-in status 2015-06-29 16:08:47 -04:00
Mike Blumenkrantz c8cedae301 unset changes.visible when forcing visibility during no-effect desk flip
this is set for new clients and creates visibility issues on startup
2015-06-29 16:04:43 -04:00
Mike Blumenkrantz a491a3fa9e fix focus FIXME regarding focus-setting on clients from other desks
fix T2259
2015-06-29 16:04:38 -04:00
Mike Blumenkrantz a416f96c12 check for possible parent window on x11 mouse button events
in the case of different window <-> event_window, window is a child window
of event_window, and thus checking event_window here is valid (and necessary)
2015-06-29 16:04:33 -04:00
Mike Blumenkrantz 84ba19d576 stop rejecting possibly-valid x11 focus events
fixes case where window assumes focus without wm interaction
2015-06-29 16:04:26 -04:00
Mike Blumenkrantz 0829f90eb3 only apply deskmirror client visibility logic for non-deleted clients 2015-06-19 14:13:17 -04:00
Mike Blumenkrantz 1e5eea91ee return an accurate value for override clients in e_comp_object_util_zone_get() 2015-06-17 15:59:23 -04:00
Mike Blumenkrantz 0060387189 allow layer-blocked clients in deskmirror to restack 2015-06-16 15:52:02 -04:00
Mike Blumenkrantz cb8f26ad87 fix eo errors for ilist icon select state 2015-06-08 15:01:28 -04:00
Mike Blumenkrantz 3813d00653 fix shelf visibility state signals
previous behavior resulted in hide being sent when animations began
instead of at end
2015-06-08 15:01:28 -04:00
Mike Blumenkrantz 3fc585efa3 fix focusing client on mouse events which trigger actions (with exceptions)
block focus events only if focus has changed to another client or the current
client's layer-actual has been lowered

regression from 719b2baeba
2015-05-21 12:32:40 -04:00
Mike Blumenkrantz 88cb4541bd allow new fullscreening clients to replace current nocomp where applicable 2015-05-18 13:22:53 -04:00
Mike Blumenkrantz faf4ec630c force xwindow stacking to obey nocomp policy and stack below current nocomp
fix T2277
2015-05-18 13:22:26 -04:00
Mike Blumenkrantz 2b1b6def72 reject client fullscreening based on config and desk visibility 2015-05-18 13:21:45 -04:00
Mike Blumenkrantz 40fc1c0496 19.5 NEWS updates 2015-05-04 12:28:46 -04:00