Merge branch 'develop' of https://github.com/vector-im/riot-web into develop

Conflicts:
	src/i18n/strings/de_DE.json
	src/i18n/strings/hu.json
	src/i18n/strings/ru.json
	src/i18n/strings/zh_Hant.json
This commit is contained in:
Weblate 2017-10-20 10:29:12 +00:00
commit 0e3fbb6770
24 changed files with 526 additions and 648 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) 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) [Full Changelog](https://github.com/vector-im/riot-web/compare/v0.12.5...v0.12.6)

View file

@ -28,9 +28,10 @@ function getColorName(hex) {
## Adding new strings ## 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. 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. 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.
3. Add the String to the ``en_EN.json`` file in ``src/i18n/strings`` (respect which repository you are on). 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. ## Adding variables inside a string.

View file

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

View file

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

View file

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

View file

@ -323,14 +323,14 @@ module.exports = React.createClass({
<div className="mx_RightPanel_icon" > <div className="mx_RightPanel_icon" >
<TintableSvg src="img/icon-invite-people.svg" width="35" height="35" /> <TintableSvg src="img/icon-invite-people.svg" width="35" height="35" />
</div> </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>
) : ( ) : (
<AccessibleButton className="mx_RightPanel_invite" onClick={ this.onInviteButtonClick } > <AccessibleButton className="mx_RightPanel_invite" onClick={ this.onInviteButtonClick } >
<div className="mx_RightPanel_icon" > <div className="mx_RightPanel_icon" >
<TintableSvg src="img/icons-room-add.svg" width="35" height="35" /> <TintableSvg src="img/icons-room-add.svg" width="35" height="35" />
</div> </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> </AccessibleButton>
); );
} }

View file

@ -1,217 +1,217 @@
{ {
"%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s", "Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?",
"<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.", "Collecting app version information": "Collecting app version information",
"A new version of Riot is available.": "A new version of Riot is available.", "Collecting logs": "Collecting logs",
"Add an email address above to configure email notifications": "Add an email address above to configure email notifications", "Uploading report": "Uploading report",
"Advanced notification settings": "Advanced notification settings", "Waiting for response from server": "Waiting for response from server",
"All messages": "All messages", "Riot Desktop on %(platformName)s": "Riot Desktop on %(platformName)s",
"All messages (loud)": "All messages (loud)", "Unknown device": "Unknown device",
"All Rooms": "All Rooms", "%(appName)s via %(browserName)s on %(osName)s": "%(appName)s via %(browserName)s on %(osName)s",
"All notifications are currently disabled for all targets.": "All notifications are currently disabled for all targets.", "You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.",
"An error occurred whilst saving your email notification preferences.": "An error occurred whilst saving your email notification preferences.", "Messages containing my display name": "Messages containing my display name",
"Back": "Back", "Messages containing my user name": "Messages containing my user name",
"Bug report sent": "Bug report sent", "Messages in one-to-one chats": "Messages in one-to-one chats",
"Call invitation": "Call invitation", "Messages in group chats": "Messages in group chats",
"Cancel": "Cancel", "When I'm invited to a room": "When I'm invited to a room",
"Cancel Sending": "Cancel Sending", "Call invitation": "Call invitation",
"Can't update user notification settings": "Can't update user notification settings", "Messages sent by bot": "Messages sent by bot",
"Changelog": "Changelog", "Error saving email notification preferences": "Error saving email notification preferences",
"Close": "Close", "An error occurred whilst saving your email notification preferences.": "An error occurred whilst saving your email notification preferences.",
"Collapse panel": "Collapse panel", "Keywords": "Keywords",
"Collecting app version information": "Collecting app version information", "Enter keywords separated by a comma:": "Enter keywords separated by a comma:",
"Collecting logs": "Collecting logs", "OK": "OK",
"Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room", "Failed to change settings": "Failed to change settings",
"Custom Server Options": "Custom Server Options", "Operation failed": "Operation failed",
"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.", "Can't update user notification settings": "Can't update user notification settings",
"delete the alias.": "delete the alias.", "Failed to update keywords": "Failed to update keywords",
"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?", "Messages containing <span>keywords</span>": "Messages containing <span>keywords</span>",
"Describe your problem here.": "Describe your problem here.", "Notify for all other messages/rooms": "Notify for all other messages/rooms",
"Developer Tools": "Developer Tools", "Notify me for anything else": "Notify me for anything else",
"Direct Chat": "Direct Chat", "Enable notifications for this account": "Enable notifications for this account",
"Directory": "Directory", "All notifications are currently disabled for all targets.": "All notifications are currently disabled for all targets.",
"Dismiss": "Dismiss", "Add an email address above to configure email notifications": "Add an email address above to configure email notifications",
"Download this file": "Download this file", "Enable email notifications": "Enable email notifications",
"Enable audible notifications in web client": "Enable audible notifications in web client", "Notifications on the following keywords follow rules which cant be displayed here:": "Notifications on the following keywords follow rules which cant be displayed here:",
"Enable desktop notifications": "Enable desktop notifications", "Unable to fetch notification target list": "Unable to fetch notification target list",
"Show message in desktop notification": "Show message in desktop notification", "Notification targets": "Notification targets",
"Enable email notifications": "Enable email notifications", "Advanced notification settings": "Advanced notification settings",
"Enable notifications for this account": "Enable notifications for this account", "There are advanced notifications which are not shown here": "There are advanced notifications which are not shown here",
"Enable them now": "Enable them now", "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",
"Enter keywords separated by a comma:": "Enter keywords separated by a comma:", "Enable desktop notifications": "Enable desktop notifications",
"Error": "Error", "Show message in desktop notification": "Show message in desktop notification",
"Error saving email notification preferences": "Error saving email notification preferences", "Enable audible notifications in web client": "Enable audible notifications in web client",
"#example": "#example", "Off": "Off",
"Expand panel": "Expand panel", "On": "On",
"Failed to add tag %(tagName)s to room": "Failed to add tag %(tagName)s to room", "Noisy": "Noisy",
"Failed to change settings": "Failed to change settings", "Failed to set direct chat tag": "Failed to set direct chat tag",
"Failed to forget room %(errCode)s": "Failed to forget room %(errCode)s", "Failed to remove tag %(tagName)s from room": "Failed to remove tag %(tagName)s from room",
"Failed to update keywords": "Failed to update keywords", "Failed to add tag %(tagName)s to room": "Failed to add tag %(tagName)s to room",
"Failed to get protocol list from Home Server": "Failed to get protocol list from Home Server", "Search…": "Search…",
"Failed to get public room list": "Failed to get public room list", "Search": "Search",
"Failed to remove tag %(tagName)s from room": "Failed to remove tag %(tagName)s from room", "This Room": "This Room",
"Failed to send custom event.": "Failed to send custom event.", "All Rooms": "All Rooms",
"Failed to send report: ": "Failed to send report: ", "Sunday": "Sunday",
"Failed to set direct chat tag": "Failed to set direct chat tag", "Monday": "Monday",
"Failed to set Direct Message status of room": "Failed to set Direct Message status of room", "Tuesday": "Tuesday",
"Favourite": "Favourite", "Wednesday": "Wednesday",
"Fetching third party location failed": "Fetching third party location failed", "Thursday": "Thursday",
"Files": "Files", "Friday": "Friday",
"Filter results": "Filter results", "Saturday": "Saturday",
"Filter room names": "Filter room names", "Today": "Today",
"Forget": "Forget", "Yesterday": "Yesterday",
"Forward Message": "Forward Message", "Custom Server Options": "Custom Server Options",
"Guests can join": "Guests can join", "customServer_text": "customServer_text",
"Hide panel": "Hide panel", "Dismiss": "Dismiss",
"(HTTP status %(httpStatus)s)": "(HTTP status %(httpStatus)s)", "powered by Matrix": "powered by Matrix",
"I understand the risks and wish to continue": "I understand the risks and wish to continue", "You are not receiving desktop notifications": "You are not receiving desktop notifications",
"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:", "Enable them now": "Enable them now",
"Invite to this room": "Invite to this room", "What's New": "What's New",
"Keywords": "Keywords", "Update": "Update",
"Leave": "Leave", "What's new?": "What's new?",
"Login": "Login", "A new version of Riot is available.": "A new version of Riot is available.",
"Loading bug report module": "Loading bug report module", "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>",
"Low Priority": "Low Priority", "Set Password": "Set Password",
"Members": "Members", "Error encountered (%(errorDetail)s).": "Error encountered (%(errorDetail)s).",
"Mentions only": "Mentions only", "Checking for an update...": "Checking for an update...",
"Messages containing my display name": "Messages containing my display name", "No update available.": "No update available.",
"Messages containing <span>keywords</span>": "Messages containing <span>keywords</span>", "Downloading update...": "Downloading update...",
"Messages containing my user name": "Messages containing my user name", "Warning": "Warning",
"Messages in group chats": "Messages in group chats", "Error": "Error",
"Messages in one-to-one chats": "Messages in one-to-one chats", "You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)",
"Messages sent by bot": "Messages sent by bot", "Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s",
"more": "more", "Remove": "Remove",
"Mute": "Mute", "Close": "Close",
"No rooms to show": "No rooms to show", "Download this file": "Download this file",
"Noisy": "Noisy", "Please describe the bug and/or send logs.": "Please describe the bug and/or send logs.",
"Notification targets": "Notification targets", "Loading bug report module": "Loading bug report module",
"Notifications": "Notifications", "Bug report sent": "Bug report sent",
"Notifications on the following keywords follow rules which cant be displayed here:": "Notifications on the following keywords follow rules which cant be displayed here:", "Thank you!": "Thank you!",
"Notify for all other messages/rooms": "Notify for all other messages/rooms", "Failed to send report: ": "Failed to send report: ",
"Notify me for anything else": "Notify me for anything else", "Cancel": "Cancel",
"Off": "Off", "Report a bug": "Report a bug",
"On": "On", "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?",
"Operation failed": "Operation failed", "Describe your problem here.": "Describe your problem here.",
"Permalink": "Permalink", "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:",
"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?", "Send logs": "Send logs",
"Please describe the bug and/or send logs.": "Please describe the bug and/or send logs.", "Send": "Send",
"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.", "Unavailable": "Unavailable",
"powered by Matrix": "powered by Matrix", "Changelog": "Changelog",
"Quote": "Quote", "Back": "Back",
"Reject": "Reject", "You must specify an event type!": "You must specify an event type!",
"Remove %(name)s from the directory?": "Remove %(name)s from the directory?", "Event sent!": "Event sent!",
"Remove": "Remove", "Failed to send custom event.": "Failed to send custom event.",
"remove %(name)s from the directory.": "remove %(name)s from the directory.", "Event Type": "Event Type",
"Remove from Directory": "Remove from Directory", "Event Content": "Event Content",
"Report a bug": "Report a bug", "State Key": "State Key",
"Resend": "Resend", "Edit": "Edit",
"Riot Desktop on %(platformName)s": "Riot Desktop on %(platformName)s", "Filter results": "Filter results",
"Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network", "Send Custom Event": "Send Custom Event",
"Riot is not supported on mobile web. Install the app?": "Riot is not supported on mobile web. Install the app?", "Send Custom State Event": "Send Custom State Event",
"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.", "Explore Room State": "Explore Room State",
"Room not found": "Room not found", "Developer Tools": "Developer Tools",
"Search": "Search", "You have successfully set a password!": "You have successfully set a password!",
"Search…": "Search…", "You have successfully set a password and an email address!": "You have successfully set a password and an email address!",
"Search for a room": "Search for a room", "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.",
"Send": "Send", "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.",
"Send logs": "Send logs", "Continue": "Continue",
"Send Custom Event": "Send Custom Event", "Failed to change password. Is your password correct?": "Failed to change password. Is your password correct?",
"Send Custom State Event": "Send Custom State Event", "(HTTP status %(httpStatus)s)": "(HTTP status %(httpStatus)s)",
"Explore Room State": "Explore Room State", "Please set a password!": "Please set a password!",
"Source URL": "Source URL", "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.",
"Sorry, your browser is <b>not</b> able to run Riot.": "Sorry, your browser is <b>not</b> able to run Riot.", "You cannot delete this message. (%(code)s)": "You cannot delete this message. (%(code)s)",
"The Home Server may be too old to support third party networks": "The Home Server may be too old to support third party networks", "Resend": "Resend",
"There are advanced notifications which are not shown here": "There are advanced notifications which are not shown here", "Cancel Sending": "Cancel Sending",
"The server may be unavailable or overloaded": "The server may be unavailable or overloaded", "Forward Message": "Forward Message",
"This Room": "This Room", "Unpin Message": "Unpin Message",
"Unable to fetch notification target list": "Unable to fetch notification target list", "Pin Message": "Pin Message",
"Unable to join network": "Unable to join network", "View Source": "View Source",
"Unable to look up room ID from server": "Unable to look up room ID from server", "View Decrypted Source": "View Decrypted Source",
"Unavailable": "Unavailable", "Unhide Preview": "Unhide Preview",
"Unhide Preview": "Unhide Preview", "Permalink": "Permalink",
"Unknown device": "Unknown device", "Quote": "Quote",
"unknown error code": "unknown error code", "Source URL": "Source URL",
"Unnamed room": "Unnamed room", "Failed to set Direct Message status of room": "Failed to set Direct Message status of room",
"Update": "Update", "unknown error code": "unknown error code",
"Uploaded on %(date)s by %(user)s": "Uploaded on %(date)s by %(user)s", "Failed to forget room %(errCode)s": "Failed to forget room %(errCode)s",
"Uploading report": "Uploading report", "All messages (loud)": "All messages (loud)",
"View Decrypted Source": "View Decrypted Source", "All messages": "All messages",
"View Source": "View Source", "Mentions only": "Mentions only",
"What's New": "What's New", "Mute": "Mute",
"What's new?": "What's new?", "Leave": "Leave",
"Waiting for response from server": "Waiting for response from server", "Forget": "Forget",
"When I'm invited to a room": "When I'm invited to a room", "Reject": "Reject",
"World readable": "World readable", "Favourite": "Favourite",
"You cannot delete this image. (%(code)s)": "You cannot delete this image. (%(code)s)", "Low Priority": "Low Priority",
"You cannot delete this message. (%(code)s)": "You cannot delete this message. (%(code)s)", "Direct Chat": "Direct Chat",
"You are not receiving desktop notifications": "You are not receiving desktop notifications", "Sorry, your browser is <b>not</b> able to run Riot.": "Sorry, your browser is <b>not</b> able to run Riot.",
"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", "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.",
"You must specify an event type!": "You must specify an event type!", "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.",
"Thank you!": "Thank you!", "<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.",
"Sunday": "Sunday", "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!",
"Monday": "Monday", "I understand the risks and wish to continue": "I understand the risks and wish to continue",
"Tuesday": "Tuesday", "Couldn't load home page": "Couldn't load home page",
"Wednesday": "Wednesday", "Login": "Login",
"Thursday": "Thursday", "Register": "Register",
"Friday": "Friday", "Invite to this room": "Invite to this room",
"Saturday": "Saturday", "Members": "Members",
"Today": "Today", "Files": "Files",
"Yesterday": "Yesterday", "Notifications": "Notifications",
"OK": "OK", "Rooms": "Rooms",
"Warning": "Warning", "Hide panel": "Hide panel",
"Checking for an update...": "Checking for an update...", "Invite to this community": "Invite to this community",
"Error encountered (%(errorDetail)s).": "Error encountered (%(errorDetail)s).", "Add rooms to this community": "Add rooms to this community",
"Event sent!": "Event sent!", "Failed to get protocol list from Home Server": "Failed to get protocol list from Home Server",
"Event Type": "Event Type", "The Home Server may be too old to support third party networks": "The Home Server may be too old to support third party networks",
"Event Content": "Event Content", "Failed to get public room list": "Failed to get public room list",
"State Key": "State Key", "The server may be unavailable or overloaded": "The server may be unavailable or overloaded",
"No update available.": "No update available.", "Unnamed room": "Unnamed room",
"Downloading update...": "Downloading update...", "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?",
"You need to be using HTTPS to place a screen-sharing call.": "You need to be using HTTPS to place a screen-sharing call.", "Remove %(name)s from the directory?": "Remove %(name)s from the directory?",
"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!", "Remove from Directory": "Remove from Directory",
"Welcome to Riot.im": "Welcome to Riot.im", "remove %(name)s from the directory.": "remove %(name)s from the directory.",
"Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Decentralised, encrypted chat &amp; collaboration powered by [matrix]", "delete the alias.": "delete the alias.",
"Search the room directory": "Search the room directory", "Unable to join network": "Unable to join network",
"Chat with Riot Bot": "Chat with Riot Bot", "Riot does not know how to join a room on this network": "Riot does not know how to join a room on this network",
"Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!", "Room not found": "Room not found",
"General discussion about Matrix and Riot": "General discussion about Matrix and Riot", "Couldn't find a matching Matrix room": "Couldn't find a matching Matrix room",
"Discussion of all things Matrix!": "Discussion of all things Matrix!", "Fetching third party location failed": "Fetching third party location failed",
"Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop chat", "Unable to look up room ID from server": "Unable to look up room ID from server",
"Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk chat", "World readable": "World readable",
"Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk chat", "Guests can join": "Guests can join",
"Matrix technical discussions": "Matrix technical discussions", "Directory": "Directory",
"Running Matrix services": "Running Matrix services", "No rooms to show": "No rooms to show",
"Community-run support for Synapse": "Community-run support for Synapse", "Search for a room": "Search for a room",
"Admin support for Dendrite": "Admin support for Dendrite", "#example": "#example",
"Announcements about Synapse releases": "Announcements about Synapse releases", "more": "more",
"Support for those using and running matrix-appservice-irc": "Support for those using and running matrix-appservice-irc", "Expand panel": "Expand panel",
"Building services on Matrix": "Building services on Matrix", "Collapse panel": "Collapse panel",
"Support for those using the Matrix spec": "Support for those using the Matrix spec", "Filter room names": "Filter room names",
"Design and implementation of E2E in Matrix": "Design and implementation of E2E in Matrix", "Welcome to Riot.im": "Welcome to Riot.im",
"Implementing VR services with Matrix": "Implementing VR services with Matrix", "Decentralised, encrypted chat &amp; collaboration powered by [matrix]": "Decentralised, encrypted chat &amp; collaboration powered by [matrix]",
"Implementing VoIP services with Matrix": "Implementing VoIP services with Matrix", "Search the room directory": "Search the room directory",
"Discussion of the Identity Service API": "Discussion of the Identity Service API", "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!",
"Support for those using, running and writing other bridges": "Support for those using, running and writing other bridges", "Chat with Riot Bot": "Chat with Riot Bot",
"Contributing code to Matrix and Riot": "Contributing code to Matrix and Riot", "Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!",
"Dev chat for the Riot/Web dev team": "Dev chat for the Riot/Web dev team", "General discussion about Matrix and Riot": "General discussion about Matrix and Riot",
"Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team", "Discussion of all things Matrix!": "Discussion of all things Matrix!",
"Co-ordination for Riot/Web translators": "Co-ordination for Riot/Web translators", "Riot/Web &amp; Desktop chat": "Riot/Web &amp; Desktop chat",
"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!", "Riot/iOS &amp; matrix-ios-sdk chat": "Riot/iOS &amp; matrix-ios-sdk chat",
"Failed to change password. Is your password correct?": "Failed to change password. Is your password correct?", "Riot/Android &amp; matrix-android-sdk chat": "Riot/Android &amp; matrix-android-sdk chat",
"You have successfully set a password!": "You have successfully set a password!", "Matrix technical discussions": "Matrix technical discussions",
"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.", "Running Matrix services": "Running Matrix services",
"Continue": "Continue", "Community-run support for Synapse": "Community-run support for Synapse",
"Pin Message": "Pin Message", "Admin support for Dendrite": "Admin support for Dendrite",
"Unpin Message": "Unpin Message", "Announcements about Synapse releases": "Announcements about Synapse releases",
"Jump to message": "Jump to message", "Support for those using and running matrix-appservice-irc": "Support for those using and running matrix-appservice-irc",
"No pinned messages.": "No pinned messages.", "Building services on Matrix": "Building services on Matrix",
"Loading...": "Loading...", "Support for those using the Matrix spec": "Support for those using the Matrix spec",
"Please set a password!": "Please set a password!", "Design and implementation of E2E in Matrix": "Design and implementation of E2E in Matrix",
"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.", "Implementing VR services with Matrix": "Implementing VR services with Matrix",
"You have successfully set a password and an email address!": "You have successfully set a password and an email address!", "Implementing VoIP services with Matrix": "Implementing VoIP services with Matrix",
"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.", "Discussion of the Identity Service API": "Discussion of the Identity Service API",
"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>", "Support for those using, running and writing other bridges": "Support for those using, running and writing other bridges",
"Set Password": "Set Password", "Contributing code to Matrix and Riot": "Contributing code to Matrix and Riot",
"Couldn't load home page": "Couldn't load home page", "Dev chat for the Riot/Web dev team": "Dev chat for the Riot/Web dev team",
"Invite to this group": "Invite to this group", "Dev chat for the Dendrite dev team": "Dev chat for the Dendrite dev team",
"Add room to this group": "Add room to this group" "Co-ordination for Riot/Web translators": "Co-ordination for Riot/Web translators"
} }

View file

@ -219,7 +219,6 @@
"Set Password": "Establecer contrasinal", "Set Password": "Establecer contrasinal",
"Couldn't load home page": "Non se cargou a páxina de inicio", "Couldn't load home page": "Non se cargou a páxina de inicio",
"Invite to this group": "Convidar a este grupo", "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", "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" "Riot/Android &amp; matrix-android-sdk chat": "Chat para Riot/Android &amp; matrix-android-sdk"
} }

View file

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

View file

@ -207,6 +207,5 @@
"Event sent!": "Event verstuurd!", "Event sent!": "Event verstuurd!",
"Event Type": "Event-type", "Event Type": "Event-type",
"Event Content": "Event-inhoud", "Event Content": "Event-inhoud",
"State Key": "Toestandssleutel", "State Key": "Toestandssleutel"
"Add room to this group": "Voeg een ruimte aan deze groep toe"
} }

View file

@ -209,6 +209,5 @@
"Couldn't load home page": "Não foi possível carregar a página inicial", "Couldn't load home page": "Não foi possível carregar a página inicial",
"Invite to this group": "Convidar para este grupo", "Invite to this group": "Convidar para este grupo",
"Filter results": "Filtrar resultados", "Filter results": "Filtrar resultados",
"You must specify an event type!": "Tem que especificar um tipo de evento!", "You must specify an event type!": "Tem que especificar um tipo de evento!"
"Add room to this group": "Adicionar sala a este grupo"
} }

View file

@ -210,6 +210,5 @@
"Event Type": "Tipo do Evento", "Event Type": "Tipo do Evento",
"Event Content": "Conteúdo do Evento", "Event Content": "Conteúdo do Evento",
"State Key": "Chave do Estado", "State Key": "Chave do Estado",
"Invite to this group": "Convide para este grupo", "Invite to this group": "Convide para este grupo"
"Add room to this group": "Adicione sala para este grupo"
} }

View file

@ -207,6 +207,5 @@
"Event Type": "Тип західу", "Event Type": "Тип західу",
"Event Content": "Зміст заходу", "Event Content": "Зміст заходу",
"State Key": "Ключ стану", "State Key": "Ключ стану",
"Invite to this group": "Запросити в цю групу", "Invite to this group": "Запросити в цю групу"
"Add room to this group": "Додати кімнату в цю группу"
} }

View file

@ -38,8 +38,8 @@ body {
-webkit-font-smoothing: subpixel-antialiased; -webkit-font-smoothing: subpixel-antialiased;
} }
div.error { div.error, div.warning {
color: red; color: $warning-color;
} }
h2 { h2 {

View file

@ -19,6 +19,9 @@ limitations under the License.
width: 100%; width: 100%;
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
display: flex;
flex-direction: column;
overflow: hidden;
} }
.mx_GroupView_error { .mx_GroupView_error {
@ -27,15 +30,13 @@ limitations under the License.
.mx_GroupView_header { .mx_GroupView_header {
max-width: 960px; max-width: 960px;
margin: auto; min-height: 70px;
height: 70px;
align-items: center; align-items: center;
display: flex; display: flex;
margin-bottom: 20px;
} }
.mx_GroupView_header_view { .mx_GroupView_header_view {
border-bottom: 1px solid #e5e5e5; border-bottom: 1px solid $primary-hairline-color;
} }
.mx_GroupView_header_avatar, .mx_GroupView_header_info { .mx_GroupView_header_avatar, .mx_GroupView_header_info {
@ -53,6 +54,23 @@ limitations under the License.
pointer-events: none; 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 { .mx_GroupView_avatarPicker {
position: relative; position: relative;
} }
@ -102,10 +120,6 @@ limitations under the License.
border-bottom: 1px solid transparent; border-bottom: 1px solid transparent;
} }
.mx_GroupView_header_name input, .mx_GroupView_header_shortDesc input {
width: 400px;
}
.mx_GroupView_header_shortDesc { .mx_GroupView_header_shortDesc {
vertical-align: bottom; vertical-align: bottom;
float: left; float: left;
@ -133,10 +147,55 @@ limitations under the License.
top: 5px; 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_rooms_header h3 {
margin-bottom: 10px
}
.mx_GroupView_rooms_header .mx_AccessibleButton {
padding-left: 14px;
margin-bottom: 14px;
height: 24px;
}
.mx_GroupView_rooms_header_addButton {
display: inline-block;
}
.mx_GroupView_rooms_header_addButton object {
pointer-events: none;
}
.mx_GroupView_rooms_header_addButton_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 { .mx_GroupView_membershipSection {
margin-left: auto;
margin-right: auto;
margin-bottom: 11px;
color: $greyed-fg-color; color: $greyed-fg-color;
} }
@ -158,6 +217,23 @@ limitations under the License.
margin-left: 8px; margin-left: 8px;
} }
.mx_GroupView_memberSettings_toggle label {
cursor: pointer;
user-select: none;
}
.mx_GroupView_memberSettings h3 {
text-transform: uppercase;
color: $h3-color;
font-weight: 600;
font-size: 13px;
margin-bottom: 10px;
}
.mx_GroupView_memberSettings input {
margin-right: 6px;
}
.mx_GroupView_featuredThings { .mx_GroupView_featuredThings {
margin-top: 20px; margin-top: 20px;
} }
@ -215,7 +291,11 @@ limitations under the License.
display: none; display: none;
} }
.mx_GroupView_editLongDesc { .mx_GroupView_body .gm-scroll-view > *{
width: 100%; margin: 0px 50px 11px 68px;
}
.mx_GroupView_groupDesc textarea {
width: 50%;
height: 150px; height: 150px;
} }

View file

@ -57,3 +57,49 @@ limitations under the License.
.mx_MyGroups_content { .mx_MyGroups_content {
clear: left; clear: left;
} }
.mx_MyGroups_joinedGroups {
display: flex;
flex-direction: row;
flex-flow: wrap;
justify-content: space-around;
}
.mx_MyGroups_joinedGroups .mx_GroupTile {
width: 300px;
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

@ -14,6 +14,14 @@ See the License for the specific language governing permissions and
limitations under the License. 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 */ /* Using a textarea for this element, to circumvent autofill */
.mx_ChatInviteDialog_input, .mx_ChatInviteDialog_input,
.mx_ChatInviteDialog_input:focus .mx_ChatInviteDialog_input:focus

View file

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

View file

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

View file

@ -60,6 +60,10 @@ limitations under the License.
padding-right: 12px; padding-right: 12px;
} }
.mx_RoomHeader_textButton_danger {
background-color: $warning-color;
}
.mx_RoomHeader_cancelButton { .mx_RoomHeader_cancelButton {
order: 2; order: 2;
cursor: pointer; cursor: pointer;

View file

@ -1,127 +1,26 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="utf-8"?>
<svg <!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
xmlns:dc="http://purl.org/dc/elements/1.1/" <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"
xmlns:cc="http://creativecommons.org/ns#" viewBox="0 0 25 25" style="enable-background:new 0 0 25 25;" xml:space="preserve">
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" <style type="text/css">
xmlns:svg="http://www.w3.org/2000/svg" .st4{fill:none;stroke-miterlimit:10;}
xmlns="http://www.w3.org/2000/svg" </style>
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" <g id="icons_people" transform="translate(50.000000, 725.000000)">
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" <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
width="25px" S-44.4-700-37.5-700z"/>
height="25px" <g id="g4240_1_" transform="translate(6.945774,9.0366549)">
viewBox="0 0 25 25" <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"/>
version="1.1" <circle id="circle4244_1_" class="st4" stroke="#FFFFFF" cx="-44.5" cy="-724.7" r="3.2"/>
id="svg4196" </g>
inkscape:version="0.91 r13725" <g>
sodipodi:docname="icons-room.svg"> <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
<metadata 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"/>
id="metadata4216"> <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
<rdf:RDF> 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"/>
<cc:Work <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
rdf:about=""> 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"/>
<dc:format>image/svg+xml</dc:format> <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
<dc:type 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"/>
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> </g>
<dc:title>81230A28-D944-4572-B5DB-C03CAA2B1FCA</dc:title> </g>
</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>
</svg> </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"?> <?xml version="1.0" encoding="utf-8"?>
<svg <!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
xmlns:dc="http://purl.org/dc/elements/1.1/" <svg version="1.1"
xmlns:cc="http://creativecommons.org/ns#" id="svg4196" xmlns="http://www.w3.org/2000/svg" x="0px" y="0px" viewBox="0 0 25 25"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" style="enable-background:new 0 0 25 25;" xml:space="preserve">
xmlns:svg="http://www.w3.org/2000/svg" <style type="text/css">
xmlns="http://www.w3.org/2000/svg" .st1{opacity:0.7;}
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" .st2{fill:none;stroke-linecap:round;}
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" </style>
width="25px" <g id="icons_people" transform="translate(50.000000, 725.000000)">
height="25px" <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
viewBox="0 0 25 25" S-44.4-700-37.5-700z"/>
version="1.1" <g id="text3879" transform="matrix(1.0243293,0,0,0.97624855,-24.996028,0.15844144)">
id="svg4196" <g id="Group-3" transform="translate(14.4375,3.9375)" class="st1">
inkscape:version="0.48.4 r9939" <path id="Line" class="st2" stroke="#ffffff" d="M-23.2-733.8h4.6"/>
sodipodi:docname="icons-room.svg"> <path id="path3142" class="st2" stroke="#ffffff" d="M-20.9-736.2v4.8"/>
<metadata </g>
id="metadata4216"> <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
<rdf:RDF> 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
<cc:Work h2.3l0.5-2.6h-2.3L-15.3-728.7"/>
rdf:about=""> </g>
<dc:format>image/svg+xml</dc:format> </g>
<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>
</svg> </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"?> <?xml version="1.0" encoding="utf-8"?>
<svg <!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
xmlns:dc="http://purl.org/dc/elements/1.1/" <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"
xmlns:cc="http://creativecommons.org/ns#" viewBox="0 0 25 25" style="enable-background:new 0 0 25 25;" xml:space="preserve">
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" <g id="icons_people">
xmlns:svg="http://www.w3.org/2000/svg" <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"/>
xmlns="http://www.w3.org/2000/svg" <g id="text3879" transform="scale(1.0243293,0.97624855)">
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" <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
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 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"/>
width="25px" </g>
height="25px" </g>
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>
</svg> </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'); var request = require('browser-request');
import * as UserSettingsStore from 'matrix-react-sdk/lib/UserSettingsStore'; import * as UserSettingsStore from 'matrix-react-sdk/lib/UserSettingsStore';
import * as languageHandler from 'matrix-react-sdk/lib/languageHandler'; 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'; import url from 'url';
@ -248,13 +250,13 @@ async function loadApp() {
if (!preventRedirect) { if (!preventRedirect) {
if (/iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream) { 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"; window.location = "https://itunes.apple.com/us/app/vector.im/id1083446067";
return; return;
} }
} }
else if (/Android/.test(navigator.userAgent)) { 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"; window.location = "https://play.google.com/store/apps/details?id=im.vector.alpha";
return; return;
} }