Skip to content
Merged
Show file tree
Hide file tree
Changes from 23 commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
10be4b2
wip: refactor ThreadSettingsViewModel for SessionListScreen
Nov 26, 2025
53eeed4
wip: refactor convo setting screen
Dec 1, 2025
e1dc173
feat: refactor ThreadSettingsViewModel
Dec 2, 2025
82dc388
refactor on SessionListScreen
Dec 4, 2025
d87d1ff
fix some ui padding issues
Dec 4, 2025
e3b0a4c
feat: inline pro badge in ListItemCell
Dec 4, 2025
9bbab4d
renaming
Dec 4, 2025
2a7527e
clean up and fix compiling issues
Dec 5, 2025
5e1b513
refactor text info accessory
Dec 8, 2025
0d51558
feat: tappable text/image for multiline text
Dec 9, 2025
3a74515
feat: interaction on cell
Dec 9, 2025
4eb814a
fix: list item alignment
Dec 9, 2025
2f77c07
Merge branch 'session-pro-settings' into tableviewcontroller-refactor
Dec 9, 2025
acebfb0
fix merging
Dec 10, 2025
6d8f874
clean up
Dec 10, 2025
0bb2537
fix on tap action and clean up
Dec 10, 2025
23f30cb
clean up
Dec 10, 2025
86de19f
fix unit test
Dec 12, 2025
8ebcc64
Merge branch 'session-pro-settings' into tableviewcontroller-refactor
Dec 12, 2025
e78ec4f
improve profile picture animation
Dec 15, 2025
52ec071
Merge branch 'dev' into tableviewcontroller-refactor
Dec 15, 2025
713e1a6
fix: expandable group description
Dec 15, 2025
6ce273b
Merge branch 'dev' into tableviewcontroller-refactor
Dec 15, 2025
28157fe
clean up .init to make less confusion
Dec 18, 2025
fc76631
clean up
Dec 18, 2025
e9d5917
Merge branch 'dev' into tableviewcontroller-refactor
Dec 19, 2025
7dff9af
Merge branch 'dev' into tableviewcontroller-refactor
Jan 12, 2026
342afb2
feat: SwiftUI responsive to theme change
Jan 12, 2026
4f2e1fd
fix: confirmation modal and accessibility on list items
Jan 14, 2026
ac0c817
fix some threading issues
Jan 14, 2026
ae25358
fix: accessibility ids in ThreadSettingsViewModel
Jan 15, 2026
02d6368
Merge branch 'dev' into tableviewcontroller-refactor
Jan 21, 2026
92f3af3
Merge remote-tracking branch 'upstream/dev' into tableviewcontroller-…
mpretty-cyro Feb 2, 2026
db1fb0d
Fixed issues found by regression testing
mpretty-cyro Feb 3, 2026
f38ea84
Fixed some flaky JobRunner unit tests and some more regression test i…
mpretty-cyro Feb 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions Session.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@
7BFD1A972747689000FB91B9 /* Session-Turn-Server in Resources */ = {isa = PBXBuildFile; fileRef = 7BFD1A962747689000FB91B9 /* Session-Turn-Server */; };
9409433E2C7EB81800D9D2E0 /* WebRTCSession+Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9409433D2C7EB81800D9D2E0 /* WebRTCSession+Constants.swift */; };
940943402C7ED62300D9D2E0 /* StartupError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9409433F2C7ED62300D9D2E0 /* StartupError.swift */; };
940B82D02EE697C70000D142 /* SessionListScreen+ListItemTappableText.swift in Sources */ = {isa = PBXBuildFile; fileRef = 940B82CF2EE697A40000D142 /* SessionListScreen+ListItemTappableText.swift */; };
941375BB2D5184C20058F244 /* HTTPHeader+SessionNetwork.swift in Sources */ = {isa = PBXBuildFile; fileRef = 941375BA2D5184B60058F244 /* HTTPHeader+SessionNetwork.swift */; };
941375BD2D5195F30058F244 /* KeyValueStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 941375BC2D5195F30058F244 /* KeyValueStore.swift */; };
9420CAC62E584B5800F738F6 /* GroupAdminCTA.webp in Resources */ = {isa = PBXBuildFile; fileRef = 9420CAC42E584B5800F738F6 /* GroupAdminCTA.webp */; };
Expand Down Expand Up @@ -205,6 +206,7 @@
945E89D62E9602AB00D8D907 /* SessionProPaymentScreen+Purchase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 945E89D52E96028B00D8D907 /* SessionProPaymentScreen+Purchase.swift */; };
9463794A2E7131070017A014 /* SessionProManagerType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 946379492E71308B0017A014 /* SessionProManagerType.swift */; };
9463794C2E71371F0017A014 /* SessionProPaymentScreen+Models.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9463794B2E7137120017A014 /* SessionProPaymentScreen+Models.swift */; };
946A495F2ED956FE005A6CF2 /* SessionListScreen+ListItemProfilePicture.swift in Sources */ = {isa = PBXBuildFile; fileRef = 946A495E2ED956EC005A6CF2 /* SessionListScreen+ListItemProfilePicture.swift */; };
946F5A732D5DA3AC00A5ADCE /* Punycode in Frameworks */ = {isa = PBXBuildFile; productRef = 946F5A722D5DA3AC00A5ADCE /* Punycode */; };
9473386E2BDF5F3E00B9E169 /* InfoPlist.xcstrings in Resources */ = {isa = PBXBuildFile; fileRef = 9473386D2BDF5F3E00B9E169 /* InfoPlist.xcstrings */; };
9478E84B2EC6DDBB00BFDED0 /* ProCTAModal+Type.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9478E84A2EC6DDB300BFDED0 /* ProCTAModal+Type.swift */; };
Expand Down Expand Up @@ -1615,6 +1617,7 @@
7BFD1A962747689000FB91B9 /* Session-Turn-Server */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "Session-Turn-Server"; sourceTree = "<group>"; };
9409433D2C7EB81800D9D2E0 /* WebRTCSession+Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "WebRTCSession+Constants.swift"; sourceTree = "<group>"; };
9409433F2C7ED62300D9D2E0 /* StartupError.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StartupError.swift; sourceTree = "<group>"; };
940B82CF2EE697A40000D142 /* SessionListScreen+ListItemTappableText.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "SessionListScreen+ListItemTappableText.swift"; sourceTree = "<group>"; };
941375BA2D5184B60058F244 /* HTTPHeader+SessionNetwork.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "HTTPHeader+SessionNetwork.swift"; sourceTree = "<group>"; };
941375BC2D5195F30058F244 /* KeyValueStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyValueStore.swift; sourceTree = "<group>"; };
9420CAC42E584B5800F738F6 /* GroupAdminCTA.webp */ = {isa = PBXFileReference; lastKnownFileType = file; path = GroupAdminCTA.webp; sourceTree = "<group>"; };
Expand Down Expand Up @@ -1672,6 +1675,7 @@
945E89D52E96028B00D8D907 /* SessionProPaymentScreen+Purchase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "SessionProPaymentScreen+Purchase.swift"; sourceTree = "<group>"; };
946379492E71308B0017A014 /* SessionProManagerType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SessionProManagerType.swift; sourceTree = "<group>"; };
9463794B2E7137120017A014 /* SessionProPaymentScreen+Models.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "SessionProPaymentScreen+Models.swift"; sourceTree = "<group>"; };
946A495E2ED956EC005A6CF2 /* SessionListScreen+ListItemProfilePicture.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "SessionListScreen+ListItemProfilePicture.swift"; sourceTree = "<group>"; };
9471CAA72CACFB4E00090FB7 /* GenerateLicenses.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GenerateLicenses.swift; sourceTree = "<group>"; };
9473386D2BDF5F3E00B9E169 /* InfoPlist.xcstrings */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; path = InfoPlist.xcstrings; sourceTree = "<group>"; };
9478E84A2EC6DDB300BFDED0 /* ProCTAModal+Type.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "ProCTAModal+Type.swift"; sourceTree = "<group>"; };
Expand Down Expand Up @@ -3085,10 +3089,12 @@
943B43502EC2AF3D008ABC34 /* ListItemViews */ = {
isa = PBXGroup;
children = (
946A495E2ED956EC005A6CF2 /* SessionListScreen+ListItemProfilePicture.swift */,
943B43572EC2AFCF008ABC34 /* SessionListScreen+ListItemButton.swift */,
943B43552EC2AFAB008ABC34 /* SessionListScreen+ListItemDataMatrix.swift */,
943B43532EC2AF82008ABC34 /* SessionListScreen+ListItemLogoWithPro.swift */,
943B43512EC2AF64008ABC34 /* SessionListScreen+ListItemCell.swift */,
940B82CF2EE697A40000D142 /* SessionListScreen+ListItemTappableText.swift */,
);
path = ListItemViews;
sourceTree = "<group>";
Expand Down Expand Up @@ -6644,6 +6650,7 @@
94B6BB002E3AE83C00E718BB /* QRCodeView.swift in Sources */,
FDB3DA882E24810C00148F8D /* SessionAsyncImage.swift in Sources */,
9499E6032DDD9BF900091434 /* ExpandableLabel.swift in Sources */,
946A495F2ED956FE005A6CF2 /* SessionListScreen+ListItemProfilePicture.swift in Sources */,
94AAB14D2E1F39B500A6FA18 /* ProCTAModal.swift in Sources */,
948615CB2ED7D6E5000A5666 /* NavigatableState.swift in Sources */,
FDE754BA2C9B97B8002A2623 /* UIDevice+Utilities.swift in Sources */,
Expand Down Expand Up @@ -6723,6 +6730,7 @@
C33100282559000A00070591 /* UIView+Utilities.swift in Sources */,
FDE6E99829F8E63A00F93C5D /* Accessibility.swift in Sources */,
9463794C2E71371F0017A014 /* SessionProPaymentScreen+Models.swift in Sources */,
940B82D02EE697C70000D142 /* SessionListScreen+ListItemTappableText.swift in Sources */,
FD37E9CA28A1E4BD003AE748 /* Theme+ClassicLight.swift in Sources */,
943B43622EC3FD85008ABC34 /* ListItemAccessory+Toggle.swift in Sources */,
945E89D42E95D97000D8D907 /* SessionProPaymentScreen+SharedViews.swift in Sources */,
Expand Down
6 changes: 4 additions & 2 deletions Session/Conversations/ConversationVC+Interaction.swift
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,8 @@ extension ConversationVC:
}

@objc func openSettings() {
let viewController = SessionTableViewController(viewModel: ThreadSettingsViewModel(
let viewController = SessionListHostingViewController(
viewModel: ThreadSettingsViewModel(
threadId: self.viewModel.threadData.threadId,
threadVariant: self.viewModel.threadData.threadVariant,
didTriggerSearch: { [weak self] in
Expand All @@ -109,7 +110,8 @@ extension ConversationVC:
}
},
using: self.viewModel.dependencies
)
),
using: self.viewModel.dependencies
)
navigationController?.pushViewController(viewController, animated: true)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -400,4 +400,5 @@ class ThreadDisappearingMessagesSettingsViewModel: SessionTableViewModel, Naviga
}
}

extension String: Differentiable {}
extension String: @retroactive ContentEquatable {}
extension String: @retroactive ContentIdentifiable {}
Loading