On Thu, 27 Aug 2026 12:53:25 GMT, Michael Strauß <[email protected]> wrote:
>> Thiago Milczarek Sayao has updated the pull request with a new target base >> due to a merge or a rebase. The pull request now contains 43 commits: >> >> - Merge branch 'master' into 8354943_v2 >> - mapped = true for popups >> - Do not block sent configure events, as doing so breaks screen-change >> detection. >> - - Restore gdk_event_request_motions (it's needed even without event >> compression) >> - Remove cursor unref (it's aready de-referenced on gdk_window_set_cursor) >> - Improve XComposite message >> - Remove configurable delays >> - Fix test >> - Xorg fixes >> - Revert "Rewrite WrongStageFocusWithApplicationModalityTest because it >> fails intermittently" >> >> This reverts commit c6b9dd745e5d762adb89a3b596e53b0d8a790d7f. >> - Rewrite WrongStageFocusWithApplicationModalityTest because it fails >> intermittently >> - Use existing verbose flag for GTK >> - ... and 33 more: https://git.openjdk.org/jfx/compare/58a7bea2...969ed5f3 > > modules/javafx.graphics/src/main/native-glass/gtk/glass_window.cpp line 940: > >> 938: if (xSet && gravity_x > 0 && dx != 0) { >> 939: x -= gravity_x * static_cast<float>(dx); >> 940: if (x < 0) x = 0; > > Why is `x` (and `y`) clamped to zero? Couldn't a monitor to the left of the > primary monitor have negative coordinates? Yes, fixed it. > modules/javafx.graphics/src/main/native-glass/gtk/glass_window.cpp line 1472: > >> 1470: if (frame_type == TITLED && (initial_wmf & GDK_FUNC_MINIMIZE)) { >> 1471: if (!enabled) { >> 1472: remove_wmf(GDK_FUNC_MINIMIZE); > > If we are here, it means that `initial_wmf` contains `GDK_FUNC_MINIMIZE`. > However, both `remove_wmf()` and `add_wmf()` check `initial_wmf`, which makes > this entire operation a no-op: > > if (initial_wmf & wmf) return; > > > Maybe we need a different approach here, for example: > > if (!enabled) { > current_wmf = static_cast<GdkWMFunction>( > static_cast<int>(current_wmf) & ~static_cast<int>(GDK_FUNC_MINIMIZE)); > } else { > current_wmf = static_cast<GdkWMFunction>( > static_cast<int>(current_wmf) | static_cast<int>(initial_wmf & > GDK_FUNC_MINIMIZE)); > } > > gdk_window_set_functions(gdk_window, current_wmf); Fixed it, but will only work on older window managers such as xfwm4. Modern mutter (gnome) or kwin (kde) will ignore the request. ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/2139#discussion_r3944646763 PR Review Comment: https://git.openjdk.org/jfx/pull/2139#discussion_r3944645887
