}
if (inWindowResize) {
- // Do not permit resizing below the status line
- if (mouse.getAbsoluteY() == application.getDesktopBottom()) {
- inWindowResize = false;
- return;
- }
-
// Move window over
setWidth(resizeWindowWidth + (mouse.getAbsoluteX()
- moveWindowMouseX));
// Keep within min/max bounds
if (getWidth() < minimumWindowWidth) {
setWidth(minimumWindowWidth);
- inWindowResize = false;
}
if (getHeight() < minimumWindowHeight) {
setHeight(minimumWindowHeight);
- inWindowResize = false;
}
if ((maximumWindowWidth > 0)
&& (getWidth() > maximumWindowWidth)
) {
setWidth(maximumWindowWidth);
- inWindowResize = false;
}
if ((maximumWindowHeight > 0)
&& (getHeight() > maximumWindowHeight)
) {
setHeight(maximumWindowHeight);
- inWindowResize = false;
+ }
+ if (getHeight() + getY() >= getApplication().getDesktopBottom()) {
+ setHeight(getApplication().getDesktopBottom() - getY());
}
// Pass a resize event to my children
@Override
public void onKeypress(final TKeypressEvent keypress) {
+ if (inWindowMove || inWindowResize) {
+ // ESC or ENTER - Exit size/move
+ if (keypress.equals(kbEsc) || keypress.equals(kbEnter)) {
+ inWindowMove = false;
+ inWindowResize = false;
+ return;
+ }
+ }
+
if (inKeyboardResize) {
// ESC or ENTER - Exit size/move