JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
quirk Firefox Dialog
[spectrwm.git] / scrotwm.c
index 6cab5d3..d5a9c19 100644 (file)
--- a/scrotwm.c
+++ b/scrotwm.c
@@ -160,7 +160,7 @@ int                 font_adjusted = 0;
 /* dialog windows */
 double                 dialog_ratio = .6;
 /* status bar */
-#define SWM_BAR_MAX    (128)
+#define SWM_BAR_MAX    (256)
 char                   *bar_argv[] = { NULL, NULL };
 int                    bar_pipe[2];
 char                   bar_ext[SWM_BAR_MAX];
@@ -354,6 +354,7 @@ struct quirk {
        { "OpenOffice.org 2.4", "VCLSalFrame",  SWM_Q_FLOAT },
        { "OpenOffice.org 3.0", "VCLSalFrame",  SWM_Q_FLOAT },
        { "Firefox-bin",        "firefox-bin",  SWM_Q_TRANSSZ },
+       { "Firefox",            "Dialog",       SWM_Q_FLOAT },
        { "Gimp",               "gimp",         SWM_Q_FLOAT | SWM_Q_ANYWHERE },
        { "XTerm",              "xterm",        SWM_Q_XTERM_FONTADJ },
        { "xine",               "Xine Window",  SWM_Q_FLOAT | SWM_Q_ANYWHERE },
@@ -1288,6 +1289,10 @@ focus(struct swm_region *r, union arg *args)
 
        case SWM_ARG_ID_FOCUSMAIN:
                winfocus = TAILQ_FIRST(wl);
+               if (winfocus == cur_focus)
+                       winfocus = cur_focus->ws->focus_prev;
+               if (winfocus == NULL)
+                       return;
                break;
 
        default: