Commit Graph

387 Commits

Author SHA1 Message Date
c79216c9fd ui: Guard [VideoChatWidget] against null when generating the thumbnail 2022-04-01 13:43:54 +02:00
69f8f1b365 ui: Add a basic implementation of the video inline widget 2022-04-01 13:37:38 +02:00
b4411ab4fb ui: Remove another debug statement 2022-03-31 14:56:11 +02:00
f5f0251431 ui: Use the base image widget 2022-03-31 14:49:43 +02:00
134a537a3a ui: Remove debug statement 2022-03-31 14:48:56 +02:00
7274fe1e74 ui: "Finish" the ImageChatWidget 2022-03-31 12:25:44 +02:00
83cb82caf0 ui: Hide checkmarks for messages we received 2022-03-30 12:57:27 +02:00
ce1a1b1e2f ui: Hide the file icon while downloading 2022-03-30 12:56:34 +02:00
88e48bccf1 ui: First restructuring of the inline chat widgets
This commit moves the widgets around and fully implements
the base widget for alot of others: [FileChatWidget].
2022-03-30 12:49:35 +02:00
85f44d635c style: Rename the UI eventhandler file 2022-03-27 12:11:11 +02:00
b08fe670bf service: Move the xmpp service over to an [EventHandler] 2022-03-27 12:09:12 +02:00
489ef364c1 ui: Migrate [AddContactPage] to Bloc 2022-03-26 18:01:15 +01:00
7a999d40d8 ui: Notify [PreferencesBloc] of the PreStart 2022-03-26 17:11:54 +01:00
c7dd5961f7 ui: Convert the settings to Bloc 2022-03-26 14:32:41 +01:00
3bae477ea5 ui: Fix removed import 2022-03-26 13:30:51 +01:00
b26c54f971 ui: Add back the profile page 2022-03-26 13:24:22 +01:00
515018e426 ui: Re-implement the roster 2022-03-25 19:28:28 +01:00
aea3371c8c service: Implement all [MessageUpdatedEvent]s 2022-03-25 19:04:20 +01:00
d1e15499e7 ui: Add back some settings pages 2022-03-25 18:31:47 +01:00
62a02d73bf ui: Fix conversation ordering 2022-03-25 18:25:39 +01:00
89f37e6204 ui: Fix UI sometimes waiting for the next UI update 2022-03-25 18:15:57 +01:00
75fa6b20ee ui: Re-implement the blocklist page 2022-03-25 15:00:35 +01:00
f6bc539037 ui: Re-connect the blocking support to the conversation page 2022-03-25 14:27:42 +01:00
f6e60bfa4e ui: Allow sending messages 2022-03-25 12:25:32 +01:00
321e663df4 service: Re-implement currently opened chat 2022-03-24 21:17:19 +01:00
fc566436dc ui: Implement quoting 2022-03-24 21:00:33 +01:00
dc3e77b3dd ui: Almost re-implement [ConversationPage] 2022-03-24 15:26:48 +01:00
3198cb7466 style: Fix linter warnings 2022-03-23 21:09:52 +01:00
25d368fe51 ui: Implement the navigation for [NewConversationPage 2022-03-23 21:00:07 +01:00
de0a8a27b1 ui: Implement more of [NewConversationPage] 2022-03-23 20:42:13 +01:00
79e864c9a9 ui: Bring the [NewConversationPage] back to 'live' 2022-03-23 16:26:18 +01:00
1615ab347a meta: Load conversations after PreStart 2022-03-23 15:50:54 +01:00
2157eab77a ui: Stub the [ConversationsPage] 2022-03-21 20:15:40 +01:00
7c6d2cb64b ui: Kind of implement the login 2022-03-21 19:40:28 +01:00
01399bb6ae meta: Implement the [AwaitableDataSender] in a test phase 2022-03-21 19:03:31 +01:00
aeb17c824d refactor: eventhandler -> awaitabledatasender 2022-03-21 12:42:24 +01:00
3aabce2b8d ui: Fix issue with AwaitableDataSender 2022-03-21 12:40:55 +01:00
8993fa96fc ui: Add the AwaitableDataSender 2022-03-21 12:37:10 +01:00
a40592e3e8 ui: Remove flow_builder 2022-03-20 12:55:25 +01:00
815936bf1e ui: First steps towards Bloc 2022-03-19 22:34:36 +01:00
e39463dc0a ui: Kind of implement setting an avatar 2022-03-17 11:40:57 +01:00
5d21177841 meta: Implement user blocking 2022-03-14 20:58:32 +01:00
a95c27cb0f ui: Use the rounded button on the login page 2022-03-13 16:12:58 +01:00
537f901e4c ui: Add a rounded button 2022-03-13 16:08:15 +01:00
ebfa1cc98f ui: Stub-out a typing indicator 2022-03-13 14:01:22 +01:00
d241ca0864 ui: Improve the contrast a bit 2022-03-13 13:39:28 +01:00
5aabed45fd ui: Implement the sent marker 2022-03-13 13:06:52 +01:00
255d0ef8ea ui: Re-implement the new conversation page 2022-03-10 17:38:53 +01:00
9ea2664111 service: Fix messages not appearing after re-adding a contact 2022-03-09 18:08:45 +01:00
a30d9ceaea ui: Kinda improve the profile UI 2022-03-09 16:37:24 +01:00
5e8fa76a47 build: Fix license script 2022-03-09 13:53:40 +01:00
2ffeb43a77 ui: Implement shared media 2022-03-09 13:27:22 +01:00
f6bcd5041f ui: Fix the template when adding a contact from within a conversation 2022-03-08 18:27:56 +01:00
4a17ec9812 ui: Refactor the ConversationPage
This refactor was needed to add the line for adding a conversation
to the user's roster or block them.

This also removed one unnecessary event.
2022-03-08 18:18:33 +01:00
92731677a3 meta: Implement swipe-to-quote 2022-03-08 14:13:58 +01:00
76118d0cc5 ui: Allow quoting messages 2022-03-07 20:32:29 +01:00
7f8cc962b9 ui: Make background images cover the container fully 2022-03-06 17:01:13 +01:00
6d9d6bb0a1 ui: Delete old background images on setting and removing 2022-03-06 17:00:58 +01:00
43041ba4ce ui: Implement chat backgrounds 2022-03-06 16:52:32 +01:00
820a1a7de6 service: Implement download size restrictions 2022-03-05 20:35:52 +01:00
37f2c3f17f service: Make auto-downloads a bit more configurable 2022-03-05 19:11:28 +01:00
7ea4ad62e2 xmpp: Implement XEP-0004 2022-03-04 23:03:56 +01:00
213d777750 ui: Add privacy settings 2022-03-04 15:26:30 +01:00
d338248b9c ui: Fix the closing chat dialog 2022-03-03 14:41:12 +01:00
2a6fc4a938 style: Use const constructor 2022-03-02 15:52:23 +01:00
f77ce5be8f ui: Use done_all for received and read 2022-03-02 15:07:24 +01:00
d29235cbb7 meta: Implement Chat Markers and Delivery Receipts
- Implement Delivery Receipts in the XMPP library
- Plumb Delivery Receipts into the UI
- Plumb Chat Markers into the UI
2022-03-02 12:40:27 +01:00
cba898c388 style: Fix style 2022-03-01 18:06:47 +01:00
e15ea736e2 ui: Allow opening images and videos 2022-03-01 16:00:46 +01:00
7e681480ea ui: Implement a bad video widget 2022-03-01 12:50:40 +01:00
a3f680b6c6 ui: Deal with not-found images better 2022-02-28 21:09:47 +01:00
8e3ceaf52b ui: Deal with files that are not found 2022-02-28 20:58:49 +01:00
fd4134d61b service: Improve media messages 2022-02-28 16:06:08 +01:00
4af9ee96a1 service: Implement the download request 2022-02-28 12:57:35 +01:00
c1b83b917d ui: Implement a stubbed download button 2022-02-28 12:39:40 +01:00
8f70bdc945 ui: Implement thumbnails when receiving an image
This requires
- The sender uses Stateless File Sharing
- A thumbnail according to File Thumbnails (Custom XEP) is specified
- The file is an image (duh)
2022-02-27 19:12:38 +01:00
b96eeaf606 ui: Factor out the bottom of message bubbles 2022-02-27 13:43:22 +01:00
ae2a0bc9f9 ui: Implement an inline widget fallback for media files 2022-02-27 13:33:18 +01:00
1de953667e ui: Fix wrong feature being not available 2022-02-27 12:05:56 +01:00
40bd5b0dd1 service: Implement file download progress 2022-02-27 11:55:00 +01:00
b41a54717f style: Use const constructors 2022-02-26 20:50:04 +01:00
81f9f99355 ui: Fix image padding issues 2022-02-26 20:35:14 +01:00
b5e1da839a service: Migrate all F2S commands to classes 2022-02-26 18:16:56 +01:00
2836f3d432 ui: Fix rounding of the image overlay 2022-02-26 13:36:35 +01:00
5f0075d04d service: Port over all Service-to-Foreground events to classes 2022-02-26 13:27:54 +01:00
8394728f3b service: Port over the first events to classes 2022-02-26 12:19:19 +01:00
6816f0446b service: Fix the roster duplicating 2022-02-25 21:55:52 +01:00
ef4826c619 meta: Receive images using OOB data 2022-02-24 21:47:30 +01:00
7c55434c50 ui: Restore the 'Debug enabled' switch 2022-02-23 14:35:46 +01:00
0acabce757 xmpp: Fix roster pushes again 2022-02-22 21:21:31 +01:00
d0aca8d879 lint: Fix most linter warnings 2022-02-17 12:34:35 +01:00
ade501c044 meta: Improve the logging system 2022-02-17 12:28:30 +01:00
0fa62f904a meta: Add an UDP logger 2022-02-16 20:38:15 +01:00
3eaf113cdb meta: Upgrade Flutter and isar 2022-02-16 18:29:01 +01:00
e33b290d24 style: Fix linter issues 2022-02-06 18:48:59 +01:00
0f2fe429bc ui: Merge [Padding]s 2022-02-04 19:45:57 +01:00
3dd0ac1754 ui: Add a (useless) debugging page 2022-02-04 18:38:26 +01:00
4a86f239ff refactor: Move lib/data/ into lib/ui/ 2022-01-26 12:31:48 +01:00
720798814c refactor: Make helpers and constants shared 2022-01-26 12:28:49 +01:00
8a0621c5e1 refactor: Make models shared 2022-01-26 12:26:56 +01:00
d439d72371 ui: Fix being stuck on the splash screen 2022-01-26 12:19:02 +01:00
8dec2e5859 refactor: Handle data from the background service somewhere else 2022-01-25 16:40:41 +01:00
6f596b7fca refactor: Move lib/redux into lib/ui/ 2022-01-25 16:19:24 +01:00
68ccbf2744 style: Replace navigation strings with constants 2022-01-25 16:14:32 +01:00
0e53cdcc9f refactor: Move [SplashScreen] into its own file 2022-01-25 15:59:32 +01:00
3336383592 ui: Stub out functionality not yet implemented 2022-01-23 15:33:16 +01:00
b1c58d9d29 style: Replace Container with SizedBox 2022-01-23 12:20:53 +01:00
317726c102 style: Convert some classes to [StatefulWidget]s 2022-01-23 12:11:51 +01:00
e49a115847 ui: Fix syntax error 2022-01-23 11:52:41 +01:00
f8acf98ebd style: Spent 6h fixing linter warnings 2022-01-21 17:44:48 +01:00
e28f4482c1 ui: Fix messages having weird corners 2022-01-16 12:04:32 +01:00
d78088b096 ui: Oops... Better use a middleware 2022-01-15 17:00:03 +01:00
8571f70f05 ui: Make setting the current conversation work 2022-01-15 16:58:46 +01:00
a1588488cb ui: Keep the message list scrolled 2022-01-11 14:41:53 +01:00
ba8a13e0b9 ui: Fix the conversation list not updating on update 2022-01-10 19:23:29 +01:00
750dc8e145 ui: Add icons to dismissible 2022-01-10 19:04:50 +01:00
b3a26d9a49 ui: Add icon on swipe 2022-01-10 18:56:53 +01:00
e4500514ec ui: Show AddContactPage errors 2022-01-10 16:14:07 +01:00
f79824510a style: Replace single quotes with double quotes 2022-01-10 15:47:51 +01:00
5c8d85ecc4 ui: Remove old TODOs 2022-01-10 15:37:05 +01:00
eb06e8b863 ui: Add showConfirmationDialog 2022-01-10 15:35:44 +01:00
086cf9265c ui: Remove old TODOs 2022-01-10 15:19:40 +01:00
b00905e9f5 redux: Merge some login actions 2022-01-10 15:06:51 +01:00
39bda0ed77 redux: Migrate conversations/actions to conversation/actions 2022-01-10 14:58:49 +01:00
fba5652036 ui: Prevent IME features at some places 2022-01-10 12:00:23 +01:00
8d3b0bc80c ui: Implement conversation closing 2022-01-10 11:55:54 +01:00
1f6b50f7d6 xmpp: Add from attribute to sent messages 2022-01-10 00:19:18 +01:00
2fd7cefa97 ui: Implement login failures 2022-01-05 18:06:55 +01:00
2212d778e1 xmpp: It's a mess but roster deletion kinda works 2022-01-05 14:45:24 +01:00
b3ddb33ebc backend: Begin implementing roster removal 2022-01-04 22:41:39 +01:00
2838246659 ui: Fix login password visibility toggle 2022-01-04 20:07:02 +01:00
880a4516d1 ui: Work around crash when sending the first message 2022-01-04 18:57:37 +01:00
b972723c98 ui: Fix crash when starting a new conversation 2022-01-04 18:35:25 +01:00
5b8925e643 ui: Fix JID missing on new conversation page 2022-01-04 17:50:33 +01:00
78a7eb8f77 xmpp: Implement basic roster mechanics 2022-01-04 17:37:06 +01:00
d79518c0dc redux: Remove the (not commited) credentials from main.dart and enable login 2022-01-03 00:08:39 +01:00
3749796f62 docs: Remove TODO 2022-01-02 21:35:34 +01:00
1621c6cc0d ui: Kinda implement scroll to bottom 2022-01-02 21:34:52 +01:00
a482cb3200 ui: Replace strings by an enum 2022-01-02 18:42:54 +01:00
420a0be242 ui: Make timestamps better readable 2022-01-02 18:41:11 +01:00
6b756121c8 ui: Fix unread counter when the conversation is open 2022-01-02 18:23:18 +01:00
2ee72c0345 xmpp: ALLOW SENDING MESSAGES 2022-01-02 16:21:31 +01:00
56a1007c0c ui: Replace the yucky conversation list wrapper 2022-01-02 13:33:03 +01:00
d3bc449ced ui: Remove this yucky ListView wrapper 2022-01-02 12:32:59 +01:00
d032a0b4ce ui: Fix chat bubbles not appearing on the correct side 2022-01-02 12:10:04 +01:00
81ae4b6cbb ui: Handle message loading in the middleware 2022-01-02 12:04:36 +01:00
1acc2630b4 xmpp: RECEIVE MESSAGES! 2022-01-01 21:24:27 +01:00
b9514c2270 ui: Kind-of enable closing a chat 2021-12-29 17:22:31 +01:00
85abb73ff1 ui: Factor out the image picker 2021-12-29 14:24:12 +01:00
95a3273940 backend: Put the roster items into the database 2021-12-29 13:22:14 +01:00
f5b88fa270 ui: Move out more application logic 2021-12-29 12:16:42 +01:00
cf104a3317 ui: Rename AddMessageAction to SendMessageAction 2021-12-29 00:22:59 +01:00
4f1753bf42 ui: Move application logic out of LoginPage 2021-12-28 23:47:45 +01:00
6ef1edc3a4 ui: The QR code now encodes an XMPP URI 2021-12-28 21:03:28 +01:00
986d43cb0f ui: Implement a logout 2021-12-28 20:52:27 +01:00
a12e0c4978 ui: Persist display name changes 2021-12-28 20:33:50 +01:00
666c1eafc4 backend: Allow saving and reading the current account 2021-12-28 20:25:25 +01:00
c38770d68f db: FINALLY ADD A DATABASE 2021-12-28 16:30:10 +01:00
3448a03c36 ui: Sort conversations by their timestamp 2021-12-27 18:33:24 +01:00
b0bd12e1b7 ui: Prettify IntroPage 2021-12-27 18:22:34 +01:00
c1bef42e03 ui: Fix accident 2021-12-27 18:20:57 +01:00
e090b34158 ui: Set account data after 'login' 2021-12-27 18:18:28 +01:00
2338648afb ui: Add missing test for validateJid 2021-12-27 18:09:03 +01:00
764b63613a ui: Make the bubbles and conversations update their timestamp
I'm not proud of this one but it works. BUT I WILL REPLACE IT AS
SOON AS I FIND A BETTER SOLUTION!
2021-12-27 15:49:19 +01:00
5ead5fb230 ui: Add a 'scroll to end' button 2021-12-27 14:48:40 +01:00
8b31188e11 ui: Disable navigation if busy 2021-12-27 14:36:13 +01:00
f5f316e630 ui: Fix the backbutton triggering the snackbar 2021-12-27 14:33:23 +01:00
e34a9a3f11 ui: Add a simple profile image picker with cropping 2021-12-27 13:02:46 +01:00
d979b9655f ui: Add more keyboard dismissing 2021-12-27 12:18:49 +01:00
416f0ed057 ui: Dismiss the keyboard during registration 2021-12-27 12:14:09 +01:00
11fe1d2467 ui: Fix providerIndex not being random during first start 2021-12-27 12:09:15 +01:00
27d756c058 ui: Remove the stub profile picture 2021-12-27 12:02:30 +01:00
9a2f462d2a ui: Add AccountState 2021-12-27 11:46:51 +01:00
12b4813fe2 ui: Reimplement SnackBar
Okay, so hear me out. The fact that a SnackBar cannot be permanently
there is really annoying. There was also one other thing but I forgot
that one. Using PermanentSnackbar is a pain, though.
2021-12-27 00:14:06 +01:00
2b301ca032 build: Generate the list of libraries 2021-12-26 22:58:26 +01:00
1a29f856e4 ui: Basic registration validation 2021-12-26 21:04:22 +01:00
f2206f62c9 ui: Add basic JID validation 2021-12-26 20:57:22 +01:00
a9a43e0d97 ui: Factor out the TextField 2021-12-26 20:18:35 +01:00
61e2683214 ui: Add button for showing own JID as a QR code 2021-12-26 19:02:31 +01:00
e678de34ae ui: Add lastChangeTimestamp to Conversation 2021-12-26 18:50:06 +01:00
d1054e5df3 ui: Draft changing one's display name 2021-12-26 18:40:47 +01:00
64364a5de9 ui: Make the ConversationPage look better 2021-12-26 18:40:28 +01:00
402cbb3738 ui: Nicely format the message timestamps 2021-12-26 13:41:36 +01:00
fac5d6414c ui: Add timestamp strings for conversations 2021-12-26 13:30:34 +01:00
20f17179e1 ui: Fix crash when adding a chat if one is already open 2021-12-26 12:34:02 +01:00
9b963911c0 ui: Improve the contrast of the timestamp 2021-12-26 12:14:36 +01:00
d034a0e7ad ui: Add xmpp-providers to the licenses 2021-12-26 12:10:00 +01:00
03e607b062 ui: Fix overflow when lastMessageText is too long 2021-12-26 12:07:36 +01:00
a336530c1b ui: Fix ChatBubble overflow 2021-12-26 12:00:13 +01:00
0d332277bb build: Generate the XMPP provider list from xmpp-providers 2021-12-26 00:23:32 +01:00
4fccc88af1 ui: Add a page for sending files 2021-12-25 23:48:27 +01:00
09d625e441 ui: Color things purple 2021-12-25 22:20:54 +01:00
4484600927 ui: Add a nice graphic for when no chats open 2021-12-25 21:37:34 +01:00
04425401e0 ui: altText -> alt 2021-12-25 19:41:26 +01:00
85e7fc8b83 ui: Fix missing navigation 2021-12-25 19:29:04 +01:00
83990243fb ui: Finally set the app icon 2021-12-25 19:21:47 +01:00
35da08608b ui: Make the UI much more consistent 2021-12-25 19:01:06 +01:00
be5a32dcf0 ui: Add settings 2021-12-25 18:22:11 +01:00
511765f38c ui: Implement a simple self profile 2021-12-25 16:50:11 +01:00
840386c213 ui: Scale values according to the avatar radius 2021-12-25 16:49:59 +01:00