This adds a default on setting that can be used to control whether call buttons
are shown in the composer via `settingDefaults` in config.json. No UI is added
to control it for now.
Fixes https://github.com/vector-im/riot-web/issues/12758
This was introduced some time ago when the room list became scrollable. Divs with overflow:scroll; become focusable for the keyboard in Firefox, but since we have keyboard handling for the whole compound widget, we don't need that tab stop on the tree view container div. Putting tabindex="-1" on it fixes it.
Signed-off-by: Marco Zehe <marcozehe@mailbox.org>
This tweaks the new cursor jumping shortcuts in the composer so that they only
activate without shift. When shift _is_ pressed, you want to extend the
selection instead of just moving.
Fixes https://github.com/vector-im/riot-web/issues/12549
pillifyLinks leaked Pill components, which if they contained a BaseAvatar
would leak a whole DOM tree retained by the BaseAvatar's onClientSync
event listener. This tracks the Pill containers so they can be unmounted
via unmountPills.
BasicMessageComposer set an event listener on selectionchange in onFocus
which leaked if onBlur wasn't called. This removes it in unmount.
We've also seen Velociraptor retaining full DOM trees from RRs, which
this doesn't address as the leak is probably within Velocity, and the plan
is to replace it with CSS animations.
Should fix https://github.com/vector-im/riot-web/issues/12417
I added the correct macOS shortcut for redo which is Cmd+Shift+Z. I had to reorder the if statement so redo is checked first, otherwise it would detect the undo first and never check that I was actually trying to redo.
Signed-off-by: Aaron Raimist <aaron@raim.ist>
By default, aria-live regions only speak partial updates. However in the case of the typing indicator, if it goes from one person typing to several, and back, the updated text would only be spoken in fragments by screen readers. Adding the aria-atomic attribute with a value of true makes screen readers always speak the full update for this tile, making the experience much nicer.
Signed-off-by: Marco Zehe <marcozehe@mailbox.org>
Do this by aria-owning the sidebar into the header wrapper. aria-owned subtrees get added as the last child after all other child elements that are in the DOM. This way, if a sidebar tab is activated, the aside element now is inserted in a position following the tabs, before the main messages list. The association for screen readers is therefore more logical. This has no bearing on the DOM order or CSS properties. aria-owns simply rearranges the accessibility tree.
Fixes vector-im/riot-web/issues/11319
Signed-off-by: Marco Zehe <marcozehe@mailbox.org>