Commit Graph

136 Commits

Author SHA1 Message Date
Mike Blumenkrantz 23c4d42e4c rename extremely frustratingly-named E_Screen_Limits enum and members
this came in a patch that I take full responsibility for not adequately reviewing at the time.
the names are confusing and counterintuitive, and it does not properly include the client namespace.
2015-02-18 18:34:29 -05:00
Mike Blumenkrantz 1f21efd911 clamp client size to screen when client limit policy does not allow offscreen
fix T1779
2015-02-18 18:26:16 -05:00
Mike Blumenkrantz 1301453fa4 only reject client mouse out for X clients
not sure this is still applicable since systray xembeds are gone
2015-02-13 16:24:24 -05:00
Mike Blumenkrantz e2b02d07d5 add first YOLO: e_client_focus_stack_set()
to quote ecore docs:

DO NOT use this function unless you are the person God comes to ask for
advice when He has trouble managing the Universe.
2015-02-13 15:46:52 -05:00
Mike Blumenkrantz fdeedef7fe add E_Client->mouse.in for determining mouse-in status 2015-02-12 16:18:46 -05:00
Mike Blumenkrantz e34548db01 remove unused E_Client->input_object
this is a relic from E18
2015-02-12 16:17:50 -05:00
Carsten Haitzler 5d2426cdda e - client list update after adding to client list - fix netwm bug
this fixes T2029
2015-02-06 17:58:08 +09:00
Mike Blumenkrantz 1f608490c8 make comp param in e_client_new unused 2015-02-02 12:42:43 -05:00
Mike Blumenkrantz 30f17c5680 remove no longer necessary setting of changes.size on client resize
this is unnecessary since we resize on every necessary frame anyway
2015-01-22 23:03:38 -05:00
Mike Blumenkrantz 0bac875290 remove some e_comp_get() usage in core comp/client files 2015-01-05 15:39:34 -05:00
Mike Blumenkrantz 922af2c52f remove e_comp_list(), deprecate all related functions for pending removal
there is only one E_Comp which can now be accessed by the e_comp global.

if you're editing a file with some uses of these deprecated functions, replace their usages with appropriate references to this variable

pass -Wno-deprecated-declarations to ignore these warnings during build
2015-01-05 15:39:15 -05:00
Mike Blumenkrantz 9ff9de799a completely block border changes on MWM borderless windows
ref T1963

seriously.
2015-01-03 00:07:48 -05:00
Mike Blumenkrantz f4b8e9563c apply pointer warp effects immediately when instant warping
fix T1462
2014-11-28 15:06:47 -05:00
Mike Blumenkrantz 034c05bc0d remove unnecessary unfocused signal emit on clients 2014-11-22 08:31:59 -05:00
Mike Blumenkrantz ce8a4a2b78 remove ec->changes.internal_props
this should be set directly on the win using evas/elm apis
2014-11-20 15:26:22 -05:00
Mike Blumenkrantz 99589eb5af remove E_Win+e_canvas, convert all internal wins to use elm_win
known issues:

* keybindings for efm windows (eg. ctrl+w) are broken until the rest of the conversion is completed
2014-11-20 15:26:21 -05:00
Mike Blumenkrantz a9495340f6 fix internal window border changing 2014-11-03 14:10:17 -05:00
Chris Michael 81dcfd5f55 declare drag finished callback event if building for wayland-only
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-03 13:43:21 -04:00
Chris Michael 8889a0fc1c remove ifdef's for compiling out e_dnd support in wayland-only mode
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-10-03 13:28:58 -04:00
Mike Blumenkrantz 8814d3ad28 client hooks should not continue to be called if the client has been deleted 2014-09-23 13:17:45 -04:00
Mike Blumenkrantz 3aaa843a4f comp render queue on every client resize instead of on unmaximize 2014-09-23 10:31:04 -04:00
Stefan Schmidt 90daba7645 e_client: _e_client_cb_drag_finished is not used in wayland only mode
Mostly cosmetic as it avoid a warning of an unused function when compiling
for wayland only.
2014-09-19 09:56:10 +02:00
Mike Blumenkrantz a0179c8c59 force render queue on unmaximize if client was fullscreen
fix T1665
2014-09-18 11:52:30 -04:00
Mike Blumenkrantz 0028c7aea3 fix client positioning when initial position is offscreen or size is huge
ref T1571
2014-09-07 12:35:45 -04:00
Seunghun Lee e3f4f0f976 set the maximized valuable of E_Client before calling _e_client_frame_update when unmaximize the client.
Summary: since maximized valuable is used in _e_client_frame_update, so the valuable should be updated.

Test Plan:
(1) run any application.
(2) Maximize the app by key binding.
(3) Change the border type.
(4) Unmaximize the it by key binding.
(5) try to maximize it again, but couldn't

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D1357
2014-08-29 13:46:25 -04:00
Chris Michael c308904e9b fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:36 -04:00
Carsten Haitzler 525b963133 transient client windows - improve behavior
* if unplaced, place centered on transient-for on initial placement
  rather that screen centered
* if transient.move and transient.resize options follow options are on
  make transients floow as intended
2014-08-25 20:56:08 +09:00
Mike Blumenkrantz ef97ac2ff4 don't set frames on override clients 2014-07-29 23:47:53 -04:00
Mike Blumenkrantz 291c1f7cc5 break out client border setting into separate function 2014-07-28 08:42:24 -04:00
Mike Blumenkrantz 0c191c0a47 add missing client type checks 2014-07-14 13:12:32 -04:00
Mike Blumenkrantz 3c7fab995c +e_client_layout_cb_set()
let's keep client hooks for clients.
2014-07-07 13:42:47 -04:00
Mike Blumenkrantz db49d8cc75 Revert "bring back client hook that breaks illume2 + contact"
This reverts commit 36c3d15c0b.
2014-07-07 13:29:59 -04:00
Carsten Haitzler 36c3d15c0b bring back client hook that breaks illume2 + contact
i know it's not that pretty, but this brings back the
E_CLIENT_HOOK_CANVAS_LAYOUT as there just is no viable replacement and
thus breaks 2 modules. this fixes T1402 - we chances are just that
this needs a separate hook point as it isnt a per-client but a
per-comp hook.
2014-07-07 15:11:56 +09:00
Mike Blumenkrantz a5c098ebc5 reenable edges after signal move ends
probably fix T1363 since it is not reproducible
2014-06-25 16:05:26 -04:00
Mike Blumenkrantz ace4a32553 add desk_change client smart callback 2014-06-16 13:35:57 -04:00
Gwanglim Lee 571a696ab8 fix visibility issues related to desktop window profile
Summary:
1. fix window profile change request with wrong x window id
2. refactoring desktop window profile codes to handle e_client_desk_set correctly

Test Plan:
1. enlightenment: Settings Panel -> Screen -> Virtual Desktops -> Check "Use desktop window profile" -> Apply
2. open an efl app on 1st desktop (0-0)
3. set a window remember on efl app window
4. go to 2nd desktop (1-0)
5. open an efl app again. it should be positioned on the previous desktop (0-0)

Reviewers: zmike, raster

CC: cedric

Differential Revision: https://phab.enlightenment.org/D926
2014-06-09 13:30:04 -04:00
Mike Blumenkrantz 5ad876ccad block mouse actions on frame for iconic clients
fix T1069
2014-06-08 12:13:02 -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
Mike Blumenkrantz 3033c550d1 set resize mode for keyboard resizes
fix T1297
2014-05-30 11:02:04 -04:00
Mike Blumenkrantz 483023051e completely redo window profiles
when this feature was added, its behavior was naively set to ignore repeated desk changes. it also was not adequately tested, resulting in a frustratingly large number of bugs.

with these changes, window profiles should no longer be the cause of client visibility being broken as caused by a failure to change desk.

fix TChutney
2014-05-29 16:57:54 -04:00
Mike Blumenkrantz 8f9a07fe3a Revert "stacking - fix stacking after/before fullscreening"
This reverts commit 1f8975d546.

totally wrong. do not externally set this.

this issue, which I cannot reproduce, is almost definitely caused due to the fact that _evas_object_layer_set() effectively calls evas_object_raise() without triggering intercept callbacks
2014-05-29 10:25:30 -04:00
Carsten Haitzler 1f8975d546 stacking - fix stacking after/before fullscreening
input events were broken due to stacking not being maintained for the
actual windows going to/from fullscreen
2014-05-29 21:45:48 +09:00
Mike Blumenkrantz 7bfeef352c block desktop instance matching for clients which have a different pid from the startup id
these should get set more accurately in a followup test

fix T1237
2014-05-09 22:53:53 -04:00
Mike Blumenkrantz adcf979e5c always unset need_unmaximize after maximize
fix T1203
2014-05-07 12:43:29 -04:00
Mike Blumenkrantz 58d8243457 force geometry setting during maximize
fixes adding maximize states
2014-05-07 12:42:41 -04:00
Stefan Schmidt cc23186dbd e_uuid_store: Use libuuid for UUID generation and handling
Instead of rolling our own we go with a known working UUID implementation
here. Dependency should be easy enough as more or less every Linux system
is shipping it anyway.
2014-04-24 11:03:52 +02:00
Carsten Haitzler 8e49b69796 re-order icon finding for border to use the most reliable source first 2014-04-19 09:08:37 +09: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
Tom Hacohen dc05d96659 Fix client border changing issues
The code was zeroing the flag that tells e to change the border after
the callbacks about frame changes. This means that one couldn't change
the border from within those callbacks. This commit fixes this issue.
2014-03-31 15:24:12 +01:00
Mike Blumenkrantz da5bd16e12 greatly improve child dialog placement, FIXME--
fix T980
2014-03-27 19:47:31 -04:00