Focus and tab between diff preferences inputs Previously, the diff preferences form did not automatically focus to the first textfield and did not allow tabbing between input fields. This change adds autofocus when the overlay is opened and allows for tabbing between the other input fields in the modal. Bug: Issue 4140 Change-Id: If15812bb4404ca4061597755eeaf68d4cae23b3f
diff --git a/polygerrit-ui/app/elements/diff/gr-diff-view/gr-diff-view_test.html b/polygerrit-ui/app/elements/diff/gr-diff-view/gr-diff-view_test.html index 979ed55..14fd2b7 100644 --- a/polygerrit-ui/app/elements/diff/gr-diff-view/gr-diff-view_test.html +++ b/polygerrit-ui/app/elements/diff/gr-diff-view/gr-diff-view_test.html
@@ -36,7 +36,7 @@ <template> <div></div> </template> -</text-fixture> +</test-fixture> <script> suite('gr-diff-view tests', function() { @@ -103,7 +103,9 @@ 'Should navigate to /c/42/'); assert.equal(element.changeViewState.selectedFileIndex, 0); - var showPrefsStub = sinon.stub(element.$.prefsOverlay, 'open'); + var showPrefsStub = sinon.stub(element.$.prefsOverlay, 'open', + function() { return Promise.resolve({}); }); + MockInteractions.pressAndReleaseKeyOn(element, 188); // ',' assert(showPrefsStub.calledOnce); @@ -131,6 +133,26 @@ showStub.restore(); }); + test('saving diff preferences', function() { + var savePrefs = sinon.stub(element, '_handlePrefsSave'); + var cancelPrefs = sinon.stub(element, '_handlePrefsCancel'); + element.$.diffPreferences._handleSave(); + assert(savePrefs.calledOnce); + assert(cancelPrefs.notCalled); + savePrefs.restore(); + cancelPrefs.restore(); + }); + + test('cancelling diff preferences', function() { + var savePrefs = sinon.stub(element, '_handlePrefsSave'); + var cancelPrefs = sinon.stub(element, '_handlePrefsCancel'); + element.$.diffPreferences._handleCancel(); + assert(cancelPrefs.calledOnce); + assert(savePrefs.notCalled); + savePrefs.restore(); + cancelPrefs.restore(); + }); + test('keyboard shortcuts with patch range', function() { element._changeNum = '42'; element._patchRange = {