Marcel Hollerbach
ce6d2285f1
e_xkb: split up e_xkb_update
...
before the function had the semantics that -1 flushes the set of layouts
back to the displayservice. Now its done with e_xkb_reconfig.
2016-05-12 20:54:22 +02:00
Mike Blumenkrantz
189dce81f9
force cursor placement to obey useful zone geometry
2016-05-12 12:10:48 -04:00
Mike Blumenkrantz
2854352bc8
adjust some client eval parts to make manual placement work again
...
activating the window_move action doesn't require the client to successfully
be shown, and failing this check would cause the window_move action to be
deleted until the next restart
2016-05-12 12:05:59 -04:00
Mike Blumenkrantz
55c83134c1
use parent windows for x11 binding grabs
...
ensure that internal windows do not receive mouse events before the compositor
fix T3347
2016-05-12 11:23:20 -04:00
Mike Blumenkrantz
60da58d8ad
only check pixmap argb state for non-X11 clients
...
non-argb windows can have argb pixmaps.
ref 6d397e313b
2016-05-11 18:34:49 -04:00
Mike Blumenkrantz
ada13539bf
avoid infinitely looping when applying x11 window grouping
...
#ThatTimeKainXFoundABug
2016-05-11 18:29:38 -04:00
Mike Blumenkrantz
d3ba524a62
use window id for internal window pixmaps again on wayland
...
this was breaking internal windows when more than one was open, and
especially if any were open which had a parent-child relationship, by
using the same id for all internal window pixmaps
2016-05-11 15:40:10 -04:00
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