Commit Graph

20829 Commits

Author SHA1 Message Date
Mike Blumenkrantz e931e86161 update csd using deltas of previous values
when applying new csd to a window which already has csd, the previous
csd must be removed in order to apply any new csd offsets in order to
avoid unwanted moving/resizing
2015-10-20 12:20:24 -04:00
Seunghun Lee b44d4ad339 e-comp-wl-input: don't leak the initial keymap.
Summary: remove xkb_map_ref() for keymap in _e_comp_wl_input_keymap_update().

Test Plan: N/A

Reviewers: devilhorns, zmike

Subscribers: ManMower, cedric

Differential Revision: https://phab.enlightenment.org/D3173
2015-10-19 11:43:07 -04:00
Thierry b9e793053d mouse_config: fix accel threshold and numerator limits.
man xset =>  If the `threshold' parameter is provided and 0, the
`acceleration' parameter will be used in the exponent of a more
natural and continuous formula, giving precise control for slow motion
but big reach for fast motion, and a progressive transition for motions
in between.  Recommended `acceleration' value in this case is 3/2 to 3,
but not limited to that range.
2015-10-16 13:29:19 -07:00
Mike Blumenkrantz 1ee825d29c queue pending buffers for wayland shm clients
due to how deferred rendering works, it's possible for a client to
send a second buffer before enlightenment has rendered the first one.
in this situation, it seems that the best solution is to queue successive
buffers (frames) and pop the queue after each render

ref T2784
2015-10-16 15:48:46 -04:00
Mike Blumenkrantz 1a87463083 force a software render in all cases when finalizing x11 client iconify
since ICCCM requires that clients be unmapped while iconified, it's necessary
for the compositor to perform one last render prior to the unmap in order to
ensure that mirror objects will still appear as expected. this render must use
the pixmap buffer data in order to avoid timing issues due to async/deferred
rendering, and it is only necessary for the case of clients rendering with a
native surface

fix T2788
2015-10-15 15:39:07 -04:00
Mike Blumenkrantz 06f794bfe6 clear x11 client pixmap when returning from iconic
ensure pixmap remains usable during the entire hide process
2015-10-15 15:32:38 -04:00
Mike Blumenkrantz dc872be2df check systray dbus name existence before attempting to recover session
in the case that a system error occurs the dbus method for returning the
session name can fail, leading to a null return

CID 1327399
2015-10-15 13:13:22 -04:00
Mike Blumenkrantz 56ff9ead03 use dbus unique name for tracking systray sessions
the env var DBUS_SESSION_BUS_ADDRESS may not be set for all platforms
where enlightenment+dbus are usable, so it's necessary to get the dbus
id to ensure that this value exists and is properly tracked
2015-10-15 13:13:22 -04:00
Mike Blumenkrantz f6245e5535 reject deleted clients from x11 sync alarm event callback
E_Client->comp_data is null after a client has been deleted, so
attempting to handle events which require the dereferencing of this
pointer after a client has been deleted will result in a crash

these events should be rejected after delete regardless, since at this
time the compositor has stopped handling events for the client

ref f42c6aa187
2015-10-15 13:13:18 -04:00
Carsten Haitzler f42c6aa187 e - comps sync - ec client was null - i think, so protect against crash
i got a crash here and the bt was broken and i couldnt check if
_e_comp_x_client_data_get() returned null, but it's the only thing
that would make sense, so protect against this to avoid a crash. as
this was a one-off, i can't find out more,

@fix
2015-10-15 19:29:14 +09:00
Marcel Hollerbach adbb5719f0 systray: search for the best available resolution of a icon
For example in telegram the first icon which was transmitted was in a
pretty bad resolution, the new code searches the best res.
2015-10-14 22:40:47 +02:00
Mike Blumenkrantz 432d1e3776 cache systray items for each dbus session
the current spec does not directly require any behavior from clients
when a systray host, leading to an issue where clients do not re-register
their items when a new host appears

when using an in-process systray watcher, as the current implementation does,
the best choice for maintaining consistency for systray items across restarts
is to cache them according to the current dbus session. the process of setting
up the item will validate it on subsequent restarts, and changes to the session
will clear the cache

fix T2786
2015-10-14 16:30:41 -04:00
Amitesh Singh 71f7720669 e_flowlayout: typecast return value to int
Summary:
return value is small enough, so there is no risk in casting from unsigned int to signed int.

CID: 1267211

Reviewers: devilhorns, raster, cedric, zmike

Subscribers: seoz, sachin.dev

Differential Revision: https://phab.enlightenment.org/D3179
2015-10-14 14:02:07 -04:00
Mike Blumenkrantz 984d664eef trap shaped x11 clients and prevent compositor blocking with high rect count
in the case where a shaped window with many rects exists, there is a high
probability of the damage rect count being huge, leading to massive blocking for
each frame as the compositor attempts to fetch all of these rects from the xserver.

instead, the compositor can shortcut this by forcing a full-window damage any time
the rect count is sufficiently high, trading a blocking socket operation for some
amount of (potential) overdraw.

testing in affected scenarios has shown huge improvements: where previously the entire
compositor would lock up, things work as expected now

see https://bugzilla.mozilla.org/show_bug.cgi?id=1214746 for a sample case
2015-10-14 12:59:14 -04:00
Mike Blumenkrantz 00895ca014 do not return when x11 damage event returns no rects
ensure first_damage flag is set in all cases
2015-10-14 12:59:14 -04:00
Amitesh Singh de740b2520 pulseaudio: pass big data as pass by reference
CID: 1308394
2015-10-14 21:51:00 +05:30
Chris Michael d74273f732 enlightenment: Make sure we have a zone before calling
_bgpreview_viewport_update

@fix CID1324753

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:59:31 -04:00
Chris Michael 2cd6fcc3a9 enlightenment: Use 'fabs' to compute absolute value of floating point
types

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:38:14 -04:00
Chris Michael e856f7acbb enlightenment: #if 0 out an unused variable
NB: The function which actually uses this variable is also #if 0'd out

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:30:33 -04:00
Chris Michael d72af795ad enlightenment: Use 'fabs' to get absolute value of floating point types
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:28:38 -04:00
Chris Michael 2814066c39 enlightenment: Fix E_CONFIG_LIMIT to use the proper min & max values
e_config->backlight.idle_dim is actually an unsigned char in the
structure, so use a 0 & 1 for min & max

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:22:19 -04:00
Chris Michael 59ffe3bed2 enlightenment: Add missing field initializers for Eina_Rectangle
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:19:43 -04:00
Chris Michael a6661a2066 enlightenment: Add missing field initializers for Evas_Point
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:18:04 -04:00
Chris Michael 4acd72c64a enlightenment: Add missing EINA_UNUSED for unused function paramaters
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:17:22 -04:00
Chris Michael fbc9b89d59 enlightenment: Add missing EINA_UNUSED for unused function parameters
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:16:25 -04:00
Chris Michael dc4eb9ca0d enlightenment: Add missing EINA_UNUSED for unused function paramaters
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:14:16 -04:00
Mike Blumenkrantz 98c44950b1 subtract x11 client damage region even when forcing full override damage
fix T2785
2015-10-13 22:38:50 -04:00
Mike Blumenkrantz f6be761226 force full damage for first frame of x11 override clients
it seems that damages for popup windows in some applications,
namely blink-based browsers, are reported incorrectly, resulting
in sometimes having a blank window
2015-10-13 17:09:00 -04:00
Marcel Hollerbach 8c77c613a1 Fix make distcheck 2015-10-13 22:06:00 +02:00
Marcel Hollerbach 2fd6f95a9b mixer: start app from bin directory
before the app was installed into the modules directory, now its
installed to the bin directory
2015-10-13 22:06:00 +02:00
Marcel Hollerbach 03888cf941 mixer: install icon and .desktop file 2015-10-13 22:06:00 +02:00
Marcel Hollerbach 57ec517904 mixer: install app to bin directory 2015-10-13 22:06:00 +02:00
Mike Blumenkrantz e8bcf1016f use correct param ordering for setting wayland client frame geometry
function uses l,r,t,b and not x,y,xx,yy

fix T2624
2015-10-13 13:31:47 -04:00
Mike Blumenkrantz 60a1dfaf4f remove duplicate surface size update for wayland clients during commit
this has already happened in e_comp_wl_surface_attach()
2015-10-13 13:25:15 -04:00
Tomáš Čech 10053f5d64 don't forget wl_desktop_shell's header in tarball
Summary: Merge branch 'master' of git://git.enlightenment.org/core/enlightenment

Reviewers: zmike

Subscribers: cedric

Maniphest Tasks: T2776

Differential Revision: https://phab.enlightenment.org/D3170
2015-10-12 11:56:45 -04:00
Carsten Haitzler 9c5b6acb05 e mixer - be more robust if pulse exits/crashes and def sink is null
ensure there are protections everywhere for when default sink is null
- mixer did crash when pulse crashed and a popup was to be shown...
2015-10-10 11:07:24 +09:00
Mike Blumenkrantz 45b7224b42 explicitly disable screensaver for wayland urgency wakeups 2015-10-09 15:23:15 -04:00
Mike Blumenkrantz 277eb14ace make wake-on-urgent apply for all cases of window urgency
in the case that an urgent window is set as urgent again, wakeup should
still occur
2015-10-09 15:21:41 -04:00
Mike Blumenkrantz ddc06559c7 apply _GTK_FRAME_EXTENTS for xwayland clients
not entirely sure this is worthwhile but may as well
2015-10-09 15:03:38 -04:00
Tom Hacohen 252198488c Intl: fix potential stack buffer overflow.
CID 1298051

@fix
2015-10-09 09:26:45 +01:00
Tom Hacohen 981e3f8f31 Client: fix potential out of bounds read.
This is an unsigned int underflow that could lead to an out
of bounds read.

CID 1291837

@fix
2015-10-09 09:19:53 +01:00
Chris Michael fe1eabe4ad enlightenment: Update wayland readme
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-08 15:28:55 -04:00
Mike Blumenkrantz 2ab7fed323 don't crash desktop gadget systrays when adjusting image sizing
desktop gadgets (gadman) do not have a shelf, so derefing that pointer
without checking will guarantee a crash
2015-10-08 12:23:07 -04:00
Carsten Haitzler acbf4a79b4 e comp data - actually ... NO visibility effect by default is right
so a bit of a config wipe had my comp config reset (some dev
shenanigans) and i got to see what current e "out of box" config is -
and it was horrid for menus. visibilitiy effect was broken. vertial.
default was none - always. forever. like empty. so go back to that. in
fact why do this visibility effect? that was the point of having a
different shadow in the theme - each has its own look + effect. this
makes things far more complex...
2015-10-08 08:27:38 +09:00
Mike Blumenkrantz 95b9770f08 when removing VERTICAL maximize state, also remove LEFT and RIGHT states
LEFT and RIGHT are supersets of VERTICAL which serve no purpose on their own,
so remove them when removing VERTICAL

fix T2770
2015-10-07 15:47:21 -04:00
Carsten Haitzler d99869fed2 e comp - default config was rather broken - fix
default config didnt select menu style shadow - was selecting
vertical/still which meant animation was rather horrible. fix.
2015-10-07 19:54:21 +09:00
Mike Blumenkrantz a68e375479 only use fast-path pixmap size updating after a resize for x11 clients
updating these values after other operations will result in the pixmap size
being set inaccurately, leading to rendering inconsistencies
2015-10-05 17:28:26 -04:00
Mike Blumenkrantz d9ce22484b update wayland readme 2015-10-05 16:36:39 -04:00
Mike Blumenkrantz 8e5f0a0bb6 repopulate app list dialogs when efreet deskop cache updates
should improve usage when installing/uninstalling apps
2015-10-05 16:01:10 -04:00
Mike Blumenkrantz a6408d95a6 attempt to load default e_bindings if initial load fails 2015-10-05 15:56:28 -04:00