27 |
27 |
28 import java.io.IOException; |
28 import java.io.IOException; |
29 |
29 |
30 import java.util.HashMap; |
30 import java.util.HashMap; |
31 |
31 |
32 import java.util.logging.*; |
32 import sun.util.logging.PlatformLogger; |
33 |
33 |
34 /** |
34 /** |
35 * An abstract class for drop protocols on X11 systems. |
35 * An abstract class for drop protocols on X11 systems. |
36 * Contains protocol-independent drop target code. |
36 * Contains protocol-independent drop target code. |
37 * |
37 * |
38 * @since 1.5 |
38 * @since 1.5 |
39 */ |
39 */ |
40 abstract class XDropTargetProtocol { |
40 abstract class XDropTargetProtocol { |
41 private static final Logger logger = |
41 private static final PlatformLogger logger = |
42 Logger.getLogger("sun.awt.X11.xembed.xdnd.XDropTargetProtocol"); |
42 PlatformLogger.getLogger("sun.awt.X11.xembed.xdnd.XDropTargetProtocol"); |
43 |
43 |
44 private final XDropTargetProtocolListener listener; |
44 private final XDropTargetProtocolListener listener; |
45 |
45 |
46 public static final int EMBEDDER_ALREADY_REGISTERED = 0; |
46 public static final int EMBEDDER_ALREADY_REGISTERED = 0; |
47 |
47 |
114 */ |
114 */ |
115 protected final boolean forwardClientMessageToToplevel(long toplevel, |
115 protected final boolean forwardClientMessageToToplevel(long toplevel, |
116 XClientMessageEvent xclient) { |
116 XClientMessageEvent xclient) { |
117 EmbedderRegistryEntry entry = getEmbedderRegistryEntry(toplevel); |
117 EmbedderRegistryEntry entry = getEmbedderRegistryEntry(toplevel); |
118 |
118 |
119 if (logger.isLoggable(Level.FINEST)) { |
119 if (logger.isLoggable(PlatformLogger.FINEST)) { |
120 logger.log(Level.FINEST, " entry={0}", new Object[] {entry}); |
120 logger.finest(" entry={0}", entry); |
121 } |
121 } |
122 // Window not registered as an embedder for this protocol. |
122 // Window not registered as an embedder for this protocol. |
123 if (entry == null) { |
123 if (entry == null) { |
124 return false; |
124 return false; |
125 } |
125 } |
126 |
126 |
127 if (logger.isLoggable(Level.FINEST)) { |
127 if (logger.isLoggable(PlatformLogger.FINEST)) { |
128 logger.log(Level.FINEST, " entry.isOverriden()={0}", new Object[] {entry.isOverriden()}); |
128 logger.finest(" entry.isOverriden()={0}", entry.isOverriden()); |
129 } |
129 } |
130 // Window didn't have an associated drop site, so there is no need |
130 // Window didn't have an associated drop site, so there is no need |
131 // to forward the message. |
131 // to forward the message. |
132 if (!entry.isOverriden()) { |
132 if (!entry.isOverriden()) { |
133 return false; |
133 return false; |
135 |
135 |
136 adjustEventForForwarding(xclient, entry); |
136 adjustEventForForwarding(xclient, entry); |
137 |
137 |
138 long proxy = entry.getProxy(); |
138 long proxy = entry.getProxy(); |
139 |
139 |
140 if (logger.isLoggable(Level.FINEST)) { |
140 if (logger.isLoggable(PlatformLogger.FINEST)) { |
141 logger.log(Level.FINEST, " proxy={0} toplevel={1}", new Object[] {proxy, toplevel}); |
141 logger.finest(" proxy={0} toplevel={1}", proxy, toplevel); |
142 } |
142 } |
143 if (proxy == 0) { |
143 if (proxy == 0) { |
144 proxy = toplevel; |
144 proxy = toplevel; |
145 } |
145 } |
146 |
146 |