Mike Blumenkrantz
4773dd7039
match wl_wl output sizing in wl_x11 when running in an existing wm session
...
global sizing policy++
2016-07-12 12:51:00 -04:00
Mike Blumenkrantz
c6ef590e9e
set x11 randr iface for wl_x11 based on wm presence, not composited state
...
fixes usage in non-composited x11 environments (eg. openbox)
2016-07-12 12:51:00 -04:00
Mike Blumenkrantz
08aaeffade
handle e_comp_x init failure more effectively and perform cleanups
...
fixes autodetection for x11 wayland output without setting E_WL_FORCE
2016-07-12 12:51:00 -04:00
Chris Michael
f3371ff04c
'cur_group' variable is unused here if we are not building for wayland
...
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2016-07-11 12:11:00 -04:00
Derek Foreman
963afc8fea
Properly send kbd focus to xdg_shell popups
...
Oops, a client can have multiple top level windows.
ref f391a0fb67
2016-07-08 16:12:43 -05:00
Chidambar Zinnoury
b80f0bfef7
e desks config: Group all flip-related settings to their own tab.
2016-07-05 22:15:57 +02:00
Chidambar Zinnoury
5eb12b6972
e desks config: Bring some flip settings back.
...
These were inadvertently removed by e1369a24bd
.
@fix
2016-07-05 22:15:57 +02:00
Mariusz Bialonczyk
5dd4a7eddf
modules/temperature: cosmetics: typo fix (celcius -> celsius)
...
Reviewers: zmike!
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D4129
2016-07-05 11:45:00 -04:00
Andy Williams
67463782a8
Fix compiling with WL off
2016-06-30 23:27:14 +01:00
Marcel Hollerbach
30b22f30af
e_xkb: use the new e_comp_wl_input_index_set api
...
For now the setting of a new layout does not mean the complete file
needs to be recompiled.
2016-06-30 20:35:58 +02:00
Marcel Hollerbach
d1e700cb68
e_comp_wl: introduce api to set index of keymap
...
this commit introduces the setting of the index. Setting the index here
means that the layout with the id 0..n, out of the compiled keymap file
will be used. After a new index is set the modifiers are updated, that
the client are aware of the new resulting group.
If the api is called before the compositor is inited (this can happen
in e_xkb, so the drm can use the keymap at startup) then the index is
saved in between and will be flushed once the compositor does the init.
2016-06-30 20:19:33 +02:00
Derek Foreman
f391a0fb67
Fix xdg_shell keyboard enter/leave events
...
On xdg_shell we should only ever send enter/leave to top level surfaces
or GTK becomes sad.
2016-06-29 16:23:41 -05:00
Derek Foreman
ada8e2deac
Don't send keyboard leaves to unmapped wayland surfaces
...
There are actually toolkits that create surfaces, do nothing with them,
and destroy them. Sending keyboard leave events for this causes problems.
Fixes a bug in handling of some GTK popups.
2016-06-29 16:21:49 -05:00
Derek Foreman
1f44a593c2
Track whether a surface is an xdg one
2016-06-29 16:19:20 -05:00
Derek Foreman
7b470c402e
Set up attributes properly for wl_shell transient windows
...
This fixes Qt sub-windows.
2016-06-29 13:20:45 -05:00
Derek Foreman
27e9845abd
Only unignore a client on the first commit with a buffer
...
Otherwise, if a wayland client does its first commit without a buffer
attached it will confuse our focus logic.
2016-06-29 13:20:37 -05:00
Mike Blumenkrantz
033217c8e1
destroy evry's focus-out timer if focus-in occurs before timer triggers
...
fixes dismissal during comp input regrabs
2016-06-29 10:02:47 -04:00
Derek Foreman
124e59df6f
Add a pixel get callback for mirrors
...
Mirrors can be rendered independently of what they're mirroring,
which (at least under wayland) can result in a situation where the
mirror is rendered before the parent sets up their image pointers
properly.
We give mirrors their own callback to prevent that from causing a
crash.
2016-06-28 15:44:00 -05:00
Derek Foreman
a04ee8e253
Revert "Always clear the mirror image data pointer"
...
This reverts commit 326d638ba2
.
This, for some reason, resulted in client surfaces being blacked out,
despite only ever changing mirror surfaces.
2016-06-28 15:43:54 -05:00
Derek Foreman
ab5879b926
Fix wayland pixmap ids again
...
Wayland pixmap ids are a different data type for internal and
external windows. cast them both to 64-bits so they're the same
size regardless of arch.
ref d3ba524a62
2016-06-28 15:43:45 -05:00
Marcel Hollerbach
4f0e3bce84
emix: update sink of sink_input when changed
...
this fixes none changing sinks in the app.
2016-06-25 17:12:35 +02:00
Marcel Hollerbach
afeb588632
e_comp: silence warning, this time really
...
as said on the ML
2016-06-25 16:00:30 +02:00
Marcel Hollerbach
a80bc13336
e_comp: silence warning
...
after talking to zmike, this is by intend.
2016-06-25 15:29:45 +02:00
Marcel Hollerbach
9c8b6a1c5d
e_xkb: eval group before setted to wl
...
otherwise we are going to set 0 as default group.
This commit refactors out _eval_cur_group from the init timer, since wl
does not need a init timer.
2016-06-25 15:01:44 +02:00
Marcel Hollerbach
4bc61cfbd3
music-player: add spotify
2016-06-25 01:11:57 +02:00
Derek Foreman
c22c140c2f
Fix zone setup for wayland compositor on X
...
Both the X and WL code try to set up the output pointer for the
zone. Make the WL output take precedence, since it's actually
used for events.
2016-06-24 14:19:36 -05:00
Mike Blumenkrantz
cefcc5248f
add some hacks to route mouse events to wl popups correctly while mouse is down
...
in a choice between fixing a corner case popup behavior and breaking dnd
or having functional dnd and adding hacks to fix corner case popup behavior,
adding more hacks was the obvious correct solution
ref 03a4ecbdb0
2016-06-24 11:31:02 -04:00
Mike Blumenkrantz
4852a6903b
remove unused event info from _e_comp_wl_mouse_out()
2016-06-24 11:31:02 -04:00
Derek Foreman
eb94710146
Don't try to send surface presence events for zones with no wayland output
...
Avoid that NULL pointer deref.
2016-06-24 10:05:18 -05:00
Mike Blumenkrantz
191e5180b5
Revert "set NOGRAB pointer mode on comp object event objects"
...
This reverts commit 03a4ecbdb0
.
this should be correct, and yet it crashes xwayland and breaks dnd
2016-06-23 18:06:22 -04:00
Mike Blumenkrantz
03a4ecbdb0
set NOGRAB pointer mode on comp object event objects
...
fixes dragging off surfaces in wayland
2016-06-23 17:16:03 -04:00
Derek Foreman
bdf1017f90
Don't send configure to wl_shell popups
...
This confuses Qt badly, and rightly so, because we shouldn't be
doing it.
2016-06-23 11:26:57 -05:00
Derek Foreman
453e6adc33
Use e_client_util_is_popup for checking wayland clients
...
All the different popup types are tested by the helper function,
the current wayland tests were missing some.
2016-06-23 11:22:47 -05:00
Mike Blumenkrantz
9a50f6b218
disallow pager window drags for popups and ignored windows
2016-06-23 12:13:24 -04:00
Mike Blumenkrantz
22aa63c4a3
Revert "do not change E_Client->saved values during maximize if need_maximize is set"
...
This reverts commit 9a9c09f514
.
a better solution should be found at some point since this is broken in x11 too
2016-06-22 13:31:50 -04:00
Mike Blumenkrantz
99e4f8452b
don't set need_maximize during wl commit maximize
...
this breaks the maximize!
partially reverts b5576dbb8c
2016-06-22 12:30:01 -04:00
Mike Blumenkrantz
da7e7d19fb
freeze events on comp object input rects during deletion
...
prevents some event propagation which would cause flickering
2016-06-22 12:28:48 -04:00
Derek Foreman
326d638ba2
Always clear the mirror image data pointer
...
Under wayland evas will sometimes use the old one, I have no idea why.
Fixes a crash bug when mousing out of menus in a GTK app under wayland.
fix T3576
2016-06-21 17:53:16 -05:00
Marcel Hollerbach
a45bbe3d35
e_xkb: init the keyboard on init
...
we need to flush in the first group here. For wayland currently each
keyboard configuration needs to be flushed each time.
2016-06-21 21:43:57 +02:00
Derek Foreman
11796c8b88
Update some wl_shell window handling logic
...
Our xdg_shell implementation has received some fixes that are also
applicable to wl_shell. Qt still uses wl_shell, so we do have a test
case, and do need to keep it up to date.
This copies some window attributes, clamping logic, and diagnostic prints
from the xdg_shell implementation.
2016-06-21 12:33:49 -05:00
Derek Foreman
19817b47de
Send wayland surface enter and leave events
...
These events are supposed to be sent to clients that have bound wl_output
and manipulate surfaces.
2016-06-21 12:33:49 -05:00
Derek Foreman
11cb74a288
Track X outputs for zones
...
We needed this for wayland, so we add the same tracking for X to be
consistent - though we have no users yet.
2016-06-21 12:33:49 -05:00
Derek Foreman
3ff5e8dff4
Track wayland outputs for zones
2016-06-21 12:33:49 -05:00
Derek Foreman
fc37423c2e
Add new API for finding a zone by its id string
2016-06-21 12:33:49 -05:00
Mike Blumenkrantz
36c486906d
apply client size for session recovery remember
...
fixes maximize restoring
2016-06-20 16:04:11 -04:00
Mike Blumenkrantz
b5576dbb8c
use separate flag for pending wl client unmaximize
...
also set flag to prevent saved geometry from being overwritten
2016-06-20 16:04:10 -04:00
Mike Blumenkrantz
9a9c09f514
do not change E_Client->saved values during maximize if need_maximize is set
...
this is indicative of a deferred maximize, so don't re-set it and screw up
previously-set values
2016-06-20 16:04:10 -04:00
Mike Blumenkrantz
b5ef8766f4
store maximize property from E_Remember to disk
2016-06-20 16:04:10 -04:00
Mike Blumenkrantz
c5266515ba
set need_maximize flag on remembered client when applying maximize
...
causes maximize to be applied
2016-06-20 16:04:10 -04:00
Mike Blumenkrantz
0f022976e0
use pending wl maximize value to determine maximize flag in xdg configure
...
fixes some cases where fast configures would break maximizing
2016-06-20 16:04:10 -04:00
Mike Blumenkrantz
12bcf7ecea
match deskmirror client opacity with original object
...
fix T3911
2016-06-20 16:04:10 -04:00
Mike Blumenkrantz
10eb06b377
update secondary remembers when a session recovery remember is updated
...
the session recovery remember may block updates for the user-created
remember, creating continuity issues when a new instance is launched
2016-06-20 16:04:10 -04:00
Mike Blumenkrantz
e8e6ada2e1
prevent E_Remember->used_count from going negative
2016-06-20 16:04:10 -04:00
Mike Blumenkrantz
890008cdf2
prevent editing of session recovery remembers
...
find/create new ones in this case
2016-06-20 16:04:10 -04:00
Mike Blumenkrantz
a93aadfe01
replace wireless connection error #warning with notification
...
this needs a more robust infrastructure than I'm prepared to write at
the moment, but errors do need to be seen
2016-06-20 12:37:28 -04:00
Mike Blumenkrantz
aa1768a9d9
enforce mouse grabs and block client/compositor event propagation while active
...
fixes cases where mouse events could filter to objects and cause unwanted effects,
such as evry hiding randomly under wayland
2016-06-18 10:56:14 -04:00
Derek Foreman
4bd97bfd5c
Fix eo object use after deletion in evry
...
On window hide the focus out callback is triggering and causing a new
timer to be set up. This timer fires when the window no longer exists.
Remove the focus_out callback when we hide the window.
2016-06-17 16:40:20 -05:00
Mike Blumenkrantz
6fd2d4487f
force unset override and do reshadow on evry when switching to normal win mode
...
fixes window movement and close animations
2016-06-17 17:19:02 -04:00
Derek Foreman
b6819e5a77
Fix wl_shell popup livelock
...
Trying to put wl_shell popups in the popup layer results in stacking
problems later and a never ending loop.
Just don't.
fix T3433
2016-06-16 14:37:15 -05:00
Mike Blumenkrantz
6b081d1d44
do not mouse-out of clients on focus out when focusing a popup
...
popups are transient in nature and do not interfere with mouse-based focus
policies
ref 3e6d6b348f
2016-06-16 14:48:51 -04:00
Derek Foreman
4f8dd3f1e5
Fix wl_shell clamping rules
...
The current clamping logic clamps submenus so that they're contained
within their parent instead of adjacent to them.
2016-06-15 16:39:08 -05:00
Derek Foreman
2463ce8b43
Fix crash in wl_shell surface destroy
...
wl_shell doesn't set up shell.data, but this destructor is shared
with xdg_shell which does.
2016-06-15 15:19:32 -05:00
Mike Blumenkrantz
771f71e6a9
add separate mouse in/out handlers for internal wins
...
internal wayland windows are windows with ssd, meaning they can only receive
pointer events on the contents of the window and not the entire window including
decoration regions
ref T3819
2016-06-13 12:00:09 -04:00
Mike Blumenkrantz
a6bed1841a
use focused client for window actions if passed object is not a client object
...
in the case where an action is triggered from the compositor or manager contexts
the passed object will not be a client, causing actions to fail when they should
succeed
fix T3854
2016-06-09 11:26:17 -04:00
Al Poole
4f1f29ae35
fix openbsd battery calc on amd64
2016-06-09 11:15:09 -04:00
Mike Blumenkrantz
0e416648df
optimize e_client_res_change_geometry_restore()
...
performing the entire unfullscreen/unmaximize routine causes a significant
amount of overhead, and it also breaks window geometries in wayland due to
synchronization
2016-06-07 11:24:27 -04:00
Derek Foreman
573df39c17
Allow pixmap argb state to override window state for wayland clients
...
Wayland argb state depends entirely on the attached buffer, so we
should use that for determining object argb state on wayland.
ref 6d397e313b
ref 60da58d8ad
2016-06-06 14:06:00 -05:00
Mike Blumenkrantz
e95098fedb
add tooltip for unloadable teamwork links, make ctrl suppress tw activation
...
fix T2995
2016-06-02 13:08:52 -04:00
Mike Blumenkrantz
07ed7a1433
force mouse-in again during comp ungrab if client previously had mouse-in
...
unfocus performs a mouse-out, so this is necessary in order to allow events
to reach the client again after a grab ends
2016-06-01 13:11:20 -04:00
Mike Blumenkrantz
492f9bcf4e
unset comp_grabbed flag before action client compositor ungrab
...
this flag was blocking accurate event propagation in some cases
2016-06-01 13:11:20 -04:00
Mike Blumenkrantz
48ee824c63
only block mouse-out callback for wl action clients if the mouse is grabbed
2016-06-01 13:11:20 -04:00
Mike Blumenkrantz
3c9013eeb0
protect against crash when deleting wl session recovery remember
2016-06-01 13:11:19 -04:00
Mike Blumenkrantz
ffbf4235dd
Revert "eo_del -> eo_unref in xwayland"
...
This reverts commit 1eddd375d8
.
2016-06-01 09:57:17 -04:00
Mike Blumenkrantz
859b1b989f
handle shaded state when receiving x11 configure requests
...
previously this would resize the window without unshading it, leading to
a confusing state for the window and the user
2016-05-31 12:31:50 -04:00
Mike Blumenkrantz
68c93a1adf
use current zone when activating a client's menu with the mouse
...
the mouse defines position of a mouse-activated menu
fix T3701
2016-05-31 12:23:50 -04:00
Mike Blumenkrantz
1fef7d04dc
delete x11 mouse-in job when hiding the job's client
...
spurious x11 mouse events will be received when activating a mouse binding which
flips the active desk
fix T3716
2016-05-31 12:21:09 -04:00
Hannes Janetzek
b3561d7641
just a small patch to make sure evry_hide does not get called synchronously from an Evry_Action
2016-05-31 11:42:27 -04:00
Mike Blumenkrantz
3e7f8284cd
set x11 maximized window hint correctly on resize end
...
fix T3702
2016-05-27 12:15:26 -04:00
Chris Michael
0d2b6b047c
port enlightenment to use drm2
...
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-27 09:53:41 -04:00
Chris Michael
c21bced4f8
change 'if' clause to make gcc-6 happy
...
Gcc 6 was spitting a nasty little compiler warning here:
src/bin/e_fm.c: In function ‘e_fm2_icon_geometry_get’:
src/bin/e_fm.c:2354:4: warning: this ‘if’ clause does not guard...
[-Wmisleading-indentation]
if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0;
^~
src/bin/e_fm.c:2354:19: note: ...this statement, but the
latter is misleadingly indented as if it is guarded by the ‘if’
if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0;
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-24 15:48:18 -04:00
Mike Blumenkrantz
b40857b9f0
use current zone for shelf config dialog
...
fix T3683
2016-05-24 11:59:56 -04:00
Mike Blumenkrantz
c58a3919e9
update client remember on opacity change
...
fix T3681
2016-05-24 11:52:31 -04:00
Mike Blumenkrantz
b6b89256e1
use correct indexing for x11 teamwork server atom array
...
CID 1355933
2016-05-23 11:34:32 -04:00
Mike Blumenkrantz
361bcd9bcd
upgrade teamwork module to use teamwork v2: teamwork++
...
use display protocol and add wayland support
2016-05-20 15:06:09 -04:00
Davide Andreoli
107872af91
enlightenment_open: correctly return the exist status code of the executed command
...
@fix and close T3555
2016-05-20 19:25:42 +02:00
Derek Foreman
e5e875ded8
Fix dmabuf breakage of non wayland builds.
...
#IWearTheHatOfShame
2016-05-19 10:23:22 -05:00
Chris Michael
bd1847162e
remove unused variables in _dmabuf_add function
...
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-19 08:57:43 -04:00
Mike Blumenkrantz
c53a6efc8d
add client util function for detecting popups, block popups in ibar/tasks
...
mainly a wayland issue where popup menus would cause the tasks gadget to
grow and shrink uncontrollably
2016-05-18 14:43:21 -04:00
Derek Foreman
402c56e1f2
clean up warnings in dmabuf code
2016-05-18 12:34:23 -05:00
Mike Blumenkrantz
1eddd375d8
eo_del -> eo_unref in xwayland
2016-05-18 13:26:59 -04:00
Derek Foreman
2d1802375d
Add DMABuf support for wayland
...
This adds compositor handling of DMABuf buffers. DMAbuf capabilities
are advertised for the drm back-ends, and DMAbuf buffers are handled
as native surfaces.
2016-05-18 12:05:34 -05:00
Derek Foreman
da23b852e7
Disable wayland dmabuf for the X11 backend
...
This is just too hard to get right and nobody will notice its
absence, so let's not bother for now (or ever, I hope)
2016-05-18 12:05:34 -05:00
Derek Foreman
6b0c55dd96
Track parent compositor dmabuf capabilities on wayland on wayland
...
When running as a wayland compositor connected to another wayland
compositor, we don't want to advertise dmabuf capabilities if the
parent compositor doesn't support them.
If it does, we'll want to proxy dmabuf requests to it instead of handling
them ourselves.
Expose this as new bools in e_comp_wl.
2016-05-18 12:05:34 -05:00
Derek Foreman
f6d99980ba
Remove GL presence test from native surface set on dirty objects
...
This test has been pushed into e_comp_object_native_surface_set() and
will be done as appropriate.
Upcoming wayland DMAbuf buffers need native surfaces even if GL isn't
present.
2016-05-18 12:05:34 -05:00
Derek Foreman
50a3f84191
Move the test for resetting no native surface to after caps checks
...
This is supposed to be functionally equivalent, but is a little tricky to
prove.
The benefit of this is a simplification to the callers, which no longer
have to consider gl capabilities in the call, as that is now tested for
internally.
2016-05-18 12:05:33 -05:00
Derek Foreman
57f0150b73
Break native surface test criteria into explicit wayland and X cases
...
Until now it's been reasonable to consider these together as the
criteria have been similar. With the upcoming introduction of wayland
DMAbuf buffers, they diverge.
We don't need to test for GL in the wayland case because we don't
advertise GL capabilities to clients when we don't support it, so they
can't create GL buffers unless we can display them.
2016-05-18 12:05:33 -05:00
Derek Foreman
1774b59923
Add e_pixmap API for testing if a pixmap is a native surface
...
DMAbuf for wayland will complicate determining whether a pixmap can use
a native surface or not, so we add an API here to check this.
Note that this doesn't take compositor capabilities into account - for
example, X pixmaps need GL enabled to use native surfaces. This is
already tested elsewhere.
2016-05-18 12:05:33 -05:00
Mike Blumenkrantz
91d16899b1
fix e_place_zone_region_smart_cleanup()
...
this function was adding the same client multiple times, failing to cleanup
windows effectively, and misusing the skiplist functionality of e_place functions
fix T3654
2016-05-18 12:32:27 -04:00
Mike Blumenkrantz
366193f2d2
remove pulse sinks/sources from list before running cbs which access the list
...
this guarantees a crash any time the default sink gets removed since it will
always re-set the about-to-be-deleted default sink as the default sink
fix T3277 probably
2016-05-17 15:05:18 -04:00
Carsten Haitzler
62bcd72eef
e - suspend.hibernat intelligently - dont account for ac power
...
this means only lid/screen status affects intelligent suspending. it's
not what people expect and doesnt rely on ecore getting mains power
stuff right too.
2016-05-17 00:33:47 +09:00
Chris Michael
b5e47665bb
stop filling logs with buffer transform/scale spam
...
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-15 10:47:53 -04:00
Carsten Haitzler
59e2eb40f8
warnings - silence some theoreitcal wranings in build
...
a bunch of "potentially uninitialized variable" warnings fixed.
2016-05-15 23:14:15 +09:00
Mike Blumenkrantz
ec9a888fcf
more tweaks for manual window placement in client eval
2016-05-13 11:38:17 -04:00
Mike Blumenkrantz
685aafcd41
prevent double emission of E_EVENT_CLIENT_SHOW
2016-05-13 11:28:27 -04:00
Mike Blumenkrantz
030d083c73
ensure that client eval correctly handles retries on visibility-pending clients
...
ref 2854352bc8
fix T3636
2016-05-13 11:24:08 -04:00
Marcel Hollerbach
1aea5ab079
e_xkb: reconfig when we have set a new set of layouts
...
When in the config dialog a new set of layouts is created, this set has
to be told to the displayserver. Like at the startup of e, so calling
e_xkb_reconfig().
fix T3072
2016-05-12 21:02:40 +02:00
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
5d300bcb46
fix usage of e_object_unref in xkbswitch when managing new kbd dialog
...
probably harmless?
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
280a29cc95
Revert "add SA_NOCLDWAIT to SIGCHLD flags when xwayland module loads"
...
This reverts commit 66a3fcb013
.
fix T3599
2016-05-11 12:49:53 -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
ac86429a2c
manage pending state list more effectively in wl shell
...
fix T3433
2016-05-10 11:34:48 -04:00
Mike Blumenkrantz
240561fda1
do not add ignored clients to ibar menu
...
fix T3603
2016-05-09 13:56:56 -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
66a3fcb013
add SA_NOCLDWAIT to SIGCHLD flags when xwayland module loads
...
pulseaudio uses waitpid internally and will deadlock if ecore-audio
performs a deferred connect
2016-05-06 13:43:47 -04:00
Mike Blumenkrantz
3178064d30
ensure xwayland module init does not fail due to early startup
...
comp_type may not be set at the time of init
2016-05-06 13:42:20 -04:00
Mike Blumenkrantz
01c261e9f7
unset DISPLAY during mixer's pulse backend startup
...
fixes more xwayland deadlocks
2016-05-06 13:40:03 -04:00
Mike Blumenkrantz
ed25a5005f
clean up mixer includes
...
config.h needs to be included. always.
2016-05-06 13:38:09 -04:00
Mike Blumenkrantz
720074e926
add configure flag for xwayland binary
2016-05-06 13:37: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
9451f22d6c
evry null deref
...
CID 1355061
2016-05-05 09:33:55 -04:00
Chris Michael
9e3b8b7528
disable option for mouse to use Application theme if we are running in Wayland
...
Small patch to disable selecting Application themed mouse pointers
when running in wayland as this option is currently broken when
running in wayland (gives no mouse cursor at all)
e_pointer calls _e_pointer_x11_setup (from _e_pointer_type_set) which
only sets the cursor via ecore_x_cursor_shape_get calls...
essentially you end up with no mouse cursor because e_pointer is
missing codepaths to lookup system mouse cursor images when running in
wayland.
ref T3585
Signed-off-by: Chris Michael <cpmichael@osg.samsung.com>
2016-05-04 14:55:26 -04:00
Mike Blumenkrantz
768252740b
don't revert focus to desktop fileman during compositor grab
...
grabs indicate an action is already occurring and focus shouldn't be altered
2016-05-03 20:27:03 -04:00
Mike Blumenkrantz
ecf22d6787
hide evry on focus-out
...
handles case where focus is lost due to compositor grab
2016-05-03 20:27:03 -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
33503babc8
apply xdg-shell activated state based on popup surface focus hierarchy
...
if a popup is activated, the originating toplevel surface should also remain
focused
2016-04-27 11:28:07 -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
Andy Williams
bcefcdf50c
Only set the icon theme in elm on change
...
Avoid forcing config changes when they're not needed
2016-04-26 22:55:16 +01: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
008a3a8152
distribute all weekeyboard edj files
...
fixes a build failure in packaging
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
Andy Williams
90b1bf63b7
Set the fdo theme to Elementary as well
...
If the user has specified that applications should
have the same icons then push the value to elm's
new icon lookup configuration.
2016-04-26 00:18:59 +01:00
Eduardo Lima (Etrunko)
677adbbc2e
Revert "Bluez 5"
...
This reverts commit 767df72a75
.
2016-04-25 19:56:22 -03: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
Eduardo Lima (Etrunko)
767df72a75
Bluez 5
...
Signed-off-by: Eduardo Lima (Etrunko) <eduardo.lima@intel.com>
2016-04-25 19:29:01 -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
53320330c6
protect xdg-shell functions from accessing deleted client data
...
this is mostly an issue for internal windows since they get deleted by
the compositor before the client is aware
2016-04-25 14:11:24 -04:00
Mike Blumenkrantz
417ed08329
ensure evry gadget popups effectively clamp to their zones
2016-04-25 13:10:44 -04: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
28dc5ced61
remove some X references in settings dialogs
...
fix T3435
2016-04-22 13:30:05 -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
Carsten Haitzler
14b6a658cf
e syscon - dont show syscon if desklock is up - you can't respond
...
this also will lock desklock as syscon grabs input away from desklock.
press pwr button while desklock is up to find out. this fixes that.
@fix
2016-04-21 12:17:04 +09:00
Carsten Haitzler
76ed021006
e - e_start - update mtrack to use new debug mode for hunting bugs
...
this won't affect anyone who doesnt have a ~/.e-mtrack file ... this
is for debugging purposes and no others
2016-04-21 09:42:13 +09:00
Mike Blumenkrantz
fc759b1f0c
more accurately reject wl selection setting based on whether serial is invalid
...
copycopycopycopy
2016-04-20 12:38:08 -04:00
Mike Blumenkrantz
9dd36ff01c
apply formatting rules to e_comp_wl_data.c
2016-04-19 17:38:22 -04:00
Mike Blumenkrantz
bfd204be71
update wl dnd/clipboard support to v3 of protocol
...
this code is mostly copied from weston:
78d4bf9a3ec990dceee23fd53962a69891352a0e
9c93179023fe894e417ccd20533d72d672d976fc
b288988e831cee3deb7f8bb1a3f440c86230dd9f
4061e2b67e62d5d2a635f0b87098f331082e8145
credit to Carlos Garnacho <carlosg@gnome.org> as original author
ref T3455
2016-04-19 17:34:58 -04:00
Mike Blumenkrantz
33e23c7364
add copyright headers (MIT) from weston to e_comp_wl_data
...
these files were created containing code which was very obviously copied from
weston. when copying code, copyright headers must also be copied in order to
comply with licenses.
2016-04-19 17:27:17 -04:00
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
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
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
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