miruka
966070b4d6
MemberDeviceSection: elide txt instead of wrapping
...
Wrapping the text just makes the section overflow when
the member pane gets too narrow.
2020-07-12 17:22:28 -04:00
miruka
d648156c38
Use a HLabeledItem for MemberProfile power level
2020-07-12 17:00:04 -04:00
miruka
cc831d0640
Move cursorShape property out of HListView
...
The Timeline EventList is the only HListView that uses it. For other
list views, it interferes with items like text fields which need to set
cursor shape by themselves.
2020-07-12 16:59:33 -04:00
miruka
fe831e7865
Add power level display to member profile
2020-07-12 16:14:24 -04:00
miruka
3c7b78d4ca
Reorder QML files to follow coding conventions
...
https://doc.qt.io/qt-5/qml-codingconventions.html#qml-object-declarations
2020-07-12 01:27:44 -04:00
miruka
229fbee298
Remove HRichLabel component
...
Sparsly used and inflexible, just use HLabel
2020-07-12 00:13:52 -04:00
miruka
ed030f7dd9
Refactor ButtonLayout module components
...
- Rename ButtonLayout module to just Buttons
- Rename ButtonLayout into AutoDirectionLayout and move it to Base,
it's useful not just for buttons
- Rename OtherButton into GroupButton, which is now the base of all
other Buttons buttons
- Add generic (Positive|Middle|Negative)Button components, which are now
the base for (Apply|Cancel)Button
2020-07-12 00:13:52 -04:00
miruka
3daa60510a
DeviceVerification: slightly improve bottom text
2020-07-11 16:20:19 -04:00
miruka
cf7786e6c6
DeviceVerification: focus info area by default
2020-07-11 16:10:55 -04:00
miruka
10f47f71ac
Fix Chat userInfo errors
2020-07-11 00:43:31 -04:00
miruka
1611b8ea16
Reduce profile status message brightness
2020-07-10 16:51:13 -04:00
miruka
80bbee1434
Center-align profile status msg if only one line
2020-07-10 16:48:29 -04:00
miruka
159f4e3d15
Set a maximum width on member profile avatar
2020-07-10 16:45:31 -04:00
miruka
c53aa5ffa9
Add presence details to member profile
2020-07-10 16:44:08 -04:00
miruka
1c3099d440
Improve positive/middle/negativeBackground colors
...
Make them a bit lighter, and use these background colors
for presence orbs and room header device verified status instead
of text colors
2020-07-10 13:27:35 -04:00
miruka
e34bfd48a7
Disable leave/forget keybinds while offline
2020-07-10 13:15:01 -04:00
miruka
e5b67c722e
Disable inviting members while offline
2020-07-10 13:15:01 -04:00
miruka
291168ccdb
Disable member kick/ban while offline
2020-07-10 13:15:01 -04:00
miruka
e5a196dcf8
Clear default member list highlight on focus loss
2020-07-10 13:15:01 -04:00
miruka
27b914b0bf
Tell user when not loading history due to offline
2020-07-10 13:14:59 -04:00
vslg
5abdc1f779
Fix changes requested ( #101 )
...
- Fix code formatting issues.
- Document `Presence`.
- Improve `Presence.__lt__()` performance by
defining a dict outside the method.
- Make presence ball radius relative to uiScale
and configurable from theme.
2020-07-10 13:14:18 -04:00
vslg
43df8fd60b
Bug fix and minor improvements
...
Improvements:
- Add instant feedback upon setting a different
presence for account (local echo)
- Sort room members by power level and then
presence
- Periodically update members' `last_acitve_at`
field on the room pane
- Move status message field up on account context
menu, and put invisible before offline again
Bug fix:
- Do not try to override presence set from
another client, accept it
2020-07-10 13:14:18 -04:00
vslg
a3c9ac20c6
Make offline presence to stop sync
...
Setting the presence of an account to offline
will make the client to end sync task and will
prevent messages from being sent.
Setting it to online again or any other presence
will start sync task again.
Left:
- Local echo to presence change
- UI Control to affect all members presence
- Block more requests to be sent (e.g. member
actions)
2020-07-10 13:14:18 -04:00
vslg
3fa35b88c9
Add offline icon and fix theme colors
2020-07-10 13:14:18 -04:00
vslg
edc8e04ce7
Bug fix and minor improvements
...
Bug fixes:
- Do not send typing notice and set room read
markers when the account is invisible
- Fix typing on set_presence
- Allow users to unset status message by setting
it to blank
- Escape html tags of status message on
SubtitleLabel of MemberDelegate
Improvements:
- Display user ID and status message on a tooltip
by hovering account or room member name
2020-07-10 13:14:18 -04:00
vslg
a1e5a1981d
Fix presence not being updated after loaded once
2020-07-10 13:14:18 -04:00
vslg
6e202c3e27
Fix outdated presence for lazy loaded members
2020-07-10 13:14:18 -04:00
vslg
8644ddaad4
Add offline presence text
2020-07-10 13:14:18 -04:00
vslg
215557e353
Add presence circle on members avatar and account
2020-07-10 13:14:18 -04:00
miruka
512c08fe0a
Members: show last active time and status message
...
Left:
- Something like "Active" should be shown instead of a relative time
when the member is considered currently active by the matrix server,
but an "Active" text takes too much space
- Show a colored circle in the bottom right corner of avatars to
indicate if they're online, away, or offline
- Reduce opacity of offline members, but is there a way to know if
the server has presence disabled? For servers like matrix.org,
Riot shows the entire list of members with half opacity at all time,
we want to avoid that
- Setting our status text with a text field in AccountDelegate
context menu, similar to the DeviceDelegate's context menu
- Setting our online/away/invisible/offline status from
AccountDelegate context menu
- Replace the useless "Mirage x.y.z" button in the top left of the UI
with a control to affect all accounts's status
2020-07-10 13:14:18 -04:00
miruka
50e17e950d
Store member presence information
2020-07-10 13:14:18 -04:00
miruka
3e92b882c9
Open event context menu on menu keypress
2020-07-10 13:14:18 -04:00
miruka
affd0d0bd3
Improve member list highlighted item behavior
...
- When focusing the "Filter members" field, highlight the first item if
none already is
- When pressing esc in the field, clear any highlight
2020-07-10 13:14:17 -04:00
miruka
08f15b6a01
Support menu key for room/member lists currentItem
...
Allow opening context menu for AccountDelegate, RoomDelegate and
MemberDelegate by selecting an item with up/down (when focusing filter
field) and pressing the menu key.
2020-07-10 13:14:17 -04:00
miruka
92cbc4b006
Add keyboard controls for members list & profile
2020-07-10 13:14:17 -04:00
miruka
7c213a5317
Verify/blacklist devices for all our accounts
2020-07-10 13:14:17 -04:00
miruka
8623edc420
Fix typing notice not sent when composer cleared
...
Make sure to send a "we're not typing anymore" notice to the server when
the composer is cleared, e.g. when sending a message.
2020-07-10 13:14:17 -04:00
miruka
ea0a7517e4
Reload member device list after trust/blacklisting
2020-07-10 13:14:17 -04:00
miruka
963b022f3d
Reload member device list when they change
2020-07-10 13:14:17 -04:00
miruka
789e9c7da8
Close verif. page when verifying/blacklisting
2020-07-10 13:14:17 -04:00
miruka
4db69424b8
Put MemberDeviceSection in its own component
2020-07-10 13:14:17 -04:00
miruka
9b43bef935
Add profile/verification UI for room members
2020-07-10 13:14:17 -04:00
miruka
0dbc9ce659
Fix mention CSS for display names containing < >
2020-07-10 13:14:17 -04:00
miruka
0a2d274824
Add verified devices indicator to room header
2020-07-10 13:14:17 -04:00
miruka
1a32c26b4d
Don't animate "Loading messages..." when invisible
2020-07-03 15:00:07 -04:00
miruka
980e258df8
Always parent popups to window
2020-06-26 06:41:15 -04:00
miruka
d058926902
Uncheck messages before clearing event list
2020-06-26 06:11:03 -04:00
miruka
7f66ebb786
Re-add local highlights similar to 0.5.0
2020-06-26 05:59:16 -04:00
miruka
aa8dbce3a7
Re-add local unread "counter" similar to 0.5.0
2020-06-26 05:59:11 -04:00
miruka
78c04e6404
Fix flickable pages keyboard scrolling
2020-06-26 03:16:36 -04:00
miruka
dcc634be04
Page & popups: standardized keyboard accept/cancel
2020-06-25 10:27:24 -04:00
miruka
78affeddd9
Room settings avatar color: respond to name field
2020-06-25 10:06:03 -04:00
miruka
da4a5ab5cd
Rework HBox-based pages and account settings
...
- Refactor everything about HBox, and adapt all the pages and popups
that used it
- Replace HTabContainer by HTabbedBox
- Make boxes swippable
- Make esc presses in boxes click the cancel button
- Make all boxes and popups scrollable when needed
- Replace generic apply button icons in popups
- Fix tab focus for error and invite popups
- Rework (still WIP) the account settings page:
- Use the standard tabbed design of other pages
- Ditch the horizontal profile layout, hacky and impossible to extend
- Add real-time coloring for the display name field
- Implement a device list in account settings (Sessions, still WIP)
2020-06-25 08:49:27 -04:00
miruka
ad36fc72f4
Fix Connections deprecation warning on Qt 5.15
...
Adopt the correct behavior to get rid of
"QML Connections: Implicitly defined onFoo properties in Connections
are deprecated. Use this syntax instead:
function onFoo(<arguments>) { ... }"
2020-06-22 14:11:56 -04:00
miruka
ae37e13c6e
Use new scrollbars for scrollviews (ie text areas)
2020-06-22 13:57:49 -04:00
miruka
f2f4643189
Remove event list scrollbar padding
2020-06-22 13:10:48 -04:00
miruka
d4350f6e86
Borders for HTextArea
2020-06-06 21:54:13 -04:00
miruka
0f679956ec
Fix topic text area inside scrollview
2020-06-05 06:33:55 -04:00
miruka
e5d64f76b7
Limit max height of room settings topic area
2020-06-05 05:48:25 -04:00
miruka
3314489a26
Make room settings pane scrollable
...
The new Base/ButtonLayout components will be used in the near future to
refactor other HBox-based components
2020-06-05 05:42:12 -04:00
miruka
5402a332d2
Fix updating read receipt
...
- Find the last event that wasn't sent by us to update the marker to,
instead of picking whichever is the most recent
- Use the proper event ID instead of ID that could be a local echo
- Wait for the current marker update request to complete before trying
to send a new one
2020-06-04 23:12:03 -04:00
miruka
106bb3546f
Topic text areas: focus next item on tab
2020-06-03 04:58:09 -04:00
miruka
7f72373afe
Implement editing & saving room settings
2020-06-03 04:52:33 -04:00
miruka
6772f14c24
Use a text area instead of field for room topic
2020-06-02 21:52:16 -04:00
miruka
e676473f82
HLabeledTextField → extensible HLabeledItem
2020-06-02 20:14:55 -04:00
miruka
835d1c486f
Add markRoomReadMsecDelay setting
2020-06-01 18:57:17 -04:00
miruka
f686b96511
Cross-client unread counters & send read receipts
2020-06-01 09:25:09 -04:00
miruka
8b9681dc78
Rename HTextArea.append() → .insertAtCursor()
2020-05-30 23:08:21 -04:00
miruka
a91a0c18f7
Refactor Composer
...
- Have a simple HTextArea component instead of HScrollTextArea
- Split composer parts between multiple files
2020-05-30 23:08:21 -04:00
miruka
1fea162fac
Give up finding last event to respond to after 1k
2020-05-22 00:18:44 -04:00
miruka
6c7335e5db
Add keybind to open links in messages
...
Ctrl+O by default.
Opens externally all links in selecteds, focused or the last
message that has links.
Can't open files (media events) yet.
2020-05-22 00:10:45 -04:00
miruka
a48b1cedd0
Don't limit width of messages with code blocks
2020-05-20 11:08:02 -04:00
miruka
8823077a1c
Composer: on escape, cancel any response
2020-05-20 07:19:02 -04:00
miruka
d6846b08d9
Fix debugFocusedMessage keybind
2020-05-20 07:12:00 -04:00
miruka
26074fabd5
Handle reply keybind when multiple events selected
2020-05-20 06:58:38 -04:00
miruka
d1d7bffc8f
Add replyToFocusedOrLastMessage keybind (ctrl+Q)
2020-05-20 06:51:26 -04:00
miruka
b09b3b990b
Clear reply-to when sending message
2020-05-20 06:20:24 -04:00
miruka
fb35a6ec14
Implement replying to event in backend
2020-05-20 06:19:13 -04:00
miruka
aa8d3cf8d3
Add reply GUI controls
2020-05-20 05:19:06 -04:00
miruka
5128f0d888
Base TypingMembersBar on new InfoBar component
2020-05-20 04:45:30 -04:00
miruka
63af4be1e2
Defer fetching user profiles for events
...
Previously, events for which the sender, target (state_key) or remover
was missing from the room members would have their profile fetched
from network when registering the event into models.
This could cause very slow past events loading times for rooms, since
the event registering function (which contained the profile retrieval
directives) is run sequentially event-by-event.
Missing profiles are now lazy-loaded when events come into the
user's view in the QML timeline.
2020-05-20 03:42:40 -04:00
miruka
a1b485c039
Add ownMessagesOnLeftAboveWidth setting
...
Replaces the theme eventList.ownEventsOnRightUnderWidth property.
Can be set to -1 to always keep our own messages on the right.
2020-05-16 14:37:45 -04:00
miruka
60ad7416d9
Add maxMessageCharactersPerLine setting
...
Can be set to -1 for no maximum width.
2020-05-16 14:37:34 -04:00
miruka
e147b87d1b
Remove superfluous HTileDelegate, use HTile
2020-05-15 20:56:23 -04:00
miruka
bbb00dd8a0
Let escape presses work properly inside HDrawer
...
Also add escape to clear member filter when focusing the field, and
clearMemberFilterOnEscape setting.
2020-05-15 20:56:23 -04:00
miruka
45048e625c
Fix UI parts focus keybind and buttons
2020-05-15 20:56:23 -04:00
miruka
8e0c046cdb
MemberView: no need for onAdd transition hack now
2020-05-15 20:56:23 -04:00
miruka
e90312803b
Fix event delegates extra bottom space
2020-05-15 20:56:23 -04:00
miruka
b4561ce50b
Fix back/forward headers buttons in small window
2020-05-15 20:56:23 -04:00
miruka
37a9332aed
Python filtered models for room members
2020-05-15 20:56:23 -04:00
miruka
c352275089
Maybe fix the DelegateModel + ListView.add bug
2020-05-15 20:56:23 -04:00
miruka
7418f0fe93
Add dedicated HStringFilterModel component
2020-05-15 20:56:23 -04:00
miruka
69a525d317
Replace SortFilterProxyModel by DelegateModel
2020-05-15 20:56:23 -04:00
miruka
744c6f1b3f
Load all room members when showing a room to user
2020-05-15 20:56:23 -04:00
miruka
99d59bb49b
Use filtered model strictly when neccessary
2020-05-15 20:56:23 -04:00
miruka
2cc3f27247
Add Ban to member context menu
...
Also don't try to load past messages in rooms we've left/been
kicked/banned from.
2020-05-15 20:56:23 -04:00
miruka
2d231b7af1
Properly check power levels before allowing kick
2020-05-15 20:56:23 -04:00
miruka
2a0a3765fc
Add kick to room member context menu
2020-05-15 20:56:23 -04:00
miruka
3e10a6d530
Don't show popup when focusing unredactable event
2020-04-03 12:58:15 -04:00
miruka
1e049a0159
Unselect before unfocusing messages with keybind
2020-04-03 07:53:36 -04:00
miruka
0e04eafebd
Redaction local echo for our other accounts
2020-04-03 07:53:36 -04:00
miruka
5cb013838b
Be able to redact our other account's events
2020-04-03 07:53:36 -04:00
miruka
d991d04a8c
Fix copying event when no selection or focused
2020-04-03 07:53:36 -04:00
miruka
f8fe5d812b
Imrpove redacted events text
2020-04-03 07:53:36 -04:00
miruka
38cc0b1bc7
Ensure last event to delete is ours
2020-04-03 07:53:36 -04:00
miruka
5ea339ea33
Add keybinds for message removal
2020-04-03 07:53:36 -04:00
miruka
05319af858
Redaction code adjustments + theme addition
2020-04-03 07:53:36 -04:00
vSLG
e60a7f6dac
Make "Remove" option conditional in context menu
...
Refactor code in the backend so things can work
better
2020-04-03 07:53:36 -04:00
vSLG
fc878e7537
Fix event redaction and remove junk code
2020-04-03 07:53:36 -04:00
vSLG
db1afc980e
Add RedactionEvent support on backend
2020-04-03 07:53:36 -04:00
vSLG
b3f1075507
Add redacting event via context menu
2020-04-03 07:53:36 -04:00
miruka
554f5d6013
Fix need to press Esc twice to exit popups/menus
2020-04-03 07:53:36 -04:00
miruka
e33c202376
panes toggleFocus(): more reliable focus detection
2020-04-03 07:53:36 -04:00
miruka
4602366b9c
debugConsole: add toggle() conveniance function
2020-04-03 07:53:36 -04:00
miruka
ad937573cf
Rewrite HTile and adapt components using it
...
Rewrite HTile in a more standard way, hopefully fixing the
mysterious segfault on some systems
2020-04-03 07:53:36 -04:00
miruka
6e63569ad7
Add leaveRoom and forgetRoom keybinds
2020-04-03 07:53:36 -04:00
miruka
2a648d7f59
Add invite to room keybind
2020-04-03 07:53:36 -04:00
miruka
790229e188
Make DebugConsole keyboard-scrollable again
2020-04-03 07:53:36 -04:00
miruka
1038678a2f
Refactor global shortcuts, simplify debug consoles
...
- Move out all shortcuts from their central file to the component they
actually belong to
- Get rid of DebugConsoleLoader and the multiple consoles handling mess,
have only one global console
2020-04-03 07:53:36 -04:00
miruka
311a53f8f4
"Unselect" → "Deselect"
2020-03-27 07:06:38 -04:00
miruka
ff8fd01eb1
Fix copying selected non-message events
2020-03-27 05:38:29 -04:00
miruka
c03bf32a7b
Theme color for eventList highlight
2020-03-27 05:09:49 -04:00
miruka
af6cdc9013
Rename HListView checking-related functions
2020-03-27 05:05:25 -04:00
miruka
3f69710813
Allow copying text from non-message events
2020-03-27 04:58:49 -04:00
miruka
936c49127d
Add keyboard controls for message focus/selection
2020-03-27 04:49:01 -04:00
miruka
6ca10e1f2b
Customizable unselectAllMessage keybind
2020-03-27 03:53:25 -04:00
miruka
ba86414ddf
Implement shift+click/A-B message selection
2020-03-26 23:24:37 -04:00
miruka
e696c16fc8
Remove old drag-scrolling hack code
2020-03-26 22:22:07 -04:00
miruka
43c018d0a4
Improve "Copy text" text and availability
2020-03-26 22:00:00 -04:00
miruka
18f53829d9
Make composer/eventList ctrl-c work again
2020-03-26 22:00:00 -04:00
miruka
a61f1d5d04
Make selection look better
2020-03-26 22:00:00 -04:00
miruka
2d471b70f5
Single message text selection for mouses
2020-03-26 22:00:00 -04:00
miruka
3852357614
Start implementing new message selection system
2020-03-26 22:00:00 -04:00
miruka
710dba09ec
Remove message text selection hack
2020-03-26 22:00:00 -04:00
miruka
f148837fae
Remove Invite/LeftBanner avatar radius
2020-03-26 21:59:33 -04:00
Rinigus
d17c6334da
Add pen as an input device to the right click handler
2020-03-24 19:52:48 +02:00
Rinigus
5058e3c13e
Fix activation of right-click on touch devices
2020-03-24 16:43:31 +02:00
miruka
831dca3723
EventContent: avoid some false name detection
2020-03-23 16:50:12 -04:00
miruka
469992b650
Fix avatar size for one line events like m.emote
2020-03-23 16:10:13 -04:00
miruka
3c64b33cb7
Color user mentions
2020-03-23 13:30:40 -04:00
miruka
0682990666
Fix compact mode msg names on their own lines
2020-03-23 00:48:39 -04:00
miruka
53dfd08131
Add toggleCompactMode keybind, re-rename setting
2020-03-22 13:30:03 -04:00
miruka
18c16ca486
Rename compact mode setting → compactModeByDefault
2020-03-22 13:24:38 -04:00
miruka
d29b393ad2
Less vertical spacing between msgs in compact mode
2020-03-22 13:20:16 -04:00
miruka
ce7c986e5b
Compact mode for messages
2020-03-22 13:05:35 -04:00
miruka
5d513f84fa
Add compact mode for sidepanes + setting
2020-03-22 12:50:51 -04:00
miruka
73f14cac8e
Fix room pane header buttons onClicked
2020-03-21 15:02:37 -04:00
miruka
373ce6b925
Make EventContent.contentText not readonly
...
For debugging (really)
2020-03-21 14:56:44 -04:00
miruka
2511a03045
Fix event debug returning wrong event json
2020-03-19 18:49:33 -04:00
miruka
03251f019e
Really fix icon-only buttons alignment
2020-03-19 11:37:05 -04:00