Commit Graph

11900 Commits

Author SHA1 Message Date
Mike Blumenkrantz 7a3876ffc9 add and use new event for zone useful geometry changing
many times it's useful to have an event for actual zone geometry change
vs useful geomtry change, so split this out and use the right handler where appropriate
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz fe95a5841f do not immediately rescale windows when changing zone geometry
this is already handled later in e_comp_canvas_update()
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz 4ced6d8591 clamp vertical bryce size to useful zone geometry
this should improve layouts when vertical and horizontal layouts are mixed
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz ea57b06863 check for desk/zone mismatch in e_zone_desk_useful_geometry_get() 2017-08-04 16:05:15 -04:00
Mike Blumenkrantz c4a75a0272 do not reposition new bryces after using editor
this is now handled more accurately by bryce internals
2017-08-04 16:05:15 -04:00
Carsten Haitzler 011bb9711c e bindings - fix warning about uninitialized val
was not an actual bug, but compiler doesn't know better and we have
enough noise in warnings...
2017-08-04 14:51:50 +09:00
Carsten Haitzler 03aeb1d463 fix fallthrough warnings 2017-08-04 12:35:27 +09:00
Mike Blumenkrantz 30ada88a34 reject gadget site layout attempts only when it would be impossible
a site with orient set is expected to fill using only one axis, so a size
of 0xH or Wx0 is valid in some cases

fix T5806
2017-08-03 11:52:24 -04:00
Mike Blumenkrantz 541c30b3c4 set gadget recalc immediately when not in canvas smart calc 2017-08-03 11:52:18 -04:00
Mike Blumenkrantz a9f6017209 Revert "reset comp object update regions when a render occurs"
This reverts commit e6ab84ffd5.

fix T5817
2017-08-03 11:39:02 -04:00
Marcel Hollerbach 5820015f77 e_startup: check for efreet errors
for the case efreet does not come up with any event, give a error to the
  user
2017-08-01 22:55:46 +02:00
Carsten Haitzler 3051df7fee gadget recalc - if you add a job...del and add again
if you add a job to do things like defer a calc till later in the loop
(or if later in size calc - it'd be the next loop run after rendering)
... then del the previous job and add a new one. why? order of
operation. if you add job a... because of event a, then add job b,
because of event b ... if for whatever reason, event a happens again
and you skip adding job a... job a will run before jbo b, even though
the LAST event is later and that 2nd event a may relay on event b
state/calculations. so always del then add to ensure then that job a
happens ater b if this scenario happens. it just leads to fewer
surprises and weird issues.
2017-07-31 17:41:35 +09:00
Carsten Haitzler d870549c0f e - fix eet image format test to actually use key when loading
fix complaint from eet format test ... was failing because we didnt
use a key

@fix
2017-07-30 22:55:19 +09:00
Mike Blumenkrantz ab328c6512 implement support for wl aux hints
this is a direct copy of a feature from tizen git with no modifications other
than what was required for compilation and functionality

https://git.tizen.org/cgit/platform/upstream/enlightenment/commit/?id=8ea090222cee86b57e54f1444c5b63252380fba5
https://git.tizen.org/cgit/platform/upstream/enlightenment/commit/?id=2c5593325c3f32efa92da3c371a780e434a30efd

fix T5780
2017-07-28 15:45:01 -04:00
Mike Blumenkrantz 0b887245cc remove left/right maximize before removing vertical maximize
ensure maximize states are removed accurately and in the right order

ref b48419c577
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 23613b3ded set client opacity any time netwm hint has changed in fetch
fix T5370
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 096c6b4090 continue to fetch netwm opacity hint if it changed since the last fetch
some apps (e.g., wine) do not trigger any event when changing this property,
and they use the property in order to simulate window fade in/out

ref T5370
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 5702f0975e reset comp object update regions when a render occurs
allow saving the current update regions in case evas decides not to render
this object
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz fac907e0c5 handle updates_full when adding comp object update regions
this flag means that the entire surface should be redrawn

ref T5370
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 596e48d066 use ecore_x_netwm_opacity_get() for x11 opacity checking
this makes the check for opacity more accurate since it returns a bool
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz ae748e6487 return updates_full state from e_comp_object_damage_exists() 2017-07-28 15:44:55 -04:00
Mike Blumenkrantz a1e9b9bf0f show clients immediately after pixmap refresh if visibility is pending 2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 2f2075f588 remove tooltips from desktop gadget editors
this looks bad?
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz d2cdde01d1 set max size hint on desktop gadget editor gadgets when editor is resized
ensure that the gadgets size based on grid item size
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 4ce460525c return immediately when setting a null gadget style if current style is null 2017-07-28 15:44:55 -04:00
Mike Blumenkrantz d216cce6eb use zone size for un-oriented new gadgets
this is a relative size which I set based on zone size, so avoid the
possibility of using unsized site geometry
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 9eed5f49a8 abort gadget site layouts if the gadget site has not been sized
this triggers infinite loops, and a resize on the site will trigger a layout
automatically
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 3e982446ec trigger gadget site recalc job if gadget object hints change 2017-07-28 15:44:55 -04:00
Mike Blumenkrantz cd6fc802e9 defer setting recalc on gadget sites
if this is set during a smart_calculate() call then it will potentially
loop forever
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz c648ae4048 make gadget resize anchoring able to omit axes
when grabbing e.g., the top center of a gadget, it feels better to just
have that resize perform vertical adjustments instead of also allowing
horizontal changes
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz b3c6a4e184 position desktop gadgets more accurately during resize
do resize before altering position to ensure positioning feels smooth
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 39b1e09662 apply gadget aspects with greater precision
aspect ratio is not an integer, rounding it prematurely loses precision
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz aae2f42726 break out gadget aspecting into separate function 2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 2675422e9d ignore desktop gadget editor keybinds while editor is hidden 2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 3bda41f895 reject invalid comp object resizes
interceptors are called before any of the normal evas object geometry
validations, so ensure that invalid sizes are not applied
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 5ddb8779e2 focus x11 root window on init when starting with xwayland
comp canvas does not have a valid xwindow and is unfocusable
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz 04ef45f55d add special case for xwl-originating drags to set dnd actions
there are no protocol methods received for setting actions, so fill them
in from the xwl source
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz def1b28174 save xwindow of x11 selection owner, not client
gtk uses non-application xwindows for managing selections, so this would always
fail when bridging selections from gtk apps
2017-07-28 15:44:55 -04:00
Mike Blumenkrantz d33351e653 remove wl focus check function
idk what this was for but it was wrong
2017-07-28 15:44:55 -04:00
Carsten Haitzler d7b2d6c496 randr - discovered new output names that are display panels in laptops
add to the list like lvds, edp etc. ... adding DSI/dsi
2017-07-27 14:30:53 +09:00
Mike Blumenkrantz 2b50b69448 Revert "only do configure for wl clients in commit when a buffer is attached"
This reverts commit 9dcc4f632f.

this breaks some corner cases, must investigate further...
2017-07-24 13:24:56 -04:00
Mike Blumenkrantz 9dcc4f632f only do configure for wl clients in commit when a buffer is attached
a null attach does not require a resize, only a hide
2017-07-24 08:26:59 -04:00
Mike Blumenkrantz b472a11f84 ignore wl client ssd mouse events for windows without ssd
ref T5770
2017-07-24 08:12:54 -04:00
Mike Blumenkrantz 4a766e9e2f Revert "e comp - stop trying to set size again and again to the same"
This reverts commit 6e882d2e4f.

this is identical to cd3490f35c which was
also reverted.
2017-07-24 08:12:51 -04:00
Carsten Haitzler 358f154b83 e powerrsave sleep - add fd get
i could have sworn i added this... i swear i remember adding the fd
get line... how did it not make it? this is odd. well add it and fix
my spining cpu issue after moving to select to fix pipe wait not being
threadsafe.
2017-07-23 17:28:53 +09:00
Carsten Haitzler 6e882d2e4f e comp - stop trying to set size again and again to the same
i found e spinning at 100% just with 1 windows in wayland... open 2
terminology wins and move mouse form one to the other... 100% cpu. e
was moving seemingly a cursor client window? to the same coord again
and again as it was hidden...

this fixes that. no more spinning cpu
2017-07-23 00:19:51 +09:00
Carsten Haitzler 70d08a770e powersave sleep - use fd's and seletc. ecore pipe cant be used 2017-07-22 22:43:51 +09:00
Marcel Hollerbach 3c106c6b81 meson: we need -rdynamic here not -export-dynamic
this is passed to the compiler not linker, so we need to tell the
compiler to pass that to the linker.
2017-07-22 10:43:13 +02:00
Mike Blumenkrantz 263ee54545 rename bg_blank_object -> resize_object for a more accurate name 2017-07-21 14:43:37 -04:00
Mike Blumenkrantz 35b1d20b81 destroy desktop gadgets when the parent zone is removed 2017-07-21 14:43:37 -04:00