diff options
author | Vincent Petry <pvince81@owncloud.com> | 2015-10-26 12:49:52 +0100 |
---|---|---|
committer | Vincent Petry <pvince81@owncloud.com> | 2015-10-26 12:49:52 +0100 |
commit | c64fb46fbf1deab67ffc958584c04357582f8a28 (patch) | |
tree | 588b7d45c89a0b4b7fe759377368daf39512e91e /core/js | |
parent | 7e3b4754f62ae19f162653a3bd17cd2b1e217006 (diff) | |
download | nextcloud-server-c64fb46fbf1deab67ffc958584c04357582f8a28.tar.gz nextcloud-server-c64fb46fbf1deab67ffc958584c04357582f8a28.zip |
Fix share link focus on click
Clicking on the link share must focus and select it
Diffstat (limited to 'core/js')
-rw-r--r-- | core/js/sharedialoglinkshareview.js | 5 | ||||
-rw-r--r-- | core/js/tests/specs/sharedialogviewSpec.js | 23 |
2 files changed, 26 insertions, 2 deletions
diff --git a/core/js/sharedialoglinkshareview.js b/core/js/sharedialoglinkshareview.js index beb8b01c8a8..74afbc9fe02 100644 --- a/core/js/sharedialoglinkshareview.js +++ b/core/js/sharedialoglinkshareview.js @@ -151,8 +151,9 @@ }, onLinkTextClick: function() { - this.focus(); - this.select(); + var $el = this.$el.find('.linkText'); + $el.focus(); + $el.select(); }, onShowPasswordClick: function() { diff --git a/core/js/tests/specs/sharedialogviewSpec.js b/core/js/tests/specs/sharedialogviewSpec.js index 1c05bf21968..a557ff6f03b 100644 --- a/core/js/tests/specs/sharedialogviewSpec.js +++ b/core/js/tests/specs/sharedialogviewSpec.js @@ -237,6 +237,29 @@ describe('OC.Share.ShareDialogView', function() { expect(dialog.$el.find('.linkCheckbox').prop('checked')).toEqual(true); expect(dialog.$el.find('.linkText').val()).toEqual(link); }); + it('autofocus link text when clicked', function() { + $('#allowShareWithLink').val('yes'); + + dialog.render(); + + // Toggle linkshare + dialog.$el.find('.linkCheckbox').click(); + fakeServer.requests[0].respond( + 200, + { 'Content-Type': 'application/json' }, + JSON.stringify({data: {token: 'xyz'}, status: 'success'}) + ); + + var focusStub = sinon.stub($.fn, 'focus'); + var selectStub = sinon.stub($.fn, 'select'); + dialog.$el.find('.linkText').click(); + + expect(focusStub.calledOnce).toEqual(true); + expect(selectStub.calledOnce).toEqual(true); + + focusStub.restore(); + selectStub.restore(); + }); describe('password', function() { var slideToggleStub; |