From 48fd0ee9f0383c9032780d1345876d18639c16e6 Mon Sep 17 00:00:00 2001 From: Roeland Jago Douma Date: Thu, 20 Apr 2017 16:32:46 +0200 Subject: [PATCH] Allow social sharing to specify if a new window is opened For example mail shares should not open a new window because it looks weird. Signed-off-by: Roeland Jago Douma --- core/js/sharedialoglinkshareview.js | 20 +++++++++++++------- core/js/sharesocialmanager.js | 4 +++- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/core/js/sharedialoglinkshareview.js b/core/js/sharedialoglinkshareview.js index 75e56a23f5..6017714b30 100644 --- a/core/js/sharedialoglinkshareview.js +++ b/core/js/sharedialoglinkshareview.js @@ -85,7 +85,7 @@ '' + '{{#each social}}' + '
  • ' + - '' + + '' + '{{label}}' + '' + @@ -424,7 +424,8 @@ url: url, label: t('core', 'Share to {name}', {name: model.get('name')}), name: model.get('name'), - iconClass: model.get('iconClass') + iconClass: model.get('iconClass'), + newWindow: model.get('newWindow') }); }); @@ -515,14 +516,19 @@ event.stopPropagation(); var url = $(event.currentTarget).data('url'); + var newWindow = $(event.currentTarget).data('window'); $(event.currentTarget).tooltip('hide'); if (url) { - var width = 600; - var height = 400; - var left = (screen.width/2)-(width/2); - var top = (screen.height/2)-(height/2); + if (newWindow === true) { + var width = 600; + var height = 400; + var left = (screen.width / 2) - (width / 2); + var top = (screen.height / 2) - (height / 2); - window.open(url, 'name', 'width=' + width + ', height=' + height + ', top=' + top + ', left=' + left); + window.open(url, 'name', 'width=' + width + ', height=' + height + ', top=' + top + ', left=' + left); + } else { + window.location.href = url; + } } } diff --git a/core/js/sharesocialmanager.js b/core/js/sharesocialmanager.js index c1db48dda6..c0e10a4748 100644 --- a/core/js/sharesocialmanager.js +++ b/core/js/sharesocialmanager.js @@ -36,7 +36,9 @@ /** Name to show in the tooltip */ name: null, /** Icon class to display */ - iconClass: null + iconClass: null, + /** Open in new windows */ + newWindow: true } });