From af6ee647da72b23636d522696fe6f429eb74f0bd Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 6 Dec 2016 14:08:44 +0100 Subject: [PATCH 1/3] center arrow for token dropdown Signed-off-by: Robin Appelman --- settings/css/settings.css | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/settings/css/settings.css b/settings/css/settings.css index 3f23fb6680d..a280fa5d10e 100644 --- a/settings/css/settings.css +++ b/settings/css/settings.css @@ -263,6 +263,11 @@ table.nostyle td { padding: 0.2em 0; } padding: 10px; } +#sessions .token-list div.configure:after, +#apppasswords .token-list div.configure:after { + right: 13px; +} + #sessions .token-list tr.active div.configure > *, #apppasswords .token-list tr.active div.configure > *{ margin-top: 5px; From 4f6993a15e82d398cd254c92b15b22307456e63f Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 6 Dec 2016 14:11:54 +0100 Subject: [PATCH 2/3] hide all other token dropdowns when showing one Signed-off-by: Robin Appelman --- settings/js/authtoken_view.js | 1 + 1 file changed, 1 insertion(+) diff --git a/settings/js/authtoken_view.js b/settings/js/authtoken_view.js index 0899b723b2a..ea4c49f5c5c 100644 --- a/settings/js/authtoken_view.js +++ b/settings/js/authtoken_view.js @@ -357,6 +357,7 @@ _onConfigureToken: function (event) { var $target = $(event.target); var $row = $target.closest('tr'); + $('.token-list tr').removeClass('active'); $row.toggleClass('active'); var id = $row.data('id'); }, From ab993ad486ac4e85725d841b3aec2edd39cab694 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 6 Dec 2016 15:43:37 +0100 Subject: [PATCH 3/3] hide token configure menu when clicking outside it Signed-off-by: Robin Appelman --- settings/js/authtoken_view.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/settings/js/authtoken_view.js b/settings/js/authtoken_view.js index ea4c49f5c5c..a81e05cb3ed 100644 --- a/settings/js/authtoken_view.js +++ b/settings/js/authtoken_view.js @@ -217,6 +217,10 @@ })); var $el = $(el); + $('body').on('click', _.bind(_this._hideConfigureToken, _this)); + $el.on('click', '.popovermenu', function(event) { + event.stopPropagation(); + }); $el.on('click', 'a.icon-delete', _.bind(_this._onDeleteToken, _this)); $el.on('click', '.icon-more', _.bind(_this._onConfigureToken, _this)); $el.on('change', 'input.filesystem', _.bind(_this._onSetTokenScope, _this)); @@ -355,13 +359,18 @@ }, _onConfigureToken: function (event) { + event.stopPropagation(); + this._hideConfigureToken(); var $target = $(event.target); var $row = $target.closest('tr'); - $('.token-list tr').removeClass('active'); $row.toggleClass('active'); var id = $row.data('id'); }, + _hideConfigureToken: function() { + $('.token-list tr').removeClass('active'); + }, + _onDeleteToken: function (event) { var $target = $(event.target); var $row = $target.closest('tr');