From 3b0a5f8b6fd7ed8791f13f422535d581b35f9adb Mon Sep 17 00:00:00 2001 From: Kevin Lamonte Date: Fri, 28 Jul 2017 21:17:55 -0400 Subject: [PATCH] Only allow keyboard resizing when RESIZABLE is set --- src/jexer/TWindow.java | 62 ++++++++++++++++++++++++------------------ 1 file changed, 35 insertions(+), 27 deletions(-) diff --git a/src/jexer/TWindow.java b/src/jexer/TWindow.java index 6cd11e5..8749eb8 100644 --- a/src/jexer/TWindow.java +++ b/src/jexer/TWindow.java @@ -989,38 +989,46 @@ public class TWindow extends TWidget { setY(getY() - 1); } } - if (keypress.equals(kbShiftLeft)) { - if ((getWidth() > minimumWindowWidth) - || (minimumWindowWidth <= 0) - ) { - setWidth(getWidth() - 1); + + /* + * Only permit keyboard resizing if the window was RESIZABLE. + */ + if ((flags & RESIZABLE) != 0) { + + if (keypress.equals(kbShiftLeft)) { + if ((getWidth() > minimumWindowWidth) + || (minimumWindowWidth <= 0) + ) { + setWidth(getWidth() - 1); + } } - } - if (keypress.equals(kbShiftRight)) { - if ((getWidth() < maximumWindowWidth) - || (maximumWindowWidth <= 0) - ) { - setWidth(getWidth() + 1); + if (keypress.equals(kbShiftRight)) { + if ((getWidth() < maximumWindowWidth) + || (maximumWindowWidth <= 0) + ) { + setWidth(getWidth() + 1); + } } - } - if (keypress.equals(kbShiftUp)) { - if ((getHeight() > minimumWindowHeight) - || (minimumWindowHeight <= 0) - ) { - setHeight(getHeight() - 1); + if (keypress.equals(kbShiftUp)) { + if ((getHeight() > minimumWindowHeight) + || (minimumWindowHeight <= 0) + ) { + setHeight(getHeight() - 1); + } } - } - if (keypress.equals(kbShiftDown)) { - if ((getHeight() < maximumWindowHeight) - || (maximumWindowHeight <= 0) - ) { - setHeight(getHeight() + 1); + if (keypress.equals(kbShiftDown)) { + if ((getHeight() < maximumWindowHeight) + || (maximumWindowHeight <= 0) + ) { + setHeight(getHeight() + 1); + } } - } - // Pass a resize event to my children - onResize(new TResizeEvent(TResizeEvent.Type.WIDGET, - getWidth(), getHeight())); + // Pass a resize event to my children + onResize(new TResizeEvent(TResizeEvent.Type.WIDGET, + getWidth(), getHeight())); + + } // if ((flags & RESIZABLE) != 0) return; } -- 2.27.0