RFR: 4365952: Cannot disable JFileChooser [v3]
Tejesh R
tr at openjdk.org
Tue Oct 17 04:40:05 UTC 2023
> Invoking `setEnabled(false)` on an instance of `JFileChooser` the sub-components are unaffected since the sub-components didn't set/unset enabled explicitly. The fix address the issue and sets the Enabled flag to each sub-components. Along with setting the property to each sub components, the action listeners like mouseClick(Double too) and scroll actions has to be processed based on enabled/disabled property similar to other components. Since `JFilechooser` implementation varies based on LookAndFeel, the same had to be taken care for affected LookAndFeel also.
> Note: `JFrame` being top level container handles frame disable using native method which couldn't be the case for `JFileChooser`. For `showDialog/showOpenDialog/showSaveDialog` the fix could be to set the one the enabled property for created single Dialog. But when an instance of `JFileChooser` is created and added to Frame (Without Dialog been created), disabling the `FileChooser` alone had to be done by handling each sub-components and listeners separately.
Tejesh R has updated the pull request incrementally with one additional commit since the last revision:
Updated test for multiple L&F
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/16068/files
- new: https://git.openjdk.org/jdk/pull/16068/files/ea9a2ba7..c236b023
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=16068&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=16068&range=01-02
Stats: 87 lines in 1 file changed: 50 ins; 23 del; 14 mod
Patch: https://git.openjdk.org/jdk/pull/16068.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/16068/head:pull/16068
PR: https://git.openjdk.org/jdk/pull/16068
More information about the client-libs-dev
mailing list