462 Commits

Author SHA1 Message Date
Nicolas Mauri
f64159670b
Update SDK to 1.0.106-alpha (#1480) 2023-08-11 11:54:44 +02:00
David Langley
8512d4c857
Integrate emojibase (#1449)
* Integrate emojibase

* pin emojibase to version rather than revision

* Log error in case of failed loading of emojis from emojibase.

* Update Package.resolved

* Fix tests and bindings version
2023-08-10 19:14:18 +01:00
Stefan Ceriu
1bfd5e89ca Bump the RustSDK to v1.0.105-alpha 2023-08-09 13:33:48 +03:00
Stefan Ceriu
0511bef33a Fixes #1270 - Parse the latest room message instead of directly using the body. Add an app wide attributed string caching layer. 2023-08-08 17:02:37 +03:00
aringenbach
59865a4b16
Extract composer toolbar to a dedicated component (#1427)
* Extract composer toolbar to a dedicated component

* Use publisher for composer mode

* Introduce `RoomScreenComposerProvider`

* Add `ComposerToolbarViewModelTests`

* Rename protocols and add passthrough subjects for focused and composer mode

* Remove `ComposerToolbarViewActionHandler` and `ComposerToolbarCoordinatorParameters`

* Remove `RoomScreenComposerActionHandlerProtocol` and `RoomScreenComposerProviderProtocol`

* Re-arrange code a bit

* Remove composer mode being stored on `RoomScreen`

* Rename `process(viewAction: ComposerToolbarViewAction)` to `process(composerAction: ComposerToolbarViewAction)`

* Replace PassthroughSubject with direct function call

* Remove `ComposerToolbarCoordinator`

* Remove `cancelEdit` and `cancelReply` from external composer view model actions

* Use `RoomScreenComposerAction` as a sub-`RoomScreenViewModelAction`

* Move `ComposerToolbarViewModel` callback to actionsSubject

* Move `RoomScreenViewModel` callback to actionsSubject

* Fix `RoomScreenViewModelTests`

* Rename `composerAction` parameter to `roomAction`

* Fix unit tests
2023-08-08 14:25:23 +02:00
Doug
68f8bfed53
Update compound with row selection. (#1439)
Include accessibility traits in old form styles too.
2023-08-03 09:37:34 +00:00
Stefan Ceriu
28c2490910 Adopt batched timeline diffs and other RustSDK changes 2023-08-02 12:08:57 +03:00
Stefan Ceriu
cdc7502a2c Bump the RustSDK to v1.0.103-alpha 2023-07-28 18:26:53 +03:00
Alfonso Grillo
1529b5b8ca
Update SDK to 1.0.102-alpha (#1408)
* Update SDK to 1.0.102-alpha

* Log error

* Notification Improvements API part 1 (#1410)

* changes

* WIP

* progress

* updated test

* removed unused

* code improvement

* Process diffs as batches provided by the SDK.

---------

Co-authored-by: Mauro <34335419+Velin92@users.noreply.github.com>
Co-authored-by: Doug <douglase@element.io>
2023-07-27 09:48:56 +00:00
Alfonso Grillo
90ff2df00e
Refactor TimelineItemBubbledStylerView for polls (#1404)
* Refactor bubble bg colors and insets

* Improve MapLibreStaticMapView layout

* Add BubbleTimestampLayout

* Refactor BubbleTimestampLayoutType

* Refine .horizontal, .vertical layouts

* Rename layout type

* Add docs

* Restore LocationRoomTimelineItem body

* Refactor whitespaces

* Fix background color for LocationRoomTimelineView.

* Fix UTs

* Fix analytics ui tests

* Fix bug report tests

* Fix settings ui tests

* Rename private property

* Record room screen tests
2023-07-26 15:17:41 +00:00
Doug
f2ffded87e
Use generated UIColors everywhere. (#1405)
- Fix destructive buttons in the menu.
2023-07-26 11:21:34 +01:00
Mauro Romito
ed28bc5d02 two sync loop always enabled by default 2023-07-26 10:39:19 +02:00
Mauro
7cf32ba37c
SwiftUI timeline refactor + TimelineViewState decoupling (#1392)
* swiftUI conversion + scroll to bottom

* remove unused

* back pagination implemented, however when a lot of elements are in the scroll the perfomance diminishes not sure what may be causing it

* scroll adapter solution

* way better

* works but height animation in cells are broken

* code improvement

* everything implemented

* rebase fix

* fix

* doc

* fix test compilation

* code improvement and animation improvement

* code improvement

* code improvements

* tests updated.

* pr comments

* better identifiers

* fix

* some PR comments

* pr comments
2023-07-25 12:20:13 +00:00
Alfonso Grillo
6fc8c31449
Reduce boilerplate in Developer Options Screen (#1378)
* Reduce developer options boilerplate

* Add protocol DeveloperOptions

* Delete timelineDiffableAnimationsEnabled

* Refactor DeveloperOptions -> DeveloperOptionsProtocol
2023-07-24 08:42:14 +00:00
Doug
fbe05a8679
Compound Room Details (#1369) 2023-07-21 14:22:09 +01:00
Doug
66eea98b33
Fix visibility of navigation bar when searching the forwarding screen. (#1357)
* Fix visibility of navigation bar when searching the forwarding screen.

- Update Introspect and replace deprecated calls with new ones.
- Remove obsoleted colours from DesignKit.
2023-07-19 15:55:21 +00:00
Mauro Romito
ad1422ad6c sdk bump 2023-07-18 17:32:11 +02:00
Mauro Romito
63935ceab3 sdk bump 2023-07-18 10:03:25 +02:00
Doug
4a03c4f715
Update SDK (#1323)
Handle async start.
2023-07-13 16:10:09 +00:00
Mauro
76506752b4
SDK Changes Refactor (#1312)
* internal id

* notification refactor

* client proxy refactor

* required self

* better identifier system

* using the event id when required

* tests fixed

* tested some stuff

* fixed merge conflict

* improved the test wait

* animation disabled

* Bump Rust SDK version to 1.0.98-alpha (#1310)

* code improvement

* pause sync

* pr suggestions

* result

* Apply suggestions from code review

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* enum based debug identifier

---------

Co-authored-by: aringenbach <80891108+aringenbach@users.noreply.github.com>
Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-07-12 10:28:41 +00:00
David Langley
2cec1858ff
Add expand/collapse UI for reactions (#1249)
* Add expand/collapse UI for reactions

- Adds a CollapsibleFlowLayout for controlling the layout
- Adds tests for  this layout and some mocks for testing layouts generally
- Improves the rendering of the reaction buttons which were not pixel perfect
- Adds the UI for the expand collapse buttons including the count of hidden items in the collapsed state.

* Add comment for reactionsCollapsed binding.

* Remove Flow and simplify implementation

- Remove SwiftUI-Flow
- Add strings by importing from Localyse
- Remove count on expand button as requires GeometryReader and can cause loops
- Don't use GeometryReader for hiding reactions with opacity(just put them way off screen for now)
- Fix unit and UI tests

* Address PR comments

- use synthesized inits
- use rows rather than lines for naming flow layout
- other naming improvements
- reactions were already rendered in another ui test, removing my test on favour of those and updating the screenshots for those.
2023-07-10 15:13:58 +00:00
Mauro
d2fe663003
SDK Bump + Back pagination state listener (#1274)
* backPagination improved

* sdk bump

* removed unused line

* Update ElementX/Sources/Services/Timeline/TimelineController/RoomTimelineController.swift

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

* cancelling the TaskHandle on deallocation

---------

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-07-07 07:54:40 +00:00
Doug
9ebc57e1cf
isDM in Notifications (#1254)
* isDm

* isDm added and some code improvements

* Bump SDK and fix one name.

* changelog

---------

Co-authored-by: Mauro Romito <mauro.romito@element.io>
2023-07-05 19:40:05 +02:00
Alfonso Grillo
d15d0e0070
Add location related analytics (#1241)
* Refactor trackComposer method

* Track location screen

* Refactor isPinDropSharing -> isSharingUserLocation

* Add trackComposer event

* Fix UTs

* Cleanup

* Add AnalyticsLocationType
2023-07-05 12:54:03 +02:00
Alfonso Grillo
caf23094b0
Update SDK to 1.0.94-alpha (#1232)
* Update SDK

* Map new location fields

* Add LocationRoomTimelineItemContent.AssetType
2023-07-04 06:39:32 +00:00
Mauro Romito
c5d47378a4 bump 2023-06-30 15:18:03 +03:00
Stefan Ceriu
4e7d05d4b8 Bump the RustSDK to v1.0.92-alpha 2023-06-29 18:01:46 +03:00
Stefan Ceriu
ce7ca32efc Fixes #954 - Implement media upload cancelling 2023-06-29 13:32:42 +03:00
David Langley
98cec5672c
Reaction summary and flow layout for reactions (#1158)
* Add reaction summary view

* Add avatars and display names and flowlayout for reactions

- Add avatars to summary view
- Add display names to summary view
- Add flow layout to reaction buttons as per designs(long press on  scolling buttons is difficult to achieve so prioritised this).

* Add and use SwiftUI-Flow for reaction layout.

* Correct Swift-Flow inclusion via xcodegen

* Remove own FlowLayout implementation and Fix unit tests

* Improve naming and correct spacing on summary view as per design.

* Fix safe area insets on summary view bottom sheet

* Scroll to selected reaction in the case that it is offscreen when the sheet is displayed.

* Add more reactions to UITests to ensure the new flow layout is displayed(wraps on to second line).

* Fix snapshot image.

* Address review comments.

* Use onLongPressGesture for reactions also to fix double actions bug and for consistency.

* Respect RTL languages.

* Fix unit test.
2023-06-29 10:53:44 +01:00
Stefan Ceriu
e25ca2e120 Bump the RustSDK to v1.0.89-alpha 2023-06-28 12:16:26 +03:00
Stefan Ceriu
e6711a0236 Removed unused swipe gesture (+3 squashed commits)
Squashed commits:
[d64bb3bb] Stop using the ServiceLocator directly in the ScreenTrackerViewModifier
[37c46ab9] Rename Analytics to AnalyticsService
[8852a371] #920 - Cleanup ServiceLocator usages
2023-06-28 11:33:41 +03:00
Doug
13f5ec8a73
Fix missing user agent during login and the first session. (#1181) 2023-06-27 14:41:57 +00:00
Stefan Ceriu
bc7faec44a Bump the RustSDK to v1.0.87-alpha 2023-06-26 20:25:55 +03:00
Stefan Ceriu
ad1b4a761a Bump the RustSDK to v1.0.86-alpha 2023-06-26 16:30:24 +03:00
Mauro
48c83088a4
SDK bump to 1.0.85-alpha and disable push rules filtering (#1162)
* sdk bump and disable push rules filtering

* changelog
2023-06-26 16:22:55 +03:00
Alfonso Grillo
1f99e9af8d
Update Matrix SDK to v1.0.84-alpha (#1147)
* Fix build errors

* Add sendLocation API

* Amend cancelled behavior
2023-06-23 15:14:38 +00:00
Mauro
afc4332716
Two sync loop experimental solution to decrypt push notifications (#1082)
* Experimental two sync loop solution

* better logging

* improved the code and handled invite notifications display better

* improved invite notifications

* new exerimental branch

* new sync loop

* code updated

* code improvements

* code improvements

* fix typo

* code improvements

* removed some unused code and added a respawn

* fixing some NSE issues

* code improvements

* new version of the branch

* more logging

* running the nse process ONLY IF necessary

* finally works! made also the feature flag

* also the encryption value of the room list api will depend on the flag now

* changelog

* code improvements

* code improvement

* updated proj

* fixing some compilation error after the rebase

* opt-in for the encryption sync

* fix
2023-06-22 17:23:33 +00:00
Stefan Ceriu
652fd3cf76
Room list service (#1138)
* Adopt the new RoomListService

* Use client.roomListWithEncryption

* Store the roomList so that it doesn't get dropped and create problems on the rust side

* Use roomListService instead of old roomList client method

* Added back documentation removed by mistake

* Tweaks following code review, SDK bump
2023-06-22 19:59:32 +03:00
Mauro
6018221e1e
sdk bump, last one for today I swear (#1134) 2023-06-22 14:51:42 +00:00
Doug
f2312f6f70
App polish part 3 (#1135)
- Add an animation to long press on messages.
- Make emojis bigger on the reactions picker screen.
- Remove quote menu action.
- Fix emoji picker handle overlapping focused search field.
- Update launch, splash and onboarding screens.
- Use elevation tokens in Forms.
- Move the cancel button on the Start Chat flow.
2023-06-22 14:37:47 +01:00
Mauro
8e8bb7a3e7
SDK Bump to 1.0.80 and push notifications filtering (#1131)
* filtering nil notifications

* updated the sdk
2023-06-22 11:24:37 +00:00
Stefan Ceriu
bbcfec3574 Bump the RustSDK to v1.0.79-alpha 2023-06-21 18:45:26 +02:00
Doug
ede4ab095c
App polish part 2 (#1118)
- Fix sheet backgrounds in dark mode.
- Fix background colours for reaction buttons.
- Reply view layout.
- Update separator colours.
- Don't show sender name/avatar in DMs.
- Fix inconsistent line heights with formatted body text.
- Use plain text for reply
- Increase tappable size of collapsed state changes button.
- Blockquote layout and text colour.
- Tap to expand the topic in room details.
- Change the topic and security font size in room details.
- Add cancel button when inviting someone to an existing room.
- Reword Add Friends to Add People in start chat screen.
- Update compound.
2023-06-20 17:31:40 +00:00
Stefan Ceriu
3bbc16fd64 Bump the RustSDK to v1.0.78-alpha 2023-06-19 19:01:22 +03:00
Stefan Ceriu
0d737d0dd8 Bump the RustSDK to v1.0.77-alpha 2023-06-16 17:41:12 +03:00
Stefan Ceriu
d2d626f724
Add support for the new RoomList API (#1092)
* Add support for the new RoomList API

Squashed commits:
[8c2625a] Re-enable invites
[339e59b5] Add automatic syncing restarts after entering the terminated state for whatever reason
[b5498e96] Reimplemented room list state management and usage
[8154b0cf] Fix visible rooms range setting after scrolling stops
[5155c44d] Hook up initial loading idicator and session verification banner to room list service states
[700a5a2e] Enable back room subscriptions, timeline listeners and unread notifications / counts
[9df383bc] Enable last messages and timestamps, they don't crash on release builds
[7c4da9da] Add back certain fields now that the "full room" is available
[9f6534a7] Adopt interfaces to new RoomList API, untested as requests don't go to the right URL

* Tweaks following code review

* Bump the RustSDK to v1.0.76-alpha
2023-06-16 16:11:45 +03:00
Doug
de0213abb2
Adopt Compound Colours (#1086)
* Delete deprecated font tokens.

* Migrate from primaryContent to textPrimary/iconPrimary.

* Migrate from links to textLinkExternal.

* Migrate from secondaryContent to textSecondary/iconSecondary.

* Migrate from accent to textActionPrimary.

- Some uses changed to textPrimary or iconPrimary as necessary.
- Some manual tints removed now that that Sentry is fixed.

* Migrate alert to textCriticalPrimary/iconCriticalPrimary.

* Migrate from brand to textActionAccent/iconAccentTertiary.

* Migrate from background to bgCanvasDefault or text/iconOnSolidPrimary

* Migrate system to bgSubtleSecondary.

* Remove ElementUIColors and obsolete migrated colours.

* Migrate tertiaryContent/quaternaryContent/quinaryContent to Compound.

* Migrate bubblesYou/bubblesNotYou to use Compound.

* Update Compound.
2023-06-16 10:49:13 +01:00
Mauro
2cfc844545
Refactored alert info to not use the soon to be deprecated API (#1084)
* refactored alert info to not use the soon to be deprecated API

* missing files and changelog

* updated some tests

* Update ElementX/Sources/Screens/RoomMemberDetailsScreen/View/RoomMemberDetailsScreen.swift

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>

---------

Co-authored-by: Doug <6060466+pixlwave@users.noreply.github.com>
2023-06-14 14:24:10 +00:00
Alfonso Grillo
1c2964c86d
Update SDK to 1.0.75-alpha (#1075)
* Update SDK to 1.0.75-alpha

* Fix mocks
2023-06-14 08:49:59 +00:00
Mauro
1be74e6e69
SDK Bump to 1.0.74 (#1059)
* testing improvements

* code improvements and sdk bump

* improved the stencil file

* improved the build sdk function

* code improvement

* also added the tearDown
2023-06-09 16:27:08 +00:00