Mike Blumenkrantz
64ceff507f
update E_Client->desk member upon focusing a sticky client
...
a sticky window previously would always have the desk set for where
it was set as sticky, meaning that anything which tries to access it
will be reading wrong data here.
more useful information to provide is the last desk which the sticky
client was focused on, so update that upon focusing it
2015-11-12 17:38:58 -05:00
Mike Blumenkrantz
b3d68ee828
use unsigned int for client focus tracking freeze state
...
there's no reason why this should ever be negative
2015-11-10 14:32:53 -05:00
Mike Blumenkrantz
cc137f6cd7
move client iconic hint setting into x11 hide function
...
e_hints should probably be merged into the x11 compositor entirely
at some point
2015-11-07 13:06:23 -05:00
Mike Blumenkrantz
d47252be4a
simplify client SMART/EXPAND maximize
...
calling e_client_resize_limit() here was misleading since the values
were never used
2015-10-30 15:03:29 -04:00
Mike Blumenkrantz
b9e51e1c0d
Revert "when maximizing a wayland client with csd, use window geometry"
...
This reverts commit 6e5e51c2b8
.
not a complete solution, makes client code somewhat unreadable
2015-10-29 14:34:32 -04:00
Mike Blumenkrantz
6e5e51c2b8
when maximizing a wayland client with csd, use window geometry
...
wayland clients which have csd must be resized according to window geometry,
not client (surface) geometry. this is somewhat tricky to handle because x11
clients which have csd work the exact opposite way and must continue to be
managed using client geometry
this is not my ideal solution for this issue, but I can't think of a
better one at this time which fully fixes wayland client maximization
2015-10-23 12:59:45 -04:00
Mike Blumenkrantz
7016c59c6f
reject frame theme changes for clients which have CSD
2015-10-23 12:31:24 -04:00
Chris Michael
59ffe3bed2
enlightenment: Add missing field initializers for Eina_Rectangle
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:19:43 -04:00
Mike Blumenkrantz
45b7224b42
explicitly disable screensaver for wayland urgency wakeups
2015-10-09 15:23:15 -04:00
Mike Blumenkrantz
277eb14ace
make wake-on-urgent apply for all cases of window urgency
...
in the case that an urgent window is set as urgent again, wakeup should
still occur
2015-10-09 15:21:41 -04:00
Tom Hacohen
981e3f8f31
Client: fix potential out of bounds read.
...
This is an unsigned int underflow that could lead to an out
of bounds read.
CID 1291837
@fix
2015-10-09 09:19:53 +01:00
Mike Blumenkrantz
95b9770f08
when removing VERTICAL maximize state, also remove LEFT and RIGHT states
...
LEFT and RIGHT are supersets of VERTICAL which serve no purpose on their own,
so remove them when removing VERTICAL
fix T2770
2015-10-07 15:47:21 -04:00
Mike Blumenkrantz
64c4adeca2
unset E_Client->changes.need_unmaximize after calling unmaximize
...
...just in case
2015-09-28 14:37:57 -04:00
Mike Blumenkrantz
f0fc7a12de
remove client maximize states during unmaximize only if they are active
...
do not accidentally remove untested states using bad math operations
2015-09-28 14:36:59 -04:00
Mike Blumenkrantz
8a764901c6
check warp_client existence during pointer warp before dereferencing it
...
ref T2679
2015-09-25 16:26:50 -04:00
Mike Blumenkrantz
2b38eb9712
block border-affecting client functions for csd clients
2015-09-24 16:33:56 -04:00
Mike Blumenkrantz
c9c880ec59
improve client exe_inst creation
...
ref T2679
2015-09-22 16:00:09 -04:00
Mike Blumenkrantz
ae919fe716
unset E_Client->want/take_focus flags during client eval
...
ref 4a33cd7ba0
2015-09-22 12:03:09 -04:00
Mike Blumenkrantz
4a33cd7ba0
only set focus on clients which are visible during client eval
...
focusing a client will automatically uniconify and desk flip, so
setting focus on a hidden client should be avoided during eval since
these focus-sets are not "user triggered"
this fixes issues where clients could randomly grab focus from other
desks and also restores expected behavior when restarting e on an
empty vdesk
2015-09-21 19:19:01 -04:00
Mike Blumenkrantz
7056d598c4
do not return non-visible clients for e_client_under_pointer_get()
...
a hidden client should not be considered "under the mouse" since its
geometry is undefined until it becomes visible again
fix T1069
2015-09-21 17:50:48 -04:00
Mike Blumenkrantz
e8a9ba34b0
always send CLIENT_SHOW event when clients are shown
...
I think it was the case for <E19 that uniconifying a client would
not send a show event, but this is not ideal and so the event should
still be sent
2015-09-17 19:08:27 -04:00
Mike Blumenkrantz
f5657fc6c1
enforce gathering client moveinfo before beginning move/resize action
2015-09-17 16:54:00 -04:00
Carsten Haitzler
b73364269b
e winlist focus alt-tabbing - fix focus list changes while tabbing
...
this should fix T2700
@fix
2015-09-12 13:38:38 +09:00
Mike Blumenkrantz
8946e3e504
unshade clients when activating
...
fixes issue where an activated client on another vdesk which was shaded
would appear to be unshaded but was, in fact, shaded
2015-09-08 17:01:36 -04:00
Mike Blumenkrantz
5bd8706bac
force-disable refocus during desk flip on client activation
...
this prevents an infinite focus loop where focus will be constantly
reapplied between multiple windows if the activated window is not the
refocus window
2015-09-08 16:55:21 -04:00
Mike Blumenkrantz
fb79fff70d
don't set E_Client->changes.visible on successful show/hide
...
iirc this was a fix for something else that was going on early in
e19 development, now it creates issues when attempting to hide clients
2015-08-19 14:00:52 -04:00
Mike Blumenkrantz
0730e3853a
unset E_Client->want/take_focus flags in hide callback
...
deferred focus should no longer be valid if a client has been hidden
before the focus-set could be triggered
fixes super fun infinite loop with desk flips
2015-08-18 18:18:12 -04:00
Mike Blumenkrantz
68da56b430
do not modify E_Client->visible value in show/hide callbacks
2015-08-18 18:17:51 -04:00
Mike Blumenkrantz
442d63d8d6
track button mask for all drags, only end drag when mask has depopulated
...
previously, beginning a drag with the left button, then pressing and
releasing another button would result in the drag terminating without
the original button being released
2015-08-12 15:39:42 -04:00
Mike Blumenkrantz
42bc9b0bef
disable ecore-evas events on client windows during actions
...
this is a not-great way of hacking around various issues related to
the efl mouse button cancel patches that went in for the 1.15 cycle
which changed the entire mouse input workings of the toolkit.
to avoid further issues, the compositor will explicitly block eventing
on all internal canvases during actions
2015-07-28 16:46:00 -04:00
Mike Blumenkrantz
dd1577a169
fix client smart callbacks on (un)maximize
...
these should match the callbacks triggered for whatever the current
maximize state is
2015-07-24 14:34:03 -04:00
Mike Blumenkrantz
21b8016c5b
add clients to focus stack as necessary in e_client_unignore()
2015-07-21 14:21:36 -04:00
Mike Blumenkrantz
bd776b157f
add e_client_unignore() for triggering events when unignoring a client
...
mainly for use in wayland compositing since all surfaces are ignored
until they get a shell surface or a commit
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz
ecb5f4ca41
add E_Client->keyboard_resizing flag
...
there is no other indication of whether a client is resizing using the
keyboard, so this should serve as an adequate hint
2015-07-15 18:07:12 -04:00
Mike Blumenkrantz
8e5a2cb430
add client util function for determining if a backing xwindow exists
2015-07-01 16:40:10 -04:00
Mike Blumenkrantz
f1f4489822
free all ec->comp_data ptrs in _e_client_del
...
need this to live through multiple del hooks, so simplify all code by
freeing in one place
2015-06-30 18:33:00 -04:00
Mike Blumenkrantz
7583b5ae5c
use separate client hashes for x11/wl clients
2015-06-30 16:04:22 -04:00
Mike Blumenkrantz
3e6d6b348f
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:00:43 -04:00
Stefan Schmidt
e2f87d3498
e_client: Remove deleted client from UUID store
...
Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
2015-06-29 17:01:53 +02:00
Mike Blumenkrantz
179118a70c
reject ignored clients from being processed in client idler
2015-06-25 20:04:31 -04:00
Mike Blumenkrantz
ca013d9439
reject stacking clients from frame updates in client idler
2015-06-25 20:04:31 -04:00
Yomi
0dc33a5aeb
Fix misspellings in E's files.
...
Summary: Fix misspellings and spaces in E's files.
Reviewers: zmike
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D2676
2015-06-16 16:10:21 -04:00
Toan Pham
1469e9b973
Center a dialog window when it is displaying off-screen
...
Summary: Center a newly created dialog window when it is displaying off-screen. Fixes T2419
Reviewers: zmike
Subscribers: cedric
Maniphest Tasks: T2419
Differential Revision: https://phab.enlightenment.org/D2646
2015-06-16 14:28:54 -04:00
Carsten Haitzler
6b64e40122
e - e client, comp win etc. reffing fix ... part 2
...
this follows 56cabf59c6
then
4e5521b4d8
where i have been trying to
fix a crash with e client and comp win references etc. i have gone
over all referencing with a fine tooth comb and found all the nigglies
i can., no leaks now, no crashes, no valgrind complaints etc. so i
call this fixed now. as best i know this is new in e20, so not a
backport fix
2015-06-15 20:27:25 +09:00
Carsten Haitzler
f1bd800037
e - fix crash in desktop lookup+fixup where exe_inst is null
2015-06-14 17:50:14 +09:00
Mike Blumenkrantz
e70fcc565d
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:26 -04:00
Mike Blumenkrantz
83eebacb5d
allow new fullscreening clients to replace current nocomp where applicable
2015-05-18 13:20:35 -04:00
Mike Blumenkrantz
205d8b0b74
reject client fullscreening based on config and desk visibility
2015-05-18 13:20:35 -04:00
Chris Michael
0a94e8ba71
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-05-07 15:13:10 -04:00
Mike Blumenkrantz
719b2baeba
only apply mouse down focus events if a binding did not run on the same event
...
fixes the case of enabling "raise on click" and also having a mouse binding
for "lower on click" active
fix T2364
2015-04-29 17:15:43 -04:00