Move final frame adjust in flashing to timeout func
authorMikael Magnusson <mikachu@gmail.com>
Mon, 3 Nov 2014 11:52:11 +0000 (12:52 +0100)
committerMikael Magnusson <mikachu@gmail.com>
Mon, 3 Nov 2014 11:52:21 +0000 (12:52 +0100)
This possibly avoids badness when the timeout destroy notify is removed
from the frame release func.

openbox/frame.c

index 68332df..8966972 100644 (file)
@@ -1664,9 +1664,6 @@ static void flash_done(gpointer data)
 {
     ObFrame *self = data;
 
 {
     ObFrame *self = data;
 
-    if (self->focused != self->flash_on)
-        frame_adjust_focus(self, self->focused);
-
     self->flash_timer = 0;
 }
 
     self->flash_timer = 0;
 }
 
@@ -1681,8 +1678,12 @@ static gboolean flash_timeout(gpointer data)
          now.tv_usec >= self->flash_end.tv_usec))
         self->flashing = FALSE;
 
          now.tv_usec >= self->flash_end.tv_usec))
         self->flashing = FALSE;
 
-    if (!self->flashing)
+    if (!self->flashing) {
+        if (self->focused != self->flash_on)
+            frame_adjust_focus(self, self->focused);
+
         return FALSE; /* we are done */
         return FALSE; /* we are done */
+    }
 
     self->flash_on = !self->flash_on;
     if (!self->focused) {
 
     self->flash_on = !self->flash_on;
     if (!self->focused) {