Commit Graph

21330 Commits

Author SHA1 Message Date
Mike Blumenkrantz 6aee63d1dc redo wl (xdg)shell surface ping
- remove (wrong) global variables which tracked client-specific resources
- start ping upon creating a shell surface
- track client-specific shell resources on a per-client basis
2016-04-18 15:37:22 -04:00
Mike Blumenkrantz a86af80da0 trivial wl shell module cleanups
remove some old comments, don't pass global data as function param
2016-04-18 15:30:03 -04:00
Mike Blumenkrantz 536a3a7ff6 make startup/restart app exec timing protocol-specific
this allows different display protocols to start their applications at
different times to ensure that any initialization has completed prior to
starting anything requiring a window

fix T3475
2016-04-18 15:27:47 -04:00
Mike Blumenkrantz 40af8d5193 reject xwayland clients in wl client resize handlers
fix T3461
2016-04-18 13:15:09 -04:00
Mike Blumenkrantz a1d0f97968 do not perform x11 mouse/wheel grabs for ANY binding contexts
these are traditionally compositor-only actions which may filter through
many different objects but are not meant to activate on window contents

resolves issues where some related mouse bindings were blocking input on windows
under x11

 #thingsthatneeddocs
2016-04-18 12:55:30 -04:00
Shuhrat Dehkanov 79e1928427 xkbswitch: establish parent/child relationship
Summary:
There is an edge case that results in SIGFAULT in Enlightenment when
"Keyboard Settings" dialog is closed prior to "Add New Configuration"
dialog and "OK" button is pressed in the latter one.
This makes sure that closing the dialogs follows the parent/child logic.

@fix

Test Plan:
1. Go to Settings -> All -> Input -> Keyboard and press "Add"
2. Observe that "Add New Configuration" dialog is opened
3. Select/highlight any new layout
4. Go back to "Keyboard Settings" dialog and close it
5. Press "OK" in "Keyboard Settings" dialog
6. Observe that Enlightenment sigfaults

Reviewers: zmike, raster

Subscribers: cedric, seoz

Differential Revision: https://phab.enlightenment.org/D3901
2016-04-18 12:00:20 -04:00
Mike Blumenkrantz b64a637428 allow mixer volume increase actions to exceed 100%
ref 0bbb20a3be

cc @raster probably should have some kind of theme indicator in the theme
for "high" volumes > 100%
2016-04-18 11:44:52 -04:00
Carsten Haitzler 90a4ad88b7 e - wireless module - remove horrible memcpy with offsetof magic
while it technically wuld work, this memcpy here is fragile and the
moment some struct members changed it'd fall apart and have fields all
misaligned etc. in fact using offsetof means it might over-copy a bit
extra due to alignment of the connect_cb vs method in Connman_Service.
so manually aissgne the fields in the func instead to be far safer.

if anything this should become a sub-struct with a type that can then
be properly copied even if things change.

@fix
2016-04-13 20:28:27 +09:00
Mike Blumenkrantz 119a0629f2 unset release mode 2016-04-12 17:39:56 -04:00
Mike Blumenkrantz c2fc83515f 0.21.0-alpha NEWS updates 2016-04-12 17:12:32 -04:00
Mike Blumenkrantz d433a391ea 21.0-alpha release 2016-04-12 17:12:29 -04:00
Mike Blumenkrantz e31b127dd4 add NEWS from 20.1-6 releases 2016-04-12 16:58:09 -04:00
Mike Blumenkrantz 39bb5591d6 update README.wayland known issues list 2016-04-12 16:58:08 -04:00
Mike Blumenkrantz fe34f45995 Revert "mixer: try to fix a possible bug"
This reverts commit 61182d6434.

accidentally pushed, does not resolve anything
2016-04-12 13:38:44 -04:00
Mike Blumenkrantz fefdca1f00 redo e_place_desk_region_smart() to handle multiple screens
this code is unbelievably bad.

fix T3404
2016-04-12 13:33:54 -04:00
Marcel Hollerbach 61182d6434 mixer: try to fix a possible bug
for the case the default sink was removed the gadget will get a new
  default sink again, for the case of pa there is the possibility that
  at this time the sink is still the default one, but the sink gets
  removed. so we better set the default index to -1 and return just some
  sink for the case the default is deleted.
2016-04-12 13:33:54 -04:00
Carsten Haitzler 1db14b547a e intel - fix number 2
so the crazieness in e+intl was because of eina_str_tolower()
silliness... so work with it and another patch to follow on from
01e53356f8 ...

@fix
2016-04-12 16:31:32 +09:00
Carsten Haitzler 01e53356f8 e intl - fix string buffer length size
this intl code was broken using sizeof a pointer (sizef char *) vs
size of the actual buffer used.

@fix
2016-04-12 14:22:20 +09:00
Mike Blumenkrantz 48fbfa2908 reduce efl version req to 1.17.0, make new gadget stuff 1.7.99+ at runtime 2016-04-11 15:15:51 -04:00
Mike Blumenkrantz 7db999dec1 xkb compiler warns--
ref 53636dd87c
2016-04-11 15:05:32 -04:00
Mike Blumenkrantz c9e168460e ensure that wl keymap is initialized, even if no configuration exists
fixes no-config crash

ref 62440eb5fe
2016-04-11 14:53:52 -04:00
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