java/awt/List/KeyEventsTest/KeyEventsTest.java

Print this page


   1 /*
   2   test
   3   @bug 6190768 6190778
   4   @summary Tests that triggering events on AWT list by pressing CTRL + HOME, CTRL + END, PG-UP, PG-DOWN similar Motif behavior
   5   @author Dmitry.Cherepanov@SUN.COM area=awt.list


   6   @run applet KeyEventsTest.html
   7 */
   8 
   9 /**
  10  * KeyEventsTest.html
  11  *
  12  * summary:
  13  */
  14 
  15 import java.applet.Applet;
  16 import java.awt.*;
  17 import java.awt.event.*;
  18 import java.util.Set;
  19 import java.lang.reflect.*;
  20 import sun.awt.SunToolkit;

  21 
  22 public class KeyEventsTest extends Applet implements ItemListener, FocusListener, KeyListener
  23 {
  24     TestState currentState;
  25     final Object LOCK = new Object();
  26     final int ACTION_TIMEOUT = 500;
  27 
  28     List single = new List(3, false);
  29     List multiple = new List(3, true);
  30 
  31     Panel p1 = new Panel ();
  32     Panel p2 = new Panel ();
  33 
  34     public void init()
  35     {
  36         setLayout (new BorderLayout ());
  37 
  38         single.add("0");
  39         single.add("1");
  40         single.add("2");


 216             list.makeVisible(visibleIndex);
 217 
 218             r.delay(10);
 219 
 220             if (currentState.getKeyID() == KeyEvent.VK_HOME ||
 221                 currentState.getKeyID() == KeyEvent.VK_END){
 222                 r.keyPress(KeyEvent.VK_CONTROL);
 223             }
 224 
 225             r.delay(10);
 226             r.keyPress(currentState.getKeyID());
 227             r.delay(10);
 228             r.keyRelease(currentState.getKeyID());
 229             r.delay(10);
 230 
 231             if (currentState.getKeyID() == KeyEvent.VK_HOME ||
 232                 currentState.getKeyID() == KeyEvent.VK_END){
 233                 r.keyRelease(KeyEvent.VK_CONTROL);
 234             }
 235 
 236             ((SunToolkit)Toolkit.getDefaultToolkit()).realSync();
 237             r.delay(200);
 238 
 239             if (currentState.getTemplate() != currentState.getAction())
 240                 throw new RuntimeException("Test failed.");
 241 
 242         }
 243 
 244     }
 245 
 246     private void doTest()
 247       throws InterruptedException, InvocationTargetException {
 248 
 249         final String os = System.getProperty("os.name");
 250         final boolean isWin = os.startsWith("Win");





 251 
 252         System.out.println("multiple? selectedMoved? ?scrollMoved keyID? template? action?");
 253         test(new TestState(false, false, false, KeyEvent.VK_PAGE_UP, isWin?false:false));
 254         // SelectedMoved (false) != ScrollMoved (true) for single list not emulated
 255         test(new TestState(false, true, false, KeyEvent.VK_PAGE_UP, isWin?true:false));
 256         test(new TestState(false, true, true, KeyEvent.VK_PAGE_UP, isWin?true:true));
 257         test(new TestState(true, false, false, KeyEvent.VK_PAGE_UP, isWin?true:false));
 258         test(new TestState(true, false, true, KeyEvent.VK_PAGE_UP, isWin?true:false));
 259         test(new TestState(true, true, false, KeyEvent.VK_PAGE_UP, isWin?true:false));
 260         test(new TestState(true, true, true, KeyEvent.VK_PAGE_UP, isWin?true:false));
 261 
 262         test(new TestState(false, false, false, KeyEvent.VK_PAGE_DOWN, isWin?false:false));
 263         test(new TestState(false, true, false, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 264         test(new TestState(false, true, true, KeyEvent.VK_PAGE_DOWN, isWin?true:true));
 265         test(new TestState(true, false, false, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 266         test(new TestState(true, false, true, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 267         test(new TestState(true, true, false, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 268         test(new TestState(true, true, true, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 269 
 270         test(new TestState(false, false, false, KeyEvent.VK_HOME, isWin?false:true));


   1 /*
   2   test
   3   @bug 6190768 6190778
   4   @summary Tests that triggering events on AWT list by pressing CTRL + HOME, CTRL + END, PG-UP, PG-DOWN similar Motif behavior
   5   @author Dmitry.Cherepanov@SUN.COM area=awt.list
   6   @library ../../../../lib/testlibrary
   7   @build jdk.testlibrary.OSInfo
   8   @run applet KeyEventsTest.html
   9 */
  10 
  11 /**
  12  * KeyEventsTest.html
  13  *
  14  * summary:
  15  */
  16 
  17 import java.applet.Applet;
  18 import java.awt.*;
  19 import java.awt.event.*;
  20 import java.util.Set;
  21 import java.lang.reflect.*;
  22 
  23 import jdk.testlibrary.OSInfo;
  24 
  25 public class KeyEventsTest extends Applet implements ItemListener, FocusListener, KeyListener
  26 {
  27     TestState currentState;
  28     final Object LOCK = new Object();
  29     final int ACTION_TIMEOUT = 500;
  30 
  31     List single = new List(3, false);
  32     List multiple = new List(3, true);
  33 
  34     Panel p1 = new Panel ();
  35     Panel p2 = new Panel ();
  36 
  37     public void init()
  38     {
  39         setLayout (new BorderLayout ());
  40 
  41         single.add("0");
  42         single.add("1");
  43         single.add("2");


 219             list.makeVisible(visibleIndex);
 220 
 221             r.delay(10);
 222 
 223             if (currentState.getKeyID() == KeyEvent.VK_HOME ||
 224                 currentState.getKeyID() == KeyEvent.VK_END){
 225                 r.keyPress(KeyEvent.VK_CONTROL);
 226             }
 227 
 228             r.delay(10);
 229             r.keyPress(currentState.getKeyID());
 230             r.delay(10);
 231             r.keyRelease(currentState.getKeyID());
 232             r.delay(10);
 233 
 234             if (currentState.getKeyID() == KeyEvent.VK_HOME ||
 235                 currentState.getKeyID() == KeyEvent.VK_END){
 236                 r.keyRelease(KeyEvent.VK_CONTROL);
 237             }
 238 
 239             r.waitForIdle();
 240             r.delay(200);
 241 
 242             if (currentState.getTemplate() != currentState.getAction())
 243                 throw new RuntimeException("Test failed.");
 244 
 245         }
 246 
 247     }
 248 
 249     private void doTest()
 250       throws InterruptedException, InvocationTargetException {
 251 
 252         boolean isWin = false;
 253         if (OSInfo.getOSType() == OSInfo.OSType.WINDOWS) {
 254             isWin = true;
 255         }else if(OSInfo.getOSType() == OSInfo.OSType.MACOSX) {
 256             System.out.println("Not for OS X");
 257             return;
 258         }
 259 
 260         System.out.println("multiple? selectedMoved? ?scrollMoved keyID? template? action?");
 261         test(new TestState(false, false, false, KeyEvent.VK_PAGE_UP, isWin?false:false));
 262         // SelectedMoved (false) != ScrollMoved (true) for single list not emulated
 263         test(new TestState(false, true, false, KeyEvent.VK_PAGE_UP, isWin?true:false));
 264         test(new TestState(false, true, true, KeyEvent.VK_PAGE_UP, isWin?true:true));
 265         test(new TestState(true, false, false, KeyEvent.VK_PAGE_UP, isWin?true:false));
 266         test(new TestState(true, false, true, KeyEvent.VK_PAGE_UP, isWin?true:false));
 267         test(new TestState(true, true, false, KeyEvent.VK_PAGE_UP, isWin?true:false));
 268         test(new TestState(true, true, true, KeyEvent.VK_PAGE_UP, isWin?true:false));
 269 
 270         test(new TestState(false, false, false, KeyEvent.VK_PAGE_DOWN, isWin?false:false));
 271         test(new TestState(false, true, false, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 272         test(new TestState(false, true, true, KeyEvent.VK_PAGE_DOWN, isWin?true:true));
 273         test(new TestState(true, false, false, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 274         test(new TestState(true, false, true, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 275         test(new TestState(true, true, false, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 276         test(new TestState(true, true, true, KeyEvent.VK_PAGE_DOWN, isWin?true:false));
 277 
 278         test(new TestState(false, false, false, KeyEvent.VK_HOME, isWin?false:true));