379 * @since 1.7 380 */ 381 static synchronized boolean isShapingSupported() { 382 383 if (isShapingSupported == null) { 384 XToolkit.awtLock(); 385 try { 386 isShapingSupported = 387 XlibWrapper.XShapeQueryExtension( 388 XToolkit.getDisplay(), 389 XlibWrapper.larg1, 390 XlibWrapper.larg2); 391 } finally { 392 XToolkit.awtUnlock(); 393 } 394 } 395 396 return isShapingSupported.booleanValue(); 397 } 398 399 } | 379 * @since 1.7 380 */ 381 static synchronized boolean isShapingSupported() { 382 383 if (isShapingSupported == null) { 384 XToolkit.awtLock(); 385 try { 386 isShapingSupported = 387 XlibWrapper.XShapeQueryExtension( 388 XToolkit.getDisplay(), 389 XlibWrapper.larg1, 390 XlibWrapper.larg2); 391 } finally { 392 XToolkit.awtUnlock(); 393 } 394 } 395 396 return isShapingSupported.booleanValue(); 397 } 398 399 static int getButtonMask(int button) { 400 // Button indices start with 1. The first bit in the button mask is the 8th. 401 // The state mask does not support button indicies > 5, so we need to 402 // cut there. 403 if (button <= 0 || button > XConstants.MAX_BUTTON_MASK) { 404 return 0; 405 } else { 406 return 1 << (7 + button); 407 } 408 } 409 } |