Commit Graph

17558 Commits

Author SHA1 Message Date
Marcel Hollerbach 81e8a349bb mixer: only list playbackdevices if they are _real_ playbackdevices 2015-08-10 19:23:31 +02:00
Marcel Hollerbach d6833f0749 mixer: update internal volume and call the changed event 2015-08-10 19:17:43 +02:00
Marcel Hollerbach 91f34cb1f7 mixer: get volume after setting channels 2015-08-10 19:15:59 +02:00
Marcel Hollerbach 0a26246848 mixer: this if does not make much sense 2015-08-10 19:14:51 +02:00
Carsten Haitzler 019b6641a3 e - randr - handle lid close screen turnoff correctly again
this USED to work until i made things like auto-clone work without
config and so on and that broke turning off closed lid screens. it
also works when i suspend while lid is closed and resume (i can only
test with lid open as i need to open lid to unsuspend).
2015-08-09 00:22:16 +09:00
Mike Blumenkrantz 8e211f1950 implement wl->x11 dnd operations
seems to work fine, large selection data (ref T2330) still untested
2015-08-07 21:07:34 -04:00
Mike Blumenkrantz c696fa7088 do not send wl dnd positioning updates to xwl clients 2015-08-07 21:07:34 -04:00
Derek Foreman f124f1bf6e wayland: force wl surface frame callbacks on commit for undamaged surfaces
Summary:
Doing it just for bufferless surfaces wasn't quite enough, sometimes
we get a sequence like: attach, commit, frame, commit

And we need to respond to the frame.

 #Kansas

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2934
2015-08-07 17:20:05 -04:00
Flavio Ceolin 7c195e383c modules:mixer:pulse Update default sink
Update the default sink when it changes (for instance when it is changed
on pavucontrol).
2015-08-07 16:53:51 -03:00
Derek Foreman 15d13dad16 wayland: Always add frame callbacks to current state on commit
Summary: Previously we ignored it for unmapped surfaces.

Reviewers: devilhorns, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2932
2015-08-07 14:52:33 -04:00
Mike Blumenkrantz cae58cea9f force wl surface frame callbacks on commit for bufferless surfaces
#Kansas
2015-08-07 13:48:21 -04:00
Mike Blumenkrantz 262598a126 print DBG infos for unhandled x11 client messages 2015-08-07 13:48:21 -04:00
Mike Blumenkrantz 004383a52e block screensaver activation during xwl dnd operations 2015-08-07 13:48:21 -04:00
Mike Blumenkrantz f9bd731087 track xwl dnd event handlers 2015-08-07 13:48:21 -04:00
Stefan Schmidt 5e5fcc4828 wl_drm: No need to init orient to 0 as it will never be read. 2015-08-07 15:55:49 +02:00
Mike Blumenkrantz a579c2ec36 force render update on wayland clients during commit
an unmapped wayland client must still run post-render code to execute
frame callbacks

fixes terminology initial render with efl from git
2015-08-06 19:40:10 -04:00
Mike Blumenkrantz 5bde1a8648 implement x11->wayland dnd operations
still a little rough, but the basics are functional. works by showing
the x11 compositor selection window, which has rects to exclude geometries
of xwl clients, for getting x11 xdnd events, and then manually sending
all the related client messages in order to inform the x11 client that
enlightenment is, in fact, an extremely credible xdnd drop site and not
a rogue compositor which will mangle/destroy the dnd data.

still render crashes after the operation completes, so possibly not the
most useful thing to be using now
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz 3c722ac7f2 alias xwl client pixmaps -> wl surface pixmaps
it's now possible to retrieve the xwl client using the xwl xwindow
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz 6aa9a9477e add pixmap aliasing
this provides the ability to alias one pixmap id as another pixmap
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz 8557da360c make dummy e_drag rect invisible 2015-08-06 19:31:20 -04:00
Mike Blumenkrantz e37f5d8c28 set pass events on DND type windows
these are the actual drag windows from external apps and will be stuck
under the cursor, ideally not blocking/intercepting all motion events
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz 000c97659f reject xwl clients from wayland data device enter/leave functions
NYI
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz 550cc56e59 make most wayland data device functions external 2015-08-06 19:31:20 -04:00
Mike Blumenkrantz 106dfe4e21 only attempt to provide wayland drag motion data if drag exists 2015-08-06 19:31:20 -04:00
Mike Blumenkrantz 3dca058dfa block wayland mouse button propagation to clients while drag is active 2015-08-06 19:31:20 -04:00
Mike Blumenkrantz 9740477615 store global wayland data manager resource 2015-08-06 19:31:20 -04:00
Mike Blumenkrantz aa5788175b move wl compositor function for creating data sources to be external 2015-08-06 19:31:20 -04:00
Mike Blumenkrantz 0f070c6683 reenable compositor shape cutting onto the selection window in xwl
this will provide x11 eventing as needed on an already existing window
2015-08-06 19:31:20 -04:00
Mike Blumenkrantz fa75d181d4 block internal usage of x11 input grabs under wayland
these shouldn't be necessary since we control the input
2015-08-06 19:31:20 -04:00
Stefan Schmidt 1c61bfe049 module/geolocation: Use correct unref function for proxies.
We used the manager unref for client and location as well. Looking at the
generated code it does not make any difference right now but might do in
the future so better fix this up.
2015-08-06 19:38:49 +02:00
Stefan Schmidt c53dfe4e59 modules/geolocation: Remove unused eldbus interface variable
Never used, no need to keep it.
2015-08-06 19:38:49 +02:00
Mike Blumenkrantz dddbe2a518 force mouse-up on wayland drag start
allows mouse eventing to function as expected during drags and provides
updating during the drag
2015-08-05 17:30:03 -04:00
Mike Blumenkrantz f2f4b65ead move menu mouse-up feed util function to E_API in comp canvas 2015-08-05 17:26:50 -04:00
Mike Blumenkrantz b7cc0e07b8 enable x11 dnd in wayland compositors
maximize footgun potential since this currently crashes immediately
2015-08-05 16:07:10 -04:00
Stefan Schmidt 3ea364300e modules/geolocation: Limit the accurancy double to one decimal in the popup
Having to mayn decimal places in there is confusing.
2015-08-05 18:06:43 +02:00
Stefan Schmidt 3e8a6e7127 modules/geolocation: Keep track of accuracy and set lower minimal value
Instead of setting the highest accuracy level as minimum we now set the
lowest level. By doing so we should get a somewhat accurate location in
any case. Before this change we would just not get any location
information at all which was confusing and let people think the module
did not work.
We also keep track of the AvailableAccuracyLevel property know.

Fixes T2641
2015-08-05 18:06:43 +02:00
Mike Blumenkrantz 53900d184a use pointer hash to track data manager resources 2015-08-04 19:48:45 -04:00
Mike Blumenkrantz 5f6c91a4f4 block screensaver activation during wl dnd operations 2015-08-04 19:39:09 -04:00
Mike Blumenkrantz d4aa1ba7c2 add functionality for blocking wl screensaver activation 2015-08-04 19:39:09 -04:00
Mike Blumenkrantz 1beecb72d7 add server-side wl dnd
weston-dnd seems to work as expected
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz bce5283b57 fix wl data device kbd focus function
this should only send the selection offer
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz b5a5e98632 make wl data device util function EINTERN
e_comp_wl_data_find_for_client()
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz 965d089c8a add more wl data device debug infos 2015-08-04 19:39:09 -04:00
Mike Blumenkrantz 616ca6583e apply wayland data device focus after focus has been set
the focus_set client hook is for setting focus, not for doing things which
must occur after focus has been set
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz 6a50d5f581 fix compositor type detection for dnd operations
wayland compositors will always use a compositor grab
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz b33d8bdf10 allow new drags to be created with no associated mime types 2015-08-04 19:39:09 -04:00
Mike Blumenkrantz b011c4a045 reduce explicit ecore-x type usage in e_dnd 2015-08-04 19:39:09 -04:00
Mike Blumenkrantz fa11e0ecd7 further unify drag start functions 2015-08-04 19:39:09 -04:00
Mike Blumenkrantz e5678549da track the current pointer focus client in wayland compositor 2015-08-04 19:39:09 -04:00
Mike Blumenkrantz acf5d09796 reject deleted clients from wl show callback 2015-08-04 19:39:09 -04:00
Mike Blumenkrantz 9669dc1dc5 show drag object immediately when beginning a drag
fixes flicker at start of drag
2015-08-04 19:39:09 -04:00
Mike Blumenkrantz 2607ad2339 only return xwayland pixmap from e_comp_x_client_pixmap_get() for xwl clients 2015-08-04 19:39:09 -04:00
Mike Blumenkrantz 5526bd357a unify most of drag start functions 2015-07-31 15:35:55 -04:00
Mike Blumenkrantz 81a797a0fa defer focus-setting on focus revert during desk flip when visibility is pending
in the case that a client is going to be shown on the next loop iteration,
focus setting must still occur and be deferred

this fixes the case of a window appearing on a desk while the user is switching
desks away from it even though this window is attempting to focus itself
2015-07-31 13:58:29 -04:00
Mike Blumenkrantz 04fe354592 notidle the screensaver in wl compositor mouse move cb
fixes screen blanking while user is active
2015-07-30 16:35:51 -04:00
Mike Blumenkrantz de1d24021b set ELM_DISPLAY appropriately for wayland compositors 2015-07-30 16:29:25 -04:00
Mike Blumenkrantz 847d3fe358 reject internal window moves when they originate from a wl configure event
fixes a number of internal win positioning issues
2015-07-30 16:22:08 -04:00
Mike Blumenkrantz 3a77e8a2e9 unset DISPLAY on xwayland module shutdown
fixes loading across restarts
2015-07-30 13:36:42 -04:00
Mike Blumenkrantz 9bf1bd514b fix wizard module loading when E_MODULE_SRC_PATH is set 2015-07-30 13:24:24 -04:00
Mike Blumenkrantz 043a0b13bb flip conditional in wizard xdg events to call xdg function first
when curpage was not set, the xdg checking function would never be run,
preventing the wizard from advancing

fix T2622
2015-07-30 13:15:50 -04:00
Mike Blumenkrantz 24ec288b3c remove spurious focus setting on desk flip without animation
focus gets automatically handled in e_desk_flip_end(). changing it
again here will produce unintended/wrong results in some cases

fix T2071
2015-07-29 19:47:49 -04:00
Mike Blumenkrantz 9ad208bfb8 add fallback loading of default theme on init
this should fix cases where whatever the user-set theme is doesn't provide
a required group by filling it in

fix T2210
2015-07-29 17:41:21 -04:00
Mike Blumenkrantz 23349aa349 use gadget zone for evry gadget launcher
probably fixes T2423 maybe
2015-07-29 17:21:00 -04:00
Mike Blumenkrantz 7848947ea0 Revert "remove unnecessary geometry setting during xwl client swap"
This reverts commit ae1fc10d06.

not unnecessary if the client has already been shown. fixes xwl menus
randomly showing up at 0,0
2015-07-29 15:40:02 -04:00
Mike Blumenkrantz cd0e11c8c3 fix new_client setting on xwl clients during swap 2015-07-29 15:39:39 -04:00
Mike Blumenkrantz 1496b3db7b don't reset wayland surface geometry for overrides 2015-07-29 15:38:17 -04:00
Mike Blumenkrantz 01ba4eea55 end compositor animations for dead clients on hide
fixes a huge object leak in xwayland related to menus
2015-07-29 15:25:22 -04:00
Mike Blumenkrantz e5d367292f return immediately on wayland focus-in key timer when no focused kbds exist 2015-07-28 17:36:13 -04:00
Mike Blumenkrantz c9e35cc0f9 do not call ecore_time_unix_get() on each key sending loop for wayland clients 2015-07-28 17:34:58 -04:00
Derek Foreman fea72d5fcd wayland: Only send keyboard modifiers to focused resources
Summary: We were sending them to anything that bound a wl_keyboard.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2879
2015-07-28 17:12:57 -04:00
Mike Blumenkrantz 8278e20183 reduce delay before running screensaver-off animations in wayland
this feels a bit more natural while still displaying animations after dpms
has finished cycling
2015-07-28 16:58:53 -04:00
Mike Blumenkrantz 42bc9b0bef disable ecore-evas events on client windows during actions
this is a not-great way of hacking around various issues related to
the efl mouse button cancel patches that went in for the 1.15 cycle
which changed the entire mouse input workings of the toolkit.

to avoid further issues, the compositor will explicitly block eventing
on all internal canvases during actions
2015-07-28 16:46:00 -04:00
Mike Blumenkrantz f7ca0b5791 disable x11 mouse eventing in wayland compositor mode
these events are delegated directly by the compositor. anything that
is told to us by x11 may or may not be the case and we shouldn't care
either way
2015-07-28 15:59:19 -04:00
Chris Michael d4f9ee417d wl_desktop_shell: Formatting
NB: No functional changes

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-28 14:37:26 -04:00
Mike Blumenkrantz 784af9c097 do not create wayland screensaver timer when screensaver is disabled
ref T2609
2015-07-28 12:41:05 -04:00
Mike Blumenkrantz 6faa894a59 block xsettings config update if xsettings has not been initialized
fix T2610
2015-07-28 12:34:05 -04:00
Mike Blumenkrantz db41479414 fix x11 detection for wayland compositor setup
ref T2609
2015-07-28 12:32:50 -04:00
Mike Blumenkrantz 9138b484d1 fix desklock-related screensaver modification
ref T2609
2015-07-28 12:31:22 -04:00
Mike Blumenkrantz c4024acfd2 ensure expected screensaver blanking in x11 compositors with HAVE_WAYLAND 2015-07-27 18:24:34 -04:00
Mike Blumenkrantz 812ceafec6 fix wl screensaver activation when deactivating during fade 2015-07-27 17:32:11 -04:00
Mike Blumenkrantz 376945dcd8 add dpms handling for wayland compositors 2015-07-27 16:54:31 -04:00
Mike Blumenkrantz 9efb05a865 add E_EVENT_SCREENSAVER_OFF_PRE
for hooking dpms changes which occur before animations play
2015-07-27 16:54:01 -04:00
Mike Blumenkrantz 780bba76d2 add wl_drm dpms setting 2015-07-27 16:48:19 -04:00
Mike Blumenkrantz 56a73e3c67 add dpms method for E_Comp_Screen_Iface 2015-07-27 16:47:55 -04:00
Mike Blumenkrantz 4543e26ca6 remove e_screensaver_force_update()
this was just used to set up x11 screensaver stuff, which has now been
relocated to the related comp_init function
2015-07-27 15:54:15 -04:00
Mike Blumenkrantz 7f638d98bf add functioning wayland screensaver support
block xscreensaver events, manage input<->activation eventing

fix T2525
2015-07-27 15:46:57 -04:00
Mike Blumenkrantz c2ecadae14 reject x11 NotifyVirtual and NotifyInferior mouse in events
these are triggered "in passing" when mouse in events occur and do
not necessarily indicate that the mouse has entered this specific window

failing to reject such events can cause mouse-based focus policies to
attempt to set focus onto windows which are not visible, resulting in
an infinite loop where no window is actually focused
2015-07-27 13:25:01 -04:00
Mike Blumenkrantz 0a8ee7b5ad allow x11 mouse wheel events to check ev->event_window for possible client match
in the event that these windows are different, event_window is the parent of window
which may or may not be explicitly tracked by an E_Client, so the wheel events here
should be sent to the parent as is done in mouse button events

fix T2604
2015-07-27 13:23:13 -04:00
Mike Blumenkrantz 0d19a5914b apply csd sizing transform for wayland configure events
when not resizing, the sizes passed to configure should be based on the
window size and not the surface size. in order to calculate this, it's
necessary to keep track of the last-known window geometry for non-maximized
states and create offsets with which to calculate new sizes

this fixes directional maximizes as well as unmaximizing
2015-07-24 16:35:21 -04:00
Mike Blumenkrantz 9e4fe82fbc always send geometry to configure method for wayland clients when not resizing
failure to set this would lead to clients changing geometry when maximized while
focus state was removed
2015-07-24 16:34:18 -04:00
Mike Blumenkrantz 0321fd690e do not send duplicate configures for wayland clients during maximize
this seems to not have caused any real issues, but it made debugging
more of a pain and is unnecessary connection noise
2015-07-24 16:33:33 -04:00
Mike Blumenkrantz dd1577a169 fix client smart callbacks on (un)maximize
these should match the callbacks triggered for whatever the current
maximize state is
2015-07-24 14:34:03 -04:00
Mike Blumenkrantz 187fd44936 add an actual module no-save blacklist
this should make it easier to keep track of modules that should be
blocked from having their load states saved
2015-07-24 14:34:03 -04:00
Chris Michael 33414c0a0d enlightenment: Remove static function prototype for unused function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-24 13:16:04 -04:00
Chris Michael b98a58f632 enlightenment: Allocate space for terminating NULL
Fixes CID1261289

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-24 13:12:20 -04:00
Chris Michael f25f074be5 enlightenment: Remove listener for XDnD status
As we don't do anything within this handler, having it is just
pointless. Remove it. Fixes Coverity CID1267214

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-24 13:09:36 -04:00
Derek Foreman 457f3c013c wayland: fix key repeat
Summary:
wl_keyboard_send_repeat_info takes ints, not floats.  We were rounding to
0 and weston-terminal didn't key repeat.

fixes T2597

Reviewers: devilhorns, zmike

Subscribers: cedric

Maniphest Tasks: T2597

Differential Revision: https://phab.enlightenment.org/D2859
2015-07-23 11:01:31 -04:00
Mike Blumenkrantz 5cbbe261d7 add a timer for wl client focus to delay held key input
this prevents keys from immediately being sent to newly-focused clients
and avoids the case of reverting focus from one app to another on keybind
close, only to have the second app also close immediately using the same keybind
2015-07-22 17:55:30 -04:00
Mike Blumenkrantz 738622b068 send wl kbd modifiers only when changes occur 2015-07-22 17:46:39 -04:00
Mike Blumenkrantz d38b2eb6b3 create/manage list of focused wl keyboard resources for reuse in kbd operations
this simplifies kbd code all over
2015-07-22 17:40:28 -04:00
Mike Blumenkrantz 0b66c2d841 set new_client flag on xwl clients during swap
this forces another run of client placement so that xwl clients do
not always appear at 0,0
2015-07-22 17:10:49 -04:00
Mike Blumenkrantz ae1fc10d06 remove unnecessary geometry setting during xwl client swap
this geometry will be applied during show
2015-07-22 17:10:11 -04:00
Mike Blumenkrantz 43ed8dbdb5 set shell-less wl surface mapped state regardless of visibility during commit
new_client flag here will defer show operations, but the operations will complete
2015-07-22 17:09:14 -04:00
Mike Blumenkrantz 6dfc6da02c update wl keyboard resource key presses on focus in/out of surfaces 2015-07-22 16:59:23 -04:00
Mike Blumenkrantz 5c5fb11187 allow wl client focus-out callback to execute on deleted E_Clients 2015-07-22 16:28:48 -04:00
Mike Blumenkrantz 435bd8794a don't update wl keyboard state on client focus events
this is always up-to-date
2015-07-22 16:28:08 -04:00
Mike Blumenkrantz 75fb072dc3 fix backlight init value
in the case where xrandr is not used, setting backlight to very dim on init
will result in the backlight remaining at a very dim level when the backlight
normal level is 1.0 since backlight values will not successfully update until
at least 0.05s after the main loop starts

ref T1333
2015-07-22 13:56:19 -04:00
Mike Blumenkrantz 818fcb01f4 fix compositing error when client is ec->hidden during show animation
this prevented clients from being deleted and resulted in artifacts and
memory leaks
2015-07-22 13:30:02 -04:00
Mike Blumenkrantz a3d5762bf2 simplify deskmirror client desk checking 2015-07-22 13:23:53 -04:00
Mike Blumenkrantz 9c1fca5a16 fix wl build 2015-07-22 12:24:35 -04:00
Mike Blumenkrantz a9db84f94e simulate modal windows for badly behaved x11 clients
it seems that some clients, eg. libreoffice, don't set the modal window
property on child dialogs. instead of fighting for focus, set up the child
as a modal on the parent and then avoid the whole issue

fix T2594
2015-07-21 18:24:39 -04:00
Mike Blumenkrantz a951b88305 don't block keybind activation while grabs are active 2015-07-21 15:33:50 -04:00
Mike Blumenkrantz b51e5fa0b2 ensure clients possess comp_data before dereferencing it during x11 stacking
ref T2566
2015-07-21 14:34:11 -04:00
Mike Blumenkrantz 5c00c1009b redo wl compositor key eventing
* break out key callbacks into EINTERNs
* remove extraneous/unused mouse event handlers
* enforce wl modifier updating in all cases
* ensure keybinds are activated before wl clients receive input
  - block wl client input during grabs

fixes T2565
2015-07-21 14:27:29 -04:00
Mike Blumenkrantz d2fce4ce27 do not add x11 compositor desklock hooks in non-x11 compositor 2015-07-21 14:25:41 -04:00
Mike Blumenkrantz 2ce5dfa33f add wl compositor desklock hooks to add grabs during lock 2015-07-21 14:25:16 -04:00
Mike Blumenkrantz 21b8016c5b add clients to focus stack as necessary in e_client_unignore() 2015-07-21 14:21:36 -04:00
Mike Blumenkrantz 2eabf1142f always stop passing key events on once they reach the lokker callback 2015-07-21 14:21:07 -04:00
Mike Blumenkrantz 7aea28a86b do not attempt to remove wl xdg popup clients from focus stack
these have never been added to the focus stack, so removing them is useless
2015-07-21 14:19:39 -04:00
Mike Blumenkrantz 269d589cd1 do not block winlist activity based on event window in non-x11 compositors
fixes winlist interaction in wayland
2015-07-21 14:13:55 -04:00
Derek Foreman aae280bfcd shot: Skip the wayland setup bits when running under X
fix T2592

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2851
2015-07-21 12:23:55 -04:00
Chris Michael e78abc23c1 desklock: Fix T2589: Screen Lock crashes in E
Don't call ecore_x functions unless we are using an X11 compositor.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-21 09:03:59 -04:00
Mike Blumenkrantz 3c3f0845f3 fix typo in comp object opaque region render
#DerekWasRight
2015-07-20 17:26:13 -04:00
Mike Blumenkrantz f6725c53a4 move opaque region (image border) apply to render fn
this seems to provide a more accurate region for rendering in my tests,
as various weston-apps no longer show black rects during resize
2015-07-20 14:38:44 -04:00
Mike Blumenkrantz 612a61ce0e don't mangle wl client opaque region tiler during commit clip 2015-07-20 14:38:31 -04:00
Mike Blumenkrantz 4acce00428 improve wl compositor tiler usage
pixman <-> tiler api naming seems similar but functionality is totally
different
2015-07-20 14:10:55 -04:00
Mike Blumenkrantz 4d76741533 only perform keybind grabs on root window for x11 compositors 2015-07-20 13:32:06 -04:00
Mike Blumenkrantz f2d71ad903 block compositor keybinds using more accurate x11 detection
blocking based on event window here is only valid for true x11 compositors
and not just compositors with root windows

fixes keybind activation when running xwayland clients
2015-07-20 13:29:13 -04:00
Carsten Haitzler ee16a11455 e - randr allow you to turn off screens and keep them off if config says so 2015-07-19 22:41:48 +09:00
Carsten Haitzler 94a15856bd e - unbreak client pixmaps when native surf is used
this unbreaks disappearing client content introduced by
5a001b1759.
2015-07-18 23:39:46 +09:00
Mike Blumenkrantz 6b7ce91373 do not set opaque regions on comp object mirrors
based on testing, this breaks all rendering of related objects. I
suspect that the image border needs to be manually scaled based on
image::mirror proportions in order for this to work as expected, but
adding the required code seems like too much complexity for nearly zero
gain
2015-07-17 16:09:52 -04:00
Mike Blumenkrantz 1d4d906361 render surface opaque regions as opaque when image border is set
it seems that just setting the opaque region is not enough for evas;
we must also inform it that the opaque region is opaque and should not
be blended
2015-07-17 16:07:01 -04:00
Mike Blumenkrantz 552f065c09 zero out wl surface opaque region on commit in all cases
it's possible that the opaque ptr may exist but have no regions,
which will result in the previous frame's opaque region being used
2015-07-17 15:58:14 -04:00
Mike Blumenkrantz bd776b157f add e_client_unignore() for triggering events when unignoring a client
mainly for use in wayland compositing since all surfaces are ignored
until they get a shell surface or a commit
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz 51c74889cf fix wl_fb define name in comp init 2015-07-17 15:30:30 -04:00
Mike Blumenkrantz 5a001b1759 enforce image border/size/pixels_dirty setting on comp mirrors during create
this should provide a more accurate first-render for mirrors as they are added
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz 62792ce662 ensure wayland parts of shot module use the correct wayland display objects
the ecore-wl global objects used here will be wrong for the case of nested
compositors
2015-07-17 15:30:30 -04:00
Mike Blumenkrantz 6471ba0a05 do not update client list hint when creating a new wayland client 2015-07-17 15:30:30 -04:00
Mike Blumenkrantz fbe55d20f1 always set new wayland E_Clients to be ignored during client hook 2015-07-17 15:30:30 -04:00
Mike Blumenkrantz d5e25a8449 add wl_wl wl output module
it is now possible to create a xephyr window in a drm-enlightenment session,
launch wl-x11 enlightenment in xephyr, and then launch wl-wl enlightenment
inside that enlightenment

the primary limitation on this output module is that all internal windows will
appear in the outer compositor due to the current restriction of ecore-wayland
with regard to only having a single global display server connection

 #Inception
2015-07-17 15:30:30 -04:00
Seunghun Lee faacad29dc remove a kind of typo in E_ZONE_GEOMETRY atom string.
Test Plan: N/A

Reviewers: devilhorns, zmike

Reviewed By: devilhorns, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2833
2015-07-17 15:04:39 -04:00
Chris Michael bf993c6eee e-comp-wl: Fix region_add and region_subtract functions to make sure we have accurate opaque regions
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-17 14:58:34 -04:00
Mike Blumenkrantz 32c48f9a40 ...and also ungrab the compositor when internal drags end 2015-07-16 12:59:04 -04:00
Mike Blumenkrantz 2e5ab5a947 only use input xwindows for internal drags in x11 compositor
this fixes input region detection for dnd operations

fix T1831
2015-07-16 12:52:00 -04:00
Derek Foreman 41cb2fa161 screenshooting: Avoid void pointer arithmetic
Summary:
If we use unsigned char pointers instead of void pointers we actually
conform to the C standard.

This patch removes a reliance on a gcc extension and, as an added bonus,
also quiets a warning in the default build.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2820
2015-07-15 18:09:15 -04:00
Mike Blumenkrantz 7859787f73 wl clients should not use edges during keyboard resize
ref T2452
2015-07-15 18:08:32 -04:00
Mike Blumenkrantz ecb5f4ca41 add E_Client->keyboard_resizing flag
there is no other indication of whether a client is resizing using the
keyboard, so this should serve as an adequate hint
2015-07-15 18:07:12 -04:00
Mike Blumenkrantz 73c03565b3 never use new clients for stacking part 2: the secret of the stacking
a client with this flag set here is unreliable to use as a stacking
reference since it has yet to be stacked and can be located anywhere
in the window stack.

fixes internal window stacking on startup
2015-07-15 16:22:02 -04:00
Mike Blumenkrantz 953b80f8ef ensure that focus is set and focus stack is managed on winlist hide
if pointer warping is disabled, attempting to pointer warp with mouse-based
focus policies will fail here, preventing focus from being applied as expected

ref T2566
2015-07-15 14:47:35 -04:00
Mike Blumenkrantz 008a0658ec only trigger client mouse-in from x11 mouse move event if client+desk are visible
ref T2566
2015-07-15 14:27:19 -04:00
Mike Blumenkrantz 17e878eca3 simulate netwm sync for xwl clients
blocks execution of resizes until the surface commit arrives. reduces
the race condition between resize and render and eliminates frame drops
during slow resizes
2015-07-15 13:58:03 -04:00
Mike Blumenkrantz 1c0a0ab00f move xwayland socket connection to its own thread
this operation performs a synchronous socket connection inside xlib which can
block for an infinite amount of time. in order to avoid having a potentially
unlimited amount of time where the ui is frozen and polling on the socket connection,
move it to a thread where it can hang for as long as it wants and then use the
resulting display object for the ecore-x connection
2015-07-15 13:58:03 -04:00
Chris Michael 321a421208 e-comp-wl: Remove unused variable
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-15 13:46:51 -04:00
Chris Michael 9e2512eb98 e-comp-wl: Fix T2570: stuck key when closing efm windows
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 15:26:38 -04:00
Chris Michael e46c0812fc e-comp-wl: Fix getting end key during key down/up events
NB: This is actually an Oopsie from a previous commit that should not
have gotten in.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 15:10:38 -04:00
Chris Michael 147bc3d71a e-comp-wl: don't send keyboard modifiers twice.
NB: e_comp_wl_input_keyboard_modifiers_update already sends keyboard
modifiers to all keyboard resources, so no need to call this twice.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 14:46:13 -04:00
Chris Michael 116af14649 e-comp-wl: Update keyboard and modifier state AFTER we send them to clients
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 14:18:21 -04:00
Chris Michael 46997706ea e-comp-wl: Add support for wl_keyboard_send_repeat_info to allow for configurable keyboard repeat rates
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 13:29:02 -04:00
Chris Michael 74e96f3826 e-comp-wl: Update keyboard key state regardless of client focus or not
Key state updates need to be consistent. As we update the key state on
key up regardless of client focus, then we should be doing the same in
the key_down event handler so that key state remains consistent.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 13:29:02 -04:00
Chris Michael 5052bd9266 e-comp-wl: Don't call keyboard_modifiers_update twice
e_comp_wl_input_keyboard_state_update already makes a call to
e_comp_wl_input_keyboard_modifeirs_update so there is no need to call
it twice on key up/down events.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-14 13:29:02 -04:00
Mike Blumenkrantz 161b67a53d Revert "delete render updates for xwayland clients upon triggering a client resize"
This reverts commit f3f29a0cf8.

upon further review, this was not at all helpful and breaks resizing eventually
2015-07-14 13:12:06 -04:00
Simon Lees 47f9484149 remove unnecessary call to e_bg_del
I noticed e_bg_add calls e_bg_del so the additional call is not
required, it should also be noted the msgbus module doesn't call
this and works fine.

Reviewers: raster, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2811
2015-07-14 12:32:42 -04:00
Simon Lees e8911323c3 e_bg_del should only delete the bg on the zone specified
Summary:
previously e_bg_del didn't take the zone paramater into
account

fixes T2572

Reviewers: raster, zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2810
2015-07-14 12:32:37 -04:00
Carsten Haitzler 964fabe6e2 e randr2 - auto clone and use common res when doing so - make it work
tested this and made it work. should fix T2100
2015-07-12 18:12:00 +09:00
Mike Blumenkrantz c128d54690 disable size debug on drags 2015-07-11 08:37:56 -04:00
Mike Blumenkrantz f3f29a0cf8 delete render updates for xwayland clients upon triggering a client resize
fixes frame dropping during resize
2015-07-10 16:59:47 -04:00
Mike Blumenkrantz 311f524094 only register dnd xwindow with compositor canvas in x11 compositor mode
registering it under wayland creates spurious mouse events
2015-07-10 16:03:45 -04:00
Mike Blumenkrantz 4a779ef03d fix xdnd in (x)wayland
this is a real thing, so don't abort immediately if it happens
2015-07-10 16:03:18 -04:00
Mike Blumenkrantz e92519f171 adjust layering of pointer and init splash
prevents cursor from getting stuck above screensaver fade
2015-07-10 14:21:50 -04:00
Mike Blumenkrantz 697e1beda3 add wayland client post-render references in the render loop 2015-07-10 13:22:15 -04:00
Mike Blumenkrantz bec06b8703 add function to fill in x11 cursor image on creation
xwayland compositing requires that we set up a root window cursor image
immediately since we'll be getting that cursor surface to display as soon
as the pointer goes out of an x11 client's window
2015-07-10 13:04:12 -04:00
Mike Blumenkrantz 5a26363046 break up some pointer setting code into helper functions 2015-07-10 13:03:05 -04:00
Mike Blumenkrantz 5d9cefd9e2 always set x11 override client geometry on startup
this geometry isn't something we can change later, so apply it now.
also fixes an ACK when trying to show input_only clients early
2015-07-10 12:07:29 -04:00
Mike Blumenkrantz c9d5053998 disable netwm sync on x11 clients in wayland compositors
this has no effect
2015-07-09 19:32:51 -04:00
Mike Blumenkrantz 884068ff9d when e crashes in wayland, just crash instead of possibly freezing 2015-07-09 15:11:13 -04:00
Mike Blumenkrantz 399e3c79ce unify crash handler functions 2015-07-09 15:01:50 -04:00
Mike Blumenkrantz 20d281d9d3 redo e_pointer to support xwayland cursors
this requires that both canvas cursors and window cursors be present for the same
E_Pointer object, even though only the canvas cursor is actually visible

 #kansas
2015-07-09 14:45:04 -04:00
Chris Michael cc5aa9153d shot: Enable feature of taking just window shots in wayland
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-09 12:37:42 -04:00
Mike Blumenkrantz c4c18ed30b return to using standard client util fns for getting client wins in x11 2015-07-08 17:16:25 -04:00
Mike Blumenkrantz 54c6d7094e remove unnecessary E_COMP_WL #defines
this is only required for aliasing E_Client->comp_data as wayland compositor data.
if comp_data is never dereferenced, it is not necessary to declare the compositor
type
2015-07-08 17:12:42 -04:00
Mike Blumenkrantz 00b52c3951 make wayland-specific shot protocol files conditional on wayland build 2015-07-08 17:11:16 -04:00
Mike Blumenkrantz 4b4f28ac5e remove NEED_WL define from some makefiles
this isn't a thing and I don't know why it's here
2015-07-08 17:06:14 -04:00
Chris Michael 921b882e9d shot: Disable window shots in wayland for now
NB: Feature still being developed

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:41:23 -04:00
Chris Michael 3d90de80b7 shot: Update with proper compositor checking tests
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:22:08 -04:00
Chris Michael fb735047a8 remove old wl_screenshot module
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:17:51 -04:00
Chris Michael f2e49b686e shot: Update shot module to now be able to take Wayland screenshots
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:14:56 -04:00
Chris Michael 697e8b32df shot: Update shot makefile to include client screenshot protocol files
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:09:34 -04:00
Chris Michael 3088f2315c wl-drm: Add function to readback pixels for compositor screenshots
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Chris Michael f214d9d73b e-comp-wl: Create compositor screenshooter global and add function to actually handle taking shots
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Chris Michael 66a42b7994 e-comp-wl: Add screenshooter structure to comp_wl_data and add additional fields we need in E_Comp_Wl_Output
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Chris Michael 411a5717c7 e-comp-wl: Add screenshooter files to build order
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Chris Michael 0160c99103 shot: Add screenshooter client protocol files
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Chris Michael fcb560fca7 e-comp-wl: Add screenshooter protocol files
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:08:35 -04:00
Mike Blumenkrantz 27f87a6ac8 fix wayland-only build 2015-07-08 14:53:55 -04:00
Mike Blumenkrantz 6a459e3a4c remove NEED_X define from build
this used to be a marker for places where x11 functionality was needed,
but this has been simplified with the removal of wayland-only in configure
and so it is no longer needed
2015-07-08 14:49:33 -04:00
Mike Blumenkrantz 9f51bffd1e make e_client_util_.?win_get() fns return xwayland windows when available
fixes setting x11 hints in xwayland clients
2015-07-08 14:48:19 -04:00
Mike Blumenkrantz af15bf11eb set xwayland clients in x11 compositor client hash using parent window on flip 2015-07-08 14:47:24 -04:00
Mike Blumenkrantz 53ff8b764f properly calculate client+frame sizes during wl surface commit 2015-07-08 14:46:12 -04:00
Mike Blumenkrantz 9bdb805f48 account for race condition when creating initial comp object updates tiler
under wayland, some surfaces (eg. cursors) would attempt to show prior to
having acquired their actual size. these show attempts should be rejected
until the size has been set to ensure that rendering can proceed as expected

fix T2557
2015-07-08 12:36:36 -04:00
Mike Blumenkrantz 31f6c5b446 feed mouse-in event to drm canvas on init
this is normally triggered by the engine/display server, but the drm
output is too powerful to be bothered by such trivial matters as
mouse events on startup
2015-07-07 14:33:14 -04:00
Mike Blumenkrantz c961408d7f block client signal binding activation when mouse action is active
this prevents oddities such as activating [window shade] and [resize] actions
simultaneously from breaking the compositor
2015-07-07 13:12:20 -04:00
Chris Michael 72eacf7e6e shot: Fix formatting for 80 columns
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-07 08:56:46 -04:00
Mike Blumenkrantz 579a9ab0e2 set CRITICAL urgency for notification internal notifications
ensure that presentation/offline mode toggles will display a notify
2015-07-06 16:21:58 -04:00
Mike Blumenkrantz 17f0ce3713 move grabinput focus fix timer to x11 compositor and fix it to Work Better
see inline comments about x11 focus eventing for details

fix T2547
2015-07-06 15:46:02 -04:00
Mike Blumenkrantz 409bc58131 use ref macros to silence more printfs in e_remember 2015-07-06 14:29:30 -04:00
Mike Blumenkrantz d2a9596753 use evas object callbacks for fwin mouse in/out, don't use ecore-x handlers in wayland
improve compatibility with wayland compositors
2015-07-06 14:23:54 -04:00
Mike Blumenkrantz 703199ef88 silence printf noise in screensaver and pkgkit module 2015-07-06 12:52:36 -04:00
Mike Blumenkrantz 29312e1216 make pager popups only trigger on urgency hint if client is not currently visible
the annoyance of having this popup constantly triggered while a window is visible
cannot be understated.
2015-07-06 12:47:00 -04:00
Mike Blumenkrantz 970b46b631 make e_client_util_desk_visible() work for overrides without desks 2015-07-06 12:47:00 -04:00
Carsten Haitzler c8db4e08fc e desktop file properties - fix icon sel tab to expand icon and icon name
this fixes this tab after e20 dev changes
2015-07-05 10:51:13 +09:00
Derek Foreman 8e91f32978 wizard: Prevent crash
Summary: If we get here when curpage is NULL, we'll crash later, so we should test for it.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2793
2015-07-03 11:55:40 -04:00
Derek Foreman fd9780f716 wizard: Prevent crash
Summary: If we get here when curpage is NULL, we'll crash later, so we should test for it.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2789
2015-07-02 18:13:11 -04:00
Derek Foreman 528d8b31fc Init some vars to NULL in compositor create
Summary: In some cases these end up uninitialized and we crash.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2788
2015-07-02 17:54:40 -04:00
Mike Blumenkrantz d4674aefb7 set title/name/class on wl-x11 output canvas window 2015-07-02 16:52:11 -04:00
Mike Blumenkrantz 6323d0fb51 only apply xwl client deletion to xwl clients in x11 compositor 2015-07-02 16:49:19 -04:00
Mike Blumenkrantz 8b6b7b1f56 reorder xwayland client swap attribute setting 2015-07-02 14:58:10 -04:00
Mike Blumenkrantz e9060ce771 unset x11 focus grabs on clients only if there is an xwindow present
fix T2539
2015-07-02 14:57:42 -04:00
Mike Blumenkrantz 1716f1a6fa return NULL when a client's xwayland pixmap is unreachable 2015-07-02 14:57:01 -04:00
Mike Blumenkrantz c054506d4e block wl key events from reaching clients during client actions or key grabs 2015-07-02 14:30:54 -04:00
Mike Blumenkrantz b80f96f2fa pop an error dialog when trying to load xwayland module under x11
this is impossible and will never be possible; ecore-x can only manage
a single x11 connection at any time, and so it will never be possible to both
manage the x11 compositor canvas on one xserver and manage xwayland clients
on a separate server

invalidates T2537
2015-07-02 14:28:07 -04:00
Mike Blumenkrantz 6fa4e93d19 reject xwayland module from saved module loading 2015-07-02 14:26:28 -04:00
Mike Blumenkrantz 0a5e00488d set initial surface attrs for internal wl clients 2015-07-02 14:26:02 -04:00
Mike Blumenkrantz fa3c3b0e22 clean up xwayland lock/socket init code 2015-07-02 13:55:42 -04:00
Mike Blumenkrantz 2fe9f7c5e8 fix typo in conditional for setting x11 hints 2015-07-01 17:42:26 -04:00
Mike Blumenkrantz db92edccf6 do not apply x11 focus grabs to internal elm clients
due to recent changes in ecore-input-evas, mouse events are propagated
differently; specifically, there are now "more" events than there previously were.
as a result, grabs on internal wins are no longer necessary, though they probably
never were necessary after the elm conversion

see 5cb6cdbc5e1a13ea0262e155983b494e6519abde in efl
2015-07-01 17:14:27 -04:00
Mike Blumenkrantz 9eb3abd45a reject x11 replay clicks when event window != client window 2015-07-01 17:01:54 -04:00
Mike Blumenkrantz fa684556d9 only ungrab x11 windows when appropriate focus options are set 2015-07-01 16:48:26 -04:00
Mike Blumenkrantz 2485cbbd13 allow hint setting on x11 windows in xwayland 2015-07-01 16:44:09 -04:00
Mike Blumenkrantz 99ddeb6d69 replace comp_x usage of internal xwindow detection function with new util fn 2015-07-01 16:41:26 -04:00
Mike Blumenkrantz 8e5a2cb430 add client util function for determining if a backing xwindow exists 2015-07-01 16:40:10 -04:00
Mike Blumenkrantz 2d3c43a39c replace some x11 compositor checks with calls to util function 2015-07-01 16:25:45 -04:00
Mike Blumenkrantz a597b53f4c fix e_scale wayland conditional defines 2015-07-01 16:08:21 -04:00
Mike Blumenkrantz 1dbe0b4eb8 add util function for determining presence of x11 compositor 2015-07-01 16:05:25 -04:00
Mike Blumenkrantz dd1ff970ac print xwl loading debug after checking compositor type 2015-07-01 16:02:48 -04:00
Mike Blumenkrantz 235980159f ensure x11 focus grabs are applied on client init when needed 2015-07-01 15:51:46 -04:00
Mike Blumenkrantz 393772a72f straggler ungrab of x11 parent window from previous commit 2015-07-01 15:32:25 -04:00
Mike Blumenkrantz 33ec963be2 redo all x11 client mouse grabbing for focus
I did an audit of this and it seemed that it no longer served the purpose
for which it was originally intended. specifically, this is for enforcing
click: raise/focus options, and so grabs must be in play on client windows
only when they are not focused to ensure that we get mouse events and can
then focus them. the grabs must then be removed once the window has focus
to avoid spurious mouse eventing
2015-07-01 15:26:28 -04:00
Chris Michael 899899e35a e-comp-wl: Update modifiers on key down/key up events
NB: Fixes Ctrl+D problem here.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 14:50:28 -04:00
Chris Michael 0ae0559eba e-comp-wl-input: destroy xkb keyboard state Before destroying the keymap
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 13:25:20 -04:00
Chris Michael a554a27bea e-comp-wl-input: Format for 80 columns
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 13:18:55 -04:00
Chris Michael 7aef1fdb73 xwayland: Use proper E_API for exporting module symbols
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 12:43:05 -04:00
Chris Michael bf19cdf337 correctly fix check for x11 compositor in e_xkb
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 12:23:40 -04:00
Chris Michael 28c8392a5c correctly fix check for compositor in e_grabinput
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 12:20:32 -04:00
Chris Michael 09592f57ff e_grabinput: Don't call ecore_x functions if we are not an X compositor
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 12:17:54 -04:00
Chris Michael e94a04eddc Don't call ecore_x_xkb_select_group if the compositor is not X11
This fixes T2533 where the startup wizard would crash when run under
DRM due to the change in build options (xwayland support).

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-01 09:16:18 -04:00
Mike Blumenkrantz c9a444c85d use client window for x11 button ungrabbing
ref afb62b4989
2015-06-30 18:46:33 -04:00
Mike Blumenkrantz b0bf0379dc copy more attributes from x11 -> wl on xwayland client swap
xwayland sets a wrong size on some (eg. menus) clients and wayland
cannot provide geometry or stacking information, so ensure that all
of this is copied over

also remove overrides from focus stack
2015-06-30 18:38:36 -04:00
Mike Blumenkrantz cca2363c7c clean up xwl data on client deletion
remove the extra comp_data, the pending client list entry, and the pixmap ref
2015-06-30 18:38:01 -04:00
Mike Blumenkrantz 6d030b1c32 don't create first draw timers for input-only x11 clients 2015-06-30 18:37:21 -04:00
Mike Blumenkrantz 668bb06dc0 don't attempt to change layer of override clients with parent set in x11
overrides will stack how they want, leave them alone
2015-06-30 18:36:23 -04:00
Mike Blumenkrantz 31d0fd0417 add debug info when x11 client messages are missed 2015-06-30 18:36:03 -04:00
Mike Blumenkrantz 52fd0581fa temporarily toggle ignored flag during wl surface commit
ensures canvas operations succeed during commit in cases where
subsequent commits do not occur (eg. menus, popups, ...)
2015-06-30 18:34:16 -04:00
Mike Blumenkrantz 8644c88b39 fix typo in iterating pending xwl clients on wl surface creation 2015-06-30 18:33:38 -04:00
Mike Blumenkrantz f1f4489822 free all ec->comp_data ptrs in _e_client_del
need this to live through multiple del hooks, so simplify all code by
freeing in one place
2015-06-30 18:33:00 -04:00
Mike Blumenkrantz 629f07e510 only reject ec->ignored clients from wl mouse events
fixes input on overrides
2015-06-30 18:31:43 -04:00
Mike Blumenkrantz 6de9c551de add special case for xwayland override clients in show event handler 2015-06-30 16:04:22 -04:00
Mike Blumenkrantz 7583b5ae5c use separate client hashes for x11/wl clients 2015-06-30 16:04:22 -04:00
Chris Michael 7cd07acad7 e-comp-wl: Release keys on key_up regardless if client has focus
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-30 15:58:41 -04:00
Mike Blumenkrantz 334e406cc5 fix compile from previous commit
I am not a smart man.
2015-06-30 15:51:29 -04:00
Mike Blumenkrantz b282ada5c8 disable uuid store
currently seems to fill logs with infinite error messages

ref T2532
2015-06-30 15:50:04 -04:00
Mike Blumenkrantz c58cc3c279 unset ec->ignored during xwayland client data swap 2015-06-30 15:38:13 -04:00
Mike Blumenkrantz f046c98f59 attempt to create xwayland x11 socket path before creating socket 2015-06-30 15:37:56 -04:00
Chris Michael 1c59062cda e-comp-wl: Don't crash from a missing keymap
This fixes T2531 where E would crash if the keymap could not be
fetched from xkb. Now if no keymap rules, model, or layout are passed
in we will default to a US keymap.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-30 09:10:54 -04:00
Stefan Schmidt 8bbbd7a951 wl_x11: Mark data in callback as unused 2015-06-30 12:06:29 +02:00
Mike Blumenkrantz 9e0764809f add focusgrab test
this test demonstrates one of the more annoying aspects of x11 focus
2015-06-29 18:14:20 -04:00
Mike Blumenkrantz 82a320404c enforce pstate's extremely-confusing no_turbo option in cpufreq
fix T2411
2015-06-29 16:38:17 -04:00
Mike Blumenkrantz 79ea175992 trigger client mouse-in on x11 mouse movement for non-action clients
this should fix the case of mouse-based focus policies trying to reapply
focus after another client has stolen it away without the pointer leaving
the window
2015-06-29 16:01:52 -04:00
Mike Blumenkrantz 3e6d6b348f trigger fake mouse-out on clients when unsetting focus
this will allow a more reasonable determination of pointer location
when attempting to apply mouse-based focus policies
2015-06-29 16:00:43 -04:00
Mike Blumenkrantz 0d3ade0f07 unset changes.visible when forcing visibility during no-effect desk flip
this is set for new clients and creates visibility issues on startup
2015-06-29 15:48:27 -04:00
Mike Blumenkrantz 58256b851e fix focus FIXME regarding focus-setting on clients from other desks
fix T2259
2015-06-29 15:47:57 -04:00
Mike Blumenkrantz 14c038d730 check for possible parent window on x11 mouse button events
in the case of different window <-> event_window, window is a child window
of event_window, and thus checking event_window here is valid (and necessary)
2015-06-29 15:28:41 -04:00
Mike Blumenkrantz aa32ef87f9 stop rejecting possibly-valid x11 focus events
fixes case where window assumes focus without wm interaction
2015-06-29 15:26:08 -04:00
Mike Blumenkrantz 4e601d421e set pager_plain to fill area
fix T2526
2015-06-29 14:58:48 -04:00
Mike Blumenkrantz e29d451c74 disable wl-fb output module
this has never worked and is not being actively developed
2015-06-29 13:54:45 -04:00
Mike Blumenkrantz 8c223c0af4 remove E_Comp_Data reference from wl-x11 module
fix T2528
2015-06-29 13:42:14 -04:00
Stefan Schmidt df041fe77b session_recovery: Add wayland extension protocol prototype for session recovery
Like with all other wayland protocols I add the files generated with wayland
scanner here. Also the xml so we have the source around for updating and
modifications. We might want to think about wayland-scanner support in our build
system but this works for now.

The protocol prototype is hold simple and does only have a uuid signal and provide
call to handle the uuid assignment from compositor to app and app providing its
uuid if present already.
2015-06-29 17:02:28 +02:00
Stefan Schmidt 0522053dd1 e_pixmap: Create uuid when being used as a wl surface 2015-06-29 17:02:20 +02:00
Stefan Schmidt bbc744490b e_main: Initialize UUID store during E startup
I have been running with this enabled for a while and it should not make
trouble but if it does simply reverting this one if totally fine while I'm
away.
2015-06-29 17:02:12 +02:00
Stefan Schmidt 2d3fae79a0 e_remember: Update UUID store properties from e_remember
The e_remember infrastructure already hooks into all needed places to keep
a record of the given properties for an e_client. We use this to update the
UUID store.

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
2015-06-29 17:02:03 +02:00
Stefan Schmidt e2f87d3498 e_client: Remove deleted client from UUID store
Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
2015-06-29 17:01:53 +02:00
Chris Michael 9d2e1fbc85 e-comp-wl: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-28 11:09:56 -04:00
Carsten Haitzler afb62b4989 e passive window grabs - fix side-effect leave/enter events on clients
when you have click to focus we have a passive grab set up. somewhere
that window changed to the parent window instead of the client. this
leads to a side effect of a leave and enter event on clients for every
click. generally clients are ok with this, but some seem to have buggy
event handling. these enter/leave events are a side effect of the
passive grab even though we allow/replay the event.

this fixes that by placing passive grabs on the client window itself
instead of the parent.

@fix
2015-06-28 17:24:29 +09:00
Mike Blumenkrantz c30e0240e4 don't select mouse wheel events on x11 reparenting window
this fixes mouse eventing/focus on windows, though I'm not entirely sure why...
probably something with binding grabs
2015-06-26 12:37:02 -04:00
Chris Michael 3a395b4223 mixer: Fix resource leaks
This fixes Coverity CID1308395: Resource leak. Basically, don't bother
allocating 'source' if we are just going to end up returning due to
'eol' variable tests

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-26 10:25:42 -04:00
Mike Blumenkrantz 2bf57d79af set shm engine for wl internal windows
this seems to be necessary for now to prevent crashing
2015-06-25 20:25:41 -04:00
Mike Blumenkrantz b862ec63d0 add wrappers for window/pixmap/comp_data fetching in x11 compositor
these helper functions automatically account for "swapped" xwayland
clients and return the expected value from the wl client comp_data.
in this way, all of the current x11 compositor code can be reused with
minimal changes
2015-06-25 20:25:41 -04:00
Mike Blumenkrantz cd646e8ecd reject non-x11 clients from _e_comp_x_client_zone_geometry_set() 2015-06-25 20:25:40 -04:00
Mike Blumenkrantz 2b38147c43 add hooking for WL_SURFACE_ID atom on XWayland windows and composite them
in order to maximize the amount of reused code the following details the current
process for xwayland compositing:

* get map request from window
* force reparenting
* show window
* await WL_SURFACE_ID x11 message
* move x11 client data + pixmap onto corresponding wayland client
* business as usual with wayland compositing

this is pretty similar to the method of the reference code in weston,
except that there's no x11 compositor in weston
2015-06-25 20:25:36 -04:00
Mike Blumenkrantz c8bdacc727 fix grabinput to work better with multiple compositor backends
check root window to determine existence of X11 compositor,
use both wayland and non-wayland define codepaths where available
2015-06-25 20:12:03 -04:00
Mike Blumenkrantz 3585643302 reject non-X clients from _e_comp_x_object_add() 2015-06-25 20:12:03 -04:00
Mike Blumenkrantz f832640f18 block xkb activation for non-X11 compositors 2015-06-25 20:11:54 -04:00
Mike Blumenkrantz d7c60da84f correct e_comp->new_client count for overrides in x compositor 2015-06-25 20:05:26 -04:00
Mike Blumenkrantz 2654b7e3e7 move X idle flusher to comp_x 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz fab0b8122f don't call wl comp delete function twice on shutdown 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 5b63ce91dc comment out grabinput focus calls in wayland compositor
these did nothing, remove for now
2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 412595dc60 set client visibility for shell-less wayland clients appropriately during commit 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 179118a70c reject ignored clients from being processed in client idler 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz ca013d9439 reject stacking clients from frame updates in client idler 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 01a4273c38 use ctrl+alt+backspace hotkey in wayland compositor for all non-release builds 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 05a0602f6e unused variable-- 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz d7c58215f4 set wl client surface pointer in surface create method
remnant from when clients were created by the shell
2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 96ad70435c remove unnecessary header includes from e_comp_x.h 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 877597e7a1 don't undef NEED_X in wl compositor headers
no idea why this was here
2015-06-25 20:04:31 -04:00
Mike Blumenkrantz eec5cf6a67 remove E_Comp_Data typedef, use backend-specific typedefs unconditionally
this turned into a bit of a charlie-foxtrot due to constant pointer aliasing
in the wl compositor codebase

no functional changes
2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 9e104dfca1 simplify e build and add X headers for xwayland module 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 56a2dd11c2 add setup for WL_SURFACE_ID X atom 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 113147fa30 use c array size for e atom init 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 2ae8d726f3 HAVE_WAYLAND_CLIENTS || HAVE_WAYLAND_ONLY -> HAVE_WAYLAND
these are semantically identical
2015-06-25 20:04:31 -04:00
Mike Blumenkrantz 972b003163 finish xwayland module implementation
note that this basically does nothing other than start an xserver and connection

bisect harder if looking for bugs
2015-06-25 20:04:31 -04:00
Mike Blumenkrantz bd313e90dd fix xwayland fd dup conditionals 2015-06-25 20:04:31 -04:00
Mike Blumenkrantz dbce320216 load wl_desktop_shell and xwayland after wl comp load 2015-06-25 20:04:30 -04:00
Mike Blumenkrantz ca7087b443 update xwayland for api changes 2015-06-25 20:04:30 -04:00
Mike Blumenkrantz 3e20ea2fbc fix xwayland linkage + makefile formatting 2015-06-25 20:04:30 -04:00
Mike Blumenkrantz 829865b4f4 remove xwayland .desktop and .edj files 2015-06-25 20:04:30 -04:00
Chris Michael 5a7b3c5cf9 xwayland: Add code to cleanup xwayland on shutdown
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael 8f09e55b45 xwayland: Check for sigusr1 in event handler
XWayland servers sends us SIGUSR1 when it has finished initializing,
so we should be checking the signal number when we get the event.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael f49acd38b4 xwayland: Fix build breakage with recent e_comp_wl changes
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael 90f2d06ee0 xwayland: Add some debugging code while trying to work out failures
with this

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael eb4df84aa5 xwayland: Fix launching of XWayland server and pass proper display to
wl_client_create

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael d79c5657f9 Whitelist the new xwayland module
Signed-off-by: Chris Michael <cp.michael@samsung.com>

Conflicts:
	src/bin/e_module.c
2015-06-25 20:04:30 -04:00
Chris Michael 0885237671 xwayland: Create the wl_client which represents the window manager
process.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael c1b2bb0618 xwayland: Create and bind to unix & abstract sockets
NB: XWayland server needs the sockets setup prior to launching it so
we add some code to create & bind the needed sockets before starting
the XWayland binary

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael 3af3abf452 xwayland: Fix makefile to use xwayland binary path
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael 2724f92bc6 Add start of xwayand module code
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael c86c57bee0 add xwayland module edj file for icon
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael 576b11567d add xwayland module desktop file
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael 09852f5d64 Add xwayland Makefile
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael 68dcfac5d3 Add xwayland module to modules Makefile
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 20:04:30 -04:00
Chris Michael a57ce9ca85 wl-desktop-shell: Don't crash when trying to place popup menus in QT apps
This is a partial fix for T2517. It fixes the crash, but does not
address popup menu placement.

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 12:05:05 -04:00
Chris Michael 475a246ea9 wl-desktop-shell: Remove useless return at end of function
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 09:45:28 -04:00
Chris Michael 609fa7100d wl-desktop-shell: Fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-25 09:30:59 -04:00
Tom Hacohen ba82d22692 Logging: Fix broken logging macros.
This is macro 101, you don't EVER put multiple statements in a macro
like that.
See Chris's commits, these broken macros already introduced (subtle)
bugs. Always surround macros in "do {} while()" unless you absolutely
can't (like when you declare a new variable to be used in the scope).

Why is it even there? I think we can safely assume eina log is available
for usage in E...

@fix
2015-06-22 15:39:58 +01:00
Chris Michael b1b407ef22 Fix Coverity CID1298053
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-22 10:20:30 -04:00
Chris Michael 3e23c54b8a Fix Coverity CID1298052
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-22 10:19:13 -04:00
Mike Blumenkrantz 2936a4ccfe handle compositor animation race condition when changing effects
this is more of an academic case than any existing scenario, but
it's possible that an effect may be stopped by something attempting
to trigger another effect during the animation
2015-06-20 12:31:32 -04:00
Mike Blumenkrantz dc444f5489 fix animation refcounting when toggling object visibility very quickly
previously the animating flag would receive an additional increment for
every effect, even if it was currently animating a prior effect, leading
to objects which were never deleted
2015-06-19 16:28:13 -04:00
Mike Blumenkrantz 6d9c2a5371 add comp object bool flag to indicate whether a compositor effect is currently running 2015-06-19 16:27:51 -04:00
Mike Blumenkrantz 8f76e14e66 make e_comp_object_effect_stop() return bool for object validity 2015-06-19 16:27:32 -04:00
Mike Blumenkrantz 2a137d4fbe sanitize bool return of _e_comp_object_animating_end() 2015-06-19 16:25:33 -04:00
Mike Blumenkrantz 0f926d2ae9 only apply deskmirror client visibility logic for non-deleted clients 2015-06-19 14:13:02 -04:00
Mike Blumenkrantz 9c3427a66c return an accurate value for override clients in e_comp_object_util_zone_get() 2015-06-17 15:58:39 -04:00
Mike Blumenkrantz 35d08b996f use current zone for visibility effects on override windows 2015-06-17 15:58:32 -04:00
Chris Michael 571633a32b e-comp-wl: #if 0 out a currently unused function for pre_frame assignment.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-17 11:28:55 -04:00
Mike Blumenkrantz 6797a3c328 remove a stupid elm win hack flagged for deletion
may trigger crashes on non-updated elementary
2015-06-16 17:02:35 -04:00
Yomi 0dc33a5aeb Fix misspellings in E's files.
Summary: Fix misspellings and spaces in E's files.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2676
2015-06-16 16:10:21 -04:00
Mike Blumenkrantz ad7b4ecc43 allow layer-blocked clients in deskmirror to restack 2015-06-16 15:51:30 -04:00
Toan Pham d3a1a72b98 added quick tile to corner feature
Summary: added quick tile to corner feature, Fixes T2408

Reviewers: zmike

Subscribers: abyomi0, cedric

Maniphest Tasks: T2408, T2419

Differential Revision: https://phab.enlightenment.org/D2638
2015-06-16 15:08:21 -04:00
Toan Pham 1469e9b973 Center a dialog window when it is displaying off-screen
Summary: Center a newly created dialog window when it is displaying off-screen.  Fixes T2419

Reviewers: zmike

Subscribers: cedric

Maniphest Tasks: T2419

Differential Revision: https://phab.enlightenment.org/D2646
2015-06-16 14:28:54 -04:00
Mike Blumenkrantz da895a24dd only play visibility effects for allowed clients 2015-06-15 17:02:47 -04:00
Mike Blumenkrantz 73fecddd7e add utility function for determining if a comp object should animate 2015-06-15 17:00:29 -04:00
Mike Blumenkrantz 6ce353fced use new visibility effects by default for menu + combo windows
tooltip effects by default...probably too powerful for average users?
2015-06-15 13:53:34 -04:00
Mike Blumenkrantz 75d0a1a681 send client/screen/pointer geometry to visibility effect edje 2015-06-15 13:47:33 -04:00
Mike Blumenkrantz c914e9bac2 unify comp object visibility effect animation code 2015-06-15 13:47:01 -04:00
Mike Blumenkrantz aea0ffc0ca add flag for detecting whether an effect is currently set on a comp object
also improve refcounting for effect apis and add return values for use in
determining whether an effect was successfully set/started
2015-06-15 13:44:47 -04:00
Mike Blumenkrantz 8ab1d7da3a add flag to E_Comp_Object for detecting show animation state
this allows improvements to the code which provides hide animations,
allowing clients to begin hiding during their show animations instead
of rendering a black rectangle
2015-06-15 13:41:42 -04:00
Mike Blumenkrantz fd4226eb8f use a safe iterator when deleting clients during comp shutdown
it's conceivable that, were there a bug in client refcounting,
this could become an infinite loop and prevent shutdown/restart.
since, at this point, we don't really care about deleting anything,
ensure that the loop will end
2015-06-15 13:35:34 -04:00
Carsten Haitzler 6b64e40122 e - e client, comp win etc. reffing fix ... part 2
this follows 56cabf59c6 then
4e5521b4d8 where i have been trying to
fix a crash with e client and comp win references etc. i have gone
over all referencing with a fine tooth comb and found all the nigglies
i can., no leaks now, no crashes, no valgrind complaints etc. so i
call this fixed now. as best i know this is new in e20, so not a
backport fix
2015-06-15 20:27:25 +09:00
Carsten Haitzler 56cabf59c6 e - bring back fullscreen crash bug while fixing refcount correctness
refs were inconsistent - thus this fixed the fullscreen quit bug by
never freeing a client. this brings the bug back by fixing this client
leak. i'll look again at this later.
2015-06-14 19:16:09 +09:00
Carsten Haitzler f1bd800037 e - fix crash in desktop lookup+fixup where exe_inst is null 2015-06-14 17:50:14 +09:00
Carsten Haitzler 4e5521b4d8 e comp - fix refcounting for e_comp and comp clients
the refcoutning for e_comp and e comp clients seemed to be a bit off -
i read over every ref and unref carefully and fix it. this leads to
the com-_data being null (properly now), so now check for that too.
2015-06-14 16:06:37 +09:00
Carsten Haitzler 0bbb20a3be e - mixer - allow to 150% volume with some "stickynedd" from 100 to 120 2015-06-14 15:01:44 +09:00
Toan Pham fa40a9406b fixed window focus and keyboard input issues
Summary: fixed window focus and keyboard input issues if the to-be-focused window is in an iconized state

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2644
2015-06-11 20:05:09 -04:00
Toan Pham 09d9384f1d Changed search pattern to focus window by name to case-insensitive.
Summary: Sometimes a window has a name that's not like the application name, for example.  chromium-browser application will have a window name: Chromium-browser.  Most users will try to match the window name with "chromium-browser", but it wont work b/c the e's window name match is case sensitive.  Most users, would not know that the window name of chrome is "Chromium-browser", so it is pretty much impossible for them to setup a focus-to-window-name binding properly.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2645
2015-06-11 14:38:10 -04:00
Mike Blumenkrantz ba39887b26 rename visibility effect struct member effect -> visibility_effect
feeble attempt at making future added effects more intelligible
2015-06-11 12:47:04 -04:00
Mike Blumenkrantz ef5bfbad26 add compositor visibility effects and matching configuration
these are specific types of animation for use when toggling window visibility.
they combine with existing compositor window animations to provide nicer integration
for very specific types of windows

see https://www.youtube.com/watch?v=hIVdd0Z2K00 for a demo
2015-06-11 11:35:44 -04:00
Mike Blumenkrantz 7f63c4ec2d allow comp matching for UNKNOWN type windows
sometimes this is a valid type and we want to match it
2015-06-11 11:33:45 -04:00
Carsten Haitzler 6289eba6a4 e menu - an extra object ref causes menus to never be freed
this has been in e for ages - someone not noticed, but this fixes
visual artifacts of left over menus on the top-left. this extra ref
really makes no sense. it's not like this ref is then accomoanied by a
matching unref somewhere else (after much debugging).

@fix
2015-06-10 21:32:01 +09:00
Chris Michael d73b3d1e70 wl-desktop-shell: Fix popup menu placement for xdg surfaces
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-09 09:43:34 -04:00
Carsten Haitzler 921d4dee2b e - mixer - clean up popup a bit with mute next to slider etc. 2015-06-09 17:22:40 +09:00
Carsten Haitzler dd6e4f33f8 e mixer - fix segv on desklock if default sink not set yet 2015-06-09 16:18:24 +09:00
Carsten Haitzler 5d7fa51309 mixer - dont make list scrollable horizontally for nicer look 2015-06-09 16:17:07 +09:00
Carsten Haitzler e63f358933 Revert "Revert "fix mixer gcc class name""
This reverts commit 6bacf20705.

oops - i was wrong. totally misread that patch i thinkg it changed
mixer -> emix
2015-06-09 14:39:15 +09:00
Carsten Haitzler 774e8297d2 e - shelf menu - handle deletion properly if cb is not for shelf menu
it seems that some changes now make the shel menu post callback be
called for older menus not part of the shelf and thus shelf menu
stored != menu the cb is for - thus resulting in deletion of the wrong
menu
2015-06-09 14:29:25 +09:00
Carsten Haitzler 918f4bffcc e - mixer - don't do anything on desklock if no mixer context exists 2015-06-09 11:10:35 +09:00
Carsten Haitzler 6bacf20705 Revert "fix mixer gcc class name"
This reverts commit 718b3206cb.

no - this REPLACEs the mixer module. the same old mixer gadget that
was originally in e now will be replaced by this new epulse/emixer
gadget. thus the "mixer" gadcon name.
2015-06-09 11:09:12 +09:00
Mike Blumenkrantz 718b3206cb fix mixer gcc class name 2015-06-08 15:02:24 -04:00
Mike Blumenkrantz 8f2d8748e1 add gadcon visibility handling, send hide signal to pager desks on hide
this (in combination with elm changes) should greatly reduce cpu usage
2015-06-08 14:53:31 -04:00
Mike Blumenkrantz 829b401494 fix shelf visibility state signals
previous behavior resulted in hide being sent when animations began
instead of at end
2015-06-08 14:52:40 -04:00
Mike Blumenkrantz b277a5630f completely freeze all deskmirror object events/animations during hide 2015-06-08 14:51:58 -04:00
Mike Blumenkrantz 38670e0553 disable animations on clients during hide 2015-06-08 14:47:42 -04:00
Mike Blumenkrantz 424bdf93be only freeze/thaw edje objects on non-input clients 2015-06-08 14:46:33 -04:00
Mike Blumenkrantz 81e29519c9 fix eo errors for ilist icon select state 2015-06-08 12:35:39 -04:00
Chris Michael db66433374 wl-desktop-shell: Fix T2357: Update xdg_shell for version 5
Summary: This fixes the Enlightenment wayland desktop shell by
updating it to support xdg_shell version 5. Fixes T2357 where gtk apps
would not work. Confirmed working now.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-06-08 12:23:40 -04:00
Carsten Haitzler 4f6df6b7ca e mixer - replace with epulse/emixer
this is emixer (epulse) from

http://git.enlightenment.org/devs/ceolin/epulse.git

the emixer binar is rewritten though and the emix lib is compiled-in
into the module and into the binary as oppopsed to a shared lib with
loadable modules. this supports alsa and pulse. a much more solid mixer.
2015-06-08 21:15:09 +09:00
Carsten Haitzler d17851f714 fix leak in randr2 when matching clone modes 2015-06-08 20:53:13 +09:00
Carsten Haitzler bc595f3d74 e desklock - listen to randr screen changes and re-do locks
fix due to new randr2 stuff
2015-06-06 19:23:19 +09:00
Mike Blumenkrantz 4703f8e0e6 lower minimum backlight clamp to 5%
sometimes 10% is still way too bright
2015-06-05 09:13:23 -04:00
Carsten Haitzler 1734fcaac2 enlightenment deskenv support - fix dialog labelling and desktop name
1. Enlightenment, not X-Enlihgtenment for the desktop. we're a proper DE name
2. Have a fixed desktop env list and efreet gives very... odd results
(eg X-Geequie because some rogue desktop file decides it's good to
have this in it :)).
2015-05-28 11:41:28 +09:00
Carsten Haitzler b3cc1dc364 e start - path manipulation - don't add a : if there already is one
avoids adding more : chars to make a broken path even worse
2015-05-27 08:43:13 +09:00
Derek Foreman 6ba90335e2 Resize the canvas at the end of canvas init
Summary:
wl_drm sets up a resize callback, so if the resize occurs before zone setup
wl_drm's call to e_comp_canvas_update will setup extra zones (breaking the
wizard).

Reviewers: zmike, devilhorns

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2567

 #butts
2015-05-22 12:25:25 -04:00
Mike Blumenkrantz e70fcc565d fix focusing client on mouse events which trigger actions (with exceptions)
block focus events only if focus has changed to another client or the current
client's layer-actual has been lowered

regression from 719b2baeba
2015-05-21 12:32:26 -04:00
Carsten Haitzler 591a3752e6 e randr2 - add some logic for knowing when to ask to configure a screen
start of a "what do you want to do with this screen (clone, extend etc.)"
feature
2015-05-21 13:03:05 +09:00
Carsten Haitzler 1a19a72a61 e - randr2 - filter to the "best" common mode match on clone config
this should fix T2100
2015-05-21 13:03:04 +09:00
Mike Blumenkrantz fb32300ea7 use layout for theme import dialog
fixes min sizing
2015-05-20 08:19:18 -04:00
Mike Blumenkrantz fc1a94216b remove legacy entry widget pointer setting code
fix T2424
2015-05-20 08:19:18 -04:00
Chris Michael 27a11e0c46 Properly fix T2182 (add a --version option to enlightenment)
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-18 14:41:45 -04:00
Chris Michael e5b654cf9e allow starting enlightenment with the valgrind option again
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-18 14:22:26 -04:00
Mike Blumenkrantz 83eebacb5d allow new fullscreening clients to replace current nocomp where applicable 2015-05-18 13:20:35 -04:00
Mike Blumenkrantz 9b420c8d69 force xwindow stacking to obey nocomp policy and stack below current nocomp
fix T2277
2015-05-18 13:20:35 -04:00
Mike Blumenkrantz 205d8b0b74 reject client fullscreening based on config and desk visibility 2015-05-18 13:20:35 -04:00