commit 13243093ae33cbe704ddb23e914af5a8f374d0ad
parent 59ec78c5200120133857bf999d75abd0211720f6
Author: RobinLinus <robinlinus@users.noreply.github.com>
Date: Wed, 13 Mar 2019 01:48:53 +0100
Add basic ShareTarget handler
Diffstat:
3 files changed, 32 insertions(+), 3 deletions(-)
diff --git a/client/manifest.json b/client/manifest.json
@@ -18,12 +18,20 @@
"sizes": "192x192",
"type": "image/png"
},{
- "src": "images/logo_transparent_white_512x512.png",
+ "src": "images/logo_transparent_512x512.png",
"sizes": "512x512",
"type": "image/png"
}],
"background_color": "#3367d6",
"start_url": "/",
"display": "minimal-ui",
- "theme_color": "#3367d6"
+ "theme_color": "#3367d6",
+ "share_target": {
+ "action": "/share-target/",
+ "params": {
+ "title": "title",
+ "text": "text",
+ "url": "url"
+ }
+ }
}
\ No newline at end of file
diff --git a/client/scripts/ui.js b/client/scripts/ui.js
@@ -276,10 +276,17 @@ class SendTextDialog extends Dialog {
_onRecipient(recipient) {
this._recipient = recipient;
+ this._handleShareTargetText();
this.show();
this.$text.setSelectionRange(0, this.$text.value.length)
}
+ _handleShareTargetText(){
+ if(!window.shareTargetText) return;
+ this.$text.value = window.shareTargetText;
+ window.shareTargetText = '';
+ }
+
_send(e) {
e.preventDefault();
Events.fire('send-text', {
@@ -439,6 +446,20 @@ class NetworkStatusUI {
}
}
+class WebShareTargetUI {
+ constructor() {
+ const parsedUrl = new URL(window.location);
+ const title = parsedUrl.searchParams.get('title');
+ const text = parsedUrl.searchParams.get('text');
+ const url = parsedUrl.searchParams.get('url');
+
+ let shareTargetText = title ? title : '';
+ shareTargetText += text ? shareTargetText ? ' ' + text : text : '';
+ shareTargetText += url ? shareTargetText ? ' ' + url : url : '';
+ window.shareTargetText = shareTargetText;
+ console.log('Shared Target Text:', '"' + shareTargetText + '"');
+ }
+}
class Snapdrop {
diff --git a/client/service-worker.js b/client/service-worker.js
@@ -1,4 +1,4 @@
-var CACHE_NAME = 'snapdrop-cache-v1.02';
+var CACHE_NAME = 'snapdrop-cache-v1.03';
var urlsToCache = [
'/',
'/styles.css',