On Fri, 6 Oct 2023 05:10:18 GMT, Tejesh R <[email protected]> wrote:

> 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.

Can't we call `disableEvents ` in JFileChooser.updateUI() if JFileChooser is 
disabled instead of changing in all *UI classes?

-------------

PR Comment: https://git.openjdk.org/jdk/pull/16068#issuecomment-1754444494

Reply via email to