New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
8236685: [macOs] Remove obsolete file dialog subclasses #135
8236685: [macOs] Remove obsolete file dialog subclasses #135
Conversation
👋 Welcome back kcr! A progress list of the required criteria for merging this PR into |
/reviewers 2 |
@kevinrushforth |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me,
Build and test run shows no failures.
Test attached to JDK-8234474 runs as expected.
@kevinrushforth This change now passes all automated pre-integration checks. When the change also fulfills all project specific requirements, type
Since the source branch of this PR was last updated there have been 4 commits pushed to the ➡️ To integrate this PR with the above commit message, type |
/integrate |
@kevinrushforth The following commits have been pushed to master since your change was applied:
Your commit was automatically rebased without conflicts. Pushed as commit cfa1193. |
Mailing list message from Kevin Rushforth on openjfx-dev: Changeset: cfa1193 8236685: [macOs] Remove obsolete file dialog subclasses Reviewed-by: arapte, prr ! modules/javafx.graphics/src/main/native-glass/mac/GlassApplication.h |
This is a follow-on to JDK-8234474.
This fix removes the custom subclasses of NSSavePanel and NSOpenPanel that are optionally used by the glass implementation of file open, directory open, and file save. These subclasses were originally added to provide support for keyboard shortcuts for Copy (CMD-C), Cut (CMD-X), and Paste (CMD-V) operations that the standard Apple dialogs do not support directly; applications can add their own support, but JavaFX is a library not an application.
Note that as of macOS 10.15, all file dialogs on Mac are run in a spearate process. Attempts to subclass NSSavePanel and NSOpenPanel are no longer supported. They are either ineffective (silently ignored) or else crash the application. As a result of the crashes that were happening in some environments, the fix for JDK-8234474 uses the NSSavePanel and NSOpenPanel base classes directly when running on macOS 10.15 or later. The proposed fix for this follow-on issue, JDK-8236685, will use NSSavePanel and NSOpenPanel directly on all versions of macOS.
Note that Copy, Cut, and Paste functionality are available with the menu before and after this fix. This only impacts the keyboard shortcuts.
Progress
Issue
Reviewers
Download
$ git fetch https://git.openjdk.java.net/jfx pull/135/head:pull/135
$ git checkout pull/135