Merge branch 'develop' of github.com:vector-im/element-web into t3chguy/ts/5.1

 Conflicts:
	src/vector/platform/ElectronPlatform.tsx
This commit is contained in:
Michael Telatynski 2021-06-23 14:54:06 +01:00
commit e2a109667a
6 changed files with 109 additions and 26 deletions

View file

@ -1,3 +1,25 @@
Changes in [1.7.31](https://github.com/vector-im/element-web/releases/tag/v1.7.31) (2021-06-21)
===============================================================================================
[Full Changelog](https://github.com/vector-im/element-web/compare/v1.7.31-rc.1...v1.7.31)
* Upgrade to React SDK 3.24.0 and JS SDK 12.0.0
Changes in [1.7.31-rc.1](https://github.com/vector-im/element-web/releases/tag/v1.7.31-rc.1) (2021-06-15)
=========================================================================================================
[Full Changelog](https://github.com/vector-im/element-web/compare/v1.7.30...v1.7.31-rc.1)
* Upgrade to React SDK 3.24.0-rc.1 and JS SDK 12.0.0-rc.1
* Translations update from Weblate
[\#17655](https://github.com/vector-im/element-web/pull/17655)
* Upgrade matrix-react-test-utils for React 17 peer deps
[\#17653](https://github.com/vector-im/element-web/pull/17653)
* Fix lint errors in Webpack config
[\#17626](https://github.com/vector-im/element-web/pull/17626)
* Preload only `woff2` fonts
[\#17614](https://github.com/vector-im/element-web/pull/17614)
* ⚛️ Upgrade to React@17
[\#17601](https://github.com/vector-im/element-web/pull/17601)
Changes in [1.7.30](https://github.com/vector-im/element-web/releases/tag/v1.7.30) (2021-06-07) Changes in [1.7.30](https://github.com/vector-im/element-web/releases/tag/v1.7.30) (2021-06-07)
=============================================================================================== ===============================================================================================
[Full Changelog](https://github.com/vector-im/element-web/compare/v1.7.30-rc.1...v1.7.30) [Full Changelog](https://github.com/vector-im/element-web/compare/v1.7.30-rc.1...v1.7.30)

View file

@ -7,6 +7,11 @@ to `Settings->Labs`. This list is non-exhaustive and subject to change, chat in
**Be warned! Labs features are not finalised, they may be fragile, they may change, they may be **Be warned! Labs features are not finalised, they may be fragile, they may change, they may be
dropped. Ask in the room if you are unclear about any details here.** dropped. Ask in the room if you are unclear about any details here.**
## Submit Abuse Report to Moderators [MSC3215](https://github.com/matrix-org/matrix-doc/pull/3215) support (`feature_report_to_moderators`)
A new version of the "Report" dialog that lets users send abuse reports directly to room moderators,
if the room supports it.
## Matrix Spaces [MSC1772](https://github.com/matrix-org/matrix-doc/pull/1772) support (`feature_spaces`) ## Matrix Spaces [MSC1772](https://github.com/matrix-org/matrix-doc/pull/1772) support (`feature_spaces`)
Enables showing, using, creating, and managing spaces. Create Spaces from the all new Space Panel (to left of Room List). Enables showing, using, creating, and managing spaces. Create Spaces from the all new Space Panel (to left of Room List).

View file

@ -1,6 +1,6 @@
{ {
"name": "element-web", "name": "element-web",
"version": "1.7.30", "version": "1.7.31",
"description": "A feature-rich client for Matrix.org", "description": "A feature-rich client for Matrix.org",
"author": "New Vector Ltd.", "author": "New Vector Ltd.",
"repository": { "repository": {
@ -91,8 +91,8 @@
"@types/flux": "^3.1.9", "@types/flux": "^3.1.9",
"@types/modernizr": "^3.5.3", "@types/modernizr": "^3.5.3",
"@types/node": "^14.14.22", "@types/node": "^14.14.22",
"@types/react": "^16.9", "@types/react": "^17.0.2",
"@types/react-dom": "^16.9.10", "@types/react-dom": "^17.0.2",
"@types/sanitize-html": "^2.3.1", "@types/sanitize-html": "^2.3.1",
"autoprefixer": "^9.8.6", "autoprefixer": "^9.8.6",
"babel-eslint": "^10.1.0", "babel-eslint": "^10.1.0",
@ -149,9 +149,6 @@
"webpack-cli": "^3.3.12", "webpack-cli": "^3.3.12",
"webpack-dev-server": "^3.11.2" "webpack-dev-server": "^3.11.2"
}, },
"resolutions": {
"**/@types/react": "^16.14"
},
"jest": { "jest": {
"testEnvironment": "jest-environment-jsdom-sixteen", "testEnvironment": "jest-environment-jsdom-sixteen",
"testMatch": [ "testMatch": [

View file

@ -11,6 +11,7 @@
"Download Completed": "Download Completed", "Download Completed": "Download Completed",
"Open": "Open", "Open": "Open",
"Dismiss": "Dismiss", "Dismiss": "Dismiss",
"Switch to space by number": "Switch to space by number",
"Open user settings": "Open user settings", "Open user settings": "Open user settings",
"Previous/next recently visited room or community": "Previous/next recently visited room or community", "Previous/next recently visited room or community": "Previous/next recently visited room or community",
"%(brand)s Desktop (%(platformName)s)": "%(brand)s Desktop (%(platformName)s)", "%(brand)s Desktop (%(platformName)s)": "%(brand)s Desktop (%(platformName)s)",

View file

@ -36,16 +36,24 @@ import { Room } from "matrix-js-sdk/src/models/room";
import Modal from "matrix-react-sdk/src/Modal"; import Modal from "matrix-react-sdk/src/Modal";
import InfoDialog from "matrix-react-sdk/src/components/views/dialogs/InfoDialog"; import InfoDialog from "matrix-react-sdk/src/components/views/dialogs/InfoDialog";
import Spinner from "matrix-react-sdk/src/components/views/elements/Spinner"; import Spinner from "matrix-react-sdk/src/components/views/elements/Spinner";
import { Categories, Modifiers, registerShortcut } from "matrix-react-sdk/src/accessibility/KeyboardShortcuts"; import {
import { Key } from "matrix-react-sdk/src/Keyboard"; Categories,
CMD_OR_CTRL,
DIGITS,
Modifiers,
registerShortcut,
} from "matrix-react-sdk/src/accessibility/KeyboardShortcuts";
import { isOnlyCtrlOrCmdKeyEvent, Key } from "matrix-react-sdk/src/Keyboard";
import React from "react"; import React from "react";
import { randomString } from "matrix-js-sdk/src/randomstring"; import { randomString } from "matrix-js-sdk/src/randomstring";
import { Action } from "matrix-react-sdk/src/dispatcher/actions"; import { Action } from "matrix-react-sdk/src/dispatcher/actions";
import { ActionPayload } from "matrix-react-sdk/src/dispatcher/payloads"; import { ActionPayload } from "matrix-react-sdk/src/dispatcher/payloads";
import { SwitchSpacePayload} from "matrix-react-sdk/src/dispatcher/payloads/SwitchSpacePayload";
import { showToast as showUpdateToast } from "matrix-react-sdk/src/toasts/UpdateToast"; import { showToast as showUpdateToast } from "matrix-react-sdk/src/toasts/UpdateToast";
import { CheckUpdatesPayload } from "matrix-react-sdk/src/dispatcher/payloads/CheckUpdatesPayload"; import { CheckUpdatesPayload } from "matrix-react-sdk/src/dispatcher/payloads/CheckUpdatesPayload";
import ToastStore from "matrix-react-sdk/src/stores/ToastStore"; import ToastStore from "matrix-react-sdk/src/stores/ToastStore";
import GenericExpiringToast from "matrix-react-sdk/src/components/views/toasts/GenericExpiringToast"; import GenericExpiringToast from "matrix-react-sdk/src/components/views/toasts/GenericExpiringToast";
import SettingsStore from 'matrix-react-sdk/src/settings/SettingsStore';
import VectorBasePlatform from './VectorBasePlatform'; import VectorBasePlatform from './VectorBasePlatform';
@ -271,6 +279,14 @@ export default class ElectronPlatform extends VectorBasePlatform {
}); });
// register OS-specific shortcuts // register OS-specific shortcuts
registerShortcut(Categories.NAVIGATION, {
keybinds: [{
modifiers: [CMD_OR_CTRL],
key: DIGITS,
}],
description: _td("Switch to space by number"),
});
if (isMac) { if (isMac) {
registerShortcut(Categories.NAVIGATION, { registerShortcut(Categories.NAVIGATION, {
keybinds: [{ keybinds: [{
@ -546,9 +562,15 @@ export default class ElectronPlatform extends VectorBasePlatform {
}); });
} }
_navigateForwardBack(back: boolean) { private navigateForwardBack(back: boolean) {
this._ipcCall(back ? "navigateBack" : "navigateForward"); this._ipcCall(back ? "navigateBack" : "navigateForward");
} }
private navigateToSpace(num: number) {
dis.dispatch<SwitchSpacePayload>({
action: Action.SwitchSpace,
num,
});
}
onKeyDown(ev: KeyboardEvent): boolean { onKeyDown(ev: KeyboardEvent): boolean {
let handled = false; let handled = false;
@ -557,7 +579,7 @@ export default class ElectronPlatform extends VectorBasePlatform {
case Key.SQUARE_BRACKET_LEFT: case Key.SQUARE_BRACKET_LEFT:
case Key.SQUARE_BRACKET_RIGHT: case Key.SQUARE_BRACKET_RIGHT:
if (isMac && ev.metaKey && !ev.altKey && !ev.ctrlKey && !ev.shiftKey) { if (isMac && ev.metaKey && !ev.altKey && !ev.ctrlKey && !ev.shiftKey) {
this._navigateForwardBack(ev.key === Key.SQUARE_BRACKET_LEFT); this.navigateForwardBack(ev.key === Key.SQUARE_BRACKET_LEFT);
handled = true; handled = true;
} }
break; break;
@ -565,7 +587,23 @@ export default class ElectronPlatform extends VectorBasePlatform {
case Key.ARROW_LEFT: case Key.ARROW_LEFT:
case Key.ARROW_RIGHT: case Key.ARROW_RIGHT:
if (!isMac && ev.altKey && !ev.metaKey && !ev.ctrlKey && !ev.shiftKey) { if (!isMac && ev.altKey && !ev.metaKey && !ev.ctrlKey && !ev.shiftKey) {
this._navigateForwardBack(ev.key === Key.ARROW_LEFT); this.navigateForwardBack(ev.key === Key.ARROW_LEFT);
handled = true;
}
break;
case "1":
case "2":
case "3":
case "4":
case "5":
case "6":
case "7":
case "8":
case "9":
case "0":
if (SettingsStore.getValue("feature_spaces") && isOnlyCtrlOrCmdKeyEvent(ev)) {
this.navigateToSpace(parseInt(ev.key, 10));
handled = true; handled = true;
} }
break; break;

View file

@ -1550,21 +1550,27 @@
resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24"
integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==
"@types/react-dom@^16.9.10": "@types/react-dom@^17.0.2":
version "16.9.10" version "17.0.8"
resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.10.tgz#4485b0bec3d41f856181b717f45fd7831101156f" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-17.0.8.tgz#3180de6d79bf53762001ad854e3ce49f36dd71fc"
integrity sha512-ItatOrnXDMAYpv6G8UCk2VhbYVTjZT9aorLtA/OzDN9XJ2GKcfam68jutoAcILdRjsRUO8qb7AmyObF77Q8QFw== integrity sha512-0ohAiJAx1DAUEcY9UopnfwCE9sSMDGnY/oXjWMax6g3RpzmTt2GMyMVAXcbn0mo8XAff0SbQJl2/SBU+hjSZ1A==
dependencies: dependencies:
"@types/react" "^16" "@types/react" "*"
"@types/react@*", "@types/react@^16", "@types/react@^16.14", "@types/react@^16.9": "@types/react@*", "@types/react@^17.0.2":
version "16.14.2" version "17.0.11"
resolved "https://registry.yarnpkg.com/@types/react/-/react-16.14.2.tgz#85dcc0947d0645349923c04ccef6018a1ab7538c" resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.11.tgz#67fcd0ddbf5a0b083a0f94e926c7d63f3b836451"
integrity sha512-BzzcAlyDxXl2nANlabtT4thtvbbnhee8hMmH/CcJrISDBVcJS1iOsP1f0OAgSdGE0MsY9tqcrb9YoZcOFv9dbQ== integrity sha512-yFRQbD+whVonItSk7ZzP/L+gPTJVBkL/7shLEF+i9GC/1cV3JmUxEQz6+9ylhUpWSDuqo1N9qEvqS6vTj4USUA==
dependencies: dependencies:
"@types/prop-types" "*" "@types/prop-types" "*"
"@types/scheduler" "*"
csstype "^3.0.2" csstype "^3.0.2"
"@types/retry@^0.12.0":
version "0.12.0"
resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d"
integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==
"@types/sanitize-html@^2.3.1": "@types/sanitize-html@^2.3.1":
version "2.3.1" version "2.3.1"
resolved "https://registry.yarnpkg.com/@types/sanitize-html/-/sanitize-html-2.3.1.tgz#094d696b83b7394b016e96342bbffa6a028795ce" resolved "https://registry.yarnpkg.com/@types/sanitize-html/-/sanitize-html-2.3.1.tgz#094d696b83b7394b016e96342bbffa6a028795ce"
@ -1572,6 +1578,11 @@
dependencies: dependencies:
htmlparser2 "^6.0.0" htmlparser2 "^6.0.0"
"@types/scheduler@*":
version "0.16.1"
resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.1.tgz#18845205e86ff0038517aab7a18a62a6b9f71275"
integrity sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==
"@types/source-list-map@*": "@types/source-list-map@*":
version "0.1.2" version "0.1.2"
resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9"
@ -7647,9 +7658,9 @@ mathml-tag-names@^2.1.3:
resolved "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz#4ddadd67308e780cf16a47685878ee27b736a0a3" resolved "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz#4ddadd67308e780cf16a47685878ee27b736a0a3"
integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg== integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==
"matrix-js-sdk@github:matrix-org/matrix-js-sdk#develop": matrix-js-sdk@12.0.0, "matrix-js-sdk@github:matrix-org/matrix-js-sdk#develop":
version "11.2.0" version "12.0.0"
resolved "https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/35ecbed29d16982deff27a8c37b05167738225a2" resolved "https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/284e2bb911d2dffeff4c819436d1fde20d56646b"
dependencies: dependencies:
"@babel/runtime" "^7.12.5" "@babel/runtime" "^7.12.5"
another-json "^0.2.0" another-json "^0.2.0"
@ -7657,6 +7668,7 @@ mathml-tag-names@^2.1.3:
bs58 "^4.0.1" bs58 "^4.0.1"
content-type "^1.0.4" content-type "^1.0.4"
loglevel "^1.7.1" loglevel "^1.7.1"
p-retry "^4.5.0"
qs "^6.9.6" qs "^6.9.6"
request "^2.88.2" request "^2.88.2"
unhomoglyph "^1.0.6" unhomoglyph "^1.0.6"
@ -7670,8 +7682,8 @@ matrix-mock-request@^1.2.3:
expect "^1.20.2" expect "^1.20.2"
"matrix-react-sdk@github:matrix-org/matrix-react-sdk#develop": "matrix-react-sdk@github:matrix-org/matrix-react-sdk#develop":
version "3.23.0" version "3.24.0"
resolved "https://codeload.github.com/matrix-org/matrix-react-sdk/tar.gz/3eca1cbec32c134869069def28fb0d85566607e7" resolved "https://codeload.github.com/matrix-org/matrix-react-sdk/tar.gz/54c3832b5b9dde5981eb1934f599e7b75eac00e8"
dependencies: dependencies:
"@babel/runtime" "^7.12.5" "@babel/runtime" "^7.12.5"
await-lock "^2.1.0" await-lock "^2.1.0"
@ -7698,7 +7710,7 @@ matrix-mock-request@^1.2.3:
katex "^0.12.0" katex "^0.12.0"
linkifyjs "^2.1.9" linkifyjs "^2.1.9"
lodash "^4.17.20" lodash "^4.17.20"
matrix-js-sdk "github:matrix-org/matrix-js-sdk#develop" matrix-js-sdk "12.0.0"
matrix-widget-api "^0.1.0-beta.14" matrix-widget-api "^0.1.0-beta.14"
minimist "^1.2.5" minimist "^1.2.5"
opus-recorder "^8.0.3" opus-recorder "^8.0.3"
@ -8710,6 +8722,14 @@ p-retry@^3.0.1:
dependencies: dependencies:
retry "^0.12.0" retry "^0.12.0"
p-retry@^4.5.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.5.0.tgz#6685336b3672f9ee8174d3769a660cb5e488521d"
integrity sha512-5Hwh4aVQSu6BEP+w2zKlVXtFAaYQe1qWuVADSgoeVlLjwe/Q/AMSoRR4MDeaAfu8llT+YNbEijWu/YF3m6avkg==
dependencies:
"@types/retry" "^0.12.0"
retry "^0.12.0"
p-try@^1.0.0: p-try@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"