RFR: 8204 : Keyboard traps in flamegraph view for search option [v2]
Virag Purnam
vpurnam at openjdk.org
Fri Feb 23 12:14:20 UTC 2024
> Focus Trapped Issue. Keyboard focus is trapped in three specific scenarios mentioned below:
>
> 1. Focus is trapped in JMC Agent Preset Manager
>
> Select Window -> JMC Agent Preset Manager
> Click on "Import Fils..."/ "Export File" button
> Press Esc button when dialog is displayed
> Press "Tab" button for multi times
>
> 2. Focus is trapped in Description of Template Manager
>
> Select JVM Browser
> Start Flight Recording
> Template Manager
> Click New
> Click Edit
> Focus to Description
>
> 3. Focus is trapped in search tool in Flame Graph (Mostly on Windows)
>
> Launch JDK Mission Control
> Open any JFR file
> Navigate to "Outline" tab
> In Java Application, choose "Threads"
> Move focus to search tool in Flame Graph
>
> Solution:
> 1. PresetManagerPage.java : Setting the focus back to tableInspector.
> 2. TemplateEditPage.java : Added TraverseListener() for description field.
> 3. FlamegraphSwingView.java : Fix is not straight forward as SWT to Swing and back to SWT traversal is creating issue here. I have just implemented work around for this. I have added KeyListener() to all the swing components. Once it traverse through all the components, I am setting the Focus back to SWT. With this there is no keyboard focus trap.
>
> These issues are kind of blocker with respect to accessibility. Could someone please review the changes.
Virag Purnam has updated the pull request incrementally with one additional commit since the last revision:
8204: Keyboard traps in flamegraph view for search option
-------------
Changes:
- all: https://git.openjdk.org/jmc/pull/554/files
- new: https://git.openjdk.org/jmc/pull/554/files/0166ed2e..64519e33
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jmc&pr=554&range=01
- incr: https://webrevs.openjdk.org/?repo=jmc&pr=554&range=00-01
Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod
Patch: https://git.openjdk.org/jmc/pull/554.diff
Fetch: git fetch https://git.openjdk.org/jmc.git pull/554/head:pull/554
PR: https://git.openjdk.org/jmc/pull/554
More information about the jmc-dev
mailing list