*fix* finish dnd problems and autohide

git-svn-id: http://tint2.googlecode.com/svn/trunk@514 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
This commit is contained in:
Andreas.Fink85
2010-06-26 12:35:35 +00:00
parent 72cdc49512
commit 357e37282a
5 changed files with 11 additions and 6 deletions

View File

@@ -708,6 +708,7 @@ int main (int argc, char *argv[])
Panel *panel;
GSList *it;
struct timeval* timeout;
int hidden_dnd = 0;
start:
init (argc, argv);
@@ -791,11 +792,17 @@ start:
else if (e.type == LeaveNotify)
autohide_trigger_hide(panel);
if (panel->is_hidden) {
if (e.type == ClientMessage && e.xclient.message_type == server.atom.XdndPosition)
if (e.type == ClientMessage && e.xclient.message_type == server.atom.XdndPosition) {
hidden_dnd = 1;
autohide_show(panel);
}
else
continue; // discard further processing of this event because the panel is not visible yet
}
else if (hidden_dnd && e.type == ClientMessage && e.xclient.message_type == server.atom.XdndLeave) {
hidden_dnd = 0;
autohide_hide(panel);
}
}
switch (e.type) {