< prev index next >
src/java.desktop/unix/classes/sun/awt/X11/XlibUtil.java
Print this page
*** 100,110 ****
}
/**
* Returns the bounds of the given window, in absolute coordinates
*/
! static Rectangle getWindowGeometry(long window)
{
XToolkit.awtLock();
try
{
int res = XlibWrapper.XGetGeometry(XToolkit.getDisplay(),
--- 100,110 ----
}
/**
* Returns the bounds of the given window, in absolute coordinates
*/
! static Rectangle getWindowGeometry(long window, int scale)
{
XToolkit.awtLock();
try
{
int res = XlibWrapper.XGetGeometry(XToolkit.getDisplay(),
*** 124,134 ****
int x = Native.getInt(XlibWrapper.larg2);
int y = Native.getInt(XlibWrapper.larg3);
long width = Native.getUInt(XlibWrapper.larg4);
long height = Native.getUInt(XlibWrapper.larg5);
! return new Rectangle(x, y, (int)width, (int)height);
}
finally
{
XToolkit.awtUnlock();
}
--- 124,136 ----
int x = Native.getInt(XlibWrapper.larg2);
int y = Native.getInt(XlibWrapper.larg3);
long width = Native.getUInt(XlibWrapper.larg4);
long height = Native.getUInt(XlibWrapper.larg5);
! return new Rectangle(x / scale, y / scale,
! (int) (width / scale),
! (int) (height / scale));
}
finally
{
XToolkit.awtUnlock();
}
*** 136,162 ****
/**
* Translates the given point from one window to another. Returns
* null if the translation is failed
*/
! static Point translateCoordinates(long src, long dst, Point p)
{
Point translated = null;
XToolkit.awtLock();
try
{
XTranslateCoordinates xtc =
! new XTranslateCoordinates(src, dst, p.x, p.y);
try
{
int status = xtc.execute(XErrorHandler.IgnoreBadWindowHandler.getInstance());
if ((status != 0) &&
((XErrorHandlerUtil.saved_error == null) ||
(XErrorHandlerUtil.saved_error.get_error_code() == XConstants.Success)))
{
! translated = new Point(xtc.get_dest_x(), xtc.get_dest_y());
}
}
finally
{
xtc.dispose();
--- 138,164 ----
/**
* Translates the given point from one window to another. Returns
* null if the translation is failed
*/
! static Point translateCoordinates(long src, long dst, Point p, int scale)
{
Point translated = null;
XToolkit.awtLock();
try
{
XTranslateCoordinates xtc =
! new XTranslateCoordinates(src, dst, p.x * scale, p.y * scale);
try
{
int status = xtc.execute(XErrorHandler.IgnoreBadWindowHandler.getInstance());
if ((status != 0) &&
((XErrorHandlerUtil.saved_error == null) ||
(XErrorHandlerUtil.saved_error.get_error_code() == XConstants.Success)))
{
! translated = new Point(xtc.get_dest_x() / scale, xtc.get_dest_y() / scale);
}
}
finally
{
xtc.dispose();
*** 172,184 ****
/**
* Translates the given rectangle from one window to another.
* Returns null if the translation is failed
*/
! static Rectangle translateCoordinates(long src, long dst, Rectangle r)
{
! Point translatedLoc = translateCoordinates(src, dst, r.getLocation());
if (translatedLoc == null)
{
return null;
}
else
--- 174,189 ----
/**
* Translates the given rectangle from one window to another.
* Returns null if the translation is failed
*/
! static Rectangle translateCoordinates(long src, long dst, Rectangle r,
! int scale)
{
! Point translatedLoc = translateCoordinates(src, dst, r.getLocation(),
! scale);
!
if (translatedLoc == null)
{
return null;
}
else
< prev index next >