start MELS expanded if it contains a highlighted/permalinked event.

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
This commit is contained in:
Michael Telatynski 2017-09-14 17:53:47 +01:00
parent 94ec11d3e1
commit f612b1933b
No known key found for this signature in database
GPG key ID: 3F879DA5AD802A5E
2 changed files with 16 additions and 11 deletions

View file

@ -361,8 +361,13 @@ module.exports = React.createClass({
summarisedEvents.push(collapsedMxEv); summarisedEvents.push(collapsedMxEv);
} }
let highlightInMels = false;
// At this point, i = the index of the last event in the summary sequence // At this point, i = the index of the last event in the summary sequence
let eventTiles = summarisedEvents.map((e) => { let eventTiles = summarisedEvents.map((e) => {
if (e.getId() === this.props.highlightedEventId) {
highlightInMels = true;
}
// In order to prevent DateSeparators from appearing in the expanded form // In order to prevent DateSeparators from appearing in the expanded form
// of MemberEventListSummary, render each member event as if the previous // of MemberEventListSummary, render each member event as if the previous
// one was itself. This way, the timestamp of the previous event === the // one was itself. This way, the timestamp of the previous event === the
@ -376,15 +381,13 @@ module.exports = React.createClass({
eventTiles = null; eventTiles = null;
} }
ret.push( ret.push(<MemberEventListSummary key={key}
<MemberEventListSummary events={summarisedEvents}
key={key} onToggle={this._onWidgetLoad} // Update scroll state
events={summarisedEvents} startExpanded={highlightInMels}
onToggle={this._onWidgetLoad} // Update scroll state >
> {eventTiles}
{eventTiles} </MemberEventListSummary>);
</MemberEventListSummary>
);
if (readMarkerInMels) { if (readMarkerInMels) {
ret.push(this._getReadMarkerTile(visible)); ret.push(this._getReadMarkerTile(visible));

View file

@ -34,11 +34,13 @@ module.exports = React.createClass({
threshold: React.PropTypes.number, threshold: React.PropTypes.number,
// Called when the MELS expansion is toggled // Called when the MELS expansion is toggled
onToggle: React.PropTypes.func, onToggle: React.PropTypes.func,
// Whether or not to begin with state.expanded=true
startExpanded: React.PropTypes.bool,
}, },
getInitialState: function() { getInitialState: function() {
return { return {
expanded: false, expanded: Boolean(this.props.startExpanded),
}; };
}, },