frontend: Update transform dialog#12410
Conversation
6b06fe2 to
ef70f46
Compare
|
Updated with QAccessibleInterface for the new widget to better support screen readers and other accessibility tools. |
PatTheMav
left a comment
There was a problem hiding this comment.
I tested this specifically with keyboard navigation enabled from macOS' accessibility features and noticed that both alignment controls are only available after tabbing through the entire window's contents (including the close button) and I had to press tab 5 more times to get from the first box to the second and from the second box back to the first drop down.
From an A11Y point of view I think those boxes should be accessible right after their associated controls (just like they are visually aligned with them). I haven't had the time to check where those 5 additional controls came from that I had to "tab through".
Those controls should be in logical order of the window, and they are for me on Windows. Very odd that it isn't the case on mac? |
f8a8f70 to
9294124
Compare
Tested this again with the current state of the PR today and the new controls are now correctly navigated to after their corresponding spin boxes when tabbing through the window. The only remaining quirks I found are:
The second quirk applies to all Qt widgets - if I move the mouse further to the right in the dropdown so my mouse cursor happens to be above the "Crop Bounds" checkbox, then that one is rendered with the the "hover" state style and keeps it until a full window state update. On another note I stumbled over use of "W" and "H" while playing with the bounds inputs and it felt a bit "wrong" that we use "Left", "Top", etc. but not "Width" and "Height". "X" and "Y" are not abbreviations but the literal names of the axes, so those feel more "right" in their shortened form. |
I'm unable to replicate this. I do think the bounding box alignment widget was in the wrong order though, so that should be fixed after my next force push.
I do believe this is a quirk of macOS native dropdowns. I think an easy way to test would be to try the ComboBox in the transitions dock which has the duration lineedit and buttons below it. Can you reproduce there? obs64_MYvvn1aH1t.mp4Reverted W/H back to full names as I agree with the feedback. |
f60e771 to
acfe24a
Compare
Still happens here: When I use to navigate through the items, it skips from the position alignment widget to the bounds alignment widget. This might also be related to native drop down usage.
Yep, though requires a bit more work as another widget needs to have input focus. Was able to reproduce this by having an active input for a scene item name and selecting a transition that was placed over the duration input field in the native drop-down. I agree that this will be due to the interplay between the native interface element and Qt's "internal" widgetry though. |
deb9a26 to
cb83413
Compare
cb83413 to
785b9b2
Compare
RytoEX
left a comment
There was a problem hiding this comment.
Nit on container/QFrame naming.
785b9b2 to
16ae724
Compare
Description
Adds a new AlignmentSelector widget that returns both Qt::alignment values and a currentIndex corresponding to an alignment position.
Updates the appearance and functionality of the Transform dialog
Note
Positioning is incorrect when switching back to BOUNDS_NONE while using a bounds type with crop to bounds enabled. This will be fixable later with the additional libobs function added in #12383 but is not any worse than the current behaviour.
Motivation and Context
Want to bring this dialog in line visually with other recent UI changes and do a pass on it's behaviour.
How Has This Been Tested?
Lots of resizing and position/alignment changes to various sources.
Types of changes
Checklist: