Nicolas Werner
5734641778
Fix potential crash if there is no image format pasted
2022-03-21 22:54:44 +01:00
Nicolas Werner
a9486ec896
Fix thumbnails for encrypted files and factor upload box out
2022-03-21 05:49:12 +01:00
Nicolas Werner
dbd2bebe6c
Show some previews in upload window
2022-03-21 05:05:29 +01:00
Nicolas Werner
830f4d4942
Please clazy
2022-03-21 01:35:47 +01:00
Nicolas Werner
3aeeed49a9
Also stop audio player
2022-03-21 01:32:31 +01:00
Nicolas Werner
3beed3508a
Thumbnail video
2022-03-21 01:24:53 +01:00
Nicolas Werner
fd83858715
Add duration and resolution to files
2022-03-21 00:48:27 +01:00
Nicolas Werner
d3471a1097
Move uploads to InputBar
2022-03-20 22:49:33 +01:00
Malte E
d765305595
properly commit preedit text
2022-03-19 22:30:35 +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
12a6da012a
If you replace the txn id, replace a string the length of the txn id...
2022-03-05 19:38:13 +01:00
Nicolas Werner
d8d8662a42
Remove unused headers
2022-03-02 20:39:46 +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
Nicolas Werner
9f5b647fb3
Fix editing pending 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
Nicolas Werner
ff4334d59e
Don't leak dialogs
...
It seems that you need to manually destroy created objects... Great...
fixes #898
2022-02-21 05:01:01 +01: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
DeepBlueV7.X
00116e8128
Merge pull request #906 from LorenDB/offlineIndicator
...
Add offline indicator
2022-02-04 07:13:53 +01:00
Nicolas Werner
112426e30b
Fetch previews for space children using /hierarchy
2022-02-02 19:03:01 +01:00
Loren Burkholder
5bed3684ec
Add offline indicator ( #472 )
2022-02-01 23:39:22 -05:00
Nicolas Werner
4a80fdc951
Functional login page
2022-01-26 21:44:13 +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
f1a23355bd
Port usersettings to qml
2022-01-09 01:02:25 +01:00
Nicolas Werner
66520eae19
Port image overlay to qml
...
Allows you to zoom and pan now.
relates to #647
2022-01-02 21:46:29 +01:00
Nicolas Werner
7685d1808b
Strip variant selector in some cases
...
fixes #439
Workaround for https://bugreports.qt.io/browse/QTBUG-97401
fixes #810
2022-01-01 07:10:12 +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
750c64f323
Get rid of some useless code
2021-12-31 00:48:55 +01:00
Nicolas Werner
73012eb2d1
Add missing license headers
2021-12-30 06:20:10 +01:00
Nicolas Werner
9a9dbda571
Update presence dynamically and reduce allocations
2021-12-30 04:54:03 +01:00
Nicolas Werner
203ddb20de
Fix crash after sending image caused by the recent refactor
2021-12-30 02:10:33 +01:00
Nicolas Werner
b847623fbe
Reduce allocations and time spent creating delegates by half
2021-12-29 22:46:04 +01:00
Nicolas Werner
7cfb7dcea4
Reduce allocations for presence states a bit
2021-12-29 22:45:30 +01:00
Nicolas Werner
4d54876ea4
Pretty up code with fewer allocations
2021-12-29 07:04:30 +01:00
Nicolas Werner
271b111558
Reduce allocations for accessing event members
2021-12-29 07:02:32 +01:00
Nicolas Werner
0f4b482bb3
Remove a few casts
2021-12-29 06:10:08 +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
2866826356
Misc clang-tidy fixes
2021-12-28 19:12:15 +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
Nicolas Werner
ea6b19b307
Add an ugly custom emote completer using ~
2021-12-27 06:23:36 +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
Loren Burkholder
45b150fb58
make lint
2021-12-13 19:08:54 -05:00
Loren Burkholder
c09c0d35b8
Make opening room members from rooms settings dialog work
2021-12-13 19:08:54 -05:00
Nicolas Werner
d46e517e3a
Only show room pack button, when you can actually create one
2021-12-13 23:25:42 +01:00
Nicolas Werner
dae032172d
Add recently used reactions
...
fixes #435
2021-12-13 00:43:05 +01:00
Nicolas Werner
75b112f0c8
Support pinned messages
...
fixes #519
2021-12-11 06:10:41 +01:00
Marcus Hoffmann
a01bc14db6
InputBar: run clang-format
2021-12-03 01:54:43 +01:00
Marcus Hoffmann
a9d8059fb2
InputBar: Mark some functions as [[nodiscard]]
...
This warns when you the return value of those functions isn't used.
Suggested-by: Clang-Tidy: Function X should be marked [[nodiscard]]
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
9676b7709d
InputBar: mark constrictor as explicit
...
Suggested-By:
Clang-Tidy: Single-argument constructors must be marked explicit to
avoid unintentional implicit conversions
More info: https://clang.llvm.org/extra/clang-tidy/checks/google-explicit-constructor.html
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
8aa4a60d12
InputBar: use X.empty() instead of !X.size()
...
Suggested-by:
Clang-Tidy: The 'empty' method should be used to check for emptiness instead of 'size'
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
abcbcecac1
InputBar: use auto type
...
Suggested-by:
Clang-Tidy: Use auto when initializing with new to avoid duplicating the type name
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
313bd649dd
InputBar: use multi-arg string replacement
...
This could actually change the behaviour here (could, because I don't
know if we can hit this special case) but this should hopefully the
correct way of doing this.
There's some detailed explanation of the difference here:
https://doc.qt.io/qt-5/qstring.html#arg-14
> This is the same as str.arg(a1).arg(a2), except that the strings
> a1 and a2 are replaced in one pass. This can make a difference if
> a1 contains e.g. %1:
```
QString str;
str = "%1 %2";
str.arg("%1f", "Hello"); // returns "%1f Hello"
str.arg("%1f").arg("Hello"); // returns "Hellof %2"
```
Suggested-by:
Clazy: Use multi-arg instead
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
02aa87590b
InputBar: use character argument instead of string
...
Suggested-by:
Clang-Tidy: 'find' called with a string literal consisting of a
single character; consider using the more effective overload
accepting a character
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
6d8d38490a
InputBar: apply clang-tidy const reference suggestions
...
All suggested by:
Clang-Tidy: The parameter 'X' is copied for each invocation
but only used as a const reference; consider making it a const reference
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
abf4b3a0a3
InputBar: use QFileInfo::exists()
...
Suggested by:
Clazy: Use the static QFileInfo::exists() instead. It's documented to be faster.
2021-12-03 01:37:00 +01:00
Marcus Hoffmann
5441ea8840
InputBar: remove unused imports
2021-12-03 01:37:00 +01:00
Nicolas Werner
b774a671da
Remember all the collapsed trees
2021-12-01 03:46:55 +01:00
Nicolas Werner
aa5d2098d0
Don't waste space for non existing subspaces
2021-12-01 00:46:02 +01:00
Nicolas Werner
65152252a4
Leaves can't collapse
2021-12-01 00:24:57 +01:00
Nicolas Werner
fe49beb68e
Hide me underneath the space tree
2021-12-01 00:04:01 +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
e7d4aec6ec
Only mark as direct, if invite was direct
2021-11-21 07:06:37 +01:00
Nicolas Werner
3d92e8ae60
Mark rooms as direct chats
...
Either by accepting an invite or manually using /converttodm and revert
with /converttoroom.
2021-11-21 06:13:45 +01:00
Nicolas Werner
5ef3250994
Add a filter for direct chats
...
fixes #317
2021-11-20 22:48:04 +01:00
Nicolas Werner
57fb0d79f9
Fix colors and alignment in dialogs
2021-11-18 22:33:45 +01:00
Loren Burkholder
f3aeb4b044
Switch icon theme to Fluent icons
2021-11-17 00:37:26 +01:00
Nicolas Werner
0a6ac211f1
Fix being dropped into an empty room after a join
2021-11-14 22:39:42 +01:00
Nicolas Werner
c4c13a1da9
Fix redaction of edited messages
2021-11-08 19:32:14 +01:00
Nicolas Werner
5ca1fb18bb
Move away from using an event loop to access secrets
...
Fixes messages in room flickering and being stuck
fixes #760
relates to #770
relates to #789
2021-11-07 03:52:57 +01:00
Nicolas Werner
1a163f49e2
Fix unjoinable invites on mobile as well as unclickable previews
2021-11-03 22:35:54 +01:00
Nicolas Werner
ae121f6021
Clear @room warning after sending message
...
fixes #751
2021-11-02 00:41:07 +01:00
Nicolas Werner
12832b3c64
Fix loading spinner when switching to a fully loaded room
...
fixes #754
2021-11-02 00:28:39 +01:00
Nicolas Werner
8beeba8e48
Fix hidden spaces hiding themselves
...
fixes #745
2021-11-02 00:15:58 +01:00
Nicolas Werner
a5030bdd4d
move device verification management to its own file
2021-10-17 17:18:14 +02:00
Nicolas Werner
550c80525a
Move voip and encryption stuff into their own directories
2021-10-17 17:18:14 +02:00
Loren Burkholder
14488a8fe7
Use the same leave room dialog everywhere
...
This ports the leave room dialog to QML, everywhere. There are now no differences between the various leave dialogs.
2021-10-11 19:00:40 -04:00
Nicolas Werner
ad1e6c8298
Support bootstrapping crosssigning
...
Showing the bootstrap state and showing there are unverified devices is
still missing.
2021-10-09 05:01:53 +02:00
Thulinma
94441e68fd
Support pasting image/svg+xml format straight from supporting applications
2021-09-28 01:42:35 +02:00
Thulinma
c4b788917f
Fixes for pasting images, especially under windows where the image mime type detection doesn't work as expected
2021-09-28 00:54:00 +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
DeepBlueV7.X
d6eeaa1c04
Merge pull request #721 from symphorien/hotlist
...
Implement a binding to go to a room with unread messages
2021-09-14 19:00:50 +00:00
Guillaume Girol
82b1cc4e5f
add Alt+A keybinding to switch to next room with unread messages
2021-09-14 12:00:00 +00:00
Loren Burkholder
b9255803fb
Streamline getting other user id from invited direct chat
2021-09-11 19:45:01 -04:00
Loren Burkholder
0b8527eb1b
Don't try to check whether a preview is direct
2021-09-11 19:35:31 -04:00
Loren Burkholder
fb53fc86b6
Fix invites crashing the whole app
2021-09-11 19:35:31 -04:00
Loren Burkholder
87bff3493d
Add direct chat handling for previews and invites
2021-09-11 19:35:31 -04:00
Loren Burkholder
0e3f3f2b20
make lint
2021-09-11 19:35:31 -04: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
Loren Burkholder
d2e193ff78
Add jdenticon support
2021-09-11 19:35:31 -04:00
Thulinma
45b5629fe4
Fix a few more HTML injections
2021-09-12 00:09:24 +02: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
3528fe4e5d
Warn the user before they ping the whole room
2021-09-02 03:15:39 +02:00
Nicolas Werner
ef068ac2b3
Support animated images
...
fixes #461
2021-08-29 16:32:28 +02:00
Nicolas Werner
09c041c8ac
Use in memory media player instead of storing unencrypted files on disk
2021-08-29 16:32:22 +02:00
Nicolas Werner
3d2f503305
Add workaround for stickers not showing on iOS
...
see: https://github.com/vector-im/element-ios/issues/2353
2021-08-18 18:16:29 +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
028bcd5b7c
Update join button in room directory after join
2021-08-17 14:21:04 +02:00
DeepBlueV7.X
b01496f9b4
Merge pull request #659 from kamathmanu/nhekoRoomDirectory
...
Nheko room directory
2021-08-17 11:56:47 +00:00
Nicolas Werner
56db0dbc7d
Allow downloading keys from key backup
2021-08-17 03:24:12 +02:00
Nicolas Werner
9bad584931
Show verification status in memberlist
2021-08-13 23:58:26 +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
kamathmanu
9ab1296131
Ran qmlformat and make license
2021-08-12 10:45:42 -04:00
Nicolas Werner
5e2526dac4
fix sticker packs being uneditable in some rooms
2021-08-11 00:39:01 +02:00
kamathmanu
6a75e5270c
Fix nits from code review
2021-08-09 09:18:08 -04:00
kamathmanu
2dfccda73c
Merge branch 'master' into nhekoRoomDirectory
2021-08-07 21:20:43 +00:00
kamathmanu
04d0d413e3
Linted code
2021-08-07 17:00:28 -04:00
kamathmanu
0d700d9933
Implemented Room Directory model to store and provide QML view with public room data from mtxclient
2021-08-07 17:00:12 -04: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
DeepBlueV7.X
5b5a89b522
Merge pull request #655 from LorenDB/qml-all-the-things
...
QML all the things, part 2: Read receipts dialog
2021-07-30 22:08:51 +00:00
Nicolas Werner
e4cd8b1c11
Log how many rooms we loaded
2021-07-30 03:31:49 +02: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
DeepBlueV7.X
ca3d17dc22
Merge pull request #651 from LorenDB/qml-all-the-things
...
Fix a few UI things
2021-07-23 16:17:43 +00:00
Nicolas Werner
eafbab6ae1
Add menu to enable or disable stickers globally
2021-07-23 17:43:17 +02:00
Nicolas Werner
0c798554b5
Rename image pack model
2021-07-22 20:05:25 +02:00
Loren Burkholder
0ce7d02abe
make lint
2021-07-22 07:55:12 -04:00
Loren Burkholder
bbecadf1a8
Add functionality for loading global user profile where needed
...
This is so viewing profiles from the invite dialog will work as expected.
2021-07-21 20:38:18 -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