61 Commits

Author SHA1 Message Date
Aaron Thornburgh 96b6d69d5a Update Send button bg color (#5170)
* Update Send button bg color

Change the gradient bg to accent/rest.

* Tidy-up ComposerToolbar to match iOS 18 Figma.

Also simplifies the tests a bit.

* Add a .glassEffect to Compound's SendButton.

* Add a border to TimelineReplyView.

Also use the same sizes in both the message bubbles and the composer.

* Change icon size and container in message bubbles

- Container size = 36x36px
- Icon size = 24x24px

* Update icon of reply contents to be 24x24

* Update the VoiceMessageButton to match the designs.

* Adopt Liquid Glass in the ComposerToolbar.

* Generate and fix snapshots.

---------

Co-authored-by: Doug <douglase@element.io>
2026-03-25 17:42:10 +00:00
Mauro b8d337e4ce Render the live location timeline item (#5209)
* created the data for the timeline item

# Conflicts:
#	ElementX/Sources/Other/Logging/Tracing.swift
#	ElementX/Sources/Services/Authentication/AuthenticationService.swift
#	ElementX/Sources/Services/Authentication/LinkNewDeviceService.swift

* Implemented the LLS timeline item

* updated preview tests

* pr and design suggestions

* previewscrollview is debug only
2026-03-24 10:34:00 +01:00
Doug 85ebf4d1ce Move BigIcon into Compound and add a new TitleAndIcon component. (#4866)
* Move BigIcon into Compound.

* Replace the old server selection image asset with the \.host icon.

* Add a new TitleAndIcon component to Compound.

* Add the ability to override TitleAndIcon's padding.
2025-12-16 16:01:26 +00:00
Doug 4273044146 Use the new Icon Composer .icon format. (#4612) 2025-10-10 20:00:03 +01:00
Doug a318c3918d Update the app icon. (#3977) 2025-04-04 17:08:59 +01:00
Doug 51886b0c78 Refactor the MapTiler configuration into a single place. (#3944)
* Refactor the MapTiler configuration into a single place.

* Merge the MapAssets catalog into the normal one.
2025-03-26 14:39:09 +00:00
Doug b477a32d2e Remove unused/redundant assets. (#3702)
* Remove unused image assets.

* Remove unused/redundant colour assets.
2025-01-27 11:44:39 +00:00
Stefan Ceriu 8581355372 Remove join room screen graphic and align platforms 2024-04-24 17:26:10 +03:00
Doug f8920d4d11 Initial implementation of the JoinRoomScreen. (#2684)
* Update Compound and use super button for room directory.
2024-04-12 13:13:22 +01:00
Doug da598302df Add more flexible background support to FullscreenDialog (#2675)
Hide the background when the main content extends underneath the bottom content.
2024-04-10 14:56:41 +01:00
Stefan Ceriu d72fa02ac6 Fixes #2609 - Add trophy icon next to the winning poll option (#2610)
* Fixes #2609 - Add trophy icon next to the winning poll option

* Address PR comments
2024-03-27 10:50:32 +02:00
Stefan Ceriu a62c96f1c5 Onboarding flow coordinator and FTUE changes (#2578)
Fixes #2595, fixes #2594, fixes #2593, fixes #2592, fixes #2591
2024-03-21 14:01:23 +02:00
Doug e80612b968 Update compound and remove all of the temporary icons (#2419)
* Update compound and fix breaking changes.

* Replace a lot of temporary icon assets with Compound versions.

* Replace temporary composer icon assets with Compound versions.

* Remove old icon asset from EI.

* Use Compound icons where possible for hero images.

* Snapshots
2024-02-05 16:03:13 +00:00
Mauro d99d26fcdc Removing Dead Code part 1 (#2234) 2023-12-13 09:51:57 +01:00
Doug 3d76f06b0d Remove the isPressed animation from the room attachment picker button. (#2173)
Fixes a bug where the presented sheet would show light mode buttons on a dark mode background when using the in-app appearance override.
2023-11-27 12:09:25 +00:00
Alfonso Grillo 81373b0d98 Update polls icons (#2163)
* Add new polls icons

* Fix preview tests

* Update UI tests

* Add polls reply view test
2023-11-24 14:39:53 +00:00
Doug 0831c898ef Compound icons part III - Revenge of the SF Symbol (#2093)
* Use Compound in StartChat screen.

* Update location sharing icons.
2023-11-16 15:50:06 +00:00
Doug 4b3a373782 Use more Compound icons (part 2!) (#2082)
* Use Compound icons in ListRow.

* Add CompoundIcon(asset:) convenience initialiser.
2023-11-15 09:54:43 +00:00
Doug 4257c20bc9 First round of icon updates. (#2076)
Update Compound too.
2023-11-13 16:44:29 +00:00
Nicolas Mauri da831f6725 New voice message recording mode (#2051)
* Lock voice message recording

* Use the VoiceMessageCache to store the recording file

* Rework on some composer toolbar buttons

* Update accessibility labels for voice message recording button

* PreviewTests
2023-11-10 15:32:22 +00:00
Alfonso Grillo 4af8ef2a5f Voice message UI polish (part 2) (#1995)
* Update compund

* Fix create poll screen bin button style

* Fix timeline menu description for voice messages

* Fix bin button in ComposerToolbar

* Add VoiceMessageButtonStyle

* Update compound & fix breaking changes

* Fix voice message bin size

* Refactor VoiceMessageRecordingButton

* Fix preview tests
2023-11-01 10:03:35 +01:00
Stefan Ceriu 6bde9f242f Prevent AttributeGraph crashes, replace generated settings with badge icon with standalone asset 2023-10-20 14:11:37 +03:00
Stefan Ceriu c8b9d95122 #1899, #1900, #1901 - Implement chat backup setting screens 2023-10-19 15:34:10 +03:00
Nicolas Mauri 9ab3b20a49 Add UI to record a voice message from the composer toolbar (#1892) 2023-10-16 15:18:51 +00: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
Nicolas Mauri 3ff983a48b Fix the room summary and reply view for voice messages (#1856) 2023-10-05 09:22:16 +00:00
Nicolas Mauri 82abd0aaf3 Add voice message playback from the timeline (#1844) 2023-10-04 16:32:45 +00:00
Doug 4e6fe278db Update iconography visible in launch video (#1762) 2023-09-21 12:38:09 +01:00
Alfonso Grillo 8ca3500981 Composer and RTE polish (#1719)
* Move link button

* Always show indent buttons

* Fix code blocks and quote block styles

* Fix code blocks and quotes style

* Update composer attachment icon

* Fix send message icon

* Fix composer border

* Fix rte border

* Update RTE button assets

* Update close rte icon

* Refactor RTE and composer layout

* more padding fixes

* Update compound

* Update WysiwygComposer to 2.11.0

* Fix ui tests

* Fix composer bottom padding

* Update snapshot tests
2023-09-18 14:11:22 +00:00
Doug fd6711bbc7 Update welcome screen assets. (#1723)
* Update snapshots.
2023-09-18 11:07:47 +01:00
Doug b3a0680d64 Update App Icon (#1720)
Remove original TestFlight icon and unused iconizer.sh script.
2023-09-15 12:34:01 +01:00
Alfonso Grillo bd4ee92124 Rich text editor "expanded mode" (#1656)
* Fix composer icon in dark mode

* Add RTE poc

* Amend cornerRadius

* Add snaps

* Fix composer top spacing

* Fix clipping

* Refine UX

* Fix animation

* Add constants + iPad hide bars logics

* Polish clamping

* Fix UT

* Cleanup

* Add grabber color

* Add UI tests

* Rename handle -> grabber

* Fix resize composer when RTE is off

* Fix project file
2023-09-11 07:54:37 +00:00
aringenbach c9962a4459 Add RTE formatting buttons (#1614)
* Add RTE formatting buttons

* Update UUID as stored properties

* Disable autocorrection on URL fields

* Alert ids to let

* Add ComposerToolbar_Previews

* Cleanup

* Cleanup

* Refactor FormatItem colors

* Fix composer layout issue

* Fix ui tests

* Nest ComposerToolbar A11y ids under RoomScreen

* Add composer reply ui tests

* Add UTs

---------

Co-authored-by: Alfonso Grillo <alfogrillo@gmail.com>
2023-09-05 15:39:54 +00:00
Alfonso Grillo 9b313b814e Polls refinements (#1608)
* Refine focus behavior

* Begin draft mode

* Add alert on poll form

* Add poll ended asset

* Add fallback text for ended poll event

* Cleanup

* Fix assets

* Remove poll feature flags

* Fix UI tests

* Fix ui tests

* Refine discard poll alert

* Remove unused import

* Rename hasDraftContent -> hasContent

* Restore createPoll-2 ref screenshots
2023-09-01 15:55:11 +02:00
Alfonso Grillo a2623dd254 Create poll UX (#1571)
* Add poll attachment button

* Add poll creation feature flag

* Setup navigation to CreatePollScreen

* Add create/cancel actions

* Add create poll screen ui skeleton

* Add bindings in CreatePollScreen

* Add logics in CreatePollScreen

* Cleanup code

* Fix option deletion crash

* Fix conflicts

* Add create poll logic

* Add localisations

* Fix test build errors

* Fix crash

* Add UTs

* Add accessibility IDs

* Add ui tests

* Add 240 char limit

* Fix addOption hide behavior

* Add maxNumberOfOptions

* Cleanup code

* Move delete workaround in the view model

* Use compound delete icon
2023-08-30 09:23:30 +00:00
Alfonso Grillo 25f66d2557 Refine polls UI in the timeline (#1474)
* Add summary view in PollRoomTimelineView

* Add selectedPollOption action

* Handle undisclosed polls

* Add more logics in PollRoomTimelineView

* Refine ended poll UI

* Refine poll layout

* More UI refinements

* Fix layout issue

* Refine progress bar

* Add poll mocks and UI tests

* Cleanup
2023-08-11 10:25:16 +00:00
David Langley beaf9a8dbf Reactions - Design review tweaks (#1417)
* Design review tweaks

- truncate reactions as per spec
- add haptic feedback on reacting
- Remove all collapse/expand animations on reactions
- tweak reaction and summary padding
- Fix alignment of time on reaction summary view
- Made sure reaction summary button in horizontal scroller is on screen on appear
- update screenshots

* Update TimelineReactionsView.swift

* Remove dark add more button and check long rtl reactions

* Set colour of  templated add more button

* Fix padding and only inset from the bubble on the leading side as per designs

- Fix padding
- Only inset from the bubble on the leading side as per designs

* Update screenshots

* Fix line length warning.
2023-07-31 11:16:52 +00:00
Alfonso Grillo 0e7a48d961 "View only" polls in the timeline (#1399)
* Add stub methods in RoomTimelineItemFactory

* Add PollRoomTimelineView and PollEndRoomTimelineView

* Add timeline skeleton

* Start poll mapping

* Add comment

* Refine poll UI

* Add feature flags for polls

* Cleanup

* Delete poll end event

* Refine poll mapping

* Refine poll layout

* Reuse FormRowAccessory

* Refine poll bubble layout

* Localise strings

* Update project

* Refine poll preview

* Map poll properties
2023-07-27 15:34:27 +02:00
David Langley b31af77686 Reactions: Add more button (#1314)
* 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.

* Add the add more button and change the layout to be reactions specific and account for the add more button specifics.

* Update CollapsibleReactionLayout.swift

* Rename lines to rows, to hopefully ease the incoming merge.

* Add LayoutValueKey to organise subviews by item type.

- create ReactionLayoutItemType to tag subviews with ReactionLayoutItem
- Add LayoutValueKey support to the layout mocks
- Fix some mistakes in the merge
- Make the test code a bit more DRY
- Make the animation of the addMore and collapse buttons consistent

* Fix naming of the add more button label

* Address comments and fix padding

- Fix typos
- Use pdf/svg for icon
- Fix incorrect padding from a bad merge

* Fix "Add more" button padding to match designs

* Update snapshot test reference images.

* Fix naming, add Preserves Vector Data
2023-07-14 16:32:32 +00: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
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
Doug 67e48e465f Remove asset (#1213)
Re-add asset
2023-06-29 09:47:17 +01:00
Flescio 102e6a64fa Send pin-drop location (#1179)
* add location sharing action in room, and open location sharing screen

* add pin location sharing

* fix asset, add tests for location viewModel, add send location request

* fix map zoom level, fix assets for location

* add feature flag for location sharing

* hide attribution button
2023-06-28 09:39:38 +00:00
Doug 41772b57eb Fix asset folder structure. 2023-06-24 20:11:55 +01: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
Alfonso Grillo 07a6235fac Render location events in the timeline (#1136)
* Start location integration in the timeline

* Add warning

* Add LocationRoomTimelineView

* Add GeoURI

* Refine LocationRoomTimelineView

* Refine LocationRoomTimelineView

* Add LocationRoomTimelineView previews

* Cleanup code

* Mock reply

* Add FF for location events

* Update project file

* Fix MapLibreStaticMapView placeholder

* Add MapTilerAttribution

* Add LocationPinView

* Fix layout

* Start reply rendering

* Refactor ReplyView.Icon

* Add localisations

* Fix reactions

* Amend GeoURI regex

* Add log

* Fix tests

* Attribution placement refactor

* Cleanup

* Replace NSRegularExpression with a regex

* Cleanup

* Update unit tests

* isMediaType -> shouldFillBubble
2023-06-23 12:49:35 +02:00
Doug 40fab35dd7 App Polish number 4 (#1142)
* Add dedicated placeholder screen instead of using the splash screen.

* Reorder message actions.
2023-06-23 11:01:09 +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
Nad Chishtie 8483f6e76f Refresh app icon asset 2023-06-12 08:30:13 +03:00
Stefan Ceriu 4de6d07a0b Update the app icon, switch the icon set to single size 2023-06-08 18:26:34 +03:00