Ticket #591 (Open)Wed May 03 21:49:06 UTC 2023
Pointer moves out of resize icon when dragging beyond maximum window size in Paint
Reported by: | Detlef Froehlich (9715) | Severity: | Minor |
Part: | RISC OS: Application | Release: | |
Milestone: | Status | Open |
Details by Detlef Froehlich (9715):
If I enlarge a Paint sprite (edit) window by dragging the adjust size (resize) icon in the bottom right corner, the pointer moves out of the icon if I continue to drag beyond the maximum window size.
Usually, the pointer is bound to the icon as long as you keep dragging. The Paint sprite file window or any Filer window work this way.
This can best be reproduced with a smaller window.
System: RISC OS 5.28 (16-Dec-29) with Paint 2.37 (10-Aug-20)
Changelog:
Modified by Detlef Froehlich (9715) Wed, May 03 2023 - 21:53:23 GMT
Correction: Reporting for RISC OS 5.28 (16-Dec-20), not a future release…
Modified by Sprow (202) Mon, August 21 2023 - 12:55:44 GMT
I looked at this for a few hours:
What’s going on is that the Wimp normally does the mouse bounding during a window drag, and that’s governed by the window work area size. However, in order to implement the Ctrl-resize (and Ctrl-Shift-resize for integer steps) zoom feature the window flags are now marked as permitted to resize beyond the window work area size. Paint dynamically resizes the window by calculating the width/height on the fly, but crucially the Wimp doesn’t bound the mouse.
I did experiment whether toggling the flags or calling OS_Word to bind the mouse in Paint might work. It sort of did, until the window reached its natural size (where the X & Y scroll bars are at full length) then you got stuck and couldn’t change the size any more…manually adjusting the zoom (so the X & Y scroll bars were only partial length) then released the window again.
Rather unsatisfactory and not likely to be fixable without changing the Wimp or implementing big chunks of window handling logic in Paint.