John Gibbon
b48ca728d2
change/enable plural handling
2020-11-19 11:27:10 +01:00
Sebastian Wolf
af47ae2c72
Some improvements as suggested by @jgibbon, add unpin feature
2020-11-18 15:01:16 +01:00
Sebastian Wolf
b35d268b12
Now able to pin messages and show in-reply-to messages in overlay
2020-11-18 15:00:05 +01:00
Sebastian Wolf
2830f50a35
React properly on pinned message changes, nice message overlay ;)
2020-11-18 14:59:35 +01:00
Sebastian Wolf
f6b42eb3cb
Merge pull request #169 from jgibbon/bugfix/message-permissions
...
Bugfix/message permissions
2020-11-18 12:44:21 +01:00
John Gibbon
1486e49f1c
add FernschreiberUtils to qml context (unused for now)
2020-11-17 16:45:54 +01:00
Slava Monich
8db731636c
Removed mutex from ChatModel
...
AFAICT there's nothing to synchronize here
2020-11-16 21:33:47 +02:00
Sebastian Wolf
9141b8e68b
Fix crash when forwarding to some chats, introduce iterative init
2020-11-16 16:52:48 +01:00
Sebastian Wolf
9507024f51
Loading messages or not loading them...? Next step towards #136
2020-11-16 14:22:32 +01:00
Sebastian Wolf
18e88a8412
If last message was an own one, it was of course read...
2020-11-16 00:08:55 +01:00
Sebastian Wolf
c8c0044815
Display all error messages (let's see how it works...)
2020-11-15 23:29:04 +01:00
Sebastian Wolf
85d1bebc3a
Load last read messages, enable lazy-loading the future, might fix #136
2020-11-15 23:05:22 +01:00
Sebastian Wolf
1c82072c15
Merge pull request #160 from monich/updateChatPhoto
...
Update chat photo
2020-11-15 17:19:57 +01:00
Slava Monich
2323c574b3
Handle updateChatPhoto message
2020-11-15 06:12:17 +02:00
Slava Monich
90b32be076
Shortened log statements in ChatModel
2020-11-15 06:12:17 +02:00
Slava Monich
f25e3de029
Preallocate more QStrings in TDLibReceiver
...
For better performance.
2020-11-15 06:12:17 +02:00
Slava Monich
78720d48fc
Silence 'Unhandled object type "ok"' message
2020-11-15 06:12:17 +02:00
John Gibbon
a8ca33fa3d
multiple message selection
2020-11-14 23:50:12 +01:00
Sebastian Wolf
07aa92ffcc
Merge branch 'master' of https://github.com/Wunderfitz/harbour-fernschreiber
2020-11-14 14:10:28 +01:00
Sebastian Wolf
fcf1bb2118
Display state of last message if it was sent by the user, fixes #152
2020-11-14 14:10:24 +01:00
Slava Monich
66551e9590
Initialize TDLibWrapper::joinChatRequested
2020-11-14 06:33:39 +02:00
Sebastian Wolf
7d78a2f126
Message sent successfully: Send dataChanged event first
2020-11-13 23:39:27 +01:00
Sebastian Wolf
301f52603a
Integrate latest translation updates
2020-11-12 21:37:17 +01:00
iamnomeutente
92afae9f6c
Typo corrected
2020-11-11 16:02:56 +01:00
Slava Monich
8ca5956722
Made sticker animation configurable
2020-11-11 13:22:43 +02:00
Slava Monich
449784883e
Support for animated stickers
...
TGS are gzipped Lottie-Animations.
2020-11-11 13:22:31 +02:00
Sebastian Wolf
5d3805759a
Small UI fixes, error handling for joining chats
2020-11-09 23:22:24 +01:00
Sebastian Wolf
89e0576adc
Support open-with from external sources (e.g. web links)
2020-11-08 21:13:04 +01:00
Slava Monich
9e8038b1b6
Added TDLibFile and optimized ProfileThumbnail
...
Profile images seem to be loading significantly faster after
moving file fetching logic to the native code and removing the
artificial delay.
TDLibFile is a generic object which can hopefully be used
elsewhere as an efficient replacement for JavaScript.
2020-11-08 06:08:32 +02:00
Sebastian Wolf
9bb24b4862
Joining/leaving chats seems to work...
2020-11-07 20:29:44 +01:00
John Gibbon
7d28f72e98
add some message type descriptions
2020-11-05 14:06:41 +01:00
Sebastian Wolf
6d3b3464bf
Experiment a bit with opening new chats
2020-11-05 00:02:27 +01:00
Sebastian Wolf
84bfb003b0
Prepare to join/see chats by link
2020-11-03 23:39:09 +01:00
Sebastian Wolf
bbd8e3eabf
Start chat from @-mention
2020-11-03 22:21:01 +01:00
Sebastian Wolf
86ac99004d
Notifications: disable previewBody/Summary for now, update README
2020-11-01 21:58:22 +01:00
Slava Monich
45180b64b4
Don't post unwanted feedback for removed notifications
...
Also, don't turn off PatternCommunicationIM pattern when some (but
not all) notifications are removed, don't keep empty notification
groups in notificationGroups map, reuse already posted notification
after restarting the client, handle chat title change and more...
2020-11-01 21:07:15 +02:00
Slava Monich
9504b24d5c
Pre-allocate commonly used QStrings in NotificationManager
...
To avoid overhead (e.g. ASCII => UTF16 convertion) on each use.
2020-11-01 21:07:15 +02:00
Slava Monich
484f66f01c
Don't pass primitive types by const references to NotificationManager
...
It makes no sense whatsoever.
2020-11-01 21:07:15 +02:00
Sebastian Wolf
4de0cb213e
Merge pull request #120 from monich/chatmodel-crash
...
Fix crash in ChatModel
2020-11-01 19:41:44 +01:00
Slava Monich
4049d4aa7c
Fixed crash in ChatModel
...
QList::first() panics if the list is empty.
2020-11-01 05:09:47 +02:00
Slava Monich
4c2f9dba19
Moved chatTypeFromString from ChatListModel to TDLibWrapper
...
So that it can be used elsewhere
2020-10-31 21:19:34 +02:00
Sebastian Wolf
3175e641dc
Merge branch 'master' into const-refs
2020-10-26 21:28:39 +01:00
John Gibbon
d3324bfab2
slot/primitive considerations from #103
2020-10-24 19:28:20 +02:00
Slava Monich
080244ecb1
Removed useless slots from TDLibWrapper
...
Signals can be connected directly to signals.
2020-10-24 03:24:56 +03:00
Slava Monich
460eaa878f
Don't pass primitive data as a const reference
...
It just doesn't make any sense.
Reference (essentially a pointer) can't be smaller than a primitive
type, except for 64-bit numbers on a 32-bit platform. In terms of
performance, an additional indirection can't be better than picking
the value directly from the stack, let alone a register.
2020-10-24 03:13:08 +03:00
John Gibbon
924ff9deda
implement polls
2020-10-23 10:29:56 +02:00
John Gibbon
6970dc3625
implement "mark all messages as read" MenuItem
...
contributes to #70 (doesn't mark anything as unread, though, and does not use toggleChatIsMarkedAsUnread at all)
2020-10-19 21:08:32 +02:00
Sebastian J. Wolf
98e2bea69f
Prepare translation files for #87
2020-10-19 19:51:33 +02:00
Sebastian J. Wolf
91ae3651ef
Change license header to reflect number of contributions
2020-10-19 19:34:47 +02:00
John Gibbon
74a732a5b6
implement chat info page
...
includes some basic group administration features
2020-10-19 12:48:55 +02:00
Sebastian J. Wolf
a95dcc4efc
Ignore already existing file when download is requested, fixes #67
2020-10-18 22:14:48 +02:00
Sebastian J. Wolf
a78f60f974
Search for emojis with :<keyword>
2020-10-18 18:57:01 +02:00
Slava Monich
f75e5a3f4b
Added "Notification feedback" combo box
2020-10-18 18:02:44 +03:00
Slava Monich
6e1e100a87
Don't initialize MCE QDBusInterface on every D-Bus call
...
It's enough to initialize it once at startup.
Also avoided a few per-call ASCII => QString conversions and dropped
unnecessary mutex.
2020-10-18 18:02:44 +03:00
Slava Monich
65738a4ddf
Shortened log statements in NotificationManager
...
Copy/paste is evil
2020-10-18 18:02:44 +03:00
Sebastian J. Wolf
e578c6bef3
Use GridView for sticker picker
2020-10-18 16:29:34 +02:00
Sebastian J. Wolf
7d84fcb3bf
Change logo/icon - thanks to @iamnomeutente
2020-10-16 23:00:08 +02:00
Sebastian J. Wolf
cb9ae27bef
Some post-sticker cleanup...
2020-10-16 00:02:58 +02:00
Sebastian J. Wolf
f9221fe95e
Now the sticker picker looks much better...
2020-10-15 23:43:55 +02:00
Sebastian J. Wolf
537725566b
Supporting stickers is quite some work... :/
2020-10-14 23:25:56 +02:00
Sebastian J. Wolf
256244a08e
Some additional preparations to send stickers
2020-10-12 22:44:21 +02:00
Slava Monich
c60f2e59ce
Added showStickersAsImages option
2020-10-11 00:39:05 +03:00
Sebastian J. Wolf
c0269b5502
Display information for forwarded messages
2020-10-07 22:17:44 +02:00
Slava Monich
caecdb0f56
Moved app settings to a separate object
2020-10-06 04:40:39 +03:00
Sebastian J. Wolf
c1ea773fae
Prepare getting some stickers :D
2020-10-05 23:08:47 +02:00
Sebastian J. Wolf
92a869f7db
Re-introduce chatChanged as chat list update is no longer properly working after #40
2020-10-04 16:06:20 +02:00
Sebastian J. Wolf
b0e995c069
Remove TYPE_MAP from ChatListModel after #45
2020-10-04 14:21:28 +02:00
Sebastian Wolf
d4846d5f26
Merge pull request #45 from monich/hide-irrelevant-chats
...
Hide irrelevant chats
2020-10-04 14:09:45 +02:00
Sebastian Wolf
5509a555a0
Merge pull request #44 from monich/verbose
...
Enable verbose output in TDLibReceiver if DEBUG is defined
2020-10-04 13:37:55 +02:00
Sebastian Wolf
d79ecb8d4f
Merge branch 'master' into feature/userRegistration
2020-10-04 12:27:25 +02:00
Slava Monich
56bc1135a7
Don't show irrelevant groups by default
...
chatListModel.showAllChats property can be used to switch visibility
of irrelevant groups on and off.
2020-10-04 04:33:42 +03:00
Slava Monich
1b261c224f
Shortened log statements in TDLibWrapper
...
Macro is a good replacement for copy/paste.
And I'm not sure if this "[TDLibWrapper]" prefix is really necessary
since Qt adds the class and method to the debug messages which makes
another such prefix redundant. The LOG macro makes it easy to get rid
of it.
2020-10-04 04:28:46 +03:00
Sebastian J. Wolf
ec9e4b2f0b
Handle message short texts properly in backend
2020-10-03 22:58:45 +02:00
Sebastian J. Wolf
79c77c426b
Don't display 'unknown' for channels in chat list
2020-10-03 21:06:50 +02:00
Slava Monich
f17048d071
Enable verbose output in TDLibReceiver if DEBUG is defined
...
This should have no effect on release build.
2020-10-03 21:09:04 +03:00
Slava Monich
39ecc7a058
Expose more roles from ChatListModel
...
Roles can now be directly bound to individual UI elements.
Replaced per-delegate timestamp refresh timers with a single
one refreshing all timestamps with a single dataChanged signal.
Removed chatChanged signal from since it's no longer necessary.
2020-10-03 21:02:33 +03:00
John Gibbon
3149cb38cb
handle empty chat list after registration
...
also translate some strings from b0d85840 to german
2020-10-01 13:20:43 +02:00
John Gibbon
6c1fc77f0c
handle user registration
2020-10-01 12:51:43 +02:00
Sebastian J. Wolf
9eb396c9ca
Fixes here and there...
2020-09-30 21:41:49 +02:00
John Gibbon
b58e33b2a4
Handle display of messageLocation
...
resolves #36
2020-09-28 22:59:47 +02:00
Sebastian J. Wolf
5fa2a1200f
Adjust new sorting logic to TDLib 1.6.0, add contributors' info
2020-09-28 20:47:03 +02:00
Sebastian Wolf
c333a968d6
Merge pull request #37 from monich/order
...
Fix chat ordering and optimize chat data storage
2020-09-28 20:21:26 +02:00
Sebastian J. Wolf
30f208d9fb
Initial steps to upload videos and documents
2020-09-27 23:24:22 +02:00
Slava Monich
f10d8a4045
Fix chat ordering and optimize chat data storage
2020-09-27 19:15:13 +03:00
Slava Monich
3c0d046b3f
Handle updateChatPosition
...
And a bit of optimization:
1. Lookup handlers from hashtable
2. Pre-initialize commonly used strings
3. Avoid unnecessary QVariantMap lookups
4. Shortened logging statements
2020-09-27 19:10:30 +03:00
Sebastian J. Wolf
ad1cec1dfb
Enable image attachments :)
2020-09-27 13:49:06 +02:00
Sebastian J. Wolf
fcc46fbc94
Auto-scroll to message if user sent it
2020-09-22 20:32:35 +02:00
Sebastian J. Wolf
c5dade71b0
Introduce some lazy loading
2020-09-21 22:10:03 +02:00
Sebastian J. Wolf
32fce5b965
Try to tweak updates and list positioning
2020-09-20 14:26:09 +02:00
Sebastian J. Wolf
64b6c8607e
Deleting messages seems to work...
2020-09-20 00:13:42 +02:00
Sebastian J. Wolf
b78a0f8731
Edit message seems to work
2020-09-19 20:33:51 +02:00
Sebastian J. Wolf
815bb5d592
Prepare two-step authentication
2020-09-16 22:36:43 +02:00
Sebastian J. Wolf
4d573f1f43
Option to send message by pressing enter
2020-09-16 22:04:02 +02:00
Sebastian J. Wolf
b5f39f78c0
Mark all messages as read in small chats
2020-09-16 21:12:39 +02:00
Sebastian J. Wolf
9070caa2a3
Mute/unmute chats both from list and in chat
2020-09-16 20:43:36 +02:00
Sebastian J. Wolf
1a5aa9de3f
Start work on un/muting chats
2020-09-16 00:15:43 +02:00
Sebastian J. Wolf
db831f5a0a
Detect channel properly for notifications
2020-09-15 21:37:24 +02:00
Sebastian J. Wolf
d39b1c4a10
Open chat directly from notification
2020-09-15 21:17:44 +02:00
Sebastian J. Wolf
266a72036b
Open Fernschreiber from notification
2020-09-14 23:43:21 +02:00
Sebastian J. Wolf
8f3f7cfa9b
New chat positioning method: Faster, but less exact
2020-09-13 23:25:48 +02:00
Sebastian J. Wolf
fdf89fd8a8
Add NGF daemon and LED control for notifications
2020-09-13 21:54:36 +02:00
Sebastian J. Wolf
c52a544e51
Better notification texts
2020-09-12 23:22:33 +02:00
Sebastian J. Wolf
7dd8e07a39
Consolidate messages belonging to the same chat
2020-09-09 23:44:02 +02:00
Sebastian J. Wolf
239af6e6e7
Sending simple text notifications, yeah!
2020-09-08 23:44:57 +02:00
Sebastian J. Wolf
8809372b67
Backend can really send notifications
2020-09-03 23:20:46 +02:00
Sebastian J. Wolf
9f708080c8
We need chat information in notification manager
2020-09-02 23:05:09 +02:00
Sebastian J. Wolf
aa3a841fee
Prepare notification manager
2020-09-02 22:49:15 +02:00
Sebastian J. Wolf
436bce0966
Enable Telegram Notification API
2020-09-01 23:14:59 +02:00
Sebastian J. Wolf
1a3768b79b
Workaround for chat listview crashes (no last item, why?)
2020-08-31 23:51:32 +02:00
Sebastian J. Wolf
a04332d4b6
Fix chat positioning and sent/read indicator
2020-08-31 21:51:52 +02:00
Sebastian J. Wolf
cff06cc32d
Try to get pending message state into the chat
2020-08-30 23:52:22 +02:00
Sebastian J. Wolf
a131aa739b
Add read/unread info to own messages
2020-08-30 19:04:16 +02:00
Sebastian J. Wolf
0849fadadd
Translations adjustments, trigger history reload earlier
2020-08-30 15:04:15 +02:00
Sebastian J. Wolf
5fcca3c405
Try it again with loading more messages automatically
2020-08-29 23:06:14 +02:00
Sebastian J. Wolf
5c16a13b25
Add display of unread message count to chat
2020-08-29 21:39:57 +02:00
Sebastian J. Wolf
cca241ed9a
Fix infinite loading for small amount of messages
2020-08-29 18:28:57 +02:00
Sebastian J. Wolf
63833b3c5c
A little bit of lazy loading for the chat view...
2020-08-29 18:04:23 +02:00
Sebastian J. Wolf
391dd597e2
Initial performance improvements
2020-08-29 16:32:43 +02:00
Sebastian J. Wolf
a24bf81355
Some work on reply management, still some work to do...
2020-08-29 11:22:18 +02:00
Sebastian J. Wolf
402c0ed671
Add possibility to send replies
2020-08-28 17:40:25 +02:00
Sebastian J. Wolf
ecf4c859e8
Add support for documents
2020-08-28 16:18:33 +02:00
Sebastian J. Wolf
50a67bb037
Add fullscreen video page
2020-08-28 11:43:51 +02:00
Sebastian J. Wolf
c741a157b7
Introduce video preview
2020-08-28 10:41:18 +02:00
Sebastian J. Wolf
8a3b07e537
Load older chat messages if needed
2020-08-26 22:52:06 +02:00
Sebastian J. Wolf
a889c95899
Display original message excerpt in replies
2020-08-25 16:42:46 +02:00
Sebastian J. Wolf
b899d03660
Display images in messages and introduce image page
2020-08-24 23:02:08 +02:00
Sebastian J. Wolf
1b18a78efc
Display profile pictures and names in groups
2020-08-23 19:17:30 +02:00
Sebastian J. Wolf
63966f052a
React properly if no messages are there...
2020-08-23 17:24:05 +02:00
Sebastian J. Wolf
cc266aa58b
Sending text messages works... :D
2020-08-23 00:17:34 +02:00
Sebastian J. Wolf
c472e70775
React to new messages in chat
2020-08-22 23:49:02 +02:00
Sebastian J. Wolf
59a7c8381d
Mark display messages as read
2020-08-22 23:05:45 +02:00
Sebastian J. Wolf
ca7abb2a2f
First chat message list :)
2020-08-22 21:43:20 +02:00
Sebastian J. Wolf
2750764de9
Skeleton for chat model
2020-08-22 17:30:02 +02:00
Sebastian J. Wolf
8dc8dd3651
Handle user status updates
2020-08-22 14:06:26 +02:00
Sebastian J. Wolf
2f5d725f7b
Display chat status (members/online)
2020-08-21 18:03:51 +02:00
Sebastian J. Wolf
b42a8e4181
Opening and closing chat officially on entering/leaving page
2020-08-21 14:47:08 +02:00
Sebastian J. Wolf
543ba5d46b
Force list item update after changed chats
2020-08-21 09:29:19 +02:00
Sebastian J. Wolf
588fbd11a8
Support some message types in chat list
2020-08-20 23:56:21 +02:00
Sebastian J. Wolf
13ce878b05
Display unread message count on chat list
2020-08-20 20:06:59 +02:00
Sebastian J. Wolf
d87b5b84fb
Surrendering - trying delta updates only after successful initialization
2020-08-20 18:45:56 +02:00
Sebastian J. Wolf
d29b3bd79b
Completed automated sorting, proper UI updates still missing
2020-08-20 17:06:47 +02:00
Sebastian J. Wolf
3948920a93
Sorting and updating is complicated
2020-08-20 14:58:32 +02:00
Sebastian J. Wolf
0a04169f4f
Sorting seems to work, we'll see...
2020-08-20 10:50:47 +02:00
Sebastian J. Wolf
8555716113
Display last message in chat list, start ordering them
2020-08-20 00:24:24 +02:00
Sebastian J. Wolf
c44d85732c
First steps to get a chat list on screen :)
2020-08-19 09:55:13 +02:00
Sebastian J. Wolf
d55aa19a72
The onboarding UX doesn't like me...
2020-08-17 23:44:37 +02:00
Sebastian J. Wolf
666acdf1db
Every app needs a nice cover page :)
2020-08-16 23:31:20 +02:00
Sebastian J. Wolf
ee31736f83
Cache discovered chats
2020-08-16 17:38:51 +02:00
Sebastian J. Wolf
41ac3c4829
Bring own profile picture to the about page
2020-08-14 10:33:42 +02:00
Sebastian J. Wolf
fdffb99029
Add user information & add Emojis
2020-08-13 22:33:08 +02:00
Sebastian J. Wolf
446338363f
Store user information & introduce connection status
2020-08-13 17:08:14 +02:00
Sebastian J. Wolf
6b68d8a276
First successful authentication, yeah! :)
2020-08-13 15:35:43 +02:00
Sebastian J. Wolf
bd59896896
Asking Telegram for an authentication code
2020-08-13 10:15:26 +02:00
Sebastian J. Wolf
6c4cb405b1
Process connection status updates
2020-08-13 00:20:28 +02:00
Sebastian J. Wolf
154113afc4
Initial ping-pong with TDLib :)
2020-08-12 23:51:09 +02:00
Sebastian J. Wolf
26a885400d
Bring TDLib version to the UI
2020-08-12 10:50:01 +02:00
Sebastian J. Wolf
0e7dc04fa6
Initial parsing of received information
2020-08-10 23:37:25 +02:00
Sebastian J. Wolf
ef9b234698
Add TDLib message receiver
2020-08-10 20:17:13 +02:00
Sebastian J. Wolf
6d864b3623
Initialize Fernschreiber repository
2020-08-10 14:17:29 +02:00