From cd164ed1fc02a3931a624a383c29e48a63415c13 Mon Sep 17 00:00:00 2001 From: Ben Rohlfs Date: Tue, 12 May 2020 14:03:57 +0200 Subject: [PATCH] Add a note about hidden messages to experimental Change Log Change-Id: I728dc9982d0866b767487dc0eb67e4d82185b7ba --- .../gr-messages-list-experimental.js | 7 +++-- .../gr-messages-list-experimental_html.js | 31 ++++++++++++------- .../gr-messages-list-experimental_test.html | 16 ++++++---- 3 files changed, 35 insertions(+), 19 deletions(-) diff --git a/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental.js b/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental.js index 6d63b5fb67..fe7039eff2 100644 --- a/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental.js +++ b/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental.js @@ -291,11 +291,14 @@ class GrMessagesListExperimental extends mixinBehaviors( [ this.scrollToMessage(e.detail.id); } - _isVisibleShowAllActivityToggle(messages) { - messages = messages || []; + _isVisibleShowAllActivityToggle(messages = []) { return messages.some(m => !isImportant(m, messages)); } + _computeHiddenEntriesCount(messages = []) { + return messages.filter(m => !isImportant(m, messages)).length; + } + /** * This method is for reporting stats only. */ diff --git a/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental_html.js b/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental_html.js index c52afecc0b..40afd4a019 100644 --- a/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental_html.js +++ b/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental_html.js @@ -45,6 +45,9 @@ export const htmlTemplate = html` align-items: center; display: flex; } + .hiddenEntries { + color: var(--deemphasized-text-color); + } gr-message:not(:last-of-type) { border-bottom: 1px solid var(--border-color); } @@ -61,18 +64,24 @@ export const htmlTemplate = html` }
- - Show all entries - - +
+ +
+ Show all entries + + ([[_computeHiddenEntriesCount(_combinedMessages)]] hidden) + +
+ +
+
You're currently viewing an experimental Change Log view. diff --git a/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental_test.html b/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental_test.html index 38e0dab92a..c2b66862ef 100644 --- a/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental_test.html +++ b/polygerrit-ui/app/elements/change/gr-messages-list/gr-messages-list-experimental_test.html @@ -207,8 +207,8 @@ suite('gr-messages-list-experimental tests', () => { }); test('showAllActivity does not appear when all msgs are important', () => { - assert.isOk(element.shadowRoot - .querySelector('#showAllActivityToggleContainer[hidden]')); + assert.isNotOk(element.shadowRoot + .querySelector('#showAllActivityToggleContainer')); }); test('scroll to message', () => { @@ -430,8 +430,8 @@ suite('gr-messages-list-experimental tests', () => { }); test('hide autogenerated button is not hidden', () => { - assert.isNotOk(element.shadowRoot - .querySelector('#showAllActivityToggle[hidden]')); + const toggle = dom(element.root).querySelector('.showAllActivityToggle'); + assert.isOk(toggle); }); test('one unimportant message is hidden initially', () => { @@ -441,7 +441,9 @@ suite('gr-messages-list-experimental tests', () => { test('unimportant messages hidden after toggle', () => { element._showAllActivity = true; - MockInteractions.tap(element.$.showAllActivityToggle); + const toggle = dom(element.root).querySelector('.showAllActivityToggle'); + assert.isOk(toggle); + MockInteractions.tap(toggle); flushAsynchronousOperations(); const displayedMsgs = dom(element.root).querySelectorAll('gr-message'); assert.equal(displayedMsgs.length, 2); @@ -449,7 +451,9 @@ suite('gr-messages-list-experimental tests', () => { test('unimportant messages shown after toggle', () => { element._showAllActivity = false; - MockInteractions.tap(element.$.showAllActivityToggle); + const toggle = dom(element.root).querySelector('.showAllActivityToggle'); + assert.isOk(toggle); + MockInteractions.tap(toggle); flushAsynchronousOperations(); const displayedMsgs = dom(element.root).querySelectorAll('gr-message'); assert.equal(displayedMsgs.length, 3);