From 1181ac14f7cad23bb49ed749bfa60f40d57a977f Mon Sep 17 00:00:00 2001 From: Christoph Wurst Date: Wed, 27 Jul 2016 15:08:24 +0200 Subject: move sharing options into popover menu --- core/js/sharedialogshareelistview.js | 116 +++++++++++++++++++++-------------- 1 file changed, 71 insertions(+), 45 deletions(-) diff --git a/core/js/sharedialogshareelistview.js b/core/js/sharedialogshareelistview.js index 540bafa5c1c..04cd64603d9 100644 --- a/core/js/sharedialogshareelistview.js +++ b/core/js/sharedialogshareelistview.js @@ -1,3 +1,5 @@ +/* global OC, Handlebars */ + /* * Copyright (c) 2015 * @@ -19,7 +21,6 @@ '' - ; + ''; /** * @class OCA.Share.ShareDialogShareeListView @@ -92,8 +110,8 @@ events: { 'click .unshare': 'onUnshare', + 'click .icon-more': 'onToggleMenu', 'click .permissions': 'onPermissionChange', - 'click .showCruds': 'onCrudsToggle', 'click .mailNotification': 'onSendMailNotification' }, @@ -224,6 +242,8 @@ }, onUnshare: function(event) { + event.preventDefault(); + event.stopPropagation(); var self = this; var $element = $(event.target); if (!$element.is('a')) { @@ -237,7 +257,7 @@ } $loading.removeClass('hidden'); - var $li = $element.closest('li'); + var $li = $element.closest('li[data-share-id]'); var shareId = $li.data('share-id'); @@ -252,9 +272,21 @@ return false; }, + onToggleMenu: function(event) { + event.preventDefault(); + event.stopPropagation(); + var $element = $(event.target); + var $li = $element.closest('li[data-share-id]'); + var $menu = $li.find('.popovermenu'); + + OC.showMenu(null, $menu); + }, + onPermissionChange: function(event) { + event.preventDefault(); + event.stopPropagation(); var $element = $(event.target); - var $li = $element.closest('li'); + var $li = $element.closest('li[data-share-id]'); var shareId = $li.data('share-id'); // adjust checkbox states @@ -278,15 +310,9 @@ this.model.updateShare(shareId, {permissions: permissions}); }, - onCrudsToggle: function(event) { - var $target = $(event.target); - $target.closest('li').find('.cruds').toggleClass('hidden'); - return false; - }, - onSendMailNotification: function(event) { var $target = $(event.target); - var $li = $(event.target).closest('li'); + var $li = $(event.target).closest('li[data-share-id]'); var shareType = $li.data('share-type'); var shareWith = $li.attr('data-share-with'); -- cgit v1.2.3