Commit Graph

56 Commits

Author SHA1 Message Date
AbronStudio 73f18e0f70 refactor: Update navigation and channel handling
This commit refines the navigation and channel management within the chat interface.

Key changes include:
- Introduced a new `backToChannelsScreen` callback in `AppEntrypoint` and `ChannelScreen` to facilitate navigation back to the channels.
- Updated `ChatRouterDestination` to include `ServersChannels` and modified the logic to handle channel navigation correctly.
- Adjusted the `ChannelSideDrawer` to reflect the new routing logic, ensuring the correct channel is displayed based on the current server.
- Removed the back navigation button from the `SettingsScreen` for a cleaner UI experience.
- Updated the `ChannelNavigator` to handle the new `Settings` destination and ensure proper rendering of the `SettingsScreen`.
- Enhanced the `Sidebar` component to support navigation to the `Settings` screen and manage server-specific channels effectively.
2025-07-29 15:08:12 +03:30
AbronStudio c0023152f7 refactor: Implement bottom navigation bar
This commit introduces a bottom navigation bar to the chat interface.

Key changes include:
- Added a `Scaffold` with a `BottomAppBar` in `ChannelNavigator`.
- The `BottomAppBar` contains `NavigationBarItem`s for "Home", "Friends", and "You" (Overview).
- The "Home" destination now displays the `Sidebar`.
- Removed the tablet-aware UI logic and the dismissible navigation drawer implementation.
- Simplified `ChannelNavigator` parameters, removing `useDrawer`, `disableBackHandler`, `onEnterVoiceUI`.
- Updated screen composables (`FriendsScreen`, `NoCurrentChannelScreen`, `ChannelScreen`, `OverviewScreen`) to remove the `useDrawer` parameter and its associated logic, as the drawer is no longer directly managed by these screens.
- Removed `drawerState` parameter from `ChannelSideDrawer` and related components, as drawer state is now managed differently.
- Removed logic related to closing the drawer on item clicks within `ChannelSideDrawer`.
- Added a new `ChatRouterDestination.Home`.
- Request for `POST_NOTIFICATIONS` permission is now correctly using `Manifest.permission.POST_NOTIFICATIONS`.
2025-07-26 16:50:19 +03:30
Abron Studio f70b8b3c56
Merge branch 'revoltchat:dev' into change/auth-design-to-pep 2025-07-26 14:06:01 +03:30
AbronStudio 80db00ee2a feat(auth): implement platform selection screen with API URL input
Add platform selection UI with PepChat and Revolt options
Implement clickable platform cards that set the API URL
Create custom styled text field for API URL input
Add confirm button with localized string resource
Fix vertical alignment of placeholder text in text field
2025-07-26 12:18:06 +03:30
Infi a92a07e2ed feat: geo support
Signed-off-by: Infi <infi@infi.sh>
2025-07-26 07:12:29 +02:00
Infi 740d693be4 feat: basic livekit/voice chat impl
Signed-off-by: Infi <infi@infi.sh>
2025-05-31 21:51:13 +02:00
Infi afba6f9ecf feat: permission management for voice chat
Signed-off-by: Infi <infi@infi.sh>
2025-05-31 20:15:23 +02:00
Infi 14522fd6f3 feat: basic implementation of voice channel overlay
Signed-off-by: Infi <infi@infi.sh>
2025-05-04 04:58:22 +02:00
Infi 5f70da854e style: rename .components to .composables
Compose convention is to say composables; previous name is a holdover from React

Signed-off-by: Infi <infi@infi.sh>
2025-04-17 00:58:20 +02:00
Infi 5b8333490b style: extract easing tokens into separate file
Signed-off-by: Infi <infi@infi.sh>
2025-04-03 00:21:35 +02:00
Infi 5cd247c2f3 feat(polar): begin convo screen
Signed-off-by: Infi <infi@infi.sh>
2025-03-25 00:57:05 +01:00
Infi c3a4c5654a feat: build basic UI skeleton
Signed-off-by: Infi <infi@infi.sh>
2025-03-24 12:49:57 +01:00
Infi 5d3ac27f54 chore: it appears we unironically had an unused screen all this time
Signed-off-by: Infi <infi@infi.sh>
2025-03-23 05:24:57 +01:00
Infi aae63df08e fix: fix splashscreen issues by removing it on Android<12
Signed-off-by: Infi <infi@infi.sh>
2025-03-08 22:23:56 +01:00
Infi 05265476d1 feat(login2): use responsive layout
Signed-off-by: Infi <infi@infi.sh>
2025-01-22 23:18:56 +01:00
Infi 6c20dee6c9 feat: animation for chatrouter appear
Signed-off-by: Infi <infi@infi.sh>
2025-01-11 17:14:37 +01:00
Infi 9603a2f7d4 style: suppress deprecation
Signed-off-by: Infi <infi@infi.sh>
2025-01-11 15:48:17 +01:00
Infi 7b4afc69e4 feat: start documenting keyboard shortcuts
Signed-off-by: Infi <infi@infi.sh>
2024-12-25 02:04:31 +01:00
Infi 872940900a fix: changes in accordance with cdn overhaul
Signed-off-by: Infi <infi@infi.sh>
2024-12-21 21:14:50 +01:00
Infi 3c2556872c feat: display login errors and allow try again
Signed-off-by: Infi <infi@infi.sh>
2024-12-21 20:56:03 +01:00
Infi 2d76949644 feat: prototype for user cards
Signed-off-by: Infi <infi@infi.sh>
2024-12-01 04:16:08 +01:00
Infi 20a066dabb fix: startup crash in some network environments
Signed-off-by: Infi <infi@infi.sh>
2024-11-23 13:55:09 +01:00
Infi 1b4080520a feat(settings): language picker
Signed-off-by: Infi <infi@infi.sh>
2024-11-14 22:57:02 +01:00
Infi a302c2d13c feat: health alerts
Signed-off-by: Infi <infi@infi.sh>
2024-10-08 19:32:37 +02:00
Infi ca14507720 feat: add setting for special embeds
Signed-off-by: Infi <infi@infi.sh>
2024-10-04 19:01:39 +02:00
Infi f6d9800f15 feat(jbm): remove jbm switches on every message
Signed-off-by: Infi <infi@infi.sh>
2024-09-18 17:36:36 +02:00
Infi 0696f1a8de feat: support next API version
Signed-off-by: Infi <infi@infi.sh>
2024-08-30 15:51:14 +02:00
Infi 27842094eb fix: onboarding response ratelimit
Signed-off-by: Infi <infi@infi.sh>
2024-07-20 18:01:11 +02:00
Infi f48bda178a feat: cache servers and channels locally
Signed-off-by: Infi <infi@infi.sh>
2024-03-09 19:29:17 +01:00
Infi 3c3000b1d5 fix: issue in which rotation, dark toggle cause app to reset state
Signed-off-by: Infi <infi@infi.sh>
2024-03-06 21:34:48 +01:00
Infi 5875f3ded7 feat: add chat settings and quick reply options
(for future use)

Signed-off-by: Infi <infi@infi.sh>
2024-03-06 21:28:03 +01:00
Infi a63f142bbc feat: group settings screen
Signed-off-by: Infi <infi@infi.sh>
2024-03-02 21:25:33 +01:00
Infi a5739f0f58 feat: group create screen
Signed-off-by: Infi <infi@infi.sh>
2024-02-21 01:21:51 +01:00
Infi 33abcf4cbb feat(gp): rm feedback and analysis
Signed-off-by: Infi <infi@infi.sh>
2024-02-03 13:23:18 +01:00
Infi c891d4528c feat(gp): remove closed beta updater
Signed-off-by: Infi <infi@infi.sh>
2024-02-03 13:23:18 +01:00
Infi 5736aec64d feat: retire PageHeader in favour of TopAppBar
- also make DisconnectionNotice borderless

Signed-off-by: Infi <infi@infi.sh>
2024-01-28 17:50:54 +01:00
Infi fc2c3f6f6f feat: try new navigation transitions
Signed-off-by: Infi <infi@infi.sh>
2024-01-20 01:10:50 +01:00
Infi 8be81649b2 feat: leverage android 12 splash screen API
Signed-off-by: Infi <infi@infi.sh>
2024-01-19 23:48:39 +01:00
Infi 9e003897a5 feat: routine housekeeping
Signed-off-by: Infi <infi@infi.sh>
2023-12-16 03:34:30 +01:00
Infi 2a88d58cfa feat: discover screen
Signed-off-by: Infi <infi@infi.sh>
2023-11-18 19:01:46 +01:00
Infi 35c8976e30 feat: theme colour overrides
Signed-off-by: Infi <infi@infi.sh>
2023-10-31 23:52:16 +01:00
Infi 771fc74cc1 feat: profile settings (set pfp and background)
Signed-off-by: Infi <infi@infi.sh>
2023-10-31 20:07:12 +01:00
Infi 0245edc8f1 feat: session settings
Signed-off-by: Infi <infi@infi.sh>
2023-10-23 00:15:06 +02:00
Infi fac7411eea style: run ktlint on code
Signed-off-by: Infi <infi@infi.sh>
2023-10-21 16:27:05 +02:00
Infi 91788740a6 feat: move beta access control into c++
Signed-off-by: Infi <wingit@geist.ga>
2023-09-16 15:29:09 +02:00
Infi e625297718 feat: changelog system
Signed-off-by: Infi <wingit@geist.ga>
2023-09-08 03:45:40 +02:00
Infi 5dd89fa070 feat: initial tablet support
Signed-off-by: Infi <wingit@geist.ga>
2023-08-02 23:10:41 +02:00
Infi d49ced35ad fix: server banner text colour in light mode
Signed-off-by: Infi <wingit@geist.ga>
2023-06-17 14:27:26 +02:00
Infi 044c61b678 feat: temporary closed beta updater
Signed-off-by: Infi <wingit@geist.ga>
2023-06-06 23:08:01 +02:00
Infi a7d586c4f9 feat: sync app height with animated keyboard height
Signed-off-by: Infi <wingit@geist.ga>
2023-06-06 02:42:56 +02:00