Commit Graph

534 Commits

Author SHA1 Message Date
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
Michael Telatynski
7296b704a8
Merge pull request #12756 from vector-im/t3chguy/gemini
Remove remainders of gemini-scrollbar and react-gemini-scrollbar
2020-03-18 14:03:59 +00:00
Michael Telatynski
5913e3830b
Merge pull request #12735 from vector-im/t3chguy/url
Add url tests to Modernizr
2020-03-17 11:16:48 +00:00
Michael Telatynski
8cef591c57 Remove remainders of gemini-scrollbar and react-gemini-scrollbar
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-17 10:31:46 +00:00
Michael Telatynski
eba63ce9ab Add url tests to Modernizr
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-14 00:13:47 +00:00
Damir Jelić
20a89d67cb ElectronPlatform: Add support to remove events from the event index. 2020-03-12 11:51:34 +01:00
Michael Telatynski
09ed0e781a Update copy for SSO modal 2020-03-02 20:04:31 +00:00
Michael Telatynski
178c61dbf7 fix typo 2020-03-02 15:01:06 +00:00
Michael Telatynski
c197661be0 riot-desktop open SSO in browser so user doesn't have to auth twice 2020-03-02 14:59:55 +00:00
Travis Ralston
22bc98c8bc Merge branch 'develop' into noscript 2020-02-28 13:34:39 -07:00
Michael Telatynski
7c84e406ac Modernizr remove t3st/es6/contains
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-26 12:16:35 +00:00
Michael Telatynski
37e17133bc Switch out any eval-using Modernizr rules
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-26 10:24:10 +00:00
Michael Telatynski
af0b57bcda make BasePlatform::setLanguage sync, handle promises internally
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-25 10:57:41 +00:00
Michael Telatynski
5117efaf98 Notify electron of language changes
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-24 17:14:23 +00:00
Karol Kosek
b571ff766c
index.html: Place noscript on top of the page
Before this change, you had to scroll down to see the noscript element.
This change places the noscript element on top of the page making sure
that a user will see this message when site is loaded without JavaScript.

Signed-off-by: Karol Kosek <krkk@krkk.ct8.pl>
2020-02-22 21:14:01 +01:00
Michael Telatynski
5cc0cef06c Use Persistent Storage where possible
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-20 00:38:09 +00:00
Michael Telatynski
7664eb27c4 Move bulk to react-sdk and reference it from riot-web land
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-13 16:58:28 +00:00
Michael Telatynski
b7ed7a1dd7 Update comments and such
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-13 16:53:45 +00:00
Michael Telatynski
d39d89de83 revert modernizr change 2020-02-07 22:08:57 +00:00
Michael Telatynski
98773df76e Get rid of dependence on usercontent.riot.im 2020-02-07 22:07:30 +00:00
Michael Telatynski
95f749ccd9 Remove modernizr rules for features on which we only soft depend
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-06 18:01:53 +00:00
Michael Telatynski
eb62972aed
Merge pull request #12258 from vector-im/t3chguy/csp
Embed CSP meta tag and stop using script-src unsafe-inline
2020-02-06 12:15:17 +00:00
Michael Telatynski
3a5a904afb
Update src/vector/index.html
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2020-02-06 11:54:05 +00:00
Michael Telatynski
7d68c2c465 re-add child-src as the common ancestor of worker-src and frame-src for backwards compat and split onto multiple lines for readability
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-02-06 11:52:21 +00:00
Michael Telatynski
074a3cfaaf fix font-src of CSP 2020-02-06 10:17:38 +00:00
Michael Telatynski
2b5e028cbe add comment 2020-02-05 16:37:19 +00:00
Michael Telatynski
ec20e1ece2 Embed CSP meta tag and stop using script-src unsafe-inline 2020-02-05 16:35:23 +00:00
Michael Telatynski
7d49078f22 Change them to Modernizr tests and add more rules 2020-02-05 14:05:46 +00:00
Michael Telatynski
032efafe2e Rejig things around to catch Promises not being a thing at all 2020-02-04 13:35:05 +00:00
Michael Telatynski
087bcf0ae6 fix declaration order 2020-02-04 11:11:06 +00:00
Michael Telatynski
cdc1202bbe Add custom browser checks outside of Modernizr 2020-02-04 11:08:52 +00:00
Michael Telatynski
bceca49cdc Update vendored modernizr 2020-02-04 11:00:47 +00:00
Damir Jelić
7aff020d4d Merge branch 'poljar/seshat-ui' into develop 2020-01-24 14:40:54 +01:00
Damir Jelić
c0558f3527 Merge branch 'poljar/seshat-filepanel' into develop 2020-01-24 14:38:20 +01:00
Damir Jelić
e1e3bba290 ElectronPlatform: Replace the indexSize method with the getStats method. 2020-01-21 13:35:29 +01:00
Damir Jelić
e556bb242f ElectronPlatform: Add the indexSize method. 2020-01-21 13:35:29 +01:00
Travis Ralston
99e1ff9477 Load as little as possible in index.js for the skinner
Imports are optimized to be concurrent/async by webpack, which means that when the old index.js referenced the Lifecycle from the react-sdk it caused the app to explode. This is because in another branch the Lifecycle references a class member of a skinnable component, leading to the skinner complaining that the skin hasn't been loaded.

To work around this, we've shoved all the app stuff to a new app.js file, leaving just the skinning and some early bootstrap work in the index.js
2020-01-20 19:52:11 -07:00
Travis Ralston
cdd25ea45f Fix rageshake post-sourcemaps 2020-01-17 18:27:37 -07:00
Damir Jelić
a2e256b4c9 ElectronPlatform: Add the ability to load file events from the event index. 2020-01-17 10:11:57 +01:00
Travis Ralston
f73d2bae1f Merge branch 'develop' into travis/sourcemaps 2020-01-13 11:22:47 -07:00
Dale Harvey
a41484cb35 Add stub service worker so users can install on desktop with Chrome
Signed-off-by: Dale Harvey <dale@arandomurl.com>
2020-01-10 19:08:56 +00:00
Travis Ralston
ec66069e96 Update build scripts for new process
We have to convert *something* to TypeScript so it doesn't complain that there's nothing to compile, so this converts the easiest utility library.

Many of the scripts are copied from the react-sdk.
2020-01-08 16:09:42 -07:00
Travis Ralston
17e332bb48 Import from src/ for the react-sdk and js-sdk
We compile directly for accuracy of sourcemaps.
2019-12-23 20:02:11 -07:00
David Baker
89d622b8b2 Remove the code that calls the origin migrator
This will have done its job now, everyone's had long enough to
install a newer version of Riot and migrate to the new origin.

Laves the code on the backend that handles it for the time being,
as per comment.
2019-12-09 11:57:43 +00:00
David Baker
c063cec4d7 remove draft CSS reference 2019-12-06 13:44:51 +00:00
Aaron Raimist
3397165036
Remove mention of vector.im as default identity server on mobile guide
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-11-27 19:26:22 -06:00
Damir Jelić
222fea969d Merge branch 'poljar/seshat-pr' into develop 2019-11-26 18:47:58 +01:00
Michael Telatynski
eac6c46d28 Merge branches 'develop' and 't3chguy/remove_bluebird' of https://github.com/vector-im/riot-web into t3chguy/remove_bluebird 2019-11-22 14:00:02 +00:00
David Baker
8b2ca56283
Merge pull request #11445 from vector-im/dbkr/dedup_theming_code
De-dup theming code
2019-11-21 09:44:22 +00:00
David Baker
135d5f4cc7
Merge pull request #11442 from vector-im/dbkr/system_dark_mode
Use new theme API in react-sdk
2019-11-20 16:32:32 +00:00
David Baker
e34c46c893 Dedup theming code
Following on from https://github.com/matrix-org/matrix-react-sdk/pull/3637
this removes the code dealing with themes in vector/index.js and uses the
code from react-sdk. The two did almost exactly the same thing but in
subtley different ways.

This code can be incredibly subtle though, so doing this a separate
PR.
2019-11-20 15:42:15 +00:00
David Baker
7294bec1c8 Use new theme API in react-sdk
A thesis presented in two parts. This part has the absolute minimum
logic changes to the themeing code in vector/index.js because I know
how subtle and fragile this code is. However, it also looks like it's
completely duplicated from react-sdk, so in the next part I'm going
to remove that logic and make it use the logic in react-sdk, then we
can see what breaks.

Requires https://github.com/matrix-org/matrix-react-sdk/pull/3637
2019-11-20 13:43:08 +00:00
Bruno Windels
0c9f0e52bd preload warning triangle 2019-11-20 12:42:31 +01:00
Damir Jelić
137bedb3f9 ElectronPlatform: Update the path for the BaseEventIndexManager class. 2019-11-19 13:34:00 +01:00
Damir Jelić
73b302f432 ElectronPlatform: Fix some type annotations. 2019-11-19 13:34:00 +01:00
Damir Jelić
4a25252626 ElectronPlatform: Rename the SeshatIndexerManager. 2019-11-19 13:34:00 +01:00
Damir Jelić
dd2c210cfb electron-main: Rework the event index initialization and deletion. 2019-11-14 16:14:48 +01:00
Damir Jelić
7147af8f80 ElectronPlatform: Don't scope the event index per user. 2019-11-14 14:14:59 +01:00
Travis Ralston
6cf4fc1026 Trigger a theme change on startup, not just a tint change
Fixes https://github.com/vector-im/riot-web/issues/11370
2019-11-13 14:00:22 -07:00
Damir Jelić
c3c5756c7a ElectronPlatform: Implement the EventIndexManager for Seshat. 2019-11-13 15:55:07 +01:00
Travis Ralston
71fb2e04a9
fix catch block indentation 2019-11-12 15:14:11 -07:00
Travis Ralston
e84861f770 Apparently our eslint rules are different in different layers 2019-11-12 15:04:56 -07:00
Travis Ralston
ec9a38c2fe Perform favicon updates twice in Chrome
See diff for why this arcane magic is needed.

Fixes https://github.com/vector-im/riot-web/issues/11347
2019-11-12 15:02:52 -07:00
David Baker
7af68bddea Remove the 'auto hide menu bar' option on Mac
The menu bar is at the top of the screen on Mac so this setting
does absolutely nothing.
2019-11-05 20:31:08 +00:00
Michael Telatynski
10e1d9093e transform-async-to-promises: get rid of bluebird 2019-11-04 12:46:28 +00:00
Michael Telatynski
9820e59559 Merge hide-to-tray-icon with show-tray-icon 2019-10-30 14:32:28 +00:00
Michael Telatynski
1498872214 Add ability to hide tray icon on non-Mac (which has no tray icon) 2019-10-29 11:37:42 +00:00
Matthew Hodgson
4e619b1693
Merge branch 'develop' into patch-3 2019-10-20 11:44:38 +01:00
Damir Jelić
71023ae9df ElectronPlatform: Fix lint errors. 2019-10-11 17:17:24 +02:00
Damir Jelić
1dbdd0a366 ElectronPlatform: Add support for a event index using Seshat. 2019-10-11 16:05:14 +02:00
David Baker
57672ad384 Request persistent storage on Electron
It's still not 100% clear whether storage is always persistent on
Electron, but we seem to be getting reports of it being deleted in
the wild on Electron, so let's try calling the API to request
persistent storage. It won't pop up a dialog on Electron. In the
worst case it will give us some logging so we know what the API calls
return.

We could do this on non-desktop too but it's a bit of a mess because
Firefox prompts the user but Chrome makes a decision itself based on
how much the user visits the site.
2019-10-04 12:17:01 +01:00
Michael Telatynski
1018dc7ced Don't log query parameters as they may contain secrets
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-21 17:44:58 +01:00
Nad Chishtie
634141637b Remove extraneous content & styles. Style improvements. 2019-09-11 16:08:24 -07:00
Travis Ralston
0b6c29d274
Merge pull request #10480 from vector-im/t3chguy/react16
Switch to React 16
2019-09-11 10:42:24 -06:00
David Baker
89e9ac8039
Merge pull request #10810 from vector-im/nadonomy/install-guide
Update install guide
2019-09-10 18:36:35 +01:00
David Baker
58171e4479 lint 2019-09-10 18:30:02 +01:00
David Baker
b8b10e79fe Update button href dynamically
also make button a link 'cos buttons can't have hrefs
2019-09-10 18:27:57 +01:00
Nad Chishtie
845fbacd11 Update copy 2019-09-09 16:51:46 -07:00
Nad Chishtie
d1fb9c604a Add id to button 2019-09-09 16:46:53 -07:00
Nad Chishtie
27afa3af74 Update styling & remove extraneous elements and copy in mobile install guide 2019-09-09 16:40:06 -07:00
Michael Telatynski
7eefc9d856 Merge branch 'develop' of github.com:vector-im/riot-web into t3chguy/react16 2019-08-24 11:42:03 +01:00
Travis Ralston
9ed647d280 Remove t3chguy's debug lines 2019-08-14 09:28:35 -06:00
Michael Telatynski
46dac869d5 Load config.json before loading language so default can apply 2019-08-14 12:29:25 +01:00
Michael Telatynski
d347ab08e7 Merge branches 'develop' and 't3chguy/react16' of github.com:vector-im/riot-web into t3chguy/react16 2019-08-10 00:20:30 +01:00
Michael Telatynski
509839e79e Allow setting electron autoHideMenuBar and persist it
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-05 11:58:16 +01:00
Michael Telatynski
06e7a48aaf Switch to React 16.8
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-08-01 15:31:33 +01:00
Bruno Windels
8a022a4be0
Merge pull request #10349 from vector-im/bwindels/cachebust-config
Cachebust config file requests
2019-07-16 11:06:57 +00:00