Commit Graph

254 Commits

Author SHA1 Message Date
miruka
ca09effd6e Download and show full picture for m.image GIFs 2019-11-04 10:29:41 -04:00
miruka
484eefe86d Fix image URL preview, add Thumbnail.create()
- Make HMxcImage's mxc property work with http too (temporary quick
solution)

- Thumbnail objects can now be initialized with existing bytes and not
  have to download anything.
2019-11-04 07:00:28 -04:00
miruka
2f19ff493b Rewrite media caching (old image provider)
- Doesn't use pyotherside's image provider feature, for more flexibility
  and simplicity
- Suitable for supporting matrix media events and more later
- Avoid a lot of duplicate files that the old cache created due to
  server not returning what we expect, mistakes in Python/QML code, etc
- Changed file structure
  (e.g. thumbnails/32x32/<mxc id> instead of
   thumbnails/<mxc id>.32.32.crop)

- Backend.wait_until_account_exist: start issuing warnings if the
  function runs for more than 10s, which means in most case a bad user
  ID was passed

- New HMxcImage QML component, used in H(User/Room)Avatar
2019-11-03 13:48:12 -04:00
miruka
2e4a7904d5 Play m.image events GIFs, rename some properties 2019-10-30 06:47:59 -04:00
miruka
fe4eff62c5 Add basic loading indicator to images 2019-10-27 16:35:58 -04:00
miruka
3bc185f4e6 Change X11 selection only if any text selected 2019-10-25 09:02:21 -04:00
miruka
30ebb7c88e Support X11 selection mechanism for messages 2019-10-25 08:49:19 -04:00
miruka
d20ab5a348 Refactor EventContent
Use proper layouts and get rid of multiple annoyances/bugs like
text-wrapping randomly happening in the middle of words, background
rectangles being too large, a certain binding loop, etc
2019-09-19 15:49:29 -04:00
miruka
4c4d747ecf Add AudioPlayer & EventAudio 2019-09-17 23:23:47 -04:00
miruka
f19d337817 Move hover preview height from settings to theme 2019-09-17 16:39:45 -04:00
miruka
692749e72f Support video events, new media player 2019-09-17 16:30:04 -04:00
miruka
76ffdfd28a Fix HTile left/right click handling 2019-09-14 18:52:43 -04:00
miruka
c6395ff940 EventDelegate context menu, EventFile click
Improve/extend choosing the cursor shape, how context menu handles the
current hovered thing, and open link on EventFile click
2019-09-14 18:33:32 -04:00
miruka
38e781c9f7 Fix HButton/HTile focus and click 2019-09-14 17:39:17 -04:00
miruka
784cb3b19c Split HTileDelegate into HTile and HTileDelegate 2019-09-14 16:05:57 -04:00
miruka
0db34cc3c8 Add EventMediaLoader
Handles loading of URL previews and will handle all
matrix media messages types.
2019-09-14 00:36:19 -04:00
miruka
f6b2c59fdc Remove quadruple click message selection
A tripple click is too easily detected as a quadruple when the user
actually did a triple.
2019-09-12 20:17:43 -04:00
miruka
ebf6d36c01 Transparent black for hovered avatar background
Also add theme property to change it.
2019-09-12 20:04:46 -04:00
miruka
fcdd960779 Fix avatar tooltips 2019-09-12 19:54:31 -04:00
miruka
7313d6cf1d Remove debug print in HImage 2019-09-12 17:39:28 -04:00
miruka
0b60b2b5bc Add autoplay GIF setting 2019-09-12 17:32:48 -04:00
miruka
1f58cfeae8 Add GIF pause overlay 2019-09-12 17:27:26 -04:00
miruka
5192fe8b55 Click to play/pause animated image 2019-09-12 16:25:05 -04:00
miruka
125d1e24aa Support GIFs 2019-09-12 16:16:35 -04:00
miruka
2e3d21aa31 HToolTip: fix binding loop 2019-09-11 16:47:13 -04:00
miruka
0e6b6c830d Support inline HTML/links for room topic 2019-09-11 16:01:37 -04:00
miruka
e53f6ed292 Fix selection disappearing after delegates unload
Make delegates update their selection when they're loaded again.
2019-09-11 15:49:00 -04:00
miruka
d998b471f0 Fix text selection start drag delay 2019-09-11 15:25:57 -04:00
miruka
7c0bed79a9 ImportKeys/ExportKeys separate dialog componants 2019-09-09 14:42:58 -04:00
miruka
85bdbcf5be Move HBox stuff from HPopup to BoxPopup 2019-09-09 12:50:00 -04:00
miruka
38781502c6 HBox: make buttons a column if not enough width 2019-09-09 12:37:01 -04:00
miruka
035ab1add6 HMenu: Fix width calculation (padding) 2019-09-09 11:21:49 -04:00
miruka
d7fc0ad0b8 HButtonContent: Enable label eliding 2019-09-09 11:20:59 -04:00
miruka
c38cc9d3df Move popups to their own folder 2019-09-09 08:57:38 -04:00
miruka
3ef32b4c04 Use verb when possible instead of "OK" for buttons 2019-09-09 08:20:24 -04:00
miruka
9f8ac6ca9f Auto-focus OK only for ClearMessagesPopup 2019-09-09 08:16:05 -04:00
miruka
7f995c749f HPasswordPopup: enable OK if password not empty 2019-09-09 07:49:07 -04:00
miruka
e5893c5569 HBox: Add arrow keys navigation
Also rename enterButtonTarget to clickButtonOnEnter
2019-09-09 07:41:48 -04:00
miruka
7f89604789 button/checkbox: highlight on activeFocus
Not just tab-induced focus.
2019-09-09 07:19:06 -04:00
miruka
af17151c11 Fix shortcut focus issue? 2019-09-09 06:47:36 -04:00
miruka
6f7695ad22 HBoxPopup: split text into summary and details 2019-09-09 06:32:29 -04:00
miruka
9286f54cd5 Rename HOkCancelPopup to HBoxPopup 2019-09-09 06:25:08 -04:00
miruka
2611e86517 Confirmation popup to clear messages 2019-09-09 06:23:46 -04:00
miruka
d547df62fb Fix HPasswordPopup valid/wrong icon color 2019-09-08 12:19:40 -04:00
miruka
aae26672de Split HPasswordPopup into HPopup, HOkCancelPopup 2019-09-08 12:17:42 -04:00
miruka
a87f98fae0 Add key exporting to account settings 2019-09-07 19:17:32 -04:00
miruka
8113ba468d HTextField: remove ugly _tf property 2019-09-07 17:02:09 -04:00
miruka
31e1daa046 Set placeholder text color for text field and area 2019-09-07 17:00:12 -04:00
miruka
a6b154c207 Composer scrollbar: invisible unless really needed 2019-09-07 15:48:13 -04:00
miruka
cde0c15a68 Add full name/topic tooltip to room header 2019-09-07 14:14:04 -04:00
miruka
66871aefe6 Set a (max) content width for HToolTip 2019-09-07 14:00:01 -04:00
miruka
5674d0c7b7 Use a component to display image link previews 2019-09-06 23:34:40 -04:00
miruka
0651fbd100 Make page scrolling less slippery 2019-09-06 17:03:52 -04:00
miruka
14e01159c6 Increase max flick velocity for HListView 2019-09-06 16:51:26 -04:00
miruka
c35492ca62 Restore HListView scrollbar 2019-09-06 16:46:04 -04:00
miruka
164f09c939 Add theme property to control hovered avatar size 2019-09-06 16:14:39 -04:00
miruka
812fc3aff7 Background color for HMenu instead of transparent 2019-09-06 16:11:25 -04:00
miruka
e1f24657f1 Fix mouse wheel not working on eventList 2019-09-06 16:08:16 -04:00
miruka
01f8bc3d6c Add context menu to copy message link URLs 2019-09-06 15:07:19 -04:00
miruka
bf2004ed84 Don't deselect area text from label container 2019-09-06 15:07:19 -04:00
miruka
85aaf7bcce Don't copy combined invisible names 2019-09-06 15:07:19 -04:00
miruka
9936a7e2ee Fix ctrl-c behavior 2019-09-06 15:07:19 -04:00
miruka
5ce71834f9 Fix clicking a link breaking scroll shortcuts 2019-09-06 15:07:19 -04:00
miruka
24a976e3ee Fix clicking on eventList top/bot making it scroll 2019-09-06 15:06:35 -04:00
miruka
6a346264be Improve multiple clicks message selection
- Triple click selects the message body without date or name
- Quadruple click (yes) selects the entire message with name and date
- Quadruple click on the name label does the same
2019-09-06 15:06:35 -04:00
miruka
32fde57ba7 Make message display names selectable 2019-09-06 15:06:35 -04:00
miruka
b610a404af Clear selection if event list loses focus 2019-09-06 15:06:35 -04:00
miruka
522d078d7b Accept ctrl-c to copy selected messages 2019-09-06 15:06:35 -04:00
miruka
131a20e9c5 Add context menu to copy selected messages 2019-09-06 15:06:35 -04:00
miruka
016f76167f Initial implementation of message selection 2019-09-06 15:06:35 -04:00
miruka
f5cbbd0a44 Reduce needed width to show room times
Also remove excess spacing between the title and time
2019-09-06 14:04:18 -04:00
miruka
970b0c82d3 Disable long press to open context menu
Interferes with drag-scrolling for HTileDelegate
2019-09-02 19:35:18 -04:00
miruka
28d8721fe2 Fix HShortcutHandler not processing shortcuts 2019-08-31 15:34:05 -04:00
miruka
e506a70767 Fix random shortcuts getting triggered
Caused the "window bounces when typing text" bug
2019-08-30 19:06:42 -04:00
miruka
6953250e50 Adjust padding for Buttons, TextFields, TextAreas 2019-08-30 18:10:25 -04:00
miruka
a6aec2d5bf Fix HButton size on KDE 2019-08-30 17:37:13 -04:00
miruka
a40b274c7d Explicitely unset font.pointSize
Avoid warnings on desktop environments
2019-08-30 17:04:42 -04:00
miruka
aec83c66f3 Fix apply button loading on profile change 2019-08-30 11:42:01 -04:00
miruka
e1da7be253 Gray out disabled button icons 2019-08-28 18:32:16 -04:00
miruka
6cda69ad67 Restore icon colors 2019-08-28 18:21:13 -04:00
miruka
37e762d241 Remove hard-coded colors and cleanup SVG icons
Also remove old filled icons pack, and rename the "light-thin" pack to just
"thin".
2019-08-28 16:30:48 -04:00
miruka
18120f5216 Add HProgressBar component 2019-08-28 14:28:20 -04:00
miruka
3a5d8bff9e Remove HInteractiveRectangle and HRateLimiter 2019-08-28 12:02:53 -04:00
miruka
b1e1ea30d2 Rename HInterfaceBox component to HBox 2019-08-28 11:56:05 -04:00
miruka
7c3ed5ca14 Use HInterfaceBox for ImportExportKeys 2019-08-28 11:54:25 -04:00
miruka
f65c0176ba Better error handling and fixes for key import 2019-08-27 23:51:38 -04:00
miruka
97b1608bcb Ensure opacity/rotation of button icon is reset
After loading finished
2019-08-27 22:59:26 -04:00
miruka
560981a97e Remove uneeded HRectangle component 2019-08-27 22:46:31 -04:00
miruka
77dbc3a502 Fix accent and input colors 2019-08-27 22:44:41 -04:00
miruka
9b83b91d9d Remove unused HScalingBox component 2019-08-27 22:44:20 -04:00
miruka
ebfebbeae1 Improve import keys password popup 2019-08-27 22:43:57 -04:00
miruka
0a0e11e1f4 Rework the LoadingScreen and HBusyIndicator 2019-08-27 19:47:58 -04:00
miruka
6cb7589cca Loading icon for accounts until synced 2019-08-27 15:00:50 -04:00
miruka
0c0ede8b40 Disable buttons when they're loading 2019-08-27 14:21:10 -04:00
miruka
bf3847dd66 Animate button loading 2019-08-27 14:11:33 -04:00
miruka
9077ea3925 Fix timer setting current AccountsRoomList index 2019-08-23 10:53:54 -04:00
miruka
2ff65af6ab Prevent alt+letter from writting text in fields 2019-08-22 14:31:13 -04:00
miruka
a47351a5ad Adapt auto-repeat shortcuts to new system 2019-08-22 14:16:49 -04:00
miruka
8de26c11a1 HShortcutHandler & HShortcut components
Provide more powerful shortcuts handling than what's available with
QML's Shortcut component, notably being able to react differently to key
presses, releases and auto-repeats.
2019-08-22 13:03:26 -04:00
miruka
627a186700 Add tooltips to buttons and room invite button 2019-08-22 09:27:41 -04:00