On Monday, December 2, 2019 at 12:58:39 AM UTC+8, Simon Schlee wrote: > > created an issue for this: > https://github.com/racket/gui/issues/149 >
Based on you description, it seems that the window manager you use on Linux will adjust the window position to make room for the border, but this seems to be specific to the window manager itself. It is not necessarily a bug that `on-move` is called multiple times and not always in response to calling the `frame%/move` method (for example, it will be called when the windows is dragged with the mouse). This does not seem like a Racket GUI problem to me: I think that if you wrote a GTK application in C, the behavior would be the same. Also the windows platform is not without its quirks in this regard: if you use `frame%/move` to move the window to 0,0, you'll notice that the top menu bar is lined up with the top of the screen, but there is an 8 pixel gap on the left. This is because, while only a 1 pixel border is drawn around the window, there are an extra 8 pixels of invisible border, so the user can find the resize handle for the window. Visually, moving a window to 0,0 will not move it to the top-left corner of the screen. On Windows, there are API calls you can access using FFI, which allow calculating the window border to adjust for it. I suspect there are similar APIs on Linux for GTK. Alex. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/721a6840-e164-4b30-b4e7-707c3af37cde%40googlegroups.com.