diff --git a/CHANGELOG.md b/CHANGELOG.md
index d0586b97e0..fb753d5520 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,13 @@
+Changes in [0.11.4](https://github.com/vector-im/riot-web/releases/tag/v0.11.4) (2017-06-22)
+============================================================================================
+[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.11.3...v0.11.4)
+
+ * Update matrix-js-sdk and react-sdk to fix a regression where the
+ background indexedb worker was disabled, failures to open indexeddb
+ causing the app to fail to start, a race when starting that could break
+ switching to rooms, and the inability to invite users with mixed case
+ usernames.
+
Changes in [0.11.3](https://github.com/vector-im/riot-web/releases/tag/v0.11.3) (2017-06-20)
============================================================================================
[Full Changelog](https://github.com/vector-im/riot-web/compare/v0.11.2...v0.11.3)
diff --git a/electron_app/package.json b/electron_app/package.json
index 8144c20904..2c6e62f2f5 100644
--- a/electron_app/package.json
+++ b/electron_app/package.json
@@ -2,7 +2,7 @@
"name": "riot-web",
"productName": "Riot",
"main": "src/electron-main.js",
- "version": "0.11.3",
+ "version": "0.11.4",
"description": "A feature-rich client for Matrix.org",
"author": "Vector Creations Ltd.",
"dependencies": {
diff --git a/electron_app/src/tray.js b/electron_app/src/tray.js
index 4225e1f6f3..bd07d7d433 100644
--- a/electron_app/src/tray.js
+++ b/electron_app/src/tray.js
@@ -54,33 +54,38 @@ exports.create = function(config) {
},
]);
- trayIcon = new Tray(config.icon_path);
+ const defaultIcon = nativeImage.createFromPath(config.icon_path);
+
+ trayIcon = new Tray(defaultIcon);
trayIcon.setToolTip(config.brand);
trayIcon.setContextMenu(contextMenu);
trayIcon.on('click', toggleWin);
let lastFavicon = null;
global.mainWindow.webContents.on('page-favicon-updated', async function(ev, favicons) {
- let newFavicon = config.icon_path;
- if (favicons && favicons.length > 0 && favicons[0].startsWith('data:')) {
- newFavicon = favicons[0];
+ if (!favicons || favicons.length <= 0 || !favicons[0].startsWith('data:')) {
+ if (lastFavicon !== null) {
+ win.setIcon(defaultIcon);
+ trayIcon.setImage(defaultIcon);
+ lastFavicon = null;
+ }
+ return;
}
// No need to change, shortcut
- if (newFavicon === lastFavicon) return;
- lastFavicon = newFavicon;
+ if (favicons[0] === lastFavicon) return;
+ lastFavicon = favicons[0];
- // if its not default we have to construct into nativeImage
- if (newFavicon !== config.icon_path) {
- newFavicon = nativeImage.createFromDataURL(favicons[0]);
+ let newFavicon = nativeImage.createFromDataURL(favicons[0]);
- if (process.platform === 'win32') {
- try {
- const icoPath = path.join(app.getPath('temp'), 'win32_riot_icon.ico')
- const icoBuf = await pngToIco(newFavicon.toPNG());
- fs.writeFileSync(icoPath, icoBuf);
- newFavicon = icoPath;
- } catch (e) {console.error(e);}
+ // Windows likes ico's too much.
+ if (process.platform === 'win32') {
+ try {
+ const icoPath = path.join(app.getPath('temp'), 'win32_riot_icon.ico');
+ fs.writeFileSync(icoPath, await pngToIco(newFavicon.toPNG()));
+ newFavicon = nativeImage.createFromPath(icoPath);
+ } catch (e) {
+ console.error("Failed to make win32 ico", e);
}
}
diff --git a/package.json b/package.json
index 7c03844871..f51290061d 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
"name": "riot-web",
"productName": "Riot",
"main": "electron_app/src/electron-main.js",
- "version": "0.11.3",
+ "version": "0.11.4",
"description": "A feature-rich client for Matrix.org",
"author": "Vector Creations Ltd.",
"repository": {
@@ -65,8 +65,8 @@
"gfm.css": "^1.1.1",
"highlight.js": "^9.0.0",
"linkifyjs": "^2.1.3",
- "matrix-js-sdk": "0.7.12",
- "matrix-react-sdk": "0.9.6",
+ "matrix-js-sdk": "0.7.13",
+ "matrix-react-sdk": "0.9.7",
"modernizr": "^3.1.0",
"pako": "^1.0.5",
"q": "^1.4.1",
diff --git a/src/components/views/elements/ImageView.js b/src/components/views/elements/ImageView.js
index dd0490ac0c..f9404eacd3 100644
--- a/src/components/views/elements/ImageView.js
+++ b/src/components/views/elements/ImageView.js
@@ -158,7 +158,7 @@ module.exports = React.createClass({
var eventRedact;
if(showEventMeta) {
eventRedact = (
- { _t('Redact') }
+ { _t('Remove') }
);
}
diff --git a/src/components/views/globals/PasswordNagBar.js b/src/components/views/globals/PasswordNagBar.js
index 56eb7bd761..873cefe16f 100644
--- a/src/components/views/globals/PasswordNagBar.js
+++ b/src/components/views/globals/PasswordNagBar.js
@@ -20,7 +20,7 @@ import React from 'react';
import sdk from 'matrix-react-sdk';
import Modal from 'matrix-react-sdk/lib/Modal';
import dis from 'matrix-react-sdk/lib/dispatcher';
-import { _t } from 'matrix-react-sdk/lib/languageHandler';
+import { _t, _tJsx } from 'matrix-react-sdk/lib/languageHandler';
export default React.createClass({
onUpdateClicked: function() {
@@ -49,7 +49,11 @@ export default React.createClass({
alt="Warning"
/>
- { _t("To return to your account in future you need to set a password") }
+ { _tJsx(
+ "To return to your account in future you need to set a password",
+ /(.*?)<\/u>/,
+ (sub) => { return { sub }; },
+ ) }