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
Mike Blumenkrantz
daedf48a4b
add module file to E_Module struct
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
cb80d5157c
more accurately determine gadget editor visibility
...
ref 2675422e9d
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
81fe0b4d49
set gadgets in the editor's pointer site as moving
...
prevent random resizes during gadget layout
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
2f97cb69db
finish wl window stacks
...
fix T5350
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
29617bf80b
move Ecore_X_Stack_Type member from client to x11 comp_data
...
no functional changes
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
b817db7f09
center wl clients on their parent when doing first commit
...
this resolves some bizarro pointer warping
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
1814080164
do not add delete/kill request smart callbacks for non-internal wl clients
...
this is not functional for other windows
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
4e86fb57e1
restack child windows on parent_set() even if child is ignored
...
ensure that this happens as expected since it may not occur elsewhere for
some cases
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
6d5bb4ac5c
use explicit rounding for bryce scaling
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
7eba1a99ed
track zone states and modify bryces accordingly
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
d66ee1a729
mark zone useful geometry as dirty when applying move/resize
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
519cf154fa
deduplicate zone move/resize code
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
e5f60c6aee
rescale clients on useful geometry dirty
2017-08-04 16:05:15 -04:00
Mike Blumenkrantz
d2c2f48bec
break out client rescaling into separate function
2017-08-04 16:05:15 -04:00
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
Mike Blumenkrantz
23c473db7b
resize comp bg_blank_object on zone update
...
various things hook this to check when the compositor is resized
2017-07-21 14:43:37 -04:00
Mike Blumenkrantz
0d85c2c5a1
rework internal win centering
...
call resize before attempting to center to ensure accurate positioning
2017-07-21 14:43:37 -04:00
Mike Blumenkrantz
e184ffd49f
do not use elm api to unset centered flag during resize
...
this triggers a full eval which resizes the window and breaks the compositor
2017-07-21 14:43:37 -04:00
Mike Blumenkrantz
24ae5b53fb
perform immediate move on bryce during autosize
...
ensure that positioning doesn't animate across zones and break config
fix T5666
2017-07-21 14:43:36 -04:00
Mike Blumenkrantz
213618b762
do not set e_comp log level
2017-07-21 14:43:36 -04:00
Mike Blumenkrantz
6928ca8ce4
pass screen id when opening config dialog with ASK hotplug policy
2017-07-21 14:43:36 -04:00
Mike Blumenkrantz
48a7181089
add a configurable default policy (default: extend) for screen hotplugging
...
make an effort to "just work" instead of the classic enlightenment ux of being
as annoying as possible
ref T5707
2017-07-21 14:42:29 -04:00
Mike Blumenkrantz
e65c64ff63
use 1 second for screen config apply delay
...
I want my life back from all this time spent waiting...
2017-07-20 17:18:33 -04:00
Mike Blumenkrantz
449f12e62f
move x11 randr defines to e_comp_x_randr.c
2017-07-20 17:18:33 -04:00
Mike Blumenkrantz
e8dc71cd48
meson.
2017-07-20 17:18:33 -04:00
Mike Blumenkrantz
4d3e157b30
hide pointer cursor clients when unsetting them
...
ensure the pointer remains hidden even if the client does not unmap its surface
#TheDisappointer
2017-07-20 17:18:33 -04:00
Mike Blumenkrantz
66e95311ff
only map wl pointer clients if they are the active cursor
...
ensure cursors which are randomly committed when not being used as
a cursor (e.g., all efl wayland cursors) are not shown
#TheDisappointer
2017-07-20 17:18:33 -04:00
Mike Blumenkrantz
3055c0ecae
remove wl screenshooter protocol
...
this should never have existed, as it makes no sense for a compositor to
use protocol in order to allow itself to take screenshots
2017-07-20 17:18:33 -04:00
Mike Blumenkrantz
4ec22df15f
check for different types of load errors during startup image load tests
...
in the case where files are not found (possibly not installed/corrupted),
attempt to continue starting and not brick a running session
2017-07-20 17:18:33 -04:00
Carsten Haitzler
e38ac79a3c
pointer freeze - delay by 10 sec... because anim is used for hiding
...
this broke pointer hiding entirely... fix
2017-07-19 10:31:29 +09:00
Derek Foreman
4077b3ce59
Don't block wayland client updates during screen saver fade out
...
We stop allowing client updates when the screensaver is on to save power,
however this happens at the start of the fade-out. On wayland this stops
any visible client change.
If we wait until after the canvas is set to manual render instead then
we get similar benefit but don't lose display updates while they're
still visible.
Fix T5714
2017-07-18 15:17:05 -05:00
Mike Blumenkrantz
859d129edd
fix E_API definition
...
last of the bad refs I think?
ref f8de1a3f88
2017-07-17 11:05:15 -04:00
Mike Blumenkrantz
ea502c5e2b
reduce include deps for enlightenment_thumb binary
2017-07-17 08:14:24 -04:00
Mike Blumenkrantz
f8de1a3f88
reduce include deps for enlightenment_imc binary
2017-07-17 08:14:24 -04:00
Mike Blumenkrantz
4b4b003245
toggle NOGRAB on client input rects during move operations
2017-07-17 08:14:24 -04:00
Mike Blumenkrantz
a1d62d01e8
handle multiple input regions for csd clients
2017-07-17 08:14:24 -04:00
Mike Blumenkrantz
0912906ea1
Revert "handle multiple input regions for csd clients"
...
This reverts commit 950bee7ce4
.
accidentally pushed wrong ref, multiple incomplete broken commits were
merged
:(
fix T5739
2017-07-17 08:14:24 -04:00
Mike Blumenkrantz
219b25aff4
Revert "toggle NOGRAB on client input rects during move operations"
...
This reverts commit 8af555cae0
.
2017-07-17 08:14:24 -04:00
Carsten Haitzler
e130557be7
Revert "reduce include deps for enlightenment_imc binary"
...
This reverts commit ee71ea63ec
.
Revert "reduce include deps for enlightenment_thumb binary"
This reverts commit cce14fa839
.
both of these i reverted.... because they both CHANGE the define of
E_API like:
and this is wrong. e.h defines this so that these symbols are exposed.
E_API, EAPI and friends are desighned to explicitly expose symbols.
because if you try and make STRICTER binaries that only have symbols
for what was EXPLICTLY exposed like the CFLAG -fvisibility=hidden ...
then any api not explicitly marked with the attribute of visible which
that E_API macro is intended for... will be invisible. it will not
exist. this means a whole MOUNTAIN of modules stop loading as they
can't find these symbols. E_API isn't just source sugar tagging. it's
actually functional. i'd suggest using -fvisibility=hidden in your
CFLAGS by default. it's also not always portable between all compilers
so beware... (it was introduced years ago in gcc... i think clang
offers it. i don't know about icc or any others).
so since E_API is defined in e.h ... we may as well keep the e.h
include there instead of hand re-writing a list of includes. does
reducing the include deps really have an impact worth talking about on
compile time? the commit logs didn't say. but it does break module
loading and does it by adding lots of lines of code that are far mroe
easily broken now (this is an examplt). :)
2017-07-15 10:13:21 +09:00
Mike Blumenkrantz
327b69015b
make efm build without elm includes
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
c809f8b72d
split macros out of e.h into separate file
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
4b656d59c9
bump E_VERSION_MAJOR
...
should have been done a while ago
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
bc294e9bce
remove unused Evas.h include from e_fm_ipc.c
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
ad56e78872
only store the compositor's own data manager resource to e_comp_wl->mgr.resource
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
cce14fa839
reduce include deps for enlightenment_thumb binary
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
ee71ea63ec
reduce include deps for enlightenment_imc binary
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
a57e39a5ea
fix e_alert build with wayland only
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
94633fbde1
fix wayland-only build
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
16378acfd2
remove unused defines
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
9173deb1fc
remove egl from build
...
not needed
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
6630e602a9
save config after clearing desktop gadget site
2017-07-14 18:40:50 -04:00
Mike Blumenkrantz
4a12f5c3f2
use correct key name for BackSpace in desktop gadget key handler
2017-07-14 18:40:50 -04:00