X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Fframe.c;h=dfb9c49a2e0c586f56f36efe36c08f9bfc770d40;hb=refs%2Fheads%2Fchaz;hp=24d3eb535a93ae3f3eaa428298df54585ffefa65;hpb=8a26a5190ca8479b96261c9e896e88bd32f56d06;p=chaz%2Fopenbox diff --git a/openbox/frame.c b/openbox/frame.c index 24d3eb53..dfb9c49a 100644 --- a/openbox/frame.c +++ b/openbox/frame.c @@ -387,11 +387,10 @@ void frame_adjust_area(ObFrame *self, gboolean moved, if (self->decorations & OB_FRAME_DECOR_TITLEBAR) self->size.top += ob_rr_theme->title_height + self->bwidth; else if (self->max_horz && self->max_vert) { - /* A maximized and undecorated window needs a small border on the + /* A maximized and undecorated window needs a border on the top of the window to let the user still undecorate/unmaximize the window via the client menu. */ - /* XXX This size should probably be a theme option. */ - self->size.top += 1; + self->size.top += self->bwidth; } if (self->decorations & OB_FRAME_DECOR_HANDLE && @@ -1674,11 +1673,13 @@ static gboolean flash_timeout(gpointer data) ObFrame *self = data; GTimeVal now; - g_get_current_time(&now); - if (now.tv_sec > self->flash_end.tv_sec || - (now.tv_sec == self->flash_end.tv_sec && - now.tv_usec >= self->flash_end.tv_usec)) - self->flashing = FALSE; + if (config_frame_flash_duration != 0) { + g_get_current_time(&now); + if (now.tv_sec > self->flash_end.tv_sec || + (now.tv_sec == self->flash_end.tv_sec && + now.tv_usec >= self->flash_end.tv_usec)) + self->flashing = FALSE; + } if (!self->flashing) return FALSE; /* we are done */ @@ -1694,14 +1695,19 @@ static gboolean flash_timeout(gpointer data) void frame_flash_start(ObFrame *self) { + if (config_frame_flash_delay == 0) return; + self->flash_on = self->focused; if (!self->flashing) self->flash_timer = g_timeout_add_full(G_PRIORITY_DEFAULT, - 600, flash_timeout, self, + config_frame_flash_delay, flash_timeout, self, flash_done); - g_get_current_time(&self->flash_end); - g_time_val_add(&self->flash_end, G_USEC_PER_SEC * 5); + + if (config_frame_flash_duration != 0) { + g_get_current_time(&self->flash_end); + g_time_val_add(&self->flash_end, 1000 * config_frame_flash_duration); + } self->flashing = TRUE; }