Index: uspace/srv/hid/display/seat.c
===================================================================
--- uspace/srv/hid/display/seat.c	(revision 9e84d2c5a3c35725eebdbe42c5716609678174c6)
+++ uspace/srv/hid/display/seat.c	(revision 5823aef3ecfbd8c18b8bd13e2498dd76a53617c2)
@@ -432,5 +432,5 @@
 	 * below, anyway.
 	 */
-	if (seat->popup != wnd && seat->popup != NULL) {
+	if (seat->popup != NULL) {
 		rc = ds_window_post_pos_event(seat->popup, event);
 		if (rc != EOK)
@@ -452,7 +452,13 @@
 		ds_seat_set_client_cursor(seat, wnd->cursor);
 
-		rc = ds_window_post_pos_event(wnd, event);
-		if (rc != EOK)
-			return rc;
+		/*
+		 * Only deliver event if we didn't already deliver it
+		 * to the same window above.
+		 */
+		if (wnd != seat->popup) {
+			rc = ds_window_post_pos_event(wnd, event);
+			if (rc != EOK)
+				return rc;
+		}
 	} else {
 		/* Not over a window */
