Commit Graph

620 Commits

Author SHA1 Message Date
Michael Telatynski
66272fc226 Allow deferring of Update Toast until the next morning
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-29 19:59:48 +01:00
Michael Telatynski
1fd74f22c8 Give contextual feedback for manual update check instead of banner
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-29 18:24:45 +01:00
Hubert Chathi
fb62f6dfb4 make IPC calls to get pickle key 2020-05-28 14:44:38 -04:00
Michael Telatynski
c68f35060a
Merge pull request #13776 from vector-im/t3chguy/toasts3_2
Replace New Version Bar with a Toast
2020-05-28 18:30:31 +01:00
Michael Telatynski
57d2026a40 Modernizr check for subtle crypto as we require it all over the place
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-28 00:31:22 +01:00
Dale Harvey
74f798157f Add media queries and mobile viewport 2020-05-27 16:50:35 +02:00
Michael Telatynski
c17bcda1ba Merge branches 'develop' and 't3chguy/toasts3_2' of github.com:vector-im/riot-web into t3chguy/toasts3_2 2020-05-27 09:58:08 +01:00
Michael Telatynski
3ad3c3ca0a Fix super in arrow funcs
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-26 10:04:49 +01:00
Michael Telatynski
48a618264a Replace New Version Bar with a Toast
discards the `new_version` dispatch

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-22 23:08:46 +01:00
Michael Telatynski
d7ee8e13cc make ts happy
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-21 18:25:52 +01:00
Michael Telatynski
cb0e3bba38 mark VectorBasePlatform as an abstract class
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-21 18:07:01 +01:00
Michael Telatynski
706972eff2 tidy
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-20 20:01:51 +01:00
Michael Telatynski
6ec613c2c2 Convert various things to Typescript
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-20 19:56:54 +01:00
Travis Ralston
6d99c08e59
Merge pull request #13666 from vector-im/travis/dispatcher-types
Move dispatcher references in support of TypeScript conversion
2020-05-18 23:22:35 -06:00
Michael Telatynski
5feadbc18e Merge branch 'develop' of github.com:vector-im/riot-web into t3chguy/favico 2020-05-14 21:20:04 +01:00
Michael Telatynski
4532ddbb2d Add support for badge override opts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 21:19:54 +01:00
Michael Telatynski
7246d9f2d6
Merge pull request #13650 from vector-im/t3chguy/sso_hash
Pass screenAfterLogin through SSO in the callback url
2020-05-14 17:30:32 +01:00
David Baker
50c4e44a14 Add notranslate class to matrixchat to prevent translation by Google Translate
Google Translate manipulates the DOM which is fundamentally incomaptible with
React and causes exceptions to be thrown when React tries to manipulate the DOM
based on its VDOM and the DOM methods throw exceptions because the DOM structure
is not what React thinks it is.

Riot has an i18n system, although it doesn't cover all strings and all languages.

Fixes https://github.com/vector-im/riot-web/issues/13557
2020-05-14 10:37:44 +01:00
Travis Ralston
a21d6e651f Move dispatcher references in support of TypeScript conversion
See https://github.com/matrix-org/matrix-react-sdk/pull/4593
2020-05-13 21:15:30 -06:00
Michael Telatynski
6348b17e23 Pass screenAfterLogin through SSO in the callback url
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-13 06:24:05 +01:00
Michael Telatynski
911bd2e469 Replace favico.js dependency with simplified variant grown from it
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-13 05:19:08 +01:00
Michael Telatynski
584e07664e Prefetch the formatting button mask svg images
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-11 16:07:13 +01:00
Michael Telatynski
33406d1709
Merge pull request #13329 from vector-im/t3chguy/app_load4
App load tweaks, improve error pages
2020-04-30 17:48:43 +01:00
J. Ryan Stinnett
1ad54a4dae Tweak default device name to be more compact
Fixes https://github.com/vector-im/riot-web/issues/13458
2020-04-30 16:50:01 +01:00
J. Ryan Stinnett
ab40d5b732 Update copyright header 2020-04-30 16:02:37 +01:00
J. Ryan Stinnett
dec5ea1637 Tweak default device name on macOS
This tweak's the OS name in the default device name for macOS devices to match
Apple's current branding.

Fixes https://github.com/vector-im/riot-web/issues/13459
2020-04-30 15:58:53 +01:00
Michael Telatynski
ba1c6df418 enable iframe sandboxing for the error fallback
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-28 00:42:36 +01:00
Michael Telatynski
51dc4bbbe4 Move async components to async-components to move them out of the skin bundle
and s/CompatibilityPage/CompatibilityView/

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-23 16:45:24 +01:00
Michael Telatynski
0032d7b943 fix
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-23 15:55:13 +01:00
Michael Telatynski
dda1f8454a fix supported browser logic
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-23 15:50:06 +01:00
Michael Telatynski
7e67085503 iterate compatibility page and make styling consistent between firefox and chrome
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-23 15:38:26 +01:00
Michael Telatynski
30fa3a92f7 Implement new unsupported browser page
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-23 15:10:40 +01:00
Michael Telatynski
b7fa8a1f54 wire up the static fallback error pages
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-23 13:37:25 +01:00
Michael Telatynski
918a56d01a don't preload error-view as we expect it to not be shown
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-22 18:49:39 +01:00
Michael Telatynski
b05e5be2f7 Improve ErrorView to match design
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-22 18:25:49 +01:00
Nad Chishtie
ac78570b58 Add example error pages 2020-04-22 16:07:24 +01:00
Michael Telatynski
e5a232b0d8 make typescript happy
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-22 13:41:29 +01:00
Michael Telatynski
d486782dd4 convert app.js to app.tsx
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-22 13:29:12 +01:00
Michael Telatynski
9d5e3d6d9a Fix dispatcher import to be extension agnostic
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-21 10:03:59 +01:00
Michael Telatynski
a77ed6e844
Merge branch 'develop' into t3chguy/poc_riot_desktop_sso_multi_profile 2020-04-14 17:03:00 +01:00
Michael Telatynski
24dbbfa002
Merge pull request #13133 from vector-im/t3chguy/electron-forward-back
Add riot-desktop shortcuts for forward/back matching browsers&slack
2020-04-14 16:12:24 +01:00
Michael Telatynski
36f55c1630 Allow rageshake to fail in init
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-14 14:44:12 +01:00
Michael Telatynski
2346829055 Add riot-desktop shortcuts for forward/back matching browsers&slack
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-11 18:58:00 +01:00
Michael Telatynski
99e5271cb8 Merge branch 'develop' of github.com:vector-im/riot-web into t3chguy/poc_riot_desktop_sso_multi_profile 2020-04-09 21:17:45 +01:00
Michael Telatynski
15bb819c8a Instead of encrypting, pass the HS an opaque token which we locally resolve in a map to our profile data
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-09 21:17:37 +01:00
Michael Telatynski
6fdeca93b6 Make the riot-desktop callback args more generic and encrypt the args
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-09 16:21:52 +01:00
Michael Telatynski
c67dcae35e improve comments
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-09 11:25:40 +01:00
Michael Telatynski
942ca3b525 make error translatable
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-09 11:19:40 +01:00
Michael Telatynski
83653b3a22 assert rageshake loaded successfully
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-09 11:14:38 +01:00
Michael Telatynski
e1bdcf2d9e remove debug statement
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-09 10:49:50 +01:00
Michael Telatynski
8c88e9f0f4 delint and i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-09 10:42:58 +01:00
Michael Telatynski
0572d62c88 extract app load error handler from app.js
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-09 10:32:04 +01:00
Michael Telatynski
343d4ea641 small tweaks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 21:49:27 +01:00
Michael Telatynski
cc939f9645 extract browser compatibility error handling out of app.js
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 21:41:22 +01:00
Michael Telatynski
f6ad5bf54c let settled accept multiple proms + i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 20:12:05 +01:00
Michael Telatynski
2837c41ca4 factor out config error handling
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 20:03:45 +01:00
Michael Telatynski
4954c732ee extract config error handling out of app.js
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 19:47:52 +01:00
Michael Telatynski
6a5268f09b fix loadConfig
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 19:36:06 +01:00
Michael Telatynski
7633009ddb clean up loadConfig
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 19:35:16 +01:00
Michael Telatynski
e267086a17 Parallelize loadSkin
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 19:21:39 +01:00
Michael Telatynski
b3780445d3 fix typescript types
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 16:31:58 +01:00
Michael Telatynski
7113fe7e31 comments
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 16:24:40 +01:00
Michael Telatynski
719865c033 parallel load language and theme
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 16:17:46 +01:00
Michael Telatynski
2c5664b76e move config loading into index for parallelism
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 16:12:36 +01:00
Michael Telatynski
43357fe842 reorder
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 16:10:44 +01:00
Michael Telatynski
6222546e20 prepare platform earlier
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 16:09:47 +01:00
Michael Telatynski
0b032d7434 loadOlm earlier
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-08 16:08:39 +01:00
Michael Telatynski
1b9112b876 Revert "Combine two async imports into one by way of skin.ts"
This reverts commit e788433c

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-06 12:24:56 +01:00
Michael Telatynski
e788433c24 Combine two async imports into one by way of skin.ts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-06 12:22:20 +01:00
Michael Telatynski
b1575524aa Switch things to typescript, use @types/modernizr, fix global.d.ts. Move mobile_guide redirect to index.ts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-05 00:55:36 +01:00
Michael Telatynski
093b7bbf72 convert index.js to typescript
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-05 00:27:59 +01:00
Michael Telatynski
20442413bf remove future error handling path
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-05 00:12:37 +01:00
Michael Telatynski
d429756094 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-05 00:08:31 +01:00
Michael Telatynski
b5318b4ebc fix global.d.ts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-05 00:05:59 +01:00
Michael Telatynski
4b6164d823 iterate app load order tweaks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-04 23:42:19 +01:00
Michael Telatynski
37ed89c25f move rageshake init into init.ts to allow for code-splitting
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-04 17:34:33 +01:00
Michael Telatynski
7b930da343 Make app load more async
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-04 17:21:59 +01:00
Michael Telatynski
8ca9e4ccb1 Fix Electron SSO handling to support multiple profiles
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-04 00:22:15 +01:00
Michael Telatynski
a377ca7b85
Merge pull request #13020 from vector-im/t3chguy/fix_mac_shortcut
Fix Electron mac-specific shortcut being registered on Web too.
2020-04-03 13:23:13 +01:00
Michael Telatynski
c1da3bf537 Fix Electron mac-specific shortcut being registered on Web too.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-03 13:01:28 +01:00
Travis Ralston
ab29ec123e
Merge pull request #12968 from vector-im/travis/jitsi-errors
Add a console warning that errors from Jitsi Meet are fine
2020-04-01 10:54:06 -06:00
David Baker
0bf05e3c7b Make widget API use optional
So we can work when popped out into a browser
2020-04-01 11:08:53 +01:00
David Baker
421fcb115f Give the jitsi wrapper its own external api script 2020-04-01 10:38:49 +01:00
Travis Ralston
13a7b71e08 Add a console warning that errors from Jitsi Meet are fine
See diff for info.

We use the fragment to avoid sending conference information to the web server where possible.
2020-03-31 12:19:17 -06:00
Travis Ralston
d9fbbe1696
Merge pull request #12861 from mnoorenberghe/patch-1
Don't immediately remove notifications from notification trays
2020-03-26 09:33:11 -06:00
Michael Telatynski
fd385f8450 simplify loadConfig
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 14:37:28 +00:00
Michael Telatynski
92d8ee355d merge initial-load.ts into init.ts as its no longer used by Jitsi
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 14:32:37 +00:00
Michael Telatynski
1f94b25d25 Fix copyrights
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 14:28:07 +00:00
Michael Telatynski
8929cd9c08 Merge branches 'develop' and 't3chguy/app_load_tweaks' of github.com:vector-im/riot-web into t3chguy/app_load_tweaks 2020-03-25 14:26:48 +00:00
Michael Telatynski
6315907585 Typescript stuff.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 14:07:22 +00:00
Michael Telatynski
6fb9fc4e6f move loadLanguage to init.ts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 13:55:25 +00:00
Michael Telatynski
df2b966acd move loadOlm to init.ts
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 13:54:02 +00:00
Michael Telatynski
e669c681e2 Fetch both config.json-s at the same time, first one fails 99% of the time
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 12:39:42 +00:00
Matt N
b8ca1f920e
Don't immediately remove notifications from notification trays
Let the notifications go into browser/OS notification trays so users can click on them from there if they miss the initial notification. Modern Chrome uses OS notifications so the user is in control of the the notification with the OS. This also aligns with the Electron platform version.

Signed-off-by: Matthew Noorenberghe <github@matthew.noorenberghe.com>
2020-03-24 17:27:14 -07:00
Travis Ralston
bde5679d11 Ask for Riot config over postMessage for the Jitsi widget
Fixes https://github.com/vector-im/riot-web/issues/12839 by not using the app load order that doesn't detect the right platform anyways.
2020-03-24 09:54:15 -06:00
Travis Ralston
4087ba0c5c
Revert "Remove useless app preloading from Jitsi widget wrapper" 2020-03-24 09:14:59 -06:00
Travis Ralston
350a52b44e Remove useless app preloading from Jitsi widget wrapper
We should always have conference information, and if we don't then the widget is invalid.
2020-03-23 10:38:10 -06:00
Michael Telatynski
3d266cb237 Register Mac electron specific Cmd+, shortcut to User Settings
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-19 23:42:10 +00:00
Travis Ralston
09e26d0882 Misc case changes, comment updates 2020-03-19 11:47:43 -06:00
Travis Ralston
e1eb16ce46 Use a local widget wrapper for Jitsi calls
Effectively fixes https://github.com/vector-im/riot-web/issues/11074
Effectively fixes https://github.com/vector-im/riot-web/issues/7112
Fixes https://github.com/vector-im/riot-web/issues/6930
Fixes Jitsi widgets not working for guests (https://github.com/vector-im/riot-web/issues/8933)
Fixes https://github.com/vector-im/riot-web/issues/5048

Previously we were relying on an integration manager to be defined, functional, and alive in order to join Jitsi calls. This commit changes this so we aren't reliant on an integration manager for Jitsi calls at all, and gives people the option of choosing a Jitsi server via the config.json.

This side is just the wrapper/shell: the logic is mostly in the react-sdk (to be linked via PRs). This layer simply has an HTML file exported that can be used to render a Jitsi widget, and the react-sdk constructs a URL to access it locally. This is similar to how the mobile apps handle Jitsi widgets: instead of iframing the widget URL directly into the app, they pull apart the widget information and natively render it. We're effectively doing the same here by parsing the widget options and using our local wrapper instead of whatever happens to be defined in the widget state event.

Integration managers should still continue to offer a widget URL for Jitsi widgets as this is what the spec requires.

A large part of this is based upon Dimension's handling of Jitsi and widgets in general: a license has been granted to allow Riot (and therefore the react-sdk) to use the code and be inspired by it.
2020-03-18 15:48:02 -06:00