Mike Blumenkrantz
f20765df67
add render update when showing clients if damages exist
...
ensure that these clients render as expected
ref T5593
2017-10-13 09:46:19 -04:00
Mike Blumenkrantz
fd68c99b64
always use e cursor theme for canvas pointers
...
canvas pointer = wl compositor pointer = always use e theme since there is no
loader for x11 cursors
2017-10-09 07:09:38 -04:00
Mike Blumenkrantz
caab810b39
check for non-wl compositor when forcing application cursors onto pointers
...
comp_type is not set during initial pointer creation on startup but will be set at
the point of xwl startup, so use a check which will succeed
fix T6157
ref 2b8c70fe98
2017-10-09 07:09:38 -04:00
Mike Blumenkrantz
03982a1408
Revert "do not apply enlightenment cursor theme for xwayland clients"
...
This reverts commit 80abcc5600
.
sort of worked, sort of irrelevant
2017-10-09 07:09:38 -04:00
Carsten Haitzler
b60ff200e9
e sys - handle phantom wakeups from sleep on some devices
...
this laptop wakes from suspend if you plug or unplug it while
suspended. this leads to bad things. fix nthis by checking lid state
and resuspending if this happens.
@fix
2017-10-07 20:28:24 +09:00
Mike Blumenkrantz
d7a08ed74e
block relative motion event sending when pointer is outside input area
...
stop sending events to xwl clients at all times
2017-10-05 12:26:19 -04:00
Mike Blumenkrantz
80abcc5600
do not apply enlightenment cursor theme for xwayland clients
...
wayland always uses the client's cursor, so maintain that consistency
2017-10-05 11:42:24 -04:00
Mike Blumenkrantz
2b8c70fe98
set default cursor on root window for xwl pointer
...
ref T5593
#TheDisappointer
2017-10-04 14:09:35 -04:00
Mike Blumenkrantz
8121f20a03
handle x11 shaped input under xwayland
2017-10-03 14:59:47 -04:00
Mike Blumenkrantz
b686f3871d
add max size input rects for wl clients on creation
...
according to spec, surfaces begin with infinite input area
2017-10-03 14:40:36 -04:00
Mike Blumenkrantz
9983172f32
set comp object alpha state when applying native surface
...
ensure that alpha is set accurately for the native surface
2017-10-03 14:40:03 -04:00
Mike Blumenkrantz
4d76f409f8
block gadget configuration unconditionally while desklock is active
2017-10-03 13:52:44 -04:00
Mike Blumenkrantz
031b0bdc60
deduplicate global gadget handler variables
...
ref T6125, T4648
2017-10-03 13:50:16 -04:00
Mike Blumenkrantz
d7060c7c6f
redo bryce eventing
...
post events are way harder and I don't know why I didn't do this in the
first place?
fix T5974
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz
6f186db24b
clamp expanding gadget size to 0 to prevent sizing overflows
...
if the expanded size is negative then the size should be 0 and the gadget is
not visible
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz
7c726172e4
handle gadget site layouts using accurate parent geometry
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz
42d707909e
simplify focus on commit block for wl clients
...
none of this applies to popups
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz
001085f349
do not set E_Client->take_focus for popup wl clients
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz
984a1facd9
pass keys through xkbcommon under wayland lockscreen
...
ensure that key states are retained when unlocking
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz
4ae2145330
move gadget editor help text onto the editor popup
...
ref T4648
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz
2d2ad13537
add comp object function to get the content of a util_add object
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz
129bb14d2d
don't show xwayland clients unconditionally on commit
...
ensure that the client's desk is visible
fix T6024
2017-10-03 12:39:03 -04:00
Mike Blumenkrantz
1d5977c02a
do not unnecessarily rescale clients
...
this function is mainly for rescaling maximized/fullscreen clients to fit new
dimensions, so don't call on other clients since this can trigger unwanted resize
events
2017-09-28 13:03:37 -04:00
Mike Blumenkrantz
15ea006eb5
block client rescales during render updates
...
this guarantees misrenders
2017-09-28 13:03:37 -04:00
Mike Blumenkrantz
80349d417d
Revert "do not perform client moves during comp updates"
...
This reverts commit def2b0c5fc
.
breaks some resize directions
2017-09-28 13:03:37 -04:00
Stephen 'Okra' Houston
bb4d69519f
E Exe: Semi revert 2082bb51d3
. The ref count was off to begin with.
2017-09-26 22:11:21 -05:00
Stephen 'Okra' Houston
2082bb51d3
E Exe: Since we no longer ref clients in the phony cb, don't free them after reffing them in instance_client_add.
2017-09-26 22:01:15 -05:00
Derek Foreman
a85a602a39
Revert "Set close on exec for stdin"
...
This reverts commit 40e8bb044c
.
EFL master solves this properly
EFL stable currently has a bug that solves this accidentally
so there's a window of about 3 commits in git where it's a problem,
and nobody should run those commits in production :)
This fix caused some problems when restarting E, as stdin would
cloexec and then the following startup would try to set cloexec
on an invalid fd and generate an err that generated a cri because
of an invalid log domain.
Someone should probably figure out the log domain thing.
2017-09-26 14:19:24 -05:00
Derek Foreman
f4f08ee99a
Stop queuing wl_buffer release events
...
Now we just kick them out immediately.
2017-09-26 11:41:19 -05:00
Mike Blumenkrantz
1f650605a0
emit E_EVENT_EXEC_NEW_CLIENT with phony exes
...
partially fix T6071
2017-09-26 12:26:18 -04:00
Mike Blumenkrantz
576c8d0864
use client geometry for visibility effect geometry, not comp object geometry
...
clients may defer object geometry setting, resulting in unreliable values here
2017-09-26 12:26:18 -04:00
Mike Blumenkrantz
3b319b5ef9
don't do full client rescale on x11 hint change if not maximized/fullscreen
...
regular windows don't get moved here, only resized if hints change
fix T6072
2017-09-26 12:26:18 -04:00
Mike Blumenkrantz
8d55575bcf
remove input-only client fastpath to resize crashes
...
ref T6023
2017-09-26 12:26:18 -04:00
Mike Blumenkrantz
def2b0c5fc
do not perform client moves during comp updates
...
this can trigger zone changes, which triggers resizes, which is bad
ref T6023
2017-09-26 12:26:18 -04:00
Derek Foreman
51c492fcad
use safer ecore_exe flags that close stdin/out/err more often
...
commit b9d166f804
introduced
safer exe functions that both prevent a child from having E's
stdin/stdout/stderr and ensure the child's fd 0 (and 1 and 2) are
"valid" file descriptors (to work around some buggy software that
assumes 0 is an invalid file descriptor)
This commit uses the safer functions when launching child programs from
the desktop menu as well.
ref T5606
@fix
2017-09-25 10:10:49 -05:00
Carsten Haitzler
b9d166f804
use safer ecore_exe flags that close stdin/out/err if possible
...
this is specifically needed for wayland but is relevant to x with
startx too ... dont let processes that e runs like apps inherit
stdin/out/err as it may be a tty and thus allow apps to do nasty
things with that tty.
@fix
2017-09-23 23:10:35 +09:00
Derek Foreman
40e8bb044c
Set close on exec for stdin
...
ref T5606
2017-09-22 21:02:32 -05:00
Derek Foreman
077ae06955
Fix wayland frame callback failure
...
Turns out ecore_animator_add() can randomly pick the wrong canvas to use as
a tick source. Using EFL_EVENT_ANIMATOR_TICK on the compositor evas instead
will ensure we don't accidentally pick an internal window for a tick source.
Fix T6070
2017-09-22 17:00:25 -05:00
Mike Blumenkrantz
4d0ceeb02c
add fd passing to aux hints protocol
2017-09-21 13:31:01 -04:00
Mike Blumenkrantz
5694d7af96
add action router action to route specific key presses to specified clients
2017-09-21 13:31:01 -04:00
Mike Blumenkrantz
5da5418873
add a client parameter to wl key down/up event processing functions
...
if passed, send the event to the specified client
2017-09-21 13:31:01 -04:00
Mike Blumenkrantz
92614d0c69
store the currently active key binding as an accessible variable
2017-09-21 13:31:01 -04:00
Mike Blumenkrantz
8cc46fb201
make e_bindings_modifiers_from_ecore() an externally usable function
2017-09-21 13:31:01 -04:00
Mike Blumenkrantz
11a08ebc30
don't perform zone updates on client resize
...
zone updates should probably only happen on client moves, not resizes
ref T6023
2017-09-21 13:31:01 -04:00
Chidambar Zinnoury
0666cd7249
e menu: Fix missing realize when using key-activation to the right.
...
See commit 474463ef6c
, SVN r39698.
2017-09-19 12:50:39 +02:00
Chidambar Zinnoury
0adec92696
e about: Year++.
2017-09-18 22:57:06 +02:00
Mike Blumenkrantz
62acd53a96
avoid div by 0 in gadget layout
...
CID 1381165
2017-09-15 12:16:48 -04:00
Mike Blumenkrantz
98dbaa9090
fix clickable edge binding activation with other mouse buttons
...
check for the button specified in the binding, not whether the event
contains a click
fix T4510
2017-09-14 15:00:50 -04:00
Mike Blumenkrantz
00daafac10
flag zone/edge mouse binding activation with ON_HOLD
...
ensure multiple bindings aren't triggered by the same event
2017-09-14 14:59:14 -04:00
Mike Blumenkrantz
283a1cd620
handle unmovable gadgets in gadget move action
...
a gadget which refuses to create a duplicate of itself can be considered
immobile
fix T5998
2017-09-14 14:38:14 -04:00
Mike Blumenkrantz
49e2a31cfc
block recursive mouse eventing in bryce action handlers
...
ensure that only the outermost event adds a post callback to avoid
triggering actions multiple times
2017-09-14 14:37:12 -04:00
Mike Blumenkrantz
ccd374e6a2
add some hidden boxes to use as gadget popup hover parents
...
boxes get resized with zone useful geometry to ensure the content is always
on screen and visible
fix T5945
2017-09-14 14:00:39 -04:00
Mike Blumenkrantz
9727710647
hide clients again after show in idler if clients are on hidden desk
...
clients need initial show to correctly handle mirror visibility but should
then be hidden again
ref 0ee8cc896e
fix T6024
2017-09-14 12:45:45 -04:00
Mike Blumenkrantz
b77e01e1dd
use EC_CHANGED when setting changed flag in client idler
2017-09-14 12:43:15 -04:00
Carsten Haitzler
6972a97d5d
e start - fix path prepend/append if already in path assuming clue
...
"
I have a directory at the head of my PATH that contains alternate
versions of command line utils like grep, ls, etc., but E puts
/usr/bin ahead of it, overriding my tools of choice with the system
defaults.
If my understanding is correct, the only way currently to have
directories that E prepends to your PATH appended instead is to use
-i-really-know-what-i-am-doing-and-accept-full-responsibility-for-it.
I'd like to see a more sane option if there isn't one already.
Alternatively, I wonder if it wouldn't be a better idea to only
prepend directories to PATH if they aren't already contained within
it--thereby preserving the user's desired search order.
"
this should fix T5953
@fix
2017-09-13 18:32:38 +09:00
Mike Blumenkrantz
a5bb9932ee
revert gadget ctxpopup autopositioning attempts
...
I don't think this method would ever have worked reliably
This reverts commit 6f1b75e87b
.
This reverts commit 84e999f5f3
.
2017-09-12 14:37:53 -04:00
Mike Blumenkrantz
6bd97ced9b
handle gadget site layout when last gadget in site is a spacer
2017-09-12 13:36:39 -04:00
Mike Blumenkrantz
20ea0ed150
add/use helper function for rescaling individual clients
...
in any case where client needs to be rescaled to use new screen geometry
certain things must happen, such as handling shaded state and forcing the
new geometry to be applied
2017-09-12 13:21:04 -04:00
Mike Blumenkrantz
4f28e49f46
handle shade <-> unshade toggling in same frame
...
this should result in a no-op instead of a fail-op
fix T6006
2017-09-12 13:21:04 -04:00
Mike Blumenkrantz
500b9a2eb2
use animator del function to delete comp object animators
2017-09-12 13:21:04 -04:00
Mike Blumenkrantz
721eeb994e
make spacer gadgets smarter when multiple spacers exist
...
* ignore consecutive spacers
* attempt to size/fill consistently based on occupied space
fix T5973
2017-09-12 13:21:04 -04:00
Carsten Haitzler
9eebe065c2
e powerszve - fix sleep timeout for select to be correct
...
bad inverse fmod and using int not double first before converting to
microseconds...
2017-09-12 11:03:50 +09:00
Al Poole
b304e77f64
filepreview: unbreak netstar's changes.
...
The previous broke the video preview size. Was too complicated.
Generally just sucked. This is simpler. I don't want to touch
this again. Sorry!
2017-09-10 22:41:09 +01:00
Al Poole
12e0303e4b
filepreview: show mime type icon when not video and no artwork.
...
This adds the icon associated with the file type to the preview.
If there's no artwork available the audio preview will no longer
be a large void, the mimetype icon will display.
2017-09-10 13:05:44 +01:00
Al Poole
8a9de1de69
filepreview: add support for album artwork in preview when applicable.
...
When available preview will display album artwork when previewing audio.
2017-09-09 22:23:14 +01:00
Carsten Haitzler
6502f030c9
fix nested wayland in x11 mode with getting canvas zone geometry
...
yup. was broken. fixes T5993
@fix
2017-09-09 11:56:16 +09:00
Carsten Haitzler
1d610fd609
fix up window+screen positioning fixup so it doesnt catch other clients
...
so some other clients like mpv also try to explicitly position their
windows (like centering on screen 0 ALWAYS) and this now gets caught
up in trying to detect libreoffice doing the same thing for
presentations. so only support this is the app has explicitly
requested initial positionin explicitly and then use pending configures.
2017-09-09 11:18:15 +09:00
Carsten Haitzler
041748b017
window focus - fix focus switch action next/prev walk dead code
2017-09-09 09:57:22 +09:00
Derek Foreman
9566b72e86
Fix crash when processing a wayland client cursor set after death
...
It looks like the only way we can get here with NULL resource data
is when we explicitly cleared it in the del hook, meaning the client
is dead to us. In this case it's ok to ignore the cursor set request.
ref T4988
2017-09-08 14:38:08 -05:00
Mike Blumenkrantz
7fd3e2e798
restore 'application name' remember setting in dialog
...
broken in 6e8070d226
fix T5991
2017-09-07 14:13:01 -04:00
Mike Blumenkrantz
378e371e74
remove fullscreen clients from vdesk clients list when toggling sticky state
...
fix T5988
2017-09-07 13:37:20 -04:00
Mike Blumenkrantz
72b979ca2b
handle first time desk setting for fullscreen clients without crashing
...
ref T5988
2017-09-07 13:37:20 -04:00
Mike Blumenkrantz
8f26d33d11
warp pointer to center of internal dialog on show if dialog has focus
...
ensure that pointer-based focus policies do not experience unexpected focus
changes when a dialog changes from basic<->advanced
ref T1931
2017-09-07 13:37:20 -04:00
Mike Blumenkrantz
739eb9b679
add more files to autotools dist
2017-09-06 13:32:25 -04:00
Mike Blumenkrantz
5dc267ec84
block all desk flips during window resize
...
this breaks *
fix T5984
2017-09-06 13:32:25 -04:00
Derek Foreman
cc5eec5cc3
Remove bogus EINA_UNUSED
...
move along, nothing to see here.
2017-09-01 15:13:41 -05:00
Mike Blumenkrantz
6f1b75e87b
disable auto positioning of gadget ctxpopups for now
...
ctxpopups 2hard4me atm
2017-09-01 15:39:33 -04:00
Mike Blumenkrantz
df1e21b120
reset zone edge objects after comp canvas update
...
fix T5969
2017-09-01 13:54:54 -04:00
Mike Blumenkrantz
ef6197b119
do not force client focus setting after calling e_desk_last_focused_focus()
...
in some cases focus setting must be deferred, and forcing focus in these cases
will create focus bugs
ref 9ae24a3a4a
2017-09-01 13:40:12 -04:00
Mike Blumenkrantz
8ea5cf9c47
add desklock gadget site event rect to event grabber while editor is visible
...
allow actions to trigger on gadgets during editing
ref T4648
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
46cd0090cd
stack gadgets below site event rect when reparenting gadget
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
e5dd1f12f3
set shaped client image alpha after setting image data
...
avoid triggering render sync with old image data
fix T5957
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
b492e87851
use correct string for randr screen fuzzy matching
...
using the full edid string results in infinite recursion
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
75a12a9461
check for matching '/' in screen edid before fuzzy matching in randr init
...
if no / exists then this function is pointless
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
6dd9205e0a
rename E_EVENT_COMPOSITOR_RESIZE -> E_EVENT_COMPOSITOR_UPDATE
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
1ca1201110
recalc desktop gadget sites on compositor update event
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
f8a599d525
avoid adding render updates on client resize while shading the client
...
this results in a blank render
fix T5929
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
1a651f23af
return during client pixel callback if pixmap is dirty and no updates exist
...
this probably indicates a client update is needed in order to complete the
render, so the existing data should be reused since nothing will render now
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
026ce1a43e
move pending client render queue in pixel callback to before render call
...
no functional changes
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
a76e9aa8fe
do not reset existing client damage on resize if tiler size matches pixmap size
...
this probably indicates a case where the client wasn't actually resized and the
compositor is doing something like shading a window
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
84e999f5f3
track gadget ctxpopups and reposition within zone on resize
...
this attempts to shift the ctxpopup content vertically and horizontally to
keep it on the same screen that the gadget is on
fix T5945
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
2afaea3b49
remove e_util_pointer_center()
...
this is yet another utility function which duplicates code from elsewhere and
does it incorrectly
fix T3164
2017-09-01 13:40:11 -04:00
Mike Blumenkrantz
9076301213
use focus_set_with_pointer to focus from clients menu (middle click)
...
fixes pointer warping for this case
2017-09-01 13:40:11 -04:00
Carsten Haitzler
9ae24a3a4a
e client focus - fix focus if moving focused window to new desk - long
...
fix client focus the very very very long way vs
418319fc94
2017-09-01 19:29:03 +09:00
Derek Foreman
42d3e30f5c
Handle wayland frame commits with no surface damage better
...
Previously we immediately kicked back the frame callback when a client
sent a surface frame without damage. This let clients that use frames
for timing proceed, but they generally just send another frame right
away and spin in this way until they reach their intended render time.
Now we use animators so the frame callbacks will be limited to the
animator tick source's frequency.
ref T5850
2017-08-31 14:44:58 -05:00
Carsten Haitzler
418319fc94
e client focus - fix focus if moving focused window to new desk
...
if the window being moved to a new desktop is focused, then ensure
after the move to restore focus to the last focused in the focus stack
for this desk to something stays focused.
@fix
2017-08-30 16:13:50 +09:00
Carsten Haitzler
5ec93f15ff
e actions - add actions for moving focus around - feature request
...
was simple. winlist already had it. added action to focus next/prev or
up/down/left/right. useful for tiling... :)
@feature
2017-08-29 20:31:30 +09:00
Mike Blumenkrantz
1d72713dc0
use int array for client maximize hint state update
...
CID 1379946
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
e707576e81
check returns for read/write to powersave fds
...
CID 1379942
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
8717a4a020
initialize stack variables
...
CIDs 1379939, 1379943
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
43d837d681
don't pretend randr mode can be null when it can't
...
CID 1379945
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
c7c4470ae0
force client render on mirror show for clients which have not yet been rendered
...
this is the same mechanism in e_comp_object_dirty() which applies now if a
mirror is created for a previously-dirty client
fix T5937
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
a188c4751c
Revert "handle updates_full when adding comp object update regions"
...
This reverts commit fac907e0c5
.
this was already handled and I'm dumb.
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
fef7941083
set elm profile to match e profile during startup
...
this is actually broken, as is entire the concept of using mixed e+elm configs.
if a user manually changes the profile, e.g., for a single app, then this will
overwrite the global profile name. similarly, setting the profile in this manner
overwrites the global profile, causing all existing apps to switch to that profile
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
1902befc92
Revert "force recalc on bryce scroller when doing recalc on gadget site"
...
This reverts commit 87515abd2a
.
this breaks scaling since the min size must be reset in order to trigger a
resize
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
175c614838
add spacer gadgets for bryces
...
this is a rectangle which dynamically resizes based on the available space
in the bar. it can only be added when autosize is disabled, and setting
autosize will remove all spacers
fix T5914
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
2e0638e87a
check whether gadgets are elm objects before calling elm functions
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
f806dae1e1
track setxkbmap processes and allow only one to run at a time
...
fix T5188
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
0f5b287866
add gadget api for determining if a gadget site is a desklock site
...
potentially this could be improved to use a vastly overengineered 'policy'
setup, but for now this fits the biggest use case
ref T4648
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
a72b88c0e7
handle bryce setup when theme is broken
...
fix T5889
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
db264cca49
simplify placed flag setting during wl surface commit
...
this should result in fewer cases of windows randomly warping around...
...
maybe
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
57176bf29d
do not rescale override x11 clients during hint fetching
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
ec047b1a98
perform client zone updates on canvas move/resize when not ignored
...
overrides still need zone updates here
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
00c01d0ae6
use client frame for internal win geometry setting on show
...
calling these functions on the elm_win has no effect here
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
e93f67e74a
go back to image widget for video filepreviews
...
this still has some funkiness related to initial geometry but it looks
better and doesn't have weird resolution bugs
fix T4293
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
28783cfc23
use evas size hints for image widget internals if internal obj is not edje obj
2017-08-25 14:47:10 -04:00
Mike Blumenkrantz
29b736257c
destroy dropped gadgets after drop operation completes
...
the gadget object is used during the drop callback, so destroying it
before the callback breaks the drop operation
2017-08-25 14:47:09 -04:00
Mike Blumenkrantz
4d8e1d5e29
perform gadget site layout before calling drop callback
...
calling this inside the drop callback resets the dropped gadget's position
and causes the drop operation to fail
2017-08-25 14:47:09 -04:00
Mike Blumenkrantz
feb17c898d
set moving gadgets in pointer site to have moving state
...
prevent spurious resizes during layout
2017-08-25 14:47:09 -04:00
Mike Blumenkrantz
850f5b40f8
handle gadget ctxpopup placement for desktop gadgets
...
fix T5877
2017-08-25 14:47:09 -04:00
Mike Blumenkrantz
096f1084a5
always use client geometry for comp object centering functions
...
this should always be more accurate than the object geometry, which may
or may not have been applied at any given time
2017-08-21 10:16:35 -04:00
Mike Blumenkrantz
40df7bddc8
make grab dialog text read a bit more clearly
2017-08-21 10:16:35 -04:00
Mike Blumenkrantz
c31cb51499
replace <br> with <ps/> for all text
2017-08-21 10:16:35 -04:00
Mike Blumenkrantz
37d1bf3ea0
force min size calc on dialog show
...
this resolves a number of dialog sizing issues where text or content could
be clipped due to deferred sizing
2017-08-21 10:16:35 -04:00
Carsten Haitzler
014b74bc74
e sys - add listening to prepare for shutdown/suspend from systemd
...
listen to the prepare and post signals... just print right now as not
really used... but knowing and logging is good.
2017-08-21 23:15:04 +09:00
Jean-Philippe Andre
bc55beb638
config: Add env var to skip profile save
...
This only skips writing the profile name to
~/.e/e/config/profile.cfg
This allows easier testing of E with custom profiles.
Note that this goes together with another patch in elementary, but the
env var is different (note: we could use a single one). This is only
meant for debugging.
export E_CONF_PROFILE_NOSAVE=1
2017-08-21 19:04:02 +09:00
Carsten Haitzler
8da6aa4142
xsettings - fix warning for buffer that could be a bit small
...
warnings of buffer being a little small in theory. fix.
2017-08-21 12:16:27 +09:00
Carsten Haitzler
da791a0bf5
e mixer - handle pulse exit/disconnect and not keep e client sinks
...
we keps e client sinks even if we were dicsonnected from pulse... this
caused fun crashes. fix
@fix
2017-08-20 01:02:03 +09:00
Carsten Haitzler
d196f25a2b
filepreview - properly set min size on cells not in a broken way
...
this should fix T5891
2017-08-20 01:02:03 +09:00
Carsten Haitzler
73e3ed1bb0
e x11 focus fixup - dont do the fixup if input grabbed
...
this actually fixes everything fully and has focus working nicely now
with the fixup
2017-08-20 01:02:03 +09:00
Mike Blumenkrantz
09a8888f76
batch x11 maximize state change requests
...
if an app wants to set both horizontal and vertical, set both at the same
time to improve performance and accuracy
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
5610c4cad0
locally store the backlight level when suspending/hibernating
...
ensure that the exact level which was set before suspend/hibernate is reapplied
fix T1420
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
5998f175b5
temporarily cache x11 configure requests which reposition hidden windows
...
when an app tries to position itself before being shown, attempt to store this
and apply it in order to effectively handle cases where an app attempts to show
on a specific screen, e.g., presentation apps which show a console on one monitor
and the presentation on a different monitor
fix T1571
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
5f87fbca2e
only set new clients to current desk if desk has not yet been set
...
placement policies can override setting windows onto the current desk
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
3c31e67b05
use menu item geometry to determine whether menu item is onscreen
...
fix T2126
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
f64812122f
lock menu eventing during menu idler positioning
...
ensure moving menus doesn't trigger menu item activation
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
121e7fab4b
replace existing resize pointer mode for x11 client-initiated resizes
...
ensure there is no mismatch between pointer modes when pushing/popping modes
fix T4893
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
b246cc27ee
handle focus reverting correctly when using desk flip all actions
...
perform the focus revert once the last desk has finished flipping and based
on all available visible windows
fix T3495
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
7402dc8eda
only update wl client window size on commit if no pending resize exists
...
this breaks pending resizes
fix T4189
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
ac91f3b2c5
clamp xsettings font size to 12 when size is 0
...
font class config does not require the user to select a size, so do
extra clamping here when a size isn't set
fix T3093
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
2b984e68b9
add MISC client property event to be manually triggered whenever misc props change
...
there's too many properties to create flags/events for all of them, so just use this
if it's one of the many misc props
currently only used for skip_{pager,taskbar,winlist}
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
bda9bfb8c0
avoid hiding->showing->hiding->etc submenus for active menu items
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
6fa35c353d
ensure client rescale picks up current geometry
...
in some cases this would restore the wrong geometry and windows could become oddly
sized
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
91dc28967a
add separate desklock key up handler to correctly handle caps lock on wayland
...
x11 modifier handling in events is broken: the modifier state is the state from
before the event, meaning that pressing caps lock will never result in an event where
the modifier is not set in the corresponding event
wayland handles this more sensibly, though it should be detected on key up rather
than key down
fix T5737
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
a1e585862c
use EC_CHANGED for client menu attr changes
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
528bad7252
block updating window remembers while applying them
...
some attrs (e.g., desk setting) change the position/size of a window before
another attr is set, changing the original value
fix T5295
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
b078599fdd
send theme signal for dialogs when no buttons are present
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
d07408e76c
do not center xwl clients on their parent during first commit
...
xwl clients are placed differently
ref b817db7f09
fix T5845
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
b80f0fce56
don't set focus attrs in wl surface commit for xwl clients
...
these should be getting set in other places...I think...
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
6ee841ecd5
use xwindow check to determine whether to check icccm accept/take focus attrs
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
ff8964a1c6
don't force xwl drag client motion for override drag clients
...
this should improve dnd visuals a bit
ref T5593
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
a12e9f954b
end xdnd operations on window hide if no FINISHED event is received
...
fix T5886
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
6b2a9a0f7b
set gadget ctxpopup priority based on anchor
...
fix T5877
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
a59328b34a
add internal action for showing a menu using object geometry
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
abc70abbf0
make menu autoplacement more consistent by preferring DOWN placement
2017-08-18 15:52:50 -04:00
Mike Blumenkrantz
3271efaba4
capture zone for newly-added bryces based on name
...
the last number is always the zone number
2017-08-16 10:58:51 -04:00
Mike Blumenkrantz
b6759a8c27
do not apply x11 pointer focus if key/mouse grabs exist
...
fix T5871
2017-08-16 10:42:14 -04:00
Mike Blumenkrantz
b2c5c20cde
manually get client under pointer for checking x11 pointer focus
...
e_client_under_pointer_get() ignores overrides.
ref 3ee5a0378d
fix T5878, T5871
IF ONLY THERE WERE SOME METHOD FOR TESTING COMMITS BEFORE THEY WERE PUSHED
2017-08-14 07:30:04 -04:00
Al Poole
16d23a628f
Efm: file properties, fix widget sizing issue.
...
Summary: This fixes the erroneous sizing of labels in Efm preview dialogues.
Reviewers: zmike!
Subscribers: stephenmhouston, cedric, raster
Differential Revision: https://phab.enlightenment.org/D5093
2017-08-13 09:52:02 +09:00
Marcel Hollerbach
5b3f38efcf
leave the E_Comp_Wl_Data define in e_comp.h
...
otherwise bulding without wayland breaks
2017-08-12 22:47:52 +02:00
Marcel Hollerbach
fcd271dd1b
e_comp_wl: move types into typedef section
...
WIth this we dont need a second define of the same type in e_comp.h
This fixes a duplicated definition warning
2017-08-12 15:17:03 +02:00
Marcel Hollerbach
8ef5a7c89d
e_comp: stop including e_comp_x here without a reason
2017-08-12 15:17:03 +02:00
Mike Blumenkrantz
57c448739a
add support for external gadget providers in the gadget editor
...
this allows external gadget managers to add their gadget types into
existing editor/layouts
2017-08-11 18:48:49 -04:00
Mike Blumenkrantz
408128df95
handle destruction of demo gadgets without crashing
...
demo gadgets automatically call _gadget_free() on object delete, avoid
recursively calling it
2017-08-11 18:48:49 -04:00
Mike Blumenkrantz
2d80ef091e
further improve keyboard handling while gadget editor is active
2017-08-11 18:48:49 -04:00
Mike Blumenkrantz
92a0cb11d6
disallow demo gadget ids from counting towards wizard success
2017-08-11 18:48:49 -04:00
Mike Blumenkrantz
4e4f66fc2b
prune gadgets from editor if destroyed while editor is active
2017-08-11 18:48:49 -04:00
Mike Blumenkrantz
2047ca3bfe
handle case where eglBindWaylandDisplay fails during wl init
2017-08-11 18:48:49 -04:00
Mike Blumenkrantz
65fe42fdef
avoid object hide animations during shutdown
2017-08-11 18:48:49 -04:00
Mike Blumenkrantz
31994d4876
don't center wl popups on their parents
...
ref b817db7f09
2017-08-11 18:48:49 -04:00
Carsten Haitzler
fe7c39fa18
e_start - remove evas deps - don't need them.
...
e_start isnt really using evas atm - cserve2 env vars arent being set
so remove it - e_start can start a little faster with less linking...
good for startup time perhaps and mem footprint of e_start while it
babysits
2017-08-11 15:43:39 +09:00
Carsten Haitzler
ead1be7bd6
meosn build - go back to requires_e it's uses in main meson.build
2017-08-11 14:35:24 +09:00
Cedric Bail
77e4b72d2b
alert: protect use of drm code inside the proper ifdef.
2017-08-10 21:43:17 -07:00
Carsten Haitzler
2349a298f0
meson build - reformat and trim build files a bit to be more compact
...
working on it...
2017-08-11 08:28:23 +09:00
Derek Foreman
022dd52cd9
Remove more pre-ecore-drm2 stuff
...
We no longer need a HAVE_DRM2 define since it's become synonymous with
HAVE_WL_DRM.
2017-08-10 13:32:15 -05:00
Derek Foreman
1cdbcb0d94
Resynch with weston's dmabuf implementation
...
Weston's dmabuf implementation continues to be modular enough that we can
pull it in with minimal change.
This updates us to version 3 of the protocol - required by recent mesa to
use dmabuf buffers instead of wl_drm ones.
Currently only contains stubs for format query.
2017-08-10 11:32:45 -05:00
Marcel Hollerbach
bcf0110277
meson: we need to link dl
2017-08-10 15:47:44 +02:00
Derek Foreman
15cb70f13a
Remove ecore_drm support
...
ecore_drm2 supersedes this, ecore_drm is deprecated, and we depend on
an efl version newer than the deprecation, so none of this code should
ever be built.
2017-08-09 15:10:44 -05:00
Derek Foreman
0b26bdc2f8
Stop doing complicated things after a segfault
...
The chance of any of this succeeded is near zero, and it sometimes ends
up in a tight loop after a crash.
2017-08-09 15:10:41 -05:00
Derek Foreman
0fd23928f0
Add a compatibility layer to protect against ecore_drm2 api change
...
In case we roll an E release before the next EFL one, we need these
API changes to be hidden.
Later we can remove this...
2017-08-09 14:59:26 -05:00
Derek Foreman
50169af1db
Update to recent ecore_drm2 changes
2017-08-09 14:59:25 -05:00
Mike Blumenkrantz
fd6f9f1c14
destroy gadget configs when deleting a gadget site
2017-08-07 14:48:07 -04:00
Mike Blumenkrantz
08d70dd958
clamp internal win min/max size hints to 0
...
ref T5845
2017-08-07 11:04:23 -04:00
Mike Blumenkrantz
0bea40f4dd
do not defer wl gl init
2017-08-07 10:29:00 -04:00
Carsten Haitzler
3ee5a0378d
e - do workaround with in events due to flags to get ptr focus right
...
so we egnore some mouse in evets due to their flags (crossing events
thansk to grab changes or other stuff) that we want to ignore for
other reasons like when a popup menu happens and so on... so if we get
a mouse in... 0.1 sec later double check where the pointer is with a
poll then fix focus. this should patch over a long standing annoyance
here in x11.
@fix
2017-08-06 18:34:42 +09:00
Carsten Haitzler
4fe7827af2
fix fallthrough warnings and tag as fallthrough
...
this code was intending to do this.. so tag as such
2017-08-05 12:37:39 +09:00
Mike Blumenkrantz
1a622a68ed
make mouse-activated menus function as expected with 0 passed as activate time
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
5cfc3c846e
make menu_show action pop the menu in automatically-calculated direction
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
541e33fc73
don't arbitrarily bind version=1 for wl extension resources
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
c1cf0249a0
make action routes usable in subcompositors
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
862b02adc8
extend key action routing for general action contexts
...
this allows authorized clients to activate validated actions
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
8748b197fa
implement action routing for wayland clients
...
this allows a wayland client to request that a given action name be bound
to the requested surface using a mode to restrict activation of the binding
modes include:
* shared
- activated when any surface from the client has focus
* topmost
- activated when the requested surface has focus and is the topmost client
* exclusive
- activated when the requested surface has focus; blocks other action routes
#SamsungFeatures
Signed-off-by: Mike Blumenkrantz <zmike@osg.samsung.com>
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
01b7cf8227
add function to return a currently-active menu
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
fa3c7655c2
split out gadget enums into separate header
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
d5a1b30ab4
add gadget site as param for gadget wizard callbacks
...
it's important to be able to track this lifetime in order to cancel the
wizard if the site is deleted
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
09aee20e3c
save config automatically when removing gadgets
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
cb3911cc3a
make client size hints apply more accurately
...
* clamp min/max first
* only apply step adjustments when obeying min/max sizes
* make aspect calculations more accurate
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
c804650482
rescale x11 clients after fetching hints
...
ensure that clients initially respect useful geometry after size hints
have been fetched
2017-08-04 16:05:16 -04:00
Mike Blumenkrantz
f892b360fe
optimize setting zone useful geometry as dirty
...
if this would result in a no-op then don't emit event or trigger client
rescaling
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
2c3f65d6f8
apply client hints when rescaling a client
...
ensure rescales obey hints
2017-08-04 16:05:15 -04:00