提交 1f0a6230 编写于 作者: S serb

7193214: Consider simplifying CPlatformWindow.setResizable()

Reviewed-by: anthony, denis
上级 5a8ab9f5
......@@ -257,7 +257,7 @@ public final class CPlatformWindow extends CFRetainedResource implements Platfor
validateSurface();
}
protected int getInitialStyleBits() {
private int getInitialStyleBits() {
// defaults style bits
int styleBits = DECORATED | HAS_SHADOW | CLOSEABLE | MINIMIZABLE | ZOOMABLE | RESIZABLE;
......@@ -284,7 +284,6 @@ public final class CPlatformWindow extends CFRetainedResource implements Platfor
final boolean resizable = isFrame ? ((Frame)target).isResizable() : (isDialog ? ((Dialog)target).isResizable() : false);
styleBits = SET(styleBits, RESIZABLE, resizable);
if (!resizable) {
styleBits = SET(styleBits, RESIZABLE, false);
styleBits = SET(styleBits, ZOOMABLE, false);
}
}
......@@ -379,7 +378,7 @@ public final class CPlatformWindow extends CFRetainedResource implements Platfor
}
// this is the counter-point to -[CWindow _nativeSetStyleBit:]
protected void setStyleBits(final int mask, final boolean value) {
private void setStyleBits(final int mask, final boolean value) {
nativeSetNSWindowStyleBits(getNSWindowPtr(), mask, value ? mask : 0);
}
......@@ -656,15 +655,8 @@ public final class CPlatformWindow extends CFRetainedResource implements Platfor
}
@Override
public void setResizable(boolean resizable) {
public void setResizable(final boolean resizable) {
setStyleBits(RESIZABLE, resizable);
// Re-apply the size constraints and the size to ensure the space
// occupied by the grow box is counted properly
peer.updateMinimumSize();
Rectangle bounds = peer.getBounds();
setBounds(bounds.x, bounds.y, bounds.width, bounds.height);
}
@Override
......
......@@ -160,6 +160,10 @@ AWT_NS_WINDOW_IMPLEMENTATION
BOOL resizable = IS(bits, RESIZABLE);
[self updateMinMaxSize:resizable];
[self.nsWindow setShowsResizeIndicator:resizable];
// Zoom button should be disabled, if the window is not resizable,
// otherwise button should be restored to initial state.
BOOL zoom = resizable && IS(bits, ZOOMABLE);
[[self.nsWindow standardWindowButton:NSWindowZoomButton] setEnabled:zoom];
}
if (IS(mask, HAS_SHADOW)) {
......@@ -784,7 +788,7 @@ AWT_ASSERT_NOT_APPKIT_THREAD;
// calls methods on NSWindow to change other properties, based on the mask
if (mask & MASK(_METHOD_PROP_BITMASK)) {
[window setPropertiesForStyleBits:bits mask:mask];
[window setPropertiesForStyleBits:newBits mask:mask];
}
window.styleBits = newBits;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册