diff --git a/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata_html.ts b/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata_html.ts index a2f72b7137..3b89a336df 100644 --- a/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata_html.ts +++ b/polygerrit-ui/app/elements/change/gr-change-metadata/gr-change-metadata_html.ts @@ -49,7 +49,15 @@ export const htmlTemplate = html` pointer-events: none; } .hashtagChip { - margin-bottom: var(--spacing-m); + padding-bottom: var(--spacing-s); + } + /* consistent with section .title, .value */ + .hashtagChip.new-change-summary-true:not(last-of-type) { + padding-bottom: var(--spacing-s); + } + .hashtagChip.new-change-summary-true:last-of-type { + display: inline; + vertical-align: top; } #externalStyle { display: block; @@ -340,6 +348,7 @@ export const htmlTemplate = html` placeholder="[[_computeTopicPlaceholder(_topicReadOnly)]]" read-only="[[_topicReadOnly]]" on-changed="_handleTopicChanged" + show-as-edit-pencil="[[_isNewChangeSummaryUiEnabled]]" > @@ -377,7 +386,7 @@ export const htmlTemplate = html` diff --git a/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list.ts b/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list.ts index a2beb36677..254eccac75 100644 --- a/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list.ts +++ b/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list.ts @@ -42,6 +42,7 @@ import {hasOwnProperty} from '../../../utils/common-util'; import {isRemovableReviewer} from '../../../utils/change-util'; import {ReviewerState} from '../../../constants/constants'; import {appContext} from '../../../services/app-context'; +import {KnownExperimentId} from '../../../services/flags/flags'; @customElement('gr-reviewer-list') export class GrReviewerList extends GestureEventListeners( @@ -87,8 +88,21 @@ export class GrReviewerList extends GestureEventListeners( @property({type: Object}) _xhrPromise?: Promise; + @property({type: Boolean}) + _isNewChangeSummaryUiEnabled = false; + private readonly restApiService = appContext.restApiService; + private readonly flagsService = appContext.flagsService; + + /** @override */ + ready() { + super.ready(); + this._isNewChangeSummaryUiEnabled = this.flagsService.isEnabled( + KnownExperimentId.NEW_CHANGE_SUMMARY_UI + ); + } + @computed('ccsOnly') get _addLabel() { return this.ccsOnly ? 'Add CC' : 'Add reviewer'; diff --git a/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list_html.ts b/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list_html.ts index dd18d03e05..ccdcf8d35e 100644 --- a/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list_html.ts +++ b/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list_html.ts @@ -28,6 +28,16 @@ export const htmlTemplate = html` .container { display: block; } + .addReviewer iron-icon { + color: inherit; + --iron-icon-height: 18px; + --iron-icon-width: 18px; + } + gr-button.addReviewer.new-change-summary-true { + --padding: 1px 4px; + vertical-align: top; + top: 1px; + } gr-button { --gr-button: { padding: 0px 0px; @@ -51,6 +61,16 @@ export const htmlTemplate = html` > + and [[_hiddenReviewerCount]] more -
- [[_addLabel]] -
+ `; diff --git a/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list_test.js b/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list_test.js index d29abfcebf..89332c23c7 100644 --- a/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list_test.js +++ b/polygerrit-ui/app/elements/change/gr-reviewer-list/gr-reviewer-list_test.js @@ -36,6 +36,7 @@ suite('gr-reviewer-list tests', () => { }); test('controls hidden on immutable element', () => { + flush(); element.mutable = false; assert.isTrue(element.shadowRoot .querySelector('.controlsContainer').hasAttribute('hidden')); @@ -48,6 +49,7 @@ suite('gr-reviewer-list tests', () => { element.addEventListener('show-reply-dialog', () => { done(); }); + flush(); MockInteractions.tap(element.shadowRoot .querySelector('.addReviewer')); }); diff --git a/polygerrit-ui/app/elements/shared/gr-editable-label/gr-editable-label.ts b/polygerrit-ui/app/elements/shared/gr-editable-label/gr-editable-label.ts index 9e1a5bf63c..3b839cb1f4 100644 --- a/polygerrit-ui/app/elements/shared/gr-editable-label/gr-editable-label.ts +++ b/polygerrit-ui/app/elements/shared/gr-editable-label/gr-editable-label.ts @@ -89,6 +89,9 @@ export class GrEditableLabel extends KeyboardShortcutMixin( @property({type: Number}) readonly _verticalOffset = -30; + @property({type: Boolean}) + showAsEditPencil = false; + /** @override */ ready() { super.ready(); diff --git a/polygerrit-ui/app/elements/shared/gr-editable-label/gr-editable-label_html.ts b/polygerrit-ui/app/elements/shared/gr-editable-label/gr-editable-label_html.ts index 5e36166fdb..7700689867 100644 --- a/polygerrit-ui/app/elements/shared/gr-editable-label/gr-editable-label_html.ts +++ b/polygerrit-ui/app/elements/shared/gr-editable-label/gr-editable-label_html.ts @@ -68,13 +68,32 @@ export const htmlTemplate = html` } --paper-input-container-focus-color: var(--link-color); } + gr-button iron-icon { + color: inherit; + --iron-icon-height: 18px; + --iron-icon-width: 18px; + } + gr-button.new-change-summary-true { + --padding: 1px 4px; + } - + + { setup(async () => { element = basicFixture.instantiate(); elementNoPlaceholder = noPlaceholderFixture.instantiate(); + flush(); label = element.shadowRoot.querySelector('label'); await flush(); @@ -178,6 +179,7 @@ suite('gr-editable-label tests', () => { setup(() => { element = readOnlyFixture.instantiate(); + flush(); label = element.shadowRoot .querySelector('label'); });