Commit Graph

867 Commits

Author SHA1 Message Date
Carl Schwan
4ed123fd52 Start adding autotests 2022-11-14 23:25:39 +00:00
Tobias Fella
ab5afa26ef Always include QtQuick.Controls as QQC2 2022-11-14 23:21:14 +00:00
Tobias Fella
f733a2edef Fix sending files on android
Requires https://github.com/quotient-im/libQuotient/pull/585
2022-11-14 23:12:23 +00:00
Tobias Fella
b332993b77 Close fullscreen image when pressing the back button 2022-11-14 23:05:20 +00:00
Tobias Fella
d13c00bb20 Update room list subtitle when sending message 2022-11-14 22:13:46 +00:00
Tobias Fella
089c6c1a46 Add validity checks for mentions before inserting them into the message
For yet unknown reasons, sometimes invalid mentions are inserted into the list, which will mess up all further messages. While finding those bugs is the better approach, these checks should also be useful.
2022-11-14 21:53:44 +00:00
Tobias Fella
c03b69cd17 Fix reactions sometimes not showing up
We need to adjust for the readmarker in the model
2022-11-14 20:18:33 +00:00
Tobias Fella
42cd470e15 Fix running without polls 2022-11-14 19:32:46 +01:00
Tobias Fella
cd461628ab Account switcher fixes, part 1
- Make account index notifyable
- Give login window a title
- Fix height of account list
2022-11-14 02:30:06 +01:00
Tobias Fella
0e782c4a93 Implement viewing and responding to polls 2022-11-14 01:40:44 +01:00
Tobias Fella
425f2a4b85 Add action to open account editor from account switcher 2022-11-13 19:11:50 +01:00
Tobias Fella
90cbe37a92 Create new Account Switcher 2022-11-13 15:54:42 +00:00
Tobias Fella
cfe3825d63 Stop lying to our users 2022-11-13 16:37:11 +01:00
Gary Wang
6ecc18d985 Add proxy config with Socks5 and HTTP proxy support
Resolve https://invent.kde.org/network/neochat/-/issues/547

This patch attempts to add proxy config support to NeoChat so people could set a HTTP or Socks5 proxy for anonymity or privacy/censorship-circumvention reason.

Currently this will only allows setting proxy type, host and port (which should be usable for most of the cases). Settings in that page needs to be applied by clicking the Apply button so the proxy setting won't accidentally get changed.

Proxy is disabled (use System Default option) by default.
2022-11-13 15:13:28 +00:00
Carl Schwan
7a2c4f6c71 Make regex static and const
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-11-13 09:37:17 +00:00
Carl Schwan
ded5c5d363 Make regex static to determine subtitleText of room
Non trivial time is spend on making sure the regex are valid otherwise

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-11-13 09:37:17 +00:00
James Graham
815ec1b30e Show animated images
Use animated images in imageDelegate and FullScreenImage so that animated images can be viewed.

Note webp animated images don't work this is a bug with qt see https://bugreports.qt.io/browse/QTBUG-70245
2022-11-12 14:42:20 +00:00
James Graham
bb8db23057 Remove and \n tags from the link preview description which were present only on certain homeservers, e.g. matrix.org 2022-11-12 11:30:45 +00:00
James Graham
460997bca3 Refactor Timeline Container
Update the base item in the timeline container to be a column layout. This means that all the items can be laid out automatically without the need to set lots of manual settings and anchoring. 

The overall height calculation for the delegate is vastly simplified (in fact it is removed) which deals with the fact that there were still instances where the manual calculation didn't work e.g. a delegate with a reaction followed by another message from the same user didn't give the correct bottom margin (see below)

before:
![timelineContainer_height_bug](/uploads/5b14568294698198dee8412f6cd19be0/timelineContainer_height_bug.png)

after:
![timelineContainer_height_bug_fix](/uploads/c5828f1b793817fd0ed523c3580a2ecc/timelineContainer_height_bug_fix.png)

This also improves upon the recently changed hover highlight behaviour. The previous patched moved it to cover the avatar as well as the bubble however it also covered the section and reaction when present which didn't look good. The highlight now only covers the avatar and bubble

before:
![highlight_bug](/uploads/0d08dc769ff737e0fb4981243d02d5f3/highlight_bug.png)

after:
![highlight_bug_fixed](/uploads/536ed672d0f1bb6cbe6c45777fed4b53/highlight_bug_fixed.png)

This also cleans up some of the margins in both bubble and compact to ensure consistency.
2022-11-11 17:05:14 +00:00
Tobias Fella
957ebb5502 Don't open context menus when touching on a delegate 2022-11-10 23:01:46 +01:00
Tobias Fella
3eb1080129 Don't crash when creating a DM 2022-11-10 22:52:35 +01:00
Tobias Fella
efd78c3fc7 Use monochrome icon for emoji in ChatBar
BUG: 456671
2022-11-10 21:45:19 +01:00
Tobias Fella
d02b4007c0 Fix showing old name for rename events 2022-11-10 21:37:03 +01:00
Tobias Fella
824fa469ef Don't send an empty message for member events without changes
BUG: 461667
2022-11-10 20:25:00 +00:00
Tobias Fella
95345973cb Correctly hide avatar and name change events when configured 2022-11-10 20:19:55 +00:00
Tobias Fella
962a1b228c Highlight other party in state events
BUG: 458267
2022-11-10 20:15:07 +00:00
Tobias Fella
35f4a4d1b4 Match case-insensitive during completion 2022-11-10 19:57:04 +00:00
James Graham
7aed6d2e44 Apply max image size so they don't become huge in compact mode.
Set max size to gridUnits * 30. The aim is to allow them to be generally bigger than bubble mode but not so huge that they take up the entire screen

BUG: 454878
2022-11-10 18:49:52 +00:00
Tobias Fella
782b71c826 Use plaintext in reaction delegate 2022-11-10 14:02:47 +01:00
Tobias Fella
b5a7ca96ee Add missing android icons 2022-11-10 00:30:58 +01:00
James Graham
a4c445d1a5 Add a section label at the top which shows the date label of the next section
**Updated**

Add a section label at the top which shows the date label of the next section up. This means that the user will always be able to see the date of all messages on screen.

![image](/uploads/ecbcdc0740877ea0d72e735176353036/image.png)

From the feedback given I've added a background at the top. I also added an underline to the heading which applies both at the top and in the listView since they use the same component. I added it originally for the top because I felt it looked a bit weird having messages appear from behind a heading background the same colour as the listView background.

Note: I know the gaps between messages are not right. I had to set the spacing in the listView to 0 to prevent itemAt returning null. I plan to add it back in as part of the delegate code before it would be merge.

Fixes BUG:454880
2022-11-08 19:40:56 +00:00
James Graham
5bd184b297 Prevent logging into the same account twice
Check if an account is already logged in before allow the login process to continue.

BUG:459603
2022-11-07 18:26:47 +00:00
James Graham
364ce45668 Trim Link Preview Text
Trim the text from the link preview title and description to ensure no whitespace at the beginning.
2022-11-07 17:26:03 +00:00
Tobias Fella
a97761f65c Fix custom emojis 2022-11-07 14:40:01 +00:00
Tobias Fella
7f353ca0fa Fix seconard window 2022-11-04 22:33:32 +01:00
Nate Graham
b9d7e43fd1 Add icons to room actions 2022-11-04 15:08:50 -06:00
Tobias Fella
da9de1d2a8 Use Plaintext in CompletionMenu 2022-11-03 23:52:04 +01:00
Tobias Fella
31a038ce82 Fix editing messages 2022-11-03 22:41:44 +01:00
Tobias Fella
92ec441594 Use enum instead of strings for message type 2022-11-02 08:55:28 +00:00
Carl Schwan
2be566668c Fix typo
We are using matrix uris, not appstream uris in NeoChat

Signed-off-by: Carl Schwan <carl@carlschwan.eu>
2022-11-01 17:26:01 +01:00
Tobias Fella
08300b994c Don't show banned user as sender for state events
BUG: 461158
2022-10-31 14:45:23 +00:00
Tobias Fella
66fadd78a3 Improve messages for bans without given reason 2022-10-31 16:18:23 +01:00
Tobias Fella
24202350ab Fix more avatars 2022-10-31 01:43:04 +01:00
Tobias Fella
4e6aca9a4e Add button to encrypt room 2022-10-30 18:38:45 +00:00
James Graham
7f11bfea63 After the new heading style was introduced the member heading needs updating as it used to have a background.
Remove the background and adjust the margins and spacing.
2022-10-29 15:51:53 +01:00
Tobias Fella
e56920abd5 Fix compilation 2022-10-27 21:07:33 +02:00
Tobias Fella
c34d99a234 Use correct preprocessor definition 2022-10-27 21:03:31 +02:00
Tobias Fella
a4c26371d6 Fix two cases of usernames containing html being rendered wrong 2022-10-27 21:02:13 +02:00
l10n daemon script
2c3715aef6 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2022-10-27 01:49:19 +00:00
James Graham
34e0e0205b Improve JoinRoom Server List
Initial work to create a model so that new servers can be added to the list.
The model will also check if the server is valid before allowing it to be added.

Implements network/neochat#11

### TODO
- [x] Add functionality to cache added servers
2022-10-26 18:23:17 +00:00