first step in removing container win (compositor can replace it al
with its own objects directly and expose comp canvas to gadgets/fm and so on just like container canvas does now. a lot of e's code can be simplified if we went totally compositing... worry about that for e18, but for now put in hooks). SVN revision: 58112
This commit is contained in:
parent
cd9583cd4d
commit
e1070cc338
|
@ -891,6 +891,8 @@ e_config_init(void)
|
||||||
E_CONFIG_VAL(D, T, exec.show_run_dialog, UCHAR);
|
E_CONFIG_VAL(D, T, exec.show_run_dialog, UCHAR);
|
||||||
E_CONFIG_VAL(D, T, exec.show_exit_dialog, UCHAR);
|
E_CONFIG_VAL(D, T, exec.show_exit_dialog, UCHAR);
|
||||||
|
|
||||||
|
E_CONFIG_VAL(D, T, null_container_win, UCHAR);
|
||||||
|
|
||||||
e_config_load();
|
e_config_load();
|
||||||
|
|
||||||
e_config_save_queue();
|
e_config_save_queue();
|
||||||
|
@ -1298,6 +1300,8 @@ e_config_load(void)
|
||||||
E_CONFIG_LIMIT(e_config->exec.show_run_dialog, 0, 1);
|
E_CONFIG_LIMIT(e_config->exec.show_run_dialog, 0, 1);
|
||||||
E_CONFIG_LIMIT(e_config->exec.show_exit_dialog, 0, 1);
|
E_CONFIG_LIMIT(e_config->exec.show_exit_dialog, 0, 1);
|
||||||
|
|
||||||
|
E_CONFIG_LIMIT(e_config->null_container_win, 0, 1);
|
||||||
|
|
||||||
/* FIXME: disabled auto apply because it causes problems */
|
/* FIXME: disabled auto apply because it causes problems */
|
||||||
e_config->cfgdlg_auto_apply = 0;
|
e_config->cfgdlg_auto_apply = 0;
|
||||||
/* FIXME: desklock personalized password id disabled for security reasons */
|
/* FIXME: desklock personalized password id disabled for security reasons */
|
||||||
|
|
|
@ -338,6 +338,8 @@ struct _E_Config
|
||||||
Eina_Bool show_run_dialog;
|
Eina_Bool show_run_dialog;
|
||||||
Eina_Bool show_exit_dialog;
|
Eina_Bool show_exit_dialog;
|
||||||
} exec;
|
} exec;
|
||||||
|
|
||||||
|
unsigned char null_container_win;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct _E_Config_Syscon_Action
|
struct _E_Config_Syscon_Action
|
||||||
|
|
|
@ -83,7 +83,7 @@ e_container_new(E_Manager *man)
|
||||||
0, 0, con->w, con->h, 1, 1,
|
0, 0, con->w, con->h, 1, 1,
|
||||||
&(con->bg_win));
|
&(con->bg_win));
|
||||||
e_canvas_add(con->bg_ecore_evas);
|
e_canvas_add(con->bg_ecore_evas);
|
||||||
con->event_win = ecore_x_window_input_new(con->bg_win, 0, 0, con->w, con->h);
|
con->event_win = ecore_x_window_input_new(con->win, 0, 0, con->w, con->h);
|
||||||
ecore_x_window_show(con->event_win);
|
ecore_x_window_show(con->event_win);
|
||||||
con->bg_evas = ecore_evas_get(con->bg_ecore_evas);
|
con->bg_evas = ecore_evas_get(con->bg_ecore_evas);
|
||||||
ecore_evas_name_class_set(con->bg_ecore_evas, "E", "Background_Window");
|
ecore_evas_name_class_set(con->bg_ecore_evas, "E", "Background_Window");
|
||||||
|
@ -189,12 +189,18 @@ e_container_show(E_Container *con)
|
||||||
E_OBJECT_TYPE_CHECK(con, E_CONTAINER_TYPE);
|
E_OBJECT_TYPE_CHECK(con, E_CONTAINER_TYPE);
|
||||||
|
|
||||||
if (con->visible) return;
|
if (con->visible) return;
|
||||||
ecore_evas_show(con->bg_ecore_evas);
|
if (!e_config->null_container_win)
|
||||||
|
ecore_evas_show(con->bg_ecore_evas);
|
||||||
ecore_x_window_configure(con->bg_win,
|
ecore_x_window_configure(con->bg_win,
|
||||||
ECORE_X_WINDOW_CONFIGURE_MASK_SIBLING |
|
ECORE_X_WINDOW_CONFIGURE_MASK_SIBLING |
|
||||||
ECORE_X_WINDOW_CONFIGURE_MASK_STACK_MODE,
|
ECORE_X_WINDOW_CONFIGURE_MASK_STACK_MODE,
|
||||||
0, 0, 0, 0, 0,
|
0, 0, 0, 0, 0,
|
||||||
con->layers[0].win, ECORE_X_WINDOW_STACK_BELOW);
|
con->layers[0].win, ECORE_X_WINDOW_STACK_BELOW);
|
||||||
|
ecore_x_window_configure(con->event_win,
|
||||||
|
ECORE_X_WINDOW_CONFIGURE_MASK_SIBLING |
|
||||||
|
ECORE_X_WINDOW_CONFIGURE_MASK_STACK_MODE,
|
||||||
|
0, 0, 0, 0, 0,
|
||||||
|
con->layers[0].win, ECORE_X_WINDOW_STACK_BELOW);
|
||||||
if (con->win != con->manager->win)
|
if (con->win != con->manager->win)
|
||||||
ecore_x_window_show(con->win);
|
ecore_x_window_show(con->win);
|
||||||
ecore_x_icccm_state_set(con->bg_win, ECORE_X_WINDOW_STATE_HINT_NORMAL);
|
ecore_x_icccm_state_set(con->bg_win, ECORE_X_WINDOW_STATE_HINT_NORMAL);
|
||||||
|
@ -272,7 +278,9 @@ e_container_resize(E_Container *con, int w, int h)
|
||||||
con->h = h;
|
con->h = h;
|
||||||
if (con->win != con->manager->win)
|
if (con->win != con->manager->win)
|
||||||
ecore_x_window_resize(con->win, con->w, con->h);
|
ecore_x_window_resize(con->win, con->w, con->h);
|
||||||
ecore_evas_resize(con->bg_ecore_evas, con->w, con->h);
|
ecore_x_window_resize(con->event_win, con->w, con->h);
|
||||||
|
if (!e_config->null_container_win)
|
||||||
|
ecore_evas_resize(con->bg_ecore_evas, con->w, con->h);
|
||||||
evas_object_resize(con->bg_blank_object, con->w, con->h);
|
evas_object_resize(con->bg_blank_object, con->w, con->h);
|
||||||
_e_container_resize_handle(con);
|
_e_container_resize_handle(con);
|
||||||
}
|
}
|
||||||
|
@ -289,7 +297,9 @@ e_container_move_resize(E_Container *con, int x, int y, int w, int h)
|
||||||
con->h = h;
|
con->h = h;
|
||||||
if (con->win != con->manager->win)
|
if (con->win != con->manager->win)
|
||||||
ecore_x_window_move_resize(con->win, con->x, con->y, con->w, con->h);
|
ecore_x_window_move_resize(con->win, con->x, con->y, con->w, con->h);
|
||||||
ecore_evas_resize(con->bg_ecore_evas, con->w, con->h);
|
ecore_x_window_move_resize(con->event_win, con->x, con->y, con->w, con->h);
|
||||||
|
if (!e_config->null_container_win)
|
||||||
|
ecore_evas_resize(con->bg_ecore_evas, con->w, con->h);
|
||||||
evas_object_move(con->bg_blank_object, con->x, con->y);
|
evas_object_move(con->bg_blank_object, con->x, con->y);
|
||||||
evas_object_resize(con->bg_blank_object, con->w, con->h);
|
evas_object_resize(con->bg_blank_object, con->w, con->h);
|
||||||
_e_container_resize_handle(con);
|
_e_container_resize_handle(con);
|
||||||
|
|
Loading…
Reference in New Issue