RFR: 8204 : Keyboard traps in flamegraph view for search option

Virag Purnam vpurnam at openjdk.org
Fri Feb 23 11:08:06 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.

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

Commit messages:
 - 8204: Keyboard traps in flamegraph view for search option
 - 8204: Keyboard traps in flamegraph view for search option

Changes: https://git.openjdk.org/jmc/pull/554/files
 Webrev: https://webrevs.openjdk.org/?repo=jmc&pr=554&range=00
  Issue: https://bugs.openjdk.org/browse/JMC-8204
  Stats: 196 lines in 3 files changed: 164 ins; 15 del; 17 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