Commit Graph

12109 Commits

Author SHA1 Message Date
Mike Blumenkrantz d7a08ed74e block relative motion event sending when pointer is outside input area
stop sending events to xwl clients at all times
2017-10-05 12:26:19 -04:00
Mike Blumenkrantz 80abcc5600 do not apply enlightenment cursor theme for xwayland clients
wayland always uses the client's cursor, so maintain that consistency
2017-10-05 11:42:24 -04:00
Mike Blumenkrantz 2b8c70fe98 set default cursor on root window for xwl pointer
ref T5593

 #TheDisappointer
2017-10-04 14:09:35 -04:00
Mike Blumenkrantz 8121f20a03 handle x11 shaped input under xwayland 2017-10-03 14:59:47 -04:00
Mike Blumenkrantz b686f3871d add max size input rects for wl clients on creation
according to spec, surfaces begin with infinite input area
2017-10-03 14:40:36 -04:00
Mike Blumenkrantz 9983172f32 set comp object alpha state when applying native surface
ensure that alpha is set accurately for the native surface
2017-10-03 14:40:03 -04:00
Mike Blumenkrantz 4d76f409f8 block gadget configuration unconditionally while desklock is active 2017-10-03 13:52:44 -04:00
Mike Blumenkrantz 031b0bdc60 deduplicate global gadget handler variables
ref T6125, T4648
2017-10-03 13:50:16 -04:00
Mike Blumenkrantz d7060c7c6f redo bryce eventing
post events are way harder and I don't know why I didn't do this in the
first place?

fix T5974
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz 6f186db24b clamp expanding gadget size to 0 to prevent sizing overflows
if the expanded size is negative then the size should be 0 and the gadget is
not visible
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz 7c726172e4 handle gadget site layouts using accurate parent geometry 2017-10-03 12:39:03 -04:00
Mike Blumenkrantz 42d707909e simplify focus on commit block for wl clients
none of this applies to popups
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz 001085f349 do not set E_Client->take_focus for popup wl clients 2017-10-03 12:39:03 -04:00
Mike Blumenkrantz 984a1facd9 pass keys through xkbcommon under wayland lockscreen
ensure that key states are retained when unlocking
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz 4ae2145330 move gadget editor help text onto the editor popup
ref T4648
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz 2d2ad13537 add comp object function to get the content of a util_add object 2017-10-03 12:39:03 -04:00
Mike Blumenkrantz 129bb14d2d don't show xwayland clients unconditionally on commit
ensure that the client's desk is visible

fix T6024
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz 1d5977c02a do not unnecessarily rescale clients
this function is mainly for rescaling maximized/fullscreen clients to fit new
dimensions, so don't call on other clients since this can trigger unwanted resize
 events
2017-09-28 13:03:37 -04:00
Mike Blumenkrantz 15ea006eb5 block client rescales during render updates
this guarantees misrenders
2017-09-28 13:03:37 -04:00
Mike Blumenkrantz 80349d417d Revert "do not perform client moves during comp updates"
This reverts commit def2b0c5fc.

breaks some resize directions
2017-09-28 13:03:37 -04:00
Stephen 'Okra' Houston bb4d69519f E Exe: Semi revert 2082bb51d3. The ref count was off to begin with. 2017-09-26 22:11:21 -05:00
Stephen 'Okra' Houston 2082bb51d3 E Exe: Since we no longer ref clients in the phony cb, don't free them after reffing them in instance_client_add. 2017-09-26 22:01:15 -05:00
Derek Foreman a85a602a39 Revert "Set close on exec for stdin"
This reverts commit 40e8bb044c.

EFL master solves this properly
EFL stable currently has a bug that solves this accidentally

so there's a window of about 3 commits in git where it's a problem,
and nobody should run those commits in production :)

This fix caused some problems when restarting E, as stdin would
cloexec and then the following startup would try to set cloexec
on an invalid fd and generate an err that generated a cri because
of an invalid log domain.

Someone should probably figure out the log domain thing.
2017-09-26 14:19:24 -05:00
Derek Foreman f4f08ee99a Stop queuing wl_buffer release events
Now we just kick them out immediately.
2017-09-26 11:41:19 -05:00
Mike Blumenkrantz 1f650605a0 emit E_EVENT_EXEC_NEW_CLIENT with phony exes
partially fix T6071
2017-09-26 12:26:18 -04:00
Mike Blumenkrantz 576c8d0864 use client geometry for visibility effect geometry, not comp object geometry
clients may defer object geometry setting, resulting in unreliable values here
2017-09-26 12:26:18 -04:00
Mike Blumenkrantz 3b319b5ef9 don't do full client rescale on x11 hint change if not maximized/fullscreen
regular windows don't get moved here, only resized if hints change

fix T6072
2017-09-26 12:26:18 -04:00
Mike Blumenkrantz 8d55575bcf remove input-only client fastpath to resize crashes
ref T6023
2017-09-26 12:26:18 -04:00
Mike Blumenkrantz def2b0c5fc do not perform client moves during comp updates
this can trigger zone changes, which triggers resizes, which is bad

ref T6023
2017-09-26 12:26:18 -04:00
Derek Foreman 51c492fcad use safer ecore_exe flags that close stdin/out/err more often
commit b9d166f804 introduced
safer exe functions that both prevent a child from having E's
stdin/stdout/stderr and ensure the child's fd 0 (and 1 and 2) are
"valid" file descriptors (to work around some buggy software that
assumes 0 is an invalid file descriptor)

This commit uses the safer functions when launching child programs from
the desktop menu as well.

ref T5606
@fix
2017-09-25 10:10:49 -05:00
Carsten Haitzler b9d166f804 use safer ecore_exe flags that close stdin/out/err if possible
this is specifically needed for wayland but is relevant to x with
startx too ... dont let processes that e runs like apps inherit
stdin/out/err as it may be a tty and thus allow apps to do nasty
things with that tty.

@fix
2017-09-23 23:10:35 +09:00
Derek Foreman 40e8bb044c Set close on exec for stdin
ref T5606
2017-09-22 21:02:32 -05:00
Derek Foreman 077ae06955 Fix wayland frame callback failure
Turns out ecore_animator_add() can randomly pick the wrong canvas to use as
a tick source.  Using EFL_EVENT_ANIMATOR_TICK on the compositor evas instead
will ensure we don't accidentally pick an internal window for a tick source.

Fix T6070
2017-09-22 17:00:25 -05:00
Mike Blumenkrantz 4d0ceeb02c add fd passing to aux hints protocol 2017-09-21 13:31:01 -04:00
Mike Blumenkrantz 5694d7af96 add action router action to route specific key presses to specified clients 2017-09-21 13:31:01 -04:00
Mike Blumenkrantz 5da5418873 add a client parameter to wl key down/up event processing functions
if passed, send the event to the specified client
2017-09-21 13:31:01 -04:00
Mike Blumenkrantz 92614d0c69 store the currently active key binding as an accessible variable 2017-09-21 13:31:01 -04:00
Mike Blumenkrantz 8cc46fb201 make e_bindings_modifiers_from_ecore() an externally usable function 2017-09-21 13:31:01 -04:00
Mike Blumenkrantz 11a08ebc30 don't perform zone updates on client resize
zone updates should probably only happen on client moves, not resizes

ref T6023
2017-09-21 13:31:01 -04:00
Chidambar Zinnoury 0666cd7249 e menu: Fix missing realize when using key-activation to the right.
See commit 474463ef6c, SVN r39698.
2017-09-19 12:50:39 +02:00
Chidambar Zinnoury 0adec92696 e about: Year++. 2017-09-18 22:57:06 +02:00
Mike Blumenkrantz 62acd53a96 avoid div by 0 in gadget layout
CID 1381165
2017-09-15 12:16:48 -04:00
Mike Blumenkrantz 98dbaa9090 fix clickable edge binding activation with other mouse buttons
check for the button specified in the binding, not whether the event
contains a click

fix T4510
2017-09-14 15:00:50 -04:00
Mike Blumenkrantz 00daafac10 flag zone/edge mouse binding activation with ON_HOLD
ensure multiple bindings aren't triggered by the same event
2017-09-14 14:59:14 -04:00
Mike Blumenkrantz 283a1cd620 handle unmovable gadgets in gadget move action
a gadget which refuses to create a duplicate of itself can be considered
immobile

fix T5998
2017-09-14 14:38:14 -04:00
Mike Blumenkrantz 49e2a31cfc block recursive mouse eventing in bryce action handlers
ensure that only the outermost event adds a post callback to avoid
triggering actions multiple times
2017-09-14 14:37:12 -04:00
Mike Blumenkrantz ccd374e6a2 add some hidden boxes to use as gadget popup hover parents
boxes get resized with zone useful geometry to ensure the content is always
on screen and visible

fix T5945
2017-09-14 14:00:39 -04:00
Mike Blumenkrantz 9727710647 hide clients again after show in idler if clients are on hidden desk
clients need initial show to correctly handle mirror visibility but should
then be hidden again

ref 0ee8cc896e
fix T6024
2017-09-14 12:45:45 -04:00
Mike Blumenkrantz b77e01e1dd use EC_CHANGED when setting changed flag in client idler 2017-09-14 12:43:15 -04:00
Carsten Haitzler 6972a97d5d e start - fix path prepend/append if already in path assuming clue
"
I have a directory at the head of my PATH that contains alternate
versions of command line utils like grep, ls, etc., but E puts
/usr/bin ahead of it, overriding my tools of choice with the system
defaults.

If my understanding is correct, the only way currently to have
directories that E prepends to your PATH appended instead is to use
-i-really-know-what-i-am-doing-and-accept-full-responsibility-for-it.
I'd like to see a more sane option if there isn't one already.
Alternatively, I wonder if it wouldn't be a better idea to only
prepend directories to PATH if they aren't already contained within
it--thereby preserving the user's desired search order.
"

this should fix T5953

@fix
2017-09-13 18:32:38 +09:00