From: SooChan Lim Date: Fri, 27 Oct 2023 00:21:48 +0000 (+0900) Subject: e_zone: remove REFACTOR_ZONE_DESK feature X-Git-Tag: accepted/tizen/unified/20231030.034814~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F41%2F300541%2F1;p=platform%2Fupstream%2Fenlightenment.git e_zone: remove REFACTOR_ZONE_DESK feature Remove the legacy codes Change-Id: I443bd81e8c4062f7d812135d75be4d9c3d35972b --- diff --git a/src/bin/e.h b/src/bin/e.h index 16d94a8..e58cd80 100644 --- a/src/bin/e.h +++ b/src/bin/e.h @@ -405,9 +405,6 @@ extern E_API Eina_Bool stopping; #define SMARTERRNR() return #define SMARTERR(x) return x -//Enable to build E20 for zone and desk -#define REFACTOR_ZONE_DESK // refactoring for zone and desk - /** * @} */ diff --git a/src/bin/e_client.c b/src/bin/e_client.c index f48d8ff..c6ed520 100644 --- a/src/bin/e_client.c +++ b/src/bin/e_client.c @@ -150,10 +150,6 @@ static Eina_Inlist *_e_client_hooks[] = [E_CLIENT_HOOK_FOCUS_SET] = NULL, [E_CLIENT_HOOK_FOCUS_UNSET] = NULL, [E_CLIENT_HOOK_NEW_CLIENT] = NULL, -//#ifdef REFACTOR_ZONE_DESK -//#else - [E_CLIENT_HOOK_DESK_SET] = NULL, -//#endif [E_CLIENT_HOOK_MOVE_BEGIN] = NULL, [E_CLIENT_HOOK_MOVE_UPDATE] = NULL, [E_CLIENT_HOOK_MOVE_END] = NULL, @@ -355,26 +351,6 @@ _e_client_event_property(E_Client *ec, int prop) ecore_event_add(E_EVENT_CLIENT_PROPERTY, ev, (Ecore_End_Cb)_e_client_event_simple_free, NULL); } -#ifdef REFACTOR_ZONE_DESK -#else -static void -_e_client_event_desk_set_free(void *d EINA_UNUSED, E_Event_Client_Desk_Set *ev) -{ - UNREFD(ev->ec, 4); - e_object_unref(E_OBJECT(ev->ec)); - e_object_unref(E_OBJECT(ev->desk)); - free(ev); -} - -static void -_e_client_event_zone_set_free(void *d EINA_UNUSED, E_Event_Client_Zone_Set *ev) -{ - UNREFD(ev->ec, 5); - e_object_unref(E_OBJECT(ev->ec)); - e_object_unref(E_OBJECT(ev->zone)); - free(ev); -} -#endif //////////////////////////////////////////////// static int @@ -971,15 +947,7 @@ _e_client_free(E_Client *ec) e_comp_object_render_update_del(ec->frame); E_OBJECT(ec)->references++; -#ifdef REFACTOR_ZONE_DESK -#else - if (ec->fullscreen) - { - ec->desk->fullscreen_clients = eina_list_remove(ec->desk->fullscreen_clients, ec); - if (!ec->desk->fullscreen_clients) - e_comp_render_queue(); - } -#endif + if (ec->new_client) e_comp->new_clients--; @@ -1040,10 +1008,6 @@ _e_client_free(E_Client *ec) ELOGF("COMP", "CLIENT FREE", ec); e_uuid_store_entry_del(ec->uuid); -#ifdef REFACTOR_ZONE_DESK -#else - e_desk_client_del(ec->desk, ec); -#endif _e_client_private_finish(ec); free(ec); @@ -1057,10 +1021,6 @@ _e_client_del(E_Client *ec) ec->changed = 0; -#ifdef REFACTOR_ZONE_DESK -#else - e_desk_visible_client_iconified_list_remove(ec->desk, ec); -#endif if (ec == e_comp_object_dim_client_get()) { INF("[DIM] client deleted\n"); @@ -1115,15 +1075,6 @@ _e_client_del(E_Client *ec) ec->base_output_resolution.transform = NULL; E_FREE_FUNC(ec->base_output_resolution.hook_subsurf_create, e_comp_wl_hook_del); -#ifdef REFACTOR_ZONE_DESK -#else - // desk_zoom - e_client_transform_core_remove(ec, ec->desk_zoom.transform); - e_util_transform_del(ec->desk_zoom.transform); - ec->desk_zoom.transform = NULL; - E_FREE_FUNC(ec->desk_zoom.hook_subsurf_create, e_comp_wl_hook_del); -#endif - if (ec->transform_core.transform_list) { E_Util_Transform *transform; @@ -1136,13 +1087,6 @@ _e_client_del(E_Client *ec) ec->transform_core.result.enable = EINA_FALSE; -#ifdef REFACTOR_ZONE_DESK -#else - e_client_desk_area_set(ec, NULL); - e_util_transform_del(ec->desk_area.transform); - ec->desk_area.transform = NULL; -#endif - _e_client_resize_object_del(ec); e_comp_visibility_calculation_set(EINA_TRUE); @@ -2037,33 +1981,6 @@ _e_client_stay_within_canvas_margin(E_Client *ec, int x, int y, int *new_x, int } //////////////////////////////////////////////// -#ifdef REFACTOR_ZONE_DESK -#else -static void -_e_client_zone_update(E_Client *ec) -{ - Eina_List *l; - E_Zone *zone; - - /* still within old zone - leave it there */ - zone = e_comp_zone_find_by_ec(ec); - if (zone && E_INTERSECTS(ec->x, ec->y, ec->w, ec->h, - zone->x, zone->y, zone->w, zone->h)) - return; - - /* find a new zone */ - EINA_LIST_FOREACH(e_comp->zones, l, zone) - { - if (E_INTERSECTS(ec->x, ec->y, ec->w, ec->h, - zone->x, zone->y, zone->w, zone->h)) - { - e_client_zone_set(ec, zone); - return; - } - } -} -#endif -//////////////////////////////////////////////// static void _e_client_transform_core_activate_set(E_Client *ec, Eina_Bool set) @@ -2137,10 +2054,6 @@ _e_client_cb_evas_move(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UN _e_client_event_simple(ec, E_EVENT_CLIENT_MOVE); -#ifdef REFACTOR_ZONE_DESK -#else - _e_client_zone_update(ec); -#endif evas_object_geometry_get(ec->frame, &x, &y, NULL, NULL); if ((e_config->transient.move) && (ec->transients)) { @@ -2188,10 +2101,6 @@ _e_client_cb_evas_resize(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_ _e_client_event_simple(ec, E_EVENT_CLIENT_RESIZE); -#ifdef REFACTOR_ZONE_DESK -#else - _e_client_zone_update(ec); -#endif evas_object_geometry_get(ec->frame, &x, &y, &w, &h); if ((e_config->transient.resize) && (ec->transients)) { @@ -2295,146 +2204,6 @@ _e_client_cb_evas_restack(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA } //////////////////////////////////////////////// - -#ifdef REFACTOR_ZONE_DESK -#else -static void -_e_client_maximize(E_Client *ec, E_Maximize max) -{ - int x1, yy1, x2, y2; - int zx, zy, zw, zh; - int desk_x, desk_y, desk_w, desk_h; - Eina_Bool override = ec->maximize_override; - E_Zone *zone; - - zx = zy = zw = zh = 0; - ec->maximize_override = 1; - - zone = e_comp_zone_find_by_ec(ec); - if (!zone) return; - - if (ec->desk_area.enable && ec->desk_area.desk_area) - { - desk_x = ec->desk_area.desk_area->x; - desk_y = ec->desk_area.desk_area->y; - desk_w = ec->desk_area.desk_area->w; - desk_h = ec->desk_area.desk_area->h; - } - else - { - desk_x = ec->desk->geom.x; - desk_y = ec->desk->geom.y; - desk_w = ec->desk->geom.w; - desk_h = ec->desk->geom.h; - } - - switch (max & E_MAXIMIZE_TYPE) - { - case E_MAXIMIZE_NONE: - /* Ignore */ - break; - - case E_MAXIMIZE_FULLSCREEN: - case E_MAXIMIZE_FILL: - if (ec->base_output_resolution.use) - { - zx = desk_x; - zy = desk_y; - zw = ec->base_output_resolution.w; - zh = ec->base_output_resolution.h; - } - else - { - e_zone_desk_useful_geometry_get(zone, ec->desk, &zx, &zy, &zw, &zh, EINA_FALSE); - } - - switch (max & E_MAXIMIZE_DIRECTION) - { - case E_MAXIMIZE_BOTH: - e_client_maximized_geometry_set(ec, zx, zy, zw, zh); - break; - - case E_MAXIMIZE_VERTICAL: - e_client_maximized_geometry_set(ec, ec->x, zy, ec->w, zh); - break; - - case E_MAXIMIZE_HORIZONTAL: - e_client_maximized_geometry_set(ec, zx, ec->y, zw, ec->h); - break; - - case E_MAXIMIZE_LEFT: - e_client_maximized_geometry_set(ec, zx, zy, zw / 2, zh); - break; - - case E_MAXIMIZE_RIGHT: - e_client_maximized_geometry_set(ec, zx + zw / 2, zy, zw / 2, zh); - break; - } - break; - - case E_MAXIMIZE_SMART: - case E_MAXIMIZE_EXPAND: - if (ec->desk->visible) - { - // base_output_resolution - if (ec->base_output_resolution.use) - { - zx = desk_x; - zy = desk_y; - zw = ec->base_output_resolution.w; - zh = ec->base_output_resolution.h; - } - else - { - e_zone_desk_useful_geometry_get(zone, ec->desk, &zx, &zy, &zw, &zh, EINA_TRUE); - } - } - else - { - x1 = desk_x; - yy1 = desk_y; - x2 = desk_x + desk_w; - y2 = desk_y + desk_h; - e_maximize_client_shelf_fill(ec, &x1, &yy1, &x2, &y2, max); - zx = x1, zy = yy1; - zw = x2 - x1; - zh = y2 - yy1; - } - - evas_object_smart_callback_call(ec->frame, "maximize", NULL); - - switch (max & E_MAXIMIZE_DIRECTION) - { - case E_MAXIMIZE_BOTH: - e_client_maximized_geometry_set(ec, zx, zy, zw, zh); - break; - - case E_MAXIMIZE_VERTICAL: - e_client_maximized_geometry_set(ec, ec->x, zy, ec->w, zh); - break; - - case E_MAXIMIZE_HORIZONTAL: - e_client_maximized_geometry_set(ec, zx, ec->y, zw, ec->h); - break; - - case E_MAXIMIZE_LEFT: - e_client_maximized_geometry_set(ec, zx, zy, zw / 2, zh); - break; - - case E_MAXIMIZE_RIGHT: - e_client_maximized_geometry_set(ec, zx + zw / 2, zy, zw / 2, zh); - break; - } - - break; - } - - if (ec->maximize_override) - ec->maximize_override = override; -} -#endif - -//////////////////////////////////////////////// static void _e_client_aux_hint_eval(E_Client *ec) { @@ -2465,98 +2234,12 @@ _e_client_aux_hint_eval(E_Client *ec) } } -#ifdef REFACTOR_ZONE_DESK -#else -static void -_e_client_apply_auto_placement(E_Client *ec) -{ - Eina_List *skiplist = NULL; - int new_x, new_y, t = 0; - int type; - E_Client *parent_ec; - E_Zone *zone; - - // intercept auto placement policy - if (!_e_client_intercept_hook_call(E_CLIENT_INTERCEPT_HOOK_AUTO_PLACEMENT, ec)) - { - ELOGF("POL", "Intercepted auto_placement policy.", ec); - return; - } - - int zx = 0, zy = 0, zw = 0, zh = 0; - - zone = e_comp_zone_find_by_ec(ec); - if (!zone) return; - - e_zone_useful_geometry_get(zone, &zx, &zy, &zw, &zh); - - unsigned int seed = (unsigned int)time(NULL); - - if (zw > ec->w) - new_x = zx + (rand_r(&seed) % (zw - ec->w)); - else - new_x = zx; - if (zh > ec->h) - new_y = zy + (rand_r(&seed) % (zh - ec->h)); - else - new_y = zy; - - e_comp_object_frame_geometry_get(ec->frame, NULL, NULL, &t, NULL); - - parent_ec = ec->parent; - if (parent_ec) - { - type = 1; - new_x = parent_ec->x; - new_y = parent_ec->y; - } - else if ((e_config->window_placement_policy == E_WINDOW_PLACEMENT_SMART) || (e_config->window_placement_policy == E_WINDOW_PLACEMENT_ANTIGADGET)) - { - type = 2; - skiplist = eina_list_append(skiplist, ec); - if (ec->desk) - e_place_desk_region_smart(ec->desk, skiplist, - ec->x, ec->y, ec->w, ec->h, - &new_x, &new_y); - else - e_place_zone_region_smart(zone, skiplist, - ec->x, ec->y, ec->w, ec->h, - &new_x, &new_y); - - eina_list_free(skiplist); - } - else if (e_config->window_placement_policy == E_WINDOW_PLACEMENT_MANUAL) - { - type = 3; - e_place_zone_manual(zone, ec->w, t, &new_x, &new_y); - } - else - { - type = 0; - e_place_zone_cursor(zone, ec->x, ec->y, ec->w, ec->h, - t, &new_x, &new_y); - } - - ELOGF("POL", "Apply auto placement (type:%d). (%d,%d) -> (%d,%d).", ec, type, ec->x, ec->y, new_x, new_y); - e_client_pos_set(ec, new_x, new_y); - ec->changes.pos = 1; - ec->placed = 1; - ec->pre_cb.x = ec->x; ec->pre_cb.y = ec->y; -} -#endif - static void _e_client_eval(E_Client *ec) { int send_event = 1; unsigned int prop = 0; -#ifdef REFACTOR_ZONE_DESK int tx, ty; -#else - E_Zone *zone; - int tx, ty, tw, th; - int nw, nh; -#endif if (e_object_is_del(E_OBJECT(ec))) { @@ -2574,7 +2257,6 @@ _e_client_eval(E_Client *ec) return; } -#ifdef REFACTOR_ZONE_DESK if ((ec->new_client) && (!e_client_util_ignored_get(ec))) { wl_signal_emit_mutable(&PRI(ec)->events.eval_post_new_client, NULL); @@ -2584,137 +2266,6 @@ _e_client_eval(E_Client *ec) return; } } -#else - zone = e_comp_zone_find_by_ec(ec); - if ((ec->new_client) && (!e_client_util_ignored_get(ec)) && (zone)) - { - int zx = 0, zy = 0, zw = 0, zh = 0; - - e_zone_useful_geometry_get(zone, &zx, &zy, &zw, &zh); - /* enforce wm size hints for initial sizing */ - if (e_config->screen_limits == E_CLIENT_OFFSCREEN_LIMIT_ALLOW_NONE) - { - tw = MIN(ec->w, zone->w); - th = MIN(ec->h, zone->h); - e_client_size_set(ec, tw, th); - } - - nw = ec->w; - nh = ec->h; - e_client_resize_limit(ec, &nw, &nh); - e_client_size_set(ec, nw, nh); - - if (ec->re_manage) - { - int x = ec->x, y = ec->y; - if (ec->x) e_comp_object_frame_xy_adjust(ec->frame, ec->x, 0, &ec->x, NULL); - if (ec->y) e_comp_object_frame_xy_adjust(ec->frame, 0, ec->y, NULL, &ec->y); - if ((x != ec->x) || (y != ec->y)) ec->changes.pos = 1; - ec->placed = 1; - ec->pre_cb.x = ec->x; ec->pre_cb.y = ec->y; - } - if (!ec->placed) - { - if (ec->dialog) - { - tx = zx + ((zw - ec->w) / 2); - ty = zy + ((zh - ec->h) / 2); - e_client_pos_set(ec, tx, ty); - - ec->changes.pos = 1; - ec->placed = 1; - ec->pre_cb.x = ec->x; ec->pre_cb.y = ec->y; - } - } - - E_Appinfo *eai; - eai = e_appinfo_find_with_pid(ec->netwm.pid); - if (!eai) - { - if (!ec->placed) - _e_client_apply_auto_placement(ec); - } - else - { - if (e_appinfo_auto_placement_get(eai)) - _e_client_apply_auto_placement(ec); - } - - /* Recreate state */ - if (ec->e.state.centered) - { - tx = zx + (zw - ec->w) / 2; - ty = zy + (zh - ec->h) / 2; - e_client_pos_set(ec, tx, ty); - ec->changes.pos = 1; - } - - /* if the explicit geometry request asks for the app to be - * in another zone - well move it there */ - { - E_Zone *zone1 = NULL; - int x, y; - - x = MAX(ec->x, 0); - y = MAX(ec->y, 0); - if ((!ec->re_manage) && ((ec->x != x) || (ec->y != y))) - zone1 = e_comp_zone_xy_get(x, y); - - if (!zone1) - { - zone1 = e_comp_zone_xy_get(ec->x + (ec->w / 2), ec->y + (ec->h / 2)); - if (zone1) - { - E_Zone *z2 = e_comp_zone_xy_get(ec->x, ec->y); - - if (z2 && (z2 != zone1)) - { - size_t psz = 0; - E_Zone *zf = z2; - Eina_List *l; - - EINA_LIST_FOREACH(e_comp->zones, l, z2) - { - int w, h; - - x = ec->x, y = ec->y, w = ec->w, h = ec->h; - E_RECTS_CLIP_TO_RECT(x, y, w, h, z2->x, z2->y, z2->w, z2->h); - if (w * h == z2->w * z2->h) - { - /* client fully covering zone */ - zf = z2; - break; - } - if ((unsigned)(w * h) > psz) - { - psz = w * h; - zf = z2; - } - } - zone = zf; - } - } - } - if (!zone1) - zone1 = e_comp_zone_xy_get(ec->x, ec->y); - if (!zone1) - zone1 = e_comp_zone_xy_get(ec->x + ec->w - 1, ec->y); - if (!zone1) - zone1 = e_comp_zone_xy_get(ec->x + ec->w - 1, ec->y + ec->h - 1); - if (!zone1) - zone1 = e_comp_zone_xy_get(ec->x, ec->y + ec->h - 1); - if ((zone1) && (zone1 != zone)) - e_client_zone_set(ec, zone1); - } - } - - wl_signal_emit_mutable(&PRI(ec)->events.eval_post_new_client, NULL); - if (!_e_client_hook_call(E_CLIENT_HOOK_EVAL_POST_NEW_CLIENT, ec)) - { - TRACE_DS_END(); - return; - } -#endif /* effect changes to the window border itself */ if ((ec->changes.shading)) @@ -2875,20 +2426,13 @@ _e_client_eval(E_Client *ec) TRACE_DS_END(); } -#ifdef REFACTOR_ZONE_DESK EINTERN void e_client_frame_update(E_Client *ec) -#else -static void -_e_client_frame_update(E_Client *ec) -#endif { const char *bordername; -#ifdef REFACTOR_ZONE_DESK EINA_SAFETY_ON_NULL_RETURN(ec); if (e_object_is_del(E_OBJECT(ec))) return; -#endif ec->border.changed = 0; if (!e_comp_object_frame_allowed(ec->frame)) return; @@ -3796,15 +3340,8 @@ e_client_new(E_Pixmap *cp, int first_map, int internal) evas_object_smart_callback_add(ec->frame, "shade_done", _e_client_cb_evas_shade_done, ec); } -#ifdef REFACTOR_ZONE_DESK -#else - if (ec->override) - _e_client_zone_update(ec); - else - e_client_desk_set(ec, e_desk_current_get(e_zone_current_get())); -#endif - wl_signal_emit_mutable(&PRI(ec)->events.new_client_post, NULL); + #ifdef _F_E_CLIENT_NEW_CLIENT_POST_HOOK_ _e_client_hook_call(E_CLIENT_HOOK_NEW_CLIENT_POST, ec); #endif @@ -3827,100 +3364,6 @@ E_API Eina_Bool e_client_is_internal(E_Client *ec) return ec->internal; } -#ifdef REFACTOR_ZONE_DESK -#else -EINTERN void -e_client_desk_set(E_Client *ec, E_Desk *desk) -{ - E_Event_Client_Desk_Set *ev; - E_Desk *old_desk; - E_Zone *zone; - - E_OBJECT_CHECK(ec); - E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); - E_OBJECT_CHECK(desk); - E_OBJECT_TYPE_CHECK(desk, E_DESK_TYPE); - if (e_desk_has_ec(desk, ec)) return; - - if (ec->fullscreen) - { - ec->desk->fullscreen_clients = eina_list_remove(ec->desk->fullscreen_clients, ec); - desk->fullscreen_clients = eina_list_append(desk->fullscreen_clients, ec); - } - old_desk = ec->desk; - if (old_desk) - e_desk_client_del(old_desk, ec); - ec->desk = desk; - e_desk_client_add(desk, ec); - if (!ec->new_client) - { - if (ec->frame) - { - e_comp_object_effect_unclip(ec->frame); - e_comp_object_effect_set(ec->frame, NULL); - } - if (desk->visible || ec->sticky) - { - if ((!ec->hidden) && (!ec->iconic)) - evas_object_show(ec->frame); - } - else - { - ec->hidden = 1; - evas_object_hide(ec->frame); - } - } - e_client_comp_hidden_set(ec, (!desk->visible) && (!ec->sticky)); - e_client_zone_set(ec, desk->zone); - - if (old_desk) - { - ev = E_NEW(E_Event_Client_Desk_Set, 1); - if (ev) - { - ev->ec = ec; - UNREFD(ec, 4); - e_object_ref(E_OBJECT(ec)); - ev->desk = old_desk; - e_object_ref(E_OBJECT(old_desk)); - ecore_event_add(E_EVENT_CLIENT_DESK_SET, ev, (Ecore_End_Cb)_e_client_event_desk_set_free, NULL); - } - - zone = e_comp_zone_find_by_ec(ec); - if (old_desk->zone == zone) - { - e_client_res_change_geometry_save(ec); - e_client_res_change_geometry_restore(ec); - ec->pre_res_change.valid = 0; - } - } - - if (e_config->transient.desktop) - { - E_Client *child; - const Eina_List *l; - - EINA_LIST_FOREACH(ec->transients, l, child) - e_client_desk_set(child, ec->desk); - } - - _e_client_hook_call(E_CLIENT_HOOK_DESK_SET, ec); - evas_object_smart_callback_call(ec->frame, "desk_change", ec); - - if (ec->desk->desk_area.enable) - { - if (!ec->desk_area.desk_area) - { - E_Desk_Area *eda; - eda = e_desk_desk_area_base_get(ec->desk); - e_client_desk_area_set(ec, eda); - } - - e_client_desk_area_enable_set(ec, EINA_TRUE); - } -} -#endif - EINTERN void e_client_desk_iconify_skip_set(E_Client *ec, Eina_Bool skip) { @@ -4201,64 +3644,6 @@ e_client_res_change_geometry_restore(E_Client *ec) memcpy(&ec->pre_res_change, &pre_res_change, sizeof(pre_res_change)); } -#ifdef REFACTOR_ZONE_DESK -#else -EINTERN void -e_client_zone_set(E_Client *ec, E_Zone *zone) -{ - E_Event_Client_Zone_Set *ev; - - E_OBJECT_CHECK(ec); - E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); - E_OBJECT_CHECK(zone); - E_OBJECT_TYPE_CHECK(zone, E_ZONE_TYPE); - if (e_zone_has_ec(zone, ec)) return; - - ev = E_NEW(E_Event_Client_Zone_Set, 1); - if (!ev) return; - - /* if the window does not lie in the new zone, move it so that it does */ - if (!E_INTERSECTS(ec->x, ec->y, ec->w, ec->h, zone->x, zone->y, zone->w, zone->h)) - { - int x, y; - - x = ec->x, y = ec->y; - - /* keep window from hanging off bottom and left */ - if (x + ec->w > zone->x + zone->w) x += (zone->x + zone->w) - (x + ec->w); - if (y + ec->h > zone->y + zone->h) y += (zone->y + zone->h) - (y + ec->h); - - /* make sure to and left are on screen (if the window is larger than the zone, it will hang off the bottom / right) */ - if (x < zone->x) x = zone->x; - if (y < zone->y) y = zone->y; - - if (!E_INTERSECTS(x, y, ec->w, ec->h, zone->x, zone->y, zone->w, zone->h)) - { - /* still not in zone at all, so just move it to closest edge */ - if (x < zone->x) x = zone->x; - if (x >= zone->x + zone->w) x = zone->x + zone->w - ec->w; - if (y < zone->y) y = zone->y; - if (y >= zone->y + zone->h) y = zone->y + zone->h - ec->h; - } - evas_object_move(ec->frame, x, y); - } - - // TODO: NEED TO DELETE LINE BELOW - ec->zone = zone; - - ev->ec = ec; - REFD(ec, 5); - e_object_ref(E_OBJECT(ec)); - ev->zone = zone; - e_object_ref(E_OBJECT(zone)); - - ecore_event_add(E_EVENT_CLIENT_ZONE_SET, ev, (Ecore_End_Cb)_e_client_event_zone_set_free, NULL); - - // TODO: change all use of e_client_zone_set() to e_zone_client_add() - e_zone_client_add(zone, ec); -} -#endif - EINTERN void e_client_pos_set(E_Client *ec, int x, int y) { @@ -4672,14 +4057,6 @@ e_client_focused_set(E_Client *ec) // send the client_focuse_in event _e_client_event_simple(ec, E_EVENT_CLIENT_FOCUS_IN); -#ifdef REFACTOR_ZONE_DESK -#else - // TODO: This is not for focus, but for Window Placement policy. - // Move this code to the better place. - if (ec->sticky && ec->desk && (!ec->desk->visible)) - e_client_desk_set(ec, e_desk_current_get(zone)); -#endif - TRACE_DS_END(); } @@ -4705,26 +4082,6 @@ e_client_activate(E_Client *ec) ec->exp_iconify.by_client = 0; e_client_iconified_type_set(ec, E_ICONIFIED_TYPE_NONE); -#ifdef REFACTOR_ZONE_DESK -#else - if ((!ec->iconic) && (!ec->sticky)) - { - e_desk_show(ec->desk); - } - if (!ec->lock_user_stacking) - e_client_raise(ec); - if (ec->shaded || ec->shading) - e_client_unshade(ec, ec->shade_dir); -#endif - -#ifdef REFACTOR_ZONE_DESK -#else - if (!e_client_desk_iconify_skip_get(ec)) - { - e_desk_visible_client_iconified_list_remove_all(ec->desk); - } -#endif - wl_signal_emit_mutable(&PRI(ec)->events.activate_done, NULL); _e_client_hook_call(E_CLIENT_HOOK_ACTIVATE_DONE, ec); @@ -4842,7 +4199,6 @@ e_client_maximize_update(E_Client *ec) E_API void e_client_maximize(E_Client *ec, E_Maximize max) { -#ifdef REFACTOR_ZONE_DESK E_OBJECT_CHECK(ec); E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); @@ -4873,78 +4229,11 @@ e_client_maximize(E_Client *ec, E_Maximize max) ec->changes.need_unmaximize = 0; evas_object_smart_callback_call(ec->frame, "maximize_done", NULL); -#else - int desk_x, desk_y; - E_Zone *zone; - - E_OBJECT_CHECK(ec); - E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); - - zone = e_comp_zone_find_by_ec(ec); - if (!zone) return; - if (!(max & E_MAXIMIZE_DIRECTION)) max |= E_MAXIMIZE_BOTH; - - if ((ec->shaded) || (ec->shading)) return; - - if ((ec->maximized & E_MAXIMIZE_DIRECTION) == (max & E_MAXIMIZE_DIRECTION)) - { - if ((ec->maximized & E_MAXIMIZE_TYPE) == (max & E_MAXIMIZE_TYPE)) - return; - } - - if (ec->new_client) - { - ec->changes.need_maximize = 1; - ec->maximized &= ~E_MAXIMIZE_TYPE; - ec->maximized |= max; - EC_CHANGED(ec); - return; - } - - if (ec->desk_area.enable && ec->desk_area.desk_area) - { - desk_x = ec->desk_area.desk_area->x; - desk_y = ec->desk_area.desk_area->y; - } - else - { - desk_x = ec->desk->geom.x; - desk_y = ec->desk->geom.y; - } - - evas_object_smart_callback_call(ec->frame, "maximize_pre", NULL); - - if (ec->fullscreen) - e_client_unfullscreen(ec); - ec->pre_res_change.valid = 0; - if (!(ec->maximized & E_MAXIMIZE_HORIZONTAL)) - { - /* Horizontal hasn't been set */ - ec->saved.x = ec->client.x - desk_x; - ec->saved.w = ec->client.w; - } - if (!(ec->maximized & E_MAXIMIZE_VERTICAL)) - { - /* Vertical hasn't been set */ - ec->saved.y = ec->client.y - desk_y; - ec->saved.h = ec->client.h; - } - - ec->saved.zone = zone->num; - - _e_client_maximize(ec, max); - - ec->maximized = max; - ec->changes.need_unmaximize = 0; - - evas_object_smart_callback_call(ec->frame, "maximize_done", NULL); -#endif } E_API void e_client_unmaximize(E_Client *ec, E_Maximize max) { -#ifdef REFACTOR_ZONE_DESK E_OBJECT_CHECK(ec); E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); @@ -4974,137 +4263,11 @@ e_client_unmaximize(E_Client *ec, E_Maximize max) evas_object_smart_callback_call(ec->frame, "unmaximize_done", NULL); ec->changes.need_unmaximize = 0; -#else - E_Zone *zone; - - E_OBJECT_CHECK(ec); - E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); - - zone = e_comp_zone_find_by_ec(ec); - if (!zone) return; - if (!(max & E_MAXIMIZE_DIRECTION)) - { - CRI("BUG: Unmaximize call without direction!"); - return; - } - if (ec->new_client) - { - ec->changes.need_unmaximize = 1; - EC_CHANGED(ec); - return; - } - - if ((ec->shaded) || (ec->shading)) return; - - /* Remove directions not used */ - max &= (ec->maximized & E_MAXIMIZE_DIRECTION); - /* Can only remove existing maximization directions */ - if (!max) return; - - evas_object_smart_callback_call(ec->frame, "unmaximize_pre", NULL); - - if (ec->maximized & E_MAXIMIZE_TYPE) - { - ec->pre_res_change.valid = 0; - ec->changes.need_maximize = 0; - - if ((ec->maximized & E_MAXIMIZE_TYPE) == E_MAXIMIZE_FULLSCREEN) - { - E_Maximize tmp_max = ec->maximized; - - //un-set maximized state for updating frame. - ec->maximized = E_MAXIMIZE_NONE; - _e_client_frame_update(ec); - // re-set maximized state for unmaximize smart callback. - ec->maximized = tmp_max; - evas_object_smart_callback_call(ec->frame, "unfullscreen", NULL); - // un-set maximized state. - ec->maximized = E_MAXIMIZE_NONE; - e_client_util_move_resize_without_frame(ec, - ec->saved.x + zone->x, - ec->saved.y + zone->y, - ec->saved.w, ec->saved.h); - ec->saved.x = ec->saved.y = ec->saved.w = ec->saved.h = 0; - } - else - { - int w, h, x, y; - Eina_Bool horiz = EINA_FALSE, vert = EINA_FALSE; - - w = ec->client.w; - h = ec->client.h; - x = ec->client.x; - y = ec->client.y; - - if (max & E_MAXIMIZE_VERTICAL) - { - /* Remove vertical */ - h = ec->saved.h; - vert = EINA_TRUE; - y = ec->saved.y + zone->y; - if ((max & E_MAXIMIZE_VERTICAL) == E_MAXIMIZE_VERTICAL) - { - ec->maximized &= ~E_MAXIMIZE_VERTICAL; - ec->maximized &= ~E_MAXIMIZE_LEFT; - ec->maximized &= ~E_MAXIMIZE_RIGHT; - } - if ((max & E_MAXIMIZE_LEFT) == E_MAXIMIZE_LEFT) - ec->maximized &= ~E_MAXIMIZE_LEFT; - if ((max & E_MAXIMIZE_RIGHT) == E_MAXIMIZE_RIGHT) - ec->maximized &= ~E_MAXIMIZE_RIGHT; - } - if (max & E_MAXIMIZE_HORIZONTAL) - { - /* Remove horizontal */ - w = ec->saved.w; - x = ec->saved.x + zone->x; - horiz = EINA_TRUE; - ec->maximized &= ~E_MAXIMIZE_HORIZONTAL; - } - - if (!(ec->maximized & E_MAXIMIZE_DIRECTION)) - { - ec->maximized = E_MAXIMIZE_NONE; - _e_client_frame_update(ec); - evas_object_smart_callback_call(ec->frame, "unmaximize", NULL); - e_client_resize_limit(ec, &w, &h); - e_client_pos_set(ec, x, y); - if ((ec->saved.w != 0) && (ec->saved.h != 0)) - { - if ((w != ec->saved.w) || (h != ec->saved.h)) - { - e_policy_visibility_client_defer_move(ec); - } - } - } - else - { - evas_object_smart_callback_call(ec->frame, "unmaximize", NULL); - e_client_resize_limit(ec, &w, &h); - e_client_pos_set(ec, x, y); - if ((ec->saved.w != 0) && (ec->saved.h != 0)) - { - if ((w != ec->saved.w) || (h != ec->saved.h)) - { - e_policy_visibility_client_defer_move(ec); - } - } - } - if (vert) - ec->saved.h = ec->saved.y = 0; - if (horiz) - ec->saved.w = ec->saved.x = 0; - } - } - evas_object_smart_callback_call(ec->frame, "unmaximize_done", NULL); - ec->changes.need_unmaximize = 0; -#endif } EINTERN void e_client_fullscreen(E_Client *ec, E_Fullscreen policy) { -#ifdef REFACTOR_ZONE_DESK E_OBJECT_CHECK(ec); E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); @@ -5120,88 +4283,11 @@ e_client_fullscreen(E_Client *ec, E_Fullscreen policy) ec->fullscreen_policy = policy; _e_client_event_simple(ec, E_EVENT_CLIENT_FULLSCREEN); -#else - int x, y, w, h; - E_Zone *zone; - - E_OBJECT_CHECK(ec); - E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); - - zone = e_comp_zone_find_by_ec(ec); - if (!zone) return; - - if ((ec->shaded) || (ec->shading) || (ec->fullscreen)) return; - - wl_signal_emit_mutable(&PRI(ec)->events.fullscreen_pre, NULL); - _e_client_hook_call(E_CLIENT_HOOK_FULLSCREEN_PRE, ec); - - if (ec->skip_fullscreen) return; - if (!ec->desk->visible) return; - if (ec->new_client) - { - ec->need_fullscreen = 1; - return; - } - if (e_comp->nocomp_ec && (ec->desk == e_comp->nocomp_ec->desk)) - e_comp->nocomp_ec = ec; - ec->desk->fullscreen_clients = eina_list_append(ec->desk->fullscreen_clients, ec); - ec->pre_res_change.valid = 0; - - if (ec->maximized) - { - x = ec->saved.x; - y = ec->saved.y; - w = ec->saved.w; - h = ec->saved.h; - } - else - { - ec->saved.x = ec->client.x - zone->x; - ec->saved.y = ec->client.y - zone->y; - ec->saved.w = ec->client.w; - ec->saved.h = ec->client.h; - } - ec->saved.maximized = ec->maximized; - ec->saved.zone = zone->num; - - if (ec->maximized) - { - e_client_unmaximize(ec, E_MAXIMIZE_BOTH); - ec->saved.x = x; - ec->saved.y = y; - ec->saved.w = w; - ec->saved.h = h; - } - - ec->saved.layer = ec->layer; - e_client_layer_set(ec, E_LAYER_CLIENT_FULLSCREEN); - - ec->fullscreen = 1; - if ((eina_list_count(e_comp->zones) > 1) || - (policy == E_FULLSCREEN_RESIZE)) - { - e_client_frame_geometry_set(ec, zone->x, zone->y, zone->w, zone->h); - } - else if (policy == E_FULLSCREEN_ZOOM) - { - /* compositor backends! */ - evas_object_smart_callback_call(ec->frame, "fullscreen_zoom", NULL); - } - - if (!e_client_util_ignored_get(ec)) - _e_client_frame_update(ec); - ec->fullscreen_policy = policy; - evas_object_smart_callback_call(ec->frame, "fullscreen", NULL); - - wl_signal_emit_mutable(&PRI(ec)->events.fullscreen, &policy); - _e_client_event_simple(ec, E_EVENT_CLIENT_FULLSCREEN); -#endif } EINTERN void e_client_unfullscreen(E_Client *ec) { -#ifdef REFACTOR_ZONE_DESK E_OBJECT_CHECK(ec); E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); @@ -5214,53 +4300,11 @@ e_client_unfullscreen(E_Client *ec) ec->fullscreen_policy = E_FULLSCREEN_RESIZE; _e_client_event_simple(ec, E_EVENT_CLIENT_UNFULLSCREEN); -#else - E_Zone *zone; - - E_OBJECT_CHECK(ec); - E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); - - zone = e_comp_zone_find_by_ec(ec); - if (!zone) return; - if ((ec->shaded) || (ec->shading)) return; - if (!ec->fullscreen) return; - ec->pre_res_change.valid = 0; - ec->fullscreen = 0; - ec->need_fullscreen = 0; - ec->desk->fullscreen_clients = eina_list_remove(ec->desk->fullscreen_clients, ec); - - if (ec->fullscreen_policy == E_FULLSCREEN_ZOOM) - evas_object_smart_callback_call(ec->frame, "unfullscreen_zoom", NULL); - - if (!e_client_util_ignored_get(ec)) - _e_client_frame_update(ec); - ec->fullscreen_policy = 0; - evas_object_smart_callback_call(ec->frame, "unfullscreen", NULL); - e_client_util_move_resize_without_frame(ec, zone->x + ec->saved.x, - zone->y + ec->saved.y, - ec->saved.w, ec->saved.h); - - if (ec->saved.maximized) - e_client_maximize(ec, (ec->maximize_type & E_MAXIMIZE_TYPE) | - ec->saved.maximized); - - e_client_layer_set(ec, ec->saved.layer); - - _e_client_event_simple(ec, E_EVENT_CLIENT_UNFULLSCREEN); - - if (!ec->desk->fullscreen_clients) - e_comp_render_queue(); -#endif } /////////////////////////////////////// -#ifdef REFACTOR_ZONE_DESK EINTERN Eina_Bool e_client_is_parent_iconify_by_client(E_Client *ec) -#else -static Eina_Bool -_e_client_is_parent_iconify_by_client(E_Client *ec) -#endif { E_Client *parent = ec->parent; if (!parent) return EINA_FALSE; @@ -5303,41 +4347,6 @@ e_client_iconify(E_Client *ec) TRACE_DS_BEGIN(CLIENT:ICONIFY); -#ifdef REFACTOR_ZONE_DESK -#else - e_comp_wl_remote_surface_image_save(ec); - - ec->iconic = 1; - ec->want_focus = ec->take_focus = 0; - ec->changes.visible = 0; - if (ec->fullscreen) - ec->desk->fullscreen_clients = eina_list_remove(ec->desk->fullscreen_clients, ec); - e_client_comp_hidden_set(ec, 1); - evas_object_hide(ec->frame); - e_client_urgent_set(ec, ec->icccm.urgent); - - _e_client_event_simple(ec, E_EVENT_CLIENT_ICONIFY); - - if (e_config->transient.iconify) - { - E_Client *child; - Eina_List *list = eina_list_clone(ec->transients); - - EINA_LIST_FREE(list, child) - { - if ((child->exp_iconify.type != E_ICONIFIED_TYPE_ICONIFY_BY_CLIENT) && - (_e_client_is_parent_iconify_by_client(child))) - { - e_client_iconified_type_set(child, E_ICONIFIED_TYPE_PARENT_ICONIFY_BY_CLIENT); - child->exp_iconify.by_client = 1; - e_policy_client_iconic_state_change_send(child, 1); - } - e_client_iconify(child); - } - } - -#endif - wl_signal_emit_mutable(&PRI(ec)->events.iconify, NULL); _e_client_hook_call(E_CLIENT_HOOK_ICONIFY, ec); @@ -5347,7 +4356,6 @@ e_client_iconify(E_Client *ec) E_API void e_client_uniconify(E_Client *ec) { -#ifdef REFACTOR_ZONE_DESK E_Comp_Wl_Client_Data *cdata; E_OBJECT_CHECK(ec); @@ -5369,118 +4377,6 @@ e_client_uniconify(E_Client *ec) _e_client_hook_call(E_CLIENT_HOOK_UNICONIFY, ec); TRACE_DS_END(); -#else - E_Desk *desk; - Eina_Bool not_raise; - - E_OBJECT_CHECK(ec); - E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); - - E_Comp_Wl_Client_Data *cdata = e_client_cdata_get(ec); - - ELOGF("TZVIS", "UNICONIFY|iconic:%d |argb:%d |not_raise:%d |by_client:%d, type:%d |mapped:%d", - ec, ec->iconic, ec->argb, (unsigned int)ec->exp_iconify.not_raise, - ec->exp_iconify.by_client, ec->exp_iconify.type, - cdata ? cdata->mapped : 0); - - if (ec->shading || (!ec->iconic)) return; - - TRACE_DS_BEGIN(CLIENT:UNICONIFY); - - e_comp_wl_remote_surface_image_save_cancel(ec); - - desk = e_desk_current_get(ec->desk->zone); - e_client_desk_set(ec, desk); - not_raise = ec->exp_iconify.not_raise; - - ec->exp_iconify.by_client = 0; - e_client_iconified_type_set(ec, E_ICONIFIED_TYPE_NONE); - - if (e_config->transient.iconify) - { - E_Client *child; - Eina_List *list = eina_list_clone(ec->transients); - - EINA_LIST_FREE(list, child) - { - if (e_client_transient_policy_get(child) == E_TRANSIENT_BELOW) - { - child->exp_iconify.not_raise = not_raise; - e_client_uniconify(child); - } - } - } - - if (!not_raise) - e_client_raise(ec); - - if (ec->internal) - { - ELOGF("TZVIS", "UNICONIFY|internal object force show", ec); - evas_object_show(ec->frame); - } - - if (ec->pixmap) - { - if (e_pixmap_usable_get(ec->pixmap)) - { - if (cdata && cdata->mapped) - { - ELOGF("TZVIS", "UNICONIFY|object show. frame_visible:%d", ec, evas_object_visible_get(ec->frame)); - evas_object_show(ec->frame); - } - else - { - ELOGF("TZVIS", "UNICONIFY|object no show. currently unmapped", ec); - } - } - else - { - if (!ec->exp_iconify.buffer_flush && - !ec->exp_iconify.deiconify_update) - { - if (cdata && cdata->mapped) - { - ELOGF("TZVIS", "UNICONIFY|object show. no use buffer flush. frame_visible:%d", ec, evas_object_visible_get(ec->frame)); - evas_object_show(ec->frame); - } - } - } - } - e_client_comp_hidden_set(ec, 0); - ec->deskshow = ec->iconic = 0; - -#if 0 // focus should be set to the top window not uniconify window - if (ec->pixmap && e_pixmap_usable_get(ec->pixmap)) - e_client_frame_focus_set(ec, EINA_TRUE); -#endif - - _e_client_event_simple(ec, E_EVENT_CLIENT_UNICONIFY); - - if (e_config->transient.iconify) - { - E_Client *child; - Eina_List *list = eina_list_clone(ec->transients); - - EINA_LIST_FREE(list, child) - { - if (e_client_transient_policy_get(child) == E_TRANSIENT_ABOVE) - { - if (child->exp_iconify.type == E_ICONIFIED_TYPE_PARENT_ICONIFY_BY_CLIENT) - e_policy_client_iconic_state_change_send(child, 0); - child->exp_iconify.not_raise = not_raise; - e_client_uniconify(child); - } - } - } - - wl_signal_emit_mutable(&PRI(ec)->events.uniconify, NULL); - _e_client_hook_call(E_CLIENT_HOOK_UNICONIFY, ec); - - ec->exp_iconify.not_raise = 0; - - TRACE_DS_END(); -#endif } E_API void @@ -5547,7 +4443,6 @@ e_client_urgent_set(E_Client *ec, Eina_Bool urgent) EINTERN void e_client_stick(E_Client *ec) { -#ifdef REFACTOR_ZONE_DESK E_OBJECT_CHECK(ec); E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); if (ec->sticky) return; @@ -5557,39 +4452,11 @@ e_client_stick(E_Client *ec) // send the sticky property event of a client _e_client_event_property(ec, E_CLIENT_PROPERTY_STICKY); -#else - E_Desk *desk; - - E_OBJECT_CHECK(ec); - E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); - if (ec->sticky) return; - desk = ec->desk; - ec->desk = NULL; - ec->sticky = 1; - ec->hidden = 0; - e_client_desk_set(ec, desk); - evas_object_smart_callback_call(ec->frame, "stick", NULL); - - if (e_config->transient.desktop) - { - E_Client *child; - Eina_List *list = eina_list_clone(ec->transients); - - EINA_LIST_FREE(list, child) - { - child->sticky = 1; - evas_object_show(ec->frame); - } - } - - _e_client_event_property(ec, E_CLIENT_PROPERTY_STICKY); -#endif } EINTERN void e_client_unstick(E_Client *ec) { -#ifdef REFACTOR_ZONE_DESK E_OBJECT_CHECK(ec); E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); @@ -5600,37 +4467,6 @@ e_client_unstick(E_Client *ec) // send the sticky property event of a client _e_client_event_property(ec, E_CLIENT_PROPERTY_STICKY); -#else - E_Desk *desk; - E_Zone *zone; - - E_OBJECT_CHECK(ec); - E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); - /* Set the desk before we unstick the client */ - if (!ec->sticky) return; - - zone = e_comp_zone_find_by_ec(ec); - desk = e_desk_current_get(zone); - ec->desk = NULL; - ec->hidden = ec->sticky = 0; - e_client_desk_set(ec, desk); - evas_object_smart_callback_call(ec->frame, "unstick", NULL); - - if (e_config->transient.desktop) - { - E_Client *child; - Eina_List *list = eina_list_clone(ec->transients); - - EINA_LIST_FREE(list, child) - { - child->sticky = 0; - } - } - - _e_client_event_property(ec, E_CLIENT_PROPERTY_STICKY); - - e_client_desk_set(ec, e_desk_current_get(zone)); -#endif } EINTERN void @@ -7407,39 +6243,6 @@ e_client_desk_area_client_layer_get(E_Client *ec) return ec->desk_area.edgc_layer; } -#ifdef REFACTOR_ZONE_DESK -#else -EINTERN Eina_Bool -e_client_desk_area_enable_set(E_Client *ec, Eina_Bool enable) -{ - E_OBJECT_CHECK_RETURN(ec, EINA_FALSE); - E_OBJECT_TYPE_CHECK_RETURN(ec, E_CLIENT_TYPE, EINA_FALSE); - - ec->desk_area.enable = enable; - - ELOGF("EDG", "Desk group enable set to %d", ec, enable); - if (enable) - { - if (!ec->desk_area.transform) - { - ec->desk_area.transform = e_util_transform_new(); - e_util_transform_role_set(ec->desk_area.transform, "desk_area"); - } - } - else - { - if (ec->desk_area.transform) - { - e_util_transform_del(ec->desk_area.transform); - ec->desk_area.transform = NULL; - } - } - - e_desk_area_ec_update(ec->desk_area.desk_area, ec); - return EINA_TRUE; -} -#endif - //FIXME: use e_desk_area_ec_reassign(eda, ec) instead of this api E_API Eina_Bool e_client_desk_area_set(E_Client *ec, E_Desk_Area *eda) @@ -8020,7 +6823,6 @@ e_client_explicit_sync_acquire_fence_fd_set(E_Client *ec, int fd) return EINA_TRUE; } -#ifdef REFACTOR_ZONE_DESK EINTERN Eina_Bool e_client_intercept_hook_auto_placement_call(E_Client *ec) { @@ -8051,7 +6853,6 @@ e_client_uniconify_event_send(E_Client *ec) _e_client_event_simple(ec, E_EVENT_CLIENT_UNICONIFY); } -#endif EINTERN void e_client_stack_transient_for_done_notify(E_Client *ec) diff --git a/src/bin/e_client.h b/src/bin/e_client.h index ccffbe5..7b56b2d 100644 --- a/src/bin/e_client.h +++ b/src/bin/e_client.h @@ -257,10 +257,6 @@ typedef enum _E_Client_Hook_Point E_CLIENT_HOOK_FOCUS_SET, E_CLIENT_HOOK_FOCUS_UNSET, E_CLIENT_HOOK_NEW_CLIENT, -//#ifdef REFACTOR_ZONE_DESK -//#else - E_CLIENT_HOOK_DESK_SET, -//#endif E_CLIENT_HOOK_MOVE_BEGIN, E_CLIENT_HOOK_MOVE_UPDATE, E_CLIENT_HOOK_MOVE_END, @@ -1096,10 +1092,6 @@ E_API E_Client *e_client_from_surface_resource(struct wl_resource *surface_resou E_API E_Client *e_client_new(E_Pixmap *cp, int first_map, int internal); E_API Eina_Bool e_client_is_internal(E_Client *ec); E_API void e_client_unignore(E_Client *ec); -//#ifdef REFACTOR_ZONE_DESK -//#else -EINTERN void e_client_desk_set(E_Client *ec, E_Desk *desk); -//#endif EINTERN void e_client_desk_iconify_skip_set(E_Client *ec, Eina_Bool skip); EINTERN Eina_Bool e_client_desk_iconify_skip_get(E_Client *ec); EINTERN Eina_Bool e_client_comp_grabbed_get(void); @@ -1112,10 +1104,6 @@ EINTERN void e_client_mouse_up(E_Client *ec, int button, Evas_Point *output, E_B EINTERN void e_client_mouse_move(E_Client *ec, Evas_Point *output); EINTERN void e_client_res_change_geometry_save(E_Client *bd); EINTERN void e_client_res_change_geometry_restore(E_Client *ec); -//#ifdef REFACTOR_ZONE_DESK -//#else -EINTERN void e_client_zone_set(E_Client *ec, E_Zone *zone); -//#endif EINTERN void e_client_pos_set(E_Client *ec, int x, int y); EINTERN void e_client_pos_get(E_Client *ec, int *x, int *y); E_API void e_client_size_set(E_Client *ec, int w, int h); @@ -1258,10 +1246,6 @@ EINTERN void e_client_desk_area_original_layer_restore(E_Client *ec); EINTERN E_Layer e_client_desk_area_original_layer_get(E_Client *ec); EINTERN Eina_Bool e_client_desk_area_client_layer_set(E_Client *ec, E_Desk_Area_Client_Layer edgc_layer); EINTERN E_Desk_Area_Client_Layer e_client_desk_area_client_layer_get(E_Client *ec); -//#ifdef REFACTOR_ZONE_DESK -//#else -EINTERN Eina_Bool e_client_desk_area_enable_set(E_Client *ec, Eina_Bool enable); -//#endif E_API Eina_Bool e_client_desk_area_set(E_Client *ec, E_Desk_Area *eda); @@ -1335,13 +1319,11 @@ EINTERN E_Client *e_client_check_obscured_by_children_group(E_Client *ec); EINTERN Eina_Bool e_client_check_really_iconified(E_Client *ec); EINTERN E_Client *e_client_check_fully_contain_by_above(E_Client *ec, Eina_Bool check_layer); -//#ifdef REFACTOR_ZONE_DESK EINTERN Eina_Bool e_client_intercept_hook_auto_placement_call(E_Client *ec); EINTERN void e_client_iconify_event_send(E_Client *ec); EINTERN void e_client_uniconify_event_send(E_Client *ec); EINTERN void e_client_frame_update(E_Client *ec); EINTERN Eina_Bool e_client_is_parent_iconify_by_client(E_Client *ec); -//#endif EINTERN void e_client_stack_transient_for_done_notify(E_Client *ec); diff --git a/src/bin/e_comp_canvas.c b/src/bin/e_comp_canvas.c index 40b2b16..00844e6 100644 --- a/src/bin/e_comp_canvas.c +++ b/src/bin/e_comp_canvas.c @@ -363,37 +363,6 @@ e_comp_canvas_update(void) scr->screen, scr->escreen, scr->x, scr->y, scr->w, scr->h); } e_comp->zones = eina_list_sort(e_comp->zones, 0, _e_comp_canvas_cb_zone_sort); -#ifdef REFACTOR_ZONE_DESK -#else - if (zones) - { - E_Zone *spare_zone; - - printf("@zones have been deleted....\n"); - changed = EINA_TRUE; - spare_zone = eina_list_data_get(e_comp->zones); - - EINA_LIST_FREE(zones, zone) - { - E_Client *ec; - - printf("reassign all clients from deleted zone %p\n", zone); - E_CLIENT_FOREACH(ec) - { - if (e_comp_zone_find_by_ec(ec) == zone) - { - if (spare_zone) - e_client_zone_set(ec, spare_zone); - else - printf("EEEK! should not be here - but no\n" - "spare zones exist to move this\n" - "window to!!! help!\n"); - } - } - e_object_del(E_OBJECT(zone)); - } - } -#endif } else { diff --git a/src/bin/e_desk.c b/src/bin/e_desk.c index bf43ad7..2da9bb1 100644 --- a/src/bin/e_desk.c +++ b/src/bin/e_desk.c @@ -70,9 +70,7 @@ static int _e_desk_hooks_walking = 0; static Eina_Inlist *_e_desk_hooks[] = { -#ifdef REFACTOR_ZONE_DESK [E_DESK_HOOK_CLIENT_ADD] = NULL, -#endif [E_DESK_HOOK_DESK_AREA_ENABLE] = NULL, [E_DESK_HOOK_DESK_AREA_DISABLE] = NULL, [E_DESK_HOOK_DESK_AREA_ACTIVE_CHANGE] = NULL, @@ -690,7 +688,6 @@ _e_desk_client_data_set(E_Desk *desk, E_Client *ec) evas_object_data_set(ec->frame, DESK_EC_DATA_KEY, desk); } -#ifdef REFACTOR_ZONE_DESK static void _e_client_event_desk_set_free(void *d EINA_UNUSED, E_Event_Client_Desk_Set *ev) { @@ -786,7 +783,6 @@ _e_desk_client_set(E_Desk *desk, E_Client *ec) e_desk_area_ec_enable_set(desk->desk_area.base, ec, EINA_TRUE); } } -#endif EINTERN void e_desk_client_add(E_Desk *desk, E_Client *ec) @@ -797,17 +793,13 @@ e_desk_client_add(E_Desk *desk, E_Client *ec) E_OBJECT_CHECK(ec); E_OBJECT_TYPE_CHECK(ec, E_CLIENT_TYPE); -#ifdef REFACTOR_ZONE_DESK if (e_desk_has_ec(desk, ec)) return; _e_desk_client_set(desk, ec); -#endif _e_desk_client_data_set(desk, ec); -#ifdef REFACTOR_ZONE_DESK wl_signal_emit_mutable(&PRI(desk)->events.client_add, desk); _e_desk_hook_call(E_DESK_HOOK_CLIENT_ADD, desk); -#endif if (!e_config->use_desk_smart_obj) return; @@ -1311,12 +1303,8 @@ e_desk_client_zoom_skip_unset(E_Desk *desk, E_Client *ec) if (!e_desk_has_ec(desk, ec)) return EINA_FALSE; -#ifdef REFACTOR_ZONE_DESK if (e_config->use_desk_smart_obj) _e_desk_smart_client_add(desk->smart_obj, ec); -#else - e_desk_client_add(desk, ec); -#endif return EINA_TRUE; } @@ -1597,11 +1585,7 @@ _e_desk_show_begin(E_Desk *desk, int dx, int dy) if (e_client_util_ignored_get(ec) || (!e_zone_has_ec(desk->zone, ec)) || (ec->iconic)) continue; if (ec->moving) { -#ifdef REFACTOR_ZONE_DESK e_desk_client_add(desk, ec); -#else - e_client_desk_set(ec, desk); -#endif evas_object_show(ec->frame); continue; } @@ -1772,11 +1756,7 @@ _e_desk_smart_member_del(Evas_Object *obj, Evas_Object *child) ec_zone = e_comp_zone_find_by_ec(ec); ec_desk = e_zone_desk_find_by_ec(ec_zone, ec); if (ec_desk) -#ifdef REFACTOR_ZONE_DESK _e_desk_smart_client_add(ec_desk->smart_obj, ec); -#else - e_desk_client_add(ec_desk, ec); -#endif } } diff --git a/src/bin/e_desk.h b/src/bin/e_desk.h index bf1b50c..406979e 100644 --- a/src/bin/e_desk.h +++ b/src/bin/e_desk.h @@ -39,9 +39,7 @@ typedef struct _E_Desk_Hook E_Desk_Hook; typedef enum _E_Desk_Hook_Point { -//#ifdef REFACTOR_ZONE_DESK E_DESK_HOOK_CLIENT_ADD, -//#endif E_DESK_HOOK_DESK_AREA_ENABLE, E_DESK_HOOK_DESK_AREA_DISABLE, E_DESK_HOOK_DESK_AREA_ACTIVE_CHANGE, diff --git a/src/bin/e_info_server.c b/src/bin/e_info_server.c index 7e04ea5..b7af808 100644 --- a/src/bin/e_info_server.c +++ b/src/bin/e_info_server.c @@ -7414,11 +7414,7 @@ _e_info_server_cb_zone_set(const Eldbus_Service_Interface *iface EINA_UNUSED, co zone = e_zone_get_by_id(zone_id); if (zone) { -#ifdef REFACTOR_ZONE_DESK e_zone_client_add(zone, ec); -#else - e_client_desk_set(ec, e_desk_current_get(zone)); -#endif } break; diff --git a/src/bin/e_output.c b/src/bin/e_output.c index decc7a38..9c9644d 100644 --- a/src/bin/e_output.c +++ b/src/bin/e_output.c @@ -4132,7 +4132,6 @@ e_output_presentation_unset(E_Output *output) cdata = e_client_cdata_get(output->presentation_ec); EINA_SAFETY_ON_NULL_RETURN(cdata); -#ifdef REFACTOR_ZONE_DESK e_zone_client_add(zone, output->presentation_ec); EINA_LIST_FOREACH(cdata->sub.list, l, subc) @@ -4140,15 +4139,6 @@ e_output_presentation_unset(E_Output *output) EINA_LIST_FOREACH(cdata->sub.list, l, subc) e_zone_client_add(zone, subc); -#else - e_client_zone_set(output->presentation_ec, zone); - - EINA_LIST_FOREACH(cdata->sub.list, l, subc) - e_client_zone_set(subc, zone); - - EINA_LIST_FOREACH(cdata->sub.list, l, subc) - e_client_zone_set(subc, zone); -#endif } } @@ -4179,7 +4169,6 @@ e_output_presentation_ec_set(E_Output *output, E_Client *ec) cdata = e_client_cdata_get(ec); EINA_SAFETY_ON_NULL_RETURN_VAL(cdata, EINA_FALSE); -#ifdef REFACTOR_ZONE_DESK e_zone_client_add(zone, ec); EINA_LIST_FOREACH(cdata->sub.list, l, subc) @@ -4187,15 +4176,6 @@ e_output_presentation_ec_set(E_Output *output, E_Client *ec) EINA_LIST_FOREACH(cdata->sub.list, l, subc) e_zone_client_add(zone, subc); -#else - e_client_zone_set(ec, zone); - - EINA_LIST_FOREACH(cdata->sub.list, l, subc) - e_client_zone_set(subc, zone); - - EINA_LIST_FOREACH(cdata->sub.list, l, subc) - e_client_zone_set(subc, zone); -#endif return EINA_TRUE; } diff --git a/src/bin/e_policy.c b/src/bin/e_policy.c index f433652..2801565 100644 --- a/src/bin/e_policy.c +++ b/src/bin/e_policy.c @@ -59,20 +59,14 @@ static void _e_policy_client_maximize_policy_cancel(E_Policy_Client *pc); static void _e_policy_client_floating_policy_apply(E_Policy_Client *pc); static void _e_policy_client_floating_policy_cancel(E_Policy_Client *pc); static void _e_policy_client_launcher_set(E_Policy_Client *pc); -#ifdef REFACTOR_ZONE_DESK static void _e_policy_desk_client_add_hook_add(E_Policy_Client *pc); static void _e_policy_desk_client_add_hook_delete(E_Policy_Client *pc); -#endif static void _e_policy_cb_hook_client_eval_pre_new_client(void *d EINA_UNUSED, E_Client *ec); static void _e_policy_cb_hook_client_eval_pre_fetch(void *d EINA_UNUSED, E_Client *ec); static void _e_policy_cb_hook_client_eval_pre_post_fetch(void *d EINA_UNUSED, E_Client *ec); static void _e_policy_cb_hook_client_eval_post_fetch(void *d EINA_UNUSED, E_Client *ec); static void _e_policy_cb_hook_client_eval_post_new_client(void *d EINA_UNUSED, E_Client *ec); -#ifdef REFACTOR_ZONE_DESK -#else -static void _e_policy_cb_hook_client_desk_set(void *d EINA_UNUSED, E_Client *ec); -#endif static void _e_policy_cb_hook_client_fullscreen_pre(void *data EINA_UNUSED, E_Client *ec); static void _e_policy_cb_hook_pixmap_del(void *data EINA_UNUSED, E_Pixmap *cp); @@ -138,7 +132,6 @@ _e_policy_client_launcher_set(E_Policy_Client *pc) e_policy->launchers = eina_list_append(e_policy->launchers, pc); } -#ifdef REFACTOR_ZONE_DESK static void _e_policy_cb_hook_desk_client_add(void *d, E_Desk *desk) { @@ -188,14 +181,11 @@ _e_policy_desk_client_add_hook_delete(E_Policy_Client *pc) pc->desk_hooks.client_add = NULL; } } -#endif static void _e_policy_client_del(E_Policy_Client *pc) { -#ifdef REFACTOR_ZONE_DESK _e_policy_desk_client_add_hook_delete(pc); -#endif eina_hash_del_by_key(hash_policy_clients, &pc->ec); } @@ -712,32 +702,6 @@ _e_policy_cb_hook_client_eval_post_new_client(void *d EINA_UNUSED, E_Client *ec) e_policy_stack_clients_restack_above_lockscreen(ec, EINA_TRUE); } -#ifdef REFACTOR_ZONE_DESK -#else -static void -_e_policy_cb_hook_client_desk_set(void *d EINA_UNUSED, E_Client *ec) -{ - E_Policy_Client *pc; - E_Policy_Desk *pd; - - if (e_object_is_del(E_OBJECT(ec))) return; - if (!_e_policy_client_normal_check(ec)) return; - if (ec->internal) return; - if (ec->new_client) return; - - pc = eina_hash_find(hash_policy_clients, &ec); - if (EINA_UNLIKELY(!pc)) - return; - - pd = eina_hash_find(hash_policy_desks, &ec->desk); - - if (pd) - _e_policy_client_maximize_policy_apply(pc); - else - _e_policy_client_maximize_policy_cancel(pc); -} -#endif - static void _e_policy_cb_hook_client_fullscreen_pre(void* data EINA_UNUSED, E_Client *ec) { @@ -2353,10 +2317,8 @@ e_policy_client_add(E_Client *ec) eina_hash_add(hash_policy_clients, &ec, pc); -#ifdef REFACTOR_ZONE_DESK // This client_add hook of desk will be deleted at the hook callback for it. _e_policy_desk_client_add_hook_add(pc); -#endif return pc; } @@ -2425,10 +2387,6 @@ e_policy_init(void) E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_EVAL_PRE_POST_FETCH, _e_policy_cb_hook_client_eval_pre_post_fetch, NULL); E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_EVAL_POST_FETCH, _e_policy_cb_hook_client_eval_post_fetch, NULL); E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_EVAL_POST_NEW_CLIENT,_e_policy_cb_hook_client_eval_post_new_client,NULL); -#ifdef REFACTOR_ZONE_DESK -#else - E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_DESK_SET, _e_policy_cb_hook_client_desk_set, NULL); -#endif E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_FULLSCREEN_PRE, _e_policy_cb_hook_client_fullscreen_pre, NULL); E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_EVAL_VISIBILITY, _e_policy_cb_hook_client_visibility, NULL); E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_UNICONIFY, _e_policy_cb_hook_client_uniconify, NULL); diff --git a/src/bin/e_zone.c b/src/bin/e_zone.c index d454ea0..0fbc034 100644 --- a/src/bin/e_zone.c +++ b/src/bin/e_zone.c @@ -164,7 +164,6 @@ e_zone_all_edge_flip_eval(void) // TODO: deprecated. } -#ifdef REFACTOR_ZONE_DESK static void _e_zone_client_maximize(E_Zone *zone, E_Desk *desk, E_Client *ec, E_Maximize max) { @@ -368,12 +367,10 @@ _e_zone_client_apply_auto_placement(E_Zone *zone, E_Client *ec) ec->placed = 1; ec->pre_cb.x = ec->x; ec->pre_cb.y = ec->y; } -#endif static void _zone_cb_client_destroy(struct wl_listener *listener, void *data) { -#ifdef REFACTOR_ZONE_DESK E_Zone_Private_Client *zone_client; E_Zone *zone; E_Client *ec; @@ -424,13 +421,8 @@ _zone_cb_client_destroy(struct wl_listener *listener, void *data) wl_list_remove(&zone_client->client_destroy.link); E_FREE(zone_client); - -#else - evas_object_data_del(ec->frame, ZONE_EC_DATA_KEY); -#endif } -#ifdef REFACTOR_ZONE_DESK static void _e_zone_cb_hook_client_new_client_post(void *d, E_Client *ec) { @@ -1153,7 +1145,6 @@ _zone_cb_client_unfullscreen(struct wl_listener *listener, void *data) if (!desk->fullscreen_clients) e_comp_render_queue(); } -#endif static void _e_zone_client_data_set(E_Zone *zone, E_Client *ec) @@ -1546,11 +1537,7 @@ e_zone_desk_count_set(E_Zone *zone, E_CLIENT_FOREACH(ec) { if (e_desk_has_ec(desk, ec)) -#ifdef REFACTOR_ZONE_DESK e_desk_client_add(new_desk, ec); -#else - e_client_desk_set(ec, new_desk); -#endif } e_object_del(E_OBJECT(desk)); } @@ -1568,11 +1555,7 @@ e_zone_desk_count_set(E_Zone *zone, E_CLIENT_FOREACH(ec) { if (e_desk_has_ec(desk, ec)) -#ifdef REFACTOR_ZONE_DESK e_desk_client_add(new_desk, ec); -#else - e_client_desk_set(ec, new_desk); -#endif } e_object_del(E_OBJECT(desk)); } @@ -2396,7 +2379,6 @@ e_zone_screen_splitscreen_enable(E_Zone *zone) return EINA_TRUE; } -#ifdef REFACTOR_ZONE_DESK static void _e_client_event_zone_set_free(void *d EINA_UNUSED, E_Event_Client_Zone_Set *ev) { @@ -2450,12 +2432,10 @@ _e_zone_client_set(E_Zone *zone, E_Client *ec) ecore_event_add(E_EVENT_CLIENT_ZONE_SET, ev, (Ecore_End_Cb)_e_client_event_zone_set_free, NULL); } -#endif EINTERN void e_zone_client_add(E_Zone *zone, E_Client *ec) { -#ifdef REFACTOR_ZONE_DESK E_Desk *desk; E_Zone_Private_Client *zone_client; @@ -2524,24 +2504,6 @@ e_zone_client_add(E_Zone *zone, E_Client *ec) e_client_res_change_geometry_save(ec); e_client_res_change_geometry_restore(ec); ec->pre_res_change.valid = 0; -#else - EINA_SAFETY_ON_NULL_RETURN(zone); - EINA_SAFETY_ON_NULL_RETURN(ec); - - // FIXME: 1. To put the ec at current desk is the current wm policy. - // This should be changed by wm policy. - // 2. This code should be removed because e_client_zone_set() is called - // inside e_client_desk_set(). It makes the infinite loop calls(circular calls). - // e_client_desk_set() -> e_client_zone_set() -> e_zone_client_add() -> e_client_desk_set() -> ... and so on. - if ((!ec->desk) || (ec->desk->zone != zone)) - e_client_desk_set(ec, e_desk_current_get(zone)); - - e_client_res_change_geometry_save(ec); - e_client_res_change_geometry_restore(ec); - ec->pre_res_change.valid = 0; - - _e_zone_client_data_set(zone, ec); -#endif } EINTERN Eina_Bool