yangzhang75 opened a new issue, #8758:
URL: https://github.com/apache/texera/issues/8758

   ### What happened?
   
   The Form View's read-only input card locks itself with `pointer-events: 
none` (`workflow-form.component.scss:340`, applied by 
`[class.read-only]="!canEdit"` at `workflow-form.component.html:232`). That 
only blocks pointing-device hit testing. A keyboard user can Tab into a custom 
widget's own controls inside the card -- a file picker's Browse button, the 
HuggingFace file input -- and activate them with Enter or Space. The bound 
formly controls are disabled through `props.disabled`, but the controls a 
widget draws of its own do not consult the form's disabled state: the 
HuggingFace audio input, for one, POSTs the selected file.
   
   Expected: read-only blocks keyboard interaction as well as pointer. The step 
panel already does this with `inert` for the same reason 
(`workflow-form.component.html:484`, `[attr.inert]="panelLive ? null : ''"`); 
the input card should follow.
   
   Part of #8439 (item 5) and the Form View feature #8011. Raised by Copilot on 
#8437, #8438 and #8440.
   
   ### How to reproduce?
   
   1. Open a workflow that exposes a HuggingFace audio (file) input in the Form 
View, as a user without write access (the card is read-only).
   2. Press Tab until the focus lands on the widget's file input or Browse 
button inside the card.
   3. Press Enter or Space and choose a file.
   4. The upload request goes out although the card is read-only.
   
   Fix sketch: put `inert` on the read-only card, giving the container 
`tabindex="-1"` and an `aria-label` so keyboard users can still scroll it (the 
step panel's precedent), or disable every descendant control semantically. A 
DOM test that focuses a widget control inside a read-only card and asserts it 
can be neither focused nor activated.
   
   ### Version/Branch
   
   1.4.0-incubating-SNAPSHOT (main)
   
   ### Commit Hash (Optional)
   
   506397a5c
   
   ### What browsers are you seeing the problem on?
   
   Chrome
   
   ### Relevant log output
   
   _No response_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to