Commit Graph

1318 Commits

Author SHA1 Message Date
miruka
51386821bc Make clientManager easier to use
- Backend.clientManager renamed to Backend.clients
- clientManager is now a Mapping subclass

Before/After from Python:
backend.clientManager.clients[thing] → backend.clients[thing]

From QML:
Backend.clientManager.clients[thing] → Backend.clients.get(thing)
2019-05-02 14:58:42 -04:00
miruka
52d538e995 Merge Backend and QMLModels
Backend.models.accounts → Backend.accounts
Backend.models.roomEvents → Backend.roomEvents
2019-05-02 14:31:47 -04:00
miruka
047225fded Rework models hierarchy, room categories models 2019-05-02 14:20:21 -04:00
miruka
ada44cf6f7 Various ListModel and ListItem improvements
Type hints, pyqt types, comments,
better __repr__ for ListItem, repr() for ListModel
2019-05-01 17:31:02 -04:00
miruka
92b3baa012 Set background image sourceSize to screen size
Saves memory for most displays
2019-05-01 03:25:58 -04:00
miruka
a8e1973eb2 Add run.py script 2019-05-01 02:20:17 -04:00
miruka
3299aefaf1 Fix Engine.app_dir and leftover Backend.pdb()
Use __file__ instead of sys.argv[0] to determine the current script's
path, which works correctly when importing the package from another dir
2019-05-01 01:32:06 -04:00
miruka
12ce4cdb30 Rework startup and Application-Engine relation
- Application and Engine will be started by __init__.run() independently
- Exiting app will disconnect clients
- Signals like SIGINT (Ctrl-C) are now handled for proper exit
2019-05-01 01:23:38 -04:00
miruka
5ad13aed7d Same avatar-content spacing for events and msgs 2019-04-29 23:58:17 -04:00
miruka
012e89f6cb Improved ListModel and ListItem
- New ListItem implemented using a metaclass, which makes defining new
  ListItem subclasses much cleaner and shorter

- ListModel functions taking an index now accept either an int
  (list index) or str (value of a main key)

- getWhere() gone, simply use get(a_main_key_value) now

- updateOrAppendWhere replaced by update()/upsert()
2019-04-29 23:51:37 -04:00
miruka
216ae312c5 Remove html-sanitizer custom attrs workaround
Fix merged upstream (1.7.2).
2019-04-28 20:39:45 -04:00
miruka
67c3ef5906 Disable QML cache, responsible of multiple bugs 2019-04-28 20:37:11 -04:00
miruka
c4fb0c1150 Fix SidePane indent at minimum size 2019-04-28 15:52:26 -04:00
miruka
4433e48611 Fix QtQuick.Layout version, MessageContent wrap 2019-04-28 15:45:42 -04:00
miruka
70ca608961 Lower opacity for boxes in HStyle 2019-04-28 15:38:08 -04:00
miruka
ef60a1129f Clean up QML imports 2019-04-28 15:36:43 -04:00
miruka
f714c85d75 HSpacer component for layouts 2019-04-28 15:22:53 -04:00
miruka
d0089df051 Use Base components without namespace prefix 2019-04-28 15:18:36 -04:00
miruka
89fcfbea82 Colors for controls and PaneToolBar 2019-04-28 15:13:18 -04:00
miruka
b8901dfc5b Use H*Layout totalSpacing wherever possible 2019-04-28 14:54:01 -04:00
miruka
455490b5af Use Loaders for RoomEventDelegate 2019-04-28 14:48:59 -04:00
miruka
7004b4ea3f Reorganize Chat component files
- MessageList renamed to RoomEventList
- MessageDelegate renamed to RoomEventDelegate
- Banner and RoomEventList get their own folders
2019-04-28 14:34:29 -04:00
miruka
99ab6a817a Update/refactor Chat components and banner 2019-04-28 14:20:30 -04:00
miruka
bf9eb7dbc9 Use HColumnLayout in HInterfaceBox 2019-04-28 12:47:51 -04:00
miruka
c5794424ed Capitalize all component folders 2019-04-28 12:45:12 -04:00
miruka
e64b233427 Better default SidePane size 2019-04-28 12:40:42 -04:00
miruka
87c72e32db Update SidePane componants, add Base.HColumnLayout 2019-04-28 12:40:18 -04:00
miruka
2e8e042808 Replace HToolButton usages with HButton
Also change sidePane toolbar: option button and filter rooms field
2019-04-28 12:10:34 -04:00
miruka
80067b5060 Add HScrollableTextArea and make SendBox use it 2019-04-28 11:53:47 -04:00
miruka
25badb693d Use HImage for HStatusAvatar 2019-04-28 11:34:05 -04:00
miruka
83272b9580 Update and improve HAvatar code 2019-04-28 11:32:02 -04:00
miruka
be4b15e484 Add missing H prefix to some base componants 2019-04-28 11:21:19 -04:00
miruka
f49b3e4b62 Fix sendbox freeze when typing more than one line 2019-04-28 11:08:09 -04:00
miruka
5650234e3b Restyle the chat UI 2019-04-28 11:03:08 -04:00
miruka
f65ea9dd0d Just import nio
Instead of nio.events, nio.responses, etc.
All the classes are already available at nio.
2019-04-28 01:17:12 -04:00
miruka
d3749af4bc Boxes blur, more styling 2019-04-28 00:46:40 -04:00
miruka
8a714fb7a0 Add Default and RememberAccount? pages 2019-04-27 21:07:20 -04:00
miruka
0db5a3233d Change pages organization
- UI (previously MainUI) is back to being the only component loaded
  as Window's child

- UI has the background image previously only for the SignInPage

- If there are no accounts, the UI Loader's initialItem is the
  SignInPage

- The SidePane becomes visible when there's >=1 account connected
2019-04-27 18:54:33 -04:00
miruka
e09efaecda Refactor LoginPage into separate components 2019-04-27 18:00:28 -04:00
miruka
102baccbe5 Login loading icon
Add standard mechanism in HButton for loading icon display;
have HImage and HIcon base components.
2019-04-26 21:16:57 -04:00
miruka
dc2f779d4b Make login button work for login page 2019-04-26 18:47:25 -04:00
miruka
c7dd602687 Fix room forget and buttons bugs 2019-04-26 16:52:26 -04:00
miruka
5988eccdbb Add login page and forget room system 2019-04-26 16:02:20 -04:00
miruka
34d2bd233d Set parents for all QObjects 2019-04-22 14:24:45 -04:00
miruka
6664fc29e3 Better default size for ApplicationWindow 2019-04-22 14:02:55 -04:00
miruka
33743baa12 Use same color as avatars for message user names 2019-04-22 11:45:08 -04:00
miruka
0df46a0415 Add property notify signals where needed 2019-04-22 11:37:41 -04:00
miruka
4607f53b7a Show special text when room has no events yet
e.g. if invited to a room but there's no history provided by
another account.

Also add a signal for the ListModel.count property.
2019-04-22 11:31:06 -04:00
miruka
d47bf34522 Replace assert statements by normal if/raise 2019-04-22 10:08:42 -04:00
miruka
98969b75c7 Remove unused getcryptdbpath leftover function. 2019-04-22 10:05:08 -04:00