src/solaris/classes/sun/awt/X11/XEmbedCanvasPeer.java

Print this page




 671                   focusPrev();
 672                   break;
 673               case XEMBED_REGISTER_ACCELERATOR:
 674                   registerAccelerator(msg.get_data(2), msg.get_data(3), msg.get_data(4));
 675                   break;
 676               case XEMBED_UNREGISTER_ACCELERATOR:
 677                   unregisterAccelerator(msg.get_data(2));
 678                   break;
 679               case NON_STANDARD_XEMBED_GTK_GRAB_KEY:
 680                   grabKey(msg.get_data(3), msg.get_data(4));
 681                   break;
 682               case NON_STANDARD_XEMBED_GTK_UNGRAB_KEY:
 683                   ungrabKey(msg.get_data(3), msg.get_data(4));
 684                   break;
 685             }
 686         } else {
 687             xembedLog.finer("But XEmbed is not Active!");
 688         }
 689     }
 690 

 691     private static class XEmbedDropTarget extends DropTarget {
 692         public void addDropTargetListener(DropTargetListener dtl)
 693           throws TooManyListenersException {
 694             // Drop target listeners registered with this target will never be
 695             // notified, since all drag notifications are routed to the XEmbed
 696             // client. To avoid confusion we prohibit listeners registration
 697             // by throwing TooManyListenersException as if there is a listener
 698             // registered with this target already.
 699             throw new TooManyListenersException();
 700         }
 701     }
 702 
 703     public void setXEmbedDropTarget() {
 704         // Register a drop site on the top level.
 705         Runnable r = new Runnable() {
 706                 public void run() {
 707                     target.setDropTarget(new XEmbedDropTarget());
 708                 }
 709             };
 710         SunToolkit.executeOnEventHandlerThread(target, r);




 671                   focusPrev();
 672                   break;
 673               case XEMBED_REGISTER_ACCELERATOR:
 674                   registerAccelerator(msg.get_data(2), msg.get_data(3), msg.get_data(4));
 675                   break;
 676               case XEMBED_UNREGISTER_ACCELERATOR:
 677                   unregisterAccelerator(msg.get_data(2));
 678                   break;
 679               case NON_STANDARD_XEMBED_GTK_GRAB_KEY:
 680                   grabKey(msg.get_data(3), msg.get_data(4));
 681                   break;
 682               case NON_STANDARD_XEMBED_GTK_UNGRAB_KEY:
 683                   ungrabKey(msg.get_data(3), msg.get_data(4));
 684                   break;
 685             }
 686         } else {
 687             xembedLog.finer("But XEmbed is not Active!");
 688         }
 689     }
 690 
 691     @SuppressWarnings("serial") // JDK-implementation class
 692     private static class XEmbedDropTarget extends DropTarget {
 693         public void addDropTargetListener(DropTargetListener dtl)
 694           throws TooManyListenersException {
 695             // Drop target listeners registered with this target will never be
 696             // notified, since all drag notifications are routed to the XEmbed
 697             // client. To avoid confusion we prohibit listeners registration
 698             // by throwing TooManyListenersException as if there is a listener
 699             // registered with this target already.
 700             throw new TooManyListenersException();
 701         }
 702     }
 703 
 704     public void setXEmbedDropTarget() {
 705         // Register a drop site on the top level.
 706         Runnable r = new Runnable() {
 707                 public void run() {
 708                     target.setDropTarget(new XEmbedDropTarget());
 709                 }
 710             };
 711         SunToolkit.executeOnEventHandlerThread(target, r);