Merge "Fix related change show more calculation"
This commit is contained in:
@@ -227,6 +227,12 @@ limitations under the License.
|
||||
.collapseToggleContainer {
|
||||
display: flex;
|
||||
}
|
||||
#relatedChangesToggle {
|
||||
display: none;
|
||||
}
|
||||
#relatedChangesToggle.showToggle {
|
||||
display: flex;
|
||||
}
|
||||
.collapseToggleContainer gr-button {
|
||||
display: block;
|
||||
}
|
||||
@@ -425,8 +431,7 @@ limitations under the License.
|
||||
</gr-related-changes-list>
|
||||
<div
|
||||
id="relatedChangesToggle"
|
||||
class="collapseToggleContainer"
|
||||
hidden$="[[_computeRelatedChangesToggleHidden(_relatedChangesLoading)]]">
|
||||
class$="collapseToggleContainer [[_computeRelatedChangesToggleClass(_relatedChangesLoading)]]">
|
||||
<gr-button
|
||||
link
|
||||
id="relatedChangesToggleButton"
|
||||
|
||||
@@ -1260,9 +1260,14 @@
|
||||
this.updateStyles();
|
||||
},
|
||||
|
||||
_computeRelatedChangesToggleHidden() {
|
||||
return this._getScrollHeight(this.$.relatedChanges) <=
|
||||
this._getOffsetHeight(this.$.relatedChanges);
|
||||
_computeRelatedChangesToggleClass() {
|
||||
// Prevents showMore from showing when click on related change, since the
|
||||
// line height would be positive, but related changes height is 0.
|
||||
if (!this._getScrollHeight(this.$.relatedChanges)) { return ''; }
|
||||
|
||||
return this._getScrollHeight(this.$.relatedChanges) >
|
||||
(this._getOffsetHeight(this.$.relatedChanges) +
|
||||
this._getLineHeight(this.$.relatedChanges)) ? 'showToggle' : '';
|
||||
},
|
||||
|
||||
_startUpdateCheckTimer() {
|
||||
|
||||
@@ -1172,23 +1172,29 @@ limitations under the License.
|
||||
|
||||
test('relatedChangesToggle shown height greater than changeInfo height',
|
||||
() => {
|
||||
assert.isTrue(element.$.relatedChangesToggle.hasAttribute('hidden'));
|
||||
assert.isFalse(element.$.relatedChangesToggle.classList
|
||||
.contains('showToggle'));
|
||||
sandbox.stub(element, '_getOffsetHeight', () => 50);
|
||||
sandbox.stub(element, '_getScrollHeight', () => 60);
|
||||
sandbox.stub(element, '_getLineHeight', () => 5);
|
||||
sandbox.stub(window, 'matchMedia', () => ({matches: true}));
|
||||
element._relatedChangesLoading = false;
|
||||
assert.isFalse(element.$.relatedChangesToggle.hasAttribute('hidden'));
|
||||
assert.isTrue(element.$.relatedChangesToggle.classList
|
||||
.contains('showToggle'));
|
||||
assert.equal(updateHeightSpy.callCount, 1);
|
||||
});
|
||||
|
||||
test('relatedChangesToggle hidden height less than changeInfo height',
|
||||
() => {
|
||||
assert.isTrue(element.$.relatedChangesToggle.hasAttribute('hidden'));
|
||||
assert.isFalse(element.$.relatedChangesToggle.classList
|
||||
.contains('showToggle'));
|
||||
sandbox.stub(element, '_getOffsetHeight', () => 50);
|
||||
sandbox.stub(element, '_getScrollHeight', () => 40);
|
||||
sandbox.stub(element, '_getLineHeight', () => 5);
|
||||
sandbox.stub(window, 'matchMedia', () => ({matches: true}));
|
||||
element._relatedChangesLoading = false;
|
||||
assert.isTrue(element.$.relatedChangesToggle.hasAttribute('hidden'));
|
||||
assert.isFalse(element.$.relatedChangesToggle.classList
|
||||
.contains('showToggle'));
|
||||
assert.equal(updateHeightSpy.callCount, 1);
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user