Commit graph

334 commits

Author SHA1 Message Date
Nicolas Werner
6e97f3da06
Refresh last message when paginating backwards 2022-06-25 14:05:52 +02:00
brausepulver
09c646d3fa
Add copy link to room context menu (#1101) 2022-06-23 23:44:50 +00:00
Nicolas Werner
35ff02ce48
Remove a few more headers 2022-06-18 02:31:01 +02:00
Nicolas Werner
8cdfbf9391
Get rid of 'using json = nlohmann::json' 2022-06-17 22:03:54 +02:00
Nicolas Werner
28acea55e2
Remove redundant alias function 2022-06-17 03:14:48 +02:00
Nicolas Werner
beb59d5d2e
Simplify includes a bit 2022-06-16 01:19:26 +02:00
Nicolas Werner
3eafd4396e
Fix pins not refreshing after being loaded 2022-06-15 15:36:58 +02:00
Nicolas Werner
ef9ebe3fd3
Speedup startup by caching last message timestamp
The cache is only approximate, i.e. it doesn't skip edits and similar,
but this might be good enough? Also no migration right now.

Speeds up startup by about 5x on my system.

Half the startup time is now loading the powerlevels for each room. We
can probably lazily load those too in the future.
2022-06-15 02:13:17 +02:00
Nicolas Werner
90da39313f
Use right linter 2022-05-10 03:53:35 +02:00
Nicolas Werner
a6b2be112b
More image dialog fixes 2022-05-10 03:20:09 +02:00
Nicolas Werner
62bf1b253e
Rework focus handling 2022-05-07 18:53:16 +02:00
Nicolas Werner
803bc8cf76
Fix notification for focus room in main window 2022-05-07 13:06:16 +02:00
Nicolas Werner
b75ef07896
Add basic support for multiple windows 2022-05-06 00:36:53 +02:00
tastytea
ffc5426e87
Show pack Id for image pack changes in timeline
Show either pack name, state key or (empty).
2022-04-20 09:41:18 +02:00
Nicolas Werner
3b2f47c56f
Show changes in image packs in timeline 2022-04-19 22:33:53 +02:00
Nicolas Werner
0a405a7446 Store notification counts across restarts 2022-04-13 20:40:00 +02:00
Nicolas Werner
3ea8a1d452 fix lint 2022-04-10 22:48:16 +02:00
Marcel
a8810ad016
Add specific powerlevel messages (#852)
fixes #136
2022-04-10 20:44:15 +00:00
Nicolas Werner
6f0260d59f
Avoid empty membership events 2022-03-28 21:41:16 +02:00
Nicolas Werner
a9486ec896
Fix thumbnails for encrypted files and factor upload box out 2022-03-21 05:49:12 +01:00
Nicolas Werner
fd83858715
Add duration and resolution to files 2022-03-21 00:48:27 +01:00
tastytea
e390c39862
Allow to specify reason for removed message
# Previous commits:
#   5949173b Add function to force focus on InputDialog input field
#   9482ac4e Allow explicit selection of SSO method
#   ab05e2d8 Mobile message input (#962)
#   12a6da01 If you replace the txn id, replace a string the length of the txn id...
2022-03-06 19:58:12 +01:00
Nicolas Werner
a307dc46cb
Remove stray logging 2022-02-27 06:47:00 +01:00
Nicolas Werner
8e20139079
Allow properly editing pending encrypted messages 2022-02-27 06:43:45 +01:00
DeepBlueV7.X
3dfcc4145d
Merge pull request #952 from symphorien/hidden-read-receipts
support for hidden read receipts
2022-02-22 16:30:23 +00:00
Guillaume Girol
05f7e47a9f support for hidden read receipts 2022-02-21 12:00:00 +00:00
Malte E
1c8a5c645d
Add sender names to state events (#948)
* add sendernames to state events

* Center state events and make them less tiny
2022-02-21 00:39:32 +00:00
Nicolas Werner
ddcd4850f1
Merge branch 'message-bubbles' of https://github.com/maltee1/nheko into maltee1-message-bubbles 2022-02-14 15:43:17 +01:00
Nicolas Werner
47b822604d
Hidden events: Refactor slightly for reusability 2022-02-12 19:48:53 +01:00
Malte E
12d600db97 add translations and actually add changes to TimelineModel 2022-02-07 21:53:37 +01:00
Nicolas Werner
409bfa8c9d # should be valid in links 2022-02-05 09:27:16 +01:00
Nicolas Werner
b3221b09d6 Add /reset-state command 2022-02-05 08:40:56 +01:00
Nicolas Werner
1dacf327e1 Fix avatar url conversion for widgets 2022-02-04 23:33:00 +01:00
Nicolas Werner
7b00411dc4 Show widgets as links 2022-02-04 20:48:14 +01:00
Nicolas Werner
aaae72a4f2
Fix focus and qml parenting with qml root 2022-01-26 21:44:13 +01:00
Nicolas Werner
b106eafb0e
Initial qml root window 2022-01-26 21:44:13 +01:00
Nicolas Werner
61404641d9
Update year in copyright notice to shut up lint job 2022-01-01 04:57:53 +01:00
Nicolas Werner
271b111558
Reduce allocations for accessing event members 2021-12-29 07:02:32 +01:00
Nicolas Werner
19dc6cadea
Reserve size of some containers we are filling 2021-12-29 06:01:38 +01:00
Nicolas Werner
d8ead9573b
Reduce allocations using QStringLiteral 2021-12-29 04:52:52 +01:00
Nicolas Werner
bb290f9fec
Fix more warnings and remove dead code 2021-12-28 22:30:12 +01:00
Nicolas Werner
5ca98829f7
Some qt6 prep 2021-12-28 20:09:08 +01:00
Nicolas Werner
960cf2995e
Fixup clang-tidy suggestion 2021-12-28 18:44:26 +01:00
DeepBlueV7.X
5a21029423
Merge pull request #853 from MTRNord/MTRNord/clang-tidy
Apply selective clang-tidy suggestions
2021-12-28 17:36:20 +00:00
tastytea
850d139e3d
Make custom emoticons twice as high as the font. 2021-12-27 23:16:26 +01:00
tastytea
7086e23bdd
Request inline images in the right size and anti-alias them
- If an inline image has specified a height, add parameters to the
  image:// URI.
- Add scaled to the parameters, the images would be cropped otherwise.
- Extract the height from image:// URI and use it for requestSize.
- Use scaledToHeight instead of scaled.
2021-12-27 22:47:51 +01:00
MTRNord
7b2f7e65fd Run linter 2021-12-27 20:49:27 +01:00
MTRNord
049613211a Apply (selective) Clang-tidy const function and new const pointer suggestions on TimelineModel 2021-12-23 02:55:25 +01:00
MTRNord
a872bdf8c5 Apply (selective) Clang-tidy move and some new detected const pointer suggestions on TimelineModel 2021-12-23 02:46:33 +01:00
MTRNord
02fcd0e7cf Apply (selective) Clang-tidy and clazy suggestions on TimelineModel 2021-12-23 02:33:46 +01:00
Nicolas Werner
75b112f0c8
Support pinned messages
fixes #519
2021-12-11 06:10:41 +01:00
Nicolas Werner
b505fa42d5
Fix crash on redactions without because 2021-11-29 14:55:40 +01:00
Joe Donofry
b920f8d7ca Change QML UI for redactions 2021-11-29 00:59:57 +00:00
Nicolas Werner
a13f492e7d
Make clang-format <13 and clang-format >=13 behave the same
I think old clang-format is just buggy in those cases, so we should
reenable those blocks, once everyone has 13 or up.
2021-11-22 00:33:43 +01:00
Nicolas Werner
c4c13a1da9
Fix redaction of edited messages 2021-11-08 19:32:14 +01:00
Nicolas Werner
550c80525a
Move voip and encryption stuff into their own directories 2021-10-17 17:18:14 +02:00
Nicolas Werner
cfca7157b9
Change indentation to 4 spaces 2021-09-18 00:45:50 +02:00
Thulinma
1d5bf56cf9 Improvements for linking to events
- Fixes scrolling to an event not being reliable
- Adds new /goto command that can open URLs, go to events, or go to message indexes.
- Refactored ChatPage::handleMatrixUri() to contain the handling originally in Nheko::openLink(), and makes it return a boolean based on whether the URL was handled internally or not.
2021-09-16 02:17:07 +02:00
Nicolas Werner
5bff9df4ae
Workaround for broken fetchMore() with reuseItems 2021-09-15 23:38:01 +02:00
Loren Burkholder
356723fe06 Use more descriptive property name 2021-09-11 19:35:31 -04:00
Loren Burkholder
a23c586cde make lint 2021-09-11 19:35:31 -04:00
Loren Burkholder
350fc593ed Use better id loading methodology 2021-09-11 19:35:31 -04:00
Loren Burkholder
1fdecdcc21 Get direct chat jdenticons to line up 2021-09-11 19:35:31 -04:00
Nicolas Werner
f9a334233f
Don't allow images in username change messages and user completer
Sorry, no fun for you!
2021-09-09 21:20:34 +02:00
Nicolas Werner
495a4334df
Fix day separator when loading older messages
fixes #632
2021-09-08 12:47:44 +02:00
Nicolas Werner
5b460861b1
Allow accepting knocks in the timeline
As well as selecting more join rules.
2021-08-17 23:31:25 +02:00
Nicolas Werner
56db0dbc7d
Allow downloading keys from key backup 2021-08-17 03:24:12 +02:00
Nicolas Werner
18ea01e198
Show if there are unverified devices in a room
Also fixes some issues where nested transactions will poison the
verification cache.
2021-08-13 23:19:54 +02:00
Nicolas Werner
5e2526dac4
fix sticker packs being uneditable in some rooms 2021-08-11 00:39:01 +02:00
Nicolas Werner
72bbad7485
Show encryption errors in qml and add request keys button 2021-08-07 22:51:09 +02:00
Nicolas Werner
a57a15a2e0
Basic sticker pack editor 2021-08-06 04:31:53 +02:00
Loren Burkholder
dab1c9068a QML the raw message dialog 2021-07-31 12:11:15 -04:00
Loren Burkholder
7e538851d6 Use a QSortFilterProxyModel instead of resetting the model 2021-07-29 21:07:52 -04:00
Loren Burkholder
4dd994ae00 QML the read receipts list
There are probably a few things wrong with this, but I'm going to call it good enough for an initial commit
2021-07-29 21:07:16 -04:00
Loren Burkholder
44be4c1f4a Move various room auxiliary functions to TimelineManager 2021-07-21 18:56:20 -04:00
Loren Burkholder
b17002929c Open room members when member info label clicked 2021-07-21 12:36:02 -04:00
Loren Burkholder
6458614ea1 make lint 2021-07-20 21:48:10 -04:00
Loren Burkholder
44d2818e0c Add property for plain room name 2021-07-20 21:48:10 -04:00
Loren Burkholder
baa9dfe110 Clean up code 2021-07-20 21:47:46 -04:00
Loren Burkholder
60b3c34d78 Permissions only needs a roomid to function 2021-07-20 21:47:32 -04:00
Loren Burkholder
a176de5f11 Make sure to use the default room id if none is specified 2021-07-20 21:47:22 -04:00
Loren Burkholder
e1acf5d324 make lint 2021-07-20 21:47:22 -04:00
Loren Burkholder
77a0c574bf QML the room member list 2021-07-20 21:47:05 -04:00
Nicolas Werner
88ed0fade7
Explicitly reload data in delegates, if related events got loaded 2021-07-20 14:09:19 +02:00
Nicolas Werner
8a1666bc88
Basic sticker support 2021-07-19 01:28:07 +02:00
Nicolas Werner
0b864d9485
Fix replies not reloading after fetching them 2021-07-16 11:47:49 +02:00
Nicolas Werner
bd26624ed8
Prepare for reuseItems in timeline
The actual reuseItems is still blocked on a few upstream bugs.
2021-07-12 00:24:33 +02:00
Nicolas Werner
c755d54243
Remove db bottleneck by caching ro txn for 100 requests 2021-07-10 16:12:38 +02:00
Nicolas Werner
d2ba0b6603
Update translations 2021-07-02 09:47:43 +02:00
Stuart Mumford
7fab2925b4
Apply suggestions from code review 2021-06-25 15:44:15 +01:00
Stuart Mumford
9194b87bdc
Update src/timeline/TimelineModel.cpp 2021-06-25 15:21:04 +01:00
Stuart Mumford
d60ea38cb8
Add another regex to match inline img tags using single quotes
Signed-off-by: Stuart Mumford <stuart@cadair.com>
2021-06-25 12:14:45 +01:00
Nicolas Werner
d30446a8b3
Don't spam key requests directly after startup 2021-06-25 11:35:24 +02:00
Nicolas Werner
884fb74d2d
Add a basic 'Space page' 2021-06-25 11:34:19 +02:00
Nicolas Werner
f349b0cce0
Hide spaces by default, unless they are in the current space filter 2021-06-25 11:34:18 +02:00
Alexander Bantyev
358a39e6d2
fixup! Allow editing unsent messages 2021-06-19 23:26:21 +03:00
Alexander Bantyev
42bf8799ee
fixup! Allow editing unsent messages 2021-06-19 23:11:34 +03:00
Alexander Bantyev
f8d2564e46
fixup! Allow editing unsent messages 2021-06-18 20:25:44 +03:00
Alexander Bantyev
9f798e76ed
Allow editing unsent messages
As of 0db4d71ec2 (Prevent edits of
unsent messages), messages that are edits of (or replies to) unsent
messages were not allowed. This change was made because otherwise
the edits were discarded due to use of txnid rather than mxid in the
"m.relates_to" object. Remove this restriction and fix the issue by
replacing txnid with mxid in all related events when the message is
sent (and we obtain mxid from the server).
2021-06-18 16:38:55 +03:00
Nicolas Werner
d364c29c43
Implement switching in narrow mode 2021-06-08 22:22:33 +02:00