Commit Graph

21309 Commits

Author SHA1 Message Date
Mike Blumenkrantz 10bd6e5fcc handle maximize_anims_disabled for client-side maximize toggles
fix T3434
2016-04-11 14:38:03 -04:00
Mike Blumenkrantz 3df1e04ded bump modapi 2016-04-11 14:28:52 -04:00
Mike Blumenkrantz 4cbf81b1e8 add E_Client->saved.frame to handle mismatched csd states
if csd exists in only one of (before || after) a maximize/fullscreen,
this provides info so that the right size can be used when restoring
geometry

...again
2016-04-11 14:28:31 -04:00
Mike Blumenkrantz 005ad4e986 fake client-side geometry during wl (un)maximize interception
fixes internal window maximize
2016-04-11 13:41:19 -04:00
Mike Blumenkrantz 1facf33ddf ignore maximized+fullscreen windows when placing new clients
this should improve perf and placement

ref T3404
2016-04-11 12:02:00 -04:00
Derek Foreman 03f3297b3c wayland: Bump ecore-wl2 dependency to 1.17.99 2016-04-08 17:39:43 -04:00
Marcel Hollerbach 53636dd87c e_xkb: use new_keyboard event to restore known layout
Summary:
the new_keyboard event is now used to restore the known layouts out of
the config, if the state is changedthe new group is safed in the config
which will be safed later.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D3877
2016-04-08 23:30:22 +02:00
Mike Blumenkrantz 6df8f5a806 Revert "do not update client saved states during maximize if client is animating"
This reverts commit 227776985e.

impossible case, too much wayland
2016-04-08 17:23:06 -04:00
Mike Blumenkrantz 2cecb9369e bump modapi 2016-04-08 16:53:08 -04:00
Mike Blumenkrantz 4c6a4ea4ce track client maximize animation agents, delete upon beginning new animation
fixes an issue where unmaximize+maximize chaining would break client sizing
2016-04-08 16:45:56 -04:00
Mike Blumenkrantz cfca88bc95 simplify maximize animation re:maximize_override unsetting on no-animate 2016-04-08 16:43:46 -04:00
Mike Blumenkrantz 63af4ea865 buffer server-side (un)maximize commands to ensure synchronization in wayland
maximize is client-initiated and compositor-enforced in wayland, meaning that a
maximize should only be acted upon in the compositor after the client has
acknowledged that it has transitioned into the maximized state (likely removing
part of its csd region) and has resized itself to match the expected maximize
size

fix T3297
2016-04-08 16:08:32 -04:00
Mike Blumenkrantz 98934fb0e9 make (un)maximize_pre callbacks capable of rejecting the maximize operation
this is useful when subsystems need to know that a client wants to maximize
but need to delay that maximize for a later point
2016-04-08 16:07:40 -04:00
Mike Blumenkrantz a3da199685 disable maximize anims for www-compatible wl surfaces
due to www modifying the csd region, animating resizes will trigger
unsolvable race conditions which break windows
2016-04-08 16:06:19 -04:00
Mike Blumenkrantz b0f2443042 improve behavior of wl client buffered state changes during commits
apply e_config maximize policy for buffered (un)maximize, unset buffered states
after applying them
2016-04-08 16:05:00 -04:00
Mike Blumenkrantz 9578ae615f do not force wl client state update (configure) on (un)maximize done cb
this is spurious
2016-04-08 16:04:19 -04:00
Mike Blumenkrantz b17999de8d do not sent wl *shell configures from resize callback during maximize
this is spurious
2016-04-08 16:03:28 -04:00
Mike Blumenkrantz a7adf21c88 add E_Client->maximize_anims_disabled to selectively disable maximize anims
for some clients it's impossible to animate resizing due to various race conditions
being created which will break the client
2016-04-08 16:01:55 -04:00
Mike Blumenkrantz b4b682cd6a make a number of client functions take const E_Client* 2016-04-08 15:57:21 -04:00
Mike Blumenkrantz 8d56ff3eec break out client maximize/unmaximize calc functions into preview functions
these enable "previewing" a client's size after toggling the maximize state,
not accounting for any csd or ssd sizing changes
2016-04-08 15:55:27 -04:00
Mike Blumenkrantz 227776985e do not update client saved states during maximize if client is animating 2016-04-08 12:23:19 -04:00
Mike Blumenkrantz 71c1669036 change client un/maximize_pre callback location to occur after safety checks 2016-04-08 12:22:47 -04:00
Mike Blumenkrantz 4cc66119c5 make e_client_has_xwindow() more wayland-only friendly 2016-04-08 11:51:18 -04:00
Mike Blumenkrantz dea3ae21ad directly include e.h in efm device backends
fixes some compile errors related to include ordering

ref 68587276cf
2016-04-08 11:50:27 -04:00
Mike Blumenkrantz 9516031e93 only apply buffered wl client maximize during configure if client is not maximized
fixes directional maximize
2016-04-07 14:00:25 -04:00
Mike Blumenkrantz 657bc713c7 don't send duplicate configure to wayland clients during unfullscreen
this causes unnecessary client-side resizing
2016-04-07 13:56:03 -04:00
Derek Foreman b8ab7b0738 Remove unwanted debug detritus from last commit
#Oops

Reviewed-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2016-04-07 13:29:58 -04:00
Derek Foreman 68587276cf Clean up some header inclusion
Including certain headers in the wrong order can cause problems if
we're configured to use beta api (right now wayland forces this).

In most cases we should just be including e.h and not the individual
EFL headers anyway.  This fixes some of that.

fix T3426, T3428
2016-04-07 13:14:43 -04:00
Mike Blumenkrantz 7e3c2b08ec move buffered maximize/fullscreen for wl clients to occur before csd update
this ensures that all such operations calculate based on the correct csd state
2016-04-06 16:42:10 -04:00
Mike Blumenkrantz 14721bc116 do not unconditionally update position+size when changing wl client csd geometry
this breaks...everything
2016-04-06 16:40:42 -04:00
Mike Blumenkrantz e9bca1abaa Revert "add E_Client->saved.frame to handle mismatched csd states"
This reverts commit ae7af6b8ef.

this was a workaround for an entirely different issue, and it didn't even
solve that issue
2016-04-06 16:39:55 -04:00
Mike Blumenkrantz 992e04feb2 wayland client maximize/fullscreen cleanups
ref da74e690f0
2016-04-05 16:54:04 -04:00
Mike Blumenkrantz ae7af6b8ef add E_Client->saved.frame to handle mismatched csd states
if csd exists in only one of (before || after) a maximize/fullscreen,
this provides info so that the right size can be used when restoring
geometry
2016-04-05 16:52:50 -04:00
Mike Blumenkrantz da74e690f0 redo xdg shell to enforce double buffering of client-side configure serials
xdg shell configure states (maximize, fullscreen) return a client ack when the
client has applied the state. the ack, followed by the next surface commit,
indicates that the surface is ready to be transitioned into the configured state
2016-04-05 15:05:10 -04:00
Mike Blumenkrantz d50a20f812 do not send shell configures for deleted wl clients 2016-04-05 15:04:35 -04:00
Mike Blumenkrantz a99d505771 set WAYLAND_DEBUG=0 during wl compositor init
ensures that debug logs won't get both compositor and client output,
making the log impossible to read
2016-04-05 15:03:26 -04:00
Mike Blumenkrantz f8bca98f35 reject client maximize attempts using identical maximize params 2016-04-05 15:00:54 -04:00
Mike Blumenkrantz e4960ad652 set ELM_ACCEL=gl upon successfully creating a gl wayland compositor
...successfully

ref 4aecb7ad14
2016-04-04 16:06:52 -04:00
Mike Blumenkrantz a4588933a0 disable xwayland module if exe cannot be found during configure
should probably make this a --flag at some point

fix T3415
2016-04-04 15:43:04 -04:00
Mike Blumenkrantz 4b7141fc13 don't print xwayland path twice... 2016-04-04 15:40:21 -04:00
Mike Blumenkrantz 5046004edf print xwayland exe path in debug logs
ref T3415
2016-04-04 15:38:46 -04:00
Mike Blumenkrantz ed6448eb21 send fake www data during maximize 2016-04-04 14:03:17 -04:00
Mike Blumenkrantz 687b5fb6b6 set maximizing flag during maximize resizing for wl clients
a helpful indicator for when to avoid potentially leaking positioning info
2016-04-04 14:02:39 -04:00
Mike Blumenkrantz 6617a8440c always set ec->maximize_override on unmaximize if maximize anims are enabled
this ensures that all cases of animation have the flag set
2016-04-04 14:01:30 -04:00
Mike Blumenkrantz 3f7e6dc359 wl popup surfaces should not receive focus on show if parent is not focused
fix T3339 harder
2016-04-04 12:51:29 -04:00
Mike Blumenkrantz b9b9ed68b0 remove video child references from wl compositor
this is an x11-only thing
2016-04-04 12:51:20 -04:00
Mike Blumenkrantz 03f11366bb add back CTRL to keybindings editor display
ref fcac68958e

fix T3412
2016-04-04 12:34:49 -04:00
Mike Blumenkrantz 7541a51599 use zone geometry for shelf zone obstacles
shelves use relative coords, so zone obstacles must have adjusted coords
passed in order to calc correctly

fix T3404
2016-04-04 11:29:01 -04:00
maxerba f60273357f Updating italian translation 2016-04-02 22:19:26 +02:00
Mike Blumenkrantz dead7646d4 delete internal wayland elm windows in wl client delete request callback
fix T2874
2016-04-01 16:48:50 -04:00