Commit Graph

58 Commits

Author SHA1 Message Date
Stefan Ceriu
72ce763fd6 Added blurhash and correct sizes to timeline images and animations throughout the app. 2022-04-05 15:09:04 +03:00
Stefan Ceriu
efe8b73c76 Added methods for tracking call durations. 2022-04-05 10:01:16 +03:00
Stefan Ceriu
f96d46068a Caching memberDetailProviders, showing sender display names in home screen last message, cleaner homescreen design. 2022-04-01 16:05:26 +03:00
Stefan Ceriu
453750b422 Introduced the concepts of room summary and event brief. 2022-04-01 14:07:33 +03:00
Stefan Ceriu
e0fb92c3fe Fixed media provider performance. 2022-04-01 10:14:06 +03:00
Stefan Ceriu
c72c338e62 Caching the room proxies and their messages. Improved performance throughout. 2022-03-31 17:45:41 +03:00
Stefan Ceriu
75e7adc72a Resetting stored tokens on any login restoration failures. 2022-03-31 12:35:40 +03:00
Stefan Ceriu
fce039742e Fixed text attributes missing from blockquote components. Added more tests. 2022-03-31 11:23:15 +03:00
Stefan Ceriu
2a54e311c6 Showing day name on timeline separators. 2022-03-31 11:22:49 +03:00
Stefan Ceriu
ef0be0d5c5 Added more timeline view SwiftUI previews. 2022-03-31 11:22:26 +03:00
Stefan Ceriu
80471f308d Removed extra trailing new line from the generated string builder components. Fixed blockquote rendering. 2022-03-30 16:34:43 +03:00
Stefan Ceriu
d655848256 Moved timeline views to the room screen folder. Extracted timeline code into its own component. Added more preview providers. 2022-03-30 16:33:57 +03:00
Stefan Ceriu
270d5d39c0 Added AttributedStringBuilder tests. 2022-03-30 14:32:41 +03:00
Stefan Ceriu
6ebcb9143b Removed manual message sorting after rust sdk fix. 2022-03-29 18:04:19 +03:00
Stefan Ceriu
898d63b5f8 Increased back pagination did reach top trigger offset. 2022-03-29 16:08:46 +03:00
Stefan Ceriu
c259e2bad8 Reduced timeline sender details header size, removed divider. 2022-03-29 16:02:29 +03:00
Stefan Ceriu
a463a623a3 Correct dark theme support with html rendering. 2022-03-29 14:52:21 +03:00
Stefan Ceriu
2d786b49fe Added support for emotes and notices. 2022-03-29 12:13:41 +03:00
Stefan Ceriu
1c780507fb Reimplemented ObjC attributed string handling in swift. 2022-03-28 21:16:18 +03:00
Stefan Ceriu
a85b69b2a4 Fixed link matching regex. 2022-03-25 12:40:18 +02:00
Stefan Ceriu
2656c62e90 Added link detection in plain text (not available ootb in SwiftUI) and support for user, room, event and group identifiers + room aliases. 2022-03-24 16:26:58 +02:00
Stefan Ceriu
c7a97a7ea2 Reload the timeline on content size category changes, dynamic type support. 2022-03-24 14:49:09 +02:00
Stefan Ceriu
c1ecf5cd10 Sort incoming messages client side, workaround backward stream issues (revisit later with new Rust implementation). 2022-03-24 14:48:38 +02:00
Stefan Ceriu
c3e8ce7e47 Initial timeline HTML support. 2022-03-24 14:47:55 +02:00
Stefan Ceriu
9761491513 Filter out space and tombstoned rooms from the rooms list. 2022-03-22 10:27:26 +02:00
Stefan Ceriu
3634472914 Added html body to text messages and rendering through Apple's default NSAttributedString.DocumentType.html parser 2022-03-22 10:09:46 +02:00
Stefan Ceriu
8424f660b8 Added user display names and switched to using an avatar url directly in the homeScreen viewModel for the current user. 2022-03-21 19:35:24 +02:00
Stefan Ceriu
dbedebda4c FIxed full screen loading indicators and toasts not showing up on MacOS. 2022-03-18 14:36:39 +02:00
Stefan Ceriu
ddfefd6ebe Fixed missing PlaceholderAvatarImage. 2022-03-18 14:35:38 +02:00
Stefan Ceriu
ee746e10db Enabled markdown rendering. 2022-03-18 14:07:07 +02:00
Stefan Ceriu
cbb9e416d5 Added protocols for the timeline and memberDetails providers. 2022-03-18 13:48:07 +02:00
Stefan Ceriu
321a669b70 Introduced MemberDetailsProvider, caching user avatar urls and images. Various other tweaks and improvements. 2022-03-18 13:40:25 +02:00
Stefan Ceriu
c3fbb2230e Loading images and user avatars. 2022-03-17 18:09:29 +02:00
Stefan Ceriu
bae8789888 Correctly building image items for the timeline. Missing URL and way to load image. 2022-03-16 18:02:19 +02:00
Stefan Ceriu
471ec3fb12 Fixed annoying WeakDictionary warning.. the right way .. I think. 2022-03-16 18:02:19 +02:00
Stefan Ceriu
36aa097bb1 Adopting different timeline item types exposed from rust. 2022-03-16 18:02:19 +02:00
Stefan Ceriu
9f23404822 Fixed login restoration on MacCatalyst. Added keychain access group entitlement. 2022-03-16 18:02:00 +02:00
Stefan Ceriu
7491b2cd60 Load room details on appearance. Avoid overwhelming the rust runtime and slow down the room timeline loading. 2022-03-16 14:52:25 +02:00
Stefan Ceriu
0611076b3c Updating the room list on the home screen as soon as possible instead of waiting for the first sync response. 2022-03-16 11:42:01 +02:00
Stefan Ceriu
a2748497c7 Rewrote timeline back pagination on top of direct access to the underlying UITableView. 2022-03-15 13:06:50 +02:00
Stefan Ceriu
464cba93a0 Introduced the RoomTimelineViewProvider with different timeline items/views. Added timeline date separators (currently breaks back pagination) 2022-03-11 14:49:09 +02:00
Stefan Ceriu
c0de77f800 Switched to discrete timeline items that directly expose view builders. 2022-03-11 11:27:08 +02:00
Stefan Ceriu
91188fe0ba Better timeline handling, based on improved rust APIs. 2022-03-10 16:45:34 +02:00
Stefan Ceriu
0ca8e9a50f Separated encrypted from non-encrypted rooms. Moved DMs to the bottom. 2022-03-10 16:40:16 +02:00
Stefan Ceriu
863fe13acf Temporary - prevent backwards pagination from scrolling the timline all the way back to the begining of time. 2022-03-08 14:59:27 +02:00
Stefan Ceriu
9eec77e228 Added room timeline screen with live events listening and back pagination. Rearranged project files. 2022-03-08 14:24:33 +02:00
Stefan Ceriu
84b4cf626e Cleaning up user data on logout and passing a weak client delegate wrapper to rust. 2022-03-01 14:05:35 +02:00
Stefan Ceriu
4b5291b3f2 Fetching the room display names in background to avoid blocking the main thread. 2022-02-24 17:45:02 +02:00
Stefan Ceriu
caa42fa898 Add login screen return key actions, made home screen header smaller. 2022-02-22 17:33:03 +02:00
Stefan Ceriu
cfc24cd48d Fix out of bounds crashes on homescreen disclosure groups, stopped logging passwords :D 2022-02-22 14:50:56 +02:00