src/java.desktop/unix/classes/sun/awt/X11/XEmbedHelper.java

Print this page




  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package sun.awt.X11;
  27 
  28 import sun.misc.Unsafe;
  29 
  30 import sun.util.logging.PlatformLogger;
  31 
  32 import java.awt.AWTKeyStroke;
  33 import java.awt.event.InputEvent;
  34 
  35 /**
  36  * Common class for all XEmbed protocol participating classes.
  37  * Contains constant definitions and helper routines.
  38  */
  39 public class XEmbedHelper {
  40     private static final PlatformLogger xembedLog = PlatformLogger.getLogger("sun.awt.X11.xembed");
  41     final static Unsafe unsafe = Unsafe.getUnsafe();
  42 
  43     final static int XEMBED_VERSION = 0,
  44         XEMBED_MAPPED = (1 << 0);
  45 /* XEMBED messages */
  46     final static int XEMBED_EMBEDDED_NOTIFY     =       0;
  47     final static int XEMBED_WINDOW_ACTIVATE  =  1;
  48     final static int XEMBED_WINDOW_DEACTIVATE =         2;
  49     final static int XEMBED_REQUEST_FOCUS               =3;
  50     final static int XEMBED_FOCUS_IN    =       4;
  51     final static int XEMBED_FOCUS_OUT   =       5;
  52     final static int XEMBED_FOCUS_NEXT  =       6;
  53     final static int XEMBED_FOCUS_PREV  =       7;
  54 /* 8-9 were used for XEMBED_GRAB_KEY/XEMBED_UNGRAB_KEY */
  55     final static int XEMBED_GRAB_KEY = 8;
  56     final static int XEMBED_UNGRAB_KEY = 9;
  57     final static int XEMBED_MODALITY_ON         =       10;
  58     final static int XEMBED_MODALITY_OFF        =       11;
  59     final static int XEMBED_REGISTER_ACCELERATOR =    12;
  60     final static int XEMBED_UNREGISTER_ACCELERATOR=   13;
  61     final static int XEMBED_ACTIVATE_ACCELERATOR  =   14;
  62 
  63     final static int NON_STANDARD_XEMBED_GTK_GRAB_KEY = 108;
  64     final static int NON_STANDARD_XEMBED_GTK_UNGRAB_KEY = 109;
  65 
  66 //     A detail code is required for XEMBED_FOCUS_IN. The following values are valid:
  67 /* Details for  XEMBED_FOCUS_IN: */
  68     final static int XEMBED_FOCUS_CURRENT       =       0;
  69     final static int XEMBED_FOCUS_FIRST         =       1;
  70     final static int XEMBED_FOCUS_LAST  =       2;
  71 
  72 // Modifiers bits
  73     final static int XEMBED_MODIFIER_SHIFT   = (1 << 0);
  74     final static int XEMBED_MODIFIER_CONTROL = (1 << 1);
  75     final static int XEMBED_MODIFIER_ALT     = (1 << 2);
  76     final static int XEMBED_MODIFIER_SUPER   = (1 << 3);
  77     final static int XEMBED_MODIFIER_HYPER   = (1 << 4);
  78 
  79     static XAtom XEmbedInfo;
  80     static XAtom XEmbed;
  81 
  82     XEmbedHelper() {
  83         if (XEmbed == null) {
  84             XEmbed = XAtom.get("_XEMBED");
  85             if (xembedLog.isLoggable(PlatformLogger.Level.FINER)) {
  86                 xembedLog.finer("Created atom " + XEmbed.toString());
  87             }
  88         }
  89         if (XEmbedInfo == null) {
  90             XEmbedInfo = XAtom.get("_XEMBED_INFO");
  91             if (xembedLog.isLoggable(PlatformLogger.Level.FINER)) {
  92                 xembedLog.finer("Created atom " + XEmbedInfo.toString());
  93             }
  94         }
  95     }
  96 
  97     void sendMessage(long window, int message) {




  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any
  23  * questions.
  24  */
  25 
  26 package sun.awt.X11;
  27 
  28 import sun.misc.Unsafe;
  29 
  30 import sun.util.logging.PlatformLogger;
  31 
  32 import java.awt.AWTKeyStroke;
  33 import java.awt.event.InputEvent;
  34 
  35 /**
  36  * Common class for all XEmbed protocol participating classes.
  37  * Contains constant definitions and helper routines.
  38  */
  39 public class XEmbedHelper {
  40     private static final PlatformLogger xembedLog = PlatformLogger.getLogger("sun.awt.X11.xembed");
  41     static final Unsafe unsafe = Unsafe.getUnsafe();
  42 
  43     static final int XEMBED_VERSION = 0,
  44         XEMBED_MAPPED = (1 << 0);
  45 /* XEMBED messages */
  46     static final int XEMBED_EMBEDDED_NOTIFY     =       0;
  47     static final int XEMBED_WINDOW_ACTIVATE  =  1;
  48     static final int XEMBED_WINDOW_DEACTIVATE =         2;
  49     static final int XEMBED_REQUEST_FOCUS               =3;
  50     static final int XEMBED_FOCUS_IN    =       4;
  51     static final int XEMBED_FOCUS_OUT   =       5;
  52     static final int XEMBED_FOCUS_NEXT  =       6;
  53     static final int XEMBED_FOCUS_PREV  =       7;
  54 /* 8-9 were used for XEMBED_GRAB_KEY/XEMBED_UNGRAB_KEY */
  55     static final int XEMBED_GRAB_KEY = 8;
  56     static final int XEMBED_UNGRAB_KEY = 9;
  57     static final int XEMBED_MODALITY_ON         =       10;
  58     static final int XEMBED_MODALITY_OFF        =       11;
  59     static final int XEMBED_REGISTER_ACCELERATOR =    12;
  60     static final int XEMBED_UNREGISTER_ACCELERATOR=   13;
  61     static final int XEMBED_ACTIVATE_ACCELERATOR  =   14;
  62 
  63     static final int NON_STANDARD_XEMBED_GTK_GRAB_KEY = 108;
  64     static final int NON_STANDARD_XEMBED_GTK_UNGRAB_KEY = 109;
  65 
  66 //     A detail code is required for XEMBED_FOCUS_IN. The following values are valid:
  67 /* Details for  XEMBED_FOCUS_IN: */
  68     static final int XEMBED_FOCUS_CURRENT       =       0;
  69     static final int XEMBED_FOCUS_FIRST         =       1;
  70     static final int XEMBED_FOCUS_LAST  =       2;
  71 
  72 // Modifiers bits
  73     static final int XEMBED_MODIFIER_SHIFT   = (1 << 0);
  74     static final int XEMBED_MODIFIER_CONTROL = (1 << 1);
  75     static final int XEMBED_MODIFIER_ALT     = (1 << 2);
  76     static final int XEMBED_MODIFIER_SUPER   = (1 << 3);
  77     static final int XEMBED_MODIFIER_HYPER   = (1 << 4);
  78 
  79     static XAtom XEmbedInfo;
  80     static XAtom XEmbed;
  81 
  82     XEmbedHelper() {
  83         if (XEmbed == null) {
  84             XEmbed = XAtom.get("_XEMBED");
  85             if (xembedLog.isLoggable(PlatformLogger.Level.FINER)) {
  86                 xembedLog.finer("Created atom " + XEmbed.toString());
  87             }
  88         }
  89         if (XEmbedInfo == null) {
  90             XEmbedInfo = XAtom.get("_XEMBED_INFO");
  91             if (xembedLog.isLoggable(PlatformLogger.Level.FINER)) {
  92                 xembedLog.finer("Created atom " + XEmbedInfo.toString());
  93             }
  94         }
  95     }
  96 
  97     void sendMessage(long window, int message) {