Commit graph

613 commits

Author SHA1 Message Date
Doug
919fd0ee3a Add an AnalyticsService to handle account data. 2021-12-16 17:01:23 +00:00
Doug
1df8514fcd Fix mutability on AnalyticsSettings. 2021-12-16 17:01:23 +00:00
Doug
a5abff7eee Address most PR comments.
Update Podfile.lock
2021-12-16 17:01:23 +00:00
Doug
b57e537b4b Leave analytics client running on sign out.
Only identify with a running session.
2021-12-16 17:01:22 +00:00
Doug
1ff7170f98 Add tap/click event. Improve Swift/ObjC bridging. 2021-12-16 17:01:22 +00:00
Doug
59486c824a Add accessibility labels/hints. Fix tests. Show analytics prompt to everyone. 2021-12-16 17:01:22 +00:00
Doug
a2aa01f06c Move string formatting to Tools.
Revert contacts tracking from MatrixKit.
Final tweaks before PR.
2021-12-16 17:01:22 +00:00
Doug
9d4a1d96d6 Migrate doug/5035_posthog from MatrixKit. 2021-12-16 17:01:22 +00:00
Doug
932eca82cc Support link/html in analytics prompt strings.
Show the new prompt to everyone, even if they previously opted out.
Add docs to Analytics.
2021-12-16 17:01:22 +00:00
Doug
e2bae8893b Abstract PostHog out of the Analytics client. 2021-12-16 16:59:45 +00:00
Doug
3a9d35a50b Add AnalyticsScreenTimer and track more screens.
Update Analytics with new methods in MXAnalyticsDelegate.
2021-12-16 16:59:45 +00:00
Doug
1ce3387429 Use custom generated Swift events.
Add analytics PerformanceTimer event.
2021-12-16 16:59:45 +00:00
Doug
3e0e357384 Update MXAnalyticsDelegate 2021-12-16 16:59:45 +00:00
Doug
7bdc146b82 Use matrix-analytics-events generated stubs (locally for now).
Track screens, removing any that aren't part of the schema.
2021-12-16 16:59:45 +00:00
Doug
46d264477d Remove cocoapods-keys. Use UUID for analytics.
Make configuration optional.
2021-12-16 16:59:45 +00:00
Doug
23555b00fd Add specific methods to track analytics and test generated event types. 2021-12-16 16:59:45 +00:00
Doug
50dea9843b Update to PostHog 1.4.4 2021-12-16 16:59:45 +00:00
Doug
63e9dcde55 Add missed MXLogger calls in Analytics. 2021-12-16 16:59:45 +00:00
Doug
2b80c0437a Don't read analytics opt in status from account data.
Update PostHog to 1.4.3.

Add tests for prompt type.
2021-12-16 16:59:45 +00:00
Doug
6f94303cdc Begin migration from Matomo to PostHog
Add CocoaPods-Keys.
2021-12-16 16:59:26 +00:00
Gil Eluard
f4abcb2e22 Let people know when rooms have moved element-ios
- Added coach message view
2021-12-15 14:51:26 +01:00
David Langley
2fbd129456 Add first refresh token implementation pass. Account credential persistence and NotificationService handling. 2021-12-09 17:28:56 +00:00
ismailgulek
e3a47a59f9
Merge branch 'develop' into ismail/5068_start_thread 2021-12-09 15:25:14 +03:00
Stefan Ceriu
d5982e813b vector-im/element-ios/issues/5114 - Polls in the timeline. 2021-12-09 09:37:02 +02:00
SBiOSoftWhare
3d0c77ef30 Merge develop into steve/5020_matrixkit_merge 2021-11-30 16:16:52 +01:00
SBiOSoftWhare
4081da3ebc Update all Objective-C MatrixKit imports to handle new location. 2021-11-30 16:09:53 +01:00
ismailgulek
d935ca3fd6
Merge branch 'develop' into ismail/5068_start_thread 2021-11-30 01:33:51 +03:00
SBiOSoftWhare
3e6df9749c Remove MatrixKit import from Swift files. 2021-11-29 17:50:30 +01:00
SBiOSoftWhare
867158f905 Remove unnecessary MatrixKit imports. 2021-11-29 17:45:35 +01:00
David Langley
7317f4c760
Update Riot/Managers/PushNotification/PushNotificationService.m
Co-authored-by: ismailgulek <ismailgulek@users.noreply.github.com>
2021-11-26 14:57:58 +00:00
David Langley
002601d767 Restore the pushkit token after login/logout when configuring PushKit 2021-11-26 12:52:40 +00:00
ismailgulek
8723a69528
Merge branch 'develop' into ismail/5068_start_thread 2021-11-19 00:23:24 +03:00
Doug
e324767d7d Merge branch 'master' into develop
# Conflicts:
#	Podfile.lock
#	Riot/Modules/Room/RoomViewController.m
2021-11-17 17:36:44 +00:00
ismailgulek
a319f076b1
Merge branch 'develop' into ismail/5068_start_thread 2021-11-11 21:43:16 +03:00
ismailgulek
093f729eca
Disable threads by default 2021-11-11 12:47:54 +03:00
Stefan Ceriu
30ff8a65fb vector-im/element-ios/issues/5114 - Poll creation screen
- added input toolbar poll creation action.
- reordered input toolbar actions as per designs.
- added multiline text field and extracted common components.
2021-11-11 11:24:28 +02:00
ismailgulek
b77d8d9304
Introduce lab setting for threads 2021-11-09 14:44:27 +03:00
Phl-Pro
8246dc93e0
Merge branch 'develop' into phlpro/4722_objc_headers 2021-11-05 14:41:36 +01:00
SBiOSoftWhare
39c94682a9 Merge branch 'hotfix/1.6.7' into hotfix/1.6.7_2 2021-11-03 17:22:21 +01:00
Gil Eluard
30fad9e3ca Set Show All Rooms to true by default #5076 2021-11-02 07:00:12 +01:00
SBiOSoftWhare
41eca48408 Weakify strong reference delegates. 2021-10-29 12:23:06 +02:00
Philippe Loriaux
c6c3eaaec1 Improve the Obj-C Generated Interface Header Name definition 2021-10-26 17:42:33 +02:00
Doug
a7395dbf25 Address Steve's comments. 2021-10-20 19:29:23 +01:00
Doug
7a096a7df5 Use footers for app and discovery information.
Remove Invite Friends button from settings.
Reorganise Advanced and Other settings.
Rename Other to About.
2021-10-20 17:40:39 +01:00
ismailgulek
61ce79e50a
Merge branch 'develop' into ismail/4384_room_summary_store 2021-10-19 16:40:34 +03:00
ismailgulek
a65a946c17
Introduce RiotSettings.showAllRoomsInHomeSpace and adapt changes in filter options 2021-10-19 16:36:43 +03:00
Stefan Ceriu
b6514349fb vector-im/element-ios/issues/5009 - Refactored share extension and started using the shared code directly in the main application. 2021-10-18 16:40:48 +03:00
ismailgulek
ef764ef3a8
Merge branch 'develop' into ismail/4384_room_summary_store 2021-10-15 12:07:21 +03:00
Doug
d565800f72 Re-enable link detection in clearStore instead of via NotificationCenter. 2021-10-14 14:24:01 +01:00
Doug
d9217a053d Add observer to re-enable link detection when signing out of an account. 2021-10-13 16:01:19 +01:00
Doug
60b31a8cbe Use MXError and MXHTTPOperation where possible. 2021-10-13 14:51:50 +01:00
Doug
842125469d Stop requesting URL previews if the feature has been disabled on the homeserver. 2021-10-13 12:51:15 +01:00
ismailgulek
58df3d3309
Merge branch 'develop' into ismail/4384_room_summary_store 2021-10-12 11:49:55 +03:00
ismailgulek
efb495e95f
Merge branch 'develop' into ismail/4384_room_summary_store 2021-10-08 16:59:25 +03:00
Doug
bf52311bda Merge remote-tracking branch 'origin/develop' into doug/4484_contacts_access
# Conflicts:
#	Riot/Modules/ServiceTerms/Modal/ServiceTermsModalCoordinatorBridgePresenter.swift
2021-10-08 11:45:43 +01:00
Doug
53fe72cb19 Track an analytics value on accept/decline of an identity server. 2021-10-05 17:19:19 +01:00
ismailgulek
9e1bef0d51
Merge branch 'develop' into ismail/4384_room_summary_store 2021-10-05 13:48:25 +03:00
manuroe
e60f92eaf8 i18n: Standardise casing of identity server and integration manager. 2021-10-01 11:51:30 +01:00
Doug
b9dc5d6eca Merge branch 'develop' into doug/4484_contacts_access
# Conflicts:
#	Riot/Assets/en.lproj/Vector.strings
#	Riot/Generated/Strings.swift
#	Riot/Modules/Application/LegacyAppDelegate.m
#	Riot/Modules/Settings/SettingsViewController.m
2021-09-30 11:14:02 +01:00
ismailgulek
129eb9553c
Merge branch 'develop' into ismail/4384_room_summary_store 2021-09-30 12:35:46 +03:00
Stefan Ceriu
2c0bf1e80f vector-im/element-ios/issues/4899 - Fixed various localization issues. 2021-09-30 09:40:12 +03:00
Stefan Ceriu
862464108b vector-im/element-ios/issues/4899 - Replaced (*almost*) all NSLocalizedString calls with newly generated ObjC methods. 2021-09-30 09:40:12 +03:00
Doug
03f813c3d0
Merge pull request #4924 from vector-im/doug/4896_url_previews_string_whitespace
Use attributed string whitespace for URL previews.
2021-09-29 16:18:31 +01:00
Doug
c3e87c5c50 Conform URLPreviewData to MXKURLPreviewDataProtocol. 2021-09-29 12:12:25 +01:00
Doug
b4569296ac Check whether URL previews should be shown in a single location.
Reset all cell data when this setting is changed to force a refresh.
Rename `hasClosedPreview(from:)` to `shouldShowPreview(for:)` for clarity and potentially adding more rules at a later date.
2021-09-29 11:39:11 +01:00
ismailgulek
bc1d0d7172
Merge branch 'develop' into ismail/4384_room_summary_store 2021-09-28 17:30:39 +03:00
Gil Eluard
caa75ed042 App may not start in 1.6.0 #4919
- Update after review
2021-09-28 15:22:30 +02:00
Gil Eluard
837333024d App may not start in 1.6.0 #4919
- Update after review
2021-09-28 14:45:34 +02:00
Gil Eluard
d9f2220091 App may not start in 1.6.0 #4919
- Fixed
2021-09-28 13:07:10 +02:00
ismailgulek
af79dfc6eb
Post a notification when RiotSettings updated 2021-09-23 16:55:00 +03:00
Gil Eluard
f6ea4da656 Merge branch 'develop' into spaces
# Conflicts:
#	Riot/Assets/en.lproj/Vector.strings
2021-09-22 15:39:06 +02:00
Gil Eluard
84bdf88fe1 Merge branch 'develop' into spaces 2021-09-20 10:18:01 +02:00
David Langley
98078b3466 Merge branch 'develop' of https://github.com/vector-im/element-ios into langleyd/4781_swiftui_template_examples 2021-09-20 08:50:38 +01:00
Doug
96ef61ab21 Enable URL Previews by default and remove from Labs. 2021-09-16 17:51:56 +01:00
David Langley
fb0f023964 Merge branch 'develop' of https://github.com/vector-im/element-ios into langleyd/4781_swiftui_template_examples 2021-09-15 14:33:05 +01:00
Gil Eluard
8ba6c55a87 Merge branch 'develop' into spaces
# Conflicts:
#	Riot/Modules/Common/Avatar/AvatarViewDataProtocol.swift
#	Riot/Modules/Common/Recents/RecentsViewController.m
#	Riot/Modules/Home/Views/RoomCollectionViewCell.m
#	Riot/Modules/TabBar/TabBarCoordinator.swift
2021-09-15 14:42:04 +02:00
Gil Eluard
f4fb4be6fb [Spaces] M10.8 Browsing users in a space #4682
- Update after code review
2021-09-14 16:59:32 +02:00
Stefan Ceriu
d4c7a2b0d1 Revert "Revert "#4693 - Drop iOS 11 support."" 2021-09-14 11:41:36 +03:00
David Langley
fb203cce5e Add configurable logger for RiotSwiftUI 2021-09-09 22:42:00 +01:00
Doug
94b996fb12 Merge branch 'develop' into doug/4484_contacts_access 2021-09-09 12:24:08 +01:00
Doug
dad25ccf0c Log Core Data save errors. Use a static property for the Core Data in memory SQLite URL. 2021-09-08 17:45:02 +01:00
Doug
206017c01f Rename Core Data objects.
URLPreviewCacheData becomes URLPreviewData in the model with a class name of URLPreviewDataMO
ClosedURLData becomes URLPreviewUserData in the model with a class name of URLPreviewUserDataMO
2021-09-08 15:47:14 +01:00
Doug
24afc7af6c Update for PR feedback.
URLPreviewManager becomes URLPreviewService.
addVerticalWhitespaceToString used instead of heightForCellData multiple times.
All newline characters removed.
2021-09-08 15:10:13 +01:00
Doug
ea14ed9616 Add more docs and comments.
Rename store.store(_:) to store.cache(_:).
2021-09-08 09:51:47 +01:00
Doug
1c7cef52a0 Merge branch 'develop' into doug/888_add_url_previews 2021-09-07 17:51:31 +01:00
Doug
0094add5a4 Move url preview setting under labs section. 2021-09-07 16:00:12 +01:00
Doug
aae43e8954 Remove unnecessary defaults registration. 2021-09-06 17:10:59 +01:00
Doug
e1201e7d30 Use a property wrapper for showMediaCompressionPrompt setting. 2021-09-06 17:08:23 +01:00
Doug
a300cab626 Merge branch 'develop' into doug/4479_media_size_selection
# Conflicts:
#	Riot/Managers/Settings/RiotSettings.swift
2021-09-06 17:04:22 +01:00
Stefan Ceriu
f2dd0e256b Revert "#4693 - Drop iOS 11 support."
This reverts commit a2b359f219.
2021-09-06 18:24:26 +03:00
Doug
2e04123337 Add setting to disable URL previews.
Using a temporary position in the settings screen whilst waiting for feedback.
2021-09-03 10:19:26 +01:00
Doug
4924110f8e Merge remote-tracking branch 'origin/develop' into doug/888_add_url_previews 2021-09-02 17:39:42 +01:00
David Langley
55c515fe4a Merge branch 'develop' of https://github.com/vector-im/element-ios into langleyd/4776_extract_swiftui 2021-09-02 10:14:11 +01:00
Stefan Ceriu
a786cbb90a #4693 - Drop iOS 11 support. 2021-09-01 15:55:41 +03:00
David Langley
790301ccb6 Finish extraction
- Moves SwiftUI code out of Riot and into RiotSwiftUI which has no dependency on Matrix SDK.
- Git wasn't smart enough to see the file moves. Most feature function has remain unchanged. 1 change I did make was remove NotificationSettingsViewModel's dependence on MxPushRule, so that the view model could be moved into RiotSwiftUI.
- Add LocaleProvider to abstract VectorL10n's use of Matrix SDK language so it can be used in RiotSwiftUI.
- Split Theme into UKit/SwiftUI version to remove RiotSwiftUI's dependence on ThemeService and ThemeV1.
- Migrated from ThemeObserver to ThemePublisher. We push updates to ThemePublisher so that we can remove ThemeService as dependency.
- Add .DS_Store to .gitignore
2021-09-01 12:34:38 +01:00
Doug
a81ebbd0aa Refactoring and tidy up.
Make the preview manager a singleton (passing in the MXSession to functions). Fix tests.

PreviewManager → URLPreviewManager
URLPreviewViewData → URLPreviewData
URLPreviewCache → URLPreviewStore
2021-09-01 12:28:56 +01:00
Doug
59e541667e Load and store URLPreviewViewData in RoomBubbleCellData.
Implement close button and store the action in Core Data. Hide the preview image view when no image is received. Remove line breaks in description text.
2021-09-01 10:37:37 +01:00
Stefan Ceriu
0ee9c9ead6 Using a property wrapper for UserDefaults backed application settings (RiotSettings). 2021-08-30 11:02:06 +03:00
Doug
99d66f0c0a Merge branch 'develop' into doug/4479_media_size_selection 2021-08-27 16:28:15 +01:00
David Langley
fb67c9d235 Extract and start to split theme. 2021-08-27 16:26:56 +01:00
Stefan Ceriu
ff405f6b13 #4693 - Updates following code review. 2021-08-25 13:57:32 +03:00
Doug
29758d1aa7 Add PreviewManger with Core Data cache and a URLPreviewView with a view model.
Changes to RoomDataSource still to come.
2021-08-23 17:56:24 +01:00
Doug
ad1044cb9a Merge branch 'develop' into doug/4479_media_size_selection 2021-08-23 12:49:28 +01:00
Doug
fc75307c54 Combine confirm image/video size settings into one. 2021-08-23 11:16:32 +01:00
Paulo Pinto
fee7b4ba58 Standardise spelling and casing of integration manager
Signed-off-by: Paulo Pinto <paulo.pinto@automattic.com>
2021-08-18 17:30:45 +01:00
Doug
bfbed0a050 Merge branch 'develop' into doug/4484_contacts_access 2021-08-17 16:15:46 +01:00
Doug
661b53622d Merge branch 'develop' into doug/888_add_url_previews 2021-08-17 10:29:30 +01:00
David Langley
ef25ef54dd Add dependency management, AvatarViewModel and placeholder rendering now in AvatarImage. 2021-08-17 10:19:41 +01:00
Doug
9031412c02 Add an (optional) prompt when sending a video to select its size.
Use high quality when filming video in-app.
2021-08-16 17:48:26 +01:00
David Langley
57969ea827 Merge branch 'develop' of github.com:vector-im/element-ios into langleyd/4669_room_notification_settings_swiftui 2021-08-16 13:00:41 +01:00
Doug
b7245935a1 Merge branch 'develop' into doug/4479_media_size_selection
# Conflicts:
#	Riot/Managers/Settings/RiotSettings.swift
2021-08-16 10:01:54 +01:00
David Langley
dcfcdac00a
Update Riot/Managers/Theme/SwiftUI/ThemeKey.swift
Co-authored-by: manuroe <manuroe@users.noreply.github.com>
2021-08-13 08:24:16 +01:00
David Langley
b792af6594 Cleanup from comments 2021-08-12 16:57:19 +01:00
David Langley
c6ba23ec70 Add theming support, and support for other top level configuration to swiftui views with VectorHostingViewController, VectorContentModifier. Add VisibilityModifier. Move from List to VStack. 2021-08-12 11:52:06 +01:00
ismailgulek
24a57512ca
Merge branch 'develop' into element_4471 2021-08-12 11:08:29 +03:00
Doug
0d4856866e Merge branch 'develop' into doug/4484_contacts_access 2021-08-11 17:15:23 +01:00
David Langley
5672f17819 Merge branch 'develop' of github.com:vector-im/element-ios into langleyd/4669_room_notification_settings_swiftui 2021-08-06 13:52:55 +01:00
Stefan Ceriu
66f248de2d Remove labs setting for voice messages, enable the feature by default. Fixed incorrect ffmpeg arguments. 2021-08-06 14:22:52 +03:00
ismailgulek
ef95c448e2
Merge branch 'develop' into element_4471 2021-08-06 13:34:09 +03:00
David Langley
0865862078 fix warning 2021-08-06 09:52:53 +01:00
David Langley
b866f09f35 merge, finish swiftui and add theming 2021-08-06 00:27:13 +01:00
Doug
32208e615f Add "Confirm image size before sending" setting.
Use this when sending images.
2021-07-28 14:14:34 +01:00
Doug
c0bd505f36 Add quinary colour to themes. 2021-07-23 16:34:43 +01:00
manuroe
671f2118cc
Merge branch 'develop' into element_4090 2021-07-22 14:16:35 +02:00
Doug
eacb8a4653 Begin adding link detection to RoomBubbleCellData. 2021-07-21 15:14:25 +01:00
Stefan Ceriu
089c6889d6 #4090 - Added voice messages switch to the labs section in settings. 2021-07-16 16:57:29 +03:00
Doug
9db2956578
Merge pull request #4542 from vector-im/doug/fix_warnings
Fix warnings
2021-07-13 11:07:47 +01:00
Gil Eluard
a650e49533 Show / hide reset button in secrets recovery screen (#4546). 2021-07-12 22:51:56 +02:00
Doug
989f19696d Merge branch 'develop' into doug/fix_warnings
# Conflicts:
#	Riot/Modules/Room/RoomInfo/RoomInfoList/RoomInfoListViewController.swift
2021-07-12 17:54:34 +01:00
Doug
e2a9d3bb24 Fix class keyword deprecation warnings everywhere!
Using 'class' keyword for protocol inheritance is deprecated; use 'AnyObject' instead
2021-07-09 17:05:43 +01:00
ismailgulek
76be005313
Merge branch 'develop' into element_4471 2021-07-07 12:26:43 +03:00
ismailgulek
6cb835d53b
Do not present ended calls 2021-07-05 15:27:36 +03:00
Doug
080b3e94bb Fix documentation warnings. 2021-07-02 16:46:27 +01:00
ismailgulek
1ac7a14282
Adapt Swifty session states 2021-06-30 18:02:11 +03:00
SBiOSoftWhare
d4c1765b2a Theme: Update DarkTheme and DefaultTheme with fonts property. 2021-06-21 21:12:27 +02:00
ismailgulek
f749bbca08
Merge branch 'develop' into element_4269_additions 2021-06-11 15:46:20 +03:00
ismailgulek
4f9cb2e179
Enhance logs 2021-06-11 14:38:07 +03:00
ismailgulek
7f534738ff
Handle app state better 2021-06-11 14:37:53 +03:00
ismailgulek
de5ea4e2fb
Handle app inactive state too 2021-06-10 11:43:08 +03:00
ismailgulek
c85101999d
Fix call screen user interaction 2021-06-09 18:33:00 +03:00
ismailgulek
51d6bcf950
Fix corner radius 2021-06-09 18:28:15 +03:00
ismailgulek
99a0b7e892
Bug fixes 2021-06-09 15:46:37 +03:00
ismailgulek
0536cf52e5
Fix PiP state when presenting a call screen 2021-06-09 15:11:06 +03:00
ismailgulek
e4ab0cf7fd
Merge branch 'develop' into remove_call_bar 2021-06-09 13:54:59 +03:00
ismailgulek
7c715c805b
Enhance PictureInPicturable protocol 2021-06-09 13:53:35 +03:00
ismailgulek
378efbc2c5
Remove all call bar related things 2021-06-08 12:13:16 +03:00
SBiOSoftWhare
92cf824b69 Create AppInfo used to handle the application information. 2021-06-07 18:46:16 +02:00
SBiOSoftWhare
dfadf865df Create BuildInfo that gives build information made at compilation time. 2021-06-07 18:46:16 +02:00
ismailgulek
688191b49a
Merge pull request #4388 from vector-im/element_4360_additions
Create Room Last Message Encryption Keys
2021-06-07 19:29:27 +03:00
SBiOSoftWhare
0558280183 UserSessionsService: Add possibility to remove a user session from the associated Matrix session. 2021-06-07 12:09:37 +02:00