add a way to force e to not remember a window of its own .

SVN revision: 35139
This commit is contained in:
Carsten Haitzler 2008-07-17 14:01:36 +00:00
parent 51c5110b2c
commit 77e26d9daa
4 changed files with 15 additions and 1 deletions

View File

@ -6232,7 +6232,9 @@ _e_border_eval(E_Border *bd)
bd->placed = 1;
}
if ((bd->internal) && (!bd->remember) && (e_config->remember_internal_windows))
if ((bd->internal) && (!bd->remember) &&
(e_config->remember_internal_windows) &&
(!bd->internal_no_remember))
{
E_Remember *rem;

View File

@ -418,6 +418,7 @@ struct _E_Border
unsigned int lock_life : 1; /*DONE*/
unsigned int internal : 1;
unsigned int internal_no_remember : 1;
unsigned int stolen : 1;
Ecore_Evas *internal_ecore_evas;

View File

@ -94,6 +94,7 @@ e_win_show(E_Win *win)
win->border->re_manage = 0;
win->border->internal = 1;
win->border->internal_ecore_evas = win->ecore_evas;
if (win->state.no_remember) win->border->internal_no_remember = 1;
}
_e_win_prop_update(win);
e_border_show(win->border);
@ -350,6 +351,14 @@ e_win_dialog_set(E_Win *win, int dialog)
}
}
EAPI void
e_win_no_remember_set(E_Win *win, int no_remember)
{
E_OBJECT_CHECK(win);
E_OBJECT_TYPE_CHECK(win, E_WIN_TYPE);
win->state.no_remember = no_remember;
}
EAPI E_Win *
e_win_evas_object_win_get(Evas_Object *obj)
{

View File

@ -34,6 +34,7 @@ struct _E_Win
struct {
unsigned char centered : 1;
unsigned char dialog : 1;
unsigned char no_remember : 1;
} state;
E_Pointer *pointer;
@ -69,6 +70,7 @@ EAPI void e_win_border_icon_set (E_Win *win, const char *icon);
EAPI void e_win_border_icon_key_set(E_Win *win, const char *key);
EAPI void e_win_centered_set (E_Win *win, int centered);
EAPI void e_win_dialog_set (E_Win *win, int dialog);
EAPI void e_win_no_remember_set (E_Win *win, int no_remember);
EAPI E_Win *e_win_evas_object_win_get(Evas_Object *obj);