changeset 6326:7764e0491978

PR1400: Menu of maximized AWT window not working in Mate
author andrew
date Tue, 08 Oct 2013 16:37:50 +0100
parents 6e44e8962a31
children 8d3ec25853a6
files src/solaris/classes/sun/awt/X11/XWM.java
diffstat 1 files changed, 12 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/solaris/classes/sun/awt/X11/XWM.java	Mon Sep 16 15:43:06 2013 -0400
+++ b/src/solaris/classes/sun/awt/X11/XWM.java	Tue Oct 08 16:37:50 2013 +0100
@@ -104,7 +104,8 @@
         COMPIZ_WM = 12,
         LG3D_WM = 13,
         CWM_WM = 14,
-        MUTTER_WM = 15;
+        MUTTER_WM = 15,
+        MARCO_WM = 16;
     public String toString() {
         switch  (WMID) {
           case NO_WM:
@@ -135,6 +136,8 @@
               return "CWM";
           case MUTTER_WM:
               return "Mutter";
+          case MARCO_WM:
+              return "Marco";
           case UNDETERMINED_WM:
           default:
               return "Undetermined WM";
@@ -581,6 +584,10 @@
         return isNetWMName("Mutter") || isNetWMName("GNOME Shell");
     }
 
+    static boolean isMarco() {
+        return isNetWMName("Marco");
+    }
+
     // TODO: according to wikipedia, compiz is now reparenting. This should
     // probably be updated.
     static boolean isNonReparentingWM() {
@@ -766,6 +773,8 @@
                 awt_wmgr = CWM_WM;
             } else if (doIsIceWM && isIceWM()) {
                 awt_wmgr = XWM.ICE_WM;
+            } else if (isMarco()) {
+                awt_wmgr = XWM.MARCO_WM;
             }
             /*
              * We don't check for legacy WM when we already know that WM
@@ -1065,6 +1074,7 @@
           case XWM.SAWFISH_WM:
           case XWM.ICE_WM:
           case XWM.METACITY_WM:
+          case XWM.MARCO_WM:
               return true;
           case XWM.OPENLOOK_WM:
           case XWM.MOTIF_WM:
@@ -1091,7 +1101,7 @@
                * WMs that talk NET/WIN protocol, but do not support
                * unidirectional maximization.
                */
-              if (getWMID() == METACITY_WM) {
+              if (getWMID() == METACITY_WM || getWMID() == MARCO_WM) {
                   /* "This is a deliberate policy decision." -hp */
                   return false;
               }