forked from enlightenment/enlightenment
* 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:
parent
9af2046985
commit
d30da0bf8e
6
TODO
6
TODO
|
@ -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
|
||||
|
|
|
@ -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,14 +857,23 @@ e_border_raise(E_Border *bd)
|
|||
ev->below = NULL;
|
||||
ecore_event_add(E_EVENT_BORDER_LOWER, ev, _e_border_event_border_lower_free, NULL);
|
||||
}
|
||||
|
||||
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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
e_border_lower(E_Border *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);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -301,6 +301,13 @@ 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;
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -349,18 +349,22 @@ 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);
|
||||
}
|
||||
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 */
|
||||
if (ecore_x_netwm_desktop_get(bd->client.win, &bd->client.netwm.desktop))
|
||||
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
Loading…
Reference in New Issue