diff --git a/app/scripts/auto-type/index.js b/app/scripts/auto-type/index.js
index 4375a6f0..e5878bb2 100644
--- a/app/scripts/auto-type/index.js
+++ b/app/scripts/auto-type/index.js
@@ -258,7 +258,7 @@ const AutoType = {
if (entries.length === 0) {
if (evt.filter.useUrl) {
evt.filter.useUrl = false;
- if (evt.filter.title) {
+ if (evt.filter.title && AppSettingsModel.autoTypeTitleFilterEnabled) {
evt.filter.useTitle = true;
}
}
diff --git a/app/scripts/comp/extension/protocol-impl.js b/app/scripts/comp/extension/protocol-impl.js
index 7d172edb..1f449659 100644
--- a/app/scripts/comp/extension/protocol-impl.js
+++ b/app/scripts/comp/extension/protocol-impl.js
@@ -325,7 +325,7 @@ async function findEntry(request, returnIfOneMatch, filterOptions) {
if (!entries.length) {
if (AppSettingsModel.extensionFocusIfEmpty) {
filter.useUrl = false;
- if (filter.title) {
+ if (filter.title && AppSettingsModel.autoTypeTitleFilterEnabled) {
filter.useTitle = true;
entries = filter.getEntries();
if (!entries.length) {
diff --git a/app/scripts/const/default-app-settings.js b/app/scripts/const/default-app-settings.js
index eb8f760b..63df7bb6 100644
--- a/app/scripts/const/default-app-settings.js
+++ b/app/scripts/const/default-app-settings.js
@@ -18,6 +18,7 @@ const DefaultAppSettings = {
colorfulIcons: false, // use colorful custom icons instead of grayscale
useMarkdown: true, // use Markdown in Notes field
directAutotype: true, // if only one matching entry is found, select that one automatically
+ autoTypeTitleFilterEnabled: true, // enable the title filtering in auto-type by default
titlebarStyle: 'default', // window titlebar style
lockOnMinimize: true, // lock the app when it's minimized
lockOnCopy: false, // lock the app after a password was copied
diff --git a/app/scripts/locales/base.json b/app/scripts/locales/base.json
index 9a9bba18..da4c2812 100644
--- a/app/scripts/locales/base.json
+++ b/app/scripts/locales/base.json
@@ -432,7 +432,8 @@
"setGenColorfulIcons": "Colorful custom icons in the list",
"setGenUseMarkdown": "Markdown in notes",
"setGenUseGroupIconForEntries": "Automatically use group icon for new entries",
- "setGenDirectAutotype": "If only one matching entry is found, select that one automatically for Autotype",
+ "setGenDirectAutotype": "If only one matching entry is found, select that one automatically for auto-type",
+ "setGenAutoTypeTitleFilterEnabled": "Filter entries by title in auto-type",
"setGenFunction": "Function",
"setGenAutoSyncOnClose": "Automatically save and sync on close",
"setGenAutoSyncTimer": "Automatically save and sync periodically",
diff --git a/app/scripts/models/file-model.js b/app/scripts/models/file-model.js
index 00ed88d4..5edb7800 100644
--- a/app/scripts/models/file-model.js
+++ b/app/scripts/models/file-model.js
@@ -677,10 +677,10 @@ class FileModel extends Model {
addCustomIcon(iconData) {
const uuid = kdbxweb.KdbxUuid.random();
- this.db.meta.customIcons[uuid] = {
+ this.db.meta.customIcons.set(uuid.id, {
data: kdbxweb.ByteUtils.arrayToBuffer(kdbxweb.ByteUtils.base64ToBytes(iconData)),
lastModified: new Date()
- };
+ });
return uuid.toString();
}
diff --git a/app/scripts/views/settings/settings-general-view.js b/app/scripts/views/settings/settings-general-view.js
index db8d6cd7..f29bbd3f 100644
--- a/app/scripts/views/settings/settings-general-view.js
+++ b/app/scripts/views/settings/settings-general-view.js
@@ -53,6 +53,7 @@ class SettingsGeneralView extends View {
'change .settings__general-use-markdown': 'changeUseMarkdown',
'change .settings__general-use-group-icon-for-entries': 'changeUseGroupIconForEntries',
'change .settings__general-direct-autotype': 'changeDirectAutotype',
+ 'change .settings__general-autotype-title-filter': 'changeAutoTypeTitleFilter',
'change .settings__general-field-label-dblclick-autotype':
'changeFieldLabelDblClickAutoType',
'change .settings__general-device-owner-auth': 'changeDeviceOwnerAuth',
@@ -135,6 +136,7 @@ class SettingsGeneralView extends View {
useMarkdown: AppSettingsModel.useMarkdown,
useGroupIconForEntries: AppSettingsModel.useGroupIconForEntries,
directAutotype: AppSettingsModel.directAutotype,
+ autoTypeTitleFilterEnabled: AppSettingsModel.autoTypeTitleFilterEnabled,
fieldLabelDblClickAutoType: AppSettingsModel.fieldLabelDblClickAutoType,
supportsTitleBarStyles: Features.supportsTitleBarStyles,
supportsCustomTitleBarAndDraggableWindow:
@@ -431,6 +433,11 @@ class SettingsGeneralView extends View {
AppSettingsModel.directAutotype = directAutotype;
}
+ changeAutoTypeTitleFilter(e) {
+ const autoTypeTitleFilterEnabled = e.target.checked || false;
+ AppSettingsModel.autoTypeTitleFilterEnabled = autoTypeTitleFilterEnabled;
+ }
+
changeFieldLabelDblClickAutoType(e) {
const fieldLabelDblClickAutoType = e.target.checked || false;
AppSettingsModel.fieldLabelDblClickAutoType = fieldLabelDblClickAutoType;
diff --git a/app/templates/settings/settings-general.hbs b/app/templates/settings/settings-general.hbs
index 6a997ad5..b2895a45 100644
--- a/app/templates/settings/settings-general.hbs
+++ b/app/templates/settings/settings-general.hbs
@@ -169,6 +169,11 @@
id="settings__general-direct-autotype" {{#if directAutotype}}checked{{/if}} />
+
+
+
+
diff --git a/desktop/main.js b/desktop/main.js
index 8421eb92..ba7a113b 100644
--- a/desktop/main.js
+++ b/desktop/main.js
@@ -376,6 +376,9 @@ function restoreMainWindow() {
}
function showAndFocusMainWindow() {
+ if (appIcon) {
+ restoreMainWindow();
+ }
if (mainWindowMaximized) {
mainWindow.maximize();
} else {
diff --git a/desktop/package.json b/desktop/package.json
index 7db24e21..52888c6b 100644
--- a/desktop/package.json
+++ b/desktop/package.json
@@ -1,6 +1,6 @@
{
"name": "KeeWeb",
- "version": "1.18.3",
+ "version": "1.18.4",
"description": "Free cross-platform password manager compatible with KeePass",
"main": "main.js",
"homepage": "https://keeweb.info",
diff --git a/desktop/scripts/update-installer.js b/desktop/scripts/update-installer.js
index 51dcb0c4..f89fd52c 100644
--- a/desktop/scripts/update-installer.js
+++ b/desktop/scripts/update-installer.js
@@ -39,7 +39,7 @@ function installDarwinUpdate(updateFilePath) {
`--app=${appPath}`
]);
- electron.app.exit(0);
+ electron.app.quit();
}
function installWin32Update(updateFilePath) {
@@ -52,7 +52,7 @@ function installWin32Update(updateFilePath) {
const ps = spawnDetached('cmd');
ps.stdin.end(`${updateCommand}\nexit\n`, 'utf8', () => {
- electron.app.exit(0);
+ electron.app.quit();
});
}
diff --git a/package-lock.json b/package-lock.json
index b0065b1c..caf28fce 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,11 +1,11 @@
{
"name": "keeweb",
- "version": "1.18.3",
+ "version": "1.18.4",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
- "version": "1.18.1",
+ "version": "1.18.3",
"license": "MIT",
"dependencies": {
"@babel/core": "^7.14.0",
@@ -14,7 +14,7 @@
"@babel/plugin-proposal-optional-chaining": "^7.13.12",
"@babel/preset-env": "^7.14.1",
"@fortawesome/fontawesome-free": "^5.15.3",
- "@keeweb/keeweb-native-messaging-host": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.3/keeweb-native-messaging-host.tgz",
+ "@keeweb/keeweb-native-messaging-host": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.5/keeweb-native-messaging-host.tgz",
"@keeweb/keeweb-native-modules": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.11.6/keeweb-native-modules.tgz",
"adm-zip": "^0.5.5",
"argon2-browser": "1.15.4",
@@ -1567,9 +1567,9 @@
}
},
"node_modules/@keeweb/keeweb-native-messaging-host": {
- "version": "0.3.3",
- "resolved": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.3/keeweb-native-messaging-host.tgz",
- "integrity": "sha512-AvHWU0Bwv46Xl6PLyehRRNuZMn+3iWB9zf/YORp4JoJQhQuO8E3XODUadz2gMrZ/irHxC71sQlZG1vAOiUJqdw==",
+ "version": "0.3.5",
+ "resolved": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.5/keeweb-native-messaging-host.tgz",
+ "integrity": "sha512-LitShO2m12x9z/FyNzLpmsA90bz96a45uESyz6oAQvoIqW7axrHtNqb8KHvmY8oz9+CySD3It8y+XuLXXS+gfw==",
"license": "MIT"
},
"node_modules/@keeweb/keeweb-native-modules": {
@@ -21888,8 +21888,8 @@
}
},
"@keeweb/keeweb-native-messaging-host": {
- "version": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.3/keeweb-native-messaging-host.tgz",
- "integrity": "sha512-AvHWU0Bwv46Xl6PLyehRRNuZMn+3iWB9zf/YORp4JoJQhQuO8E3XODUadz2gMrZ/irHxC71sQlZG1vAOiUJqdw=="
+ "version": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.5/keeweb-native-messaging-host.tgz",
+ "integrity": "sha512-LitShO2m12x9z/FyNzLpmsA90bz96a45uESyz6oAQvoIqW7axrHtNqb8KHvmY8oz9+CySD3It8y+XuLXXS+gfw=="
},
"@keeweb/keeweb-native-modules": {
"version": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.11.6/keeweb-native-modules.tgz",
diff --git a/package.json b/package.json
index db0f45a9..5edeb963 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "keeweb",
- "version": "1.18.3",
+ "version": "1.18.4",
"description": "Free cross-platform password manager compatible with KeePass",
"main": "Gruntfile.js",
"private": true,
@@ -16,7 +16,7 @@
"@babel/plugin-proposal-optional-chaining": "^7.13.12",
"@babel/preset-env": "^7.14.1",
"@fortawesome/fontawesome-free": "^5.15.3",
- "@keeweb/keeweb-native-messaging-host": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.3/keeweb-native-messaging-host.tgz",
+ "@keeweb/keeweb-native-messaging-host": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.5/keeweb-native-messaging-host.tgz",
"@keeweb/keeweb-native-modules": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.11.6/keeweb-native-modules.tgz",
"adm-zip": "^0.5.5",
"argon2-browser": "1.15.4",
@@ -123,7 +123,7 @@
"author": {
"name": "Antelle",
"email": "antelle.net@gmail.com",
- "url": "http://antelle.net"
+ "url": "https://antelle.net"
},
"engines": {
"node": ">=10.0"
diff --git a/release-notes.md b/release-notes.md
index 4c340c01..37d5176a 100644
--- a/release-notes.md
+++ b/release-notes.md
@@ -1,5 +1,12 @@
Release notes
-------------
+##### v1.18.4 (2021-05-12)
+`+` #1814: option to disable auto-type title filter by default
+`-` #1808: restore KeeWeb from system tray on extension request
+`-` fix #1810: extension connection on old macOS (10.11)
+`-` fix #1813: custom icon selection
+`-` fix #1811: app doesn't quit during update
+
##### v1.18.3 (2021-05-09)
`-` fix #1804: filling OTP in browser extensions
`*` fix #1805: auto-unchecking auto-type filters if nothing found