You've already forked matrix-react-sdk
							
							
				mirror of
				https://github.com/matrix-org/matrix-react-sdk.git
				synced 2025-11-04 11:51:45 +03:00 
			
		
		
		
	Add jump to date functionality to date headers in timeline v2 (#7339)
Fix https://github.com/vector-im/element-web/issues/7677 Utilizes MSC3030: https://github.com/matrix-org/matrix-doc/pull/3030 https://user-images.githubusercontent.com/558581/150060664-79627573-f4fd-497c-b726-dc3485854bd0.png
This commit is contained in:
		@@ -721,8 +721,12 @@ export default class MessagePanel extends React.Component<IProps, IState> {
 | 
			
		||||
 | 
			
		||||
        // do we need a date separator since the last event?
 | 
			
		||||
        const wantsDateSeparator = this.wantsDateSeparator(prevEvent, eventDate);
 | 
			
		||||
        if (wantsDateSeparator && !isGrouped) {
 | 
			
		||||
            const dateSeparator = <li key={ts1}><DateSeparator key={ts1} ts={ts1} /></li>;
 | 
			
		||||
        if (wantsDateSeparator && !isGrouped && this.props.room) {
 | 
			
		||||
            const dateSeparator = (
 | 
			
		||||
                <li key={ts1}>
 | 
			
		||||
                    <DateSeparator key={ts1} roomId={this.props.room.roomId} ts={ts1} />
 | 
			
		||||
                </li>
 | 
			
		||||
            );
 | 
			
		||||
            ret.push(dateSeparator);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -1118,7 +1122,7 @@ class CreationGrouper extends BaseGrouper {
 | 
			
		||||
        if (panel.wantsDateSeparator(this.prevEvent, createEvent.getDate())) {
 | 
			
		||||
            const ts = createEvent.getTs();
 | 
			
		||||
            ret.push(
 | 
			
		||||
                <li key={ts+'~'}><DateSeparator key={ts+'~'} ts={ts} /></li>,
 | 
			
		||||
                <li key={ts+'~'}><DateSeparator key={ts+'~'} roomId={createEvent.getRoomId()} ts={ts} /></li>,
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -1231,7 +1235,7 @@ class RedactionGrouper extends BaseGrouper {
 | 
			
		||||
        if (panel.wantsDateSeparator(this.prevEvent, this.events[0].getDate())) {
 | 
			
		||||
            const ts = this.events[0].getTs();
 | 
			
		||||
            ret.push(
 | 
			
		||||
                <li key={ts+'~'}><DateSeparator key={ts+'~'} ts={ts} /></li>,
 | 
			
		||||
                <li key={ts+'~'}><DateSeparator key={ts+'~'} roomId={this.events[0].getRoomId()} ts={ts} /></li>,
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -1327,7 +1331,7 @@ class MemberGrouper extends BaseGrouper {
 | 
			
		||||
        if (panel.wantsDateSeparator(this.prevEvent, this.events[0].getDate())) {
 | 
			
		||||
            const ts = this.events[0].getTs();
 | 
			
		||||
            ret.push(
 | 
			
		||||
                <li key={ts+'~'}><DateSeparator key={ts+'~'} ts={ts} /></li>,
 | 
			
		||||
                <li key={ts+'~'}><DateSeparator key={ts+'~'} roomId={this.events[0].getRoomId()} ts={ts} /></li>,
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
@@ -1429,7 +1433,7 @@ class HiddenEventGrouper extends BaseGrouper {
 | 
			
		||||
        if (panel.wantsDateSeparator(this.prevEvent, this.events[0].getDate())) {
 | 
			
		||||
            const ts = this.events[0].getTs();
 | 
			
		||||
            ret.push(
 | 
			
		||||
                <li key={ts+'~'}><DateSeparator key={ts+'~'} ts={ts} /></li>,
 | 
			
		||||
                <li key={ts+'~'}><DateSeparator key={ts+'~'} roomId={this.events[0].getRoomId()} ts={ts} /></li>,
 | 
			
		||||
            );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user