equal
deleted
inserted
replaced
25 |
25 |
26 package sun.awt.X11; |
26 package sun.awt.X11; |
27 |
27 |
28 import sun.misc.Unsafe; |
28 import sun.misc.Unsafe; |
29 |
29 |
30 import java.util.logging.*; |
30 import sun.util.logging.PlatformLogger; |
|
31 |
31 import java.awt.AWTKeyStroke; |
32 import java.awt.AWTKeyStroke; |
32 import java.awt.event.InputEvent; |
33 import java.awt.event.InputEvent; |
33 |
34 |
34 /** |
35 /** |
35 * Common class for all XEmbed protocol participating classes. |
36 * Common class for all XEmbed protocol participating classes. |
36 * Contains constant definitions and helper routines. |
37 * Contains constant definitions and helper routines. |
37 */ |
38 */ |
38 public class XEmbedHelper { |
39 public class XEmbedHelper { |
39 private static final Logger xembedLog = Logger.getLogger("sun.awt.X11.xembed"); |
40 private static final PlatformLogger xembedLog = PlatformLogger.getLogger("sun.awt.X11.xembed"); |
40 final static Unsafe unsafe = Unsafe.getUnsafe(); |
41 final static Unsafe unsafe = Unsafe.getUnsafe(); |
41 |
42 |
42 final static int XEMBED_VERSION = 0, |
43 final static int XEMBED_VERSION = 0, |
43 XEMBED_MAPPED = (1 << 0); |
44 XEMBED_MAPPED = (1 << 0); |
44 /* XEMBED messages */ |
45 /* XEMBED messages */ |
79 static XAtom XEmbed; |
80 static XAtom XEmbed; |
80 |
81 |
81 XEmbedHelper() { |
82 XEmbedHelper() { |
82 if (XEmbed == null) { |
83 if (XEmbed == null) { |
83 XEmbed = XAtom.get("_XEMBED"); |
84 XEmbed = XAtom.get("_XEMBED"); |
84 if (xembedLog.isLoggable(Level.FINER)) xembedLog.finer("Created atom " + XEmbed.toString()); |
85 if (xembedLog.isLoggable(PlatformLogger.FINER)) xembedLog.finer("Created atom " + XEmbed.toString()); |
85 } |
86 } |
86 if (XEmbedInfo == null) { |
87 if (XEmbedInfo == null) { |
87 XEmbedInfo = XAtom.get("_XEMBED_INFO"); |
88 XEmbedInfo = XAtom.get("_XEMBED_INFO"); |
88 if (xembedLog.isLoggable(Level.FINER)) xembedLog.finer("Created atom " + XEmbedInfo.toString()); |
89 if (xembedLog.isLoggable(PlatformLogger.FINER)) xembedLog.finer("Created atom " + XEmbedInfo.toString()); |
89 } |
90 } |
90 } |
91 } |
91 |
92 |
92 void sendMessage(long window, int message) { |
93 void sendMessage(long window, int message) { |
93 sendMessage(window, message, 0, 0, 0); |
94 sendMessage(window, message, 0, 0, 0); |
103 msg.set_data(2, detail); |
104 msg.set_data(2, detail); |
104 msg.set_data(3, data1); |
105 msg.set_data(3, data1); |
105 msg.set_data(4, data2); |
106 msg.set_data(4, data2); |
106 XToolkit.awtLock(); |
107 XToolkit.awtLock(); |
107 try { |
108 try { |
108 if (xembedLog.isLoggable(Level.FINE)) xembedLog.fine("Sending " + XEmbedMessageToString(msg)); |
109 if (xembedLog.isLoggable(PlatformLogger.FINE)) xembedLog.fine("Sending " + XEmbedMessageToString(msg)); |
109 XlibWrapper.XSendEvent(XToolkit.getDisplay(), window, false, XConstants.NoEventMask, msg.pData); |
110 XlibWrapper.XSendEvent(XToolkit.getDisplay(), window, false, XConstants.NoEventMask, msg.pData); |
110 } |
111 } |
111 finally { |
112 finally { |
112 XToolkit.awtUnlock(); |
113 XToolkit.awtUnlock(); |
113 } |
114 } |