< prev index next >
src/java.desktop/unix/classes/sun/awt/X11/XRobotPeer.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2003, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
--- 1,7 ----
/*
! * Copyright (c) 2003, 2020, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
*** 23,65 ****
* questions.
*/
package sun.awt.X11;
- import java.awt.GraphicsConfiguration;
import java.awt.Rectangle;
import java.awt.Toolkit;
import java.awt.peer.RobotPeer;
import java.security.AccessController;
import sun.awt.AWTAccessor;
import sun.awt.SunToolkit;
import sun.awt.UNIXToolkit;
import sun.awt.X11GraphicsConfig;
import sun.security.action.GetPropertyAction;
final class XRobotPeer implements RobotPeer {
! static final boolean tryGtk;
static {
loadNativeLibraries();
tryGtk = Boolean.parseBoolean(
AccessController.doPrivileged(
new GetPropertyAction("awt.robot.gtk", "true")
));
}
private static volatile boolean useGtk;
! private X11GraphicsConfig xgc = null;
! /*
! * native implementation uses some static shared data (pipes, processes)
! * so use a class lock to synchronize native method calls
! */
! static Object robotLock = new Object();
!
! XRobotPeer(GraphicsConfiguration gc) {
! this.xgc = (X11GraphicsConfig)gc;
SunToolkit tk = (SunToolkit)Toolkit.getDefaultToolkit();
setup(tk.getNumberOfButtons(),
AWTAccessor.getInputEventAccessor().getButtonDownMasks());
boolean isGtkSupported = false;
--- 23,59 ----
* questions.
*/
package sun.awt.X11;
import java.awt.Rectangle;
import java.awt.Toolkit;
import java.awt.peer.RobotPeer;
import java.security.AccessController;
import sun.awt.AWTAccessor;
import sun.awt.SunToolkit;
import sun.awt.UNIXToolkit;
import sun.awt.X11GraphicsConfig;
+ import sun.awt.X11GraphicsDevice;
import sun.security.action.GetPropertyAction;
final class XRobotPeer implements RobotPeer {
! private static final boolean tryGtk;
static {
loadNativeLibraries();
tryGtk = Boolean.parseBoolean(
AccessController.doPrivileged(
new GetPropertyAction("awt.robot.gtk", "true")
));
}
private static volatile boolean useGtk;
! private final X11GraphicsConfig xgc;
! XRobotPeer(X11GraphicsDevice gd) {
! xgc = (X11GraphicsConfig) gd.getDefaultConfiguration();
SunToolkit tk = (SunToolkit)Toolkit.getDefaultToolkit();
setup(tk.getNumberOfButtons(),
AWTAccessor.getInputEventAccessor().getButtonDownMasks());
boolean isGtkSupported = false;
< prev index next >