Mike Blumenkrantz
ec1cd25cfe
rename E19* defines/texts to just E so they don't need to keep being updated
2014-09-09 12:30:50 -04:00
Mike Blumenkrantz
93e0dd20c0
add docs for all the comp_object data keys
2014-09-07 12:49:19 -04:00
Mike Blumenkrantz
5733e7b3f7
non-client comp object creation checks "noshadow" edje flag on passed objects
...
returns theme functionality from e17
2014-09-03 09:46:27 -04:00
Mike Blumenkrantz
8a10f288ad
use a non-conflicting data item for comp mirror creation
2014-09-01 14:22:44 -04:00
Mike Blumenkrantz
74c3e0a979
shorten rendering path when creating comp mirrors from comp mirrors
2014-09-01 13:55:02 -04:00
Mike Blumenkrantz
77c63e0387
redo comp object util refs to be more consistent and not break evas
2014-09-01 10:30:53 -04:00
Mike Blumenkrantz
cef6ebd2db
fix post-effect stacking BITCH and post-effect transient stacking
2014-08-26 09:45:04 -04:00
Mike Blumenkrantz
d654f880a1
fix e_comp_object_client_get() when used with signal callback
2014-06-16 13:35:57 -04:00
Mike Blumenkrantz
04a8f58ff9
remove useless null checks
...
CIDs 1155278, 1155289
2014-06-10 20:40:47 -04:00
Mike Blumenkrantz
5ad876ccad
block mouse actions on frame for iconic clients
...
fix T1069
2014-06-08 12:13:02 -04:00
Cedric BAIL
3f9af38da2
edje: remove use of deprecated functions.
2014-06-07 21:10:55 +02:00
Mike Blumenkrantz
dbce413b42
fix shape cutting for frames which are larger than their object size implies
...
requires border themes to have data.item "frame_extends" set
2014-06-04 08:55:06 -04:00
Mike Blumenkrantz
d8aa488096
completely revert all eo/eolian usage
...
this was a neat experiment, but apparently it's not going to be usable for a long time in anything outside efl/elm
This reverts commits f87b9900fa
, a49cede790
, 81038f8d02
, 47cfb31752
.
2014-06-04 07:27:50 -04:00
Tom Hacohen
f87b9900fa
Update code to use the new class names generated by eolian.
2014-06-03 11:55:02 +01:00
Mike Blumenkrantz
1a492e3786
ignore fake client resizes during shade
...
fix T1314
2014-06-02 16:25:47 -04:00
Mike Blumenkrantz
73f35d8444
check current client size before rejecting resize
...
moderately certain this will fix T993 and also probably fix T1053
2014-06-02 08:42:32 -04:00
Mike Blumenkrantz
c55e16dcb4
fix wl crash with layer_block
...
D920
2014-06-02 07:20:50 -04:00
Gwanglim Lee
a49cede790
add class type check where client layer marker is taken
...
Summary:
it fixes crash when running wl client apps on e wayland server.
invalid comp object pointer value is returned by using eo_data_scope_get.
thus eo_isa should be added before eo_data_scope_get.
Test Plan:
1. run e wl server
2. run wl client terminlogy
3. run second wl client elementary_test
Reviewers: raster, devilhorns, zmike, stefan_schmidt
CC: cedric
Differential Revision: https://phab.enlightenment.org/D919
2014-06-02 07:16:42 -04:00
Mike Blumenkrantz
1a4b0bf29c
Revert "fix relative stack object check"
...
This reverts commit b3efbfb91d
.
bad past-self! past-past-self was much smarter than you!
2014-05-29 12:20:38 -04:00
Mike Blumenkrantz
b4e4214e5c
ensure client is actually stacked below the above-client when raising
2014-05-29 12:19:43 -04:00
Seunghun Lee
e84eb965f4
remove unused variable use and function call
...
Reviewers: raster, zmike
CC: cedric
Differential Revision: https://phab.enlightenment.org/D867
2014-05-19 15:56:01 +09:00
Seunghun Lee
3c416438b0
fix enlightenment crash by accessing null pointer.
...
Summary: e_client_below_get can return null, so added null check code.
Reviewers: raster, zmike
CC: cedric
Differential Revision: https://phab.enlightenment.org/D857
2014-05-14 09:09:30 -04:00
Mike Blumenkrantz
b3efbfb91d
fix relative stack object check
2014-05-10 17:18:08 -04:00
Mike Blumenkrantz
5434656751
add check for stacking errors in non-release builds
2014-05-10 17:18:08 -04:00
Mike Blumenkrantz
81038f8d02
fix some smart_data_get stragglers in comp object
2014-05-10 17:18:08 -04:00
Mike Blumenkrantz
fdeb104733
comp can only set native surface with gl, so only try setting based on gl
2014-05-10 17:18:08 -04:00
Seunghun Lee
1d9a94c7e9
remove duplicated code
...
Summary:
this patch removes duplicated code.
the event handler of "focus in/out" already added above it.
Reviewers: raster, zmike
CC: cedric
Differential Revision: https://phab.enlightenment.org/D816
2014-05-02 06:48:28 -04:00
Gwanglim Lee
69e39063dd
e_comp_object: update xy position of client in intercept_move to avoid unwanted first damage if given client is not a new_client
...
Summary:
xterm and pcmanfm windows shows black area if e is running with sw engine mode. (T1180)
In this case, there are two problems:
1. Unwanted geometry info of first damage by wrong window move in intercept_move.
(a) Handle x map request
(b) Initialize client_inset value of comp object according to geometry value of "e.swallow.client" part
(c) Set client_inset value to cw->client.x and y in intercept_move
(d) Call ecore_x_window_move_resize with wrong x and y at idler
(e) Create x damage
(f) Handle unwanted damage notify event which has position values same as client_inset.
(g) Copy image contents from pixmap according to wrong area info of damage notify and render it on screen.
2. Problem of override redirect window
Black area of pcmanfm's menu is related to override redirect window.
This patch only covers 1st problem not 2nd problem.
The override redirect window should be fixed by another way.
Test Plan:
1. Run e with sw engine mode or run x-ui.sh in e git simply
2. Run xterm which is using classic x drawing api
3. Check client window area of xterm
Reviewers: raster, zmike, devilhorns
CC: cedric
Differential Revision: https://phab.enlightenment.org/D795
2014-04-25 12:50:47 -04:00
Gwanglim Lee
ffcc5e72d9
null check ecstack
...
Summary: fix segmentation fault error
Test Plan:
run enlightenment (wl only server) -> run elementary_test -> run terminlogy
-> move cursor to elementary_test -> click on elementary_test
Reviewers: raster, devilhorns, zmike
CC: cedric
Differential Revision: https://phab.enlightenment.org/D770
2014-04-18 12:51:36 -04:00
Mike Blumenkrantz
b49957bf9b
preserve client stacking after compositor effects
...
fix T1065
2014-04-10 19:01:50 -04:00
Mike Blumenkrantz
47cfb31752
comp_object now uses eo, e_comp_object_signal* -> edje_object_signal*
...
also cw->clip is gone
2014-04-10 19:01:47 -04:00
Mike Blumenkrantz
95a8fed0bf
unify comp object stacking
...
these were nearly identical, and sooner or later there was going to be an unfortunate c/p error
2014-04-02 14:16:34 -04:00
Mike Blumenkrantz
cfe26ff838
comp docs part 1: comp objects
2014-04-02 13:06:28 -04:00
Mike Blumenkrantz
b9e6a624ef
fix frame size calc check to account for themes with 0 height
2014-04-02 12:31:33 -04:00
Mike Blumenkrantz
3f2efbc548
fix client layer marker detection/usage in wayland
...
this is the correct fix for D687
2014-04-02 11:07:22 -04:00
Seunghun Lee
597aec1710
remove unused comp object variable use and function call in show helper
...
Reviewers: zmike
Differential Revision: https://phab.enlightenment.org/D686
2014-04-02 09:27:20 -04:00
Mike Blumenkrantz
ea3439b664
Revert "move comp object tiler creation to helper function to catch retries"
...
This reverts commit f4e4b2fc4f
.
testing commit that wasn't supposed to go upstream
2014-03-27 17:01:22 -04:00
Mike Blumenkrantz
f4e4b2fc4f
move comp object tiler creation to helper function to catch retries
2014-03-27 16:47:19 -04:00
Mike Blumenkrantz
53824eb309
redo input rects after comp effect layer changes
...
fix T1070
2014-03-27 16:47:18 -04:00
Mike Blumenkrantz
42f43c9311
disable comp object animation hooks if animations are disabled
2014-03-27 16:47:18 -04:00
Mike Blumenkrantz
daa98e867d
fix lots of edje emits on non-edje objects
2014-03-27 16:47:18 -04:00
Mike Blumenkrantz
c47bf94cdf
hook sticky smart callbacks properly inside comp object
2014-03-20 11:38:58 -04:00
Chris Michael
915f8f0613
@bugfix: Fix building for WAYLAND_ONLY by using the proper define
...
sed -i 's/WAYLAND_ONLY/HAVE_WAYLAND_ONLY/g'
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-03-18 07:43:04 +00:00
Carsten Haitzler
ad6aa3db71
part of previous commit - also set delete_requested to 0
2014-03-15 00:00:27 +09:00
Carsten Haitzler
b1373fe63f
fix hiding of windows when delete is requested
...
this is applicable to e19 only (you can't backport this patch as-is -
e19 is too different). this fixes T1063.
2014-03-14 16:25:14 +09:00
Mike Blumenkrantz
63b01101ee
fix comp util object initial visibility
2014-03-05 10:53:05 -05:00
Mike Blumenkrantz
851ef43c41
force comp render on dirty for hidden objects with visible mirrors
2014-03-05 10:08:09 -05:00
Mike Blumenkrantz
9ad04eb877
redo client urgency again with separate flag for actual urgent state
...
preserve icccm flag for accurate detection
2014-03-05 10:08:09 -05:00
Mike Blumenkrantz
8568a76313
always set iconic client comp state as visible
...
pass: init_states
2014-03-04 15:20:24 -05:00
Mike Blumenkrantz
41c4cded01
send unmaximize signal when unfullscreening
...
fix T1044
2014-02-28 14:55:27 -05:00
Mike Blumenkrantz
78403e2f54
don't reshadow on client redirect
...
fix T1019
2014-02-27 20:31:18 -05:00
Mike Blumenkrantz
c01a1fcc6c
manage comp overrides for comp objects
...
fix T1019
2014-02-26 11:46:32 -05:00
Mike Blumenkrantz
f75a923ab0
break out client focus reset into separate function
2014-02-21 16:44:12 -05:00
Mike Blumenkrantz
63d6153d86
reject comp autoclose refocus during comp input grabs
2014-02-21 16:44:12 -05:00
Mike Blumenkrantz
71bfe06bb3
fix debug format string
2014-02-21 16:44:11 -05:00
Mike Blumenkrantz
1a3e86c3c9
fix race condition when repeatedly resizing clients too fast
...
T993
2014-02-21 16:44:11 -05:00
Mike Blumenkrantz
ef360e1684
resize damage tiler on resize
...
this fixes render races which occur when damages and resizes happen in quick succession
2014-02-17 19:11:33 -03:00
Mike Blumenkrantz
b317bedf5a
remove comp object dirty flag
...
this logic was useful for another issue which has since been fixed. it currently only serves the purpose of triggering a race condition crash which I do not enjoy.
2014-02-17 16:21:02 -03:00
Mike Blumenkrantz
bbf29c6a2a
only set want_focus for non-hidden clients when deferring focus setting
...
T950
2014-02-14 14:56:16 -05:00
Mike Blumenkrantz
494e6bc5ee
another revision for client geometry resets: take new geometry instead of ignoring it
2014-02-14 13:43:15 -05:00
Mike Blumenkrantz
09cb41f1dc
only reset move/resize attempts if the pending move/resize is different than the current one
2014-02-13 22:46:48 -05:00
Mike Blumenkrantz
d80dbc1a35
add maximize_override client flag
...
sometimes you just want to do stuff on a client without any maximize logic applying!
2014-02-12 20:37:52 -05:00
Mike Blumenkrantz
7571ccb2d8
reapply geometry and unset post flags when a client intercept gets the current geometry
2014-02-12 19:50:50 -05:00
Mike Blumenkrantz
6802ae750d
send smart object to comp effect end cb
2014-02-11 22:29:34 -05:00
Mike Blumenkrantz
449ec43d1f
size comp zoomap child to pixmap, not client
...
this affects nothing
2014-02-11 21:45:04 -05:00
Mike Blumenkrantz
c3ce56c1dc
it's possible that a comp effect has no post-effect callback
2014-02-11 18:40:22 -05:00
Mike Blumenkrantz
bf48616a47
remove shadow check from shape apply
2014-02-11 18:40:02 -05:00
Mike Blumenkrantz
d9be56ad41
add smart callback on comp object for shadow change
2014-02-11 18:39:51 -05:00
Mike Blumenkrantz
e895d86839
set comp mirror alpha the same way as objects
...
T928
2014-02-10 09:54:01 -05:00
Mike Blumenkrantz
722b18de9a
set precise_is_inside based on shaped || shaped_input
2014-02-10 09:48:13 -05:00
Mike Blumenkrantz
a78d98700a
apply shadow states during theme setup
...
T885
2014-02-10 09:12:43 -05:00
Mike Blumenkrantz
6524711e68
set comp theme object shadow state to off during setup
...
T907
2014-02-06 20:52:31 -05:00
Mike Blumenkrantz
446eb19653
use regular edje signal emit on regular edje objects
2014-02-06 20:51:58 -05:00
Mike Blumenkrantz
3499f454bd
fix signal callback deletion in comp effect start
2014-02-05 20:52:20 -05:00
Mike Blumenkrantz
a16f820f95
only ignore protocol stacking if comp object is on a different layer
2014-02-05 13:05:05 -05:00
Mike Blumenkrantz
eba912cf6a
e_client_resizing_get() -> e_client_util_resizing_get()
...
functions in e_client.x should be namespaced with e_client_util to indicate that they are inline (and in e_client.x)
2014-02-05 10:51:36 -05:00
Mike Blumenkrantz
4eae850861
e_util_client_shadow_state_get() -> e_client_util_shadow_state_get()
...
removals: e_util_client_shadow_state_get
2014-02-05 10:48:31 -05:00
Mike Blumenkrantz
27768fcb03
guarantee comp shadow is off when frame exists
2014-02-05 10:48:01 -05:00
Mike Blumenkrantz
cd37f23632
allow shadows on borderless, non-argb, non-shaped clients
...
T885
2014-02-04 22:27:23 -05:00
Mike Blumenkrantz
de9dde6daf
remember comp object dirty state and update when necessary
...
normal clients rely upon the guarantee that they will receive another resize on next render when size updates occur before visibility happens, but overrides will never receive another resize since they always size accurately. by remembering that the state was previously considered dirty, render updates which occur before visibility are no longer lost until the next damage/resize occurs
tl;dr: your menus show up again
2014-02-03 14:00:12 -05:00
Mike Blumenkrantz
3125c3a674
fix more misuses of comp animating flag
...
this should even things out permanently here and ensure things get deleted when they should
related: T879
2014-01-30 12:12:01 -05:00
Mike Blumenkrantz
1d22c527a3
force comp reshadow after pixmap fetch succeeds, not during setup
...
reshadowing earlier than this makes it very likely that client attributes have not been fetched, meaning that the match will fall through to a default type match instead of using the correct one
2014-01-30 12:12:00 -05:00
Mike Blumenkrantz
49cfe28719
use object list for comp matching internal objects
2014-01-30 12:12:00 -05:00
Mike Blumenkrantz
8e6cd13766
fix some misuses of comp animating flag
...
T879
2014-01-30 06:59:11 -05:00
Mike Blumenkrantz
5a2aab8457
reject stopping comp object effect if wrong end_cb is passed
2014-01-30 06:55:14 -05:00
Mike Blumenkrantz
db01319aee
ref client itself during comp object add event
2014-01-29 21:12:07 -05:00
Mike Blumenkrantz
9b36b9b78c
remove comp iconify hacks (and e_iconify api), expand comp object effect api
...
instead of adding specific handling which will work (sometimes) in one specific case, expand already-existing api to provide the needed functionality for iconify animations. now on emitting any signal to a comp object, optional glob-able effect providers can be hooked and prioritized to add effect animations
also use animating flags now when applying an object effect
a base effect is provided in elementary, but now each module which wants to hook iconify animations (or other events) can do so in the theme and have different animations with their module
2014-01-29 13:36:42 -05:00
Mike Blumenkrantz
e5bbb98918
don't reset focus to iconified clients on autoclose delete
2014-01-29 13:36:42 -05:00
Mike Blumenkrantz
c4afece1a3
revert 8b62039e6a
, use existing layer_block flag
2014-01-29 13:36:41 -05:00
Carsten Haitzler
8b62039e6a
support temporary layer changes for iconify anim purposes
2014-01-29 22:42:54 +09:00
Carsten Haitzler
1ede2a5632
iconify provider - the ability to provide geometry for src/dst of iconify
...
ibox now uses this as an initial test. there are teething problems:
1. unknown location for new icon (guess that its on right)
2. stacking - the animation is at the stacking layer of the comp obj
... this probably needs a way for the comp shobj to request a
temporary stacking change until anim done
2014-01-29 22:42:54 +09:00
Mike Blumenkrantz
cd2cde6477
clean up client delete+unfocus
...
previously there were cases where client focus was not explicitly unset on delete, which resulted in expected client hooks not being called and minor inconveniences to occur
2014-01-27 10:58:41 -05:00
Mike Blumenkrantz
de58ff7ecd
only hide/delete comp util objs if hiding flag is set
...
if an object is shown during the hide animation, this flag gets unset
2014-01-27 10:58:40 -05:00
Mike Blumenkrantz
6effdae157
fix comp util adding of already-visible objects
...
this fixes pager popups which don't use the new style of popup adding
2014-01-27 10:58:40 -05:00
Mike Blumenkrantz
09e15c49ac
only clear comp updates on resize if it isn't the first resize
2014-01-24 17:33:37 -05:00
Mike Blumenkrantz
d48f386c23
add define for making render debug messages easier to enable
2014-01-24 16:07:33 -05:00
Mike Blumenkrantz
a38d8828e9
don't bother with client hide animations on shutdown/restart
2014-01-23 13:23:41 -05:00
Mike Blumenkrantz
e115cbc906
reset focus to last focused client upon closing an autoclose object
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
d5ce4e0517
more commented out debug lines for comp object
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
9201ac12d4
resize pending update tiler during size update
...
another tiler gets merged a few lines down and clipping is bad
2014-01-22 22:14:33 -05:00