modules/graphics/src/main/java/com/sun/prism/PresentableState.java
Print this page
*** 48,60 ****
protected int windowX, windowY;
protected float windowAlpha;
protected long nativeWindowHandle;
protected long nativeView;
protected int viewWidth, viewHeight;
! protected float renderScale;
protected int renderWidth, renderHeight;
! protected float outputScale;
protected int outputWidth, outputHeight;
protected int screenHeight;
protected int screenWidth;
protected boolean isWindowVisible;
protected boolean isWindowMinimized;
--- 48,60 ----
protected int windowX, windowY;
protected float windowAlpha;
protected long nativeWindowHandle;
protected long nativeView;
protected int viewWidth, viewHeight;
! protected float renderScaleX, renderScaleY;
protected int renderWidth, renderHeight;
! protected float outputScaleX, outputScaleY;
protected int outputWidth, outputHeight;
protected int screenHeight;
protected int screenWidth;
protected boolean isWindowVisible;
protected boolean isWindowMinimized;
*** 130,145 ****
/**
* @return Screen.getScale
*
* May be called on any thread
*/
! public float getRenderScale() {
! return renderScale;
}
! public float getOutputScale() {
! return outputScale;
}
/**
* @return the window's alpha level
*
--- 130,158 ----
/**
* @return Screen.getScale
*
* May be called on any thread
*/
! public float getRenderScaleX() {
! return renderScaleX;
}
! /**
! * @return Screen.getScale
! *
! * May be called on any thread
! */
! public float getRenderScaleY() {
! return renderScaleY;
! }
!
! public float getOutputScaleX() {
! return outputScaleX;
! }
!
! public float getOutputScaleY() {
! return outputScaleY;
}
/**
* @return the window's alpha level
*
*** 303,331 ****
return (fromScale == toScale)
? dim
: (int) Math.ceil(dim * toScale / fromScale);
}
! protected void update(float viewScale, float renderScale, float outputScale) {
! this.renderScale = renderScale;
! this.outputScale = outputScale;
! if (renderScale == viewScale) {
renderWidth = viewWidth;
renderHeight = viewHeight;
} else {
! renderWidth = scale(viewWidth, viewScale, renderScale);
! renderHeight = scale(viewHeight, viewScale, renderScale);
}
! if (outputScale == viewScale) {
outputWidth = viewWidth;
outputHeight = viewHeight;
! } else if (outputScale == renderScale) {
outputWidth = renderWidth;
outputHeight = renderHeight;
} else {
! outputWidth = scale(viewWidth, viewScale, outputScale);
! outputHeight = scale(viewHeight, viewScale, outputScale);
}
}
/** Updates the state of this object based on the current state of its
* nativeWindow.
--- 316,349 ----
return (fromScale == toScale)
? dim
: (int) Math.ceil(dim * toScale / fromScale);
}
! protected void update(float viewScaleX, float viewScaleY,
! float renderScaleX, float renderScaleY,
! float outputScaleX, float outputScaleY)
! {
! this.renderScaleX = renderScaleX;
! this.renderScaleY = renderScaleY;
! this.outputScaleX = outputScaleX;
! this.outputScaleY = outputScaleY;
! if (renderScaleX == viewScaleX && renderScaleY == viewScaleY) {
renderWidth = viewWidth;
renderHeight = viewHeight;
} else {
! renderWidth = scale(viewWidth, viewScaleX, renderScaleX);
! renderHeight = scale(viewHeight, viewScaleY, renderScaleY);
}
! if (outputScaleX == viewScaleX && outputScaleY == viewScaleY) {
outputWidth = viewWidth;
outputHeight = viewHeight;
! } else if (outputScaleX == renderScaleX && outputScaleY == renderScaleY) {
outputWidth = renderWidth;
outputHeight = renderHeight;
} else {
! outputWidth = scale(viewWidth, viewScaleX, outputScaleX);
! outputHeight = scale(viewHeight, viewScaleY, outputScaleY);
}
}
/** Updates the state of this object based on the current state of its
* nativeWindow.
*** 349,361 ****
nativeView = view.getNativeView();
nativeWindowHandle = window.getNativeWindow();
isClosed = view.isClosed();
isWindowVisible = window.isVisible();
isWindowMinimized = window.isMinimized();
! update(window.getPlatformScale(),
! window.getRenderScale(),
! window.getOutputScale());
Screen screen = window.getScreen();
if (screen != null) {
// note only used by Embedded Z order painting
// !hasWindowManager so should be safe to ignore
// when null, most likely because of "In Browswer"
--- 367,379 ----
nativeView = view.getNativeView();
nativeWindowHandle = window.getNativeWindow();
isClosed = view.isClosed();
isWindowVisible = window.isVisible();
isWindowMinimized = window.isMinimized();
! update(window.getPlatformScaleX(), window.getPlatformScaleY(),
! window.getRenderScaleX(), window.getRenderScaleY(),
! window.getOutputScaleX(), window.getOutputScaleY());
Screen screen = window.getScreen();
if (screen != null) {
// note only used by Embedded Z order painting
// !hasWindowManager so should be safe to ignore
// when null, most likely because of "In Browswer"