Mike Blumenkrantz
4464c681fd
block client mouse move calls from comp object during move/resize
...
this is now handled by the event grabber. many callbacks on this
object are due to clip changes instead of genuine mouse movements,
meaning that processing events can lead to further resizes during a
render cycle
2017-06-24 11:57:15 -04:00
Carsten Haitzler
a9cd60fb90
e - remove doofus-like code from mike with regards to making e crash or not
2017-06-24 13:27:16 +09:00
Mike Blumenkrantz
aad74ea341
do not enable abort on critical in development builds for raster only
...
let's dispense with the new environment variables and workarounds and
avoid future conflicts with this efl-style problem solving
2017-06-23 18:23:42 -04:00
Mike Blumenkrantz
46fc9c0988
freeze client action event grabber stacking
...
ensure event stacking does not get modified by external handlers
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
8b8703cfa6
use safe list iterating when clearing a gadget site during shutdown
...
demo gadgets are immediately removed when deleted, leading to list
corruption unless a safe iterator is used
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
9fa3fdfc78
always grab input when showing a gadget wizard
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
be0015a283
hide gadget editor when dragging/wizarding a new gadget
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
11a6d7ae35
Revert "e - allow env var to turn off aborting at any CRI issue"
...
This reverts commit 62feb358e6
.
set EINA_LOG_LEVELS=e:0 or comment out code locally if you aren't interested
in helping to de-bug development builds
this is meant to be as convenient for users as disabling "core"
features in efl builds in order to deter them from disregarding bug
reporting
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
fd2817df4a
use seat0 as default seat name instead of default
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
7e6a2a9064
update gadget position during a resize from top/left edge
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
099e6e019d
reset demo gadget id before deleting gadget object during drop operation
...
ref 75224784bd
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
446860b68a
if gadget wizard returns a zero id, remove gadget from site and destroy
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
4c58940291
force horizontal orient for all gadget editors with orientation
...
vertical orient does not fit well into any list/grid widgets, not sure
if this can be further improved yet
2017-06-23 17:49:44 -04:00
Mike Blumenkrantz
ebfb925a11
redo the gadget editor (again)
...
the list implementation had some issues with sizing and was also
inflexible and prevented a good display for desktop gadget sites
2017-06-23 17:49:43 -04:00
Mike Blumenkrantz
6a1d0226ed
allow gadgets to return a null object for demo objects
...
this indicates the gadget should not be advertised for the given demo
purpose
2017-06-23 17:49:43 -04:00
Mike Blumenkrantz
97c3db5ab1
ensure flag to preserve gadget editor is unset after setup
...
the first click on the desktop should always dismiss the editor if
a gadget is not being dragged
2017-06-23 17:49:43 -04:00
Mike Blumenkrantz
1b15a85d74
print object type if name is null during shape debug
2017-06-23 17:49:43 -04:00
Mike Blumenkrantz
2716802ec9
set pass events on shape debug rects
2017-06-23 17:49:43 -04:00
Derek Foreman
4879b340a2
Initialize the Evas_Native_Surface to 0 for dmabuf tests
...
ref e6f17dee5d
Should probably clear this one too, though the recent native surface api
changes won't cause any breakage here, future ones might.
2017-06-23 11:55:37 -05:00
Derek Foreman
5de9f0f8a3
Allow enabling experimental hardware plane support
...
Hardware plane support is inactive unless a scanout handler is set, this
patch adds a scanout handler and uses it when the env var
E_USE_HARDWARE_PLANES is set.
In the future this env var will go away when hardware plane support is
stable enough to enable it everywhere.
2017-06-23 11:54:08 -05:00
Derek Foreman
18fbd1da32
Don't delete busy E_Comp_Wl_Buffers
...
Hardware planes are going to make E_Comp_Wl_Buffer lifetimes harder to
manage, so we need to let the E_Comp_Wl_Buffer object outlive the
resource attached to it.
We already track a busy count, so we just have to use it to prevent
deleting a busy buffer.
2017-06-23 11:52:04 -05:00
Derek Foreman
acd0e4b036
Refactor wayland buffer releasing
...
This code should've been common but wasn't, so this might fix some
resource leaks.
2017-06-23 11:52:01 -05:00
Derek Foreman
e6f17dee5d
Clear the native surface structure before initializing it
...
Since the native surface "API" is isomorphic with pain and suffering, we
should be extra careful when we touch it.
2017-06-22 14:05:24 -05:00
Carsten Haitzler
62feb358e6
e - allow env var to turn off aborting at any CRI issue
...
some of these CRI logs are not wirth an abort... but mike seems to
think so... so i'm going to turn it off for me...
2017-06-22 10:34:16 +09:00
Carsten Haitzler
3e3b48478b
Revert "e comp object - stop being cricical where pixmap and win size dont match"
...
This reverts commit e288852393
.
Mike likes e to crash. :)
2017-06-22 09:23:14 +09:00
Carsten Haitzler
e288852393
e comp object - stop being cricical where pixmap and win size dont match
...
now i resize some windows and am in a white box of death each time...
this is really unfriendly... so downgrade to an err ad this is a
recoverable error.
2017-06-21 11:31:24 +09:00
Carsten Haitzler
655a8f3218
e start - remove mtrack ... no one using it (not even me)
...
:)
2017-06-21 11:27:50 +09:00
Mike Blumenkrantz
dae4bd6576
feed mouse-up to action client from event grabber, then attempt to end actions
...
signal actions don't pass through the same init methods as other actions, and
so it becomes possible for the mouse-up to fail to terminate the action
2017-06-19 15:26:34 -04:00
Mike Blumenkrantz
339cbde731
reject client mouse move if coords match previous position
...
ensure that random event feeds don't accidentally trigger unwanted
move/resize attempts which can break the compositor
2017-06-16 15:00:12 -04:00
Mike Blumenkrantz
bc175b0d7b
send version edje signal to ssd theme
...
allow enabling new theme features based on version
2017-06-16 15:00:12 -04:00
Mike Blumenkrantz
773122db66
store output subpixel value to randr2 screen data during drm init
2017-06-16 15:00:12 -04:00
Mike Blumenkrantz
d9c03f1059
use fake xinerama screens when initializing wl outputs
...
always ignore physical screens if fake ones are present
2017-06-16 15:00:12 -04:00
Mike Blumenkrantz
9f5a07d788
hook client object unref callback to cleanup comp object internals
...
ensure cleanup occurs before client object is freed
2017-06-16 15:00:12 -04:00
Mike Blumenkrantz
4933569bc1
don't null pointer after deleting internal win during wl delete request
...
this is invalid during a logout
2017-06-16 15:00:12 -04:00
Mike Blumenkrantz
5e7ca478d0
route all mouse movements to action_client during action grab
...
ensure client receives all necessary mouse events
2017-06-16 15:00:12 -04:00
Mike Blumenkrantz
b48419c577
only remove left/right maximize when removing vertical if left/right is set
...
avoid accidentally removing horizontal maximizes
2017-06-16 15:00:12 -04:00
Mike Blumenkrantz
b4e96a0aea
feed mouse up during window maximize if the current window is being dragged
...
prevent window from accidentally toggling its maximize state repeatedly
2017-06-09 20:18:14 -04:00
Mike Blumenkrantz
7d39be8c4a
send nograb signal to ssd theme on creation
...
disable pointer grabs on ssd borders
edge bindings can now be triggered during window drags
fix T5552
2017-06-09 20:18:14 -04:00
Mike Blumenkrantz
f396d3fe42
re-enable zone edges during window_move action
...
this can now be sensibly handled without accidentally sending input to
every object on the canvas
ref T5552
2017-06-09 20:18:14 -04:00
Mike Blumenkrantz
d0f45a48a4
use event_grabber to simulate explicit grab during window move/resize actions
...
this grabs the client's frame as well as any existing edge objects during drags
ref T5552
2017-06-09 20:18:14 -04:00
Mike Blumenkrantz
b0a7c98faf
do not trigger events/bindings on zone object events with timestamp==0
...
these are internal event feeds and should not trigger additional actions
2017-06-09 20:18:14 -04:00
Mike Blumenkrantz
41a5fe2708
delete client raise timer when beginning a move/resize operation
...
this breaks things in subtle ways
2017-06-09 20:18:14 -04:00
Mike Blumenkrantz
9f48fd5a9c
perform client raise before triggering move/resize BEGIN client hook
...
hooks may further modify stacking, so ensure any changes are done before
that point
2017-06-09 20:18:13 -04:00
Mike Blumenkrantz
58226266fd
store current pointer client into pointer struct
2017-06-09 20:18:13 -04:00
Mike Blumenkrantz
bf157e03dc
another fix for e_comp_wl->ptr.x/y coords being wl_fixed instead of ints
...
ref 2c7e91d38f
2017-06-09 20:18:13 -04:00
Derek Foreman
2bd4a9dc85
clean up some code
...
remove write-only variable in the pixmap struct
2017-06-07 12:12:16 -05:00
Derek Foreman
b37acd6e39
Revert "Stop misuing EVAS_NATIVE_SURFACE_VERSION macro"
...
This reverts commit 4a40614f2f
.
Apparently this macro is unlike similar macros in other libraries
that have more sensible semantics.
2017-06-06 16:42:01 -05:00
Derek Foreman
4a40614f2f
Stop misuing EVAS_NATIVE_SURFACE_VERSION macro
...
We should be stating the version the code supports, not the version
that the EFL version we compiled against supports.
2017-06-06 16:28:20 -05:00
Derek Foreman
52c379f4b2
Remove some duplicate operations
...
the native surface version was set outside of the switch statement,
so we don't need to re-set it to the same thing here.
2017-06-06 16:28:20 -05:00
Mike Blumenkrantz
1f2b95ae4f
use FOREACH_SAFE when walking client list during logout
...
internal clients can be instantly destroyed and removed from the list
2017-06-02 15:46:26 -04:00
Derek Foreman
4fca111eb5
Don't require dmabuf buffers to be writeable
...
Compositor doesn't need to write to this buffer, and most clients won't
allocate them in a way that the compositor can. Relax the test criteria.
2017-05-30 11:58:32 -05:00
Mike Blumenkrantz
15ea942ab8
update wl input to use new keyboard context/keymap api
...
fix keymap changes on compositor canvas
2017-05-25 18:37:25 -04:00
Mike Blumenkrantz
f11aeaa8d0
do not perform zone updates on ignored clients during evas callbacks
...
ignored clients should not have a zone or a desk
2017-05-25 12:15:42 -04:00
Mike Blumenkrantz
c6a0abc763
force client pixmap refresh immediately during resize if nocomp is active
...
in the case where this path was reached during x11 nocomp, the client's pixmap
refresh would be deferred until the end of nocomp, even when the refresh would
otherwise end the nocomp. instead, force the refresh immediately.
fix T4887
2017-05-24 10:10:07 -04:00
Mike Blumenkrantz
9df31011c8
unset wl selection target client if that client is deleted
...
the frame deletion callback would trigger far too late, allowing
crashes to occur if the selection target client exited between the
time of the drop event and the selection send event
2017-05-12 12:08:37 -04:00
Mike Blumenkrantz
b75f0d2be2
unset wl button mask when beginning a move/resize operation
...
ensure that clients do not receive a release event for any pressed
buttons
2017-05-12 12:08:37 -04:00
Mike Blumenkrantz
fbca4fa5e4
check efm path existence before using it during dnd selections
...
CID 1374484
2017-05-12 12:08:37 -04:00
Mike Blumenkrantz
effbb81722
remove check for desklock in comp object autoclose handler
2017-05-12 12:08:37 -04:00
Mike Blumenkrantz
203507fa22
add desklock interface handler for key press
...
key presses during desklock should only be received by the lock implementation
and not by any other handler. this ensures that nothing unexpected can happen
with focus and simplifies overall key handling
2017-05-12 12:08:37 -04:00
Carsten Haitzler
69f757edad
further fixes to screensaver/banking with window states like fullscreen
...
this is a further fix for T5464 to actually make the intended option
work at all. what was there was broken. now it works. init order was
wrong - screensaver was relying on event id's from e_client socde that
were not initted yet AND the handlers didnt account for "dont blank
when fullscreen window is there" at all. @fix
2017-05-07 14:35:14 +09:00
Carsten Haitzler
f6a92a5753
fix fullscreen no blank logic in e's dpms code
...
while this is still the wrong place and has other bugs, this fixes
T5464 ... but different things to fix now. @fix
2017-05-07 14:35:14 +09:00
Andy Williams
3c7c797e14
Add Change Wallpaper item in Desktop menu.
...
Also re-arrange Desktop menu to be more frequently used order
2017-05-05 22:34:21 +01:00
Mike Blumenkrantz
d81818b309
do not show iconic x11 clients on on icccm hint change
...
this is supposed to handle the case of state changing from withdrawn
to normal, but attempting to show an iconic client in this case results
in dead windows on screen
fix T5444
2017-05-01 13:26:11 -04:00
Mike Blumenkrantz
de0b9edee0
better handling for iconify during comp object show/hide
...
in the case where effects are disabled, no animation is started for iconify
operations, so this should fall through to the normal hide/show paths
ref T5444
2017-05-01 13:26:11 -04:00
Mike Blumenkrantz
8c621db693
check image load error when checking dmabuf viability in gl
...
ref T5418
2017-04-21 16:16:38 -04:00
Mike Blumenkrantz
2297427514
remove unused struct members
2017-04-21 16:16:38 -04:00
Mike Blumenkrantz
e1093c87ea
set initial x11 window geometry for windows which do not have wm hints
...
fixes case where a non-override window has no hints and must be shown on
startup
2017-04-21 16:16:37 -04:00
Carsten Haitzler
86532962b5
e thumb - extend extension that might have media metadata image thumbs
2017-04-17 12:07:53 +09:00
Al Poole
82f1b8a1c1
E -> Enlightenment_thumb -> Media -> Thumbnail Creation.
...
Summary:
E -> Enlightenment_thumb -> Media -> Thumbnail Creation.
@feature
Add thumbnail creation to ethumb rather than in the image loaders.
See:
https://www.enlightenment.org/ss/display.php?image=e-58e93eef5e8b58.22514685.jpg
Test Plan: View directory with mp4 video in efm and see thumbnail.
Reviewers: zmike!, raster
Reviewed By: raster
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D4779
2017-04-17 12:06:11 +09:00
Mike Blumenkrantz
1cbddb6d8f
avoid refocusing deleted wl clients during comp input ungrabbing
...
this is an error
2017-04-14 11:48:43 -04:00
Mike Blumenkrantz
4eb60da0b3
make SHAPE_DEBUG activate with E_SHAPE_DEBUG env var
...
this is useful for debugging and the option to recompile is not always
available
2017-04-14 11:48:43 -04:00
Mike Blumenkrantz
7172239c0c
make RENDER_DEBUG activate with E_RENDER_DEBUG env var
...
this is useful for debugging and the option to recompile is not always
available
2017-04-14 11:48:43 -04:00
Mike Blumenkrantz
a5cc19bd1a
remove unused struct members from wl E_Comp_Wl_Client_Data
2017-04-07 16:08:38 -04:00
Mike Blumenkrantz
53d0f98c50
set pass events on efm icons when deleting files
...
ensure that if a delete op is executing the icon cannot be clicked
probably fix T5340
2017-04-07 16:08:38 -04:00
Mike Blumenkrantz
ffb402786b
remove uuid references from e_pixmap.c
...
I don't know what these are for?
2017-04-07 16:08:38 -04:00
Mike Blumenkrantz
174b0d040b
add cache for dead x11 manager windows
...
in the case where an app unmaps and maps its window very quickly, this
allows detection of the maprequest event which will occur with the just-deleted
manager window so that the window can be correctly managed again
fix T5348
2017-04-07 16:08:38 -04:00
Mike Blumenkrantz
a7cfbcd101
do not adjust unplaced transient client position on parent move/resize
...
this breaks placement
2017-04-07 16:08:38 -04:00
Mike Blumenkrantz
6a28856086
remove duplicated client stacking code from wl restack callback
...
this would always have resulted in double restacking since the client callback
already handles restacks
2017-04-07 16:08:37 -04:00
Mike Blumenkrantz
2ca599b317
apply transient stacking to wl clients when restack would not otherwise occur
...
ensure that transients are stacked consistently every time
2017-04-07 16:08:37 -04:00
Mike Blumenkrantz
b4be7040a6
break out client transient restacking into function
...
this is nontrivial and breaks things when incorrectly applied
2017-04-07 16:08:37 -04:00
Mike Blumenkrantz
c196ef110e
re-place transient wl clients when parent is first sized
...
this should ensure more reliable centering using a nonzero geometry
2017-04-07 16:08:37 -04:00
Mike Blumenkrantz
1a8207ce70
support clients as positioner objects in e_comp_object_util_center_on()
2017-04-07 16:08:37 -04:00
Mike Blumenkrantz
1bc600baba
do not arbitrarily center "lost" child windows, center them on the parent
...
if the parent is also lost, it will eventually be rescued and thus all children
will also be saved
#WeirdCommitLogs
2017-04-07 16:08:35 -04:00
Mike Blumenkrantz
d4b8404073
add a client's children to the skiplist during place routine
...
these should be ignored since they will be positioned relative to the parent
2017-04-07 16:07:25 -04:00
Mike Blumenkrantz
d897f834ee
don't set wl xdg-foreign clients as modal
...
protocol says this should be the same as xdg_surface.set_parent which is
not the same as modal
2017-04-07 16:07:25 -04:00
Mike Blumenkrantz
53233ec53f
center child clients on parent in parent_set()
2017-04-07 16:07:25 -04:00
Mike Blumenkrantz
bab204bde1
explicitly stack child client above parent when calling parent_set
2017-04-07 16:07:25 -04:00
Mike Blumenkrantz
342bbee434
re-set backlight level when resuming from suspend
...
on some hw/systems, suspend sets brightness to maximum
2017-04-07 16:07:25 -04:00
Carsten Haitzler
7ab621925f
e randr2 - fix freeing of stringshare by making it a stringshare
...
cs->id was strduped but freed as a stringshare... so actually add it
as a stringshare.
2017-03-31 17:45:57 +09:00
Carsten Haitzler
f47929c93a
e stacking support - enable beta api to get access as quick fix
...
so i made the stacking api's in efl beta/unstable so as a very quick
fix - enable efl beta api to access them until code syncs up and
stabilizes.
2017-03-28 13:50:23 +09:00
Mike Blumenkrantz
e3faaf865e
do not set intermediate client geometry when doing fullscreen -> maximized
...
this provides a smoother experience for the transition as well as being a
more optimized operation
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
b223ed0981
add E_Client->saved.set
...
this indicates that saved geometry has been set and should not be
updated during maximize
currently only used to handle transition from fullscreen -> maximize
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
5c4f8a19a4
call "maximize" smart callback before "maximize_pre"
...
this callback induces ssd changes which affect the resulting geometry
and so it must be called before any size calculations are made
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
e3b3970b6e
adjust size for frame geometry in no-animation maximize path
...
this is based on window size, not surface size
also ignore coords if the size matches, animating just a positional
change looks dumb
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
ef3260a799
only center internal windows once
...
these shouldn't re-center on every resize
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
e1e9e68515
force animationless re-maximize when unfullscreening
...
animating here results in the window resizing to its original (smaller)
size, then growing back to its maximized size
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
e71524c7bd
check pixmap size before triggering maximize animation
...
if pixmap size matches animation size then avoid animation calls since
this will look stupid
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
7fe67cf187
slightly optimize maximize -> fullscreen protocol comms for wl clients
...
this is a no-op since a configure will be sent later
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
a0f7b03689
force e_client_unmaximize() to complete during fullscreen operation
...
it doesn't matter if the current client size doesn't match the unmax
size in this case since the size will be changed to fullscreen anyway
fixes maximize -> fullscreen transition
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
bfa3aacca3
always set E_Client->need_fullscreen when fullscreening
...
provide a method for determining whether a client is about to become
fullscreen during callbacks
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
ad15822f27
disable client maximize anims when unmaximizing before a fullscreen
...
this ensures accurate positioning of windows about to be fullscreened
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
bc50b140c1
use compositor win object for client volume slider
...
ERR<elementary>lib/elementary/elm_widget.c:1159 You passed a wrong parent parameter (0x4000005c7a973cf5 edje). Elementary widget's parent should be an elementary widget
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
f6e332946c
add flag for wl clients to determine ssd mouse-in vs client mouse-in
...
better handling for moving mouse into ssd region with xwl clients
2017-03-24 13:17:24 -04:00
Mike Blumenkrantz
e1ed56c327
account for late object setup when adding ssd mouse in/out callbacks
...
internal windows have a different setup order in which the frame is created
before any of the other internal objects in a comp object
2017-03-17 18:47:09 -04:00
Mike Blumenkrantz
e2be96901e
do not attempt to set window hidden hints on non-internal x11 windows
...
this causes a BadWindow error
2017-03-17 15:08:38 -04:00
Mike Blumenkrantz
58b66048f1
block x11 focus eventing under xwayland
...
ensure that focus changes come from the compositor and not from clients
2017-03-17 15:08:38 -04:00
Mike Blumenkrantz
1be8a5a590
always feed mouse events for wl client move events
...
better handling for xwayland case of moving pointer into ssd region
2017-03-17 15:08:38 -04:00
Mike Blumenkrantz
7f142f31f5
use even more accurate wl callbacks for detecting ssd mouse in/out events
...
ensure that any wl client with ssd hits the ssd mouse eventing path
2017-03-17 15:08:38 -04:00
Mike Blumenkrantz
a151ac30b8
do not send mouse events to ssd wl clients if mouse is within ssd region
2017-03-17 15:08:38 -04:00
Mike Blumenkrantz
f2ab232f3e
Revert "Stop sending wayland motion events when the mouse is grabbed"
...
This reverts commit 0a91a24573
.
this should be resolved in a more readable way now
2017-03-17 15:08:38 -04:00
Mike Blumenkrantz
8f197eba71
compare against e_client_action_get() for rejecting wl mouse events
...
signal actions do not set the cur_mouse_action pointer, but the return
of this function will still match the client for a more accurate heuristic
2017-03-17 15:08:38 -04:00
Mike Blumenkrantz
9e5bf813f9
set signal move/resize clients as action_client internally
...
technically action_client is used to indicate that an e_action is
active, but functionally it really just means "this client is moving or
resizing" and the compositor makes certain adjustments based on this
2017-03-17 15:08:38 -04:00
Mike Blumenkrantz
5a94a95e63
send wl client resize edges during focus-in/out send_configure
...
avoid prematurely terminating resize operations
2017-03-17 15:08:38 -04:00
Mike Blumenkrantz
3ca416cc0a
add wrappers for elm_win util create functions
...
avoid deadlocking in gl init by forcing sw
2017-03-17 15:08:29 -04:00
Mike Blumenkrantz
69936f74a5
set dialog and tooltip flags for internal clients
...
fixes handling of internal wl windows which are set as dialogs
2017-03-17 13:16:59 -04:00
Mike Blumenkrantz
89ea040222
only re-set comp object position during show if client has been placed
...
avoid accidentally placing an unplaced client
2017-03-17 13:16:59 -04:00
Mike Blumenkrantz
be5ef5e6c4
always get zone geometry when placing clients
...
previous codepaths relied on new_client being set, which would have
fetched the zone geometry earlier. this is no longer necessarily the
case
2017-03-17 13:16:59 -04:00
Mike Blumenkrantz
7be2167013
handle window icons from elm for internal wins
...
fixes appearance of icons set with elm_win_icon_name_set()
2017-03-17 13:16:59 -04:00
Mike Blumenkrantz
e23bf0cf68
do not use animations for wl clients with initial maximize state
...
this looks fugly and breaks all kinds of things
2017-03-17 13:16:59 -04:00
Mike Blumenkrantz
0d8b33c15f
use maximized geometry for shell maximize calls on wl clients if !buffer_commit
...
this is for setting the initial state of a surface as maximized, so do not use
animation geometry here
2017-03-17 13:16:59 -04:00
Mike Blumenkrantz
638657f043
always use jobs to create bryce menus
...
ensure that menus can never be created during a post event callback in
order to avoid crashes
ref T3144
fix T5262
2017-03-17 13:16:59 -04:00
Mike Blumenkrantz
24feeaaf73
only set toolbar icon min size if icon exists
2017-03-17 13:16:59 -04:00
Mike Blumenkrantz
118a70730f
handle nested compositor delete requests
...
the previous implementation of this using ee callbacks broke during
elm integration since elm overrides all of those callbacks
2017-03-17 13:16:59 -04:00
Mike Blumenkrantz
71c9cedfbf
only hide wl clients on surface destroy when surface is mapped
...
fixes some cases where hide animations would not be visible
2017-03-17 13:16:59 -04:00
Al Poole
8bce604383
Fix compiler type warnings (snprintf)
...
Reviewers: zmike!
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D4715
2017-03-13 12:32:54 -04:00
Al Poole
ac5036af0f
Fix macro namings in relation to endianness.
...
Reviewers: zmike
Subscribers: cedric
Differential Revision: https://phab.enlightenment.org/D4714
2017-03-13 12:32:23 -04:00
Mike Blumenkrantz
32c55ebc51
handle null E_Comp->screen during randr2 shutdown
...
some output modules have no screen iface (e.g., buffer, wl_wl, wl_x11)
and so this will always be null
2017-03-10 15:55:19 -05:00
Mike Blumenkrantz
05ef0b0280
call e_randr2_shutdown in comp shutdown
...
this should always be called, not just in comp_x
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
a064899511
move x11 iconic window init from e_hints -> comp_x initial fetch
...
this reflects the order in which the client passes through these functions
and fixes handling of iconic clients on startup
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
f253351f0a
force iconic state for iconic x11 clients during shutdown
...
this may or may not have been set previously if client mirrors are present,
but it should definitely be set during shutdown since there are no mirrors
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
cc434190ad
call wl/x compositor shutdown functions directly during comp shutdown
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
d17fe0614e
check changes.pos during client maximize/fullscreen and adjust window coords
...
using these coords when the changes.pos flag is set should result in more accurate
results for positioning when removing the state
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
5b9dec214e
only save client size info on maximize/fullscreen when protocol visible
...
a client which begins in one of these states must set its size again when
removing the state
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
5720338072
perform frame adjustments before applying wm spec hints during unmaximize
...
e_client_resize_limit removes frame adjustments before performing calcs,
so ensure that the geometry passed is pre-adjusted to account for this
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
e4b6494936
make e_remember_del() work with sr remembers
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
a7f708d568
add wl client flag to indicate status of xdg6 pre-buffer configure
...
ensure that initial configure is not sent more than once
ref T5044
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
fece2ab5bf
return during comp object pixels function if client was deleted during render
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
8f896b7862
show x11 parent windows during reparent only if not withdrawn
...
iconic windows are still shown
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
f2c1976e9a
do not force comp objects to render for their proxies if real_hid is set
...
this flag indicates that the object cannot be rendered
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
adaad812d3
run e_hints_window_init() on new_client eval and not during placement
...
these are not related
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
f93777181f
manually center pointer using compositor size on init when not restarting
...
when using fake screens this ensures that a viewported canvas will have
the expected mouse position
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
802136f5f2
do not use saved e_randr screens if fake screens have been added
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
5d62ec3cee
make E_COMP_SIZE a global comp resizing env var
2017-03-10 15:55:06 -05:00
Mike Blumenkrantz
2a8d593e8b
add handler for EFREET_EVENT_DESKTOP_CACHE_BUILD to e_order init
...
it's possible that during startup there will never be a CACHE_UPDATE
event, so ensure that an attempt to read occurs by watching this event too
2017-03-03 10:52:24 -05:00
Mike Blumenkrantz
41476f8f3e
defer menu activation mouse-up feed
...
ensure that this is not triggered from an evas post event callback
ref T3144
2017-03-03 10:49:33 -05:00
Mike Blumenkrantz
d29fb6b0b5
do not unset E_Client->placed for fullscreen/maximize clients
...
these are already placed
2017-03-03 10:49:33 -05:00
Mike Blumenkrantz
b91d224a4d
add Return and Caps_Lock handling to wl key event generation
2017-03-03 10:49:33 -05:00
Mike Blumenkrantz
e3a5ab1457
Revert "e - wl mode - stop consuming 100 percent cpu"
...
This reverts commit cd3490f35c
.
this breaks many windows by preventing deferred resizing from occurring.
a window which is unable to resize at the time of this call must be queued
for a deferred resize, otherwise it may never resize at all and thus will
never be rendered
test case: screenshot dialog
2017-03-03 10:49:33 -05:00
Mike Blumenkrantz
156b8d434b
unset deskmirror client's client pointer upon client deletion
...
prevent invalid access after client deletion
2017-03-03 10:49:33 -05:00
Mike Blumenkrantz
cfb1fa41e6
add all wl client frame callbacks with priority AFTER
...
ensure that these occur after all other callbacks since they can affect
the lifetime of the client object
2017-03-03 10:49:33 -05:00