diff --git a/README.md b/README.md
index ae1f9b95..8b0e8a53 100755
--- a/README.md
+++ b/README.md
@@ -11,7 +11,8 @@ Be sure to run `npm i` before calling any commands below
| web | `npm run build` |
| electron | `npm run build:electron` |
| chrome | `npm run build:extension:chrome` |
-| firefox | `npm run build:extension:firefox` | Saved to `dist/firefox/prod`
+| edge | `npm run build:extension:edge` |
+| firefox | `npm run build:extension:firefox` | Saved to `dist/firefox/prod`
| opera | `npm run build:extension:opera` |
| safari | `npm run build:extension:safari` | Then open **build/xcode** project
diff --git a/build/extension.js b/build/extension.js
index a906398c..191046f3 100644
--- a/build/extension.js
+++ b/build/extension.js
@@ -14,6 +14,7 @@ module.exports = (env={}, args={}) => {
switch(env.vendor) {
case 'chrome': env.sentry = { urlPrefix: 'chrome-extension://ldgfbffkinooeloadekpmfoklnobpien/' }; break
+ case 'edge': env.sentry = { urlPrefix: 'chrome-extension://lpngnnjemnkjmgpoolldhiejhkmmgfge/' }; break
case 'firefox': env.sentry = { disabled: true }; break //ignored, because reviewers complain
case 'opera': env.sentry = { urlPrefix: 'chrome-extension://omkjjddnkfagilfgmbmeeffkljlpaglj/' }; break
case 'safari': env.sentry = { urlPrefix: 'safari-web-extension://F54B64D3-0D2D-4C9C-BDF5-8671C44683E7/' }; break
diff --git a/build/xcode/Save to Raindrop.io/App/Info.plist b/build/xcode/Save to Raindrop.io/App/Info.plist
index 6fc4ac46..28c1a830 100644
--- a/build/xcode/Save to Raindrop.io/App/Info.plist
+++ b/build/xcode/Save to Raindrop.io/App/Info.plist
@@ -17,7 +17,7 @@
CFBundlePackageType
$(PRODUCT_BUNDLE_PACKAGE_TYPE)
CFBundleShortVersionString
- 5.6.41
+ 5.6.50
CFBundleURLTypes
@@ -32,7 +32,7 @@
CFBundleVersion
- 354
+ 360
LSApplicationCategoryType
public.app-category.productivity
LSMinimumSystemVersion
diff --git a/build/xcode/Save to Raindrop.io/Extension/Info.plist b/build/xcode/Save to Raindrop.io/Extension/Info.plist
index ab92b75a..f6d52643 100644
--- a/build/xcode/Save to Raindrop.io/Extension/Info.plist
+++ b/build/xcode/Save to Raindrop.io/Extension/Info.plist
@@ -17,9 +17,9 @@
CFBundlePackageType
$(PRODUCT_BUNDLE_PACKAGE_TYPE)
CFBundleShortVersionString
- 5.6.41
+ 5.6.50
CFBundleVersion
- 354
+ 360
LSMinimumSystemVersion
$(MACOSX_DEPLOYMENT_TARGET)
NSExtension
diff --git a/build/xcode/Save to Raindrop.io/Save to Raindrop.io.xcodeproj/project.pbxproj b/build/xcode/Save to Raindrop.io/Save to Raindrop.io.xcodeproj/project.pbxproj
index 6a8d1152..dcd642ea 100644
--- a/build/xcode/Save to Raindrop.io/Save to Raindrop.io.xcodeproj/project.pbxproj
+++ b/build/xcode/Save to Raindrop.io/Save to Raindrop.io.xcodeproj/project.pbxproj
@@ -441,7 +441,7 @@
CODE_SIGN_ENTITLEMENTS = Extension/Extension.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
- CURRENT_PROJECT_VERSION = 354;
+ CURRENT_PROJECT_VERSION = 360;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 7459JWM5TY;
ENABLE_HARDENED_RUNTIME = YES;
@@ -452,7 +452,7 @@
"@executable_path/../../../../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
- MARKETING_VERSION = 5.6.41;
+ MARKETING_VERSION = 5.6.50;
PRODUCT_BUNDLE_IDENTIFIER = io.raindrop.safari.extension;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
@@ -467,7 +467,7 @@
CODE_SIGN_ENTITLEMENTS = Extension/Extension.entitlements;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
- CURRENT_PROJECT_VERSION = 354;
+ CURRENT_PROJECT_VERSION = 360;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 7459JWM5TY;
ENABLE_HARDENED_RUNTIME = YES;
@@ -478,7 +478,7 @@
"@executable_path/../../../../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
- MARKETING_VERSION = 5.6.41;
+ MARKETING_VERSION = 5.6.50;
PRODUCT_BUNDLE_IDENTIFIER = io.raindrop.safari.extension;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
@@ -497,7 +497,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
- CURRENT_PROJECT_VERSION = 354;
+ CURRENT_PROJECT_VERSION = 360;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 7459JWM5TY;
ENABLE_HARDENED_RUNTIME = YES;
@@ -508,7 +508,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
- MARKETING_VERSION = 5.6.41;
+ MARKETING_VERSION = 5.6.50;
PRODUCT_BUNDLE_IDENTIFIER = io.raindrop.safari;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
@@ -525,7 +525,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
- CURRENT_PROJECT_VERSION = 354;
+ CURRENT_PROJECT_VERSION = 360;
DEAD_CODE_STRIPPING = YES;
DEVELOPMENT_TEAM = 7459JWM5TY;
ENABLE_HARDENED_RUNTIME = YES;
@@ -536,7 +536,7 @@
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)";
- MARKETING_VERSION = 5.6.41;
+ MARKETING_VERSION = 5.6.50;
PRODUCT_BUNDLE_IDENTIFIER = io.raindrop.safari;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
diff --git a/build/xcode/Save to Raindrop.io/Save to Raindrop.io.xcodeproj/project.xcworkspace/xcuserdata/exentrich.xcuserdatad/UserInterfaceState.xcuserstate b/build/xcode/Save to Raindrop.io/Save to Raindrop.io.xcodeproj/project.xcworkspace/xcuserdata/exentrich.xcuserdatad/UserInterfaceState.xcuserstate
index 7449c9c2..4f3b71fa 100644
Binary files a/build/xcode/Save to Raindrop.io/Save to Raindrop.io.xcodeproj/project.xcworkspace/xcuserdata/exentrich.xcuserdatad/UserInterfaceState.xcuserstate and b/build/xcode/Save to Raindrop.io/Save to Raindrop.io.xcodeproj/project.xcworkspace/xcuserdata/exentrich.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/package.json b/package.json
index 2d58d926..6c5ecdcc 100755
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "app",
- "version": "5.6.46",
+ "version": "5.6.50",
"description": "All-in-one bookmark manager",
"author": "Rustem Mussabekov",
"license": "MIT",
@@ -15,6 +15,7 @@
"build": "webpack --config build/web.js --env production",
"build:extension": "npm run build:extension:chrome && npm run build:extension:firefox && npm run build:extension:opera && npm run build:extension:safari && npm run build:extension:safari-ios",
"build:extension:chrome": "webpack --config build/extension.js --env production --env vendor=chrome",
+ "build:extension:edge": "webpack --config build/extension.js --env production --env vendor=edge",
"build:extension:firefox": "webpack --config build/extension.js --env production --env vendor=firefox",
"build:extension:opera": "webpack --config build/extension.js --env production --env vendor=opera",
"build:extension:safari": "webpack --config build/extension.js --env production --env vendor=safari && cd 'build/xcode/Save to Raindrop.io' && ./version.sh",
diff --git a/src/assets/target/extension/welcome/index.html b/src/assets/target/extension/welcome/index.html
index 921e6611..9e0063eb 100644
--- a/src/assets/target/extension/welcome/index.html
+++ b/src/assets/target/extension/welcome/index.html
@@ -43,18 +43,10 @@
Collect & organize web pages
Pin in Toolbar
or press
-
-
-
-
-
-
-
-
-
+
+
+
+
@@ -96,16 +88,9 @@ Collection always at hand
or press
-
-
-
-
-
-
-
-
+
+
+
@@ -121,16 +106,9 @@ Open Raindrop.io Sidebar
Or press
-
-
-
-
-
-
-
-
+
+
+
In sidebar you can browse your collection, search and add new items.
@@ -168,7 +146,7 @@ Address Bar Integration
-
+
@@ -181,17 +159,19 @@
Save important passages
and press
-
-
-
-
+
+
+
+
+
+
-
-
+
+
+
+
+
diff --git a/src/target/extension/background/commands.js b/src/target/extension/background/commands.js
index 86db6538..6ad32751 100644
--- a/src/target/extension/background/commands.js
+++ b/src/target/extension/background/commands.js
@@ -32,9 +32,6 @@ async function onCommand(command, tab) {
active: true
})
- case 'open_app':
- return open('/', { width: 1280, height: 800 })
-
case 'execute_side_panel': {
const { windowId } = tab
return browser.sidePanel.open({ windowId })
diff --git a/src/target/extension/hotkeys.js b/src/target/extension/hotkeys.js
index f0be0276..86a4f0a1 100644
--- a/src/target/extension/hotkeys.js
+++ b/src/target/extension/hotkeys.js
@@ -4,7 +4,7 @@ export const hotkeys = {
async getAll() {
try{
const commands = await browser.commands.getAll()
- if (Array.isArray(commands) && commands.length)
+ if (commands?.[0]?.name)
return commands
} catch(e){
console.log(e)
@@ -17,11 +17,11 @@ export const hotkeys = {
const { os } = await browser.runtime.getPlatformInfo()
return Object.entries(commands)
- .map(([name, { suggested_key, description }])=>{
- var shortcut = suggested_key ? (suggested_key[os] || suggested_key.default || '') : ''
+ .map(([name, { suggested_key={}, description='' }])=>{
+ var shortcut = suggested_key?.[os] || suggested_key?.default || ''
if (os == 'mac')
- shortcut = shortcut.replace(/^Ctrl/, '⌘')
+ shortcut = shortcut.replace(/^Ctrl/, '⌘').replace(/^MacCtrl/, '⌃')
return {
name,
@@ -48,6 +48,7 @@ export const hotkeys = {
return 'https://support.mozilla.org/en-US/kb/manage-extension-shortcuts-firefox'
case 'chrome':
+ case 'edge':
case 'opera':
return 'chrome://extensions/shortcuts'
}
diff --git a/src/target/extension/manifest/index.js b/src/target/extension/manifest/index.js
index e8709f07..bae9b2a5 100644
--- a/src/target/extension/manifest/index.js
+++ b/src/target/extension/manifest/index.js
@@ -65,7 +65,7 @@ module.exports = ({ vendor, production=false }, l) => {
'index.html?action',
default_icon: {
//chrome based icon
- ...(vendor == 'chrome' || vendor == 'opera' ? {
+ ...(vendor == 'chrome' || vendor == 'edge' || vendor == 'opera' ? {
16: file(l, '../../../assets/target/extension/action_chrome_16.png'),
24: file(l, '../../../assets/target/extension/action_chrome_24.png'),
32: file(l, '../../../assets/target/extension/action_chrome_32.png')
@@ -93,7 +93,7 @@ module.exports = ({ vendor, production=false }, l) => {
'activeTab',
'scripting',
'storage',
- ...(vendor == 'chrome' ? ['sidePanel'] : []),
+ ...(vendor == 'chrome' || vendor == 'edge' ? ['sidePanel'] : []),
...(vendor == 'safari-ios' ? ['tabs'] : [])
],
@@ -129,26 +129,31 @@ module.exports = ({ vendor, production=false }, l) => {
commands: {
_execute_action: {
suggested_key: {
- default: 'Ctrl+Shift+E'
+ default: 'Alt+R',
+ mac: 'MacCtrl+R'
}
},
save_page: {
- suggested_key: {
- default: vendor == 'firefox' ? 'Alt+Shift+S' : 'Ctrl+Shift+S'
+ suggested_key: vendor == 'chrome' ? {
+ default: 'Ctrl+Shift+S'
+ } : {
+ default: 'Alt+X',
+ mac: 'MacCtrl+X'
},
description: '__MSG_savePageOrHighlight__'
},
open_raindrop: {
description: '__MSG_openRaindrop__',
- },
- open_app: {
- description: '__MSG_openApp__',
+ suggested_key: {
+ default: 'Alt+A',
+ mac: 'MacCtrl+A'
+ }
},
- ...(vendor == 'chrome' ? {
+ ...(vendor == 'chrome' || vendor == 'edge' ? {
execute_side_panel: {
suggested_key: {
- default: 'Alt+Shift+B'
+ default: 'Ctrl+Period'
},
description: '__MSG_openSidePanel__'
}
@@ -157,7 +162,7 @@ module.exports = ({ vendor, production=false }, l) => {
...(vendor == 'firefox' || vendor == 'opera' ? {
_execute_sidebar_action: {
suggested_key: {
- default: 'Alt+Shift+B'
+ default: 'Ctrl+Period'
},
description: '__MSG_openSidePanel__'
}
@@ -165,7 +170,7 @@ module.exports = ({ vendor, production=false }, l) => {
},
//sidebar
- ...(vendor == 'chrome' ? {
+ ...(vendor == 'chrome' || vendor == 'edge' ? {
side_panel: {
default_path: 'sidepanel.html'
}
diff --git a/src/target/extension/manifest/locales.js b/src/target/extension/manifest/locales.js
index 61b31f77..9b7bba27 100644
--- a/src/target/extension/manifest/locales.js
+++ b/src/target/extension/manifest/locales.js
@@ -38,7 +38,7 @@ module.exports = ({ emitFile })=>{
description: ''
},
savePageOrHighlight: {
- message: s(lang, 'newBookmark') + ' / ' + s(lang, 'save') + ' ' + s(lang, 'highlights').toLowerCase(),
+ message: s(lang, 'bookmark') + ' / ' + s(lang, 'save') + ' ' + s(lang, 'highlights').toLowerCase(),
description: ''
},
saveLink: {