Commit Graph

22043 Commits

Author SHA1 Message Date
Simon Lees ae87b44cf0
21.9 Release 2017-08-04 16:49:35 +09:30
Mike Blumenkrantz 4ae1b5b1fc Revert "reset comp object update regions when a render occurs"
This reverts commit e6ab84ffd5.

fix T5817
2017-08-03 10:21:39 -04:00
Mike Blumenkrantz 30e160a083 remove left/right maximize before removing vertical maximize
ensure maximize states are removed accurately and in the right order

ref b48419c577
2017-07-28 16:21:32 -04:00
Mike Blumenkrantz 7b8757997b set client opacity any time netwm hint has changed in fetch
fix T5370
2017-07-28 16:21:32 -04:00
Mike Blumenkrantz 893b7af664 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 16:21:32 -04:00
Mike Blumenkrantz e6ab84ffd5 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 16:21:32 -04:00
Mike Blumenkrantz 92671f2624 handle updates_full when adding comp object update regions
this flag means that the entire surface should be redrawn

ref T5370
2017-07-28 16:21:32 -04:00
Mike Blumenkrantz 7375a4beef 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 16:21:32 -04:00
Mike Blumenkrantz efcb9a308d return updates_full state from e_comp_object_damage_exists() 2017-07-28 16:21:32 -04:00
Mike Blumenkrantz 39963066ae show clients immediately after pixmap refresh if visibility is pending 2017-07-28 16:21:32 -04:00
Mike Blumenkrantz 689a78533c return immediately when setting a null gadget style if current style is null 2017-07-28 16:21:32 -04:00
Mike Blumenkrantz a35844724e 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 16:21:32 -04:00
Mike Blumenkrantz 30be540c8a apply gadget aspects with greater precision
aspect ratio is not an integer, rounding it prematurely loses precision
2017-07-28 16:21:32 -04:00
Mike Blumenkrantz 8ff0925613 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 16:21:32 -04:00
Mike Blumenkrantz e79d5e3a1d don't create xwl receive pipe for SelectionRequest when getting the selection
this seems to sneak in sometimes even though it's totally wrong?
2017-07-28 16:21:32 -04:00
Mike Blumenkrantz 5896caa394 add text/plain;charset=utf-8 to xwl-created wl clipboard data source
UTF8_STRING is not an accepted mime type, use wl equivalent
2017-07-28 16:21:32 -04:00
Mike Blumenkrantz d953ba43ff set xwl-originating data source dnd actions during source creation 2017-07-28 16:21:32 -04:00
Mike Blumenkrantz bef1a5f428 free xwl selection atom names after creating selection source 2017-07-28 16:21:32 -04:00
Mike Blumenkrantz 19c5da9e5c handle xwl data source cleanup more effectively
ensure source is freed and references to it are unset when changing selection
2017-07-28 16:21:32 -04:00
Mike Blumenkrantz bd53c0d8f5 focus x11 root window on init when starting with xwayland
comp canvas does not have a valid xwindow and is unfocusable
2017-07-28 16:21:31 -04:00
Mike Blumenkrantz af82318bd7 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 16:21:31 -04:00
Mike Blumenkrantz 499cd346a8 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 16:21:31 -04:00
Derek Foreman ff915f92f2 Fix geometry for drm outputs
It appears that config.geom.x and config.geom.y specify the corner of
an output in global space, but ecore_drm2_output_mode_set's x and y
are offsets into the framebuffer for the corner of the display.

Just pass 0, 0 and everything will be ok.
2017-07-28 16:21:31 -04:00
Carsten Haitzler 23eb5fb3ba randr - discovered new output names that are display panels in laptops
add to the list like lvds, edp etc. ... adding DSI/dsi
2017-07-28 16:21:31 -04:00
Mike Blumenkrantz 4029124cf5 resize comp bg_blank_object on zone update
various things hook this to check when the compositor is resized
2017-07-28 16:21:31 -04:00
Mike Blumenkrantz b57cfe8476 rework internal win centering
call resize before attempting to center to ensure accurate positioning
2017-07-28 16:21:31 -04:00
Mike Blumenkrantz d28ff92e6b 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-28 16:21:31 -04:00
Mike Blumenkrantz d9d1130bc0 perform immediate move on bryce during autosize
ensure that positioning doesn't animate across zones and break config

fix T5666
2017-07-28 16:21:31 -04:00
Mike Blumenkrantz ebb5f6061a use e_util env functions in time module
ref T4648
2017-07-28 16:21:31 -04:00
Mike Blumenkrantz c19d2495c4 do not set e_comp log level 2017-07-28 16:21:31 -04:00
Mike Blumenkrantz 3fed3162b5 use real sizing for screen config mode list, not 1xheight 2017-07-28 16:21:31 -04:00
Mike Blumenkrantz 1169c7f5cc use more descriptive label than '???' for unconfigured outputs in scren config 2017-07-28 16:21:31 -04:00
Mike Blumenkrantz ce4e7ed5a7 hide pointer cursor clients when unsetting them
ensure the pointer remains hidden even if the client does not unmap its surface

 #TheDisappointer
2017-07-28 16:21:31 -04:00
Mike Blumenkrantz b59cbfc494 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-28 16:08:50 -04:00
Derek Foreman 34b3b41ebd 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-28 16:08:31 -04:00
Mike Blumenkrantz 78e6ecd95e don't free x11 clipboard source immediately
ref T5738
2017-07-28 16:08:01 -04:00
Mike Blumenkrantz 11dfe64736 only store the compositor's own data manager resource to e_comp_wl->mgr.resource 2017-07-28 16:07:06 -04:00
Mike Blumenkrantz 3f915ae6a8 prune unconfigured gadgets from comp object sites upon site del
automatically created sites shouldn't trigger wizards upon show
2017-07-28 16:06:03 -04:00
Mike Blumenkrantz cb3284cfe5 freeze pointer animations while screensaver is active 2017-07-28 16:05:54 -04:00
Mike Blumenkrantz 7cba1a3bf4 disable clock+time gadget updating during dpms 2017-07-28 16:05:48 -04:00
Mike Blumenkrantz c45b2165f6 rename clock+time module event handler lists
this is no longer what it used to be...
2017-07-28 16:05:35 -04:00
Mike Blumenkrantz badd1b0293 only set qt theme override env vars if option to do theme matching is enabled 2017-07-28 16:05:27 -04:00
Mike Blumenkrantz 44b619036f update time gadget date string during clock timer
fix T5700
2017-07-28 16:05:15 -04:00
Mike Blumenkrantz 7e46b933ea move gadget del callbacks to AFTER priority
ensure gadget internals have longer lifetime than external callbacks on
gadget objects

ref 27091c510c

fix T5601, T5693
2017-07-28 16:05:07 -04:00
Mike Blumenkrantz 0281f617ff unset gadget site's layout pointer after destroying gadgets
ensure this persists through gadget del callbacks

ref T5693
2017-07-28 15:58:32 -04:00
Derek Foreman 7ce0a22729 Fix xwayland selection crash
When creating the data manager source, passing an id of 1 overwrites
the wl_display's id in the map, causing crashes the next time the
client tries to interact with that object.  The client in this case
is Xwayland.  Bad things happen.

Instead pass 0 which just chooses an available map slot.

Fix T5738
2017-07-28 15:58:28 -04:00
Jean-Philippe Andre 457843b005 pulse: do not leak strbuf
See also ac92ff5256.
- eina_strbuf_string_get() returns the internally stored string as
  a const char *, and does not free the strbuf itself
- eina_strbuf_string_steal() returns the internal string as a
  char *, giving ownership to the caller, and frees the strbuf
  itself
- eina_stringshare_add() takes a const char * as input and makes a
  copy of the string

As a consequence, ss_add(sb_string_steal()) leaks the internal
string from the strbuf, while ss_add(sb_string_get()) leaks the
strbuf structure.

A one liner here would require either an eina_slstr based API or
an API in stringshare to take ownership of a given string. Both
would be useful APIs :)
2017-07-28 15:57:57 -04:00
Marcel Hollerbach 1b49006b52 mixer: do not leak a allocated string
this fixes a leak, thank you jp!

@fix
2017-07-28 15:57:48 -04:00
Amitesh Singh 3bec9c1343 e widget entry: fix the compilation warning
src/bin/e_widget_entry.c:269:16: warning:
unused variable ‘text’ [-Wunused-variable]
2017-07-28 15:57:25 -04:00
Mike Blumenkrantz 52e59069df use kbd focus resource's client instead of "focused" client in data device 2017-07-28 15:57:11 -04:00