Merge branch 'release-1.18'

This commit is contained in:
antelle 2021-05-12 21:40:25 +02:00
commit f59b846643
No known key found for this signature in database
GPG Key ID: 63C9777AAB7C563C
13 changed files with 43 additions and 19 deletions

View File

@ -258,7 +258,7 @@ const AutoType = {
if (entries.length === 0) { if (entries.length === 0) {
if (evt.filter.useUrl) { if (evt.filter.useUrl) {
evt.filter.useUrl = false; evt.filter.useUrl = false;
if (evt.filter.title) { if (evt.filter.title && AppSettingsModel.autoTypeTitleFilterEnabled) {
evt.filter.useTitle = true; evt.filter.useTitle = true;
} }
} }

View File

@ -325,7 +325,7 @@ async function findEntry(request, returnIfOneMatch, filterOptions) {
if (!entries.length) { if (!entries.length) {
if (AppSettingsModel.extensionFocusIfEmpty) { if (AppSettingsModel.extensionFocusIfEmpty) {
filter.useUrl = false; filter.useUrl = false;
if (filter.title) { if (filter.title && AppSettingsModel.autoTypeTitleFilterEnabled) {
filter.useTitle = true; filter.useTitle = true;
entries = filter.getEntries(); entries = filter.getEntries();
if (!entries.length) { if (!entries.length) {

View File

@ -18,6 +18,7 @@ const DefaultAppSettings = {
colorfulIcons: false, // use colorful custom icons instead of grayscale colorfulIcons: false, // use colorful custom icons instead of grayscale
useMarkdown: true, // use Markdown in Notes field useMarkdown: true, // use Markdown in Notes field
directAutotype: true, // if only one matching entry is found, select that one automatically 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 titlebarStyle: 'default', // window titlebar style
lockOnMinimize: true, // lock the app when it's minimized lockOnMinimize: true, // lock the app when it's minimized
lockOnCopy: false, // lock the app after a password was copied lockOnCopy: false, // lock the app after a password was copied

View File

@ -432,7 +432,8 @@
"setGenColorfulIcons": "Colorful custom icons in the list", "setGenColorfulIcons": "Colorful custom icons in the list",
"setGenUseMarkdown": "Markdown in notes", "setGenUseMarkdown": "Markdown in notes",
"setGenUseGroupIconForEntries": "Automatically use group icon for new entries", "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", "setGenFunction": "Function",
"setGenAutoSyncOnClose": "Automatically save and sync on close", "setGenAutoSyncOnClose": "Automatically save and sync on close",
"setGenAutoSyncTimer": "Automatically save and sync periodically", "setGenAutoSyncTimer": "Automatically save and sync periodically",

View File

@ -677,10 +677,10 @@ class FileModel extends Model {
addCustomIcon(iconData) { addCustomIcon(iconData) {
const uuid = kdbxweb.KdbxUuid.random(); 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)), data: kdbxweb.ByteUtils.arrayToBuffer(kdbxweb.ByteUtils.base64ToBytes(iconData)),
lastModified: new Date() lastModified: new Date()
}; });
return uuid.toString(); return uuid.toString();
} }

View File

@ -53,6 +53,7 @@ class SettingsGeneralView extends View {
'change .settings__general-use-markdown': 'changeUseMarkdown', 'change .settings__general-use-markdown': 'changeUseMarkdown',
'change .settings__general-use-group-icon-for-entries': 'changeUseGroupIconForEntries', 'change .settings__general-use-group-icon-for-entries': 'changeUseGroupIconForEntries',
'change .settings__general-direct-autotype': 'changeDirectAutotype', 'change .settings__general-direct-autotype': 'changeDirectAutotype',
'change .settings__general-autotype-title-filter': 'changeAutoTypeTitleFilter',
'change .settings__general-field-label-dblclick-autotype': 'change .settings__general-field-label-dblclick-autotype':
'changeFieldLabelDblClickAutoType', 'changeFieldLabelDblClickAutoType',
'change .settings__general-device-owner-auth': 'changeDeviceOwnerAuth', 'change .settings__general-device-owner-auth': 'changeDeviceOwnerAuth',
@ -135,6 +136,7 @@ class SettingsGeneralView extends View {
useMarkdown: AppSettingsModel.useMarkdown, useMarkdown: AppSettingsModel.useMarkdown,
useGroupIconForEntries: AppSettingsModel.useGroupIconForEntries, useGroupIconForEntries: AppSettingsModel.useGroupIconForEntries,
directAutotype: AppSettingsModel.directAutotype, directAutotype: AppSettingsModel.directAutotype,
autoTypeTitleFilterEnabled: AppSettingsModel.autoTypeTitleFilterEnabled,
fieldLabelDblClickAutoType: AppSettingsModel.fieldLabelDblClickAutoType, fieldLabelDblClickAutoType: AppSettingsModel.fieldLabelDblClickAutoType,
supportsTitleBarStyles: Features.supportsTitleBarStyles, supportsTitleBarStyles: Features.supportsTitleBarStyles,
supportsCustomTitleBarAndDraggableWindow: supportsCustomTitleBarAndDraggableWindow:
@ -431,6 +433,11 @@ class SettingsGeneralView extends View {
AppSettingsModel.directAutotype = directAutotype; AppSettingsModel.directAutotype = directAutotype;
} }
changeAutoTypeTitleFilter(e) {
const autoTypeTitleFilterEnabled = e.target.checked || false;
AppSettingsModel.autoTypeTitleFilterEnabled = autoTypeTitleFilterEnabled;
}
changeFieldLabelDblClickAutoType(e) { changeFieldLabelDblClickAutoType(e) {
const fieldLabelDblClickAutoType = e.target.checked || false; const fieldLabelDblClickAutoType = e.target.checked || false;
AppSettingsModel.fieldLabelDblClickAutoType = fieldLabelDblClickAutoType; AppSettingsModel.fieldLabelDblClickAutoType = fieldLabelDblClickAutoType;

View File

@ -169,6 +169,11 @@
id="settings__general-direct-autotype" {{#if directAutotype}}checked{{/if}} /> id="settings__general-direct-autotype" {{#if directAutotype}}checked{{/if}} />
<label for="settings__general-direct-autotype">{{res 'setGenDirectAutotype'}}</label> <label for="settings__general-direct-autotype">{{res 'setGenDirectAutotype'}}</label>
</div> </div>
<div>
<input type="checkbox" class="settings__input input-base settings__general-autotype-title-filter"
id="settings__general-autotype-title-filter" {{#if autoTypeTitleFilterEnabled}}checked{{/if}} />
<label for="settings__general-autotype-title-filter">{{res 'setGenAutoTypeTitleFilterEnabled'}}</label>
</div>
<div> <div>
<input type="checkbox" class="settings__input input-base settings__general-field-label-dblclick-autotype" <input type="checkbox" class="settings__input input-base settings__general-field-label-dblclick-autotype"
id="settings__general-field-label-dblclick-autotype" {{#if fieldLabelDblClickAutoType}}checked{{/if}} /> id="settings__general-field-label-dblclick-autotype" {{#if fieldLabelDblClickAutoType}}checked{{/if}} />

View File

@ -376,6 +376,9 @@ function restoreMainWindow() {
} }
function showAndFocusMainWindow() { function showAndFocusMainWindow() {
if (appIcon) {
restoreMainWindow();
}
if (mainWindowMaximized) { if (mainWindowMaximized) {
mainWindow.maximize(); mainWindow.maximize();
} else { } else {

View File

@ -1,6 +1,6 @@
{ {
"name": "KeeWeb", "name": "KeeWeb",
"version": "1.18.3", "version": "1.18.4",
"description": "Free cross-platform password manager compatible with KeePass", "description": "Free cross-platform password manager compatible with KeePass",
"main": "main.js", "main": "main.js",
"homepage": "https://keeweb.info", "homepage": "https://keeweb.info",

View File

@ -39,7 +39,7 @@ function installDarwinUpdate(updateFilePath) {
`--app=${appPath}` `--app=${appPath}`
]); ]);
electron.app.exit(0); electron.app.quit();
} }
function installWin32Update(updateFilePath) { function installWin32Update(updateFilePath) {
@ -52,7 +52,7 @@ function installWin32Update(updateFilePath) {
const ps = spawnDetached('cmd'); const ps = spawnDetached('cmd');
ps.stdin.end(`${updateCommand}\nexit\n`, 'utf8', () => { ps.stdin.end(`${updateCommand}\nexit\n`, 'utf8', () => {
electron.app.exit(0); electron.app.quit();
}); });
} }

16
package-lock.json generated
View File

@ -1,11 +1,11 @@
{ {
"name": "keeweb", "name": "keeweb",
"version": "1.18.3", "version": "1.18.4",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"version": "1.18.1", "version": "1.18.3",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/core": "^7.14.0", "@babel/core": "^7.14.0",
@ -14,7 +14,7 @@
"@babel/plugin-proposal-optional-chaining": "^7.13.12", "@babel/plugin-proposal-optional-chaining": "^7.13.12",
"@babel/preset-env": "^7.14.1", "@babel/preset-env": "^7.14.1",
"@fortawesome/fontawesome-free": "^5.15.3", "@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", "@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", "adm-zip": "^0.5.5",
"argon2-browser": "1.15.4", "argon2-browser": "1.15.4",
@ -1567,9 +1567,9 @@
} }
}, },
"node_modules/@keeweb/keeweb-native-messaging-host": { "node_modules/@keeweb/keeweb-native-messaging-host": {
"version": "0.3.3", "version": "0.3.5",
"resolved": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.3/keeweb-native-messaging-host.tgz", "resolved": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.5/keeweb-native-messaging-host.tgz",
"integrity": "sha512-AvHWU0Bwv46Xl6PLyehRRNuZMn+3iWB9zf/YORp4JoJQhQuO8E3XODUadz2gMrZ/irHxC71sQlZG1vAOiUJqdw==", "integrity": "sha512-LitShO2m12x9z/FyNzLpmsA90bz96a45uESyz6oAQvoIqW7axrHtNqb8KHvmY8oz9+CySD3It8y+XuLXXS+gfw==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/@keeweb/keeweb-native-modules": { "node_modules/@keeweb/keeweb-native-modules": {
@ -21888,8 +21888,8 @@
} }
}, },
"@keeweb/keeweb-native-messaging-host": { "@keeweb/keeweb-native-messaging-host": {
"version": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.3/keeweb-native-messaging-host.tgz", "version": "https://github.com/keeweb/keeweb-connect/releases/download/0.3.5/keeweb-native-messaging-host.tgz",
"integrity": "sha512-AvHWU0Bwv46Xl6PLyehRRNuZMn+3iWB9zf/YORp4JoJQhQuO8E3XODUadz2gMrZ/irHxC71sQlZG1vAOiUJqdw==" "integrity": "sha512-LitShO2m12x9z/FyNzLpmsA90bz96a45uESyz6oAQvoIqW7axrHtNqb8KHvmY8oz9+CySD3It8y+XuLXXS+gfw=="
}, },
"@keeweb/keeweb-native-modules": { "@keeweb/keeweb-native-modules": {
"version": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.11.6/keeweb-native-modules.tgz", "version": "https://github.com/keeweb/keeweb-native-modules/releases/download/0.11.6/keeweb-native-modules.tgz",

View File

@ -1,6 +1,6 @@
{ {
"name": "keeweb", "name": "keeweb",
"version": "1.18.3", "version": "1.18.4",
"description": "Free cross-platform password manager compatible with KeePass", "description": "Free cross-platform password manager compatible with KeePass",
"main": "Gruntfile.js", "main": "Gruntfile.js",
"private": true, "private": true,
@ -16,7 +16,7 @@
"@babel/plugin-proposal-optional-chaining": "^7.13.12", "@babel/plugin-proposal-optional-chaining": "^7.13.12",
"@babel/preset-env": "^7.14.1", "@babel/preset-env": "^7.14.1",
"@fortawesome/fontawesome-free": "^5.15.3", "@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", "@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", "adm-zip": "^0.5.5",
"argon2-browser": "1.15.4", "argon2-browser": "1.15.4",
@ -123,7 +123,7 @@
"author": { "author": {
"name": "Antelle", "name": "Antelle",
"email": "antelle.net@gmail.com", "email": "antelle.net@gmail.com",
"url": "http://antelle.net" "url": "https://antelle.net"
}, },
"engines": { "engines": {
"node": ">=10.0" "node": ">=10.0"

View File

@ -1,5 +1,12 @@
Release notes 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) ##### v1.18.3 (2021-05-09)
`-` fix #1804: filling OTP in browser extensions `-` fix #1804: filling OTP in browser extensions
`*` fix #1805: auto-unchecking auto-type filters if nothing found `*` fix #1805: auto-unchecking auto-type filters if nothing found