Carsten Haitzler
6ddf1ee961
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-10-12 10:34:26 -04:00
Derek Foreman
8ca6f02914
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-10-12 10:33:39 -04:00
Mike Blumenkrantz
e2d35d9b77
remove fullscreen clients from vdesk clients list when toggling sticky state
...
fix T5988
2017-09-07 14:16:01 -04:00
Mike Blumenkrantz
7af9ab44a6
handle first time desk setting for fullscreen clients without crashing
...
ref T5988
2017-09-07 14:15:57 -04:00
Mike Blumenkrantz
3fc4c39bb4
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 14:15:48 -04:00
Mike Blumenkrantz
92b23f0d6d
block all desk flips during window resize
...
this breaks *
fix T5984
2017-09-07 14:15:30 -04:00
Mike Blumenkrantz
0bbff0664a
reset zone edge objects after comp canvas update
...
fix T5969
2017-09-01 13:55:43 -04:00
Mike Blumenkrantz
57593564c3
stack gadgets below site event rect when reparenting gadget
2017-09-01 13:46:26 -04:00
Mike Blumenkrantz
a6589188f2
set shaped client image alpha after setting image data
...
avoid triggering render sync with old image data
fix T5957
2017-09-01 13:46:13 -04:00
Mike Blumenkrantz
9ac1b433b1
use correct string for randr screen fuzzy matching
...
using the full edid string results in infinite recursion
2017-09-01 13:46:09 -04:00
Mike Blumenkrantz
b4574be2bc
check for matching '/' in screen edid before fuzzy matching in randr init
...
if no / exists then this function is pointless
2017-09-01 13:46:04 -04:00
Mike Blumenkrantz
12fc4286a6
avoid adding render updates on client resize while shading the client
...
this results in a blank render
fix T5929
2017-09-01 13:45:49 -04:00
Mike Blumenkrantz
6c93f1fedd
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:45:44 -04:00
Mike Blumenkrantz
e88bfc6fd3
move pending client render queue in pixel callback to before render call
...
no functional changes
2017-09-01 13:45:40 -04:00
Mike Blumenkrantz
007dbf04c6
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:45:32 -04:00
Mike Blumenkrantz
4c4016ad02
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:45:11 -04:00
Mike Blumenkrantz
19f45ab1c9
use focus_set_with_pointer to focus from clients menu (middle click)
...
fixes pointer warping for this case
2017-09-01 13:45:01 -04:00
Mike Blumenkrantz
6406c2c1b6
use int array for client maximize hint state update
...
CID 1379946
2017-08-25 14:57:38 -04:00
Mike Blumenkrantz
1cb85fbe26
initialize stack variables
...
CIDs 1379939, 1379943
2017-08-25 14:57:30 -04:00
Mike Blumenkrantz
2d6f01a18d
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:57:17 -04:00
Mike Blumenkrantz
97b22aaa91
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:57:12 -04:00
Mike Blumenkrantz
0adffef016
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:57:02 -04:00
Mike Blumenkrantz
4da9016bff
track setxkbmap processes and allow only one to run at a time
...
fix T5188
2017-08-25 14:56:29 -04:00
Mike Blumenkrantz
df69508d89
handle bryce setup when theme is broken
...
fix T5889
2017-08-25 14:55:59 -04:00
Mike Blumenkrantz
914aef57d7
do not rescale override x11 clients during hint fetching
2017-08-25 14:55:24 -04:00
Mike Blumenkrantz
6e522f8026
perform client zone updates on canvas move/resize when not ignored
...
overrides still need zone updates here
2017-08-25 14:55:15 -04:00
Mike Blumenkrantz
f2579fbc5b
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:55:05 -04:00
Mike Blumenkrantz
adf2f8597f
use evas size hints for image widget internals if internal obj is not edje obj
2017-08-25 14:54:50 -04:00
Mike Blumenkrantz
602e93651f
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:54:38 -04:00
Mike Blumenkrantz
56f6c0f950
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:54:30 -04:00
Mike Blumenkrantz
9dac9c7946
set moving gadgets in pointer site to have moving state
...
prevent spurious resizes during layout
2017-08-25 14:54:25 -04:00
Mike Blumenkrantz
673195a6ac
handle gadget ctxpopup placement for desktop gadgets
...
fix T5877
2017-08-25 14:54:19 -04:00
Mike Blumenkrantz
43dd2c1166
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-25 14:53:44 -04:00
Mike Blumenkrantz
13f3072172
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-25 14:53:15 -04:00
Carsten Haitzler
6c7cd33cf3
xsettings - fix warning for buffer that could be a bit small
...
warnings of buffer being a little small in theory. fix.
2017-08-25 14:52:55 -04:00
Carsten Haitzler
3aa8f2f1f7
filepreview - properly set min size on cells not in a broken way
...
this should fix T5891
2017-08-25 14:52:34 -04:00
Mike Blumenkrantz
d770c06840
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 16:51:02 -04:00
Mike Blumenkrantz
961129bb59
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 16:51:02 -04:00
Mike Blumenkrantz
b6df8639a4
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 16:51:02 -04:00
Mike Blumenkrantz
1c9f9bd32c
use menu item geometry to determine whether menu item is onscreen
...
fix T2126
2017-08-18 16:51:02 -04:00
Mike Blumenkrantz
fbbccfc346
lock menu eventing during menu idler positioning
...
ensure moving menus doesn't trigger menu item activation
2017-08-18 16:51:02 -04:00
Mike Blumenkrantz
c870923716
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 16:51:02 -04:00
Mike Blumenkrantz
a8fc231d67
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 16:51:02 -04:00
Mike Blumenkrantz
7fc3d6e094
only update wl client window size on commit if no pending resize exists
...
this breaks pending resizes
fix T4189
2017-08-18 16:51:02 -04:00
Mike Blumenkrantz
f9f75df309
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 16:51:02 -04:00
Mike Blumenkrantz
2e7e988555
avoid hiding->showing->hiding->etc submenus for active menu items
2017-08-18 16:51:02 -04:00
Mike Blumenkrantz
a4d9574307
use EC_CHANGED for client menu attr changes
2017-08-18 16:51:02 -04:00
Mike Blumenkrantz
95831a19e1
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 16:51:02 -04:00
Mike Blumenkrantz
4ad464d746
send theme signal for dialogs when no buttons are present
2017-08-18 16:51:02 -04:00
Mike Blumenkrantz
a4e0c5a836
use xwindow check to determine whether to check icccm accept/take focus attrs
2017-08-18 16:51:02 -04:00