On Tue, 28 Jan 2025 17:23:50 GMT, Jose Pereda <jper...@openjdk.org> wrote:
>> The fix for [JDK-8319066](https://bugs.openjdk.org/browse/JDK-8319066) added >> a needed call to activate a JavaFX window on macOS 14 or later via `[NSApp >> activate]`. In macOS 15, this doesn't always activate the window; even on >> macOS 14 there are certain cases where it might not. In all other places >> where we need to activate a window we call `[NSApp >> activateIgnoringOtherApps:YES]`. This is also what AWT uses in all places. >> >> The fix is to replace the call to `activate` with a call to >> `activateIgnoringOtherApps`. I ran a full set of headful tests on macOS 15, >> 14, and 13 (although the code is not executed on macOS 13), and everything >> looks good on my end. >> >> Worth noting is that `NSApp::activateIgnoringOtherApps` is deprecated as of >> MacOS SDK 14, which means that we might have problems in the future when we >> update the Xcode toolchain (or if they eventually degrade it so that the >> `ignoringOtherApps` part of this call stops doing anything), but that will >> be a problem we need to address anyway, affecting other places in JavaFX >> and AWT. >> >> I intend to backported this fix to `jfx24` after it is integrated into >> mainline (for 25). > > modules/javafx.graphics/src/main/native-glass/mac/GlassApplication.m line 286: > >> 284: LOG("-> need to active application"); >> 285: dispatch_async(dispatch_get_main_queue(), ^{ >> 286: [NSApp activateIgnoringOtherApps:YES]; > > I see that the CanvasTest mentioned in the JBS issue passes now with this > fix, and fails with `[NSApp activate];` > > I'm not sure why `[NSApp activateIgnoringOtherApps:YES];` works but `[NSApp > activate];` doesn't, given that the former is deprecated, as you already > mentioned, and the latter is what Apple precisely > [recommends](https://developer.apple.com/documentation/appkit/nsapplication/activate(ignoringotherapps:)?language=objc) > to use instead. > In any case, probably something for > https://bugs.openjdk.org/browse/JDK-8348878. @jperedadnr can you add this comment to https://bugs.openjdk.org/browse/JDK-8348878 please? ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1685#discussion_r1932586525