< prev index next >

src/java.desktop/unix/classes/sun/awt/X11/XToolkit.java

Print this page




 329             return res;
 330         } finally {
 331             awtUnlock();
 332         }
 333     }
 334 
 335     void init() {
 336         awtLock();
 337         try {
 338             XlibWrapper.XSupportsLocale();
 339             if (XlibWrapper.XSetLocaleModifiers("") == null) {
 340                 log.finer("X locale modifiers are not supported, using default");
 341             }
 342             tryXKB();
 343 
 344             AwtScreenData defaultScreen = new AwtScreenData(XToolkit.getDefaultScreenData());
 345             awt_defaultFg = defaultScreen.get_blackpixel();
 346 
 347             arrowCursor = XlibWrapper.XCreateFontCursor(XToolkit.getDisplay(),
 348                 XCursorFontConstants.XC_arrow);
 349             areExtraMouseButtonsEnabled = Boolean.parseBoolean(System.getProperty("sun.awt.enableExtraMouseButtons", "true"));



 350             //set system property if not yet assigned
 351             System.setProperty("sun.awt.enableExtraMouseButtons", ""+areExtraMouseButtonsEnabled);
 352 

 353             // Detect display mode changes
 354             XlibWrapper.XSelectInput(XToolkit.getDisplay(), XToolkit.getDefaultRootWindow(), XConstants.StructureNotifyMask);
 355             XToolkit.addEventDispatcher(XToolkit.getDefaultRootWindow(), new XEventDispatcher() {
 356                 @Override
 357                 public void dispatchEvent(XEvent ev) {
 358                     if (ev.get_type() == XConstants.ConfigureNotify) {
 359                         awtUnlock();
 360                         try {
 361                             ((X11GraphicsEnvironment)GraphicsEnvironment.
 362                              getLocalGraphicsEnvironment()).
 363                                 displayChanged();
 364                         } finally {
 365                             awtLock();
 366                         }
 367                     }
 368                 }
 369             });
 370         } finally {
 371             awtUnlock();
 372         }




 329             return res;
 330         } finally {
 331             awtUnlock();
 332         }
 333     }
 334 
 335     void init() {
 336         awtLock();
 337         try {
 338             XlibWrapper.XSupportsLocale();
 339             if (XlibWrapper.XSetLocaleModifiers("") == null) {
 340                 log.finer("X locale modifiers are not supported, using default");
 341             }
 342             tryXKB();
 343 
 344             AwtScreenData defaultScreen = new AwtScreenData(XToolkit.getDefaultScreenData());
 345             awt_defaultFg = defaultScreen.get_blackpixel();
 346 
 347             arrowCursor = XlibWrapper.XCreateFontCursor(XToolkit.getDisplay(),
 348                 XCursorFontConstants.XC_arrow);
 349             final String extraButtons = "sun.awt.enableExtraMouseButtons";
 350             AccessController.doPrivileged((PrivilegedAction<Void>) () -> {
 351                 areExtraMouseButtonsEnabled =
 352                     Boolean.parseBoolean(System.getProperty(extraButtons, "true"));
 353                 //set system property if not yet assigned
 354                 System.setProperty(extraButtons, ""+areExtraMouseButtonsEnabled);
 355                 return null;
 356             });
 357             // Detect display mode changes
 358             XlibWrapper.XSelectInput(XToolkit.getDisplay(), XToolkit.getDefaultRootWindow(), XConstants.StructureNotifyMask);
 359             XToolkit.addEventDispatcher(XToolkit.getDefaultRootWindow(), new XEventDispatcher() {
 360                 @Override
 361                 public void dispatchEvent(XEvent ev) {
 362                     if (ev.get_type() == XConstants.ConfigureNotify) {
 363                         awtUnlock();
 364                         try {
 365                             ((X11GraphicsEnvironment)GraphicsEnvironment.
 366                              getLocalGraphicsEnvironment()).
 367                                 displayChanged();
 368                         } finally {
 369                             awtLock();
 370                         }
 371                     }
 372                 }
 373             });
 374         } finally {
 375             awtUnlock();
 376         }


< prev index next >