* Add options

-	e_config->transient.move
-	e_config->transient.resize
-	e_config->transient.raise
-	e_config->transient.lower
-	e_config->transient.layer
-	e_config->transient.desktop
-	e_config->transient.iconify
* Implement
-	e_config->transient.raise
-	e_config->transient.lower
-	e_config->transient.layer
-	e_config->transient.desktop
-	e_config->transient.iconify
* Show hide border in e_border_desk_set
* Add e_border_layer_set()


SVN revision: 16460
This commit is contained in:
sebastid 2005-09-02 07:38:40 +00:00 committed by sebastid
parent 9af2046985
commit d30da0bf8e
10 changed files with 463 additions and 51 deletions

6
TODO
View File

@ -26,7 +26,10 @@ Some of the things (in very short form) that need to be done to E17...
* desktopname could reaally be part of pager - and display a full pager layout
of all desktops and whihc one of them just got selected
* some sort of gui display of a desktop name (in the pager?)
* if a parent window is "on top" child dialog windows should also be "on top"
* transients should have option to always follow parent
(move/resize/raise/lower) (and remember this).
* in addition to smart place should add manual placement and place at pointer
and maybe a few others.
* emit signal to submenu entries if they have a submenu shown for them or not
@ -64,11 +67,8 @@ Some of the things (in very short form) that need to be done to E17...
to properly choose the border based on client window properties.
* do something with the icccm urgency field hint
* different borders for non-resizable windows, shaped windows etc.
* some sort of gui display of a desktop name (in the pager?)
* window icons should be able to be chosen if e eapp icon overrides netwm
icon or the other way around (and remember this).
* transients should have option to always follow parent
(move/resize/raise/lower) (and remember this).
* actions to make current zone different (warp mouse to there)
* actions to make the current container different
* titlebar/border expansion/gadget panel for modules to put window widgets in

View File

@ -528,6 +528,23 @@ e_border_desk_set(E_Border *bd, E_Desk *desk)
ev->desk = desk;
e_object_ref(E_OBJECT(desk));
ecore_event_add(E_EVENT_BORDER_DESK_SET, ev, _e_border_event_border_desk_set_free, NULL);
if (bd->desk->visible)
e_border_show(bd);
else
e_border_hide(bd, 1);
if (e_config->transient.desktop)
{
Evas_List *l;
for (l = bd->children; l; l = l->next)
{
E_Border *child;
child = l->data;
e_border_desk_set(child, bd->desk);
}
}
}
void
@ -778,11 +795,43 @@ e_border_move_resize(E_Border *bd, int x, int y, int w, int h)
_e_border_zone_update(bd);
}
void
e_border_layer_set(E_Border *bd, int layer)
{
int raise;
E_OBJECT_CHECK(bd);
E_OBJECT_TYPE_CHECK(bd, E_BORDER_TYPE);
raise = e_config->transient.raise;
bd->layer = layer;
if (e_config->transient.layer)
{
Evas_List *l;
/* We need to set raise to one, else the child wont
* follow to the new layer. It should be like this,
* even if the user usually doesn't want to raise
* the children.
*/
e_config->transient.raise = 1;
for (l = bd->children; l; l = l->next)
{
E_Border *child;
child = l->data;
child->layer = layer;
}
}
e_border_raise(bd);
e_config->transient.raise = raise;
}
void
e_border_raise(E_Border *bd)
{
E_Border *above;
Evas_List *l;
E_OBJECT_CHECK(bd);
E_OBJECT_TYPE_CHECK(bd, E_BORDER_TYPE);
@ -808,12 +857,21 @@ e_border_raise(E_Border *bd)
ev->below = NULL;
ecore_event_add(E_EVENT_BORDER_LOWER, ev, _e_border_event_border_lower_free, NULL);
}
for (l = bd->children; l; l = l->next)
{
E_Border *child;
child = l->data;
e_border_stack_above(child, bd);
if (e_config->transient.raise)
{
Evas_List *l;
for (l = bd->children; l; l = l->next)
{
E_Border *child;
child = l->data;
/* Don't raise iconic children. If the user wants these shown,
* thats another option.
*/
if (!child->iconic)
e_border_stack_above(child, bd);
}
}
}
@ -846,6 +904,17 @@ e_border_lower(E_Border *bd)
ev->above = NULL;
ecore_event_add(E_EVENT_BORDER_RAISE, ev, _e_border_event_border_raise_free, NULL);
}
if (e_config->transient.lower)
{
Evas_List *l;
for (l = bd->children; l; l = l->next)
{
E_Border *child;
child = l->data;
e_border_stack_above(child, bd);
}
}
}
void
@ -1411,8 +1480,7 @@ e_border_fullscreen(E_Border *bd)
e_zone_fullscreen_set(bd->zone, 1);
bd->layer = 200;
e_border_raise(bd);
e_border_layer_set(bd, 200);
x = bd->zone->x;
y = bd->zone->y;
w = bd->zone->w;
@ -1453,8 +1521,7 @@ e_border_unfullscreen(E_Border *bd)
ecore_evas_show(bd->bg_ecore_evas);
/* FIXME: Find right layer */
bd->layer = 100;
e_border_raise(bd);
e_border_layer_set(bd, 100);
e_hints_window_fullscreen_set(bd, 0);
edje_object_signal_emit(bd->bg_object, "unfullscreen", "");
@ -1485,6 +1552,19 @@ e_border_iconify(E_Border *bd)
e_object_ref(E_OBJECT(bd));
// e_object_breadcrumb_add(E_OBJECT(bd), "border_iconify_event");
ecore_event_add(E_EVENT_BORDER_ICONIFY, ev, _e_border_event_border_iconify_free, NULL);
if (e_config->transient.iconify)
{
Evas_List *l;
for (l = bd->children; l; l = l->next)
{
E_Border *child;
child = l->data;
e_border_iconify(child);
}
}
}
void
@ -1499,10 +1579,9 @@ e_border_uniconify(E_Border *bd)
if ((bd->fullscreen) || (bd->shading)) return;
if (bd->iconic)
{
bd->iconic = 0;
desk = e_desk_current_get(bd->desk->zone);
e_border_desk_set(bd, desk);
bd->iconic = 0;
e_border_show(bd);
e_border_raise(bd);
edje_object_signal_emit(bd->bg_object, "uniconify", "");
}
@ -1515,6 +1594,18 @@ e_border_uniconify(E_Border *bd)
// e_object_breadcrumb_add(E_OBJECT(bd), "border_uniconify_event");
ecore_event_add(E_EVENT_BORDER_UNICONIFY, ev, _e_border_event_border_uniconify_free, NULL);
if (e_config->transient.iconify)
{
Evas_List *l;
for (l = bd->children; l; l = l->next)
{
E_Border *child;
child = l->data;
e_border_uniconify(child);
}
}
}
void
@ -6373,10 +6464,9 @@ _e_border_menu_cb_on_top(void *data, E_Menu *m, E_Menu_Item *mi)
bd = data;
if (bd->layer != 150)
{
bd->layer = 150;
e_border_layer_set(bd, 150);
e_hints_window_stacking_set(bd, E_STACKING_ABOVE);
}
e_border_raise(bd);
}
static void
@ -6387,10 +6477,9 @@ _e_border_menu_cb_below(void *data, E_Menu *m, E_Menu_Item *mi)
bd = data;
if (bd->layer != 50)
{
bd->layer = 50;
e_border_layer_set(bd, 50);
e_hints_window_stacking_set(bd, E_STACKING_BELOW);
}
e_border_raise(bd);
}
static void
@ -6401,10 +6490,9 @@ _e_border_menu_cb_normal(void *data, E_Menu *m, E_Menu_Item *mi)
bd = data;
if (bd->layer != 100)
{
bd->layer = 100;
e_border_layer_set(bd, 100);
e_hints_window_stacking_set(bd, E_STACKING_NONE);
}
e_border_raise(bd);
}
static void
@ -6497,10 +6585,9 @@ _e_border_menu_cb_sendto(void *data, E_Menu *m, E_Menu_Item *mi)
desk = data;
bd = e_object_data_get(E_OBJECT(m));
if ((bd) && (desk) && (bd->desk != desk))
if ((bd) && (desk))
{
e_border_desk_set(bd, desk);
e_border_hide(bd, 1);
}
}

View File

@ -488,6 +488,7 @@ EAPI void e_border_hide(E_Border *bd, int manage);
EAPI void e_border_move(E_Border *bd, int x, int y);
EAPI void e_border_resize(E_Border *bd, int w, int h);
EAPI void e_border_move_resize(E_Border *bd, int x, int y, int w, int h);
EAPI void e_border_layer_set(E_Border *bd, int layer);
EAPI void e_border_raise(E_Border *bd);
EAPI void e_border_lower(E_Border *bd);
EAPI void e_border_stack_above(E_Border *bd, E_Border *above);

View File

@ -301,7 +301,14 @@ e_config_init(void)
E_CONFIG_VAL(D, T, cursor_size, INT); /**/
E_CONFIG_VAL(D, T, menu_autoscroll_margin, INT); /**/
E_CONFIG_VAL(D, T, menu_autoscroll_cursor_margin, INT); /**/
E_CONFIG_VAL(D, T, transient.move, INT); /* FIXME: implement */
E_CONFIG_VAL(D, T, transient.resize, INT); /* FIXME: implement */
E_CONFIG_VAL(D, T, transient.raise, INT); /**/
E_CONFIG_VAL(D, T, transient.lower, INT); /**/
E_CONFIG_VAL(D, T, transient.layer, INT); /**/
E_CONFIG_VAL(D, T, transient.desktop, INT); /**/
E_CONFIG_VAL(D, T, transient.iconify, INT); /**/
e_config = e_config_domain_load("e", _e_config_edd);
if (e_config)
{
@ -409,6 +416,13 @@ e_config_init(void)
e_config->cursor_size = 32;
e_config->menu_autoscroll_margin = 0;
e_config->menu_autoscroll_cursor_margin = 1;
e_config->transient.move = 1;
e_config->transient.resize = 0;
e_config->transient.raise = 1;
e_config->transient.lower = 1;
e_config->transient.layer = 1;
e_config->transient.desktop = 1;
e_config->transient.iconify = 1;
{
E_Config_Module *em;

View File

@ -48,7 +48,7 @@ typedef Eet_Data_Descriptor E_Config_DD;
* defaults for e to work - started at 100 when we introduced this config
* versioning feature
*/
#define E_CONFIG_FILE_VERSION 123
#define E_CONFIG_FILE_VERSION 124
#define E_EVAS_ENGINE_DEFAULT 0
#define E_EVAS_ENGINE_SOFTWARE_X11 1
@ -145,6 +145,15 @@ struct _E_Config
int cursor_size;
int menu_autoscroll_margin;
int menu_autoscroll_cursor_margin;
struct {
int move;
int resize;
int raise;
int lower;
int layer;
int desktop;
int iconify;
} transient;
};
struct _E_Config_Module

View File

@ -194,6 +194,10 @@ e_desk_show(E_Desk *desk)
}
}
desk->zone->desk_x_current = desk->x;
desk->zone->desk_y_current = desk->y;
desk->visible = 1;
bl = e_container_border_list_first(desk->zone->container);
if (desk->zone->bg_object) was_zone = 1;
while ((bd = e_container_border_list_next(bl)))
@ -227,10 +231,6 @@ e_desk_show(E_Desk *desk)
if (e_config->focus_last_focused_per_desktop)
e_desk_last_focused_focus(desk);
desk->zone->desk_x_current = desk->x;
desk->zone->desk_y_current = desk->y;
desk->visible = 1;
if (was_zone)
e_bg_zone_update(desk->zone, E_BG_TRANSITION_DESK);
else

View File

@ -349,17 +349,21 @@ e_hints_window_init(E_Border *bd)
if (!bd->lock_client_stacking)
{
if (bd->client.netwm.type == ECORE_X_WINDOW_TYPE_DESKTOP)
bd->layer = 0;
e_border_layer_set(bd, 0);
else if (bd->client.netwm.state.stacking == E_STACKING_BELOW)
bd->layer = 50;
e_border_layer_set(bd, 50);
else if (bd->client.netwm.state.stacking == E_STACKING_ABOVE)
bd->layer = 150;
e_border_layer_set(bd, 150);
else if (bd->client.netwm.type == ECORE_X_WINDOW_TYPE_DOCK)
bd->layer = 150;
e_border_layer_set(bd, 150);
else
bd->layer = 100;
e_border_layer_set(bd, 100);
}
e_border_raise(bd);
else
e_border_raise(bd);
if ((bd->parent) && (e_config->transient.layer))
e_border_layer_set(bd, bd->parent->layer);
#if 0
/* Ignore this, E has incompatible desktop setup */
@ -438,6 +442,8 @@ e_hints_window_init(E_Border *bd)
else
e_hints_window_visible_set(bd);
}
else if ((bd->parent) && (e_config->transient.iconify) && (bd->parent->iconic))
e_border_iconify(bd);
/* If a window isn't iconic, and is one the current desk,
* show it! */
else if (bd->desk == e_desk_current_get(bd->zone))
@ -742,19 +748,16 @@ e_hints_window_state_update(E_Border *bd, Ecore_X_Window_State state,
switch (action)
{
case ECORE_X_WINDOW_STATE_ACTION_REMOVE:
bd->layer = 100;
e_border_raise(bd);
e_border_layer_set(bd, 100);
break;
case ECORE_X_WINDOW_STATE_ACTION_ADD:
bd->layer = 150;
e_border_raise(bd);
e_border_layer_set(bd, 150);
break;
case ECORE_X_WINDOW_STATE_ACTION_TOGGLE:
if (bd->layer == 150)
bd->layer = 100;
e_border_layer_set(bd, 100);
else
bd->layer = 150;
e_border_raise(bd);
e_border_layer_set(bd, 150);
break;
}
break;
@ -765,19 +768,16 @@ e_hints_window_state_update(E_Border *bd, Ecore_X_Window_State state,
switch (action)
{
case ECORE_X_WINDOW_STATE_ACTION_REMOVE:
bd->layer = 100;
e_border_raise(bd);
e_border_layer_set(bd, 100);
break;
case ECORE_X_WINDOW_STATE_ACTION_ADD:
bd->layer = 50;
e_border_raise(bd);
e_border_layer_set(bd, 50);
break;
case ECORE_X_WINDOW_STATE_ACTION_TOGGLE:
if (bd->layer == 50)
bd->layer = 100;
e_border_layer_set(bd, 100);
else
bd->layer = 50;
e_border_raise(bd);
e_border_layer_set(bd, 50);
break;
}
break;

View File

@ -4703,3 +4703,283 @@ break;
END_INT;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_MOVE_SET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-move-set", 1, "Set if transients should move with it's parent", 0, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_INT(atoi(params[0]), HDL);
#elif (TYPE == E_WM_IN)
START_INT(val, HDL);
e_config->transient.move = val;
/* TODO: Activate changes! */
SAVE;
END_INT;
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_MOVE_GET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-move-get", 0, "Get if transients should move with it's parent", 1, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_NULL(HDL);
#elif (TYPE == E_WM_IN)
SEND_INT(e_config->transient.move, E_IPC_OP_TRANSIENT_MOVE_GET_REPLY, HDL);
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_MOVE_GET_REPLY
#if (TYPE == E_REMOTE_OPTIONS)
#elif (TYPE == E_REMOTE_OUT)
#elif (TYPE == E_WM_IN)
#elif (TYPE == E_REMOTE_IN)
START_INT(val, HDL);
printf("REPLY: %d\n", val);
END_INT;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_RESIZE_SET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-resize-set", 1, "Set if transients should move when it's parent resizes", 0, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_INT(atoi(params[0]), HDL);
#elif (TYPE == E_WM_IN)
START_INT(val, HDL);
e_config->transient.resize = val;
/* TODO: Activate changes! */
SAVE;
END_INT;
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_RESIZE_GET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-resize-get", 0, "Get if transients should move when it's parent resizes", 1, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_NULL(HDL);
#elif (TYPE == E_WM_IN)
SEND_INT(e_config->transient.resize, E_IPC_OP_TRANSIENT_RESIZE_GET_REPLY, HDL);
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_RESIZE_GET_REPLY
#if (TYPE == E_REMOTE_OPTIONS)
#elif (TYPE == E_REMOTE_OUT)
#elif (TYPE == E_WM_IN)
#elif (TYPE == E_REMOTE_IN)
START_INT(val, HDL);
printf("REPLY: %d\n", val);
END_INT;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_RAISE_SET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-raise-set", 1, "Set if transients should raise with it's parent", 0, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_INT(atoi(params[0]), HDL);
#elif (TYPE == E_WM_IN)
START_INT(val, HDL);
e_config->transient.raise = val;
/* TODO: Activate changes! */
SAVE;
END_INT;
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_RAISE_GET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-raise-get", 0, "Get if transients should raise with it's parent", 1, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_NULL(HDL);
#elif (TYPE == E_WM_IN)
SEND_INT(e_config->transient.raise, E_IPC_OP_TRANSIENT_RAISE_GET_REPLY, HDL);
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_RAISE_GET_REPLY
#if (TYPE == E_REMOTE_OPTIONS)
#elif (TYPE == E_REMOTE_OUT)
#elif (TYPE == E_WM_IN)
#elif (TYPE == E_REMOTE_IN)
START_INT(val, HDL);
printf("REPLY: %d\n", val);
END_INT;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_LOWER_SET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-lower-set", 1, "Set if transients should lower with it's parent", 0, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_INT(atoi(params[0]), HDL);
#elif (TYPE == E_WM_IN)
START_INT(val, HDL);
e_config->transient.lower = val;
/* TODO: Activate changes! */
SAVE;
END_INT;
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_LOWER_GET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-lower-get", 0, "Get if transients should lower with it's parent", 1, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_NULL(HDL);
#elif (TYPE == E_WM_IN)
SEND_INT(e_config->transient.lower, E_IPC_OP_TRANSIENT_LOWER_GET_REPLY, HDL);
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_LOWER_GET_REPLY
#if (TYPE == E_REMOTE_OPTIONS)
#elif (TYPE == E_REMOTE_OUT)
#elif (TYPE == E_WM_IN)
#elif (TYPE == E_REMOTE_IN)
START_INT(val, HDL);
printf("REPLY: %d\n", val);
END_INT;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_LAYER_SET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-layer-set", 1, "Set if transients should change layer with it's parent", 0, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_INT(atoi(params[0]), HDL);
#elif (TYPE == E_WM_IN)
START_INT(val, HDL);
e_config->transient.layer = val;
/* TODO: Activate changes! */
SAVE;
END_INT;
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_LAYER_GET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-layer-get", 0, "Get if transients should change layer with it's parent", 1, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_NULL(HDL);
#elif (TYPE == E_WM_IN)
SEND_INT(e_config->transient.layer, E_IPC_OP_TRANSIENT_LAYER_GET_REPLY, HDL);
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_LAYER_GET_REPLY
#if (TYPE == E_REMOTE_OPTIONS)
#elif (TYPE == E_REMOTE_OUT)
#elif (TYPE == E_WM_IN)
#elif (TYPE == E_REMOTE_IN)
START_INT(val, HDL);
printf("REPLY: %d\n", val);
END_INT;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_DESKTOP_SET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-desktop-set", 1, "Set if transients should change desktop with it's parent", 0, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_INT(atoi(params[0]), HDL);
#elif (TYPE == E_WM_IN)
START_INT(val, HDL);
e_config->transient.desktop = val;
/* TODO: Activate changes! */
SAVE;
END_INT;
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_DESKTOP_GET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-desktop-get", 0, "Get if transients should change desktop with it's parent", 1, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_NULL(HDL);
#elif (TYPE == E_WM_IN)
SEND_INT(e_config->transient.desktop, E_IPC_OP_TRANSIENT_DESKTOP_GET_REPLY, HDL);
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_DESKTOP_GET_REPLY
#if (TYPE == E_REMOTE_OPTIONS)
#elif (TYPE == E_REMOTE_OUT)
#elif (TYPE == E_WM_IN)
#elif (TYPE == E_REMOTE_IN)
START_INT(val, HDL);
printf("REPLY: %d\n", val);
END_INT;
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_ICONIFY_SET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-iconify-set", 1, "Set if transients should iconify with it's parent", 0, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_INT(atoi(params[0]), HDL);
#elif (TYPE == E_WM_IN)
START_INT(val, HDL);
e_config->transient.iconify = val;
/* TODO: Activate changes! */
SAVE;
END_INT;
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_ICONIFY_GET
#if (TYPE == E_REMOTE_OPTIONS)
OP("-transient-iconify-get", 0, "Get if transients should iconify with it's parent", 1, HDL)
#elif (TYPE == E_REMOTE_OUT)
REQ_NULL(HDL);
#elif (TYPE == E_WM_IN)
SEND_INT(e_config->transient.iconify, E_IPC_OP_TRANSIENT_ICONIFY_GET_REPLY, HDL);
#elif (TYPE == E_REMOTE_IN)
#endif
#undef HDL
/****************************************************************************/
#define HDL E_IPC_OP_TRANSIENT_ICONIFY_GET_REPLY
#if (TYPE == E_REMOTE_OPTIONS)
#elif (TYPE == E_REMOTE_OUT)
#elif (TYPE == E_WM_IN)
#elif (TYPE == E_REMOTE_IN)
START_INT(val, HDL);
printf("REPLY: %d\n", val);
END_INT;
#endif
#undef HDL

View File

@ -231,3 +231,25 @@
#define E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_SET 231
#define E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_GET 232
#define E_IPC_OP_MENU_AUTOSCROLL_CURSOR_MARGIN_GET_REPLY 233
#define E_IPC_OP_TRANSIENT_MOVE_SET 234
#define E_IPC_OP_TRANSIENT_MOVE_GET 235
#define E_IPC_OP_TRANSIENT_MOVE_GET_REPLY 236
#define E_IPC_OP_TRANSIENT_RESIZE_SET 237
#define E_IPC_OP_TRANSIENT_RESIZE_GET 238
#define E_IPC_OP_TRANSIENT_RESIZE_GET_REPLY 239
#define E_IPC_OP_TRANSIENT_RAISE_SET 240
#define E_IPC_OP_TRANSIENT_RAISE_GET 241
#define E_IPC_OP_TRANSIENT_RAISE_GET_REPLY 242
#define E_IPC_OP_TRANSIENT_LOWER_SET 243
#define E_IPC_OP_TRANSIENT_LOWER_GET 244
#define E_IPC_OP_TRANSIENT_LOWER_GET_REPLY 245
#define E_IPC_OP_TRANSIENT_LAYER_SET 246
#define E_IPC_OP_TRANSIENT_LAYER_GET 247
#define E_IPC_OP_TRANSIENT_LAYER_GET_REPLY 248
#define E_IPC_OP_TRANSIENT_DESKTOP_SET 249
#define E_IPC_OP_TRANSIENT_DESKTOP_GET 250
#define E_IPC_OP_TRANSIENT_DESKTOP_GET_REPLY 251
#define E_IPC_OP_TRANSIENT_ICONIFY_SET 252
#define E_IPC_OP_TRANSIENT_ICONIFY_GET 253
#define E_IPC_OP_TRANSIENT_ICONIFY_GET_REPLY 254

View File

@ -1476,10 +1476,9 @@ _pager_face_cb_drop(void *data, const char *type, void *event_info)
desk = e_desk_at_xy_get(face->zone, x, y);
bd = ev->data;
if ((bd) && (desk) && (bd->desk != desk))
if ((bd) && (desk))
{
e_border_desk_set(bd, desk);
e_border_hide(bd, 1);
}
for (l = face->desks; l; l = l->next)