Merge remote-tracking branch 'vector-im/develop' into travis/presence

pull/5286/head
Travis Ralston 2017-10-25 11:27:22 -06:00
commit 45ca890f68
57 changed files with 10231 additions and 841 deletions

View File

@ -1,3 +1,78 @@
Changes in [0.12.7](https://github.com/vector-im/riot-web/releases/tag/v0.12.7) (2017-10-16)
============================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.7-rc.3...v0.12.7)
* Released versions of react-sdk & js-sdk
Changes in [0.12.7-rc.3](https://github.com/vector-im/riot-web/releases/tag/v0.12.7-rc.3) (2017-10-13)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.7-rc.2...v0.12.7-rc.3)
* Hide the join group button
[\#5275](https://github.com/vector-im/riot-web/pull/5275)
Changes in [0.12.7-rc.2](https://github.com/vector-im/riot-web/releases/tag/v0.12.7-rc.2) (2017-10-13)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.7-rc.1...v0.12.7-rc.2)
Changes in [0.12.7-rc.1](https://github.com/vector-im/riot-web/releases/tag/v0.12.7-rc.1) (2017-10-13)
======================================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.6...v0.12.7-rc.1)
* switch to new logos, and use import rather than VAR
[\#5203](https://github.com/vector-im/riot-web/pull/5203)
* Clarify what an integrations server is
[\#5266](https://github.com/vector-im/riot-web/pull/5266)
* Update from Weblate.
[\#5269](https://github.com/vector-im/riot-web/pull/5269)
* Remove trailing comma in JSON
[\#5167](https://github.com/vector-im/riot-web/pull/5167)
* Added default_federate property
[\#3849](https://github.com/vector-im/riot-web/pull/3849)
* CSS for greying out login form
[\#5197](https://github.com/vector-im/riot-web/pull/5197)
* Fix bug that made sub list placeholders not show for ILAG etc.
[\#5164](https://github.com/vector-im/riot-web/pull/5164)
* Factor out EditableItemList component from AliasSettings
[\#5161](https://github.com/vector-im/riot-web/pull/5161)
* Mark and remove some translations
[\#5110](https://github.com/vector-im/riot-web/pull/5110)
* CSS for "remove" button on GroupRoomTile
[\#5141](https://github.com/vector-im/riot-web/pull/5141)
* Create basic icon for the GroupRoomList tab and adding rooms to groups
[\#5140](https://github.com/vector-im/riot-web/pull/5140)
* Add button to get to MyGroups
[\#5131](https://github.com/vector-im/riot-web/pull/5131)
* Remove `key` prop pass-thru on HeaderButton
[\#5137](https://github.com/vector-im/riot-web/pull/5137)
* Implement "Add room to group" feature
[\#5125](https://github.com/vector-im/riot-web/pull/5125)
* Add Jitsi screensharing support in electron app
[\#4967](https://github.com/vector-im/riot-web/pull/4967)
* Refactor right panel header buttons
[\#5117](https://github.com/vector-im/riot-web/pull/5117)
* CSS for publicity status & toggle button
[\#5104](https://github.com/vector-im/riot-web/pull/5104)
* CSS for "X" in top right of features users/rooms
[\#5103](https://github.com/vector-im/riot-web/pull/5103)
* Include Finnish translation
[\#5051](https://github.com/vector-im/riot-web/pull/5051)
* Redesign membership section of GroupView
[\#5096](https://github.com/vector-im/riot-web/pull/5096)
* Make --config accept globs
[\#5090](https://github.com/vector-im/riot-web/pull/5090)
* CSS for GroupView: Add a User
[\#5093](https://github.com/vector-im/riot-web/pull/5093)
* T3chguy/devtools 1
[\#5074](https://github.com/vector-im/riot-web/pull/5074)
* Alter opacity for flair
[\#5085](https://github.com/vector-im/riot-web/pull/5085)
* Fix ugly integ button
[\#5082](https://github.com/vector-im/riot-web/pull/5082)
* Group Membership UI
[\#4830](https://github.com/vector-im/riot-web/pull/4830)
Changes in [0.12.6](https://github.com/vector-im/riot-web/releases/tag/v0.12.6) (2017-09-21)
============================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.5...v0.12.6)

View File

@ -5,7 +5,10 @@
"integrations_ui_url": "https://scalar.vector.im/",
"integrations_rest_url": "https://scalar.vector.im/api",
"bug_report_endpoint_url": "https://riot.im/bugreports/submit",
"enableLabs": true,
"features": {
"feature_groups": "labs",
"feature_pinning": "labs"
},
"default_federate": true,
"roomDirectory": {
"servers": [

View File

@ -28,9 +28,10 @@ function getColorName(hex) {
## Adding new strings
1. Check if the import ``import { _t } from 'matrix-react-sdk/lib/languageHandler';`` is present. If not add it to the other import statements. Also import `_td` if needed.
2. Add ``_t()`` to your string. (Don't forget curly braces when you assign an expression to JSX attributes in the render method). If the string is introduced at a point before the translation system has not yet been initialized, use `_td()` instead, and call `_t()` at the appropriate time.
3. Add the String to the ``en_EN.json`` file in ``src/i18n/strings`` (respect which repository you are on).
1. Check if the import ``import { _t } from 'matrix-react-sdk/lib/languageHandler';`` is present. If not add it to the other import statements. Also import `_td` if needed.
1. Add ``_t()`` to your string. (Don't forget curly braces when you assign an expression to JSX attributes in the render method). If the string is introduced at a point before the translation system has not yet been initialized, use `_td()` instead, and call `_t()` at the appropriate time.
1. Run `npm run i18n` to update ``src/i18n/strings/en_EN.json`` (if it fails because it can't find the script, your dev environment predates the script, so reinstall/link react-sdk with `npm link ../matrix-react-sdk`). If it segfaults, you may be on Node 6, so try a newer version of node.
1. If you added a string with a plural, you can add other English plural variants to ``src/i18n/strings/en_EN.json`` (remeber to edit the one in the same project as the source file containing your new translation).
## Adding variables inside a string.

View File

@ -2,7 +2,7 @@
"name": "riot-web",
"productName": "Riot",
"main": "src/electron-main.js",
"version": "0.12.6",
"version": "0.12.7",
"description": "A feature-rich client for Matrix.org",
"author": "Vector Creations Ltd.",
"dependencies": {

View File

@ -7,7 +7,6 @@
"integrations_rest_url": "https://scalar.vector.im/api",
"bug_report_endpoint_url": "https://riot.im/bugreports/submit",
"welcomeUserId": "@riot-bot:matrix.org",
"enableLabs": true,
"roomDirectory": {
"servers": [
"matrix.org"

9512
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

View File

@ -2,7 +2,7 @@
"name": "riot-web",
"productName": "Riot",
"main": "electron_app/src/electron-main.js",
"version": "0.12.6",
"version": "0.12.7",
"description": "A feature-rich client for Matrix.org",
"author": "Vector Creations Ltd.",
"repository": {
@ -28,6 +28,8 @@
"scripts": {
"reskindex": "reskindex -h src/header",
"reskindex:watch": "reskindex -h src/header -w",
"i18n": "matrix-gen-i18n",
"prunei18n": "matrix-prune-i18n",
"build:res": "node scripts/copy-res.js",
"build:modernizr": "modernizr -c .modernizr.json -d src/vector/modernizr.js",
"build:compile": "npm run reskindex && babel --source-maps -d lib src",
@ -66,8 +68,8 @@
"gfm.css": "^1.1.1",
"highlight.js": "^9.0.0",
"linkifyjs": "^2.1.3",
"matrix-js-sdk": "0.8.4",
"matrix-react-sdk": "0.10.6",
"matrix-js-sdk": "0.8.5",
"matrix-react-sdk": "0.10.7",
"modernizr": "^3.1.0",
"pako": "^1.0.5",
"prop-types": "^15.5.10",
@ -110,7 +112,7 @@
"eslint-config-google": "^0.7.1",
"eslint-plugin-babel": "^4.1.1",
"eslint-plugin-flowtype": "^2.30.0",
"eslint-plugin-react": "^6.9.0",
"eslint-plugin-react": "^7.4.0",
"expect": "^1.16.0",
"fs-extra": "^0.30.0",
"html-webpack-plugin": "^2.24.0",
@ -130,7 +132,7 @@
"minimist": "^1.2.0",
"mkdirp": "^0.5.1",
"mocha": "^2.4.5",
"parallelshell": "^1.2.0",
"parallelshell": "^3.0.2",
"postcss-extend": "^1.0.5",
"postcss-import": "^9.0.0",
"postcss-loader": "^1.2.2",

View File

@ -19,6 +19,7 @@ limitations under the License.
import React from 'react';
import { DragDropContext } from 'react-dnd';
import HTML5Backend from 'react-dnd-html5-backend';
import classNames from 'classnames';
import KeyCode from 'matrix-react-sdk/lib/KeyCode';
import sdk from 'matrix-react-sdk';
import dis from 'matrix-react-sdk/lib/dispatcher';
@ -55,7 +56,7 @@ var LeftPanel = React.createClass({
// We just need to update if any of these things change.
if (
this.props.collapsed !== nextProps.collapsed ||
this.props.opacity !== nextProps.opacity
this.props.disabled !== nextProps.disabled
) {
return true;
}
@ -176,14 +177,16 @@ var LeftPanel = React.createClass({
topBox = <SearchBox collapsed={ this.props.collapsed } onSearch={ this.onSearch } />;
}
let classes = "mx_LeftPanel mx_fadable";
if (this.props.collapsed) {
classes += " collapsed";
}
let classes = classNames(
"mx_LeftPanel", "mx_fadable",
{
"collapsed": this.props.collapsed,
"mx_fadable_faded": this.props.disabled,
}
);
return (
<aside className={classes} style={{ opacity: this.props.opacity }}
onKeyDown={ this._onKeyDown } onFocus={ this._onFocus } onBlur={ this._onBlur }>
<aside className={classes} onKeyDown={ this._onKeyDown } onFocus={ this._onFocus } onBlur={ this._onBlur }>
{ topBox }
<CallPreview ConferenceHandler={VectorConferenceHandler} />
<RoomList

View File

@ -18,14 +18,16 @@ limitations under the License.
import React from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import { _t } from 'matrix-react-sdk/lib/languageHandler';
import sdk from 'matrix-react-sdk';
import dis from 'matrix-react-sdk/lib/dispatcher';
import MatrixClientPeg from 'matrix-react-sdk/lib/MatrixClientPeg';
import MatrixClient from 'matrix-js-sdk';
import Analytics from 'matrix-react-sdk/lib/Analytics';
import rate_limited_func from 'matrix-react-sdk/lib/ratelimitedfunc';
import AccessibleButton from 'matrix-react-sdk/lib/components/views/elements/AccessibleButton';
import { showGroupInviteDialog, showGroupAddRoomDialog } from 'matrix-react-sdk/lib/GroupAddressPicker';
import GroupStoreCache from 'matrix-react-sdk/lib/stores/GroupStoreCache';
class HeaderButton extends React.Component {
constructor() {
@ -80,6 +82,10 @@ module.exports = React.createClass({
collapsed: React.PropTypes.bool, // currently unused property to request for a minimized view of the panel
},
contextTypes: {
matrixClient: PropTypes.instanceOf(MatrixClient),
},
Phase: {
RoomMemberList: 'RoomMemberList',
GroupMemberList: 'GroupMemberList',
@ -92,14 +98,14 @@ module.exports = React.createClass({
componentWillMount: function() {
this.dispatcherRef = dis.register(this.onAction);
const cli = MatrixClientPeg.get();
const cli = this.context.matrixClient;
cli.on("RoomState.members", this.onRoomStateMember);
},
componentWillUnmount: function() {
dis.unregister(this.dispatcherRef);
if (MatrixClientPeg.get()) {
MatrixClientPeg.get().removeListener("RoomState.members", this.onRoomStateMember);
if (this.context.matrixClient) {
this.context.matrixClient.removeListener("RoomState.members", this.onRoomStateMember);
}
},
@ -122,7 +128,7 @@ module.exports = React.createClass({
},
onInviteButtonClick: function() {
if (MatrixClientPeg.get().isGuest()) {
if (this.context.matrixClient.isGuest()) {
dis.dispatch({action: 'view_set_mxid'});
return;
}
@ -222,13 +228,13 @@ module.exports = React.createClass({
if ((this.state.phase == this.Phase.RoomMemberList || this.state.phase === this.Phase.RoomMemberInfo)
&& this.props.roomId
) {
const cli = MatrixClientPeg.get();
const cli = this.context.matrixClient;
const room = cli.getRoom(this.props.roomId);
let userIsInRoom;
if (room) {
membersBadge = room.getJoinedMembers().length;
userIsInRoom = room.hasMembershipState(
MatrixClientPeg.get().credentials.userId, 'join',
this.context.matrixClient.credentials.userId, 'join',
);
}
@ -243,6 +249,11 @@ module.exports = React.createClass({
}
}
const isPhaseGroup = [
this.Phase.GroupMemberInfo,
this.Phase.GroupMemberList
].includes(this.state.phase);
let headerButtons = [];
if (this.props.roomId) {
headerButtons = [
@ -266,7 +277,7 @@ module.exports = React.createClass({
} else if (this.props.groupId) {
headerButtons = [
<HeaderButton key="_groupMembersButton" title={_t('Members')} iconSrc="img/icons-people.svg"
isHighlighted={this.state.phase === this.Phase.GroupMemberList}
isHighlighted={isPhaseGroup}
clickPhase={this.Phase.GroupMemberList}
analytics={['Right Panel', 'Group Member List Button', 'click']}
/>,
@ -317,31 +328,36 @@ module.exports = React.createClass({
panel = <div className="mx_RightPanel_blank"></div>;
}
if (this.props.groupId) {
inviteGroup = this.state.phase === this.Phase.GroupMemberList ? (
if (this.props.groupId &&
GroupStoreCache.getGroupStore(this.context.matrixClient, this.props.groupId).isUserPrivileged()
) {
inviteGroup = isPhaseGroup ? (
<AccessibleButton className="mx_RightPanel_invite" onClick={ this.onInviteButtonClick } >
<div className="mx_RightPanel_icon" >
<TintableSvg src="img/icon-invite-people.svg" width="35" height="35" />
</div>
<div className="mx_RightPanel_message">{ _t('Invite to this group') }</div>
<div className="mx_RightPanel_message">{ _t('Invite to this community') }</div>
</AccessibleButton>
) : (
<AccessibleButton className="mx_RightPanel_invite" onClick={ this.onInviteButtonClick } >
<div className="mx_RightPanel_icon" >
<TintableSvg src="img/icons-room-add.svg" width="35" height="35" />
</div>
<div className="mx_RightPanel_message">{ _t('Add room to this group') }</div>
<div className="mx_RightPanel_message">{ _t('Add rooms to this community') }</div>
</AccessibleButton>
);
}
let classes = "mx_RightPanel mx_fadable";
if (this.props.collapsed) {
classes += " collapsed";
}
let classes = classNames(
"mx_RightPanel", "mx_fadable",
{
"collapsed": this.props.collapsed,
"mx_fadable_faded": this.props.disabled,
}
);
return (
<aside className={classes} style={{ opacity: this.props.opacity }}>
<aside className={classes}>
<div className="mx_RightPanel_header">
<div className="mx_RightPanel_headerButtonGroup">
{headerButtons}

View File

@ -89,17 +89,17 @@ module.exports = React.createClass({
});
// dis.dispatch({
// action: 'ui_opacity',
// sideOpacity: 0.3,
// middleOpacity: 0.3,
// action: 'panel_disable',
// sideDisabled: true,
// middleDisabled: true,
// });
},
componentWillUnmount: function() {
// dis.dispatch({
// action: 'ui_opacity',
// sideOpacity: 1.0,
// middleOpacity: 1.0,
// action: 'panel_disable',
// sideDisabled: false,
// middleDisabled: false,
// });
if (this.filterTimeout) {
clearTimeout(this.filterTimeout);

View File

@ -57,7 +57,7 @@ class SendCustomEvent extends React.Component {
_buttons() {
return <div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>
{!this.state.message && <button onClick={this._send}>{ _t('Send') }</button>}
{ !this.state.message && <button onClick={this._send}>{ _t('Send') }</button> }
</div>;
}
@ -83,7 +83,7 @@ class SendCustomEvent extends React.Component {
}
_additionalFields() {
return <div/>;
return <div />;
}
_onChange(e) {
@ -94,15 +94,15 @@ class SendCustomEvent extends React.Component {
if (this.state.message) {
return <div>
<div className="mx_Dialog_content">
{this.state.message}
{ this.state.message }
</div>
{this._buttons()}
{ this._buttons() }
</div>;
}
return <div>
<div className="mx_Dialog_content">
{this._additionalFields()}
{ this._additionalFields() }
<div className="mx_TextInputDialog_label">
<label htmlFor="eventType"> { _t('Event Type') } </label>
</div>
@ -117,7 +117,7 @@ class SendCustomEvent extends React.Component {
<textarea id="evContent" onChange={this._onChange} value={this.state.input_evContent} className="mx_TextInputDialog_input" cols="63" rows="5" />
</div>
</div>
{this._buttons()}
{ this._buttons() }
</div>;
}
}
@ -223,7 +223,7 @@ class RoomStateExplorer extends React.Component {
if (this.state.event) {
return <div className="mx_ViewSource">
<div className="mx_Dialog_content">
<pre>{JSON.stringify(this.state.event.event, null, 2)}</pre>
<pre>{ JSON.stringify(this.state.event.event, null, 2) }</pre>
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>
@ -237,7 +237,7 @@ class RoomStateExplorer extends React.Component {
if (this.state.eventType === null) {
Object.keys(this.roomStateEvents).forEach((evType) => {
// Skip this entry if does not contain search query
if (this.state.query && !evType.includes(this.state.query)) return;
if (this.state.query && !evType.toLowerCase().includes(this.state.query.toLowerCase())) return;
const stateGroup = this.roomStateEvents[evType];
const stateKeys = Object.keys(stateGroup);
@ -258,7 +258,7 @@ class RoomStateExplorer extends React.Component {
const stateGroup = this.roomStateEvents[evType];
Object.keys(stateGroup).forEach((stateKey) => {
// Skip this entry if does not contain search query
if (this.state.query && !stateKey.includes(this.state.query)) return;
if (this.state.query && !stateKey.toLowerCase().includes(this.state.query.toLowerCase())) return;
const ev = stateGroup[stateKey];
rows.push(<button className="mx_DevTools_RoomStateExplorer_button" key={stateKey}
@ -271,7 +271,7 @@ class RoomStateExplorer extends React.Component {
return <div>
<div className="mx_Dialog_content">
<input onChange={this.onQuery} placeholder={_t('Filter results')} size="64" className="mx_TextInputDialog_input mx_DevTools_RoomStateExplorer_query" value={this.state.query} />
{rows}
{ rows }
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.onBack}>{ _t('Back') }</button>

View File

@ -1,5 +1,6 @@
/*
Copyright 2015, 2016 OpenMarket Ltd
Copyright 2017 New Vector Ltd
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@ -31,7 +32,13 @@ module.exports = React.createClass({
{ _t('Custom Server Options') }
</div>
<div className="mx_Dialog_content">
<span dangerouslySetInnerHTML={{__html: sanitizeHtml(_t('customServer_text'))}} />
<span dangerouslySetInnerHTML={{__html: sanitizeHtml(_t(
"You can use the custom server options to sign into other Matrix "+
"servers by specifying a different Home server URL.<br/>This allows "+
"you to use Riot with an existing Matrix account on a different home "+
"server.<br/><br/>You can also set a custom identity server but you won't "+
"be able to invite users by email address, or be invited by email address yourself.",
))}} />
</div>
<div className="mx_Dialog_buttons">
<button onClick={this.props.onFinished} autoFocus={true}>

View File

@ -59,7 +59,6 @@
"Permalink": "Пастаянная спасылка",
"powered by Matrix": "працуе на Matrix",
"Quote": "Цытата",
"Redact": "Адрэдагаваць",
"Reject": "Адхіліць",
"Remove %(name)s from the directory?": "Выдаліць %(name)s з каталога?",
"Remove": "Выдалiць",

View File

@ -201,7 +201,6 @@
"Filter results": "Filtrovat výsledky",
"You must specify an event type!": "Musíte určit typ události!",
"Event sent!": "Událost odeslána!",
"Invite to this group": "Pozvat do této místnosti",
"Failed to send custom event.": "Nepodařilo se odeslat vlastní událost.",
"Send Custom Event": "Odeslat vlastní událost"
}

View File

@ -2,16 +2,13 @@
"Add an email address above to configure email notifications": "Tilføj en emailadresse ovenfor for at konfigurere e-mail-underretninger",
"All notifications are currently disabled for all targets.": "Alle meddelelser er for øjeblikket deaktiveret for alle mål.",
"An error occurred whilst saving your email notification preferences.": "Der opstod en fejl under opbevaring af dine e-mail-underretningsindstillinger.",
"and remove": "Og fjern",
"Can't update user notification settings": "Kan ikke opdatere brugermeddelelsesindstillinger",
"Couldn't find a matching Matrix room": "Kunne ikke finde et matchende Matrix-rum",
"Custom Server Options": "Brugerdefinerede serverindstillinger",
"delete the alias.": "Slet aliaset.",
"Delete the room alias": "Slet room alias",
"Direct Chat": "Personligt Chat",
"Directory": "Rum fortegnelse",
"Dismiss": "Afskedige",
"Drop here to": "Drop her til",
"Enable audible notifications in web client": "Aktivér hørbare underretninger i webklienten",
"Enable desktop notifications": "Aktivér desktop meddelelser",
"Enable email notifications": "Aktivér e-mail-underretninger",
@ -21,19 +18,16 @@
"Error": "Fejl",
"Error saving email notification preferences": "Fejl ved at gemme e-mail-underretningsindstillinger",
"#example": "#eksempel",
"Failed to add tag ": "Kunne ikke tilføje tag ",
"Failed to change settings": "Kunne ikke ændre indstillinger",
"Failed to update keywords": "Kunne ikke opdatere søgeord",
"Failed to get protocol list from Home Server": "Kunne ikke få protokolliste fra Home Server",
"Failed to get public room list": "Kunne ikke få offentlig rumliste",
"Failed to remove tag ": "Kunne ikke fjerne tag ",
"Failed to set Direct Message status of room": "Kunne ikke indstille direkte beskedstatus for rumet",
"Favourite": "Favorit",
"Fetching third party location failed": "Hentning af tredjeparts placering mislykkedes",
"Files": "Filer",
"Filter room names": "Filtrer rumnavne",
"Forget": "Glem",
"from the directory": "fra fortegnelsen",
"Guests can join": "Gæster kan deltage",
"Invite to this room": "Inviter til dette rum",
"Keywords": "Søgeord",
@ -53,7 +47,6 @@
"powered by Matrix": "Drevet af Matrix",
"Reject": "Afvise",
"Remove": "Fjerne",
"remove": "fjerner",
"Remove from Directory": "Fjern fra fortegnelse",
"Riot does not know how to join a room on this network": "Riot ved ikke, hvordan man kan deltage i et rum på dette netværk",
"Room not found": "Rumet ikke fundet",

View File

@ -10,23 +10,19 @@
"Failed to get protocol list from Home Server": "Fehler beim Abrufen der Protokoll-Liste vom Home-Server",
"The Home Server may be too old to support third party networks": "Der Home-Server ist eventuell zu alt, um Drittanbieter-Netzwerke zu unterstützen",
"Directory": "Raum-Verzeichnis",
"#example:": "#beispiel:",
"Search for a room": "Nach einem Raum suchen",
"No rooms to show": "Keine Räume gefunden",
"World readable": "Alle können mitlesen",
"No rooms to show": "Keine Räume anzuzeigen",
"World readable": "Lesbar für die Welt",
"Guests can join": "Gäste können beitreten",
"You are not receiving desktop notifications": "Du erhältst keine Desktop-Benachrichtigungen",
"Enable them now": "Aktiviere diese jetzt",
"Add an email address above to configure email notifications": "Füge oben eine E-Mail-Adresse hinzu, um die E-Mail-Benachrichtigungseinstellungen zu konfigurieren",
"All notifications are currently disabled for all targets.": "Im Moment sind alle Benachrichtigungen für alle Ziele deaktiviert.",
"An error occurred whilst saving your email notification preferences.": "Beim Speichern deiner E-Mail-Benachrichtigungseinstellungen ist ein Fehler aufgetreten.",
"and remove": "und entfernen",
"Can't update user notification settings": "Benachrichtigungs-Einstellungen des Benutzers konnten nicht aktualisiert werden",
"Couldn't find a matching Matrix room": "Konnte keinen entsprechenden Matrix-Raum finden",
"delete the alias.": "Lösche den Alias.",
"Delete the room alias": "Lösche den Raum Alias",
"Direct Chat": "Direkt-Chat",
"Drop here to": "Hier ablegen",
"Enable audible notifications in web client": "Audio-Benachrichtigungen im Web-Client aktivieren",
"Enable desktop notifications": "Desktop-Benachrichtigungen aktivieren",
"Enable email notifications": "E-Mail-Benachrichtigungen aktivieren",
@ -35,16 +31,13 @@
"Error": "Fehler",
"Error saving email notification preferences": "Fehler beim Speichern der E-Mail-Benachrichtigungseinstellungen",
"#example": "#Beispiel",
"Failed to add tag ": "Konnte Tag nicht hinzufügen ",
"Failed to change settings": "Einstellungen konnten nicht geändert werden",
"Failed to update keywords": "Schlüsselwörter konnten nicht aktualisiert werden",
"Failed to get public room list": "Die Liste der öffentlichen Räume konnte nicht geladen werden",
"Failed to remove tag ": "Konnte Tag nicht entfernen ",
"Failed to set Direct Message status of room": "Konnte den direkten Benachrichtigungsstatus nicht setzen",
"Favourite": "Favorit",
"Fetching third party location failed": "Das Abrufen des Drittanbieterstandorts ist fehlgeschlagen",
"Forget": "Entfernen",
"from the directory": "aus dem Verzeichnis",
"Keywords": "Schlüsselwörter",
"Leave": "Verlassen",
"Low Priority": "Niedrige Priorität",
@ -55,7 +48,6 @@
"Operation failed": "Aktion fehlgeschlagen",
"Reject": "Ablehnen",
"Remove": "Entfernen",
"remove": "Entferner",
"Remove from Directory": "Aus dem Raum-Verzeichnis entfernen",
"Riot does not know how to join a room on this network": "Riot weiß nicht, wie es einem Raum auf diesem Netzwerk beitreten soll",
"Room not found": "Raum nicht gefunden",
@ -83,7 +75,6 @@
"Mute": "Stummschalten",
"Permalink": "Permanenter Link",
"Quote": "Zitieren",
"Redact": "Löschen",
"Remove %(name)s from the directory?": "Soll der Raum %(name)s aus dem Verzeichnis entfernt werden?",
"remove %(name)s from the directory.": "entferne %(name)s aus dem Verzeichnis.",
"Resend": "Erneut senden",
@ -161,7 +152,6 @@
"Search the room directory": "Raum-Verzeichnis durchsuchen",
"Chat with Riot Bot": "Mit dem Riot-Bot chatten",
"Get started with some tips from Riot Bot!": "Lass Dir vom Riot-Bot eine Einführung geben!",
"General discussion about Matrix": "Allgemeine Diskussion über Matrix",
"Discussion of all things Matrix!": "\"Diskussion über alle Dinge\"-Matrix!",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop-Chat",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot-iOS &amp; \"matrix-ios-sdk\"-Chat",
@ -214,8 +204,9 @@
"Event Type": "Event-Typ",
"Event Content": "Event-Inhalt",
"State Key": "Status-Schlüssel",
"Invite to this group": "In diese Gruppe einladen",
"Filter results": "Ergebnisse filtern",
"You must specify an event type!": "Du musst einen Event-Typ spezifizieren!",
"Add room to this group": "Raum zu dieser Gruppe hinzufügen"
"Show message in desktop notification": "Nachricht in der Desktop-Benachrichtigung anzeigen",
"Pin Message": "Nachricht anheften",
"Unpin Message": "Nachricht losheften"
}

View File

@ -62,7 +62,6 @@
"Notify me for anything else": "Ειδοποίηση για οτιδήποτε άλλο",
"Operation failed": "Η λειτουργία απέτυχε",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Παρακαλούμε περιγράψτε το σφάλμα. Τι κάνατε; Τι περιμένατε να συμβεί; Τι έγινε τελικά;",
"Redact": "Ανάκληση",
"Reject": "Απόρριψη",
"Remove": "Αφαίρεση",
"Remove from Directory": "Αφαίρεση από το ευρετήριο",

View File

@ -1,217 +1,217 @@
{
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.",
"A new version of Riot is available.": "A new version of Riot is available.",
"Add an email address above to configure email notifications": "Add an email address above to configure email notifications",
"Advanced notification settings": "Advanced notification settings",
"All messages": "All messages",
"All messages (loud)": "All messages (loud)",
"All Rooms": "All Rooms",
"All notifications are currently disabled for all targets.": "All notifications are currently disabled for all targets.",
"An error occurred whilst saving your email notification preferences.": "An error occurred whilst saving your email notification preferences.",
"Back": "Back",
"Bug report sent": "Bug report sent",
"Call invitation": "Call invitation",
"Cancel": "Cancel",
"Cancel Sending": "Cancel Sending",
"Can't update user notification settings": "Can't update user notification settings",
"Changelog": "Changelog",
"Close": "Close",
"Collapse panel": "Collapse panel",
"Collecting app version information": "Collecting app version information",
"Collecting logs": "Collecting logs",
"Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room",
"Custom Server Options": "Custom Server Options",
"customServer_text": "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.",
"delete the alias.": "delete the alias.",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Delete the room alias %(alias)s and remove %(name)s from the directory?",
"Describe your problem here.": "Describe your problem here.",
"Developer Tools": "Developer Tools",
"Direct Chat": "Direct Chat",
"Directory": "Directory",
"Dismiss": "Dismiss",
"Download this file": "Download this file",
"Enable audible notifications in web client": "Enable audible notifications in web client",
"Enable desktop notifications": "Enable desktop notifications",
"Show message in desktop notification": "Show message in desktop notification",
"Enable email notifications": "Enable email notifications",
"Enable notifications for this account": "Enable notifications for this account",
"Enable them now": "Enable them now",
"Enter keywords separated by a comma:": "Enter keywords separated by a comma:",
"Error": "Error",
"Error saving email notification preferences": "Error saving email notification preferences",
"#example": "#example",
"Expand panel": "Expand panel",
"Failed to add tag %(tagName)s to room": "Failed to add tag %(tagName)s to room",
"Failed to change settings": "Failed to change settings",
"Failed to forget room %(errCode)s": "Failed to forget room %(errCode)s",
"Failed to update keywords": "Failed to update keywords",
"Failed to get protocol list from Home Server": "Failed to get protocol list from Home Server",
"Failed to get public room list": "Failed to get public room list",
"Failed to remove tag %(tagName)s from room": "Failed to remove tag %(tagName)s from room",
"Failed to send custom event.": "Failed to send custom event.",
"Failed to send report: ": "Failed to send report: ",
"Failed to set direct chat tag": "Failed to set direct chat tag",
"Failed to set Direct Message status of room": "Failed to set Direct Message status of room",
"Favourite": "Favourite",
"Fetching third party location failed": "Fetching third party location failed",
"Files": "Files",
"Filter results": "Filter results",
"Filter room names": "Filter room names",
"Forget": "Forget",
"Forward Message": "Forward Message",
"Guests can join": "Guests can join",
"Hide panel": "Hide panel",
"(HTTP status %(httpStatus)s)": "(HTTP status %(httpStatus)s)",
"I understand the risks and wish to continue": "I understand the risks and wish to continue",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:",
"Invite to this room": "Invite to this room",
"Keywords": "Keywords",
"Leave": "Leave",
"Login": "Login",
"Loading bug report module": "Loading bug report module",
"Low Priority": "Low Priority",
"Members": "Members",
"Mentions only": "Mentions only",
"Messages containing my display name": "Messages containing my display name",
"Messages containing <span>keywords</span>": "Messages containing <span>keywords</span>",
"Messages containing my user name": "Messages containing my user name",
"Messages in group chats": "Messages in group chats",
"Messages in one-to-one chats": "Messages in one-to-one chats",
"Messages sent by bot": "Messages sent by bot",
"more": "more",
"Mute": "Mute",
"No rooms to show": "No rooms to show",
"Noisy": "Noisy",
"Notification targets": "Notification targets",
"Notifications": "Notifications",
"Notifications on the following keywords follow rules which cant be displayed here:": "Notifications on the following keywords follow rules which cant be displayed here:",
"Notify for all other messages/rooms": "Notify for all other messages/rooms",
"Notify me for anything else": "Notify me for anything else",
"Off": "Off",
"On": "On",
"Operation failed": "Operation failed",
"Permalink": "Permalink",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Please describe the bug. What did you do? What did you expect to happen? What actually happened?",
"Please describe the bug and/or send logs.": "Please describe the bug and/or send logs.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.",
"powered by Matrix": "powered by Matrix",
"Quote": "Quote",
"Reject": "Reject",
"Remove %(name)s from the directory?": "Remove %(name)s from the directory?",
"Remove": "Remove",
"remove %(name)s from the directory.": "remove %(name)s from the directory.",
"Remove from Directory": "Remove from Directory",
"Report a bug": "Report a bug",
"Resend": "Resend",
"Riot Desktop on %(platformName)s": "Riot Desktop on %(platformName)s",
"Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network",
"Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.",
"Room not found": "Room not found",
"Search": "Search",
"Search…": "Search…",
"Search for a room": "Search for a room",
"Send": "Send",
"Send logs": "Send logs",
"Send Custom Event": "Send Custom Event",
"Send Custom State Event": "Send Custom State Event",
"Explore Room State": "Explore Room State",
"Source URL": "Source URL",
"Sorry, your browser is <b>not</b> able to run Riot.": "Sorry, your browser is <b>not</b> able to run Riot.",
"The Home Server may be too old to support third party networks": "The Home Server may be too old to support third party networks",
"There are advanced notifications which are not shown here": "There are advanced notifications which are not shown here",
"The server may be unavailable or overloaded": "The server may be unavailable or overloaded",
"This Room": "This Room",
"Unable to fetch notification target list": "Unable to fetch notification target list",
"Unable to join network": "Unable to join network",
"Unable to look up room ID from server": "Unable to look up room ID from server",
"Unavailable": "Unavailable",
"Unhide Preview": "Unhide Preview",
"Unknown device": "Unknown device",
"unknown error code": "unknown error code",
"Unnamed room": "Unnamed room",
"Update": "Update",
"Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s",
"Uploading report": "Uploading report",
"View Decrypted Source": "View Decrypted Source",
"View Source": "View Source",
"What's New": "What's New",
"What's new?": "What's new?",
"Waiting for response from server": "Waiting for response from server",
"When I'm invited to a room": "When I'm invited to a room",
"World readable": "World readable",
"You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)",
"You cannot delete this message. (%(code)s)": "You cannot delete this message. (%(code)s)",
"You are not receiving desktop notifications": "You are not receiving desktop notifications",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply",
"You must specify an event type!": "You must specify an event type!",
"Thank you!": "Thank you!",
"Sunday": "Sunday",
"Monday": "Monday",
"Tuesday": "Tuesday",
"Wednesday": "Wednesday",
"Thursday": "Thursday",
"Friday": "Friday",
"Saturday": "Saturday",
"Today": "Today",
"Yesterday": "Yesterday",
"OK": "OK",
"Warning": "Warning",
"Checking for an update...": "Checking for an update...",
"Error encountered (%(errorDetail)s).": "Error encountered (%(errorDetail)s).",
"Event sent!": "Event sent!",
"Event Type": "Event Type",
"Event Content": "Event Content",
"State Key": "State Key",
"No update available.": "No update available.",
"Downloading update...": "Downloading update...",
"You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!",
"Welcome to Riot.im": "Welcome to Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Decentralised, encrypted chat &amp; collaboration powered by [matrix]",
"Search the room directory": "Search the room directory",
"Chat with Riot Bot": "Chat with Riot Bot",
"Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!",
"General discussion about Matrix and Riot": "General discussion about Matrix and Riot",
"Discussion of all things Matrix!": "Discussion of all things Matrix!",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop chat",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk chat",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk chat",
"Matrix technical discussions": "Matrix technical discussions",
"Running Matrix services": "Running Matrix services",
"Community-run support for Synapse": "Community-run support for Synapse",
"Admin support for Dendrite": "Admin support for Dendrite",
"Announcements about Synapse releases": "Announcements about Synapse releases",
"Support for those using and running matrix-appservice-irc": "Support for those using and running matrix-appservice-irc",
"Building services on Matrix": "Building services on Matrix",
"Support for those using the Matrix spec": "Support for those using the Matrix spec",
"Design and implementation of E2E in Matrix": "Design and implementation of E2E in Matrix",
"Implementing VR services with Matrix": "Implementing VR services with Matrix",
"Implementing VoIP services with Matrix": "Implementing VoIP services with Matrix",
"Discussion of the Identity Service API": "Discussion of the Identity Service API",
"Support for those using, running and writing other bridges": "Support for those using, running and writing other bridges",
"Contributing code to Matrix and Riot": "Contributing code to Matrix and Riot",
"Dev chat for the Riot/Web dev team": "Dev chat for the Riot/Web dev team",
"Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team",
"Co-ordination for Riot/Web translators": "Co-ordination for Riot/Web translators",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!",
"Failed to change password. Is your password correct?": "Failed to change password. Is your password correct?",
"You have successfully set a password!": "You have successfully set a password!",
"You can now return to your account after signing out, and sign in on other devices.": "You can now return to your account after signing out, and sign in on other devices.",
"Continue": "Continue",
"Pin Message": "Pin Message",
"Unpin Message": "Unpin Message",
"Jump to message": "Jump to message",
"No pinned messages.": "No pinned messages.",
"Loading...": "Loading...",
"Please set a password!": "Please set a password!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "This will allow you to return to your account after signing out, and sign in on other devices.",
"You have successfully set a password and an email address!": "You have successfully set a password and an email address!",
"Remember, you can always set an email address in user settings if you change your mind.": "Remember, you can always set an email address in user settings if you change your mind.",
"To return to your account in future you need to <u>set a password</u>": "To return to your account in future you need to <u>set a password</u>",
"Set Password": "Set Password",
"Couldn't load home page": "Couldn't load home page",
"Invite to this group": "Invite to this group",
"Add room to this group": "Add room to this group"
"Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?",
"Collecting app version information": "Collecting app version information",
"Collecting logs": "Collecting logs",
"Uploading report": "Uploading report",
"Waiting for response from server": "Waiting for response from server",
"Riot Desktop on %(platformName)s": "Riot Desktop on %(platformName)s",
"Unknown device": "Unknown device",
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s",
"You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.",
"Messages containing my display name": "Messages containing my display name",
"Messages containing my user name": "Messages containing my user name",
"Messages in one-to-one chats": "Messages in one-to-one chats",
"Messages in group chats": "Messages in group chats",
"When I'm invited to a room": "When I'm invited to a room",
"Call invitation": "Call invitation",
"Messages sent by bot": "Messages sent by bot",
"Error saving email notification preferences": "Error saving email notification preferences",
"An error occurred whilst saving your email notification preferences.": "An error occurred whilst saving your email notification preferences.",
"Keywords": "Keywords",
"Enter keywords separated by a comma:": "Enter keywords separated by a comma:",
"OK": "OK",
"Failed to change settings": "Failed to change settings",
"Operation failed": "Operation failed",
"Can't update user notification settings": "Can't update user notification settings",
"Failed to update keywords": "Failed to update keywords",
"Messages containing <span>keywords</span>": "Messages containing <span>keywords</span>",
"Notify for all other messages/rooms": "Notify for all other messages/rooms",
"Notify me for anything else": "Notify me for anything else",
"Enable notifications for this account": "Enable notifications for this account",
"All notifications are currently disabled for all targets.": "All notifications are currently disabled for all targets.",
"Add an email address above to configure email notifications": "Add an email address above to configure email notifications",
"Enable email notifications": "Enable email notifications",
"Notifications on the following keywords follow rules which cant be displayed here:": "Notifications on the following keywords follow rules which cant be displayed here:",
"Unable to fetch notification target list": "Unable to fetch notification target list",
"Notification targets": "Notification targets",
"Advanced notification settings": "Advanced notification settings",
"There are advanced notifications which are not shown here": "There are advanced notifications which are not shown here",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply",
"Enable desktop notifications": "Enable desktop notifications",
"Show message in desktop notification": "Show message in desktop notification",
"Enable audible notifications in web client": "Enable audible notifications in web client",
"Off": "Off",
"On": "On",
"Noisy": "Noisy",
"Failed to set direct chat tag": "Failed to set direct chat tag",
"Failed to remove tag %(tagName)s from room": "Failed to remove tag %(tagName)s from room",
"Failed to add tag %(tagName)s to room": "Failed to add tag %(tagName)s to room",
"Search…": "Search…",
"Search": "Search",
"This Room": "This Room",
"All Rooms": "All Rooms",
"Sunday": "Sunday",
"Monday": "Monday",
"Tuesday": "Tuesday",
"Wednesday": "Wednesday",
"Thursday": "Thursday",
"Friday": "Friday",
"Saturday": "Saturday",
"Today": "Today",
"Yesterday": "Yesterday",
"Custom Server Options": "Custom Server Options",
"You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.": "You can use the custom server options to sign into other Matrix servers by specifying a different Home server URL.<br/>This allows you to use Riot with an existing Matrix account on a different home server.<br/><br/>You can also set a custom identity server but you won't be able to invite users by email address, or be invited by email address yourself.",
"Dismiss": "Dismiss",
"powered by Matrix": "powered by Matrix",
"You are not receiving desktop notifications": "You are not receiving desktop notifications",
"Enable them now": "Enable them now",
"What's New": "What's New",
"Update": "Update",
"What's new?": "What's new?",
"A new version of Riot is available.": "A new version of Riot is available.",
"To return to your account in future you need to <u>set a password</u>": "To return to your account in future you need to <u>set a password</u>",
"Set Password": "Set Password",
"Error encountered (%(errorDetail)s).": "Error encountered (%(errorDetail)s).",
"Checking for an update...": "Checking for an update...",
"No update available.": "No update available.",
"Downloading update...": "Downloading update...",
"Warning": "Warning",
"Error": "Error",
"You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)",
"Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s",
"Remove": "Remove",
"Close": "Close",
"Download this file": "Download this file",
"Please describe the bug and/or send logs.": "Please describe the bug and/or send logs.",
"Loading bug report module": "Loading bug report module",
"Bug report sent": "Bug report sent",
"Thank you!": "Thank you!",
"Failed to send report: ": "Failed to send report: ",
"Cancel": "Cancel",
"Report a bug": "Report a bug",
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Please describe the bug. What did you do? What did you expect to happen? What actually happened?",
"Describe your problem here.": "Describe your problem here.",
"In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:": "In order to diagnose problems, logs from this client will be sent with this bug report. If you would prefer to only send the text above, please untick:",
"Send logs": "Send logs",
"Send": "Send",
"Unavailable": "Unavailable",
"Changelog": "Changelog",
"Back": "Back",
"You must specify an event type!": "You must specify an event type!",
"Event sent!": "Event sent!",
"Failed to send custom event.": "Failed to send custom event.",
"Event Type": "Event Type",
"Event Content": "Event Content",
"State Key": "State Key",
"Edit": "Edit",
"Filter results": "Filter results",
"Send Custom Event": "Send Custom Event",
"Send Custom State Event": "Send Custom State Event",
"Explore Room State": "Explore Room State",
"Developer Tools": "Developer Tools",
"You have successfully set a password!": "You have successfully set a password!",
"You have successfully set a password and an email address!": "You have successfully set a password and an email address!",
"You can now return to your account after signing out, and sign in on other devices.": "You can now return to your account after signing out, and sign in on other devices.",
"Remember, you can always set an email address in user settings if you change your mind.": "Remember, you can always set an email address in user settings if you change your mind.",
"Continue": "Continue",
"Failed to change password. Is your password correct?": "Failed to change password. Is your password correct?",
"(HTTP status %(httpStatus)s)": "(HTTP status %(httpStatus)s)",
"Please set a password!": "Please set a password!",
"This will allow you to return to your account after signing out, and sign in on other devices.": "This will allow you to return to your account after signing out, and sign in on other devices.",
"You cannot delete this message. (%(code)s)": "You cannot delete this message. (%(code)s)",
"Resend": "Resend",
"Cancel Sending": "Cancel Sending",
"Forward Message": "Forward Message",
"Unpin Message": "Unpin Message",
"Pin Message": "Pin Message",
"View Source": "View Source",
"View Decrypted Source": "View Decrypted Source",
"Unhide Preview": "Unhide Preview",
"Permalink": "Permalink",
"Quote": "Quote",
"Source URL": "Source URL",
"Failed to set Direct Message status of room": "Failed to set Direct Message status of room",
"unknown error code": "unknown error code",
"Failed to forget room %(errCode)s": "Failed to forget room %(errCode)s",
"All messages (loud)": "All messages (loud)",
"All messages": "All messages",
"Mentions only": "Mentions only",
"Mute": "Mute",
"Leave": "Leave",
"Forget": "Forget",
"Reject": "Reject",
"Favourite": "Favourite",
"Low Priority": "Low Priority",
"Direct Chat": "Direct Chat",
"Sorry, your browser is <b>not</b> able to run Riot.": "Sorry, your browser is <b>not</b> able to run Riot.",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot uses many advanced browser features, some of which are not available or experimental in your current browser.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!",
"I understand the risks and wish to continue": "I understand the risks and wish to continue",
"Couldn't load home page": "Couldn't load home page",
"Login": "Login",
"Register": "Register",
"Invite to this room": "Invite to this room",
"Members": "Members",
"Files": "Files",
"Notifications": "Notifications",
"Rooms": "Rooms",
"Hide panel": "Hide panel",
"Invite to this community": "Invite to this community",
"Add rooms to this community": "Add rooms to this community",
"Failed to get protocol list from Home Server": "Failed to get protocol list from Home Server",
"The Home Server may be too old to support third party networks": "The Home Server may be too old to support third party networks",
"Failed to get public room list": "Failed to get public room list",
"The server may be unavailable or overloaded": "The server may be unavailable or overloaded",
"Unnamed room": "Unnamed room",
"Delete the room alias %(alias)s and remove %(name)s from the directory?": "Delete the room alias %(alias)s and remove %(name)s from the directory?",
"Remove %(name)s from the directory?": "Remove %(name)s from the directory?",
"Remove from Directory": "Remove from Directory",
"remove %(name)s from the directory.": "remove %(name)s from the directory.",
"delete the alias.": "delete the alias.",
"Unable to join network": "Unable to join network",
"Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network",
"Room not found": "Room not found",
"Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room",
"Fetching third party location failed": "Fetching third party location failed",
"Unable to look up room ID from server": "Unable to look up room ID from server",
"World readable": "World readable",
"Guests can join": "Guests can join",
"Directory": "Directory",
"No rooms to show": "No rooms to show",
"Search for a room": "Search for a room",
"#example": "#example",
"more": "more",
"Expand panel": "Expand panel",
"Collapse panel": "Collapse panel",
"Filter room names": "Filter room names",
"Welcome to Riot.im": "Welcome to Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Decentralised, encrypted chat &amp; collaboration powered by [matrix]",
"Search the room directory": "Search the room directory",
"Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!": "Lots of rooms already exist in Matrix, linked to existing networks (Slack, IRC, Gitter etc) or independent. Check out the directory!",
"Chat with Riot Bot": "Chat with Riot Bot",
"Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!",
"General discussion about Matrix and Riot": "General discussion about Matrix and Riot",
"Discussion of all things Matrix!": "Discussion of all things Matrix!",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop chat",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk chat",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk chat",
"Matrix technical discussions": "Matrix technical discussions",
"Running Matrix services": "Running Matrix services",
"Community-run support for Synapse": "Community-run support for Synapse",
"Admin support for Dendrite": "Admin support for Dendrite",
"Announcements about Synapse releases": "Announcements about Synapse releases",
"Support for those using and running matrix-appservice-irc": "Support for those using and running matrix-appservice-irc",
"Building services on Matrix": "Building services on Matrix",
"Support for those using the Matrix spec": "Support for those using the Matrix spec",
"Design and implementation of E2E in Matrix": "Design and implementation of E2E in Matrix",
"Implementing VR services with Matrix": "Implementing VR services with Matrix",
"Implementing VoIP services with Matrix": "Implementing VoIP services with Matrix",
"Discussion of the Identity Service API": "Discussion of the Identity Service API",
"Support for those using, running and writing other bridges": "Support for those using, running and writing other bridges",
"Contributing code to Matrix and Riot": "Contributing code to Matrix and Riot",
"Dev chat for the Riot/Web dev team": "Dev chat for the Riot/Web dev team",
"Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team",
"Co-ordination for Riot/Web translators": "Co-ordination for Riot/Web translators"
}

View File

@ -187,9 +187,6 @@
"Warning": "Warning",
"Pin Message": "Pin Message",
"Unpin Message": "Unpin Message",
"Jump to message": "Jump to message",
"No pinned messages.": "No pinned messages.",
"Loading...": "Loading...",
"Checking for an update...": "Checking for an update...",
"Error encountered (%(errorDetail)s).": "Error encountered (%(errorDetail)s).",
"No update available.": "No update available.",

View File

@ -94,7 +94,6 @@
"Operation failed": "La operacio malsukcesis",
"Permalink": "Konstanta ligilo",
"Please describe the bug and/or send logs.": "Bonvolu priskribi la cimon kaj/aŭ sendi protokolojn.",
"Redact": "Redakti",
"Remove %(name)s from the directory?": "Forigi %(name)s el la dosierujo?",
"Remove": "Forigi",
"remove %(name)s from the directory.": "forigi %(name)s el la dosierujo.",

View File

@ -63,7 +63,6 @@
"Operation failed": "Falló la operación",
"Permalink": "Enlace permanente",
"Quote": "Citar",
"Redact": "Redactar",
"Reject": "Rechazar",
"Remove %(name)s from the directory?": "¿Retirar %(name)s del directorio?",
"Remove": "Eliminar",

View File

@ -205,6 +205,5 @@
"Event sent!": "Tapahtuma lähetetty!",
"Event Type": "Tapahtuman tyyppi",
"Event Content": "Tapahtuman sisältö",
"State Key": "Tila-avain",
"Invite to this group": "Kutsu tähän ryhmään"
"State Key": "Tila-avain"
}

View File

@ -36,7 +36,6 @@
"Operation failed": "L'opération a échoué",
"powered by Matrix": "propulsé par Matrix",
"Quote": "Citer",
"Redact": "Rédiger",
"Reject": "Rejeter",
"Remove %(name)s from the directory?": "Supprimer %(name)s du répertoire ?",
"Remove": "Supprimer",
@ -78,7 +77,6 @@
"Noisy": "Bruyant",
"Notification targets": "Appareils recevant les notifications",
"Notifications": "Notifications",
"Notifications on the following keywords follow rules which cant be displayed here": "Les mots-clés suivants suivent des règles de notification qui ne peuvent être affichées ici",
"Notify for all other messages/rooms": "Me notifier pour tous les autres messages/salons",
"Notify me for anything else": "Me notifier pour tout le reste",
"Off": "Désactivé",
@ -202,7 +200,6 @@
"You must specify an event type!": "Vous devez spécifier un type d'événement !",
"Event sent!": "Événement envoyé !",
"Event Type": "Type d'événement",
"Invite to this group": "Inviter à ce groupe",
"Event Content": "Contenu de l'événement",
"Failed to send custom event.": "Échec de l'envoi de l'événement personnalisé.",
"Send Custom Event": "Envoyer l'événement personnalisé",

View File

@ -20,7 +20,6 @@
"Collapse panel": "Agochar panel",
"Collecting app version information": "Obtendo información sobre a versión da app",
"Collecting logs": "Obtendo rexistros",
"Create new room": "Crear unha nova sala",
"Couldn't find a matching Matrix room": "Non coincide con ningunha sala de Matrix",
"Custom Server Options": "Axustes do servidor personalizado",
"customServer_text": "Pode utilizar os axustes do servidor personalizado para conectarse a outros servidores Matrix indicando un URL de Inicio do servidor.<br/>Esto permítelle utilizar Riot con unha conta existente de Matrix nun servidor diferente.<br/><br/>Tamén pode establecer un servidor personalizado de identidade mais non poderá invitar a usuarias a través de enderezos de correo ou ser vostede invitada do mesmo xeito.",
@ -32,7 +31,6 @@
"Directory": "Directorio",
"Dismiss": "Desbotar",
"Download this file": "Descargue este ficheiro",
"Drop here %(toAction)s": "Deixe aquí %(toAction)s",
"Enable audible notifications in web client": "Habilitar notificacións audibles no cliente web",
"Enable desktop notifications": "Habilitar notificacións de escritorio",
"Enable email notifications": "Habilitar notificacións de correo",
@ -43,14 +41,12 @@
"Error saving email notification preferences": "Fallo ao cargar os axustes de notificacións",
"#example": "#exemplo",
"Expand panel": "Expandir panel",
"Failed to": "Fallou ao",
"Failed to add tag %(tagName)s to room": "Fallou ao engadir a etiqueta %(tagName)s a sala",
"Failed to change settings": "Fallo ao cambiar os axustes",
"Failed to forget room %(errCode)s": "Fallou ao esquecer a sala %(errCode)s",
"Failed to update keywords": "Fallo ao actualizar as palabras chave",
"Failed to get protocol list from Home Server": "Fallo ao obter a lista de protocolo desde o servidor",
"Failed to get public room list": "Fallo ao obter a lista de salas públicas",
"Failed to join the room": "Fallo ao unirse a sala",
"Failed to remove tag %(tagName)s from room": "Fallo ao eliminar etiqueta %(tagName)s da sala",
"Failed to send custom event.": "Fallo ao enviar evento personalizado.",
"Failed to send report: ": "Fallo no envío do informe: ",
@ -63,9 +59,7 @@
"Filter room names": "Filtrar nomes de sala",
"Forget": "Esquecer",
"Forward Message": "Reenviar mensaxe",
" from room": " da sala",
"Guests can join": "Convidadas pódense unir",
"Guest users can't invite users. Please register to invite.": "Usuarias convidadas non poden convidar usuarias. Por favor rexístrese para convidar.",
"Hide panel": "Agochar panel",
"(HTTP status %(httpStatus)s)": "(Estado HTTP %(httpStatus)s)",
"I understand the risks and wish to continue": "Entendos os riscos e desexo continuar",
@ -100,7 +94,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "Por favor describa a incidencia. Que estaba a facer? Que tiña que pasar? Que aconteceu en realidade?",
"Please describe the bug and/or send logs.": "Por favor describa a incidencia e/ou envíe o informe.",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Por favor instale <a href=\"https://www.google.com/chrome\">Chrome</a> ou <a href=\"https://getfirefox.com\">Firefox</a> para ter a mellor experiencia de uso.",
"Please Register": "Por favor rexístrese",
"powered by Matrix": "funcionando grazas a Matrix",
"Quote": "Cita",
"Reject": "Rexeitar",
@ -114,7 +107,6 @@
"Riot does not know how to join a room on this network": "Riot non sabe cómo conectar con unha sala en esta rede",
"Riot is not supported on mobile web. Install the app?": "Riot no se pode executar na web móbil. Instalar a app?",
"Riot uses many advanced browser features, some of which are not available or experimental in your current browser.": "Riot utiliza características avanzadas do navegador, algunhas das cales non están dispoñibles ou son experimentales no seu navegador actual.",
"Room directory": "Directorio de salas",
"Room not found": "Non se atopou a sala",
"Search": "Buscar",
"Search…": "Buscar…",
@ -124,16 +116,12 @@
"Send Custom Event": "Enviar evento personalizado",
"Send Custom State Event": "Enviar evento de estado personalizado",
"Explore Room State": "Explorar estado da sala",
"Settings": "Axustes",
"Source URL": "URL fonte",
"Sorry, your browser is <b>not</b> able to run Riot.": "Desculpe, o seu navegador <b>non pode</b> executar Riot.",
"Start chat": "Iniciar chat",
"The Home Server may be too old to support third party networks": "O servidor de inicio podería ser demasiando antigo como para aceptar redes de terceiros",
"There are advanced notifications which are not shown here": "Existen notificacións avanzadas que non se mostran aquí",
"The server may be unavailable or overloaded": "O servidor podería non estar dispoñible ou sobrecargado",
"This Room": "Esta sala",
"This room is inaccessible to guests. You may be able to join if you register.": "Esta sala non é accesible para convidados. Podería entrar si se rexistra.",
" to room": " a sala",
"Unable to fetch notification target list": "Non se puido procesar a lista de obxetivo de notificacións",
"Unable to join network": "Non se puido conectar a rede",
"Unable to look up room ID from server": "Non se puido atopar o ID da sala do servidor",
@ -155,7 +143,6 @@
"You cannot delete this image. (%(code)s)": "Non pode eliminar esta imaxe. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Non pode eliminar esta mensaxe. (%(code)s)",
"You are not receiving desktop notifications": "Non está a recibir notificacións de escritorio",
"You are Rioting as a guest. <a>Register</a> or <a>sign in</a> to access more rooms and features!": "Está a usar Riot como convidado. <a>Rexístrese</a> ou <a>conéctese</a> para acceder a máis salas e caracteristicas!",
"You must specify an event type!": "Debe indicar un tipo de evento!",
"Thank you!": "Grazas!",
"Sunday": "Domingo",
@ -178,7 +165,6 @@
"No update available.": "Sen actualizacións.",
"Downloading update...": "Descargando actualización...",
"You need to be using HTTPS to place a screen-sharing call.": "Precisa utilizar HTTPS para establecer unha chamada de pantalla compartida.",
"Welcome page": "Páxina de acollemento",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Co seu navegador actual a apareciencia e uso do aplicativo poderían estar totalmente falseadas, e algunhas características poderían non funcionar. Se quere pode continuar, pero debe ser consciente de que poden haber fallos!",
"Welcome to Riot.im": "Benvida a Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Chat &amp; colaboración descentralizados e cifrados grazas a [matrix]",
@ -218,8 +204,6 @@
"To return to your account in future you need to <u>set a password</u>": "Para voltar a súa conta no futuro debe <u>establecer un contrasinal>/u>",
"Set Password": "Establecer contrasinal",
"Couldn't load home page": "Non se cargou a páxina de inicio",
"Invite to this group": "Convidar a este grupo",
"Add room to this group": "Engadir sala a este grupo",
"You might have configured them in a client other than Riot. You cannot tune them in Riot but they still apply": "Pode que os configurase nun cliente diferente de Riot. Non pode establecelos desde Riot pero aínda así aplicaranse",
"Riot/Android &amp; matrix-android-sdk chat": "Chat para Riot/Android &amp; matrix-android-sdk"
}

View File

@ -179,7 +179,6 @@
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s באמצעות הדפדפן %(browserName)s על גבי %(osName)s",
"<a href=\"http://apple.com/safari\">Safari</a> and <a href=\"http://opera.com\">Opera</a> work too.": "<a href=\"http://apple.com/safari\"> ספארי</a> ו <a href=\"http://opera.com\"> אופרה</a> עובדים גם כן.",
"Notifications on the following keywords follow rules which cant be displayed here:": "התראה על מילות המפתח הבאות עוקבת אחר החוקים שאינם יכולים להיות מוצגים כאן:",
"Redact": "אדום",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "באמצעות הדפדפן הנוכחי שלך המראה של האפליקציה יכול להיות שגוי לחלוטין וחלק מהאפשרויות לא תתפקדנה. אם תרצה לנסות בכל זאת תוכל אבל אז הסיכון חל עליך!",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "צ'ט מוצפן &amp; ושת\"פ נעשה ע\"י ה [matrix]"
}

View File

@ -40,7 +40,7 @@
"Files": "Fájlok",
"Filter room names": "Szoba nevek szűrése",
"Forget": "Elfelejt",
"Guests can join": "Vendégek csatlakozhatnak",
"Guests can join": "Vendégek is csatlakozhatnak",
"Invite to this room": "Meghívás a szobába",
"Keywords": "Kulcsszavak",
"Leave": "Elhagy",
@ -54,7 +54,7 @@
"Messages sent by bot": "Botok által küldött üzenetek",
"more": "további",
"Mute": "Elnémít",
"No rooms to show": "Nincs megjeleníthető szoba",
"No rooms to show": "Nincsenek megjelenítendő szobák",
"Noisy": "Hangos",
"Notification targets": "Értesítések célpontja",
"Notifications": "Értesítések",
@ -73,7 +73,6 @@
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "A legjobb élmény érdekében telepíts <a href=\"https://www.google.com/chrome\">Chrome</a>ot vagy <a href=\"https://getfirefox.com\">Firefox</a>ot.",
"powered by Matrix": "Matrixon alapul",
"Quote": "Idézet",
"Redact": "Szerkeszt",
"Reject": "Elutasít",
"Remove %(name)s from the directory?": "Törlöd a %(name)s szobát a listából?",
"Remove": "Törlés",
@ -94,12 +93,12 @@
"Unable to look up room ID from server": "Nem lehet lekérdezni a szoba ID-ját a szervertől",
"Unhide Preview": "Előkép felfedése",
"unknown error code": "ismeretlen hiba kód",
"Unnamed room": "Név nélküli szoba",
"Unnamed room": "Névtelen szoba",
"Uploaded on %(date)s by %(user)s": "Feltöltés: %(date)s, %(user)s",
"View Decrypted Source": "Visszafejtett forrás megjelenítése",
"View Source": "Forrás megjelenítése",
"When I'm invited to a room": "Amikor meghívtak a szobába",
"World readable": "Mindenki olvashatja",
"World readable": "Nyilvános",
"You cannot delete this image. (%(code)s)": "Nem törölheted ezt a képet. (%(code)s)",
"You cannot delete this message. (%(code)s)": "Nem törölheted ezt az üzenetet. (%(code)s)",
"You are not receiving desktop notifications": "Nem fogadsz asztali értesítéseket",
@ -205,8 +204,9 @@
"Event Type": "Esemény típusa",
"Event Content": "Esemény tartalma",
"State Key": "Állapot kulcs",
"Invite to this group": "Meghívás ebbe a csoportba",
"Filter results": "Találatok szűrése",
"You must specify an event type!": "Meg kell határoznod az esemény típusát!",
"Add room to this group": "Szoba hozzáadása ehhez a csoporthoz"
"Show message in desktop notification": "Üzenetek megmutatása az asztali értesítésekben",
"Pin Message": "Üzenet kitűzése",
"Unpin Message": "Üzenet levétele"
}

View File

@ -205,7 +205,5 @@
"Event sent!": "Evento inviato!",
"Event Type": "Tipo di Evento",
"Event Content": "Contenuto dell'Evento",
"State Key": "Chiave dello Stato",
"Invite to this group": "Invita in questo gruppo",
"Add room to this group": "Aggiungi stanza a questo gruppo"
"State Key": "Chiave dello Stato"
}

View File

@ -51,7 +51,6 @@
"Please describe the bug and/or send logs.": "오류를 적어주시거나 로그를 보내주세요.",
"powered by Matrix": "매트릭스의 지원을 받고 있어요",
"Quote": "인용하기",
"Redact": "지우기",
"Reject": "거절하기",
"Remove %(name)s from the directory?": "목록에서 %(name)s을 지우시겠어요?",
"Remove": "지우기",

View File

@ -69,7 +69,6 @@
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Vennligst installer <a href=\"https://www.google.com/chrome\">Chrome</a> eller <a href=\"https://getfirefox.com\">Firefox</a> for den beste opplevelsen.",
"powered by Matrix": "benytter seg av Matrix",
"Quote": "Sitat",
"Redact": "Maskere",
"Reject": "Avvis",
"Remove %(name)s from the directory?": "Fjern %(name)s fra katalogen?",
"Remove": "Fjern",

View File

@ -105,7 +105,6 @@
"Today": "Vandaag",
"Yesterday": "Gisteren",
"Failed to set Direct Message status of room": "Het is mislukt om de directe-berichtenstatus van de kamer in te stellen",
"Redact": "Redigeren",
"A new version of Riot is available.": "Er is een nieuwe versie van Riot beschikbaar.",
"All Rooms": "Alle kamers",
"Cancel": "Annuleren",
@ -199,7 +198,6 @@
"Failed to send custom event.": "Aangepast Event verzenden mislukt.",
"Send Custom Event": "Verzend aangepast evenement",
"Send Custom State Event": "Verzend aangepast State Event",
"Invite to this group": "Nodig uit voor deze groep",
"Developer Tools": "Ontwikkelaarsgereedschap",
"Filter results": "Resultaten filteren",
"Explore Room State": "Verken Ruimtetoestand",
@ -207,6 +205,5 @@
"Event sent!": "Event verstuurd!",
"Event Type": "Event-type",
"Event Content": "Event-inhoud",
"State Key": "Toestandssleutel",
"Add room to this group": "Voeg een ruimte aan deze groep toe"
"State Key": "Toestandssleutel"
}

View File

@ -97,7 +97,6 @@
"Send logs": "Wyślij logi",
"Sorry, your browser is <b>not</b> able to run Riot.": "Przepraszamy, Twoja przeglądarka <b>nie jest w stanie</b> uruchomić Riot.",
"powered by Matrix": "napędzany przez Matrix",
"Redact": "Zredaguj",
"Reject": "Odrzuć",
"Remove": "Usuń",
"remove %(name)s from the directory.": "usuń %(name)s z katalogu.",
@ -206,6 +205,5 @@
"Event sent!": "Wydarzenie wysłane!",
"Event Type": "Typ wydarzenia",
"Event Content": "Zawartość wydarzenia",
"State Key": "Klucz stanu",
"Invite to this group": "Zaproś do tej grupy"
"State Key": "Klucz stanu"
}

View File

@ -23,14 +23,12 @@
"Enter keywords separated by a comma:": "Insira palavras-chave separadas por vírgula:",
"Error": "Erro",
"Error saving email notification preferences": "Erro ao guardar as preferências de notificação por e-mail",
"#example:": "#exemplo",
"Failed to add tag %(tagName)s to room": "Falha ao adicionar %(tagName)s à sala",
"Failed to change settings": "Falha ao alterar as configurações",
"Failed to forget room %(errCode)s": "Falha ao esquecer a sala %(errCode)s",
"Failed to update keywords": "Falha ao atualizar as palavras-chave",
"Failed to get protocol list from Home Server": "Falha ao obter a lista de protocolos do servidor padrão",
"Failed to get public room list": "Falha ao obter a lista de salas públicas",
"Failed to remove tag %(tag)s from room": "Falha ao remover a palavra-chave %(tag)s da sala",
"Failed to set direct chat tag": "Falha ao definir conversa como pessoal",
"Failed to set Direct Message status of room": "Falha em definir a mensagem de status da sala",
"Favourite": "Favorito",
@ -66,7 +64,6 @@
"Permalink": "Link permanente",
"powered by Matrix": "rodando a partir do Matrix",
"Quote": "Citar",
"Redact": "Remover",
"Reject": "Rejeitar",
"Remove": "Remover",
"Remove %(name)s from the directory?": "Remover %(name)s da lista pública de salas?",
@ -207,8 +204,6 @@
"To return to your account in future you need to <u>set a password</u>": "Para voltar à sua conta no futuro, necessita de <u>definir uma palavra-passe</u>",
"Set Password": "Definir palavra-passe",
"Couldn't load home page": "Não foi possível carregar a página inicial",
"Invite to this group": "Convidar para este grupo",
"Filter results": "Filtrar resultados",
"You must specify an event type!": "Tem que especificar um tipo de evento!",
"Add room to this group": "Adicionar sala a este grupo"
"You must specify an event type!": "Tem que especificar um tipo de evento!"
}

View File

@ -23,14 +23,12 @@
"Enter keywords separated by a comma:": "Coloque cada palavras-chave separada por vírgula:",
"Error": "Erro",
"Error saving email notification preferences": "Erro ao salvar as preferências de notificação por email",
"#example:": "#exemplo",
"Failed to add tag %(tagName)s to room": "Falha ao adicionar %(tagName)s à sala",
"Failed to change settings": "Falhou ao mudar as preferências",
"Failed to forget room %(errCode)s": "Falhou ao esquecer a sala %(errCode)s",
"Failed to update keywords": "Falha ao alterar as palavras-chave",
"Failed to get protocol list from Home Server": "Falha em acessar a lista de protocolos do servidor padrão",
"Failed to get public room list": "Falha ao acessar a lista pública de salas",
"Failed to remove tag %(tag)s from room": "Falha ao remover a palavra-chave %(tag)s da sala",
"Failed to set direct chat tag": "Falha ao definir conversa como pessoal",
"Failed to set Direct Message status of room": "Falha em definir a mensagem de status da sala",
"Favourite": "Favorito",
@ -66,7 +64,6 @@
"Permalink": "Link permanente",
"powered by Matrix": "rodando a partir do Matrix",
"Quote": "Citar",
"Redact": "Remover",
"Reject": "Rejeitar",
"Remove": "Remover",
"Remove %(name)s from the directory?": "Remover %(name)s da lista pública de salas?",
@ -151,7 +148,6 @@
"You need to be using HTTPS to place a screen-sharing call.": "Você precisa estar usando HTTPS para poder iniciar uma chamada com compartilhamento de tela.",
"Login": "Fazer login",
"Welcome to Riot.im": "Seja bem-vinda(o) a Riot.im",
"Decentralised, encrypted chat &amp; collaboration powered by": "Colaboração descentralizada e criptografada impulsada por",
"Search the room directory": "Buscar na lista pública de salas",
"Chat with Riot Bot": "Conversar com o Bot do Riot",
"Get started with some tips from Riot Bot!": "Comece com algumas dicas do Bot do Riot!",
@ -209,7 +205,5 @@
"Event sent!": "Evento enviado!",
"Event Type": "Tipo do Evento",
"Event Content": "Conteúdo do Evento",
"State Key": "Chave do Estado",
"Invite to this group": "Convide para este grupo",
"Add room to this group": "Adicione sala para este grupo"
"State Key": "Chave do Estado"
}

View File

@ -2,16 +2,13 @@
"Add an email address above to configure email notifications": "Добавьте email адрес для оповещений",
"All notifications are currently disabled for all targets.": "Все оповещения для всех устройств отключены.",
"An error occurred whilst saving your email notification preferences.": "Возникла ошибка при сохранении настроек оповещения по email.",
"and remove": "и удалить",
"Can't update user notification settings": "Не удается обновить пользовательские настройки оповещения",
"Couldn't find a matching Matrix room": "Не удалось найти подходящую комнату Matrix",
"Custom Server Options": "Настраиваемые параметры сервера",
"delete the alias.": "удалить псевдоним.",
"Delete the room alias": "Удалить привязку комнаты",
"Direct Chat": "Прямой чат",
"Directory": "Каталог",
"Dismiss": "Отказ",
"Drop here to": "Перетащите сюда",
"Enable audible notifications in web client": "Включить звуковые уведомления в веб клиенте",
"Enable desktop notifications": "Включить оповещения на рабочем столе",
"Enable email notifications": "Включить уведомления по email",
@ -21,19 +18,16 @@
"Error": "Ошибка",
"Error saving email notification preferences": "Ошибка при сохранении настроек уведомлений по email",
"#example": "#пример",
"Failed to add tag ": "Не удалось добавить тег ",
"Failed to change settings": "Не удалось изменить настройки",
"Failed to update keywords": "Не удалось обновить ключевые слова",
"Failed to get protocol list from Home Server": "Не удалось получить список протоколов с домашнего сервера",
"Failed to get public room list": "Не удалось получить список общедоступных комнат",
"Failed to remove tag ": "Не удалось удалить тег ",
"Failed to set Direct Message status of room": "Не удалось установить статус прямого сообщения в комнате",
"Favourite": "Избранное",
"Fetching third party location failed": "Не удалось извлечь местоположение третьей стороны",
"Files": "Файлы",
"Filter room names": "Фильтр по названию комнат",
"Forget": "Забыть",
"from the directory": "из каталога",
"Guests can join": "Гости могут присоединиться",
"Invite to this room": "Пригласить в комнату",
"Keywords": "Ключевые слова",
@ -53,7 +47,6 @@
"powered by Matrix": "Основано на Matrix",
"Reject": "Отклонить",
"Remove": "Удалить",
"remove": "удалить",
"Remove from Directory": "Удалить из каталога",
"Riot does not know how to join a room on this network": "Riot не знает, как присоединиться к комнате, принадлежащей к этой сети",
"Room not found": "Комната не найдена",
@ -98,7 +91,6 @@
"Mute": "Беззвучный",
"Permalink": "Постоянная ссылка",
"Quote": "Цитата",
"Redact": "Удалить",
"Remove %(name)s from the directory?": "Удалить %(name)s из каталога?",
"remove %(name)s from the directory.": "удалить %(name)s из каталога.",
"Resend": "Переотправить",
@ -212,8 +204,9 @@
"Event Type": "Тип мероприятия",
"Event Content": "Содержание мероприятия",
"State Key": "Ключ состояния",
"Invite to this group": "Пригласить в эту группу",
"Filter results": "Фильтрация результатов",
"You must specify an event type!": "Необходимо указать тип мероприятия!",
"Add room to this group": "Добавить комнату в эту группу"
"Show message in desktop notification": "Показывать сообщение в уведомлении на рабочем столе",
"Pin Message": "Закрепить сообщение",
"Unpin Message": "Открепить сообщение"
}

View File

@ -82,7 +82,6 @@
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Installera <a href=\"https://www.google.com/chrome\">Chrome</a> eller <a href=\"https://getfirefox.com\">Firefox</a> för den bästa upplevelsen.",
"powered by Matrix": "drivs av Matrix",
"Quote": "Citera",
"Redact": "Dra tillbaka",
"Reject": "Avvisa",
"Remove %(name)s from the directory?": "Ta bort %(name)s från katalogen?",
"Remove": "Ta bort",
@ -197,6 +196,5 @@
"Thank you!": "Tack!",
"Back": "Tillbaka",
"Filter results": "Filtrera resultaten",
"Explore Room State": "Utforska rumläget",
"Invite to this group": "Bjud in till denna grupp"
"Explore Room State": "Utforska rumläget"
}

View File

@ -33,7 +33,6 @@
"Please describe the bug. What did you do? What did you expect to happen? What actually happened?": "กรุณาอธิบายจุดบกพร่อง คุณทำอะไร? ควรจะเกิดอะไรขึ้น? แล้วอะไรคือสิ่งที่เกิดขึ้นจริง?",
"Please describe the bug and/or send logs.": "กรุณาอธิบายจุดบกพร่อง และ/หรือ ส่งล็อก",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "กรุณาติดตั้ง <a href=\"https://www.google.com/chrome\">Chrome</a> หรือ <a href=\"https://getfirefox.com\">Firefox</a> เพื่อประสบการณ์ที่ดีที่สุด",
"Redact": "ลบ",
"Reject": "ปฏิเสธ",
"Remove": "ลบ",
"Messages containing <span>keywords</span>": "ข้อความที่มี<span>คีย์เวิร์ด</span>",
@ -152,7 +151,6 @@
"Search the room directory": "ค้นหาในไดเรกทอรีห้อง",
"Chat with Riot Bot": "แชทกับบอท Riot",
"Get started with some tips from Riot Bot!": "มาเริ่มกันด้วยเคล็ดลับเล็กน้อยจากบอท Riot!",
"General discussion about Matrix": "พูดคุยเรื่องทั่วไปเกี่ยวกับ Matrix",
"Discussion of all things Matrix!": "พูดคุยทุกเรื่อง เรื่อง Matrix!",
"Riot/Web &amp; Desktop chat": "แชทเกี่ยวกับ Riot บนเว็บและเดสก์ทอป",
"Riot/iOS &amp; matrix-ios-sdk chat": "แชทเกี่ยวกับ Riot บน iOS และ matrix-ios-sdk",

View File

@ -91,7 +91,6 @@
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Lütfen <a href=\"https://www.google.com/chrome\"> Chrome </a> ya da <a href=\"https://getfirefox.com\"> Firefox </a> 'u en iyi deneyim için yükleyin.",
"powered by Matrix": "Matrix tarafından desteklenmektedir",
"Quote": "Alıntı",
"Redact": "Yazıya Dökme",
"Reject": "Reddet",
"Remove %(name)s from the directory?": "%(name)s'i dizinden kaldırılsın mı ?",
"Remove": "Kaldır",

View File

@ -84,7 +84,6 @@
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "Для більшої зручності у використанні встановіть, будь ласка, <a href=\"https://www.google.com/chrome\">Chrome</a> або <a href=\"https://getfirefox.com\">Firefox</a>.",
"powered by Matrix": "працює на Matrix",
"Quote": "Цитувати",
"Redact": "Видалити",
"Reject": "Відмовитись",
"Remove %(name)s from the directory?": "Прибрати %(name)s з каталогу?",
"Remove": "Прибрати",
@ -206,7 +205,5 @@
"Event sent!": "Захід відправлено!",
"Event Type": "Тип західу",
"Event Content": "Зміст заходу",
"State Key": "Ключ стану",
"Invite to this group": "Запросити в цю групу",
"Add room to this group": "Додати кімнату в цю группу"
"State Key": "Ключ стану"
}

View File

@ -203,6 +203,5 @@
"Event sent!": "事件已发出!",
"Event Type": "事件类型",
"Event Content": "事件内容",
"State Key": "状态密钥",
"Invite to this group": "邀请到这个群组"
"State Key": "状态密钥"
}

View File

@ -121,7 +121,6 @@
"Notify me for anything else": "所有消息都通知我",
"Permalink": "永久連結",
"Please install <a href=\"https://www.google.com/chrome\">Chrome</a> or <a href=\"https://getfirefox.com\">Firefox</a> for the best experience.": "諘安裝 <a href=\"https://www.google.com/chrome\">Chrome</a> 或 <a href=\"https://getfirefox.com\">Firefox</a> 來取得最佳體驗。",
"Redact": "纂輯\t",
"Reject": "拒絕",
"Remove %(name)s from the directory?": "自目錄中移除 %(name)s",
"remove %(name)s from the directory.": "自目錄中移除 %(name)s。",
@ -205,8 +204,9 @@
"Event Type": "事件類型",
"Event Content": "事件內容",
"State Key": "狀態金鑰",
"Invite to this group": "邀請進入此群組",
"Filter results": "過濾結果",
"You must specify an event type!": "您必須指定事件類型!",
"Add room to this group": "新增聊天室到此群組"
"Show message in desktop notification": "在桌面通知中顯示訊息",
"Pin Message": "釘選訊息",
"Unpin Message": "取消釘選訊息"
}

View File

@ -38,8 +38,8 @@ body {
-webkit-font-smoothing: subpixel-antialiased;
}
div.error {
color: red;
div.error, div.warning {
color: $warning-color;
}
h2 {
@ -87,6 +87,11 @@ textarea {
transition: opacity 0.2s ease-in-out;
}
.mx_fadable.mx_fadable_faded {
opacity: 0.3;
pointer-events: none;
}
/* XXX: critical hack to GeminiScrollbar to allow them to work in FF 42 and Chrome 48.
Stop the scrollbar view from pushing out the container's overall sizing, which causes
flexbox to adapt to the new size and cause the view to keep growing.

View File

@ -19,6 +19,9 @@ limitations under the License.
width: 100%;
margin-left: auto;
margin-right: auto;
display: flex;
flex-direction: column;
overflow: hidden;
}
.mx_GroupView_error {
@ -27,15 +30,15 @@ limitations under the License.
.mx_GroupView_header {
max-width: 960px;
margin: auto;
height: 70px;
min-height: 70px;
align-items: center;
display: flex;
margin-bottom: 20px;
padding-bottom: 10px;
}
.mx_GroupView_header_view {
border-bottom: 1px solid #e5e5e5;
border-bottom: 1px solid $primary-hairline-color;
padding-bottom: 0px;
}
.mx_GroupView_header_avatar, .mx_GroupView_header_info {
@ -53,6 +56,23 @@ limitations under the License.
pointer-events: none;
}
.mx_GroupView_editable {
border-bottom: 1px solid $strong-input-border-color ! important;
min-width: 150px;
cursor: text;
}
.mx_GroupView_editable:focus {
border-bottom: 1px solid $accent-color ! important;
outline: none;
box-shadow: none;
}
.mx_GroupView_header_name:hover div:not(.mx_GroupView_editable) {
color: $accent-color;
cursor: pointer;
}
.mx_GroupView_avatarPicker {
position: relative;
}
@ -102,10 +122,6 @@ limitations under the License.
border-bottom: 1px solid transparent;
}
.mx_GroupView_header_name input, .mx_GroupView_header_shortDesc input {
width: 400px;
}
.mx_GroupView_header_shortDesc {
vertical-align: bottom;
float: left;
@ -133,10 +149,68 @@ limitations under the License.
top: 5px;
}
.mx_GroupView_body {
flex-grow: 1;
}
.mx_GroupView_rooms {
flex-grow: 1;
display: flex;
flex-direction: column;
min-height: 200px;
user-select: none;
}
.mx_GroupView h3 {
text-transform: uppercase;
color: $h3-color;
font-weight: 600;
font-size: 13px;
margin-bottom: 10px;
}
.mx_GroupView_rooms_header .mx_AccessibleButton {
padding-left: 14px;
margin-bottom: 14px;
height: 24px;
}
.mx_GroupView_group {
border-top: 1px solid $primary-hairline-color;
}
.mx_GroupView_group_disabled {
opacity: 0.3;
pointer-events: none;
}
.mx_GroupView_rooms_header_addRow_button {
display: inline-block;
}
.mx_GroupView_rooms_header_addRow_button object {
pointer-events: none;
}
.mx_GroupView_rooms_header_addRow_label {
display: inline-block;
vertical-align: top;
line-height: 24px;
padding-left: 28px;
color: $accent-color;
}
.mx_GroupView_rooms .mx_RoomDetailList {
flex-grow: 1;
border-top: 1px solid $primary-hairline-color;
padding-top: 10px;
}
.mx_GroupView .mx_RoomView_messageListWrapper {
justify-content: flex-start;
}
.mx_GroupView_membershipSection {
margin-left: auto;
margin-right: auto;
margin-bottom: 11px;
color: $greyed-fg-color;
}
@ -158,6 +232,15 @@ limitations under the License.
margin-left: 8px;
}
.mx_GroupView_memberSettings_toggle label {
cursor: pointer;
user-select: none;
}
.mx_GroupView_memberSettings input {
margin-right: 6px;
}
.mx_GroupView_featuredThings {
margin-top: 20px;
}
@ -215,7 +298,11 @@ limitations under the License.
display: none;
}
.mx_GroupView_editLongDesc {
width: 100%;
.mx_GroupView_body .gm-scroll-view > *{
margin: 0px 50px 11px 68px;
}
.mx_GroupView_groupDesc textarea {
width: 50%;
height: 150px;
}

View File

@ -24,14 +24,38 @@ limitations under the License.
margin-left: 0px;
}
.mx_MyGroups_joinCreateBox {
display: table;
margin-bottom: 30px;
.mx_MyGroups_header {
/* Keep mid-point of create button aligned with icon in page header */
margin-left: 2px;
display: flex;
flex-wrap: wrap;
}
.mx_MyGroups_createBox, .mx_MyGroups_joinBox {
display: table-cell;
width: 40%;
.mx_MyGroups_headerCard {
flex: 1 0 50%;
margin-bottom: 30px;
min-width: 400px;
display: flex;
align-items: center;
}
.mx_MyGroups_headerCard .mx_MyGroups_headerCard_button {
margin-right: 13px;
height: 50px;
}
.mx_MyGroups_headerCard_button object {
/* Otherwise the SVG object absorbs clicks and the button doesn't work */
pointer-events: none;
}
.mx_MyGroups_headerCard_header {
font-weight: bold;
margin-bottom: 10px;
}
.mx_MyGroups_headerCard_content {
padding-right: 15px;
}
/* Until the button is wired up */
@ -39,21 +63,61 @@ limitations under the License.
visibility: hidden;
}
.mx_MyGroups_joinCreateHeader {
font-weight: bold;
margin-bottom: 10px;
}
.mx_MyGroups_joinCreateButton {
float: left;
margin: 10px;
}
.mx_MyGroups_joinCreateButton object {
/* Otherwise the SVG object absorbs clicks and the button doesn't work */
pointer-events: none;
}
.mx_MyGroups_content {
clear: left;
margin-left: 2px;
}
.mx_MyGroups_placeholder {
background-color: $group-my-groups-placeholder-bg;
color: $group-my-groups-placeholder-fg;
line-height: 400px;
border-radius: 10px;
text-align: center;
}
.mx_MyGroups_joinedGroups {
display: flex;
flex-direction: row;
flex-flow: wrap;
justify-content: space-around;
}
.mx_MyGroups_joinedGroups .mx_GroupTile {
min-width: 300px;
flex: 1 0 25%;
height: 75px;
margin-bottom: 15px;
margin-right: 10px;
display: flex;
align-items: flex-start;
cursor: pointer;
}
.mx_GroupTile_profile {
margin-left: 10px;
display: flex;
flex-direction: column;
justify-content: center;
}
.mx_GroupTile_profile h3.mx_GroupTile_name {
margin: 0px;
font-size: 15px;
}
.mx_GroupTile_profile .mx_GroupTile_groupId {
font-size: 13px;
}
.mx_GroupTile_profile .mx_GroupTile_desc {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
font-size: 13px;
max-height: 36px;
overflow: hidden;
}
.mx_GroupTile_profile .mx_GroupTile_groupId {
opacity: 0.7;
}

View File

@ -80,17 +80,32 @@ limitations under the License.
max-width: 1920px ! important;
}
.mx_RoomView_topUnreadMessagesBar {
.mx_RoomView_body {
order: 3;
flex: 1 1 0;
flex-direction: column;
display: flex;
}
.mx_RoomView_body .mx_RoomView_topUnreadMessagesBar {
order: 1;
}
.mx_RoomView_body .mx_RoomView_messagePanel {
order: 2;
}
.mx_RoomView_body .mx_RoomView_statusArea {
order: 3;
}
.mx_RoomView_messagePanel {
.mx_RoomView_body .mx_MessageComposer {
order: 4;
}
flex: 1 1 0;
.mx_RoomView_messagePanel {
width: 100%;
overflow-y: auto;
}
@ -131,18 +146,6 @@ limitations under the License.
clear: both;
}
.mx_RoomView_invitePrompt {
order: 2;
min-width: 0px;
max-width: 960px;
width: 100%;
margin: auto;
margin-top: 12px;
margin-bottom: 12px;
}
li.mx_RoomView_myReadMarker_container {
height: 0px;
margin: 0px;
@ -160,8 +163,6 @@ hr.mx_RoomView_myReadMarker {
}
.mx_RoomView_statusArea {
order: 5;
width: 100%;
flex: 0 0 auto;
@ -236,8 +237,6 @@ hr.mx_RoomView_myReadMarker {
}
.mx_RoomView .mx_MessageComposer {
order: 6;
width: 100%;
flex: 0 0 auto;
margin-right: 2px;

View File

@ -14,6 +14,14 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
.mx_ChatInviteDialog {
/* XXX: padding-left is on mx_Dialog but padding-right has subsequently
* been added on other dialogs. Surely all our dialogs should have consistent
* right hand padding?
*/
padding-right: 58px;
}
/* Using a textarea for this element, to circumvent autofill */
.mx_ChatInviteDialog_input,
.mx_ChatInviteDialog_input:focus

View File

@ -56,6 +56,8 @@ limitations under the License.
overflow: hidden;
font-size: 14px;
text-overflow: ellipsis;
white-space: nowrap;
max-width: 135px;
}
.mx_EntityTile_details {
@ -66,8 +68,6 @@ limitations under the License.
.mx_EntityTile_name_hover {
font-size: 13px;
overflow: hidden;
text-overflow: ellipsis;
}
.mx_EntityTile_chevron {

View File

@ -67,8 +67,9 @@ limitations under the License.
}
.mx_EventTile .mx_SenderProfile .mx_Flair img {
vertical-align: -3px;
vertical-align: -2px;
margin-right: 2px;
border-radius: 8px;
}
.mx_EventTile .mx_MessageTimestamp {

View File

@ -92,6 +92,7 @@ limitations under the License.
}
*/
.mx_GroupMemberList_invited h2,
.mx_MemberList_invited h2 {
text-transform: uppercase;
color: $h3-color;

View File

@ -60,6 +60,10 @@ limitations under the License.
padding-right: 12px;
}
.mx_RoomHeader_textButton_danger {
background-color: $warning-color;
}
.mx_RoomHeader_cancelButton {
order: 2;
cursor: pointer;
@ -145,8 +149,8 @@ limitations under the License.
.mx_RoomHeader_avatarPicker_remove {
position: absolute;
top: 10px;
left: 45px;
top: -11px;
right: -9px;
}
.mx_RoomHeader_name:hover div:not(.mx_RoomHeader_editable) {
@ -194,8 +198,12 @@ limitations under the License.
object-fit: cover;
}
.mx_RoomHeader_avatarPicker {
margin-top: 23px;
position: relative;
}
.mx_RoomHeader_avatarPicker_edit {
position: absolute;
margin-left: 16px;
margin-top: 4px;
}

View File

@ -22,7 +22,10 @@ $warning-color: #ff0064;
$mention-user-pill-bg-color: #ff0064;
$other-user-pill-bg-color: rgba(0, 0, 0, 0.1);
// groups
$group-alert-color: #774f7e;
$group-my-groups-placeholder-bg: #f7f7f7;
$group-my-groups-placeholder-fg: #888;
$preview-bar-bg-color: #f7f7f7;

View File

@ -20,6 +20,9 @@ $focus-brightness: 200%;
// red warning colour
$warning-color: #ff0064;
// groups
$group-my-groups-placeholder-bg: #454545;
$other-user-pill-bg-color: rgba(255, 255, 255, 0.1);
$preview-bar-bg-color: #333;

View File

@ -94,30 +94,26 @@ limitations under the License.
}
.mx_RightPanel_footer .mx_RightPanel_invite {
line-height: 35px;
font-size: 14px;
color: $primary-fg-color;
padding-top: 13px;
padding-left: 5px;
cursor: pointer;
display: flex;
align-items: center;
}
.collapsed .mx_RightPanel_footer .mx_RightPanel_invite {
display: none;
}
.mx_RightPanel_invite .mx_RightPanel_icon {
display: inline-block;
}
.mx_RightPanel_invite .mx_RightPanel_icon object {
pointer-events: none;
}
.mx_RightPanel_invite .mx_RightPanel_message {
display: inline-block;
vertical-align: top;
padding-left: 10px
padding-left: 10px;
line-height: 18px;
}
.mx_MatrixChat_useCompactLayout {

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 15.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="512px" height="512px" viewBox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve">
<g>
<path fill="#FF0064" d="M85.633,454.889c0,31.168,25.553,56.661,56.79,56.661h227.156c31.234,0,56.787-25.493,56.787-56.661
V128.225H85.633V454.889z M468.958,43.042H362.479L326.828,0.45H185.173l-35.652,42.591H43.042v42.592h425.916V43.042z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 738 B

View File

@ -1,127 +1,26 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="25px"
height="25px"
viewBox="0 0 25 25"
version="1.1"
id="svg4196"
inkscape:version="0.91 r13725"
sodipodi:docname="icons-room.svg">
<metadata
id="metadata4216">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>81230A28-D944-4572-B5DB-C03CAA2B1FCA</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1199"
inkscape:window-height="897"
id="namedview4214"
showgrid="false"
inkscape:zoom="18.441345"
inkscape:cx="12.5"
inkscape:cy="12.5"
inkscape:window-x="486"
inkscape:window-y="77"
inkscape:window-maximized="0"
inkscape:current-layer="g4240" />
<!-- Generator: sketchtool 39.1 (31720) - http://www.bohemiancoding.com/sketch -->
<title
id="title4198">81230A28-D944-4572-B5DB-C03CAA2B1FCA</title>
<desc
id="desc4200">Created with sketchtool.</desc>
<defs
id="defs4202" />
<g
id="Symbols"
stroke="none"
stroke-width="1"
fill="none"
fill-rule="evenodd">
<g
id="Left-nav-default"
transform="translate(-50.000000, -725.000000)">
<g
id="Left-panel">
<g
id="g4207">
<g
id="icons_people"
transform="translate(50.000000, 725.000000)">
<path
d="M12.5,25 C19.4035594,25 25,19.4035594 25,12.5 C25,5.59644063 19.4035594,0 12.5,0 C5.59644063,0 0,5.59644063 0,12.5 C0,19.4035594 5.59644063,25 12.5,25 Z"
id="Oval-1-Copy-7"
fill="#76CFA6" />
<g
id="icons_people_svg"
transform="translate(2.1738878,5.8373221)"
style="stroke:#ffffff">
<path
d="m 10.5,12 c 0,-2.7614237 0,-5 -5,-5 -5.0000002,0 -5,2.2385763 -5,5 3.4756747,0 5.5712891,0 10,0 z"
id="Oval-40"
inkscape:connector-curvature="0"
style="stroke-linecap:round;stroke-linejoin:round" />
<circle
id="Oval"
cx="5.5"
cy="2.75"
r="2.75" />
</g>
<g
style="stroke:#ffffff"
transform="translate(12.151468,5.8373221)"
id="g4246">
<path
style="stroke-linecap:round;stroke-linejoin:round"
inkscape:connector-curvature="0"
id="path4248"
d="m 10.5,12 c 0,-2.7614237 0,-5 -5,-5 -5.0000002,0 -5,2.2385763 -5,5 3.4756747,0 5.5712891,0 10,0 z" />
<circle
r="2.75"
cy="2.75"
cx="5.5"
id="circle4250" />
</g>
<g
transform="translate(6.945774,9.0366549)"
id="g4240"
style="stroke:#ffffff">
<path
id="path4242"
d="m 10.5,12 c 0,-2.7614237 0,-5 -5,-5 -5.0000002,0 -5,2.2385763 -5,5 3.4756747,0 5.5712891,0 10,0 z"
inkscape:connector-curvature="0"
style="stroke-linecap:round;stroke-linejoin:round;fill:#76cfa6;fill-opacity:1" />
<circle
r="2.75"
cy="2.75"
cx="5.5"
id="circle4244"
style="fill:#76cfa6;fill-opacity:1" />
</g>
</g>
</g>
</g>
</g>
</g>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 25 25" style="enable-background:new 0 0 25 25;" xml:space="preserve">
<style type="text/css">
.st4{fill:none;stroke-miterlimit:10;}
</style>
<g id="icons_people" transform="translate(50.000000, 725.000000)">
<path id="Oval-1-Copy-7" fill="#76CFA6" d="M-37.5-700c6.9,0,12.5-5.6,12.5-12.5S-30.6-725-37.5-725S-50-719.4-50-712.5
S-44.4-700-37.5-700z"/>
<g id="g4240_1_" transform="translate(6.945774,9.0366549)">
<path id="path4242_1_" class="st4" stroke="#FFFFFF" d="M-38.8-714.1c0-3.2,0-5.7-5.7-5.7s-5.7,2.5-5.7,5.7C-46.2-714.1-43.8-714.1-38.8-714.1z"/>
<circle id="circle4244_1_" class="st4" stroke="#FFFFFF" cx="-44.5" cy="-724.7" r="3.2"/>
</g>
<g>
<path fill="#FFFFFF" d="M-45.8-708.7c0-2.5,0.3-4,4.5-4c0.3,0,0.6,0,0.8,0c-0.3-0.3-0.6-0.6-0.8-1c0,0,0,0-0.1,0
c-5.5,0-5.5,2.7-5.5,5.5v0.5h2.7c0.1-0.3,0.1-0.7,0.2-1H-45.8z"/>
<path fill="#FFFFFF" d="M-43.6-717.4c0-1.3,1-2.3,2.3-2.3c0.6,0,1.1,0.2,1.5,0.5c0.3-0.2,0.6-0.3,1-0.5c-0.6-0.7-1.5-1.1-2.4-1.1
c-1.8,0-3.3,1.5-3.3,3.3c0,1.8,1.4,3.2,3.2,3.3c-0.1-0.3-0.2-0.7-0.3-1C-42.8-715.3-43.6-716.2-43.6-717.4z"/>
<path fill="#FFFFFF" d="M-27.8-708.2c0-2.8,0-5.5-5.5-5.5c-0.2,0-0.3,0-0.5,0c-0.2,0.4-0.5,0.7-0.8,1c0.4,0,0.8-0.1,1.3-0.1
c4.2,0,4.5,1.5,4.5,4h-2.4c0.1,0.3,0.2,0.7,0.2,1h3.1V-708.2z"/>
<path fill="#FFFFFF" d="M-33.3-719.7c1.3,0,2.3,1,2.3,2.3c0,1.3-1,2.3-2.3,2.3c0,0,0,0,0,0c0,0.3-0.1,0.7-0.3,1c0.1,0,0.2,0,0.3,0
c1.8,0,3.3-1.5,3.3-3.3c0-1.8-1.5-3.3-3.3-3.3c-1,0-1.9,0.5-2.5,1.2c0.3,0.1,0.6,0.3,0.9,0.5C-34.6-719.4-34-719.7-33.3-719.7z"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -1,159 +1,23 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="25px"
height="25px"
viewBox="0 0 25 25"
version="1.1"
id="svg4196"
inkscape:version="0.48.4 r9939"
sodipodi:docname="icons-room.svg">
<metadata
id="metadata4216">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>81230A28-D944-4572-B5DB-C03CAA2B1FCA</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1918"
inkscape:window-height="1050"
id="namedview4214"
showgrid="false"
inkscape:zoom="18.441345"
inkscape:cx="-1.0720921"
inkscape:cy="5.6865774"
inkscape:window-x="0"
inkscape:window-y="28"
inkscape:window-maximized="0"
inkscape:current-layer="text3879"
inkscape:snap-object-midpoints="true"
inkscape:snap-global="true"
inkscape:snap-bbox="true"
inkscape:bbox-paths="false"
inkscape:snap-bbox-midpoints="true"
inkscape:snap-page="true"
showguides="true"
inkscape:guide-bbox="true" />
<!-- Generator: sketchtool 39.1 (31720) - http://www.bohemiancoding.com/sketch -->
<title
id="title4198">81230A28-D944-4572-B5DB-C03CAA2B1FCA</title>
<desc
id="desc4200">Created with sketchtool.</desc>
<defs
id="defs4202" />
<g
id="Symbols"
stroke="none"
stroke-width="1"
fill="none"
fill-rule="evenodd">
<g
id="Left-nav-default"
transform="translate(-50.000000, -725.000000)">
<g
id="Left-panel">
<g
id="g4207">
<g
id="icons_people"
transform="translate(50.000000, 725.000000)">
<path
d="M12.5,25 C19.4035594,25 25,19.4035594 25,12.5 C25,5.59644063 19.4035594,0 12.5,0 C5.59644063,0 0,5.59644063 0,12.5 C0,19.4035594 5.59644063,25 12.5,25 Z"
id="Oval-1-Copy-7"
fill="#76CFA6"
style="fill:#76cfa6;fill-opacity:1" />
<path
style="fill:#a0a0a0;stroke:none"
d="m 4.4538552,16.721536 c 0.680539,-0.0086 1.7786151,-0.0086 2.4401691,2.1e-5 0.6615541,0.0086 0.1047495,0.01567 -1.2373435,0.01565 -1.342093,-1.2e-5 -1.8833645,-0.0071 -1.2028256,-0.01567 z"
id="path3032"
inkscape:connector-curvature="0" />
<g
transform="matrix(1.0243293,0,0,0.97624855,-24.996028,0.15844144)"
style="font-size:20.13689613px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans"
id="text3879">
<g
id="g3249"
transform="matrix(0.69732039,0,0,0.73166379,24.402336,-0.16229621)"
style="opacity:1;fill:#de8787">
<g
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="g3183">
<g
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="g3169">
<g
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="g3156">
<g
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="Symbols-3">
<g
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="Right-panel/Footer"
transform="translate(-26,-34)">
<g
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="icon_invite_people"
transform="translate(26,34)">
<g
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="Group-5"
transform="translate(8,9)">
<g
style="opacity:0.80000000000000004;fill:none;fill-opacity:1;stroke-linecap:round;stroke:#ffffff;stroke-opacity:1"
id="Group-3"
transform="translate(14.4375,3.9375)">
<path
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
inkscape:connector-curvature="0"
d="m 0,3.28125 6.5625,0"
id="Line" />
<path
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
inkscape:connector-curvature="0"
d="m 3.28125,0 0,6.5625"
id="path3142" />
</g>
<g
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
id="icons_people_svg" />
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
<path
d="m 37.394645,11.340164 -0.511365,2.634303 2.19267,0 0,0.999487 -2.378621,0 -0.650828,3.331619 -1.06147,0 0.650829,-3.331619 -2.34763,0 -0.635332,3.331619 -1.053721,0 0.619835,-3.331619 -2.029963,0 0,-0.999487 2.223663,0 0.52686,-2.634303 -2.146183,0 0,-0.98399 2.316638,0 0.635332,-3.3781075 1.076965,0 -0.635332,3.3781075 2.363126,0 0.650827,-3.3781075 1.038226,0 -0.650827,3.3781075 2.045459,0 0,0.98399 -2.239158,0 m -3.920464,2.634303 2.347629,0 0.511365,-2.634303 -2.347629,0 -0.511365,2.634303"
style="font-variant:normal;font-stretch:normal;fill:#ffffff;font-family:Open Sans;-inkscape-font-specification:Open Sans"
id="path3002"
inkscape:connector-curvature="0" />
</g>
</g>
</g>
</g>
</g>
</g>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1"
id="svg4196" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 25 25"
style="enable-background:new 0 0 25 25;" xml:space="preserve">
<style type="text/css">
.st1{opacity:0.7;}
.st2{fill:none;stroke-linecap:round;}
</style>
<g id="icons_people" transform="translate(50.000000, 725.000000)">
<path id="Oval-1-Copy-7" fill="#76CFA6" d="M-37.5-700c6.9,0,12.5-5.6,12.5-12.5S-30.6-725-37.5-725S-50-719.4-50-712.5
S-44.4-700-37.5-700z"/>
<g id="text3879" transform="matrix(1.0243293,0,0,0.97624855,-24.996028,0.15844144)">
<g id="Group-3" transform="translate(14.4375,3.9375)" class="st1">
<path id="Line" class="st2" stroke="#ffffff" d="M-23.2-733.8h4.6"/>
<path id="path3142" class="st2" stroke="#ffffff" d="M-20.9-736.2v4.8"/>
</g>
<path id="path3002" fill="#ffffff" d="M-11.4-731.3l-0.5,2.6h2.2v1h-2.4l-0.7,3.3h-1.1l0.7-3.3
h-2.3l-0.6,3.3h-1.1l0.6-3.3h-2v-1h2.2l0.5-2.6H-18v-1h2.3l0.6-3.4h1.1l-0.6,3.4h2.4l0.7-3.4h1l-0.7,3.4h2v1H-11.4 M-15.3-728.7
h2.3l0.5-2.6h-2.3L-15.3-728.7"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 6.8 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -1,109 +1,12 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="25px"
height="25px"
viewBox="0 0 25 25"
version="1.1"
id="svg4196"
inkscape:version="0.48.4 r9939"
sodipodi:docname="lukes-icons-room.svg">
<metadata
id="metadata4216">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title>81230A28-D944-4572-B5DB-C03CAA2B1FCA</dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1918"
inkscape:window-height="1078"
id="namedview4214"
showgrid="false"
inkscape:zoom="13.04"
inkscape:cx="3.0259155"
inkscape:cy="11.779524"
inkscape:window-x="1920"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="text3879"
inkscape:snap-object-midpoints="true"
inkscape:snap-global="true"
inkscape:snap-bbox="true"
inkscape:bbox-paths="false"
inkscape:snap-bbox-midpoints="true"
inkscape:snap-page="true"
showguides="true"
inkscape:guide-bbox="true">
<sodipodi:guide
orientation="0,1"
position="10.352761,19.555215"
id="guide4072" />
</sodipodi:namedview>
<!-- Generator: sketchtool 39.1 (31720) - http://www.bohemiancoding.com/sketch -->
<title
id="title4198">81230A28-D944-4572-B5DB-C03CAA2B1FCA</title>
<desc
id="desc4200">Created with sketchtool.</desc>
<defs
id="defs4202" />
<g
id="Symbols"
stroke="none"
stroke-width="1"
fill="none"
fill-rule="evenodd">
<g
id="Left-nav-default"
transform="translate(-50.000000, -725.000000)">
<g
id="Left-panel">
<g
id="g4207">
<g
id="icons_people"
transform="translate(50.000000, 725.000000)">
<path
d="M12.5,25 C19.4035594,25 25,19.4035594 25,12.5 C25,5.59644063 19.4035594,0 12.5,0 C5.59644063,0 0,5.59644063 0,12.5 C0,19.4035594 5.59644063,25 12.5,25 Z"
id="Oval-1-Copy-7"
fill="#76CFA6"
style="fill:#76cfa6;fill-opacity:1" />
<path
style="fill:#a0a0a0;stroke:none"
d="m 4.4538552,16.721536 c 0.680539,-0.0086 1.7786151,-0.0086 2.4401691,2.1e-5 0.6615541,0.0086 0.1047495,0.01567 -1.2373435,0.01565 -1.342093,-1.2e-5 -1.8833645,-0.0071 -1.2028256,-0.01567 z"
id="path3032"
inkscape:connector-curvature="0" />
<g
transform="scale(1.0243293,0.97624855)"
style="font-size:20.13689613px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;font-family:Sans"
id="text3879">
<path
d="m 15.354413,11.152262 -0.648943,3.343039 2.782589,0 0,1.268389 -3.018568,0 -0.825927,4.227962 -1.347049,0 0.825928,-4.227962 -2.979238,0 -0.8062628,4.227962 -1.3372158,0 0.7865976,-4.227962 -2.5761069,0 0,-1.268389 2.8219186,0 0.6686079,-3.343039 -2.7235939,0 0,-1.2487235 2.9399082,0 0.8062621,-4.2869564 1.366713,0 -0.806262,4.2869564 2.998903,0 0.825927,-4.2869564 1.317551,0 -0.825927,4.2869564 2.595772,0 0,1.2487235 -2.841584,0 m -4.975229,3.343039 2.979238,0 0.648943,-3.343039 -2.979238,0 -0.648943,3.343039"
style="font-variant:normal;font-stretch:normal;fill:#ffffff;font-family:Open Sans;-inkscape-font-specification:Open Sans"
id="path3002" />
</g>
</g>
</g>
</g>
</g>
</g>
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 25 25" style="enable-background:new 0 0 25 25;" xml:space="preserve">
<g id="icons_people">
<path id="Oval-1-Copy-7" fill="#76CFA6" d="M12.5,25C19.4,25,25,19.4,25,12.5S19.4,0,12.5,0S0,5.6,0,12.5S5.6,25,12.5,25z"/>
<g id="text3879" transform="scale(1.0243293,0.97624855)">
<path id="path3002" fill="#ffffff" d="M15.3,11.1l-0.6,3.3h2.8v1.3h-3l-0.8,4.2h-1.3l0.8-4.2h-3l-0.8,4.2H8.1l0.8-4.2H6.3v-1.3h2.8
l0.7-3.3H7.1V9.9H10l0.8-4.3h1.4l-0.8,4.3h3l0.8-4.3h1.3l-0.8,4.3h2.6v1.2H15.3 M10.4,14.5h3l0.6-3.3h-3L10.4,14.5"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 814 B

View File

@ -69,6 +69,8 @@ import Promise from 'bluebird';
var request = require('browser-request');
import * as UserSettingsStore from 'matrix-react-sdk/lib/UserSettingsStore';
import * as languageHandler from 'matrix-react-sdk/lib/languageHandler';
// Also import _t directly so we can call it just `_t` as this is what gen-i18n.js expects
import { _t } from 'matrix-react-sdk/lib/languageHandler';
import url from 'url';
@ -248,13 +250,13 @@ async function loadApp() {
if (!preventRedirect) {
if (/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream) {
if (confirm(languageHandler._t("Riot is not supported on mobile web. Install the app?"))) {
if (confirm(_t("Riot is not supported on mobile web. Install the app?"))) {
window.location = "https://itunes.apple.com/us/app/vector.im/id1083446067";
return;
}
}
else if (/Android/.test(navigator.userAgent)) {
if (confirm(languageHandler._t("Riot is not supported on mobile web. Install the app?"))) {
if (confirm(_t("Riot is not supported on mobile web. Install the app?"))) {
window.location = "https://play.google.com/store/apps/details?id=im.vector.alpha";
return;
}