* iframe title in AppTile
Signed-off-by: Kerry Archibald <kerrya@element.io>
* iframe title in hostSignupDialog
Signed-off-by: Kerry Archibald <kerrya@element.io>
* iframe title in MFileBody
* iframe titles in modal widget and int man
Signed-off-by: Kerry Archibald <kerrya@element.io>
* enable jsx-a11y/iframe-has-title rule
Signed-off-by: Kerry Archibald <kerrya@element.io>
Notes: Allow downloads from widgets.
We are working on a widget that allows the user to download a file (a ICS calendar entry). Right now the sandbox of the widget iframe doesn't allow downloading. Instead, the following error is displayed in the console (for Google Chrome):
```
Download is disallowed. The frame initiating or instantiating the download is sandboxed, but the flag ‘allow-downloads’ is not set. See https://www.chromestatus.com/feature/5706745674465280 for more details.
```
Therefore this PR adds `allow-downloads` to the sandbox capabilities.
Steps to reproduce:
1. Create a simple widget with an `index.html` file like, e.g.
```
<a href="index.html" download>Download</a>
```
2. Host the widget somewhere, add it to the room and open the widget
3. Click on the download button
* Without the fix: Nothing happens, there is a warning in the console (see above)
* With the fix: The file is downloaded
Signed-off-by: Oliver Sand <oliver.sand@nordeck.net>
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
Co-authored-by: Dariusz Niemczyk <dariuszn@element.io>
Co-authored-by: Timo K <toger5@hotmail.de>
With this pr all href use matrix matrix.to links. As a consequence right-click copy link will always return get you a sharable matrix.to link.
Previously, the `left` positioning seemed to only work with icons which are all about the same size so the arbitrary offset worked. Now we actually position off to the left of the element and we have equal `margin-left` and `margin-right` to determine the offset.
Spawned from https://github.com/matrix-org/matrix-react-sdk/pull/7339#discussion_r767154349
* Move all polls processing to events-sdk
This makes polls support the full range of extensible events (both parsing and generation).
* Appease the linter
* Fix & update tests
* Update events-sdk for polls bugfix
* Update events-sdk for typechecking
* Add missing type cast
* Update per review
* Fix room list roving treeview
New TooltipTarget & TextWithTooltip were not roving-accessible
* Fix programmatic focus management in roving tab index not triggering onFocus handler
* Fix toolbar no longer handling left & right arrows
* Fix roving tab index focus tracking on interactive element like context menu trigger
* Fix thread list context menu roving
* add comment
* fix comment
* Fix handling vertical arrows in the wrong direction
* iterate PR
* delint
* tidy up
* sharedInstance() -> instance
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use CallState event instead of dispatching
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Simplifie some code
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use a method to start a call instead of the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use a method instead of place_conference_call
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Make terminateCallApp() and hangupCallApp() public
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use hangupAllCalls() instead of the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Make dialNumber(), startTransferToMatrixID() and startTransferToPhoneNumber() public instead of using the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use answerCall() instead of using the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use hangupOrReject() instead of the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Update docs
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Improve TS
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Dispatch call_state, see https://github.com/vector-im/element-web/pull/18823#issuecomment-917377277
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Add missing import
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>