Skip to content

Commit

Permalink
Rebase onto vector-im/riot-ios
Browse files Browse the repository at this point in the history
* RoomViewController: Fix a crash when setting a nil string on UIPasteboard.

* RoomSettingsViewController: Fix a crash when setting a nil string on UIPasteboard.

* RoomViewController: Add logs when copy text failed.

* RoomViewController: Fix crash occurring when tap on an unsent media with retrieved event equal to nil.

* CocoaPods: Fix DTCoreText app extension issue.

* Gemfile: Update CocoaPods version to 1.8.x and perform a bundle update.

* Emoji picker: Fix reverse header and background colors (Fix vector-im#2630).

* Update `setRootModule` method signature in NavigationRouterType protocol.

* Device verification: Improve navigation flow and view states handling.

* Settings: Add User-Interactive Auth for adding email and msidsn to user's account

vector-im#2744

* Settings: Use a generic wording when authentication flow is not supported

* Add Tools/Logs/filterStartupLogs.sh

* RoomVC: Prevent tableView scroll when displaying contextual menu (Fix vector-im#2687).

* RoomVC: Prevent tableView scroll when displaying contextual menu.

* Update GBDeviceInfo to version 6.3.0.

* Update SwiftLint pod.

* MXHTTPOperation: Remove nullability check before using `mutateTo:` method where needed.

* AppDelegate: Handle updated MXBackgroundModeHandler and now use MXBackgroundTask.

* Fix tab bar icons misalignment on iOS 13 (Fix vector-im#2802).

* Integrations: Fix terms consent display when they are required

* Integrations: Use the integrations manager provided by the homeserver admin via .well-known vector-im#2815

* Project: For each target use "$(inherited)" value for ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES build setting.

* Update MatomoTracker pod to 7.2.0.

* Integrations: Fix terms consent display when they are required

(cherry picked from commit 394aedb)

* Integrations: Fix terms consent display HTTP requests

* SerializationService: Add deserialisation of Any with a dirty implementation of JSON dictionary parsing

* Widgets: Check user permission before opening a widget (Data side) vector-im#2832

* Widgets permission: No check required when the user is the creator

* Widgets permission: No check required for the integration manager widget

* Widgets permission: Some cleaning

* Widgets: Add a contextual menu to refresh, open outside and revoke the permission

vector-im#2834

* Widgets: Add "Remove for everyone" to the contextual menu

* Widgets permission: Fix Steve's remarks

* Settings: Have a toggle for using an integration manager

vector-im#2843

* Widgets: Display an error if the IM is disabled

vector-im#2843

* Widgets: Change copy a bit in contextual menu

* Widgets: Check user permission before opening a widget (data part)

vector-im#2833

* Jitsi: Display room name, user name and user avatar in the conference screen

* Swift: NSURL -> URL

* Widgets: Fix bad i18n key

* Convert message.mp3 to message.caf (IMA4) for compatibility with UNNotificationSound.

* Room Widget Permission: Add close button assets.

* Room Widget Permission: Add strings.

* Add convenient `clamped` method to FloatingPoint.

* Add convenient method to UIButton to set a background color as an image.

* Create a SlidingModalPresenter that allows to present custom modal view controller or view in a card with a sliding transition.

* Room Widget Permission: Create room widget permission screen.

* Room Widget Permission: Handle new room widget permission UX in WidgetViewController.

* Update Riot/Modules/Modal/SlidingModalPresentationAnimator.swift

Co-Authored-By: manuroe <[email protected]>

* Update Riot/Modules/Modal/SlidingModalPresentationAnimator.swift

Co-Authored-By: manuroe <[email protected]>

* Move sliding modal classes.

* Update room widget permission strings.

* Room widget permission: Update WidgetPermissionViewModel with permission string list and widget origin.

* Room widget permission: Update WidgetPermissionViewController with closures instead of delegate handle updated view model.

* Room widget permission: Update WidgetViewController.

* Room widget permission: Use new widget permission UX for Jitsi.

* Update changes

* Room widget permission: Fix Jitsi widget permission wording.

* Room widget permission: Disable justified text for permission informations in WidgetPermissionViewController.

* WidgetPermissionViewController use a clear background for avatar image view.

* Remove unused string.

* Widgets: Handle terms display when selecting a widget in widget picker.

* Fix terms appearing twice on cancel in IntegrationManagerViewController.

* Widgets: Require scalar token validation to ensure terms display when retrieve widget URL.

* Widgets: Update WidgetViewController to make it conform to all ServiceTermsModalCoordinatorBridgePresenterDelegate methods.

* Accessibility: Make checkboxes accessible in terms of service screen.

* Update Xcode reference from message.mp3 to message.caf.

* Create a URL parser for room messages.

* RoomVC: Handle tap and long tap on UITextView detected data other than links (Fix vector-im#2803).

* Settings: Add cross-signing and key verification by direct message switches in labs section.

* Device Verification: Stay in infinite waiting

vector-im#2878

Don't stop listening to transaction updates if we receive unexpected events else you block the state machine.

* NavigationRouter: Remove reference to former retained view controllers when change the root module.Add navigation logs.

* DeviceVerificationCoordinatorBridgePresenter: Add navigation logs.

* DeviceVerificationVerifyViewController: Wait view loading before observing device transaction change and unregister after matching an expected case.

* DeviceVerificationIncomingViewController: Wait view loading before observing device transaction change and unregister after matching an expected case.

* Settings: Hide cross-signing things from LABS for now

* Remove RiotDesignValues files

* Add generated Strings from Riot (VectorL10n enum)

* Fix color issues

* Fix compilation issues

- Replace MediaPicker with ImagePickerPresenter in Settings
- Add Riot source files

* Move DeviceVerification files

* Add DeviceVerification files to the Tchap project

* Move ServiceTermsModal and SlidingModal files

* fix compilation errors

* Move Integration files into the Tchap sub-repo

* Fix compilation errors

* Move KeyBackup files into the Tchap sub-repo

* Add KeyBackup files to the project

* Move Room Contextual Menu stuff into the Tchap sub repo

* fix compilation errors, add some assets

* Fix last issues - Merge is ended

TODO:
- Tests all screen
- Set up Key Backup and Device verification
- Disable message Reaction/Edition

* Fix Reaction display

* Fix CountryPickerViewController tabBar

* Setup keybackup (#286)

* Set up the device verification (SAS Verification)

#285

* Handle the key backup from the settings screen

TODO: handle the key backup in case of pwd change (presently only key export is supported)

* Handle the missing key backup in case of password change

* Update Gemfile.lock

* Adjust the Contacts handling

* Remove the legacy `kAppDelegateDidTapStatusBarNotification` notif

* Remove onBoardingManager from Tchap source

* Room creation: fix imagePickerPresenter use

* Fix compilation errors

* Disable key backup in the rebase version of the code (#300)

* Podfile: use temporarily a dinum branch for MatrixKit
until a new rebase is applied on Tchap-ios in order to go back on the develop branch

* SAS - Device Verification Adjustments (#301)

- remove "share without verifying" option
- start directly the verification based on emojis (without mentioning the legacy verification)
- change the strings to focus on user's devices verification
- Update the strings displayed during the legacy verification screen
- Adjust layout
- Update message when verification is cancelled
- Bug Fix - DeviceVerificationVerifyViewController: the waitingPartnerLabel label was never displayed
- Update the incoming request display

* Update matrix-ios-sdk version

* Bug Fix - The app may be stuck on the device verification screen (#302)

* Bug Fix - The app may be stuck on the device verification screen

This happens when several check of the pending room key requests are triggered simultaneously.
For example when we resume the app after added a new device.
This multiple requests involve an issue on the dialog handling (The screen is displayed, but the model lost its delegate)

We fix this here by preventing the app from checking several times the pending requests

* Bug Fix [Device verification] Only half of the key sharing requests are handled after verification

Update sdk version (to get "MXCrypto: Only create one olm session at a time per device")
#303
  • Loading branch information
giomfo authored Jun 10, 2020
2 parents c390da0 + 2e62f0e commit 60291c7
Show file tree
Hide file tree
Showing 797 changed files with 74,095 additions and 14,913 deletions.
4 changes: 1 addition & 3 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,9 +28,7 @@ included:
excluded:
- Carthage
- Pods
- Tchap/Constants/Storyboards.swift
- Tchap/Constants/Strings.swift
- Tchap/Constants/Images.swift
- Tchap/Generated/
- Riot

line_length:
Expand Down
321 changes: 320 additions & 1 deletion CHANGES.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,328 @@
Changes in 0.7.x (2018-xx-xx)
Changes in 0.10.4 (2019-12-11)
===============================================

Improvements:
* ON/OFF Cross-signing development in a Lab setting (#2855).

Bug fix:
* Device Verification: Stay in infinite waiting (#2878).

Changes in 0.10.3 (2019-12-05)
===============================================

Improvements:
* Upgrade MatrixKit version ([v0.11.3](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.11.3)).
* Integrations: Use the integrations manager provided by the homeserver admin via .well-known (#2815).
* i18n: Add Welsh (cy).
* i18n: Add Italian (it).
* SerializationService: Add deserialisation of Any.
* RiotSharedSettings: New class to handle user settings shared accross Riot apps.
* Widgets: Check user permission before opening a widget (#2833).
* Widgets: Check user permission before opening jitsi (#2842).
* Widgets: Add a contextual menu to refresh, open outside, remove and revoke the permission (#2834).
* Settings: Add an option for disabling use of the integration manager (#2843).
* Jitsi: Display room name, user name and user avatar in the conference screen.
* Improve UNNotificationSound compatibility with MA4 (IMA/ADPCM) file, thanks to @pixlwave (PR #2847).

Bug fix:
* Accessibility: Make checkboxes accessible in terms of service screen.
* RoomVC: Tapping on location links gives 'unable to open link' (#2803).
* RoomVC: Reply to links fail with 'unable to open link' (#2804).

Changes in 0.10.2 (2019-11-15)
===============================================

Bug fix:
* Integrations: Fix terms consent display when they are required.

Changes in 0.10.1 (2019-11-06)
===============================================

Improvements:
* Upgrade MatrixKit version ([v0.11.2](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.11.2)).
* Settings: Add User-Interactive Auth for adding email and msidsn to user's account (vector-im/riot-ios#2744).
* Improve UIApplication background task management.

Bug fix:
* Room cell: The states of direct chat and favorite buttons are reversed in the menu (#2788).
* Pasteboard: Fix a crash when passing a nil object to UIPasteboard.
* RoomVC: Fix crash occurring when tap on an unsent media with retrieved event equal to nil.
* Emoji Picker: Background color is not white (#2630).
* Device Verification: Selecting 'start verification' from a keyshare request wedges you in an entirely blank verification screen (#2504).
* Tab bar icons are not centered vertically on iOS 13 (#2802).

Changes in 0.10.0 (2019-10-11)
===============================================

Improvements:
* Upgrade MatrixKit version ([v0.11.1](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.11.1)).
* Upgrade MatrixKit version ([v0.11.0](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.11.0)).
* Widgets: Whitelist [MSC1961](https://github.com/matrix-org/matrix-doc/pull/1961) widget urls.
* Settings: CALLS section: Always display the CallKit option but grey it out when not available (only on China).
* VoIP: Fallback to matrix.org STUN server with a confirmation dialog (#2646).
* Widgets: Whitelist [MSC1961](https://github.com/matrix-org/matrix-doc/pull/1961) widget urls
* i18n: Enable Polish (pl).
* Room members: third-party invites can now be revoked
* Privacy: Prompt to accept integration manager policies on use (#2600).
* Privacy: Make clear that device names are publicly readable (#2662).
* Privacy: Remove the ability to set an IS at login/registration (#2661).
* Privacy: Remove the bind true flag from 3PID calls on registration (#2648).
* Privacy: Remove the bind true flag from 3PID adds in settings (#2650).
* Privacy: Email help text on registration should be updated without binding (#2675).
* Privacy: Use MXIdentityService to perform identity server requests (#2647).
* Privacy: Support identity server v2 API authentication (#2603).
* Privacy: Use the hashed v2 lookup API for 3PIDs (#2652).
* Privacy: Prompt to accept identity server policies on firt use (#2602).
* Privacy: Settings: Allow adding 3pids when no IS (#2659).
* Privacy: Allow password reset when no IS (#2658).
* Privacy: Allow email registration when no IS (#2657).
* Privacy: Settings: Add a Discovery section (#2606).
* Privacy: Make NSContactsUsageDescription more generic and mention that 3pids are now uploaded hashed (#2521).
* Privacy: Settings: Add IDENTITY SERVER section (#2604).
* Privacy: Make IS terms wording clearer when we fallback to vector.im (#2760).

Bug fix:
* Theme: Make button theming work (#2734).

Changes in 0.9.5 (2019-09-20)
===============================================

Bug fix:
* VoiceOver: RoomVC: Fix some missing accessibility labels for buttons (#2722).
* VoiceOver: RoomVC: Make VoiceOver focus on the contextual menu when selecting an event (#2721).
* VoiceOver: RoomVC: Do not lose the focus on the timeline when paginating (with 3 fingers) (#2720).
* VoiceOver: RoomVC: No VoiceOver on media (#2726).

Changes in 0.9.4 (2019-09-13)
===============================================

Improvements:
* Authentication: Improve the webview used for SSO (#2715).

Changes in 0.9.3 (2019-09-10)
===============================================

Improvements:
* Support Riot configuration link to customise HS and IS (#2703).
* Authentication: Create a way to filter and prioritise flows (with handleSupportedFlowsInAuthenticationSession).

Changes in 0.9.2 (2019-08-08)
===============================================

Improvements:
* Upgrade MatrixKit version ([v0.10.2](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.10.2)).
* Soft logout: Support soft logout (#2540).
* Reactions: Emoji picker (#2370).
* Widgets: Whitelist https://scalar-staging.vector.im/api (#2612).
* Reactions: Show who reacted (#2591).
* Media picking: Use native camera and use separate actions for camera and media picker (#638).
* Ability to disable all identity server functionality via the config file (#2643).

Bug fix:
* Crash when leaving settings due to backup section refresh animation.
* Reactions: Do not display reactions on redacted events in timeline.
* Fix crash for search bar customisation in iOS13 (#2626).
* Build: Fix build based on git tag.

Changes in 0.9.1 (2019-07-17)
===============================================

Bug fix:
* Edits history: Original event is missing (#2585).

Changes in 0.9.0 (2019-07-16)
===============================================

Improvements:
* Upgrade MatrixKit version ([v0.10.1](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.10.1)).
* Upgrade MatrixKit version ([v0.10.0](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.10.0)).
* RoomVC: When replying, use a "Reply" button instead of "Send".
* RoomVC: New message actions (#2394).
* Room upgrade: Autojoin the upgraded room when the user taps on the tombstone banner (#2486).
* Room upgrade: Use the `server_name` parameter when joining the new room (#2550).
* Join Room: Support via parameters to better handle federation (#2547).
* Reactions: Display existing reactions below the message (#2396).
* Menu actions: Display message time (#2463).
* Reactions Menu: Fix position (#2447).
* Context menu polish (#2466).
* Upgrade Piwik/MatomoTracker (v6.0.1) (#2159).
* Message Editing: Annotate edited messages in timeline (#2400).
* Message Editing: Editing in the timeline (#2404).
* Read receipts: They are now counted at the MatrixKit level.
* Migrate to Swift 5.0.
* Reactions: Update quick reactions (#2459).
* Message Editing: Handle reply edition (#2492).
* RoomVC: Add ability to upload a file that comes from outside the app’s sandbox (#2019).
* Share extension: Enable any file upload (max 5).
* Tools: Create filterCryptoLogs.sh to filter logs related to e2ee from Riot logs.

Bug fix:
* Device Verification: Fix user display name and device id colors in dark theme
* Device Verification: Name for 🔒 is "Lock" (#2526).
* Device Verification: Name for ⏰ is "Clock.
* Registration with an email is broken (#2417).
* Reactions: Bad position (#2462).
* Reactions: It lets you react to join/leave events (#2476).
* Adjust size of the insert button in the People tab, thanks to @dcordero (PR #2473).

Changes in 0.8.6 (2019-05-06)
===============================================

Bug fix:
* Device Verification: Fix bell emoji name.
* Device Verification: Fix buttons colors in dark theme.

Changes in 0.8.5 (2019-05-03)
===============================================

Improvements:
* Upgrade MatrixKit version ([v0.9.9](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.9.9)).
* Push: Add more logs to track spontaneously disabling (#2348).
* Widgets: Use scalar prod urls in Riot mobile apps (#2349).
* Productiviy: Create templates (see Tools/Templates/README.md).
* Notifications: Use UserNotifications framework for local notifications (iOS 10+), thanks to @fridtjof (PR #2207).
* Notifications: Added titles to notifications on iOS 10+, thanks to @fridtjof (PR #2347).
* iOS 12 Notification: Group them by room (#2337 and PR #2347 thanks to @fridtjof).
* Notifications: When navigate to a room, remove associated delivered notifications (#2337).
* Key backup: Adjust wording for untrusted backup to match Riot Web.
* Jitsi integration: Use the matching WebRTC framework (#1483).
* Fastlane: Set iCloud container environment (PR #2385).
* Remove code used for iOS 9 only (PR #2386).

Bug fix:
* Share extension: Fix a crash when receive a memory warning (PR #2352).
* Upgraded rooms show up in the share extension twice (#2293).
* +N read receipt text is invisible on dark theme (#2294).
* Avoid crashes with tableview reload animation in settings and room settings (PR #2364).
* Media picker: Fix some retain cycles (PR #2382).

Changes in 0.8.4 (2019-03-21)
===============================================

Improvements:
* Upgrade MatrixKit version ([v0.9.8](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.9.8)).
* Share extension: Remove image large size resizing choice if output dimension is too high to prevent memory limit exception (PR #2342).

Bug fix:
* Unable to open a file attachment of a room message (#2338).

Changes in 0.8.3 (2019-03-13)
===============================================

Improvements:
* Upgrade MatrixKit version ([v0.9.7](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.9.7)).

Bug fix:
* Widgets: Attempt to re-register for a scalar token if ours is invalid (#2326).
* Widgets: Pass scalar_token only when required.


Changes in 0.8.2 (2019-03-11)
===============================================

Improvements:
* Upgrade MatrixKit version ([v0.9.6](https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.9.6)).
* Maintenance: Update cocopoads and pods. Automatic update to Swift4.2.
* Add app store description as app string resource to make them available for translation on weblate (#2201).
* Update deprecated contact availability checks (#2222).
* RoomVC: Remove the beta warning modal when enabling e2e in a room (#2239).
* RoomVC: Use accent color (green) for the ongoing conference call banner.
* Fastlane: Update to Xcode 10.1 (#2202).
* Use SwiftLint to enforce Swift style and conventions (PR #2300).
* Fix SWIFT_VERSION configuration in post install hook of Podfile (PR #2302).
* Authentication: support SSO by using the fallback URL (#2307).
* Authentication: .well-known support (#2117).
* Reskin: Colorise users displaynames (#2287).

Bug fix:
* Reskin: status bar text is no more readable on iPad (#2276).
* Reskin: Text in badges should be white in dark theme (#2283).
* Reskin: HomeVC: use notices colors for badges background in section headers (#2292).
* Crash in Settings in 0.8.1 (#2295).
* Quickly tapping on a URL in a message highlights the message rather than opening the URL (#728).
* 3D touching a link can lock the app (#1818).
* Do not display key backup UI if the user has no e2e rooms (#2304).

Changes in 0.8.1 (2019-02-19)
===============================================

Improvements:
* Key backup: avoid to refresh the home room list on every backup state change (#2265).

Bug fix:
* Fix text color in room preview (PR #2261).
* Fix navigation bar background after accepting an invite (PR #2261)
* Tabs at the top of Room Details are hard to see in dark theme (#2260).

Changes in 0.8.0 (2019-02-15)
===============================================

Improvements:
* Upgrade MatrixKit version (v0.9.5 - https://github.com/matrix-org/matrix-ios-kit/releases/tag/v0.9.5).
* Theming: Create ThemeService to make theming easier. Use it to reskin Riot.
* Use modern literals and array/dictionary syntax where possible (PR #2160).
* Add SwiftGen pod in order to generate Swift constants for assets (#2177).
* RoomVC: Remove the beta warning modal when opening an e2e room (#2239).
* RoomVC: `Redact` has been renamed to `Remove` to match riot/web (#2134).
* Clean up iOS version checking (#2190).
* Key backup: Implement setup screen (#2198).
* Key backup: Implement recover screen (#2196).
* Key backup: Add a dedicated section to settings (#2193).
* Key backup: Implement setup reminder (#2211).
* Key backup: Implement recover reminder (#2206).
* Key backup: Update key backup setup UI and UX (PR #2243).
* Key backup: Logout warning (#2245).
* Key backup: new recover method detected (#2230).

Bug fix:
* Use white scroll bar on dark themes (#2158).
* Registration: fix tap gesture on checkboxes in the terms screen.
* Registration: improve validation UX on the terms screen (#2164).
* Registration: improve scrolling on the reCaptcha screen (#2165).
* Infinite loading wheel when taping on a fake room alias (#679).
* Ban and kick reasons are silently discarded (#2162).
* Room Version Upgrade: Clicking the link in the room continuation event to go back to the old version of the room doesn't work (#2179).
* Share extension: Fail to send screenshot (#2168).
* Share extension: Handle rich item sharing (image + text + URL) (#2224).
* Share extension: Sharing pages from Firefox only shares their title (#2163).
* Share extension: Fix unloaded theme (PR #2235).
* Reskin: Jump to first unread message doesn't show up in 0.7.12 TF (#2218).
* Reskin: Sometimes the roomVC navigation bar is tranparent (#2252).

Changes in 0.7.11 (2019-01-08)
===============================================

Improvements:
* Upgrade MatrixKit version (v0.9.3).
* Fix almost all the warnings caused by -Wstrict-prototypes, thanks to @fridtjof (PR #2155).

Changes in 0.7.10 (2019-01-04)
===============================================

Bug fix:
* Share extension: Fix screenshot sharing (#2022). Improve image sharing performance to avoid out of memory crash.

Changes in 0.7.9 (2019-01-04)
===============================================

Improvements:
* Upgrade MatrixKit version (v0.9.2).

Bug fix:
* Registration: email or phone number is no more skippable (#2140).

Changes in 0.7.8 (2018-12-12)
===============================================

Improvements:
* Upgrade MatrixKit version (v0.9.1).
* Replace the deprecated MXMediaManager and MXMediaLoader interfaces use (see matrix-org/matrix-ios-sdk/pull/593).
* Replace the deprecated MXKAttachment and MXKImageView interfaces use (see matrix-org/matrix-ios-kit/pull/487).
* i18n: Enable Japanese (ja)
* i18n: Enable Hungarian (hu)

Bug fix:
* Registration: reCAPTCHA does not work anymore on iOS 10 (#2119).

Changes in 0.7.7 (2018-10-31)
===============================================
Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ source "https://rubygems.org"

gem "xcode-install"
gem "fastlane"
gem "cocoapods", '~>1.5.3'
gem "cocoapods", '~>1.8.4'

plugins_path = File.join(File.dirname(__FILE__), 'fastlane', 'Pluginfile')
eval_gemfile(plugins_path) if File.exist?(plugins_path)
Loading

0 comments on commit 60291c7

Please sign in to comment.