mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 06:55:59 +00:00
Permalink polish (#2771)
* Fix unbalanced padding. * Animate the scroll to an event when it is already loaded. * Perform the timeline clearance immediately before replacing the items. Hides the empty timeline that was briefly shown. * Make switching timeline more resilient.
This commit is contained in:
@@ -20,7 +20,8 @@ enum RoomTimelineItemFixtures {
|
||||
/// The default timeline items used in Xcode previews etc.
|
||||
static var `default`: [RoomTimelineItemProtocol] = [
|
||||
SeparatorRoomTimelineItem(id: .init(timelineID: "Yesterday"), text: "Yesterday"),
|
||||
TextRoomTimelineItem(id: .random,
|
||||
TextRoomTimelineItem(id: .init(timelineID: ".RoomTimelineItemFixtures.default.0",
|
||||
eventID: "RoomTimelineItemFixtures.default.0"),
|
||||
timestamp: "10:10 AM",
|
||||
isOutgoing: false,
|
||||
isEditable: false,
|
||||
@@ -29,7 +30,8 @@ enum RoomTimelineItemFixtures {
|
||||
sender: .init(id: "", displayName: "Jacob"),
|
||||
content: .init(body: "That looks so good!"),
|
||||
properties: RoomTimelineItemProperties(isEdited: true)),
|
||||
TextRoomTimelineItem(id: .random,
|
||||
TextRoomTimelineItem(id: .init(timelineID: "RoomTimelineItemFixtures.default.1",
|
||||
eventID: "RoomTimelineItemFixtures.default.1"),
|
||||
timestamp: "10:11 AM",
|
||||
isOutgoing: false,
|
||||
isEditable: false,
|
||||
@@ -40,7 +42,8 @@ enum RoomTimelineItemFixtures {
|
||||
properties: RoomTimelineItemProperties(reactions: [
|
||||
AggregatedReaction(accountOwnerID: "me", key: "🙌", senders: [ReactionSender(id: "me", timestamp: Date())])
|
||||
])),
|
||||
TextRoomTimelineItem(id: .random,
|
||||
TextRoomTimelineItem(id: .init(timelineID: "RoomTimelineItemFixtures.default.2",
|
||||
eventID: "RoomTimelineItemFixtures.default.2"),
|
||||
timestamp: "10:11 AM",
|
||||
isOutgoing: false,
|
||||
isEditable: false,
|
||||
@@ -59,7 +62,8 @@ enum RoomTimelineItemFixtures {
|
||||
])
|
||||
])),
|
||||
SeparatorRoomTimelineItem(id: .init(timelineID: "Today"), text: "Today"),
|
||||
TextRoomTimelineItem(id: .random,
|
||||
TextRoomTimelineItem(id: .init(timelineID: "RoomTimelineItemFixtures.default.3",
|
||||
eventID: "RoomTimelineItemFixtures.default.3"),
|
||||
timestamp: "5 PM",
|
||||
isOutgoing: false,
|
||||
isEditable: false,
|
||||
@@ -68,7 +72,8 @@ enum RoomTimelineItemFixtures {
|
||||
sender: .init(id: "", displayName: "Helena"),
|
||||
content: .init(body: "Wow, cool. Ok, lets go the usual place tomorrow?! Is that too soon? Here’s the menu, let me know what you want it’s on me!"),
|
||||
properties: RoomTimelineItemProperties(orderedReadReceipts: [ReadReceipt(userID: "alice", formattedTimestamp: nil)])),
|
||||
TextRoomTimelineItem(id: .random,
|
||||
TextRoomTimelineItem(id: .init(timelineID: "RoomTimelineItemFixtures.default.4",
|
||||
eventID: "RoomTimelineItemFixtures.default.4"),
|
||||
timestamp: "5 PM",
|
||||
isOutgoing: true,
|
||||
isEditable: true,
|
||||
@@ -76,7 +81,8 @@ enum RoomTimelineItemFixtures {
|
||||
isThreaded: false,
|
||||
sender: .init(id: "", displayName: "Bob"),
|
||||
content: .init(body: "And John's speech was amazing!")),
|
||||
TextRoomTimelineItem(id: .random,
|
||||
TextRoomTimelineItem(id: .init(timelineID: "RoomTimelineItemFixtures.default.5",
|
||||
eventID: "RoomTimelineItemFixtures.default.5"),
|
||||
timestamp: "5 PM",
|
||||
isOutgoing: true,
|
||||
isEditable: true,
|
||||
@@ -89,7 +95,8 @@ enum RoomTimelineItemFixtures {
|
||||
ReadReceipt(userID: "bob", formattedTimestamp: nil),
|
||||
ReadReceipt(userID: "charlie", formattedTimestamp: nil),
|
||||
ReadReceipt(userID: "dan", formattedTimestamp: nil)])),
|
||||
TextRoomTimelineItem(id: .random,
|
||||
TextRoomTimelineItem(id: .init(timelineID: "RoomTimelineItemFixtures.default.6",
|
||||
eventID: "RoomTimelineItemFixtures.default.6"),
|
||||
timestamp: "5 PM",
|
||||
isOutgoing: false,
|
||||
isEditable: false,
|
||||
|
||||
Reference in New Issue
Block a user