summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Riedi <andrewriedi@gmail.com>2007-07-25 17:30:42 -0700
committerAndrew Riedi <andrewriedi@gmail.com>2007-07-25 17:30:42 -0700
commit7a2708777648690daa4f2eac6ecb7f1d95b0246d (patch)
tree475fac0746dc87fdfd66e5ccd75782e0705d5e03
parentdfa31c4c74165dac16ca9a828c58a89573018457 (diff)
downloadworkarounds-7a2708777648690daa4f2eac6ecb7f1d95b0246d.tar.gz
workarounds-7a2708777648690daa4f2eac6ecb7f1d95b0246d.tar.bz2
Add the Firefox menu fix.
Based on a patch by Danny Baumann <dannybaumann@web.de>. (Thank you!)
-rw-r--r--workarounds.c9
-rw-r--r--workarounds.xml.in5
2 files changed, 14 insertions, 0 deletions
diff --git a/workarounds.c b/workarounds.c
index e5684bd..c4a8c71 100644
--- a/workarounds.c
+++ b/workarounds.c
@@ -98,6 +98,15 @@ static void workaroundsWindowAddNotify (CompWindow *w)
if ( workaroundsGetLegacyApps( w->screen->display ) )
workaroundsDoLegacyApps( w );
+ if (workaroundsGetFirefoxMenuFix (w->screen->display))
+ {
+ if (w->wmType == CompWindowTypeNormalMask &&
+ w->attrib.override_redirect)
+ {
+ w->wmType = CompWindowTypeDropdownMenuMask;
+ }
+ }
+
UNWRAP (ws, w->screen, windowAddNotify);
(*w->screen->windowAddNotify) (w);
WRAP (ws, w->screen, windowAddNotify, workaroundsWindowAddNotify);
diff --git a/workarounds.xml.in b/workarounds.xml.in
index 454e852..0f35c83 100644
--- a/workarounds.xml.in
+++ b/workarounds.xml.in
@@ -13,6 +13,11 @@
<_long>Make Wine and legacy applications work.</_long>
<default>true</default>
</option>
+ <option type="bool" name="firefox_menu_fix">
+ <_short>Firefox menu fix</_short>
+ <_long>Fix window type of Firefox and Thunderbird menus.</_long>
+ <default>true</default>
+ </option>
</display>
<screen>
</screen>