-
Notifications
You must be signed in to change notification settings - Fork 6.1k
8284521: Write an automated regression test for JComponent.setRequestFocusEnabled() #8143
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
Conversation
👋 Welcome back mvs! A progress list of the required criteria for merging this PR into |
@manukumarvs The following label will be automatically applied to this pull request:
When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label pull request command. |
Webrevs
|
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.
Before I look at the test, can you get rid of the pointless directory 4371575
A directory might be needed if you had a lot of files for the test - but you don't !
And I really don't like naming directories OR tests with the bugid. Someone can find
that out from the @bug tag.
I know you've pushed a bunch of bugs already that follow this pattern but update all the "in progress" ones to NOT create pointless extra folders.
I have removed those directories from this PR and from my other open PRs #7906 and #7996 |
test/jdk/javax/swing/JComponent/JComponentSetRequestFocusEnabledTest.java
Show resolved
Hide resolved
@manukumarvs This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be:
You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been 606 new commits pushed to the
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details. As you do not have Committer status in this project an existing Committer must agree to sponsor your change. Possible candidates are the reviewers of this PR (@prrace, @mrserb) but any other Committer may sponsor as well. ➡️ To flag this PR as ready for integration with the above commit message, type |
/integrate |
@manukumarvs |
@mrserb Can you sponsor this PR? |
/sponsor |
Going to push as commit 447c2d1.
Your commit was automatically rebased without conflicts. |
@akolarkunnu @manukumarvs Pushed as commit 447c2d1. 💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored. |
Write an automated regression test for JDK-4371575
Issue:
As part of the Merlin focus project, JComponent.setRequestFocusEnabled was
deprecated and its implementation was changed to map exactly to the new
method Component.setFocusable. Scott believes that the old behavior may be
preferable. He would like to be able to specify that a Component is focusable,
and should receive focus during keyboard traversal, but that it should not
automatically take focus when the user clicks on it with the mouse.
We are concerned that the accessibility team would be against this behavior,
and this also seems like more of a PLAF issue. Nevertheless, we should look
into it before beta ships.
Fix:
After some discussion we decided that the best balance of the old and new would be to make this an advisory property. This property will not be synonymous with focusable. Instead our mouse listeners will check this property before requesting focus. This provides as closely as possible the old behavior, while allowing people to use the new focusable property if they don't want a component focusable at all.
Testing:
Tested in mach5, 10 times with all the 3 available platform like macosx, windows and linux and got all Pass.
Progress
Issue
Reviewers
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.java.net/jdk pull/8143/head:pull/8143
$ git checkout pull/8143
Update a local copy of the PR:
$ git checkout pull/8143
$ git pull https://git.openjdk.java.net/jdk pull/8143/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 8143
View PR using the GUI difftool:
$ git pr show -t 8143
Using diff file
Download this PR as a diff file:
https://git.openjdk.java.net/jdk/pull/8143.diff