Tom Hacohen
b4900203d5
Tiling2: reapply tree on frame's deletion, not client removal.
...
According to mike this should work better with animations.
Fixes T947.
2014-02-21 09:15:18 +00:00
Tom Hacohen
0831537efa
Tiling2: When adding clients, add them relative to the current one.
...
This fixes clients to be added relative to the current one, and not at
the end of the current children list.
This fixes T944.
2014-02-21 09:15:17 +00:00
Tom Hacohen
89881a0c50
Tiling2: Fixed coding conventions.
2014-02-21 09:15:17 +00:00
Tom Hacohen
4c846ca7fc
Tiling2: Properly apply settings from the config dialog.
...
This fixes T911.
2014-02-21 09:15:17 +00:00
Tom Hacohen
555730c2bc
Tiling2: Fixed setting of floating on non tiled desktops.
2014-02-21 09:15:11 +00:00
Tom Hacohen
fe43bd7576
Tiling2: Store extra on more windows, including ones in non-tiling desktops.
2014-02-21 09:15:10 +00:00
Tom Hacohen
3294d8e562
Tiling2: Moved a function to a better location.
2014-02-21 09:15:10 +00:00
Tom Hacohen
08947d8220
Tiling2: Removed useless desk show hook.
2014-02-21 09:15:10 +00:00
Tom Hacohen
32e1ec2034
Tiling2: Fixed applying of desktop is tiled config.
...
This now changes things as we click apply.
2014-02-21 09:15:10 +00:00
Tom Hacohen
82e252fa71
Tiling2: Fixed tiling2 according to enlightenment's sticky event changes.
...
Changes in e were introduce in: 29cd45142a
2014-02-21 09:15:10 +00:00
Tom Hacohen
f4a7b6512a
Tiling2: Fixed formattign, again.
...
Fixes T919.
2014-02-21 09:15:10 +00:00
Tom Hacohen
92b0d0171c
Tiling2: Fixed resize issues.
...
This fixes T913.
2014-02-21 09:15:10 +00:00
Tom Hacohen
e48cd878ce
Tiling2: Renamed space between windows -> padding.
2014-02-21 09:15:10 +00:00
Tom Hacohen
d83e18f21e
Tiling2: Implemented window padding.
...
Thanks to cippp for the feature request + some code.
2014-02-21 09:15:10 +00:00
Tom Hacohen
b4df3d18a1
Tiling2: Use a define to set the max window padding.
2014-02-21 09:15:10 +00:00
Tom Hacohen
82fb13e6fa
Tiling2: Get rid of a redundant define.
2014-02-21 09:15:10 +00:00
cippp
48c1cc947f
Tiling2: Added config to set window spacing.
2014-02-21 09:15:10 +00:00
cippp
f6cd19a9fd
Tiling2: renamed local variables.
2014-02-21 09:15:10 +00:00
cippp
f62fe4972f
Tiling2: Added a link to the module's settings when right-clicking gadget.
2014-02-21 09:15:10 +00:00
Tom Hacohen
8254aa45b2
Tiling2: Added a config to disable floating mode.
2014-02-21 09:15:10 +00:00
Tom Hacohen
99e8b518f2
Tiling2: Added a gadget to indicate current tiling mode.
2014-02-21 09:15:10 +00:00
Tom Hacohen
68a84521ae
Tiling2: Added a gadget group to the theme.
2014-02-21 09:15:10 +00:00
Tom Hacohen
47eec07d9a
Tiling2: Removed unneeded images from theme.
2014-02-21 09:15:09 +00:00
Tom Hacohen
651e627c4b
Tiling2: Removed debug print that was causing segfaults.
2014-02-21 09:15:09 +00:00
Tom Hacohen
ee587a37b0
Tiling2: Fixed coding conventions using efl_indent.
2014-02-21 09:15:09 +00:00
Tom Hacohen
05df3290dc
Tiling2: Updated wiki path.
2014-02-21 09:15:09 +00:00
Tom Hacohen
1b4821155c
Tiling2: Get rid of __UNUSED__ in favour of EINA_UNUSED.
2014-02-21 09:15:09 +00:00
Tom Hacohen
e034e518df
Tiling2: Build infra - this can be removed when merged to E.
2014-02-21 09:15:09 +00:00
Tom Hacohen
5b5ffa37d4
Tiling2: Added an help button.
2014-02-21 09:15:09 +00:00
Tom Hacohen
bf69b855b3
Tiling2: E_Client already has a property for sticky, use it.
...
Before this change, I duplicated this in extra.
2014-02-21 09:15:09 +00:00
Tom Hacohen
e2f4596ff7
Tiling2: Implemented mouse drag to swap.
...
This is a new mouse action that lets you swap window with mouse drag.
2014-02-21 09:15:09 +00:00
Tom Hacohen
b48cd9c9f8
Tiling2: Fix bug with cleaning up actions when shutting down.
2014-02-21 09:15:09 +00:00
Tom Hacohen
ea175537cf
Tiling2: Removed redundant structure members.
2014-02-21 09:15:09 +00:00
Tom Hacohen
7aaf444ee8
Tiling2: Don't try to remove non-tiled windows from the tile tree.
2014-02-21 09:15:09 +00:00
Tom Hacohen
792022196f
Tiling2: Add "floating" as a split mode.
...
This lets people just create floating windows, without the need to toggle.
2014-02-21 09:15:09 +00:00
Tom Hacohen
ff078996ff
Tiling2: Improved setting of client borders.
...
No need to have a special entry point for that.
This fixes the issues with persistant pixel border.
2014-02-21 09:15:09 +00:00
Tom Hacohen
bb1d53614c
Tiling2: Fixed issues with removing/restoring clients.
2014-02-21 09:15:09 +00:00
Tom Hacohen
ca6f1e74f5
Tiling2: Fixed removing clients from extras hash.
2014-02-21 09:15:09 +00:00
Tom Hacohen
f6fa07e812
Tiling2: Have a common entry func for most functions.
2014-02-21 09:15:09 +00:00
Tom Hacohen
55e669fae4
Tiling2: Simple logic cleanup.
2014-02-21 09:15:08 +00:00
Tom Hacohen
03c6fee356
Tiling2: Properly ignore e util clients.
...
This fixes all the error messages that are printed on e startup.
2014-02-21 09:15:08 +00:00
Tom Hacohen
21f30a1ac2
Tiling2: Update original information every time a client is added.
...
Even if it's not the first time that client is added.
2014-02-21 09:15:08 +00:00
Tom Hacohen
b89709267d
Tiling2: Fixed bug with client border menu.
...
This fixes duplicate entries.
2014-02-21 09:15:08 +00:00
Tom Hacohen
5b50d42521
Tiling2: Stop fiddling with stacking and layers.
2014-02-21 09:15:08 +00:00
Tom Hacohen
3114e63faf
Tiling2: Don't set client layers.
...
This fixes some of the input region issues I was having.
The bug is still in e, but this solves some stuff.
2014-02-21 09:15:08 +00:00
Tom Hacohen
1e3f71af71
Tiling2: Fixed adjacent node swapping.
...
Really swap adjacent nodes, not just nodes having a border on the
same line, but never touching.
Also, it's now weighted, so the best matching node will be chosen, not
the first matching.
2014-02-21 09:15:08 +00:00
Tom Hacohen
e3fcc03152
Tiling2: Fixed extra hash cleanup for ignored users.
...
It should always be cleaned, now that we keep it for ignored windows as well.
2014-02-21 09:15:08 +00:00
Tom Hacohen
41ecdc1ebd
Tiling2: Be more defensive about removing clients.
...
This will delete clients even in cases we didn't delete before.
2014-02-21 09:15:08 +00:00
Tom Hacohen
507a6db1e1
Tiling2: Improve debug output in tree dump.
2014-02-21 09:15:08 +00:00
Tom Hacohen
9adc5336c0
Tiling2: Style changes.
2014-02-21 09:15:08 +00:00
Tom Hacohen
86aa218cb2
Tiling2: Handle compositor resize hook.
2014-02-21 09:15:08 +00:00
Tom Hacohen
32c4da7f5e
Tiling2: Have a desk walker function and use it.
2014-02-21 09:15:08 +00:00
Tom Hacohen
0b007b2ff6
Tiling2: Fixed re-tiling on e restart/module unload reload.
2014-02-21 09:15:08 +00:00
Tom Hacohen
39e17e96f8
Tiling2: Fixed desktop setting.
2014-02-21 09:15:08 +00:00
Tom Hacohen
f0efa12921
Tiling2: Fixed error message.
2014-02-21 09:15:08 +00:00
Tom Hacohen
08b877fa1f
Tiling2: Unmaximize windows when starting to tile them.
2014-02-21 09:15:08 +00:00
Tom Hacohen
163c6377b3
Tiling2: Added weight correction code.
...
Total weight should always be 1.0.
This may go off sometimes because of the nature of floating point.
Always correct it when reapply tree.
2014-02-21 09:15:07 +00:00
Tom Hacohen
6795380282
Tiling2: Added support for swapping windows.
2014-02-21 09:15:07 +00:00
Tom Hacohen
6fb54d58ac
Tiling2: Fixed a bug in the tree walker.
2014-02-21 09:15:07 +00:00
Tom Hacohen
d03fb0a0f8
Tiling2: Fixed error messages with ignored windows.
2014-02-21 09:15:07 +00:00
Tom Hacohen
2f80f460e4
Tiling2: Fixed moving non-tiled windows.
2014-02-21 09:15:07 +00:00
Tom Hacohen
5d044ecad3
Tiling2: Removed some redundant code.
2014-02-21 09:15:07 +00:00
Tom Hacohen
df14cca8dd
Tiling2: Remove the step restriction.
...
Enlightenment already enforces that, and using it makes things choppy.
2014-02-21 09:15:07 +00:00
Tom Hacohen
b5434d1de5
Tiling2: Restrict allowed resizes of windows.
2014-02-21 09:15:07 +00:00
Tom Hacohen
ae8acb24b2
Tiling2: Fixed resizing of clients at "forbidden" borders.
...
For example, leftmost window's left border.
2014-02-21 09:15:07 +00:00
Tom Hacohen
15a4ec0c40
Tiling2: Use resize_mode for detecting resize direction.
2014-02-21 09:15:07 +00:00
Tom Hacohen
f5e96784be
Tiling2: Better block of window moving.
2014-02-21 09:15:07 +00:00
Tom Hacohen
dae37e1dea
Tiling2: Added a menu item to toggle floating windows.
2014-02-21 09:15:07 +00:00
Tom Hacohen
5cec6d14cb
Tiling2: Get rid of the use_rows config.
2014-02-21 09:15:07 +00:00
Tom Hacohen
b092052297
Tiling2: Removed debug printfs.
2014-02-21 09:15:07 +00:00
Tom Hacohen
ceb1cc414e
Tiling2: Better handle parent == NULL case.
2014-02-21 09:15:07 +00:00
Tom Hacohen
3804d5165a
Tiling2: if can't find the parent, pass NULL, not the root.
2014-02-21 09:15:07 +00:00
Tom Hacohen
052a13b462
Tiling2: Cleaned up ignored windows support.
2014-02-21 09:15:07 +00:00
Tom Hacohen
bfdb22b0b8
Tiling2: Added untested support for sticky windows.
...
Just don't tile them.
2014-02-21 09:15:07 +00:00
Tom Hacohen
8ab30821fb
Tiling2: Remove client from floating window list when cleaning.
2014-02-21 09:15:06 +00:00
Tom Hacohen
5e209ea583
Tiling2: Remove things I don't need from config and config dialog.
2014-02-21 09:15:06 +00:00
Tom Hacohen
4b2a53d1d4
Tiling2: Fix a bug with reordering of windows in some cases.
2014-02-21 09:15:06 +00:00
Tom Hacohen
156f6ff984
Tiling2: Properly handle more than one desk.
2014-02-21 09:15:06 +00:00
Tom Hacohen
1b3500f31a
Tiling2: Added an hack to workaround the stupid e resize bug.
...
The bug with the frame created after the first resize.
2014-02-21 09:15:06 +00:00
Tom Hacohen
6b606cde41
Tiling2: Added resizing support.
...
There are still some bugs.
2014-02-21 09:15:06 +00:00
Tom Hacohen
3aa597c4af
Tiling2: Don't tile centred windows.
2014-02-21 09:15:06 +00:00
Tom Hacohen
3914926b13
Tiling2: Removed end_special_input.
2014-02-21 09:15:06 +00:00
Tom Hacohen
8dd65b90f3
Tiling2: Create a move/resize function that will update extra.
2014-02-21 09:15:06 +00:00
Tom Hacohen
b0593cd939
Tiling2: Reapply tree when resizing/moving windows.
2014-02-21 09:15:06 +00:00
Tom Hacohen
592dfb9dd2
Tiling2: Fixed buy with deleting last vertical split.
2014-02-21 09:15:06 +00:00
Tom Hacohen
e9779f70bf
Tiling2: Bug fixing. Things seem to work now.
2014-02-21 09:15:06 +00:00
Tom Hacohen
1a2ffcd06e
Tiling2: Changed add to return new root and fixed top-level vertical.
2014-02-21 09:15:06 +00:00
Tom Hacohen
1114b54c71
Tiling2: Added a useful debugging function.
2014-02-21 09:15:06 +00:00
Tom Hacohen
0c5afecfc9
Tiling2: More bug fixing.
2014-02-21 09:15:06 +00:00
Tom Hacohen
f7f204353d
Tiling2: Handle more delete cases.
2014-02-21 09:15:06 +00:00
Tom Hacohen
38e13e2648
Tiling2: Fixed a few bugs.
2014-02-21 09:15:06 +00:00
Tom Hacohen
21ac77185b
Tiling2: Get rid of split_type, use levels instead and bug fixes.
2014-02-21 09:15:06 +00:00
Tom Hacohen
f64763ab6e
Tiling2: Fixed tree update bugs.
2014-02-21 09:15:05 +00:00
Tom Hacohen
aac439698b
Tiling2: Removed more code.
2014-02-21 09:15:05 +00:00
Tom Hacohen
da4212680a
Tiling2: Completely get rid of the stacks concept.
2014-02-21 09:15:05 +00:00
Tom Hacohen
9831904a88
Tiling2: Fixed a bug in tree-walker.
2014-02-21 09:15:05 +00:00
Tom Hacohen
dd7c25b506
Tiling2: Moved fullscreen check into 'is_tilable'.
2014-02-21 09:15:05 +00:00
Tom Hacohen
091eeb2df4
Tiling2: Removed more redundant code.
2014-02-21 09:15:05 +00:00
Tom Hacohen
af06d8db25
Tiling2: More code cleanups.
2014-02-21 09:15:05 +00:00
Tom Hacohen
29693d93b3
Tiling2: Cleaned up some more code.
2014-02-21 09:15:05 +00:00
Tom Hacohen
ea19439b72
Tiling2: Removed more redundant code.
2014-02-21 09:15:05 +00:00
Tom Hacohen
81eb74ca92
Tiling2: Make it possible to toggle split type from key bindings.
2014-02-21 09:15:05 +00:00
Tom Hacohen
76c4fb85d9
Tiling2: Moved more redundant code.
2014-02-21 09:15:05 +00:00
Tom Hacohen
96645931bd
Tiling2: Added a mode toggle action.
2014-02-21 09:15:05 +00:00
Tom Hacohen
fad33bde8d
Tiling2: Removed some more code I don't need.
2014-02-21 09:15:05 +00:00
Tom Hacohen
4c590afe7e
Tiling2: Allow not finding a parent if it's the first window.
2014-02-21 09:15:01 +00:00
Tom Hacohen
5ad0edeb84
Tiling2: Added a function to test if we should tile.
2014-02-21 09:15:01 +00:00
Tom Hacohen
f1068feed3
Tiling2: Remove more stack related code.
...
For now, you can't resize windows.
2014-02-21 09:15:00 +00:00
Tom Hacohen
d81034ac36
Tiling2: Start using window tree.
2014-02-21 09:14:56 +00:00
Tom Hacohen
9060fa64b9
Tiling2: Fixed bugs and improve the window tree implementation.
2014-02-21 09:14:56 +00:00
Tom Hacohen
cfd4ea4f9f
tiling2: Added window_tree.
2014-02-21 09:14:56 +00:00
Tom Hacohen
6b68b99491
Tiling2: Initial commit.
2014-02-21 09:14:44 +00:00
Carsten Haitzler
22369ffc7b
ensure that the bg object exists before emitting signals in e_desk_show()
2014-02-21 09:34:25 +09:00
Chris Michael
ab15d6e2b4
bugfix: Fix wl_desktop_shell compiler warning for Mike
...
The keys array stores keys as unsigned int, so with a little bit of
casting voodoo, we can avoid the nasty compiler warning messages about
void pointers used in arithmetic.
Signed-off-by: Chris Michael <devilhorns@comcast.net>
2014-02-20 17:11:56 +00:00
Mike Blumenkrantz
0bd9052c7e
better fix for exec client removal: don't remove if exec is deleted
2014-02-18 06:56:54 -05:00
Mike Blumenkrantz
fba7100590
fix client menu layer checks
...
T984
2014-02-18 06:45:20 -05:00
Mike Blumenkrantz
37c1345aa1
fix crash when repeatedly opening multiple client menus
2014-02-17 17:30:15 -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
14c7e58a29
improve infos for e_comp_util_wins_print()
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
4c2db4342a
bugfix: unref client when removing from exec if exec is deleted
...
fixes a race condition where client would never be freed when closing lots of windows simultaneously
2014-02-17 16:21:02 -03:00
Sebastian Dransfeld
60483a11a0
randr: split config and current setup
...
This is so the current config does get changed unless the user requests
it, and makes it possible to have several configs.
2014-02-17 08:44:56 +01:00
Carsten Haitzler
fd0048b0f4
ibar - fix separator to properly be horizontal on vertical ibars
2014-02-15 21:35:48 +09:00
Mike Blumenkrantz
7423b5cac1
really fix deskmirror sticky+hidden client handling
...
quickaccess...
2014-02-15 01:32:07 -05:00
Mike Blumenkrantz
025e0b7565
show hidden clients in deskmirror when in pager or taskbar mode
2014-02-15 01:25:21 -05:00
Mike Blumenkrantz
6da74c5f06
bugfix: only remove an ibar no-order icon if ALL icon's clients are skip
...
T953
2014-02-14 15:58:49 -05:00
Mike Blumenkrantz
de7d818f99
break when finding a non-skip new ibar exec
2014-02-14 15:57:33 -05:00
Mike Blumenkrantz
9419f687aa
make e_win delete callback less recursive-prone
2014-02-14 15:49:49 -05:00
Mike Blumenkrantz
964ebfb5d7
also fix wp2 close button to not crash
2014-02-14 15:49:38 -05:00
Mike Blumenkrantz
3121ae65a9
fix wp2 crash
...
T902
2014-02-14 15:19:03 -05:00
Mike Blumenkrantz
e6fa8f3176
don't unfullscreen clients if:
...
* iconic
* hidden (desk flipped)
* not on current zone
T920
2014-02-14 15:08:23 -05: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
46a715db35
hidden clients should be hidden in deskmirror
2014-02-14 14:46:07 -05:00
Mike Blumenkrantz
8df52a1f22
don't create remembers for ignored clients
2014-02-14 14:40:16 -05:00
Mike Blumenkrantz
96316e2969
bugfix: no more crashing when deleting entry widgets
2014-02-14 14:12:12 -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
1c82215eaa
force client changes when calling e_win geometry functions
2014-02-14 13:42:49 -05:00
Mike Blumenkrantz
208e7e17bc
bugfix: adding/changing comp match window types is now possible
2014-02-14 13:05:17 -05:00
Mike Blumenkrantz
92c7ec1dad
DOCKs should actually be "none" so they don't get shadows
2014-02-14 13:05:00 -05:00
Mike Blumenkrantz
3bb0867815
set DOCK type on systray window
2014-02-14 12:48:34 -05:00
Mike Blumenkrantz
9d9ee6c33b
add default comp match for DOCK window types
2014-02-14 12:46:53 -05:00
Mike Blumenkrantz
c7cf99ba45
bugfix: comp match adding once again functional
2014-02-14 12:41:34 -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
aa37188e02
add maximize_pre and unmaximize_pre smart callbacks
2014-02-12 20:37:39 -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
0b2e3ea2e3
add unmaximize_done client smart callback
2014-02-12 19:50:17 -05:00
Mike Blumenkrantz
82faa72a45
move maximize_done client smart callback to the end of maximize
2014-02-12 19:49:58 -05:00
Mike Blumenkrantz
0d2945149a
client signal actions are not mouse actions
...
mouse actions have a different end path which causes pointer popping to not occur
T913
2014-02-12 12:06:13 -05:00
Mike Blumenkrantz
1f534c3b32
set client move/resize vars in time for client hooks
2014-02-12 11:50:00 -05:00
Carsten Haitzler
3e17092db8
fix segv with comp post_updates
...
if we keep a list of e clients... either make sure any client deleted
is removed from the list on deletion... OR use ref/unref to ensure it
stays alive as long as it's in the list.
2014-02-12 12:34:28 +09: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
57f0bf6429
fix zoomap alpha setting
...
doesn't affect anything right now, but someday...
2014-02-11 21:43:54 -05:00
Mike Blumenkrantz
5a14f9f00e
unset client.saved after unmaximize callback
2014-02-11 19:28:25 -05:00
Mike Blumenkrantz
3f5b5b03b2
call unmaximize smart callback for all unmaximizes, fix client sizing on directional unmax
2014-02-11 19:01:36 -05:00
Mike Blumenkrantz
ffe5670b39
add "maximize_done" smart callback for clients
2014-02-11 18:48:56 -05:00
Mike Blumenkrantz
e564187759
hook shadow_change smart callback to fix deskmirror shadows without crashing constantly
2014-02-11 18:48:14 -05:00
Mike Blumenkrantz
adb398b6be
Revert "fix pager16 shadow inconssistency"
...
This reverts commit c91840ea54
.
2014-02-11 18:42:17 -05:00
Mike Blumenkrantz
2fd21db5e0
Revert "fix deskmirror crash from c91840ea54a398f56a513a9d02608f323d7e8f65"
...
This reverts commit 6221fb7c90
.
2014-02-11 18:42:06 -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
6221fb7c90
fix deskmirror crash from c91840ea54
...
T941
2014-02-11 18:31:06 -05:00
Carsten Haitzler
ed5f83ab0b
fix probably NULL ic segv cause in efm
...
this SHOULD fix T933 if i could ever reproduce it...
2014-02-11 14:49:23 +09:00
Mike Blumenkrantz
0291edd719
hook STICKY client property change in deskmirror
...
T936
2014-02-10 20:14:59 -05:00
Mike Blumenkrantz
29cd45142a
remove E_EVENT_CLIENT_(UN)STICK, use E_EVENT_CLIENT_PROPERTY & E_CLIENT_PROPERTY_STICKY
2014-02-10 20:10:38 -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
e7127a93ff
don't set input shape differently on shaped_input clients
...
T931
2014-02-10 09:45:53 -05:00
Mike Blumenkrantz
a78d98700a
apply shadow states during theme setup
...
T885
2014-02-10 09:12:43 -05:00
Mike Blumenkrantz
e105c10d80
client shadow check with argb windows now returns based on frame state
...
T929
2014-02-10 09:12:28 -05:00
Carsten Haitzler
c91840ea54
fix pager16 shadow inconssistency
...
fixes T930
2014-02-10 12:21:27 +09:00
Mike Blumenkrantz
c47a7e9b8f
improve _e_client_move_begin():
...
* set ec->moving before MOVE_BEGIN hook
* remove comp grab on failure
* only raise if move succeeds
2014-02-07 14:29:07 -05:00
Mike Blumenkrantz
86d92adba6
set ecresize in e_client_resize_begin()
2014-02-07 14:24:37 -05:00
Mike Blumenkrantz
2817bf025b
more e_client_resize_begin() improvements: remove comp grab on failure
2014-02-07 14:23:55 -05:00
Mike Blumenkrantz
dab9f9eb3c
don't double unset resize_mode on e_client_resize_begin() failure
2014-02-07 12:04:06 -05:00
Mike Blumenkrantz
e68837c1d6
e_client_resize_begin() fixes
...
* make return value accurate
* unset resize_mode on failure
2014-02-07 12:01:12 -05:00
Mike Blumenkrantz
059870b970
layer setting on overrides during client_new wasn't a placeholder, just using the wrong value
...
T908
2014-02-07 09:23:50 -05:00
Mike Blumenkrantz
b97d043b25
assume that if we can't find a requested stacking client (X) it's going to be at the top of the stack
...
T908
2014-02-06 21:46:12 -05:00
Mike Blumenkrantz
9356644acc
set shelves to lowest object on layer
2014-02-06 21:43:40 -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
f71c85b509
feature: check udisks1 DevicePresentationHide flag
...
from D505
2014-02-06 13:15:41 -05:00
Mike Blumenkrantz
78334b615e
more stringshare improvements for window profile, apply window profile if no desk set (impossible?)
2014-02-06 12:59:28 -05:00
Mike Blumenkrantz
442f3904ed
remove unused var
2014-02-06 12:55:49 -05:00
Mike Blumenkrantz
ea7c0c3dcd
improve stringshare use in e_client_desk_set
2014-02-06 12:52:48 -05:00
Mike Blumenkrantz
7b5257530a
specify that E_Desk string members are stringshared
2014-02-06 12:39:09 -05:00
Mike Blumenkrantz
793b6ff319
improve stringshare use for e_desk window profile and name
2014-02-06 12:38:59 -05:00
Mike Blumenkrantz
c8ba69e3bf
gadgets now delete the right menu when menu is deactivated
...
T906
2014-02-06 12:33:39 -05:00
Mike Blumenkrantz
1b7b765ee4
bugfix: race condition when deleting clients and their e_exec
...
this occurred occasionally when a client was the last one on a phony exe
2014-02-05 20:52:55 -05:00
Mike Blumenkrantz
3499f454bd
fix signal callback deletion in comp effect start
2014-02-05 20:52:20 -05:00
Mike Blumenkrantz
a3fbcc339b
Revert "Revert "Revert "e_main_idler_freeze/thaw - disable - this causes no end of wierdnesses"""
...
This reverts commit 91b3f2e0e1
.
revert wars part 4: the blizzard blitz!
the main point of freezing idlers here was not, in fact, to optimize, but to block an infinite loop which pegged the cpu until screensaver ended. this solution should be less issue-prone for the one person who had issues with the previous fix.
2014-02-05 13:22:42 -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
66325b2207
Revert "stop crash on accessing ec->desk if its null"
...
This reverts commit c3791d6b43
.
this is a workaround which prevents the underlying bug from being fixed.
2014-02-05 12:47:03 -05:00
Carsten Haitzler
7aaeeab3c3
fix aspect of pagewr16 to more closely match real screen
...
this wasn't strictly necessary in pager but pager16 needs it to not
squash content badly
2014-02-06 01:48:43 +09:00
Carsten Haitzler
7a3a81b144
bgpreview - fix sizing to not overrun bounds - fixes wallpaper in pager16
2014-02-06 01:18:16 +09:00
Carsten Haitzler
c3791d6b43
stop crash on accessing ec->desk if its null
...
unknown if this was a bug before - never saw it before, so for now
shal assume it's new.
2014-02-06 01:18:16 +09:00
Carsten Haitzler
91b3f2e0e1
Revert "Revert "e_main_idler_freeze/thaw - disable - this causes no end of wierdnesses""
...
This reverts commit 3067f600ee
.
revert wars! - i keep hitting problems - the one i still see is that i
come back to a machine that has blanked for a while - i launch some
app (terminology, sylpheed, chromium - doesn't matter) and no window
appears. psorcess is running. no matter how many times i launch it ...
no new process appears. this is a major bug. stopping the idler is an
optimization not a necessity.
2014-02-06 01:18:15 +09:00
Carsten Haitzler
4e8b14a245
formatting fix.
2014-02-06 01:18:15 +09:00
Mike Blumenkrantz
569c90e87f
e_client_util_is_stacking() -> e_client_is_stacking()
...
regrettably, this can't be in e_client.x because it needs E_Comp struct members and header order does not allow for this :(
2014-02-05 10:58:57 -05:00
Mike Blumenkrantz
8d71213839
e_client_name_get() -> e_client_util_name_get()
...
this should be inlined
2014-02-05 10:55:50 -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
ca760bb103
check client ignores before dereferencing desk
...
D519
2014-02-04 21:29:29 -05:00
Mike Blumenkrantz
ee47265649
more distcheck fixes
...
not sure how distcheck didn't fail before...
2014-02-04 13:55:58 -05:00
Mike Blumenkrantz
270ecccfad
bugfix: building non-default modules from dist no longer fails
...
T869
2014-02-04 10:54:11 -05:00
Mike Blumenkrantz
f3587f67f2
remove conf2 the rest of the way...
2014-02-04 09:41:07 -05:00
Mike Blumenkrantz
3067f600ee
Revert "e_main_idler_freeze/thaw - disable - this causes no end of wierdnesses"
...
This reverts commit 231b780996
.
despite appearances, this functionality isn't solely for efficiency, and as such I have no plans for it to be removed.
2014-02-03 19:16:11 -05:00
Carsten Haitzler
231b780996
e_main_idler_freeze/thaw - disable - this causes no end of wierdnesses
...
so since this e main idler freeze/thaw i've noticed several times, i
come back to my machine after screen-off time period, i wke it up with
a mouse wiggle or keyboard press and try run terminology - no windwo
appears. i can run it all i want - it never shows up but the processes
are there. i've seen it happen to sylpheed where its fetch window
doesn't appear. i've had myserious menu edje objects on the top-left
with only a single item with no bg. i've had e even unable to restart
on ctrl+alt+end.
so i disabled the idler freeze/thaw as i suspected this is what the
root cause is, and sinc ethen the above problems stopped manifesting.
i can only conclude it's a deep and nasty bi-product of stopping the e
main idler, so don't do it. :) better be a bit less efficient than
buggy. either way setting manual rendering and dropping the animator
framerate should do almost all the things needed anyway.
2014-02-04 08:08:20 +09:00
Davide Andreoli
bf33f34b4c
PackageKit: split config stuff to a proper e_mod_config.c file.
...
No functionan changes with this commit.
2014-02-03 22:21:25 +01:00
Davide Andreoli
0d0907ec2a
PackageKit: fixed icon state for newly created gadget.
...
This fix the case where a new (not the first) gadget is added.
Previously you have to restart e to show the correct state.
2014-02-03 21:37:43 +01: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
20c09a3891
don't check client zone during idler
...
this happens on every move and resize, no need to check it a third time
2014-02-03 13:58:57 -05:00
Mike Blumenkrantz
f4de16df08
don't change zone after moving client
...
this happens automatically, and with more accuracy, later on
2014-02-03 13:57:45 -05:00
Mike Blumenkrantz
7efa7b3f27
don't overwrite existing coords on creation of override client
...
overrides come with their own placement for zones
2014-02-03 13:55:38 -05:00
Mike Blumenkrantz
3c436b5c09
bugfix: initial client positioning with multiple monitors improved
...
this was added a while ago to fix positioning of windows that wanted to start centered but couldn't accurately calculate xinerama screen sizes, resulting in windows getting centered across the screen split. it ended up being a bit too aggressive, however.
2014-02-03 13:03:01 -05:00
Mike Blumenkrantz
d293b368b8
bugfix: screen limits policy no longer breaks X client positioning
...
this has been broken since it was added, and I strongly regret allowing it to be added.
2014-02-03 12:52:35 -05:00
Mike Blumenkrantz
ad8b4e6d4d
track main loop edje freeze state
2014-02-03 11:58:02 -05:00
Mike Blumenkrantz
ebeffa1a91
bugfix: hide drag icons after dnd operation ends
...
T797
2014-02-03 11:14:04 -05:00
Carsten Haitzler
fc83914c51
packagekit - update icon
2014-02-02 16:15:19 +09:00
Carsten Haitzler
60784e85ec
pkgkit - when running the command, provide the zone so there is context
2014-02-02 10:28:46 +09:00
Davide Andreoli
1e07f20cf1
packagekit: warnings--
2014-01-31 22:15:01 +01:00
Mike Blumenkrantz
21019e952f
Revert "add default comp match for geany autocompete window"
...
This reverts commit 5c5a89bfec
.
2014-01-30 19:15:47 -05:00
Carsten Haitzler
2de63a2f0b
comp matches - add menu and dnd types in list
2014-01-31 08:50:37 +09:00
Mike Blumenkrantz
9409f435a3
e_util_glob functions now automatch when pointers are the same
2014-01-30 13:11:00 -05:00
Mike Blumenkrantz
d3468dd920
feature: ACTIVATE_EXCLUDE window active hint policy
...
this option causes window activation requests to only activate a window if it is on a currently visible virtual desktop, otherwise it will be set as urgent. I recall that things may have worked this way long ago...
2014-01-30 12:45:49 -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
4bae09712d
internal windows are NOT re_manage
...
setting re_manage breaks visibility animations on first show
2014-01-30 12:12:01 -05:00
Mike Blumenkrantz
752c220482
redo X first_damage logic
...
the main idea here is to not DRAW at the time of the first damage to avoid overdraw, but ignoring the fact that the region is ready to be drawn can be problematic when the drawing eventually occurs. best choice here is to keep the region but not the render update
2014-01-30 12:12:01 -05:00
Mike Blumenkrantz
340e02efb5
ignore non-internal override clients when stacking
...
this fixes the case where clients will briefly escape normal/expected stacking on startup if an override is visible
2014-01-30 12:12:01 -05:00
Mike Blumenkrantz
53e477a7d0
simplify layer marker stacking setup
2014-01-30 12:12:01 -05:00
Mike Blumenkrantz
b6cbacc77e
ignore re_manage clients for X object creation events
2014-01-30 12:12:01 -05:00
Mike Blumenkrantz
5c5a89bfec
add default comp match for geany autocompete window
...
given that we're compositing-only now, we should be adding more of these for common apps to improve the user experience on a base configuration
2014-01-30 12:12:01 -05:00
Mike Blumenkrantz
d1fb844db0
bugfix: comp matching correctly edits in place and doesn't crash
2014-01-30 12:12:01 -05:00
Mike Blumenkrantz
cd6fcead3e
add object configuration to comp matches
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
59d6581f57
use popup style for pager16 popups
...
now that this is no longer transparent, not having a shadow by default is odd
2014-01-30 12:12:00 -05:00
Mike Blumenkrantz
2ef7f0f760
rename tabs in comp match dialog to be more descriptive
2014-01-30 12:12:00 -05:00
Mike Blumenkrantz
628696f2af
use E_Window_Type for comp match dialog instead of Ecore_X_Window_Type
2014-01-30 12:12:00 -05:00
Mike Blumenkrantz
4bcc43282e
use E_Window_Type for comp matches instead of Ecore_X_Window_Type
2014-01-30 12:12:00 -05:00
Mike Blumenkrantz
f14aa06c7c
remove default comp match for Background_Window
...
this no longer exists
2014-01-30 12:12:00 -05:00
Mike Blumenkrantz
37fd470632
remove default comp match for Init_Window
...
this no longer exists
2014-01-30 12:12:00 -05:00
Daniel Kolesa
811c57cfaf
enlightenment: fix menu placement
2014-01-30 12:17:54 +00: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
9d3f47f4f6
ignore deleted clients on comp object add event
2014-01-29 21:12:07 -05:00
Mike Blumenkrantz
db01319aee
ref client itself during comp object add event
2014-01-29 21:12:07 -05:00
Mike Blumenkrantz
7ef4340c3f
revert 83397e1bde
2014-01-29 21:12:07 -05:00
Mike Blumenkrantz
10ef8170d4
remove iconify files
2014-01-29 21:12:07 -05:00
Carsten Haitzler
b7515a0958
null out damage on free in _e_comp_x_hook_client_del
2014-01-30 11:02:44 +09:00
Carsten Haitzler
83397e1bde
fix segv where comp_data is null but still accessed
...
it seems i have an override-redirect window just off the bottom-right
of my screen - i think its the scim input panel status. what happens
is it is "managed" by comp but then deleted (_e_comp_x_hook_client_del
called), BUT _e_comp_x_object_add is called with a deferred event for
that client to add it again (likely this is a race) which finds he
client in a state of not having comp_data as the E_FREE in
_e_comp_x_hook_client_del() frees it and sets it to NULL. move the
comp_data free to the actual client free (which is the last time a
client is valid at all) solves this.
2014-01-30 08:55:28 +09:00
Carsten Haitzler
61aa61651c
ibox/ibar/tasks iconify effect - don't do it if target is not on same screen
2014-01-30 07:45:02 +09: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
Mike Blumenkrantz
6523f283a6
fix pager popup delete timer
...
T871
2014-01-29 13:36:41 -05:00
Carsten Haitzler
5bfbc3f5f9
iconify - fix priority handling for iconify provider
2014-01-29 23:09:19 +09:00
Carsten Haitzler
5ce5fc3918
tasks - add iconify provider
2014-01-29 22:42:54 +09:00
Carsten Haitzler
df575ea51a
ibar - add iconify provider
2014-01-29 22:42:54 +09: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
1efb80bddb
set manual render and increase ecore frametime during screensaver
2014-01-28 21:13:55 -05:00
Mike Blumenkrantz
82dd3443ea
always thaw edje when freezing main idlers
...
this prevents edje from being stuck in the frozen state upon wakeup
2014-01-28 20:45:43 -05:00
Mike Blumenkrantz
0ff2a408d3
force stacking for all new X clients during add event
...
this fixes a race condition when windows open simultaneously and then are stacked under each other: the previous result was that they would end up hanging out at the top of the window stack (above all windows) until another window was raised above them. now they stack as expected
2014-01-28 20:43:19 -05:00
Mike Blumenkrantz
576f0bab2d
reject successive attempts to add evas callbacks in X compositor
2014-01-28 20:43:03 -05:00
Mike Blumenkrantz
49d6de3316
send X flush/dump to client window, not parent window
2014-01-28 15:38:40 -05:00
Mike Blumenkrantz
d09e8af4f3
set layer on pager popup
2014-01-28 11:01:57 -05:00
Mike Blumenkrantz
2c41e314d0
check sticky flag when setting comp hidden on desk set
...
seriously guys, I fixed sticky windows this time. seriously.
2014-01-27 21:49:34 -05:00
Mike Blumenkrantz
55bc44c9b8
feature: main idlers now freeze during screensaver to conserve power
2014-01-27 21:44:51 -05:00
Mike Blumenkrantz
cf267da573
also fix unsticking clients
...
e_client_desk_set() will sort out the hidden flag here automatically, so unsetting it is always the better choice
2014-01-27 21:44:05 -05:00
Mike Blumenkrantz
35aaabc491
fix toggling sticky state on clients
...
previously this would break windows if it was set based on persisting X hints
2014-01-27 21:35:39 -05:00
Mike Blumenkrantz
3dd0ea5189
break out client urgency setting into separate api function
...
this unclutters the client idler a little and also makes it easier to correctly set the urgency hint for clients
2014-01-27 21:35:39 -05:00
Mike Blumenkrantz
f54d669f43
add forgotten proto for e_widget_filepreview_clamp_video_set
2014-01-27 21:35:39 -05:00
Mike Blumenkrantz
7e0efcc508
remove e_main idler api
...
this was pretty old/legacy and looked like it would fall over pretty easily. there's no users and I see no use for it, so it goes bye bye
removals: e_main_idler_before* api
2014-01-27 16:15:07 -05:00
Mike Blumenkrantz
927300053d
feature: show video resolution in filepreview widget
2014-01-27 12:29:15 -05:00
Mike Blumenkrantz
bc3e1fd94f
feature: add fileman option to clamp video size for video previews
...
T102
2014-01-27 12:28:35 -05:00
Mike Blumenkrantz
3aa7a32618
bugfix: use config_type to set parent profile when resetting bindings
...
I added this a long time ago to fix binding resets and forgot to add the support in to binding resets. genius.
T642
2014-01-27 11:25:24 -05:00
Mike Blumenkrantz
6c79b3ea87
only change to image cursor if not using e cursor
...
T851
2014-01-27 11:18:03 -05:00
Mike Blumenkrantz
8aafbfe6ce
X cursor color support doesn't depend on config values
2014-01-27 11:12:56 -05:00
Mike Blumenkrantz
9b2372a798
ignore X configure events where override is not set
...
this handler is only for dealing with overrides, so if this flag isn't set we're not interested
2014-01-27 10:58:41 -05:00
Mike Blumenkrantz
7a8a06ec7e
set all clients to NORMAL layer by default
...
I added a workaround for overrides a while ago when things were less good and then didn't take it out again when things became more good
T718
2014-01-27 10:58:41 -05:00
Mike Blumenkrantz
83a009c685
only block fileman zone refocus if top client is not ignored
...
T854
2014-01-27 10:58:41 -05: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
a466b92c8d
make client util functions take NULL more gracefully
2014-01-27 10:58:41 -05:00
Mike Blumenkrantz
b6f46fb622
ungrab comp input if either keyboard or mouse is set, not both
...
T858
2014-01-27 10:58:40 -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
ec74eaa30c
re-show pager popups if desk is changed during popup hide animation
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
bb8833a526
set pager* config functions as EINTERN
...
these functions have the same name, so (un)loading them will result in symbol conflicts unless they are not exported
2014-01-27 10:58:40 -05:00
Daniel Juyung Seo
bbe9868c49
bugfix: fix up/down key directory of slider.
2014-01-27 13:18:04 +09:00
Carsten Haitzler
04265d3b9f
bugfix: potential/maybe fix of e checking for itself on startup
...
unknown if this fixes the issue as i can't reproduce it.
2014-01-27 08:21:28 +09:00
Mike Blumenkrantz
fa33846fe4
force show of X layer markers on startup
...
this is cosmetic and only quiets some console errors on startup
2014-01-24 18:42:52 -05:00
Mike Blumenkrantz
99dca3c944
set first_damage flag on overrides
...
some overrides, in very rare cases, seem to only send a single damage. rendering at this point doesn't seem to hurt anything, so I'll give it a shot
2014-01-24 17:44:19 -05:00
Mike Blumenkrantz
db31ccc5de
unset new_client flag for override windows
...
this flag is used to block most cwm actions until after the client is past its first loop iteration. overrides, however, don't need to be blocked and will in fact break sometimes (fuck you gtk) as a result
it's worth noting that showing/hiding overrides extremely fast will still break the compositor a little in that I'm not going to render a single frame while constantly playing edje hide/show animations which are longer than the actual render. with animations disabled, however, rendering occurs as expected.
T831
2014-01-24 17:38:27 -05:00
Mike Blumenkrantz
6044fd8a78
force pixmap refresh for overrides, also automatically set pixmap size
...
override windows don't get PRESENT notifications, apparently, but this can be shortcut anyway by just setting the size from the configure event
2014-01-24 17:36:47 -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
03accb7525
return 0 for client util window_get inlines if no pixmap available
2014-01-24 17:28:32 -05:00
Mike Blumenkrantz
57903b7aa3
only send ICCCM move/resize if it isn't already going to be sent
2014-01-24 16:20:21 -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
c06eca070d
send ICCCM move/resize for configure requests on X windows
...
somehow this got left out of the E19 handler, which broke apps that relied upon such notifications, most notably gnome-terminal
2014-01-24 16:01:01 -05:00
Mike Blumenkrantz
a4c5629e7a
check for comp data deletion and block X calls
...
these are all invalid if client's comp data has already been cleared, so just let the compositor manipulate stuff without touching protolol
2014-01-24 13:13:07 -05:00
Mike Blumenkrantz
d4abb904ad
fix cursor visibility when working with canvas cursors
...
wayland cursors no longer override E cursors depending on config, and they also no longer randomly delete your cursor entirely
T851
2014-01-23 17:06:27 -05:00
Mike Blumenkrantz
99a4e5bd27
remove e_pointer_block api
...
this was a failure idea for a way to block X cursor changes using an api, which turned out to be overengineered
2014-01-23 17:04:41 -05:00
Mike Blumenkrantz
1f25710907
reset pointer type from config when updating size
...
this fixes switching between X/E cursors without restarting
2014-01-23 17:03:56 -05:00
Mike Blumenkrantz
e9c0e2c829
set X cursor color availability based on current compositor's root cursor
...
internal window cursors now display normally
T785
2014-01-23 16:17:34 -05:00
Mike Blumenkrantz
e54434e2db
set X root pointer after determining color availability
...
E cursor now shows normally on startup
2014-01-23 16:16:58 -05:00
Mike Blumenkrantz
ba82fb221d
set only one client, the top client, as the focused client on restarts
...
with this, stacking and focus should be perfectly preserved across e restarts
2014-01-23 13:26:35 -05:00
Mike Blumenkrantz
00c4873d06
force X stacking for re-managed clients on startup
...
this ensures that X stacking is the same as canvas stacking
2014-01-23 13:26:00 -05:00
Mike Blumenkrantz
6a80d19cd7
restack windows after unreparenting on shutdown
...
this preserves stacking order across restarts
2014-01-23 13:25:25 -05:00
Mike Blumenkrantz
c73aed330b
only set take_focus for X clients after main loop has been reached
2014-01-23 13:24:46 -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
f0bb277632
don't free client list on comp shutdown
...
clients remove themselves from the client list, so this makes us fail at freeing all the clients
2014-01-23 13:20:40 -05:00
Mike Blumenkrantz
aba8a6fe32
create clients for stacking windows immediately, don't check for them later
2014-01-23 12:01:31 -05:00
Mike Blumenkrantz
40a3950855
trivial use local window variable instead of helper function
2014-01-23 11:48:18 -05:00
Mike Blumenkrantz
525a342b2e
suuuuuper don't restack layer markers
2014-01-23 11:42:22 -05:00
Mike Blumenkrantz
b10f81de08
clean up shape input rect setting code
2014-01-23 10:34:17 -05:00
Mike Blumenkrantz
5707e8ceb8
I was right the first time...disable shape events on internal wins not input_only
2014-01-23 10:34:17 -05:00
Mike Blumenkrantz
7d53ae97ee
add shaped input window test of doom
2014-01-23 10:34:12 -05:00
Mike Blumenkrantz
4614d8b0fb
and fix window_move action by putting this line back
2014-01-23 09:12:10 -05:00
Mike Blumenkrantz
292e8fd4b3
Revert "comp: fix self feeding event loop with shape input events on override wins"
...
This reverts commit 05a7087c84
.
2014-01-23 09:02:33 -05:00
Mike Blumenkrantz
b1fd48af59
don't double grab compositor input during client actions
...
T844
2014-01-23 08:52:45 -05:00
Mike Blumenkrantz
006c09621b
revert 0f3e3ae5da
, 14207e9770
...
shape modification on overrides
T847
2014-01-23 08:52:45 -05:00
Carsten Haitzler
05a7087c84
comp: fix self feeding event loop with shape input events on override wins
...
so comp would call ecore_x_composite_window_events_enable in
_e_comp_x_client_shape_input_rectangle_set()
_e_comp_x_hook_client_post_new_client() all the time.. because
ec->need_shape_merge was always set.. why was it always set.. because
ecore_x_composite_window_events_enable woudl set shape rectangles to
make the window visible to input events... so e would feed itsefl with
events all day long via x. this shortcuts that to check if event rects
are the SAME then don't set them as the ones that are stored.
2014-01-23 19:58:59 +09:00
Mike Blumenkrantz
0f3e3ae5da
ignore only non-override non-reparented clients when disabling composite events
2014-01-22 22:34:55 -05:00
Mike Blumenkrantz
7f72d160af
don't select shape events for input_only clients, do set for internal clients
2014-01-22 22:34:01 -05:00
Mike Blumenkrantz
146f1662d9
unset shape event selection on systray xembed base
2014-01-22 22:32:53 -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
fccfb20972
add autoclose callback for syscon to null pointer
...
previously, repeated uses of syscon would cause a crash
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
5549c1b530
handle shaped overrides more accurately for theme and rendering
...
overrides don't get to do shape exports for rendering, so this needs to be done during the initial shape check
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
c24d3c60aa
break out X shape rect check loop into helper function
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
ae4e98b856
only set shape export flag during shape update event for non-overrides
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
14207e9770
allow toggling composite window events for override windows
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
2d29661541
select shape events for override clients
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
Mike Blumenkrantz
2943d88042
only set shape merge/export flags for non-override clients on resize
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
199882ea25
disable shadows for override clients with alpha
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
6b246c7c8a
clean up comp object autoclosing when overwriting existing autoclose object
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
e23019825e
set syscon popup layer before autoclose
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
9a3ea2d1bb
use regular comp grabs for menu
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
aad88716a4
fix compositor grab tracking
...
it's possible to have multiple/recursive grabs, so the number of grabs active needs to be tracked
T820
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
b363dc802d
use client fullscreen flag to determine current fullscreen state
...
T834
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
fdc3d29899
bugfix: remove drop handlers from responsive hash on deletion
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
3e0cbdc441
bugfix: efm dnd to external windows
...
deleting the drag at this point deletes the window which owns the current selection, guaranteeing that the operation will fail
T797
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
d86051ff82
bugfix: multiple drop handlers using same window no longer overwrite each other
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
2dac967604
shadow checks for overrides only need to check for shaped and comp match
...
T833
2014-01-22 22:14:33 -05:00
Mike Blumenkrantz
db7a1f6df3
force prerendering for internal clients
...
we can assume that these are always going to be ready for drawing immediately, and sometimes X fucks up the damages so it's best to go with the full frame from the beginning
2014-01-22 22:14:33 -05:00
Carsten Haitzler
15abb86bea
efm - emit signal to icon when rename starts/ends
...
this, along with theme updates in elm should fix T799
2014-01-22 18:31:49 +09:00
Carsten Haitzler
6a39d27a51
fix connman check by not failing al the time on owner check
...
fixes T804
2014-01-22 17:50:57 +09:00
Carsten Haitzler
8285b8ea6b
shot - check zone null before using
2014-01-22 12:27:00 +09:00
Mike Blumenkrantz
a8d3a0e57f
emit backlight changed event for X backlight events
2014-01-21 17:26:21 -05:00
Mike Blumenkrantz
3ccdd6ab32
bugfix: backlight double comparison now less likely to fail
2014-01-21 17:08:49 -05:00
Mike Blumenkrantz
0f938c9b78
do Xrandr backlight updates in place upon recieving events instead of looping all outputs
2014-01-21 17:07:21 -05:00
Mike Blumenkrantz
84a3eb7af0
make current backlight value internally exported
...
display system backends should be handling this in the event of changes, and being able to set it directly makes that easier
2014-01-21 17:06:27 -05:00
Mike Blumenkrantz
215c0409e0
feature: handle xrandr backlight using a single, accurate handler
...
there's an event from ecore-x which tells us when this property has changed, which means we no longer have to be constantly checking to see if other apps have changed it
2014-01-21 16:48:09 -05:00
Mike Blumenkrantz
d2f9a2efbf
cleanup frame icon upon failing to use it
2014-01-21 09:32:02 -05:00
Carsten Haitzler
9b4b003c40
make example/syntac for app action useful.
2014-01-21 21:30:17 +09:00
Carsten Haitzler
b399b6a9ca
e shot - allow params to share/save now (also specify quality and screen)
2014-01-21 21:21:13 +09:00
Mike Blumenkrantz
bec5d1fe51
backlight update loop cleanups
...
* do null check before adding to device list
* use name length from ecore_x_randr_output_name_get()
2014-01-20 22:21:40 -05:00
Mike Blumenkrantz
3addb45e79
fix fullscreen client place/adjust
2014-01-20 21:33:11 -05:00
Mike Blumenkrantz
0be9442140
only call ecore_x_randr_output_backlight_available() once in backlight
2014-01-20 21:30:38 -05:00
Mike Blumenkrantz
a310de50c8
block backlight updating during animation
...
updating backlight in this context causes my backlight to never return to normal levels, and blocking it doesn't seem to be unreasonable here
2014-01-20 21:05:51 -05:00
Mike Blumenkrantz
3ae9e394ec
add back first_draw_delay timer for X clients
...
this is a safety timer to handle the case of "what happens if a new client only ever sends one damage during its startup"
2014-01-20 19:03:50 -05:00
Mike Blumenkrantz
69d3e02638
ignore first damage for X clients
...
when not dealing with a re_manage client (persisting from previous E instance), we're almost definitely going to get multiple full-window damages as a new client starts up. the first damage USUALLY results in a garbage render, so ignoring it makes the first frame become actual window content (good!) or a transparent rect until the client finishes drawing (not good!), which is at least an improvement over showing random pixels
2014-01-20 19:01:04 -05:00
Mike Blumenkrantz
30d6b2e196
remove the black frame render fallback
...
I think the timing on resizes is perfect now, so we should never need to see this
2014-01-20 18:58:53 -05:00
Mike Blumenkrantz
097331864a
clear non-pending updates on resize
...
this smooths out resizes a barely noticeable amount since these updates (the pending-pending updates) are no longer relevant
2014-01-20 18:58:26 -05:00
Mike Blumenkrantz
4615db497c
remove damage from show interceptor
...
this is a bit broken since an actual damage might not have occurred yet. moderately sure I added it for testing at one point and then never removed it
2014-01-20 18:56:37 -05:00
Mike Blumenkrantz
e148451d4f
check for pending render updates before doing a black frame
2014-01-20 17:34:12 -05:00
Mike Blumenkrantz
36edca0773
remove unnecessary damage from resize
2014-01-20 17:28:16 -05:00
Mike Blumenkrantz
d0713cddb4
fix shading animations
...
yeeeep it's that simple. should probably move these to edje at some point
2014-01-20 17:27:31 -05:00
Mike Blumenkrantz
52bb6e38e3
unify and improve winlist directional focusing
2014-01-20 16:58:29 -05:00
Mike Blumenkrantz
b4a9c55115
attempt to revert focus when iconifying a client
2014-01-20 16:43:47 -05:00
Mike Blumenkrantz
6ef655d2dd
feature: blanking options for wakeup on events (urgent + notify)
2014-01-20 16:08:14 -05:00
Mike Blumenkrantz
aefaaea57b
unify client borderless checks to use util function
2014-01-20 15:12:40 -05:00
Mike Blumenkrantz
8fe70c3d2a
fix client geometry when toggling borderless state
2014-01-20 15:12:23 -05:00
Mike Blumenkrantz
ed51fa2b96
add client util function for detecting borderless state
2014-01-20 15:11:53 -05:00
Mike Blumenkrantz
02f6dcdf2a
set a layer for syscon popup
...
still working on keyboard....
T818
2014-01-20 11:18:47 -05:00
Carsten Haitzler
cd431350a5
e sys - if logout has trouble - resume so user can see dialog
2014-01-20 15:23:30 +09:00
Mike Blumenkrantz
b2a56b63b5
packagekit module description gets an upgrade
...
also because yet another person doesn't like helping me with news entries:
feature: packagekit module for package manager integration
2014-01-20 00:10:05 -05:00
Mike Blumenkrantz
d42b24632e
also update frame immediately during unmaximize
2014-01-20 00:08:25 -05:00
Mike Blumenkrantz
ef2a96eb82
apply frame changes before entering/exiting fullscreen
...
T816
2014-01-20 00:03:51 -05:00
Mike Blumenkrantz
bcee2e34aa
break out client frame setting into helper function
2014-01-20 00:00:45 -05:00
Cedric BAIL
04f7b59e11
e: call the right function without depending on ld to figure it out (mostly wrongly).
...
As a side note, using an EAPI function from within a module is a call for disaster.
Their is no guarantee from ld that it will be the current top open .so, actually it
is most likely not going to be the case. So it will do a search for the symbol in the
current stack of open .so and the first one to match will be chosen.
I do think it basically prove that current model of Enlightenment module is fairly
borken and error prone. Hope to have time to fix that, but it will involve completely
breaking the API and ABI compatibility of E module.
2014-01-20 13:01:31 +09:00
Carsten Haitzler
b48dc88f94
modules - add packagekit to the whitelist of ok modules
2014-01-20 12:04:19 +09:00
Davide Andreoli
7d406706da
music-control: fix popup autoclose
2014-01-19 15:03:31 +01:00
Davide Andreoli
28b4375576
PackageKit: EINA_UNUSED++ to warnings--
2014-01-19 14:55:53 +01:00
Davide Andreoli
4c6326e055
PackageKit: fix popup autoclose
2014-01-19 14:50:32 +01:00
Davide Andreoli
d5a89ca177
Put the packagekit module inside the E tree.
...
The now old emodules/pacakgekit will be removed soon.
Note that you need to update elm as the theme is there.
2014-01-19 11:58:54 +01:00
Mike Blumenkrantz
ec8424fb16
remove duplicate shaped client handling
2014-01-19 03:33:40 -05:00
Mike Blumenkrantz
8ce457889e
ensure withdrawn state is always set
...
this is what was breaking shows on things like yakuake
2014-01-19 03:33:39 -05:00
Mike Blumenkrantz
32d4c2f2b9
fix X shape exporting when bounding box changes
...
this fixes rendering on shaped clients like yakuake and makes them render even more accurately than E18
PS. I hate shape extension.
2014-01-19 03:33:30 -05:00
Mike Blumenkrantz
cbfee4f53e
uncomment debug function
2014-01-19 00:45:41 -05:00
Mike Blumenkrantz
2e9c1e383d
don't add/reset ibar menu hide timer when menu is active
...
T815
2014-01-18 15:19:42 -05:00
Mike Blumenkrantz
645a3f0b60
correctly fix conf_randr warnings
2014-01-18 15:16:46 -05:00
Mike Blumenkrantz
a1d8fd1b6a
revert previous "removed" warnings" commit chunk which added more warnings
2014-01-18 15:15:25 -05:00
Carsten Haitzler
35640f88b4
debug remove - sorry.
2014-01-18 19:57:39 +09:00