Mike Blumenkrantz
45e872ddf1
set E_Client->override flag for internal wins as needed
2016-05-11 15:40:10 -04:00
Mike Blumenkrantz
8d4a75575c
remove some cruft from _e_comp_wl_client_cb_new()
2016-05-11 15:40:10 -04:00
Mike Blumenkrantz
2d85b8f111
ensure int64_t is used in all cases for wl pixmap ids
2016-05-11 15:40:10 -04:00
Mike Blumenkrantz
4a47f74b3a
enforce setting alpha on comp objects only after image data has been set
...
setting alpha can trigger a render sync, crashing if the old data is no
longer valid
2016-05-11 15:40:10 -04:00
Mike Blumenkrantz
6d397e313b
also check pixmap argb state when setting comp object alpha
...
more accurate for wayland
2016-05-11 15:40:09 -04:00
Mike Blumenkrantz
f25b2ab434
toggle compositor canvas focus during init
...
this sets the toplevel focus flag in elm, allowing widgets on the compositor
canvas to receive focus in wayland compositors
2016-05-11 13:33:31 -04:00
Mike Blumenkrantz
89deb898ad
change efm icon entry to only toggle focus in x11 compositors (runtime)
2016-05-11 13:32:52 -04:00
Mike Blumenkrantz
f2ad686fc3
handle positioning of x11 overrides with csd accurately
...
when first applying the csd region to this type of window the coords must
be adjusted in order to account for the shadow
fix T2934, T2931
2016-05-10 16:04:57 -04:00
Mike Blumenkrantz
e2390bebff
only load wayland-specific modules on startup if they have been built
2016-05-10 14:18:09 -04:00
Mike Blumenkrantz
e4f3179731
block keyboard sending for wl clients if a compositor grab is active
...
fix T3599
2016-05-10 13:00:01 -04:00
Mike Blumenkrantz
f37590209d
disable focus effects for windows with csd
...
fix T3408
2016-05-10 12:35:06 -04:00
Mike Blumenkrantz
16797009c0
ensure child windows are placed on screen
...
when centering a child over its parent, checks were not made to ensure that
by centering the child it had not gone offscreen
2016-05-10 12:13:12 -04:00
Mike Blumenkrantz
7ebaa1ffb3
make init fail if a dbus session connection cannot be created
...
typically this indicates a broken session manager or someone trying to run
a wayland session without using dbus-launch
2016-05-09 13:30:40 -04:00
Mike Blumenkrantz
c286fe48c0
prune uuid remembers on clean startup
...
ensure that stale sessions are destroyed regularly
2016-05-06 14:35:16 -04:00
Mike Blumenkrantz
411f378998
flag wl surfaces as internal during create() based on pid matching
...
fix T3596
2016-05-06 13:52:10 -04:00
Mike Blumenkrantz
ef1772b8cb
implement wl client session recovery
...
another small feature patch brought to you by insomnia
#SamsungFeatures
2016-05-05 15:47:55 -04:00
Mike Blumenkrantz
e0d1a572a1
bad copy/paste in _e_place_desk_region_smart_obstacle_add()
...
CID 1354988
2016-05-05 09:36:42 -04:00
Mike Blumenkrantz
4639062133
uninitialized vars in e_client_maximize_geometry_get()
...
CID 1354989, 1354990
2016-05-05 09:35:51 -04:00
Mike Blumenkrantz
32cf7162ed
ensure lifetime for wl client focus timer
...
fixes some focus-out crashing
2016-05-03 20:27:02 -04:00
Mike Blumenkrantz
69370250d1
don't refocus deleted clients during wl compositor grab
2016-05-03 20:27:02 -04:00
Mike Blumenkrantz
53e0bf08bc
further optimize window smart placement by reducing obstacle calcs
...
previously the obstacle list would build from the bottom up, skipping
fullscreen and maximized windows. this would lead to cases where windows
would be moved to avoid windows which were fully obscured, and also cases
where unnecessarily large amounts of looping would occur related to the
existence of maximized windows
2016-05-02 18:37:17 -04:00
Mike Blumenkrantz
049deb2c12
directly load extra wl modules during compositor init
...
speed++++++++
2016-04-28 17:58:45 -04:00
Mike Blumenkrantz
01ac84035f
ensure that the startup apps cache handler has run before trying to start apps
...
fixes timing issues when running startup apps
2016-04-28 17:58:45 -04:00
Mike Blumenkrantz
20f1aa8727
feed mouse up events to internal wins before mouse out during action exec
...
ref 609276e12d
fix T3347
2016-04-28 12:00:17 -04:00
Mike Blumenkrantz
502662456f
Revert "handle recursion more effectively in e_menu_hide_all()"
...
This reverts commit 5764bf680e
.
this was a workaround for a behavior change in efl
2016-04-27 11:27:56 -04:00
Mike Blumenkrantz
5764bf680e
handle recursion more effectively in e_menu_hide_all()
...
there were recent changes to evas object deletion mechanics which caused
this to begin crashing due to recent changes to evas object deletion mechanics
2016-04-26 10:43:07 -04:00
Mike Blumenkrantz
2c1e864fbc
move wayland surface E_Client del check to a place where it's more useful
...
completely breaks wayland on first commit? off to an auspicious start!
ref d9679f765f
2016-04-26 08:58:50 -04:00
Eduardo Lima (Etrunko)
8acbf5d013
Fix warnings about uninitialized use of variables
...
src/bin/e_zone.c: In function ‘_e_zone_useful_geometry_calc’:
src/bin/e_zone.c:1272:14: warning: ‘geom.h’ may be used uninitialized in this function [-Wmaybe-uninitialized]
if (h) *h = geom.h;
^
src/bin/e_zone.c:1271:14: warning: ‘geom.w’ may be used uninitialized in this function [-Wmaybe-uninitialized]
if (w) *w = geom.w;
^
src/bin/e_zone.c:1270:23: warning: ‘geom.y’ may be used uninitialized in this function [-Wmaybe-uninitialized]
if (y) *y = geom.y + zy;
^
src/bin/e_zone.c:1269:23: warning: ‘geom.x’ may be used uninitialized in this function [-Wmaybe-uninitialized]
if (x) *x = geom.x + zx;
^
src/bin/e_client.c: In function ‘e_client_maximize_geometry_get’:
src/bin/e_client.c:3754:16: warning: ‘y’ may be used uninitialized in this function [-Wmaybe-uninitialized]
if (my) *my = y;
^
src/bin/e_client.c:3753:16: warning: ‘x’ may be used uninitialized in this function [-Wmaybe-uninitialized]
if (mx) *mx = x;
^
src/bin/e_client.c: In function ‘e_client_fullscreen’:
src/bin/e_client.c:4032:21: warning: ‘h’ may be used uninitialized in this function [-Wmaybe-uninitialized]
ec->saved.h = h;
^
src/bin/e_client.c:4031:21: warning: ‘w’ may be used uninitialized in this function [-Wmaybe-uninitialized]
ec->saved.w = w;
^
src/bin/e_client.c:4030:21: warning: ‘y’ may be used uninitialized in this function [-Wmaybe-uninitialized]
ec->saved.y = y;
^
src/bin/e_client.c:4029:21: warning: ‘x’ may be used uninitialized in this function [-Wmaybe-uninitialized]
ec->saved.x = x;
^
Signed-off-by: Eduardo Lima (Etrunko) <eblima@gmail.com>
2016-04-25 19:40:42 -03:00
Derek Foreman
d9679f765f
wayland: Fix crash when attempting to create surfaces for deleted clients
...
Internal clients can be deleted by keybind before the surface create
callback fires resulting in a NULL pointer dereference.
2016-04-25 16:40:32 -05:00
Mike Blumenkrantz
c3700297d7
remove explicit edje_init/shutdown calls
...
elm already handles this
2016-04-25 12:55:21 -04:00
Mike Blumenkrantz
fcc996545c
always end drag operations on failure
...
fix T3507
2016-04-25 12:24:44 -04:00
Mike Blumenkrantz
05451aeb36
treat POPUP_MENU window type as an override window for comp theme matching
...
ensures that the menu theme gets picked for wayland popups; probably needs
a more comprehensive solution for xdgs v6
2016-04-22 15:28:54 -04:00
Mike Blumenkrantz
2014de2fe6
Revert "do not revert client focus except for normal and dialog windows"
...
This reverts commit 5b119d437a
.
I give this solution a B- for working but also totally ruining everything
2016-04-22 14:47:35 -04:00
Mike Blumenkrantz
5b119d437a
do not revert client focus except for normal and dialog windows
...
fix T3432
2016-04-22 13:15:33 -04:00
Mike Blumenkrantz
5c0729221e
only set "dialog" border for transient clients if window type is unset
...
fix T3157
from https://specifications.freedesktop.org/wm-spec/wm-spec-latest.html :
_NET_WM_WINDOW_TYPE_DIALOG indicates that this is a dialog window.
If _NET_WM_WINDOW_TYPE is not set, then managed windows with
WM_TRANSIENT_FOR set MUST be taken as this type
2016-04-22 12:51:12 -04:00
Mike Blumenkrantz
b94023c412
set NULL image data in _e_comp_object_pixels_get() on failure
...
ensure that nothing is rendered here
2016-04-22 12:45:26 -04:00
Mike Blumenkrantz
6f83ec7329
do not show unsized comp objects during theme apply
2016-04-22 12:45:04 -04:00
Mike Blumenkrantz
d584c9a095
ensure resize is still deferred for changes.shape clients during failed resize
...
ref c212bb4e21
2016-04-22 12:13:11 -04:00
Mike Blumenkrantz
84cf7743b6
set NULL image pixel data during x11 render when no damages exist
...
fixes a weird corner case where shapeless clients try to sneak a fast one
by and you gotta be like http://i.imgur.com/irwmnCT.webm
ref T3157
2016-04-21 18:21:26 -04:00
Mike Blumenkrantz
881ccfc768
slightly simplify image data setting in e_comp_object_render()
2016-04-21 18:09:18 -04:00
Mike Blumenkrantz
77e8ab0926
remove unnecessary conditional in e_comp_object_render()
2016-04-21 18:06:58 -04:00
Mike Blumenkrantz
2a67b3a899
ensure damages do not get added for shapeless x11 clients
...
ref 32d4c2f2b9
ref T3157
2016-04-21 18:04:16 -04:00
Mike Blumenkrantz
c212bb4e21
don't defer resizes+queue render updates for shapeless or pending shaped clients
...
this basically guarantees a misrender
2016-04-21 18:01:42 -04:00
Mike Blumenkrantz
a97a50b306
don't force full damage on x11 override clients
...
reverts f6be761226
this didn't fix anything and can cause irregularities in rendering
2016-04-21 16:32:01 -04:00
Mike Blumenkrantz
019318b88f
do not attempt to show x11 override windows
...
fix T3444, T1759, T2735
2016-04-21 15:28:55 -04:00
Mike Blumenkrantz
f36f2d16bc
unify client filtering checks from e_place_desk_region_smart()
2016-04-21 14:48:49 -04:00
Mike Blumenkrantz
08cb34f7ad
ensure that wl clients do not run extra render on hide twice
...
fixes crash when applications crash
2016-04-21 13:55:23 -04:00
Mike Blumenkrantz
54e6da6576
only update wl dnd actions when applying focus
2016-04-21 13:55:23 -04:00
Mike Blumenkrantz
aefa7d3795
always update wl dnd offer actions
2016-04-21 13:55:23 -04:00
Mike Blumenkrantz
42d67d51c3
do not perform input ungrab twice during dnd end in wayland
...
this was happening in both drag free and drag end: once is sufficient
2016-04-21 13:55:23 -04:00