RFR: 8269429: Linux: Only the last APPLICATION_MODAL window behaves correctly [v2]
Kevin Rushforth
kcr at openjdk.java.net
Fri Jul 9 18:44:54 UTC 2021
On Tue, 29 Jun 2021 21:58:36 GMT, Thiago Milczarek Sayao <tsayao at openjdk.org> wrote:
>> The PR approach is to set `gtk_window_set_keep_above` to true on APPLICATION_MODAL windows, so they will not stay behind non APPLICATION_MODAL windows.
>>
>> This is passed on WindowStage.java:198 as a mask.
>>
>> The weird thing is that `_enterModal()` is never called. This seems the right function to be called for `APPLICATION_MODAL`, as `_enterModalWithWindow` fits for `WINDOW_MODAL`.
>
> Thiago Milczarek Sayao has updated the pull request incrementally with one additional commit since the last revision:
>
> Reuse existing set_modal (which was previously unused).
This looks fine to me. I'll test it on a couple different systems. I left one comment inline.
modules/javafx.graphics/src/main/native-glass/gtk/glass_window.cpp line 1436:
> 1434: gtk_window_set_transient_for(GTK_WINDOW(gtk_widget), parent->get_gtk_window());
> 1435: } else {
> 1436: gtk_window_set_keep_above(GTK_WINDOW(gtk_widget), modal ? TRUE : FALSE);
The test of `modal` is unnecessary here, since this is all within an `if (modal)` block.
-------------
PR: https://git.openjdk.java.net/jfx/pull/551
More information about the openjfx-dev
mailing list