119 Commits

Author SHA1 Message Date
Doug
e3c4b3781a
Update package acknowledgements (after resetting the packages). (#3167) 2024-08-14 13:17:34 +01:00
Doug
0c9da2cee9
Use SwiftPackageList to generate acknowledgements. (#3117) 2024-08-06 12:39:37 +01:00
Mauro
9534bd2469
Removed RTE script (#3067) 2024-07-19 10:09:57 +02:00
Doug
f9d107c635
Fix RTE framework signature error when building DEBUG builds for a device. (#3040) 2024-07-15 13:59:11 +01:00
Doug
a8bf97a472
Fix an App Store error due to an RTE version mismatch. (#3029) 2024-07-12 17:01:59 +01:00
Stefan Ceriu
3c500887ab
Setup Sentry instrumentation on top of the existing Signposter (#2985)
* Move Sentry setup outside of the BugReportService

* Setup Sentry SwiftUI tracing for the homeScreen and roomScreen roots

* Setup Sentry instrumentation on top of the existing Signposter

* Various tweaks
2024-06-28 18:15:57 +03:00
Doug
3cc4145a4c
Use XcodeGen files for app variants and setup Enterprise submodule. (#2976)
- Create an app.yml with the base app variant.
- Override app.yml contents on Nightly/PR builds.
- Add AppHooks mechanism.
- Add Enterprise submodule.
- Conditionally import Enterprise/fastlane/Fastfile if available.
2024-06-27 18:18:17 +01:00
Stefan Ceriu
2079bf40c6 Introduce mock SDK timeline items and a live, lorem ipsum based, timeline provider 2024-06-11 18:09:43 +03:00
Stefan Ceriu
f6c476eeca Show ElementCalls in the system Recents list and allow deep linking back into a call from there 2024-05-27 17:04:48 +03:00
Stefan Ceriu
8bfd802793 Add support for showing the native OS incoming call screen when starting new Element Calls 2024-05-24 15:32:56 +03:00
Doug
9282088891 Remove OTLP support. 2024-05-08 11:33:37 +01:00
Doug
ef6315d329
Add matrix.to site association (#2797) 2024-05-07 16:00:17 +01:00
Doug
eda7d59518
Update strings and add productionAppName value for the new placeholder. (#2677)
* Update strings and add productionAppName value for the new placeholder.

* Fix snapshots.

* Fix more snapshots.
2024-04-10 16:58:00 +01:00
Stefan Ceriu
7a9e4819c1 Add .xcprivacy info files to the main app and the notification service extension 2024-03-18 17:31:46 +02:00
Mauro
ea5b154d6e
Remove NCE as a target (#2247) 2023-12-14 15:40:14 +01:00
Mauro
b9a6ebe03a
Periphery to detect dead code (#2227) 2023-12-12 10:17:15 +00:00
Mauro
a4bc7b8e36
Custom copy for notifications that contain mentions (#2050) 2023-11-09 18:12:11 +00:00
Doug
11563c6297
Add support for Face ID/Touch ID to app lock. (#1966)
* Fix biometrics with low grace period and backgrounding before unlocked.

* Trigger permissions alert when enabling Face ID.
2023-10-27 09:09:12 +00:00
Alfonso Grillo
6e5680fc36
Update permission alerts (#1953)
* Update system alerts

* Update localisations

* Update localizations
2023-10-24 14:57:27 +00:00
Alfonso Grillo
fbcf037240
Voice message waveform from audio files (#1919)
* Add DSWaveformImage

* Add estimated waveform

* Add progress mask modifier

* Add real waveform

* Fix cursor

* Fix scale factor

* Refine ProgressMaskModifier

* Refine waveform logic

* Add docs

* Add waveform placeholder
2023-10-19 11:01:45 +02:00
Doug
2c5662a278
Remove DesignKit package (#1886)
- Move button styles to Compound
- Rename text style to AuthenticationTextStyle as its only in the auth flow.
- Add the brand colour locally for now until its included in Compound.

* Update snapshots.

---------

Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
2023-10-12 15:45:27 +01:00
Stefan Ceriu
cd48fc10d4 Fixes #1824 - Redirect universal links directly to the browser if they're not supported 2023-10-05 16:36:42 +03:00
Nicolas Mauri
82abd0aaf3
Add voice message playback from the timeline (#1844) 2023-10-04 16:32:45 +00:00
Mauro
341b177e23
Prefire basic implementation (#1743)
* prefire basic implementation

force the unit tests to run on iPhone 14

skipping plugin validation

archive artifacts

better workflow

removed the OS restriction

lfs

custom stencil

new test file

deleting

* git lfs

* lfs

* test

* customised the stencil to support our internal protocol

* for now we can remove the OS check from the stencil

* added a delay

* tests have been moved

* improvement

* recommit

* perceptual precision lowered

* updated snapshot testing and selected also iOS version

* added ios version control
2023-09-20 14:07:18 +02:00
Stefan Ceriu
f95331d3a6 Use a different scheme for Element Call in the form of io.element.call:/?url=some_url 2023-09-19 18:11:09 +03:00
Stefan Ceriu
ee4040141d
Top level deeplink handling (#1660)
* Handle link opening on the top most levels and prepare for percolating them throughout the app
* Add support for a custom app scheme
* Add specific AppRoute parsers.
* Integrate custom scheme in the AppRouteURLParser
* Switch to `element://call` and cleanup route parsing
2023-09-11 12:31:31 +03:00
Stefan Ceriu
dedfb9394f Enable RUST_BACKTRACE by default 2023-09-08 15:27:54 +03:00
Stefan Ceriu
62b6cd598f
Generic element call link support (#1643)
* Remove swift-url-routing and replace it with a custom implementation. It fails parsing the fragments in app.element.io links and it doesn't bring any value
* Add handling for opening generic element call links
* Add applinks support for call.element.io
* Enable VoIP and Audio playback background modes
2023-09-07 12:06:18 +03:00
aringenbach
d1573ae40d
Initial integration of RTE (#1464)
* Initial integration of RTE

* Fix `clipped`, `focused` and composer view type

* Remove horizontal padding

* Add `ComposerToolbar` mock

* Restore `composerFocusedSubject`

* Allow using HTML from RTE on message sent

* Fix new message content API

* Add feature flag for Rich Text Editor
2023-08-29 12:37:13 +00:00
Stefan Ceriu
ecc549b280 Feature flag to OTLP tracing 2023-08-24 15:12:19 +03:00
Stefan Ceriu
bc2b904812 Add missing document configuration as per ITMS-90737
By declaring the CFBundleDocumentTypes key in your app, you've indicated that your app is able to open documents. Please set the UISupportsDocumentBrowser key to 'YES' if your app uses a UIDocumentBrowserViewController. Otherwise, set the LSSupportsOpeningDocumentsInPlace key in the Info.plist to 'YES' (recommended) or 'NO' to specify whether the app can open files in place. All document-based apps must include one of these configurations. For more information, visit https://developer.apple.com/document-based-apps/.
2023-08-22 18:30:22 +03:00
Mauro
db1903ec05
MessageText component (#1521)
* MessageText component

* swiftformat

* fix swift format being a bit crazy

* link tapping support

* new test + fix for font + dynamic support

* fix for blockquote issue.

* code improvement

* small code improvement and fixed tests not working due to weird swiftformat behaviour

* fix boost emoji

* updated swiftformat

* better testing

* UI tests updated

* fixing the issue with the cache overriding the size category changes

* whitespaces

* appropriate color + better info plist parsing

* cleaned the code and fixed links

* tapping link fixes

* list bug fix

* ui tests regenerated
2023-08-22 10:14:23 +00:00
Stefan Ceriu
8d409e7817 Replace custom HTTP_PROXY IP with localhost 2023-08-16 18:10:08 +03: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
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
Stefan Ceriu
1e8b894298 Prevent xcodegen from creating temporary references in the project file 2023-08-07 12:59:48 +03:00
Alfonso Grillo
a7256bb486
Move Map Libre API key to Xcode Cloud (#1313)
* Add config_production lane

* Add maplibre to .gitignore

* Add setupMapLibreKey

* Add documentation

* Fix failing UTs

* Fix more UTs

* Cleanup

* Add secrets.xcconfig

* Cleanup gitignore file

* Update post-checkout hook

* Cleanup SetupProject

* Update project

* Remove leftover in SetupProject

* Cleanup project.yml

* Add fastlane-plugin-xcconfig

* Improve test

* Update docs
2023-07-14 10:19:38 +02:00
Flescio
153149d93f
Send current user location (#1272)
* add new asset for location, add logic for sharing user current location

* work on default zoom and auth for location

* add attribution button

* fix attribution button position, fix isSharingUserLocation

* Add NSLocationWhenInUseUsageDescription back

* Fix initial animation

* change map logo and attribution position

* Add annotation just in the setup

* add errors and alert for map vies

* location unit test

* add unit test for location sharing

* add changelog

* Update ElementX/Sources/Other/MapLibre/MapLibreMapView.swift

Co-authored-by: Alfonso Grillo <alfogrillo@gmail.com>

* add comments and minor parameters refactor

* Update ElementX/Sources/Screens/LocationSharing/StaticLocationScreenCoordinator.swift

Co-authored-by: Mauro <34335419+Velin92@users.noreply.github.com>

* Update ElementX/Sources/Screens/LocationSharing/StaticLocationScreenViewModel.swift

Co-authored-by: Mauro <34335419+Velin92@users.noreply.github.com>

* Sort assets

* Cleanup

* Cleanup

* Fix error localizations

* Fix tests

---------

Co-authored-by: Alfonso Grillo <alfogrillo@gmail.com>
Co-authored-by: Mauro <34335419+Velin92@users.noreply.github.com>
2023-07-11 10:42:59 +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
Doug
2025dd9517
Migration Screen (#1224)
- Hide bottom bar when in skeletons.
- Use the new design for the Waitlist screen too.
2023-06-30 13:27:49 +01: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
dac80dd50e Temporarily remove the location usage description 2023-06-26 16:23:44 +03:00
Doug
aa30fe29e9
App polish part 5 (#1149)
- Set launch/splash screens to default background colour.
- Replace launch screen storyboard with info plist keys.
- Remove useless layout components in bubble styler.
- Fix lint error.
- Rename all assets.
- Update design of Analytics Prompt.
2023-06-23 17:10:37 +01: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
Flescio
163e38b1a9
Add reverse geocoding service (#1085)
* add Geocoding service

* move url session extension
2023-06-15 16:40:42 +02:00
Flescio
3374ebb48d
set up map sdk and reusable map view component (#1062)
* added map sdk with basic permission and static view

* add location annotation

* create dedicate service for MapTiler URLs

* manage error for MapLibre component

* add error to new Alert item
2023-06-14 09:08:36 +00:00
Stefan Ceriu
a85b313669 Use $(APP_DISPLAY_NAME) in camera and microphone usage descriptions 2023-06-13 17:26:29 +03:00
Stefan Ceriu
dfab0a1cb4 Update camera and microphone usage descriptions 2023-06-13 17:26:29 +03:00
Stefan Ceriu
c4125fd81c Fixes #1072 - Crashes when trying to save media to the photo library 2023-06-13 11:20:04 +03:00
Stefan Ceriu
c7ee69d75d Change the bundle display name to Element X, keep the rest as ElementX 2023-06-08 12:49:09 +03:00