May not be totally correct, but this time it, ahem, works

SVN revision: 13125
This commit is contained in:
handyande 2005-01-29 12:51:28 +00:00 committed by handyande
parent b6147a505c
commit ed8b9251f4
2 changed files with 8 additions and 1 deletions

View File

@ -87,6 +87,8 @@ static Evas_List *handlers = NULL;
static Evas_List *borders = NULL;
static E_Border *focused = NULL;
extern int _e_desk_current_changing;
int E_EVENT_BORDER_ADD = 0;
int E_EVENT_BORDER_REMOVE = 0;
int E_EVENT_BORDER_DESK_SET = 0;
@ -371,7 +373,8 @@ e_border_hide(E_Border *bd)
visible = 0;
ecore_x_window_prop_card32_set(bd->client.win, E_ATOM_MAPPED, &visible, 1);
ecore_x_window_prop_card32_set(bd->client.win, E_ATOM_MANAGED, &visible, 1);
if (!_e_desk_current_changing)
ecore_x_window_prop_card32_set(bd->client.win, E_ATOM_MANAGED, &visible, 1);
ev = calloc(1, sizeof(E_Event_Border_Hide));
ev->border = bd;

View File

@ -9,11 +9,13 @@
*/
static void _e_desk_free(E_Desk *desk);
int _e_desk_current_changing;
static int desk_count;
int
e_desk_init(void)
{
_e_desk_current_changing = 0;
desk_count = 0;
return 1;
}
@ -64,6 +66,7 @@ e_desk_show(E_Desk *desk)
E_OBJECT_TYPE_CHECK(desk, E_DESK_TYPE);
if (desk->visible) return;
_e_desk_current_changing = 1;
for (l = desk->zone->container->clients; l; l = l->next)
{
E_Border *bd = l->data;
@ -96,6 +99,7 @@ e_desk_show(E_Desk *desk)
}
}
desk->visible = 1;
_e_desk_current_changing = 0;
}
void