X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=openbox%2Fevent.c;h=f5da603b0b9989f19bc1bd3a68a7159ebc7614bb;hb=5074d902aa215a2a656980d31b19574a5db1f795;hp=0799f3b38d150a0ea83aa424f2cad7a0f5f49ac1;hpb=ba2de2d512de0a2f19081ed76c550382e5af7294;p=chaz%2Fopenbox diff --git a/openbox/event.c b/openbox/event.c index 0799f3b3..f5da603b 100644 --- a/openbox/event.c +++ b/openbox/event.c @@ -1101,13 +1101,14 @@ static void event_handle_client(ObClient *client, XEvent *e) desktop. eg. open amarok window on desktop 1, switch to desktop 2, click amarok tray icon. it will move by its decoration size. */ - if (move && !resize && - x != client->area.x && + if (x != client->area.x && x == (client->frame->area.x + client->frame->size.left - (gint)client->border_width) && y != client->area.y && y == (client->frame->area.y + client->frame->size.top - - (gint)client->border_width)) + (gint)client->border_width) && + w == client->area.width && + h == client->area.height) { ob_debug_type(OB_DEBUG_APP_BUGS, "Application %s is trying to move via " @@ -1508,7 +1509,9 @@ static void event_handle_dock(ObDock *s, XEvent *e) dock_hide(FALSE); break; case LeaveNotify: - dock_hide(TRUE); + /* don't hide when moving into a dock app */ + if (e->xcrossing.detail != NotifyInferior) + dock_hide(TRUE); break; } }