< prev index next >

src/java.desktop/windows/classes/sun/awt/windows/WToolkit.java

Print this page




1087             ((WWindowPeer) peer).ungrab();
1088         }
1089     }
1090 
1091     ///////////////////////////////////////////////////////////////////////////
1092     // The following code is used for support of automatic showing of the touch
1093     // keyboard for text components and is accessed only from EDT.
1094     ///////////////////////////////////////////////////////////////////////////
1095     private volatile Component compOnTouchDownEvent;
1096     private volatile Component compOnMousePressedEvent;
1097 
1098     @Override
1099     public void showOrHideTouchKeyboard(Component comp, AWTEvent e) {
1100         if ((comp == null) || (e == null) ||
1101             (!(comp instanceof TextComponent) &&
1102                 !(comp instanceof JTextComponent))) {
1103             return;
1104         }
1105 
1106         if ((e instanceof MouseEvent) && comp.isEnabled() &&

1107             (((comp instanceof TextComponent) &&
1108                     ((TextComponent)comp).isEditable()) ||
1109                 ((comp instanceof JTextComponent) &&
1110                     ((JTextComponent)comp).isEditable()))) {
1111             MouseEvent me = (MouseEvent)e;
1112             if (me.getID() == MouseEvent.MOUSE_PRESSED) {
1113                 if (AWTAccessor.getMouseEventAccessor()
1114                         .isCausedByTouchEvent(me)) {
1115                     compOnTouchDownEvent = comp;
1116                 } else {
1117                     compOnMousePressedEvent = comp;
1118                 }
1119             } else if (me.getID() == MouseEvent.MOUSE_RELEASED) {
1120                 if (AWTAccessor.getMouseEventAccessor()
1121                         .isCausedByTouchEvent(me)) {
1122                     if (compOnTouchDownEvent == comp) {
1123                         showTouchKeyboard(true);
1124                     }
1125                     compOnTouchDownEvent = null;
1126                 } else {




1087             ((WWindowPeer) peer).ungrab();
1088         }
1089     }
1090 
1091     ///////////////////////////////////////////////////////////////////////////
1092     // The following code is used for support of automatic showing of the touch
1093     // keyboard for text components and is accessed only from EDT.
1094     ///////////////////////////////////////////////////////////////////////////
1095     private volatile Component compOnTouchDownEvent;
1096     private volatile Component compOnMousePressedEvent;
1097 
1098     @Override
1099     public void showOrHideTouchKeyboard(Component comp, AWTEvent e) {
1100         if ((comp == null) || (e == null) ||
1101             (!(comp instanceof TextComponent) &&
1102                 !(comp instanceof JTextComponent))) {
1103             return;
1104         }
1105 
1106         if ((e instanceof MouseEvent) && comp.isEnabled() &&
1107             comp.isFocusable() &&
1108             (((comp instanceof TextComponent) &&
1109                     ((TextComponent)comp).isEditable()) ||
1110                 ((comp instanceof JTextComponent) &&
1111                     ((JTextComponent)comp).isEditable()))) {
1112             MouseEvent me = (MouseEvent)e;
1113             if (me.getID() == MouseEvent.MOUSE_PRESSED) {
1114                 if (AWTAccessor.getMouseEventAccessor()
1115                         .isCausedByTouchEvent(me)) {
1116                     compOnTouchDownEvent = comp;
1117                 } else {
1118                     compOnMousePressedEvent = comp;
1119                 }
1120             } else if (me.getID() == MouseEvent.MOUSE_RELEASED) {
1121                 if (AWTAccessor.getMouseEventAccessor()
1122                         .isCausedByTouchEvent(me)) {
1123                     if (compOnTouchDownEvent == comp) {
1124                         showTouchKeyboard(true);
1125                     }
1126                     compOnTouchDownEvent = null;
1127                 } else {


< prev index next >