]> Dogcows Code - chaz/openbox/blobdiff - openbox/popup.c
Some fixes for the pager popups, and avoid a crash if you destroy a popup while it...
[chaz/openbox] / openbox / popup.c
index 770f33d0ac73047d1a04d7f0b174a6892a766e02..5cbe0347cc4846219757694d85c19be33214db18 100644 (file)
@@ -65,6 +65,8 @@ ObPopup *popup_new(void)
 void popup_free(ObPopup *self)
 {
     if (self) {
+        popup_hide(self); /* make sure it's not showing or is being delayed and
+                             will be shown */
         XDestroyWindow(ob_display, self->bg);
         XDestroyWindow(ob_display, self->text);
         RrAppearanceFree(self->a_bg);
@@ -320,7 +322,7 @@ void popup_hide(ObPopup *self)
 
         event_end_ignore_all_enters(ignore_start);
     } else if (self->delay_mapped) {
-        ob_main_loop_timeout_remove(ob_main_loop, popup_show_timeout);
+        ob_main_loop_timeout_remove_data(ob_main_loop, popup_show_timeout, self, FALSE);
         self->delay_mapped = FALSE;
     }
 }
This page took 0.025556 seconds and 4 git commands to generate.