Commit Graph

43 Commits (ef0ba77f1446d4743b1297827483f664edadd7f9)

Author SHA1 Message Date
maheichyk ef0ba77f14
End jitsi call when member is banned (#8879)
* Jitsi call is ended when member is banned

* cypress tests for widget PIP close on leave/kick/ban

* copyright updated

* import changes

* import changes, lint fixed

* import changes

* smaller spec changes to fix problems

* stale import removed, win.matrixcs.RoomStateEvent.Events is used

* fixed problem with kick, smaller test optimisations

* comment removed

Co-authored-by: mikhail.aheichyk <mikhail.aheichyk@nordeck.net>
Co-authored-by: Oliver Sand <oliver.sand@nordeck.net>
2022-08-19 15:09:26 +01:00
Michael Weimann 38b72c4995
Fix disappearing widget poput button (#8754)
See PSC-79
2022-06-06 12:00:18 +02:00
Michael Weimann 3174cf2606
Improve widget buttons behaviour and layout (#8734)
* Improve widet buttons behaviour and layout

Relates to vector-im/element-web#20506
See PSC-79

Signed-off-by: Michael Weimann <michaelw@matrix.org>

* Add AppTile tests
2022-06-03 12:00:16 +02:00
Robin a85799b87c
Make PiP motion smoother and react to window resizes correctly (#8747)
* Make PiP motion smoother and react to window resizes correctly

* Remove debugging logs

* Apply code review suggestions
2022-06-02 18:11:28 +00:00
Travis Ralston 548290b006
Run a minor code quality checker over the repo (#8524)
* Run a minor code quality checker over the repo

Largely targeted at spelling of common words and misc code issues.

* Update snapshots
2022-05-09 22:52:05 +00:00
Robin 6bfe0436e5
Fix infinite loop when pinning/unpinning persistent widgets (#8396)
Pinning or unpinning a persistent widget, such as Jitsi, could cause the
PiP view and the app drawer to fight for control over the widget, since
the PiP view never realized that it was supposed to relinquish control.
This was due to a race between the WidgetLayoutStore update and the
AppTile lifecycle tracking update.
2022-04-25 08:29:54 -04:00
Robin Kouwenhoven aa33442983
Move RequiresClient from MatrixCapabilities to ElementWidgetCapabilities (#8290)
* Move RequiresClient from MatrixCapabilities to ElementWidgetCapabilities

Signed-off-by: Robin Kouwenhoven <r.kouwenhoven@outlook.com>

* Replace usages of RequiresClient with new location

Signed-off-by: Robin Kouwenhoven <r.kouwenhoven@outlook.com>

Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-04-14 21:25:53 +00:00
Travis Ralston d5ed1eb66e Step 8.3: Convert `RoomViewStore` to a more modern singleton for imports 2022-03-28 14:02:31 -06:00
Travis Ralston 997d6d40bf Step 1: Remove all usage of `@replaceableComponent` 2022-03-28 14:02:31 -06:00
Robin 744eeb53fe
Don't assume that widget IDs are unique (#8052)
* Don't assume that widget IDs are unique

Signed-off-by: Robin Townsend <robin@robin.town>

* Don't remove live tiles that don't exist

Signed-off-by: Robin Townsend <robin@robin.town>

* Add unit test for AppTile's live tile tracking

Signed-off-by: Robin Townsend <robin@robin.town>
2022-03-15 12:15:26 +00:00
Michael Telatynski 7fa01ffb06
Improve typing around event emitter handlers (#7816) 2022-02-22 12:18:08 +00:00
Kerry 5b8d440406
type Actions (#7862)
* type ViewHomPage action

Signed-off-by: Kerry Archibald <kerrya@element.io>

* type spacestore actions

Signed-off-by: Kerry Archibald <kerrya@element.io>

* lint

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add action types

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use new action types in stores

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove debug change

Signed-off-by: Kerry Archibald <kerrya@element.io>

* stricter keyboard shortcut types

Signed-off-by: Kerry Archibald <kerrya@element.io>

* action comments

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-22 10:04:27 +00:00
J. Ryan Stinnett a939184e10
Tear down AppTile using lifecycle tracking (#7833) 2022-02-17 16:30:36 +00:00
Travis Ralston fa9af44523
Fix left panel widgets causing app crashes (again) (#7814)
* Add type safety around left panel widget handling

* lint
2022-02-16 13:26:18 -07:00
J. Ryan Stinnett 59cdd3edc0
Unify widget header actions with those in right panel (#7734) 2022-02-09 10:47:41 +00:00
Michael Telatynski ec92102fe3
Properly handle persistent widgets when room is left (#7724) 2022-02-07 14:40:22 +00:00
David Baker 5b999300b2
Fix the sticker picker (#7692)
* Fix the sticker picker

Don't stop user widgets on room change: they're not room-specific.

Fixes https://github.com/vector-im/element-web/issues/20797

* Use 'userWidget' prop rather than roomId being defined
2022-02-01 15:34:22 +00:00
Travis Ralston b04d2de313
Fix left panel widgets causing app-wide crash (#7659) 2022-01-28 08:52:46 -07:00
J. Ryan Stinnett efa1667d7e
Remove Unpin option from maximised widget context menu (#7657) 2022-01-27 17:08:09 +00:00
Timo 9d9b77d5e1
Make widgets not reload (persistent) between center and top container (#7575) 2022-01-24 15:24:30 +00:00
Kerry 26e1570dd6
a11y - fix iframes without title (#7614)
* 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>
2022-01-24 14:07:54 +00:00
Oliver Sand 2e6f616e91
Allow downloads from widgets (#7502)
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>
2022-01-20 16:52:06 -07:00
Kerry 42adedc468
Wait for initial profile load before displaying widget (#7556)
* wait for initial profile load before displaying jitsi

Signed-off-by: Kerry Archibald <kerrya@element.io>

* update comment

Signed-off-by: Kerry Archibald <kerrya@element.io>

* amke fn return boolean

Signed-off-by: Kerry Archibald <kerrya@element.io>

* listen for profile update once

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove unneccessary check

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-01-17 13:47:07 +00:00
Timo ef95644e23
Render Jitsi (and other sticky widgets) in PiP container, so it can be dragged and the "jump to room functionality" is provided (#7450)
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2022-01-13 12:10:41 +01:00
Timo 59f57e15fe
Ship maximised widgets and remove feature flag (#7509)
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-01-11 14:11:48 +01:00
Šimon Brandner d00483be3e
Hide maximise button in the sticker picker (#7488) 2022-01-10 09:02:07 +00:00
Timo d4bafdcddd
Fix zIndex of peristent apps in miniMode (#7429)
Fixes a bug, where the persistent (PiP mode app) is hidden behind another widget in the right panel or a maximised widget.
2021-12-21 17:42:42 +01:00
Aaron Raimist 2e8a93834b Auto fix
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-12-09 09:10:23 +00:00
Timo 12000060a5
Fix: Warning: Unsupported style property pointer-events. Did you mean pointerEvents? (#7291) 2021-12-06 12:47:43 +01:00
Germain f2fee53a0e
Allow stickers to be sent in a Thread (#7267) 2021-12-03 08:22:13 +00:00
Šimon Brandner cbb34d8ac7
Make `CallHandler` more `EventEmitter`y (#6704)
* 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>
2021-11-30 18:09:13 +00:00
Timo 4cbed99de3
Add right panel chat timeline (#7112)
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2021-11-29 17:06:15 +01:00
Timo 556cfc7ed8
Add maximise widget functionality (#7098)
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2021-11-16 15:43:18 +01:00
Timo 558a6204f1
Fix possible infinite loop on widget start (#7071)
* fix 15494 infinit loop on widget start error

* change message to error from log
and fix block style
2021-11-04 11:36:20 +01:00
Timo 5736fea5f3
Implement RequiresClient capability for widgets (#7005) 2021-10-28 13:17:04 +01:00
Dariusz Niemczyk 2c66403b3c Replace console.info with logger.info
Related https://github.com/vector-im/element-web/issues/18425
2021-10-18 14:08:23 +02:00
Dariusz Niemczyk 5290afcc4c Replace console.warn with logger.warn
Related https://github.com/vector-im/element-web/issues/18425
2021-10-18 14:08:23 +02:00
Dariusz Niemczyk 5e73a212f4 Replace console.error with logger.error
Related https://github.com/vector-im/element-web/issues/18425
2021-10-18 14:08:23 +02:00
Šimon Brandner af9429c8a0
Convert ActiveWidgetStore to TS
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-09-26 19:57:02 +02:00
Dariusz Niemczyk 2d1d42b90e
Globally replace all console.logs via codemod (#6827)
This commit replaces all the `console.log` to `logger.log` via an automated script.
Related: vector-im/element-web#18425
2021-09-21 09:48:09 -06:00
Šimon Brandner 459e028137
Fix some regressions
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-09-20 17:15:36 +02:00
Šimon Brandner 0df67d005e
Ditch displayName
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-09-20 17:11:14 +02:00
Šimon Brandner e1445f71bd
Convert AppTile to TS
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-09-17 18:47:15 +02:00