diff --git a/README.md b/README.md index 86a690fb0..b87228f89 100644 --- a/README.md +++ b/README.md @@ -71,6 +71,14 @@ TelegramClient is a **Squeak-Client** for the widely used Telegram-Messenger. It ℹ Show group description and members + + ↩ + Reference an old message + + + 🖼 + Show profile pictures + @@ -115,6 +123,8 @@ Pre-Releases are created automatically whenever a commit is added to the develop ## Our Group +Group 11 of the 2022 SWT I module included [Richard Wohlbold](https://github.com/rgwohlbold), [Til Bergmann](https://github.com/Till-B), [Antony Kamp](https://github.com/antonykamp), [Lucas Reisener](https://github.com/LucasDerReisende), [Erik Kohlros](https://github.com/kohlros), and [Jacob Schäfer](https://github.com/jacob271). + Group 2 of the 2021 SWT I module included [Romeo Sommerfeld](https://github.com/rsommerfeld), [Raphael Kunert](https://github.com/Storyxx), [Jannis Berndt](https://github.com/jb3rndt), [Philipp Keese](https://github.com/phkeese), [Tom Richter](https://github.com/tom-richter), and [Paul Ermler](https://github.com/permler). Group 13 of the 2020 SWT I module included [Rohan Sawahn](https://github.com/rohansaw), [Jonas Schmidt](https://github.com/schmidtjonas), [Frederik Wollny](https://github.com/Freddy200), [Stefan Spangenberg](https://github.com/sspangenberg), [Lukas Laskowski](https://github.com/lasklu), and [Niklas Schilli](https://github.com/Mrnikbobjeff). Feel free to add your names to the list. diff --git a/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/README.md b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/README.md new file mode 100644 index 000000000..4c3cf060e --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/README.md @@ -0,0 +1 @@ +Represents a message where members are added to a group. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/class/newFrom..st b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/class/newFrom..st new file mode 100644 index 000000000..e8aa994bf --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/class/newFrom..st @@ -0,0 +1,6 @@ +instance creation +newFrom: aJsonObject + + ^ self new + members: (aJsonObject at: 'member_user_ids'); + yourself \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/asSnippet.st b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/asSnippet.st new file mode 100644 index 000000000..e60b994b9 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/asSnippet.st @@ -0,0 +1,4 @@ +accessing +asSnippet + + ^ self asText \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/asText.st b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/asText.st new file mode 100644 index 000000000..85b41f484 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/asText.st @@ -0,0 +1,6 @@ +accessing +asText + + | names | + names := self members collect: [:aUserId | (self core userStore getUserFor: aUserId) fullName]. + ^ 'Added: ' , (names joinSeparatedBy: ', ') \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/members..st b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/members..st new file mode 100644 index 000000000..172020968 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/members..st @@ -0,0 +1,4 @@ +accessing +members: aList + + members := aList \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/members.st b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/members.st new file mode 100644 index 000000000..feda34609 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/instance/members.st @@ -0,0 +1,4 @@ +accessing +members + + ^ members \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/methodProperties.json new file mode 100644 index 000000000..abb0c8037 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/methodProperties.json @@ -0,0 +1,8 @@ +{ + "class" : { + "newFrom:" : "LR 7/23/2022 10:06" }, + "instance" : { + "asSnippet" : "rgw 7/21/2022 14:15", + "asText" : "LR 7/23/2022 10:59", + "members" : "rgw 7/21/2022 13:33", + "members:" : "rgw 7/21/2022 13:33" } } diff --git a/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/properties.json b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/properties.json new file mode 100644 index 000000000..8b9a55287 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAddMembersMessage.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "ek 8/4/2022 10:39", + "instvars" : [ + "members" ], + "name" : "TCCAddMembersMessage", + "pools" : [ + ], + "super" : "TCCMessage", + "type" : "normal" } diff --git a/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/checkAuthenticationPassword..st b/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/checkAuthenticationPassword..st new file mode 100644 index 000000000..c609cb685 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/checkAuthenticationPassword..st @@ -0,0 +1,4 @@ +library calls +checkAuthenticationPassword: aString + + self core send: (TCCRequest newCheckAuthenticationPassword: aString). \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/handleEvent..st b/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/handleEvent..st index f0223c4f4..194d65632 100644 --- a/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/handleEvent..st +++ b/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/handleEvent..st @@ -8,4 +8,5 @@ handleEvent: anEvent self isAwaitingDbEncryptionKey ifTrue: [self setDbEncryptionKey: '']. self isAwaitingPhoneNumber ifTrue: [^ #awaitPhoneNumber]. self isAwaitingAuthCode ifTrue: [^ #awaitAuthCode]. + self isAwaitingAuthPassword ifTrue: [^ #awaitAuthPassword]. self isAuthorizationStateReady ifTrue: [^ self core authSucceeded]. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/isAwaitingAuthPassword.st b/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/isAwaitingAuthPassword.st new file mode 100644 index 000000000..0a7308b1f --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/instance/isAwaitingAuthPassword.st @@ -0,0 +1,4 @@ +accessing +isAwaitingAuthPassword + + ^ self authState = 'authorizationStateWaitPassword' \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/methodProperties.json index f4815166c..4242fc448 100644 --- a/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCAuthenticationHandler.class/methodProperties.json @@ -6,13 +6,15 @@ "authState" : "R.S 5/18/2020 17:54", "authState:" : "R.S 5/18/2020 17:54", "checkAuthenticationCode:" : "RS 6/23/2021 16:35", + "checkAuthenticationPassword:" : "ek 8/4/2022 11:15", "core" : "per 5/21/2021 16:57", "core:" : "per 5/21/2021 16:57", - "handleEvent:" : "JB 6/7/2021 11:15", + "handleEvent:" : "ek 8/4/2022 11:15", "initialize" : "RS 4/28/2021 18:04", "isAuthStateClosed" : "r.s 7/15/2020 12:17", "isAuthorizationStateReady" : "r.s 7/15/2020 12:17", "isAwaitingAuthCode" : "r.s 7/15/2020 12:17", + "isAwaitingAuthPassword" : "aka 5/21/2022 10:10", "isAwaitingDbEncryptionKey" : "8/5/2021 21:14:18", "isAwaitingPhoneNumber" : "r.s 7/15/2020 12:17", "isAwaitingTdlibParams" : "8/5/2021 21:14:18", diff --git a/packages/TelegramClient-Core.package/TCCChat.class/class/defaultLastMessageDate.st b/packages/TelegramClient-Core.package/TCCChat.class/class/defaultLastMessageDate.st new file mode 100644 index 000000000..f52262dab --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/class/defaultLastMessageDate.st @@ -0,0 +1,4 @@ +default values +defaultLastMessageDate + + ^ DateAndTime fromUnixTime: 0 \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/class/defaultLastMessageSenderId.st b/packages/TelegramClient-Core.package/TCCChat.class/class/defaultLastMessageSenderId.st new file mode 100644 index 000000000..e720dd848 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/class/defaultLastMessageSenderId.st @@ -0,0 +1,4 @@ +default values +defaultLastMessageSenderId + + ^ 0 \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/class/defaultSelectedReplyToMessageId.st b/packages/TelegramClient-Core.package/TCCChat.class/class/defaultSelectedReplyToMessageId.st new file mode 100644 index 000000000..ee74f778d --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/class/defaultSelectedReplyToMessageId.st @@ -0,0 +1,4 @@ +default values +defaultSelectedReplyToMessageId + + ^ 0 \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/addMessage..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/addMessage..st new file mode 100644 index 000000000..049957361 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/addMessage..st @@ -0,0 +1,7 @@ +adding +addMessage: aMessage + + self messageDictionary at: aMessage id ifAbsent: [ + self messageDictionary at: aMessage id put: Promise new + ]. + (self messageDictionary at: aMessage id) resolveWith: aMessage. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/addNewestMessage..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/addNewestMessage..st index b6a69b722..87a60fb2c 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/addNewestMessage..st +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/addNewestMessage..st @@ -1,5 +1,14 @@ adding addNewestMessage: aMessage - self messages addFirst: aMessage. + | newDate oldDate | + newDate := aMessage date asDate. + oldDate := self lastMessageDate asDate. + (newDate > oldDate) ifTrue: [ + aMessage isFirstMessageOfDay: true. + self lastMessage isLastMessageOfDay: true. + ]. + self messageIds ifEmpty: [aMessage isFirstMessageOfDay: false]. + self messageIds addFirst: aMessage id. + self addMessage: aMessage. self triggerEvent: #newMessage with: aMessage. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/addOldestMessage..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/addOldestMessage..st index be2d44dbb..ff8b631d8 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/addOldestMessage..st +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/addOldestMessage..st @@ -1,5 +1,12 @@ adding addOldestMessage: aMessage - self messages add: aMessage. + | newDate oldDate | + newDate := aMessage date asDate. + oldDate := self oldestLoadedMessageDate asDate. + (newDate < oldDate) ifTrue: [ + self oldestLoadedMessage isFirstMessageOfDay: true. + aMessage isLastMessageOfDay: true]. + self messageIds add: aMessage id. + self addMessage: aMessage. self triggerEvent: #loadedMessage with: aMessage. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/chatHistoryReceived..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/chatHistoryReceived..st index 3e673403d..bc009320a 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/chatHistoryReceived..st +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/chatHistoryReceived..st @@ -2,9 +2,12 @@ loading chatHistoryReceived: anEvent (anEvent at: 'messages') do: - [:message | self addOldestMessage: (TCCMessage newFromMessageEvent: message in: self with: self core)]. + [:message | self addOldestMessage: (TCCMessage newFromMessageEvent: message in: self with: self core). + self fulfillMessageRequest: (message at: 'id'). + ]. + + (self requestedMessages isEmpty) ifFalse: [self increaseNumberOfRequestedMessages.]. self waitingForUpdate: false. - self stillRequestedMessages > 0 - ifTrue: [self loadChatHistory.]. \ No newline at end of file + self stillRequestedMessages > 0 ifTrue: [self loadChatHistory.]. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/fulfillMessageRequest..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/fulfillMessageRequest..st new file mode 100644 index 000000000..bf0c938ef --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/fulfillMessageRequest..st @@ -0,0 +1,9 @@ +loading +fulfillMessageRequest: aMessageId + + | fulfilledMessageRequests | + + fulfilledMessageRequests := self requestedMessages select: [:req | req messageId = aMessageId]. + fulfilledMessageRequests do: [:messageRequest | messageRequest completeRequest.]. + + self requestedMessages removeAll: fulfilledMessageRequests. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/getMessageById..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/getMessageById..st new file mode 100644 index 000000000..db93ba382 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/getMessageById..st @@ -0,0 +1,10 @@ +accessing +getMessageById: aNumber + + ^ (self messageDictionary at: aNumber ifAbsent: [ + self messageDictionary at: aNumber put: Promise new. + self requestMessage: aNumber. + self messageDictionary at: aNumber. + ]) + wait; + value \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/handleMessageRequest..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/handleMessageRequest..st new file mode 100644 index 000000000..cefd0d17d --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/handleMessageRequest..st @@ -0,0 +1,8 @@ +controlling +handleMessageRequest: aMessageRequest + + (self hasMessage: (aMessageRequest messageId)) ifTrue: + [aMessageRequest completeRequest.] + ifFalse: + [self requestedMessages add: aMessageRequest. + self loadChatHistory.]. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/hasMessage..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/hasMessage..st new file mode 100644 index 000000000..a1d11aca4 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/hasMessage..st @@ -0,0 +1,4 @@ +controlling +hasMessage: aMessageId + + ^ (self messageIds occurrencesOf: aMessageId) ~= 0 \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/hasPhoto.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/hasPhoto.st new file mode 100644 index 000000000..e4d77f883 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/hasPhoto.st @@ -0,0 +1,4 @@ +accessing +hasPhoto + + ^ self photoId isNil not \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/increaseNumberOfRequestedMessages.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/increaseNumberOfRequestedMessages.st new file mode 100644 index 000000000..b2745826f --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/increaseNumberOfRequestedMessages.st @@ -0,0 +1,4 @@ +loading +increaseNumberOfRequestedMessages + + self numberOfRequestedMessages: self numberOfRequestedMessages + self class defaultMessageLimit. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/initialize.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/initialize.st index b72472f44..1ef84e635 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/initialize.st +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/initialize.st @@ -3,9 +3,13 @@ initialize self title: ''; - messages: (OrderedCollection new); + messageIds: OrderedCollection new; + messageDictionary: Dictionary new; waitingForUpdate: false; infoLoaded: false; isChannel: false; position: self class defaultUnknownPosition; - numberOfRequestedMessages: self class defaultNumberOfRequestedMessages. \ No newline at end of file + numberOfRequestedMessages: self class defaultNumberOfRequestedMessages; + selectedReplyToMessageId: self class defaultSelectedReplyToMessageId; + requestedMessages: OrderedCollection new; + isPinned: false. diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/initializeFromChatEvent..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/initializeFromChatEvent..st index 7128c754a..3f2676254 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/initializeFromChatEvent..st +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/initializeFromChatEvent..st @@ -6,4 +6,11 @@ initializeFromChatEvent: anEvent id: (anEvent at: 'id'); canSendMessages: ((anEvent at: 'permissions') at: 'can_send_messages'); muted: ((anEvent at: 'notification_settings') at: 'mute_for') > 0; - lastMessage: '' \ No newline at end of file + lastMessageText: ''; + lastMessageSenderName: ''; + lastMessageSenderId: TCCChat defaultLastMessageSenderId; + isPinned: false. + + (anEvent at: 'photo') ifNotNil: [ + self photoId: (((anEvent at: 'photo') at: 'small') at: 'id'). + ]. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/isPinned..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/isPinned..st new file mode 100644 index 000000000..162e04e38 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/isPinned..st @@ -0,0 +1,4 @@ +accessing +isPinned: aBoolean + + isPinned := aBoolean \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/isPinned.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/isPinned.st new file mode 100644 index 000000000..60f167461 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/isPinned.st @@ -0,0 +1,4 @@ +accessing +isPinned + + ^ isPinned \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessage..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessage..st deleted file mode 100644 index a3e36315d..000000000 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessage..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -lastMessage: aString - - lastMessage := aString. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessage.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessage.st index a4328f8e0..e0d5736b2 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessage.st +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessage.st @@ -1,4 +1,7 @@ accessing lastMessage - ^ lastMessage \ No newline at end of file + ^ self messages + ifEmpty: [ TCCNotLoadedMessage new + date: self class defaultLastMessageDate] + ifNotEmpty: [ self messages first ] \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageDate.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageDate.st new file mode 100644 index 000000000..20331d4d7 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageDate.st @@ -0,0 +1,6 @@ +accessing +lastMessageDate + + "Date of the latest received message." + + ^ self lastMessage date \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderId..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderId..st new file mode 100644 index 000000000..86a07f208 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderId..st @@ -0,0 +1,4 @@ +accessing +lastMessageSenderId: aNumber + + lastMessageSenderId := aNumber \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderId.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderId.st new file mode 100644 index 000000000..b91519f11 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderId.st @@ -0,0 +1,4 @@ +accessing +lastMessageSenderId + + ^ lastMessageSenderId \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderName..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderName..st new file mode 100644 index 000000000..1b06e08fe --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderName..st @@ -0,0 +1,4 @@ +accessing +lastMessageSenderName: aString + + lastMessageSenderName := aString. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderName.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderName.st new file mode 100644 index 000000000..753d01223 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageSenderName.st @@ -0,0 +1,4 @@ +accessing +lastMessageSenderName + + ^ lastMessageSenderName \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageText..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageText..st new file mode 100644 index 000000000..47964bcea --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageText..st @@ -0,0 +1,4 @@ +accessing +lastMessageText: aString + + lastMessageText := aString. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageText.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageText.st new file mode 100644 index 000000000..70d568c92 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/lastMessageText.st @@ -0,0 +1,4 @@ +accessing +lastMessageText + + ^ lastMessageText \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/messageDictionary..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/messageDictionary..st new file mode 100644 index 000000000..72d9bac00 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/messageDictionary..st @@ -0,0 +1,4 @@ +accessing +messageDictionary: aDictionary + + messageDictionary := aDictionary \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/messageDictionary.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/messageDictionary.st new file mode 100644 index 000000000..9a815b2f9 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/messageDictionary.st @@ -0,0 +1,4 @@ +accessing +messageDictionary + + ^ messageDictionary \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/messageIds..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/messageIds..st new file mode 100644 index 000000000..35f96ce3e --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/messageIds..st @@ -0,0 +1,4 @@ +accessing +messageIds: aCollection + + messageIds := aCollection \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/messageIds.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/messageIds.st new file mode 100644 index 000000000..224cbeae6 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/messageIds.st @@ -0,0 +1,4 @@ +accessing +messageIds + + ^ messageIds \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/messages..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/messages..st deleted file mode 100644 index f27fee371..000000000 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/messages..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -messages: aCollection - - messages := aCollection. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/messages.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/messages.st index 212d127b2..7d9f16f9f 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/messages.st +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/messages.st @@ -1,4 +1,8 @@ accessing messages - ^ messages \ No newline at end of file + ^ self messageIds collect: [:aNumber | + (self messageDictionary at: aNumber) + wait; + value + ] \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/oldestLoadedMessage.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/oldestLoadedMessage.st new file mode 100644 index 000000000..7ce1bf02e --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/oldestLoadedMessage.st @@ -0,0 +1,7 @@ +accessing +oldestLoadedMessage + + ^ self messages + ifEmpty: [ TCCNotLoadedMessage new + date: self class defaultLastMessageDate] + ifNotEmpty: [ self messages last ] \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/oldestLoadedMessageDate.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/oldestLoadedMessageDate.st new file mode 100644 index 000000000..1f62e024f --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/oldestLoadedMessageDate.st @@ -0,0 +1,4 @@ +accessing +oldestLoadedMessageDate + + ^ self oldestLoadedMessage date \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/photoId..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/photoId..st new file mode 100644 index 000000000..b72591467 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/photoId..st @@ -0,0 +1,4 @@ +accessing +photoId: aNumber + + photoId := aNumber \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/photoId.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/photoId.st new file mode 100644 index 000000000..9b12bed68 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/photoId.st @@ -0,0 +1,4 @@ +accessing +photoId + + ^ photoId \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/requestMessage..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/requestMessage..st new file mode 100644 index 000000000..f0a116ff2 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/requestMessage..st @@ -0,0 +1,4 @@ +loading +requestMessage: aMessageId + + self core send: (TCCRequest newGetMessage: aMessageId from: self id). \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/requestedMessages..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/requestedMessages..st new file mode 100644 index 000000000..006269949 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/requestedMessages..st @@ -0,0 +1,4 @@ +accessing +requestedMessages: aList + + requestedMessages := aList \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/requestedMessages.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/requestedMessages.st new file mode 100644 index 000000000..7b00f2867 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/requestedMessages.st @@ -0,0 +1,4 @@ +accessing +requestedMessages + + ^ requestedMessages \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/selectedReplyToMessageId..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/selectedReplyToMessageId..st new file mode 100644 index 000000000..ce0b916cb --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/selectedReplyToMessageId..st @@ -0,0 +1,8 @@ +accessing +selectedReplyToMessageId: aMessageId + + aMessageId = selectedReplyToMessageId + ifTrue: [selectedReplyToMessageId := self class defaultSelectedReplyToMessageId] + ifFalse: [selectedReplyToMessageId := aMessageId]. + + self triggerEvent: #updateReplyToMessageId. diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/selectedReplyToMessageId.st b/packages/TelegramClient-Core.package/TCCChat.class/instance/selectedReplyToMessageId.st new file mode 100644 index 000000000..25c6b1bf7 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/selectedReplyToMessageId.st @@ -0,0 +1,4 @@ +accessing +selectedReplyToMessageId + + ^ selectedReplyToMessageId \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/instance/sendMessage..st b/packages/TelegramClient-Core.package/TCCChat.class/instance/sendMessage..st index 925036556..d5bc3122c 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/instance/sendMessage..st +++ b/packages/TelegramClient-Core.package/TCCChat.class/instance/sendMessage..st @@ -1,4 +1,5 @@ sending sendMessage: aString - self core send: (TCCRequest newSendMessage: aString to: self id). \ No newline at end of file + self core send: (TCCRequest newSendMessage: aString to: self id asReplyTo: self selectedReplyToMessageId). + self selectedReplyToMessageId: self class defaultSelectedReplyToMessageId. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChat.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCChat.class/methodProperties.json index 0d10275f0..60a6f4af3 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCChat.class/methodProperties.json @@ -1,50 +1,80 @@ { "class" : { + "defaultLastMessageDate" : "aka 7/10/2022 11:25", "defaultLastMessageId" : "JB 8/4/2021 00:10", + "defaultLastMessageSenderId" : "LR 7/14/2022 11:50", "defaultMessageLimit" : "RS 7/17/2021 11:45", "defaultNumberOfRequestedMessages" : "js 8/1/2020 18:52", + "defaultSelectedReplyToMessageId" : "JS 5/20/2022 09:51", "defaultUnknownPosition" : "RS 8/6/2021 10:38", "newFromChatEvent:" : "RS 7/17/2021 17:07" }, "instance" : { - "addNewestMessage:" : "RS 7/31/2021 15:45", - "addOldestMessage:" : "pk 8/4/2021 12:07", + "addMessage:" : "ek 8/5/2022 14:03", + "addNewestMessage:" : "rgw 8/5/2022 11:24", + "addOldestMessage:" : "rgw 8/5/2022 09:23", "canSendMessages" : "5/11/2021 10:09:15", "canSendMessages:" : "JB 8/4/2021 00:08", - "chatHistoryReceived:" : "pk 8/4/2021 12:07", + "chatHistoryReceived:" : "ek 8/4/2022 11:19", "core" : "per 6/4/2021 16:00", "core:" : "per 6/4/2021 15:58", + "fulfillMessageRequest:" : "ek 8/4/2022 11:20", + "getMessageById:" : "rgw 8/5/2022 09:25", + "handleMessageRequest:" : "ek 8/4/2022 11:27", + "hasMessage:" : "ek 8/4/2022 11:51", + "hasPhoto" : "rgw 6/2/2022 15:20", "id" : "rs 6/7/2020 22:20", "id:" : "pk 8/4/2021 11:25", - "ifNotWaitingForUpdate:" : "js 8/2/2020 13:17", + "ifNotWaitingForUpdate:" : "LR 6/15/2022 10:12", + "increaseNumberOfRequestedMessages" : "LR 6/15/2022 10:12", "infoLoaded" : "per 6/4/2021 15:59", "infoLoaded:" : "per 6/4/2021 15:51", - "initialize" : "RS 8/6/2021 10:39", - "initializeFromChatEvent:" : "pk 8/5/2021 15:48", + "initialize" : "js 6/18/2022 10:48", + "initializeFromChatEvent:" : "ek 8/4/2022 11:30", "isBasicGroup" : "per 6/15/2021 08:08", "isChannel" : "per 7/17/2021 15:51", "isChannel:" : "per 7/17/2021 15:50", "isGroup" : "per 6/4/2021 14:42", + "isPinned" : "js 6/18/2022 10:18", + "isPinned:" : "js 6/18/2022 10:19", "isPrivate" : "per 6/4/2021 14:42", "isSuperGroup" : "per 6/15/2021 08:09", - "lastMessage" : "rs 6/19/2020 17:33", - "lastMessage:" : "pk 8/4/2021 10:56", + "lastMessage" : "aka 7/14/2022 14:28", + "lastMessageDate" : "7/22/2022 10:40:18", "lastMessageId" : "JB 8/4/2021 00:10", - "loadChatHistory" : "RS 7/17/2021 11:49", + "lastMessageSenderId" : "LR 7/14/2022 12:16", + "lastMessageSenderId:" : "LR 7/14/2022 15:11", + "lastMessageSenderName" : "LR 7/14/2022 10:33", + "lastMessageSenderName:" : "LR 7/14/2022 10:33", + "lastMessageText" : "LR 7/14/2022 10:24", + "lastMessageText:" : "LR 7/14/2022 10:24", + "loadChatHistory" : "LR 6/12/2022 17:48", "loadInfo" : "per 6/15/2021 09:49", "loadInfoIfNotLoaded" : "TR 6/13/2021 15:54", - "messages" : "R.S 6/1/2020 15:37", - "messages:" : "5/11/2021 10:09:15", + "messageDictionary" : "JS 5/26/2022 14:19", + "messageDictionary:" : "JS 5/26/2022 14:20", + "messageIds" : "JS 5/26/2022 14:20", + "messageIds:" : "JS 5/26/2022 14:20", + "messages" : "rgw 8/5/2022 09:25", "muted" : "per 6/16/2021 17:34", "muted:" : "JB 8/4/2021 00:07", "numberOfMessages" : "RS 7/31/2021 15:19", "numberOfRequestedMessages" : "js 8/1/2020 17:43", - "numberOfRequestedMessages:" : "5/11/2021 10:09:15", + "numberOfRequestedMessages:" : "JS 5/20/2022 11:34", + "oldestLoadedMessage" : "aka 7/14/2022 13:46", + "oldestLoadedMessageDate" : "aka 7/14/2022 13:46", + "photoId" : "rgw 6/2/2022 11:51", + "photoId:" : "rgw 6/2/2022 11:51", "position" : "RS 5/10/2021 21:11", "position:" : "pk 8/6/2021 18:59", "positionKnown" : "pk 8/6/2021 18:25", - "requestMessages:" : "RS 7/31/2021 15:28", - "sendMessage:" : "RS 7/17/2021 11:58", - "stillRequestedMessages" : "js 8/1/2020 18:05", + "requestMessage:" : "JS 5/26/2022 14:48", + "requestMessages:" : "LR 6/15/2022 10:12", + "requestedMessages" : "aka 6/15/2022 11:52", + "requestedMessages:" : "aka 6/15/2022 11:52", + "selectedReplyToMessageId" : "JS 5/20/2022 09:50", + "selectedReplyToMessageId:" : "ek 8/4/2022 11:36", + "sendMessage:" : "JS 5/20/2022 10:06", + "stillRequestedMessages" : "ek 8/4/2022 11:38", "title" : "rs 6/7/2020 22:24", "title:" : "5/11/2021 10:09:15", "waitingForUpdate" : "5/11/2021 10:09:15", diff --git a/packages/TelegramClient-Core.package/TCCChat.class/properties.json b/packages/TelegramClient-Core.package/TCCChat.class/properties.json index e90dfa940..281b0080b 100644 --- a/packages/TelegramClient-Core.package/TCCChat.class/properties.json +++ b/packages/TelegramClient-Core.package/TCCChat.class/properties.json @@ -6,18 +6,25 @@ ], "commentStamp" : "js 6/13/2020 16:25", "instvars" : [ - "messages", "position", "id", "title", - "lastMessage", + "lastMessageText", + "lastMessageSenderName", + "lastMessageSenderId", "waitingForUpdate", "numberOfRequestedMessages", "canSendMessages", "core", "infoLoaded", "muted", - "isChannel" ], + "isChannel", + "messageIds", + "messageDictionary", + "selectedReplyToMessageId", + "requestedMessages", + "photoId", + "isPinned" ], "name" : "TCCChat", "pools" : [ ], diff --git a/packages/TelegramClient-Core.package/TCCChats.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCChats.class/methodProperties.json index 64b64a776..1e95b2c1c 100644 --- a/packages/TelegramClient-Core.package/TCCChats.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCChats.class/methodProperties.json @@ -6,4 +6,4 @@ "add:" : "pk 8/4/2021 11:17", "getChat:" : "pk 8/4/2021 12:20", "hasChat:" : "pk 8/4/2021 12:20", - "notify" : "js 7/31/2020 14:47" } } + "notify" : "js 6/18/2022 10:38" } } diff --git a/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/answeredMessageReceived..st b/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/answeredMessageReceived..st new file mode 100644 index 000000000..687b760c2 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/answeredMessageReceived..st @@ -0,0 +1,8 @@ +events +answeredMessageReceived: aJsonObject + + | chat message | + chat := self chats getChat: (aJsonObject at: 'chat_id'). + message := TCCMessage newFromMessageEvent: aJsonObject in: chat with: self core. + + chat addMessage: message. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/updateChatPosition..st b/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/updateChatPosition..st index 5e925981d..ca7ba64b9 100644 --- a/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/updateChatPosition..st +++ b/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/updateChatPosition..st @@ -2,6 +2,7 @@ event handling updateChatPosition: anEvent (self chats getChat: (anEvent at: 'chat_id')) - position: ((anEvent at: 'position') at: 'order'). + position: ((anEvent at: 'position') at: 'order'); + isPinned: ((anEvent at: 'position') at: 'is_pinned'). self chats notify. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/updateLastMessage..st b/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/updateLastMessage..st index acd0428e9..45f5fba38 100644 --- a/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/updateLastMessage..st +++ b/packages/TelegramClient-Core.package/TCCChatsHandler.class/instance/updateLastMessage..st @@ -1,7 +1,7 @@ event handling updateLastMessage: anEvent - | chat messageJson | + | chat messageJson lastMessage | (anEvent includesKey: 'last_message') ifTrue: [ messageJson := anEvent at: 'last_message'. @@ -13,6 +13,8 @@ updateLastMessage: anEvent detect: [:e | ((e at: 'list') at: '@type') = 'chatListMain']) at: 'order')]. - chat lastMessage: (TCCMessage newFromMessageEvent: messageJson in: chat with: self core) asSnippet. - + lastMessage := (TCCMessage newFromMessageEvent: messageJson in: chat with: self core). + chat lastMessageText: lastMessage asSnippet; + lastMessageSenderName: lastMessage senderName; + lastMessageSenderId: lastMessage userId. self chats notify]. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCChatsHandler.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCChatsHandler.class/methodProperties.json index 4c0d12719..fbba2a9f3 100644 --- a/packages/TelegramClient-Core.package/TCCChatsHandler.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCChatsHandler.class/methodProperties.json @@ -2,8 +2,9 @@ "class" : { }, "instance" : { - "addChat:" : "pk 8/5/2021 16:36", - "addNewMessage:" : "pk 8/5/2021 16:37", + "addChat:" : "js 6/18/2022 09:27", + "addNewMessage:" : "js 7/31/2022 09:28", + "answeredMessageReceived:" : "rgw 8/5/2022 09:22", "chatHistoryReceived:" : "pk 8/5/2021 16:37", "chats" : "RS 8/1/2021 12:50", "chats:" : "RS 8/1/2021 12:51", @@ -14,5 +15,5 @@ "initialize" : "RS 8/1/2021 12:51", "openNewChat:" : "pk 8/5/2021 16:38", "searchChat:" : "pk 8/5/2021 16:38", - "updateChatPosition:" : "RS 8/1/2021 12:55", - "updateLastMessage:" : "RS 8/1/2021 12:55" } } + "updateChatPosition:" : "ek 8/4/2022 11:41", + "updateLastMessage:" : "ek 8/4/2022 11:44" } } diff --git a/packages/TelegramClient-Core.package/TCCCore.class/instance/checkAuthenticationPassword..st b/packages/TelegramClient-Core.package/TCCCore.class/instance/checkAuthenticationPassword..st new file mode 100644 index 000000000..a1c363b3d --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCCore.class/instance/checkAuthenticationPassword..st @@ -0,0 +1,4 @@ +handlers +checkAuthenticationPassword: aString + + self authenticationHandler checkAuthenticationPassword: aString. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCCore.class/instance/handleEvent..st b/packages/TelegramClient-Core.package/TCCCore.class/instance/handleEvent..st index 20cc4cc01..9b4558ade 100644 --- a/packages/TelegramClient-Core.package/TCCCore.class/instance/handleEvent..st +++ b/packages/TelegramClient-Core.package/TCCCore.class/instance/handleEvent..st @@ -13,6 +13,7 @@ handleEvent: anEvent ['messages'] -> [self chatsHandler chatHistoryReceived: anEvent]. ['updateNewMessage'] -> [self handleMessageEvent: anEvent]. ['chat'] -> [self chatsHandler openNewChat: anEvent]. + ['message'] -> [self chatsHandler answeredMessageReceived: anEvent.]. } otherwise: []. update isSymbol ifTrue: [self triggerEvent: update]. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCCore.class/instance/receiveLoop.st b/packages/TelegramClient-Core.package/TCCCore.class/instance/receiveLoop.st index 502ccefc5..2848c5e7f 100644 --- a/packages/TelegramClient-Core.package/TCCCore.class/instance/receiveLoop.st +++ b/packages/TelegramClient-Core.package/TCCCore.class/instance/receiveLoop.st @@ -3,6 +3,5 @@ receiveLoop [self isClientAlive] whileTrue: [ self update. - "FFI freezes the image. Give it time to do something else." - 10 milliSeconds wait. - Processor yield]. + Processor yield + ]. diff --git a/packages/TelegramClient-Core.package/TCCCore.class/instance/tryHandleError..st b/packages/TelegramClient-Core.package/TCCCore.class/instance/tryHandleError..st index de282f443..0e09f6170 100644 --- a/packages/TelegramClient-Core.package/TCCCore.class/instance/tryHandleError..st +++ b/packages/TelegramClient-Core.package/TCCCore.class/instance/tryHandleError..st @@ -5,7 +5,8 @@ tryHandleError: anError ['USERNAME_NOT_OCCUPIED'] -> [UIManager default inform: TCCErrorConstants unknownUsername]. ['USERNAME_INVALID'] -> [UIManager default inform: TCCErrorConstants unknownUsername]. ['PHONE_NUMBER_INVALID'] -> [UIManager default inform: TCCErrorConstants invalidAuthenticationCode]. - ['PHONE_CODE_INVALID'] -> [UIManager default inform: TCCErrorConstants invalidAuthenticationCode]} + ['PHONE_CODE_INVALID'] -> [UIManager default inform: TCCErrorConstants invalidAuthenticationCode]. + ['PASSWORD_HASH_INVALID'] -> [UIManager default inform: TCCErrorConstants invalidAuthenticationPassword]} otherwise: [ ((anError at: 'message') beginsWith: 'Can''t lock file') ifTrue: [UIManager default inform: TCCErrorConstants tdlibAlreadyInUse] diff --git a/packages/TelegramClient-Core.package/TCCCore.class/instance/update.st b/packages/TelegramClient-Core.package/TCCCore.class/instance/update.st index e5a853310..762cc023d 100644 --- a/packages/TelegramClient-Core.package/TCCCore.class/instance/update.st +++ b/packages/TelegramClient-Core.package/TCCCore.class/instance/update.st @@ -4,6 +4,8 @@ update | event | event := self client receive: 0.05. + "Short pause to make image more responsive, see https://github.com/hpi-swa-teaching/TelegramClient/pull/412#issuecomment-868465126" + event ifNil: [5 milliSeconds wait]. event ifNotNil: [ [self handleEvent: (TCCEvent newFromTdlibEvent: event)] fork ]. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCCore.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCCore.class/methodProperties.json index fc74e0297..639c06f96 100644 --- a/packages/TelegramClient-Core.package/TCCCore.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCCore.class/methodProperties.json @@ -11,13 +11,14 @@ "chatsHandler" : "rs 6/7/2020 21:50", "chatsHandler:" : "rs 6/7/2020 21:50", "checkAuthenticationCode:" : "RS 7/31/2021 15:56", + "checkAuthenticationPassword:" : "aka 5/21/2022 11:31", "client" : "R.S 5/20/2020 16:08", "client:" : "pk 8/5/2021 16:39", "freeClient" : "6/9/2021 14:12:18", "generateCallbackId" : "pk 8/5/2021 17:04", "getOwnProfile" : "pk 8/5/2021 17:05", - "handleEvent:" : "RS 7/31/2021 15:57", - "handleMessageEvent:" : "pk 5/28/2021 09:41", + "handleEvent:" : "rgw 7/21/2022 13:13", + "handleMessageEvent:" : "rgw 5/12/2022 13:44", "handlePendingEvent:" : "per 8/2/2021 15:05", "imageStore" : "pk 6/19/2021 17:15", "imageStore:" : "TR 6/22/2021 09:33", @@ -28,14 +29,14 @@ "loggedInUserId:" : "pk 8/5/2021 17:04", "pendingRequests" : "pk 5/13/2021 09:46", "pendingRequests:" : "pk 5/13/2021 09:46", - "receiveLoop" : "per 6/28/2021 16:26", + "receiveLoop" : "rgw 7/24/2022 14:56", "registerCallback:" : "pk 8/5/2021 17:04", "searchChat:" : "pk 8/5/2021 16:39", - "send:" : "RS 6/23/2021 16:12", - "send:thenDo:" : "JB 8/1/2021 11:26", + "send:" : "rgw 6/2/2022 09:43", + "send:thenDo:" : "rgw 6/2/2022 09:46", "sendPhoneNumber:" : "RS 7/31/2021 15:57", "setUserId:" : "pk 8/5/2021 17:05", - "tryHandleError:" : "JB 6/4/2021 17:28", - "update" : "pk 8/5/2021 17:09", + "tryHandleError:" : "aka 5/21/2022 12:07", + "update" : "rgw 7/24/2022 15:08", "userStore" : "per 7/15/2021 12:56", "userStore:" : "tr 7/25/2021 17:57" } } diff --git a/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/README.md b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/README.md new file mode 100644 index 000000000..f6eb718e9 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/README.md @@ -0,0 +1 @@ +Represents a message where a member is removed from a group. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/class/newFrom..st b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/class/newFrom..st new file mode 100644 index 000000000..7fc15afb7 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/class/newFrom..st @@ -0,0 +1,6 @@ +instance creation +newFrom: aJsonObject + + ^ self new + member: (aJsonObject at: 'user_id'); + yourself \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/asSnippet.st b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/asSnippet.st new file mode 100644 index 000000000..e60b994b9 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/asSnippet.st @@ -0,0 +1,4 @@ +accessing +asSnippet + + ^ self asText \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/asText.st b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/asText.st new file mode 100644 index 000000000..170679d35 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/asText.st @@ -0,0 +1,6 @@ +accessing +asText + + | name | + name := (self core userStore getUserFor: self member) fullName. + ^ 'Removed: ' , name \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/member..st b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/member..st new file mode 100644 index 000000000..0cbe13d58 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/member..st @@ -0,0 +1,4 @@ +accessing +member: aUserId + + member := aUserId \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/member.st b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/member.st new file mode 100644 index 000000000..7c71440a8 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/instance/member.st @@ -0,0 +1,4 @@ +accessing +member + + ^ member \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/methodProperties.json new file mode 100644 index 000000000..149dba1d5 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/methodProperties.json @@ -0,0 +1,8 @@ +{ + "class" : { + "newFrom:" : "LR 7/23/2022 10:41" }, + "instance" : { + "asSnippet" : "LR 7/23/2022 10:43", + "asText" : "LR 7/23/2022 10:45", + "member" : "LR 7/23/2022 10:56", + "member:" : "LR 7/23/2022 10:57" } } diff --git a/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/properties.json b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/properties.json new file mode 100644 index 000000000..d81262c5a --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCDeleteMemberMessage.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "ek 8/4/2022 11:57", + "instvars" : [ + "member" ], + "name" : "TCCDeleteMemberMessage", + "pools" : [ + ], + "super" : "TCCMessage", + "type" : "normal" } diff --git a/packages/TelegramClient-Core.package/TCCErrorConstants.class/class/invalidAuthenticationPassword.st b/packages/TelegramClient-Core.package/TCCErrorConstants.class/class/invalidAuthenticationPassword.st new file mode 100644 index 000000000..3a67ea797 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCErrorConstants.class/class/invalidAuthenticationPassword.st @@ -0,0 +1,4 @@ +messages +invalidAuthenticationPassword + + ^ 'The password you entered seems to be invalid.' \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCErrorConstants.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCErrorConstants.class/methodProperties.json index 9effac684..0d8d2322f 100644 --- a/packages/TelegramClient-Core.package/TCCErrorConstants.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCErrorConstants.class/methodProperties.json @@ -1,6 +1,7 @@ { "class" : { "invalidAuthenticationCode" : "r.s 7/31/2020 14:48", + "invalidAuthenticationPassword" : "aka 5/21/2022 12:06", "invalidPhoneNumber" : "r.s 7/31/2020 14:48", "tdlibAlreadyInUse" : "r.s 7/31/2020 14:48", "unknownUsername" : "r.s 7/31/2020 14:48" }, diff --git a/packages/TelegramClient-Core.package/TCCFFIClient.class/class/fileName.st b/packages/TelegramClient-Core.package/TCCFFIClient.class/class/libraryFilePath.st similarity index 71% rename from packages/TelegramClient-Core.package/TCCFFIClient.class/class/fileName.st rename to packages/TelegramClient-Core.package/TCCFFIClient.class/class/libraryFilePath.st index 1eb3ed312..3d85125de 100644 --- a/packages/TelegramClient-Core.package/TCCFFIClient.class/class/fileName.st +++ b/packages/TelegramClient-Core.package/TCCFFIClient.class/class/libraryFilePath.st @@ -1,4 +1,4 @@ accessing -fileName +libraryFilePath ^ self subclassResponsibility \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCFFIClient.class/class/moduleName.st b/packages/TelegramClient-Core.package/TCCFFIClient.class/class/moduleName.st index d0a700b1d..55e34d069 100644 --- a/packages/TelegramClient-Core.package/TCCFFIClient.class/class/moduleName.st +++ b/packages/TelegramClient-Core.package/TCCFFIClient.class/class/moduleName.st @@ -3,7 +3,7 @@ moduleName | filePath | - filePath := FileDirectory default / self fileName. + filePath := self libraryFilePath. filePath exists ifFalse: [ FileStream fileNamed: filePath fullName do: [:stream | diff --git a/packages/TelegramClient-Core.package/TCCFFIClient.class/class/tdlibVersion.st b/packages/TelegramClient-Core.package/TCCFFIClient.class/class/tdlibVersion.st new file mode 100644 index 000000000..456a29b08 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCFFIClient.class/class/tdlibVersion.st @@ -0,0 +1,4 @@ +accessing +tdlibVersion + + ^ '1.8.0' \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCFFIClient.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCFFIClient.class/methodProperties.json index c2aeb075d..69a1436b9 100644 --- a/packages/TelegramClient-Core.package/TCCFFIClient.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCFFIClient.class/methodProperties.json @@ -1,9 +1,10 @@ { "class" : { "downloadUrl" : "r.s 7/13/2020 17:05", - "fileName" : "r.s 7/13/2020 17:05", - "moduleName" : "pk 8/5/2021 21:31", - "newForCurrentOs" : "pk 8/5/2021 17:09" }, + "libraryFilePath" : "rgw 7/16/2022 17:57", + "moduleName" : "rgw 7/16/2022 17:58", + "newForCurrentOs" : "pk 8/5/2021 17:09", + "tdlibVersion" : "rgw 7/16/2022 17:36" }, "instance" : { "create" : "js 6/13/2020 12:53", "free:" : "js 6/13/2020 18:33", diff --git a/packages/TelegramClient-Core.package/TCCGroupChat.class/instance/addMembersFrom..st b/packages/TelegramClient-Core.package/TCCGroupChat.class/instance/addMembersFrom..st index d7374a902..3d992f7d0 100644 --- a/packages/TelegramClient-Core.package/TCCGroupChat.class/instance/addMembersFrom..st +++ b/packages/TelegramClient-Core.package/TCCGroupChat.class/instance/addMembersFrom..st @@ -2,5 +2,5 @@ initialization addMembersFrom: aCollection [aCollection do: [:aMember | - self members add: (self core userStore getUserFor: (aMember at: 'user_id')). + self members add: (self core userStore getUserFor: ((aMember at: 'member_id') at: 'user_id')). ]] fork. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCGroupChat.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCGroupChat.class/methodProperties.json index 017dd29db..578bbf8ca 100644 --- a/packages/TelegramClient-Core.package/TCCGroupChat.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCGroupChat.class/methodProperties.json @@ -2,7 +2,7 @@ "class" : { }, "instance" : { - "addMembersFrom:" : "pk 8/5/2021 16:36", + "addMembersFrom:" : "rgw 6/2/2022 09:56", "canLoadMoreMembers" : "per 6/15/2021 08:37", "description" : "RS 5/29/2021 18:44", "description:" : "RS 5/29/2021 18:44", diff --git a/packages/TelegramClient-Core.package/TCCImageStore.class/instance/getFormFor..st b/packages/TelegramClient-Core.package/TCCImageStore.class/instance/getFormFor..st index 858bbbfaa..3d7e274f6 100644 --- a/packages/TelegramClient-Core.package/TCCImageStore.class/instance/getFormFor..st +++ b/packages/TelegramClient-Core.package/TCCImageStore.class/instance/getFormFor..st @@ -2,9 +2,6 @@ accessing getFormFor: anImageId | promise | - promise := self at: anImageId ifAbsent: - [self at: anImageId put: Promise new. - self requestImageFor: anImageId with: (self at: anImageId). - self at: anImageId]. + promise := self getFormPromiseFor: anImageId. promise wait. - ^ self class imageFormFrom: promise value \ No newline at end of file + ^ promise value \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCImageStore.class/instance/getFormPromiseFor..st b/packages/TelegramClient-Core.package/TCCImageStore.class/instance/getFormPromiseFor..st new file mode 100644 index 000000000..930320622 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCImageStore.class/instance/getFormPromiseFor..st @@ -0,0 +1,10 @@ +accessing +getFormPromiseFor: anImageId + + | promise | + promise := self at: anImageId ifAbsent: [ + self at: anImageId put: Promise new. + self requestImageFor: anImageId with: (self at: anImageId). + self at: anImageId + ]. + ^ promise >>= [:aPath | self class imageFormFrom: aPath] \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCImageStore.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCImageStore.class/methodProperties.json index d77535c99..ae00ea616 100644 --- a/packages/TelegramClient-Core.package/TCCImageStore.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCImageStore.class/methodProperties.json @@ -6,5 +6,6 @@ "instance" : { "core" : "pk 6/19/2021 16:13", "core:" : "pk 6/19/2021 16:13", - "getFormFor:" : "pk 6/19/2021 17:25", - "requestImageFor:with:" : "JB 8/1/2021 11:35" } } + "getFormFor:" : "rgw 6/6/2022 18:51", + "getFormPromiseFor:" : "rgw 6/6/2022 18:43", + "requestImageFor:with:" : "rgw 6/2/2022 11:17" } } diff --git a/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/downloadUrl.st b/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/downloadUrl.st index d0b4e09af..6141083ae 100644 --- a/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/downloadUrl.st +++ b/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/downloadUrl.st @@ -1,4 +1,4 @@ accessing downloadUrl - ^ 'https://github.com/hpi-swa-teaching/tdlib/releases/download/v1.7.0/libtdjson.so.1.7.0' \ No newline at end of file + ^ 'https://github.com/hpi-swa-teaching/tdlib/releases/download/v' , self tdlibVersion , '/libtdjson.so.' , self tdlibVersion diff --git a/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/fileName.st b/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/fileName.st deleted file mode 100644 index d1344c057..000000000 --- a/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/fileName.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -fileName - - ^ 'libtdjson.so.1.7.0' \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/libraryFilePath.st b/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/libraryFilePath.st new file mode 100644 index 000000000..ff81efae0 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCLinuxClient.class/class/libraryFilePath.st @@ -0,0 +1,4 @@ +accessing +libraryFilePath + + ^ FileDirectory default / ('libtdjson.so.' , self tdlibVersion) \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCLinuxClient.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCLinuxClient.class/methodProperties.json index 7b5d13401..c2d28fa9d 100644 --- a/packages/TelegramClient-Core.package/TCCLinuxClient.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCLinuxClient.class/methodProperties.json @@ -1,6 +1,6 @@ { "class" : { - "downloadUrl" : "tr 8/5/2021 09:13", - "fileName" : "RS 4/28/2021 18:54" }, + "downloadUrl" : "rgw 7/16/2022 17:40", + "libraryFilePath" : "rgw 7/16/2022 17:57" }, "instance" : { "type" : "r.s 7/13/2020 17:31" } } diff --git a/packages/TelegramClient-Core.package/TCCMacClient.class/class/downloadUrl.st b/packages/TelegramClient-Core.package/TCCMacClient.class/class/downloadUrl.st index 2a7589262..f8e0df7c4 100644 --- a/packages/TelegramClient-Core.package/TCCMacClient.class/class/downloadUrl.st +++ b/packages/TelegramClient-Core.package/TCCMacClient.class/class/downloadUrl.st @@ -1,4 +1,4 @@ accessing downloadUrl - ^ 'https://github.com/hpi-swa-teaching/tdlib/releases/download/v1.7.0/libtdjson.1.7.0.dylib' \ No newline at end of file + ^ 'https://github.com/hpi-swa-teaching/tdlib/releases/download/v' , self tdlibVersion , '/libtdjson.' , self tdlibVersion , '.dylib' diff --git a/packages/TelegramClient-Core.package/TCCMacClient.class/class/fileName.st b/packages/TelegramClient-Core.package/TCCMacClient.class/class/fileName.st deleted file mode 100644 index 9969329ba..000000000 --- a/packages/TelegramClient-Core.package/TCCMacClient.class/class/fileName.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -fileName - - ^ 'libtdjson.1.7.0.dylib' \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMacClient.class/class/libraryFilePath.st b/packages/TelegramClient-Core.package/TCCMacClient.class/class/libraryFilePath.st new file mode 100644 index 000000000..e3411153d --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMacClient.class/class/libraryFilePath.st @@ -0,0 +1,4 @@ +accessing +libraryFilePath + + ^ FileDirectory default / ('libtdjson.' , self tdlibVersion , '.dylib') \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMacClient.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCMacClient.class/methodProperties.json index c0d59cc2d..219535617 100644 --- a/packages/TelegramClient-Core.package/TCCMacClient.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCMacClient.class/methodProperties.json @@ -1,6 +1,6 @@ { "class" : { - "downloadUrl" : "tr 8/5/2021 09:13", - "fileName" : "RS 4/28/2021 18:07" }, + "downloadUrl" : "rgw 7/16/2022 17:41", + "libraryFilePath" : "rgw 7/16/2022 17:57" }, "instance" : { "type" : "r.s 7/13/2020 17:31" } } diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/README.md b/packages/TelegramClient-Core.package/TCCMessage.class/README.md index c8335a71c..7601e3781 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/README.md +++ b/packages/TelegramClient-Core.package/TCCMessage.class/README.md @@ -1 +1 @@ -super-dataclass for messages of all types \ No newline at end of file +super-dataclass for messages that can be created by users \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/class/maxReplySnippetSize.st b/packages/TelegramClient-Core.package/TCCMessage.class/class/maxReplySnippetSize.st new file mode 100644 index 000000000..f5c9a41e5 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/class/maxReplySnippetSize.st @@ -0,0 +1,4 @@ +constants +maxReplySnippetSize + + ^ 25 \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/class/newFromMessageEvent.in.with..st b/packages/TelegramClient-Core.package/TCCMessage.class/class/newFromMessageEvent.in.with..st index bd708c226..3a9cda10a 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/class/newFromMessageEvent.in.with..st +++ b/packages/TelegramClient-Core.package/TCCMessage.class/class/newFromMessageEvent.in.with..st @@ -7,14 +7,15 @@ newFromMessageEvent: anEvent in: aChat with: aCore message chat: aChat; - senderType: ((anEvent at: 'sender') at: '@type') asSymbol; + senderType: ((anEvent at: 'sender_id') at: '@type') asSymbol; id: (anEvent at: 'id'); isOutgoing: (anEvent at: 'is_outgoing'); date: (self timeStampToDateAndTime: (anEvent at: 'date')); + replyToMessageId: (anEvent at: 'reply_to_message_id'); core: aCore. (message senderType = #messageSenderUser) ifTrue:[ - message userId: ((anEvent at: 'sender') at: 'user_id'). + message userId: ((anEvent at: 'sender_id') at: 'user_id'). ]. ^ message diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/class/newMessageWith..st b/packages/TelegramClient-Core.package/TCCMessage.class/class/newMessageWith..st index 34627f9de..a03d3b669 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/class/newMessageWith..st +++ b/packages/TelegramClient-Core.package/TCCMessage.class/class/newMessageWith..st @@ -1,7 +1,9 @@ -instance creation +json conversion newMessageWith: aJsonObject ^ (aJsonObject at: '@type') caseOf: { ['messageText'] -> [TCCTextMessage newFrom: aJsonObject]. ['messagePhoto'] -> [TCCPhotoMessage newFrom: aJsonObject]. + ['messageChatAddMembers'] -> [TCCAddMembersMessage newFrom: aJsonObject]. + ['messageChatDeleteMember'] -> [TCCDeleteMemberMessage newFrom: aJsonObject]. } otherwise: [TCCNotSupportedMessage new] \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/asReplySnippet.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/asReplySnippet.st new file mode 100644 index 000000000..2025a23e0 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/asReplySnippet.st @@ -0,0 +1,7 @@ +accessing +asReplySnippet + + | snippet | + snippet := self asSnippet. + snippet size > self class maxReplySnippetSize ifTrue: [snippet := (snippet copyFrom: 1 to: self class maxReplySnippetSize) , '...']. + ^ self senderName , String cr , snippet \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/asSnippet.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/asSnippet.st index d3b99c7a9..be38186c7 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/instance/asSnippet.st +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/asSnippet.st @@ -1,4 +1,4 @@ accessing asSnippet - self subclassResponsibility. \ No newline at end of file + ^ self subclassResponsibility \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/asText.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/asText.st index 4fe4a46fa..ba33ce652 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/instance/asText.st +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/asText.st @@ -1,4 +1,4 @@ accessing asText - self subclassResponsibility. \ No newline at end of file + ^ self subclassResponsibility \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/chat..st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/chat..st index 3f6d8c03a..de02cfb96 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/instance/chat..st +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/chat..st @@ -1,4 +1,4 @@ accessing chat: aChat - chat := aChat. \ No newline at end of file + chat := aChat \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/id..st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/id..st index 7a9230e8c..3f4f338bd 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/instance/id..st +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/id..st @@ -1,4 +1,4 @@ accessing id: aNumber - id := aNumber. \ No newline at end of file + id := aNumber \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/initialize.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/initialize.st new file mode 100644 index 000000000..ba2de6d9d --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/initialize.st @@ -0,0 +1,8 @@ +initialization +initialize + + super initialize. + + self + isFirstMessageOfDay: false; + isLastMessageOfDay: false. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/isFirstMessageOfDay..st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isFirstMessageOfDay..st new file mode 100644 index 000000000..963c77af4 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isFirstMessageOfDay..st @@ -0,0 +1,4 @@ +accessing +isFirstMessageOfDay: aBoolean + + isFirstMessageOfDay := aBoolean \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/isFirstMessageOfDay.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isFirstMessageOfDay.st new file mode 100644 index 000000000..ea0e5f018 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isFirstMessageOfDay.st @@ -0,0 +1,4 @@ +accessing +isFirstMessageOfDay + + ^ isFirstMessageOfDay \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/isLastMessageOfDay..st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isLastMessageOfDay..st new file mode 100644 index 000000000..c89726fa5 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isLastMessageOfDay..st @@ -0,0 +1,4 @@ +accessing +isLastMessageOfDay: aBoolean + + isLastMessageOfDay := aBoolean \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/isLastMessageOfDay.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isLastMessageOfDay.st new file mode 100644 index 000000000..7fd58d558 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isLastMessageOfDay.st @@ -0,0 +1,4 @@ +accessing +isLastMessageOfDay + + ^ isLastMessageOfDay \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/isReply.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isReply.st new file mode 100644 index 000000000..c0857dad7 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/isReply.st @@ -0,0 +1,4 @@ +accessing +isReply + + ^ self replyToMessageId ~= 0 \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/replyText.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/replyText.st new file mode 100644 index 000000000..2c60f4861 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/replyText.st @@ -0,0 +1,7 @@ +accessing +replyText + + | message | + message := self chat getMessageById: self replyToMessageId. + + ^ message asReplySnippet \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/replyToMessageId..st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/replyToMessageId..st new file mode 100644 index 000000000..2ecd11b11 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/replyToMessageId..st @@ -0,0 +1,4 @@ +accessing +replyToMessageId: aNumber + + replyToMessageId := aNumber \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/replyToMessageId.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/replyToMessageId.st new file mode 100644 index 000000000..e498914a6 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/replyToMessageId.st @@ -0,0 +1,4 @@ +accessing +replyToMessageId + + ^ replyToMessageId \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/senderName.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/senderName.st index d013dfb69..2441a69c0 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/instance/senderName.st +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/senderName.st @@ -3,5 +3,5 @@ senderName ^ (self senderType) caseOf: { [#messageSenderChat] -> [self chat title]. - [#messageSenderUser] -> [(self core userStore getUserFor: self userId) fullName]. + [#messageSenderUser] -> [self senderUser fullName]. } otherwise: ['Unsupported sender type'] \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/instance/senderUser.st b/packages/TelegramClient-Core.package/TCCMessage.class/instance/senderUser.st new file mode 100644 index 000000000..deb195605 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessage.class/instance/senderUser.st @@ -0,0 +1,4 @@ +accessing +senderUser + + ^ self core userStore getUserFor: self userId \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCMessage.class/methodProperties.json index a423081c6..d89b42bcc 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCMessage.class/methodProperties.json @@ -1,25 +1,37 @@ { "class" : { - "newFromMessageEvent:in:with:" : "pk 8/5/2021 16:52", - "newMessageWith:" : "pk 8/5/2021 16:53", + "maxReplySnippetSize" : "rgw 5/12/2022 16:05", + "newFromMessageEvent:in:with:" : "rgw 6/2/2022 09:01", + "newMessageWith:" : "js 7/31/2022 09:28", "timeStampToDateAndTime:" : "JB 5/16/2021 09:42" }, "instance" : { - "asSnippet" : "tom.richter 6/28/2021 15:05", - "asText" : "TR 6/20/2021 10:13", - "chat" : "pk 5/7/2021 12:06", - "chat:" : "pk 8/4/2021 11:40", - "chatId" : "pk 8/5/2021 17:06", - "core" : "pk 6/8/2021 09:24", - "core:" : "pk 6/8/2021 09:25", - "date" : "RK 5/7/2021 10:02", - "date:" : "pk 8/4/2021 11:40", - "id" : "js 8/1/2020 18:20", - "id:" : "pk 8/4/2021 11:41", + "asReplySnippet" : "rgw 5/12/2022 16:05", + "asSnippet" : "rgw 7/21/2022 15:11", + "asText" : "rgw 7/21/2022 15:11", + "chat" : "js 7/31/2022 09:23", + "chat:" : "js 7/31/2022 09:23", + "chatId" : "js 7/31/2022 09:27", + "core" : "js 7/31/2022 09:25", + "core:" : "js 7/31/2022 09:25", + "date" : "js 7/31/2022 09:24", + "date:" : "js 7/31/2022 09:25", + "id" : "js 7/31/2022 09:24", + "id:" : "js 7/31/2022 09:24", + "initialize" : "ek 8/4/2022 12:11", + "isFirstMessageOfDay" : "js 7/31/2022 09:26", + "isFirstMessageOfDay:" : "js 7/31/2022 09:26", + "isLastMessageOfDay" : "js 7/31/2022 09:26", + "isLastMessageOfDay:" : "js 7/31/2022 09:26", "isOutgoing" : "js 8/2/2020 22:00", "isOutgoing:" : "pk 8/4/2021 11:42", - "senderName" : "tr 7/25/2021 18:00", + "isReply" : "rgw 5/12/2022 15:40", + "replyText" : "LR 6/5/2022 11:12", + "replyToMessageId" : "rgw 5/12/2022 13:43", + "replyToMessageId:" : "rgw 5/12/2022 13:43", + "senderName" : "JS 6/11/2022 09:50", "senderType" : "tom.richter 7/25/2021 10:42", "senderType:" : "pk 8/4/2021 11:42", + "senderUser" : "JS 6/11/2022 09:49", "shouldNotify" : "per 6/16/2021 17:35", "userId" : "tom.richter 7/25/2021 11:17", "userId:" : "pk 8/4/2021 11:42" } } diff --git a/packages/TelegramClient-Core.package/TCCMessage.class/properties.json b/packages/TelegramClient-Core.package/TCCMessage.class/properties.json index 4e385dbb3..bba545924 100644 --- a/packages/TelegramClient-Core.package/TCCMessage.class/properties.json +++ b/packages/TelegramClient-Core.package/TCCMessage.class/properties.json @@ -4,15 +4,18 @@ ], "classvars" : [ ], - "commentStamp" : "RK 6/26/2021 11:36", + "commentStamp" : "js 7/18/2022 07:50", "instvars" : [ "chat", "id", - "isOutgoing", "date", "core", + "isFirstMessageOfDay", + "isLastMessageOfDay", + "isOutgoing", "senderType", - "userId" ], + "userId", + "replyToMessageId" ], "name" : "TCCMessage", "pools" : [ ], diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/README.md b/packages/TelegramClient-Core.package/TCCMessageRequest.class/README.md new file mode 100644 index 000000000..b6ce64fdc --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/README.md @@ -0,0 +1 @@ +Class with the id of a requested message. If request is completed, execute the completionMessage on the completionReceiver. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completeRequest.st b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completeRequest.st new file mode 100644 index 000000000..68a8cd26a --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completeRequest.st @@ -0,0 +1,4 @@ +utility +completeRequest + + self completionReceiver perform: (self completionMessage) with: (self messageId). \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionMessage..st b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionMessage..st new file mode 100644 index 000000000..6898aa679 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionMessage..st @@ -0,0 +1,4 @@ +accessing +completionMessage: aMessage + + completionMessage := aMessage \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionMessage.st b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionMessage.st new file mode 100644 index 000000000..d45cab402 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionMessage.st @@ -0,0 +1,4 @@ +accessing +completionMessage + + ^ completionMessage \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionReceiver..st b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionReceiver..st new file mode 100644 index 000000000..7f5b3ed52 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionReceiver..st @@ -0,0 +1,4 @@ +accessing +completionReceiver: aReceiver + + completionReceiver := aReceiver \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionReceiver.st b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionReceiver.st new file mode 100644 index 000000000..925e31385 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/completionReceiver.st @@ -0,0 +1,4 @@ +accessing +completionReceiver + + ^ completionReceiver \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/messageId..st b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/messageId..st new file mode 100644 index 000000000..9c8eeef2b --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/messageId..st @@ -0,0 +1,4 @@ +accessing +messageId: aNumber + + messageId := aNumber \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/messageId.st b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/messageId.st new file mode 100644 index 000000000..ebe1f169a --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/instance/messageId.st @@ -0,0 +1,4 @@ +accessing +messageId + + ^ messageId \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCMessageRequest.class/methodProperties.json new file mode 100644 index 000000000..d007c2552 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/methodProperties.json @@ -0,0 +1,11 @@ +{ + "class" : { + }, + "instance" : { + "completeRequest" : "ek 8/4/2022 12:16", + "completionMessage" : "aka 6/15/2022 11:45", + "completionMessage:" : "aka 6/15/2022 11:45", + "completionReceiver" : "aka 6/15/2022 11:46", + "completionReceiver:" : "aka 6/15/2022 11:46", + "messageId" : "aka 6/15/2022 11:47", + "messageId:" : "aka 6/15/2022 11:47" } } diff --git a/packages/TelegramClient-Core.package/TCCMessageRequest.class/properties.json b/packages/TelegramClient-Core.package/TCCMessageRequest.class/properties.json new file mode 100644 index 000000000..c53c87c7e --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCMessageRequest.class/properties.json @@ -0,0 +1,16 @@ +{ + "category" : "TelegramClient-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "aka 6/15/2022 12:07", + "instvars" : [ + "messageId", + "completionReceiver", + "completionMessage" ], + "name" : "TCCMessageRequest", + "pools" : [ + ], + "super" : "Object", + "type" : "normal" } diff --git a/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/README.md b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/README.md new file mode 100644 index 000000000..842a3e954 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/README.md @@ -0,0 +1 @@ +Message that is not loaded, but used in some way, e.g. for a reply diff --git a/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/class/infoText.st b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/class/infoText.st new file mode 100644 index 000000000..af89b8933 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/class/infoText.st @@ -0,0 +1,4 @@ +accessing +infoText + + ^ 'Message not loaded' , String cr \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/instance/asReplySnippet.st b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/instance/asReplySnippet.st new file mode 100644 index 000000000..c2f2fb86e --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/instance/asReplySnippet.st @@ -0,0 +1,4 @@ +accessing +asReplySnippet + + ^ self class infoText \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/methodProperties.json new file mode 100644 index 000000000..ce5db7861 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + "infoText" : "JS 5/27/2022 11:19" }, + "instance" : { + "asReplySnippet" : "rgw 5/12/2022 15:34" } } diff --git a/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/properties.json b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/properties.json new file mode 100644 index 000000000..bcae2eb35 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCNotLoadedMessage.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-Core", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "", + "instvars" : [ + ], + "name" : "TCCNotLoadedMessage", + "pools" : [ + ], + "super" : "TCCMessage", + "type" : "normal" } diff --git a/packages/TelegramClient-Core.package/TCCRequest.class/class/newCheckAuthenticationPassword..st b/packages/TelegramClient-Core.package/TCCRequest.class/class/newCheckAuthenticationPassword..st new file mode 100644 index 000000000..9cd69c278 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCRequest.class/class/newCheckAuthenticationPassword..st @@ -0,0 +1,6 @@ +instance creation +newCheckAuthenticationPassword: aString + + ^ TCCRequest + newWithType: 'checkAuthenticationPassword' + from: {'password' -> aString} \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCRequest.class/class/newGetMessage.from..st b/packages/TelegramClient-Core.package/TCCRequest.class/class/newGetMessage.from..st new file mode 100644 index 000000000..1105f975f --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCRequest.class/class/newGetMessage.from..st @@ -0,0 +1,7 @@ +instance creation +newGetMessage: aMessageId from: aChatId + + ^ TCCRequest + newWithType: 'getMessage' + from: {'chat_id' -> aChatId. + 'message_id' -> aMessageId} \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCRequest.class/class/newSendMessage.to.asReplyTo..st b/packages/TelegramClient-Core.package/TCCRequest.class/class/newSendMessage.to.asReplyTo..st new file mode 100644 index 000000000..085918311 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCRequest.class/class/newSendMessage.to.asReplyTo..st @@ -0,0 +1,16 @@ +instance creation +newSendMessage: aString to: aChatId asReplyTo: aMessageId + + ^ TCCRequest + newWithType: 'sendMessage' + from: { + 'chat_id' -> aChatId. + 'reply_to_message_id' -> aMessageId. + 'input_message_content' -> (Dictionary newFrom: { + '@type' -> 'inputMessageText'. + 'text' -> (Dictionary newFrom: { + '@type' -> 'formattedText'. + 'text' -> aString asString squeakToUtf8 + }) + }) + } \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCRequest.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCRequest.class/methodProperties.json index ef7fd1e41..acc2b3217 100644 --- a/packages/TelegramClient-Core.package/TCCRequest.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCRequest.class/methodProperties.json @@ -1,17 +1,20 @@ { "class" : { "newCheckAuthenticationCode:" : "RS 6/23/2021 16:35", + "newCheckAuthenticationPassword:" : "aka 5/21/2022 10:34", "newCheckDatabaseEncryptionKey:" : "RS 6/23/2021 16:35", "newGetBasicGroupFullInfoOf:" : "JB 8/1/2021 18:17", "newGetChatHistoryOf:from:until:" : "RS 6/24/2021 09:20", "newGetChats" : "RS 6/23/2021 16:37", "newGetMe" : "JB 8/1/2021 11:34", + "newGetMessage:from:" : "JS 5/26/2022 14:45", "newGetSuperGroupFullInfoOf:" : "JB 8/1/2021 11:32", "newGetSuperGroupMembersOf:with:until:" : "JB 8/1/2021 11:31", "newLogOut" : "RS 6/23/2021 16:33", "newRequestFile:" : "JB 8/1/2021 11:35", "newSearchChatFrom:" : "RS 6/23/2021 16:38", "newSendMessage:to:" : "RS 6/23/2021 16:41", + "newSendMessage:to:asReplyTo:" : "JS 5/20/2022 10:02", "newSendPhoneNumber:" : "RS 6/23/2021 16:34", "newUser:" : "JB 8/1/2021 11:55", "newWithType:from:" : "rs 6/6/2020 16:21" }, diff --git a/packages/TelegramClient-Core.package/TCCTdlibClient.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCTdlibClient.class/methodProperties.json index 2de3837ae..154288731 100644 --- a/packages/TelegramClient-Core.package/TCCTdlibClient.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCTdlibClient.class/methodProperties.json @@ -2,10 +2,10 @@ "class" : { "defaultLogLevel" : "js 8/2/2020 12:21", "newForCurrentOs" : "pk 8/5/2021 17:10", - "newWithClient:" : "js 8/7/2020 22:19" }, + "newWithClient:" : "LR 7/14/2022 10:59" }, "instance" : { "execute:" : "js 5/28/2020 17:23", - "free" : "JB 6/7/2021 11:21", + "free" : "LR 7/14/2022 11:18", "handle" : "R.S 5/16/2020 10:39", "handle:" : "R.S 5/18/2020 18:20", "isAlive" : "JB 6/7/2021 11:19", diff --git a/packages/TelegramClient-Core.package/TCCTextMessage.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCTextMessage.class/methodProperties.json index 6fc79a4be..f92db12e4 100644 --- a/packages/TelegramClient-Core.package/TCCTextMessage.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCTextMessage.class/methodProperties.json @@ -3,6 +3,6 @@ "newFrom:" : "pk 8/5/2021 16:53" }, "instance" : { "asSnippet" : "RK 6/26/2021 11:37", - "asText" : "TR 6/20/2021 10:18", + "asText" : "rgw 5/12/2022 14:28", "text" : "TR 6/20/2021 10:17", "text:" : "pk 8/4/2021 11:47" } } diff --git a/packages/TelegramClient-Core.package/TCCUser.class/class/newFrom..st b/packages/TelegramClient-Core.package/TCCUser.class/class/newFrom..st index 830a098c5..8885c7718 100644 --- a/packages/TelegramClient-Core.package/TCCUser.class/class/newFrom..st +++ b/packages/TelegramClient-Core.package/TCCUser.class/class/newFrom..st @@ -1,8 +1,13 @@ instance creation newFrom: anEvent - ^ self new + | user | + user := self new id: (anEvent at: 'id'); firstName: (anEvent at: 'first_name'); lastName: (anEvent at: 'last_name'); - username: (anEvent at: 'username') \ No newline at end of file + username: (anEvent at: 'username'). + + anEvent at: 'profile_photo' ifPresent: [:profilePhoto | user photoId: ((profilePhoto at: 'small') at: 'id')] ifAbsent: []. + + ^ user \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCUser.class/instance/hasPhoto.st b/packages/TelegramClient-Core.package/TCCUser.class/instance/hasPhoto.st new file mode 100644 index 000000000..e4d77f883 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCUser.class/instance/hasPhoto.st @@ -0,0 +1,4 @@ +accessing +hasPhoto + + ^ self photoId isNil not \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCUser.class/instance/photoId..st b/packages/TelegramClient-Core.package/TCCUser.class/instance/photoId..st new file mode 100644 index 000000000..b72591467 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCUser.class/instance/photoId..st @@ -0,0 +1,4 @@ +accessing +photoId: aNumber + + photoId := aNumber \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCUser.class/instance/photoId.st b/packages/TelegramClient-Core.package/TCCUser.class/instance/photoId.st new file mode 100644 index 000000000..9b12bed68 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCUser.class/instance/photoId.st @@ -0,0 +1,4 @@ +accessing +photoId + + ^ photoId \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCUser.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCUser.class/methodProperties.json index 8489f7a2a..676995355 100644 --- a/packages/TelegramClient-Core.package/TCCUser.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCUser.class/methodProperties.json @@ -1,16 +1,19 @@ { "class" : { - "newFrom:" : "pk 8/5/2021 16:59" }, + "newFrom:" : "JS 6/11/2022 10:19" }, "instance" : { "=" : "pk 6/13/2021 12:52", "firstName" : "per 5/15/2021 12:03", "firstName:" : "pk 8/4/2021 11:57", "fullName" : "JB 6/13/2021 10:28", + "hasPhoto" : "JS 6/11/2022 09:32", "hash" : "JB 6/13/2021 14:01", "id" : "pk 5/9/2021 16:33", "id:" : "pk 8/4/2021 11:56", "initialize" : "JB 6/13/2021 10:52", "lastName" : "per 5/15/2021 12:03", "lastName:" : "pk 8/4/2021 11:58", + "photoId" : "JS 6/11/2022 09:26", + "photoId:" : "JS 6/11/2022 09:26", "username" : "pk 5/9/2021 16:33", "username:" : "pk 8/4/2021 12:04" } } diff --git a/packages/TelegramClient-Core.package/TCCUser.class/properties.json b/packages/TelegramClient-Core.package/TCCUser.class/properties.json index 79f1c5711..60a63317d 100644 --- a/packages/TelegramClient-Core.package/TCCUser.class/properties.json +++ b/packages/TelegramClient-Core.package/TCCUser.class/properties.json @@ -9,7 +9,8 @@ "id", "username", "firstName", - "lastName" ], + "lastName", + "photoId" ], "name" : "TCCUser", "pools" : [ ], diff --git a/packages/TelegramClient-Core.package/TCCUserStore.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCUserStore.class/methodProperties.json index 88e602168..e675789bd 100644 --- a/packages/TelegramClient-Core.package/TCCUserStore.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCUserStore.class/methodProperties.json @@ -5,4 +5,4 @@ "core" : "RK 5/19/2021 10:34", "core:" : "TR 6/15/2021 16:52", "getUserFor:" : "pk 6/19/2021 17:48", - "requestUserFor:with:" : "JB 8/1/2021 11:55" } } + "requestUserFor:with:" : "rgw 6/2/2022 09:47" } } diff --git a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/directoryName.st b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/directoryName.st new file mode 100644 index 000000000..af918e8d8 --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/directoryName.st @@ -0,0 +1,4 @@ +accessing +directoryName + + ^ 'tdlib' , self tdlibVersion \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/downloadArchive.st b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/downloadArchive.st index 041b68ddb..02931ef32 100644 --- a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/downloadArchive.st +++ b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/downloadArchive.st @@ -3,6 +3,7 @@ downloadArchive | intermediatePath archive response | intermediatePath := FileDirectory default / 'archive.zip'. + intermediatePath exists ifTrue: [intermediatePath delete]. FileStream fileNamed: intermediatePath fullName do: [:stream | response := WebClient httpGet: self downloadUrl. stream @@ -10,6 +11,6 @@ downloadArchive nextPutAll: response content. intermediatePath := FileDirectory default / 'archive.zip'.]. archive := ZipArchive new readFrom: intermediatePath fullName. - archive extractAllTo: FileDirectory default. + archive extractAllTo: FileDirectory default / self directoryName. archive close. intermediatePath delete. \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/downloadUrl.st b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/downloadUrl.st index 6a8ff8d55..7c208dfdf 100644 --- a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/downloadUrl.st +++ b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/downloadUrl.st @@ -1,4 +1,4 @@ accessing downloadUrl - ^ 'https://github.com/hpi-swa-teaching/tdlib/releases/download/v1.7.0/tdlib-1.7.0.zip' \ No newline at end of file + ^ 'https://github.com/hpi-swa-teaching/tdlib/releases/download/v' , self tdlibVersion , '/tdlib-' , self tdlibVersion , '.zip' diff --git a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/fileName.st b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/fileName.st deleted file mode 100644 index 1c5948334..000000000 --- a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/fileName.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -fileName - - ^ 'tdjson.dll' \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/libraryFilePath.st b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/libraryFilePath.st new file mode 100644 index 000000000..1a8bb85ed --- /dev/null +++ b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/libraryFilePath.st @@ -0,0 +1,4 @@ +accessing +libraryFilePath + + ^ FileDirectory default / self directoryName / 'tdjson.dll' \ No newline at end of file diff --git a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/moduleName.st b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/moduleName.st index ab9cd79bd..c77b4b768 100644 --- a/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/moduleName.st +++ b/packages/TelegramClient-Core.package/TCCWindowsClient.class/class/moduleName.st @@ -3,7 +3,7 @@ moduleName | filePath | - filePath := FileDirectory default / self fileName. + filePath := self libraryFilePath. filePath exists ifFalse: [self downloadArchive]. diff --git a/packages/TelegramClient-Core.package/TCCWindowsClient.class/methodProperties.json b/packages/TelegramClient-Core.package/TCCWindowsClient.class/methodProperties.json index 194639a38..71d280f14 100644 --- a/packages/TelegramClient-Core.package/TCCWindowsClient.class/methodProperties.json +++ b/packages/TelegramClient-Core.package/TCCWindowsClient.class/methodProperties.json @@ -1,8 +1,9 @@ { "class" : { - "downloadArchive" : "pk 8/6/2021 15:28", - "downloadUrl" : "pk 8/6/2021 15:16", - "fileName" : "f.w. 7/15/2020 22:04", + "directoryName" : "rgw 7/16/2022 18:27", + "downloadArchive" : "rgw 7/16/2022 18:26", + "downloadUrl" : "rgw 7/16/2022 18:27", + "libraryFilePath" : "7/16/2022 18:23:35", "moduleName" : "js 8/2/2020 13:21" }, "instance" : { "type" : "r.s 7/13/2020 17:31" } } diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonBack..st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonBack..st deleted file mode 100644 index c1a24e0e1..000000000 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonBack..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -buttonBack: aButton - - buttonBack := aButton. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonBack.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonBack.st deleted file mode 100644 index e8f208f02..000000000 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonBack.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -buttonBack - - ^ buttonBack \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonBackPressed.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonBackPressed.st deleted file mode 100644 index f758b7fa9..000000000 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonBackPressed.st +++ /dev/null @@ -1,4 +0,0 @@ -event handling -buttonBackPressed - - self showFirstStep. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonCancel..st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonCancel..st new file mode 100644 index 000000000..9e8c4c65b --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonCancel..st @@ -0,0 +1,4 @@ +accessing +buttonCancel: aButton + + buttonCancel := aButton. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonCancel.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonCancel.st new file mode 100644 index 000000000..49747f4e0 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonCancel.st @@ -0,0 +1,4 @@ +accessing +buttonCancel + + ^ buttonCancel \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonCancelPressed.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonCancelPressed.st new file mode 100644 index 000000000..ede129748 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonCancelPressed.st @@ -0,0 +1,5 @@ +event handling +buttonCancelPressed + + self showPhoneNumberStep. + self buttonCancel makeLighter. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonNextPressed.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonNextPressed.st index c7bc23ae2..1995b2848 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonNextPressed.st +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonNextPressed.st @@ -1,4 +1,5 @@ core communication buttonNextPressed - self core sendPhoneNumber: self inputField text. \ No newline at end of file + self core sendPhoneNumber: self inputField text. + self buttonNext makeLighter. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerify..st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerify..st deleted file mode 100644 index d2a8b27a0..000000000 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerify..st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -buttonVerify: aButton - - buttonVerify := aButton. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerify.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerify.st deleted file mode 100644 index c86d1653f..000000000 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerify.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -buttonVerify - - ^ buttonVerify \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthCode..st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthCode..st new file mode 100644 index 000000000..6c7bc8663 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthCode..st @@ -0,0 +1,4 @@ +accessing +buttonVerifyAuthCode: aButton + + buttonVerifyAuthCode := aButton \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthCode.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthCode.st new file mode 100644 index 000000000..a73dd0491 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthCode.st @@ -0,0 +1,4 @@ +accessing +buttonVerifyAuthCode + + ^ buttonVerifyAuthCode \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyPressed.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthCodePressed.st similarity index 72% rename from packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyPressed.st rename to packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthCodePressed.st index 52fa54431..b8849a5d5 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyPressed.st +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthCodePressed.st @@ -1,4 +1,4 @@ event handling -buttonVerifyPressed +buttonVerifyAuthCodePressed self core checkAuthenticationCode: self inputField text. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthPassword..st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthPassword..st new file mode 100644 index 000000000..b7d23e2a8 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthPassword..st @@ -0,0 +1,4 @@ +accessing +buttonVerifyAuthPassword: aButton + + buttonVerifyAuthPassword := aButton \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthPassword.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthPassword.st new file mode 100644 index 000000000..b87dce035 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthPassword.st @@ -0,0 +1,4 @@ +accessing +buttonVerifyAuthPassword + + ^ buttonVerifyAuthPassword \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthPasswordPressed.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthPasswordPressed.st new file mode 100644 index 000000000..b3e67ca04 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/buttonVerifyAuthPasswordPressed.st @@ -0,0 +1,4 @@ +event handling +buttonVerifyAuthPasswordPressed + + self core checkAuthenticationPassword: self passwordField text. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonBack.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonBack.st deleted file mode 100644 index 38eb63361..000000000 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonBack.st +++ /dev/null @@ -1,11 +0,0 @@ -initialization -createButtonBack - - self - buttonBack: (TCUButton new - text: 'Back'; - center: self inputField center + ((-100) @ 50); - hide; - on: #mouseDown send: #buttonBackPressed to: self; - yourself); - addMorph: self buttonBack. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonCancel.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonCancel.st new file mode 100644 index 000000000..2d930bb57 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonCancel.st @@ -0,0 +1,11 @@ +initialization +createButtonCancel + + self + buttonCancel: (TCUButton new + text: 'Cancel'; + center: self inputField center + ((-100) @ 50); + hide; + on: #mouseUp send: #buttonCancelPressed to: self; + yourself); + addMorph: self buttonCancel. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonNext.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonNext.st index 74d4254b6..dc5c1bc8f 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonNext.st +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonNext.st @@ -6,6 +6,6 @@ createButtonNext text: 'Next'; center: self inputField center + (100 @ 50); hide; - on: #mouseDown send: #buttonNextPressed to: self; + on: #mouseUp send: #buttonNextPressed to: self; yourself); addMorph: self buttonNext. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonVerify.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonVerify.st deleted file mode 100644 index bcc59c1a6..000000000 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonVerify.st +++ /dev/null @@ -1,11 +0,0 @@ -initialization -createButtonVerify - - self - buttonVerify: (TCUButton new - text: 'Verify'; - center: self inputField center + (70 @ 50); - on: #mouseDown send: #buttonVerifyPressed to: self; - hide; - yourself); - addMorph: self buttonVerify. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonVerifyAuthCode.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonVerifyAuthCode.st new file mode 100644 index 000000000..6a15787f1 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonVerifyAuthCode.st @@ -0,0 +1,11 @@ +initialization +createButtonVerifyAuthCode + + self + buttonVerifyAuthCode: (TCUButton new + text: 'Verify'; + center: self inputField center + (70 @ 50); + on: #mouseUp send: #buttonVerifyAuthCodePressed to: self; + hide; + yourself); + addMorph: self buttonVerifyAuthCode. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonVerifyAuthPassword.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonVerifyAuthPassword.st new file mode 100644 index 000000000..a776c0b98 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createButtonVerifyAuthPassword.st @@ -0,0 +1,11 @@ +initialization +createButtonVerifyAuthPassword + + self + buttonVerifyAuthPassword: (TCUButton new + text: 'Verify'; + center: self inputField center + (70 @ 50); + on: #mouseUp send: #buttonVerifyAuthPasswordPressed to: self; + hide; + yourself); + addMorph: self buttonVerifyAuthPassword. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createInputField..st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createInputField.st similarity index 80% rename from packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createInputField..st rename to packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createInputField.st index a00a1f2a3..34a1c2983 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createInputField..st +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createInputField.st @@ -1,9 +1,9 @@ initialization -createInputField: aString +createInputField self inputField: (TextMorph new - contentsWrapped: aString asText; + contentsWrapped: ''; extent: self class defaultInputWidth @ 50; borderColor: TCUDefaultValues colorGray; borderWidth: 1; diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createPasswordField.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createPasswordField.st new file mode 100644 index 000000000..96fa9d479 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/createPasswordField.st @@ -0,0 +1,13 @@ +initialization +createPasswordField + + self + passwordField: (TextMorph new + contentsWrapped: ''; + extent: self class defaultInputWidth @ 50; + borderColor: TCUDefaultValues colorGray; + borderWidth: 1; + center: self instructionLabel center + (0 @ 30); + hide; + yourself); + addMorph: self passwordField. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/initializeMorphs.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/initializeMorphs.st index b106cc7bf..36a44c3c7 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/initializeMorphs.st +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/initializeMorphs.st @@ -2,8 +2,10 @@ initialization initializeMorphs self - createInputField: '+49'; + createInputField; createButtonNext; createErrorLabel: ''; - createButtonBack; - createButtonVerify. \ No newline at end of file + createButtonCancel; + createButtonVerifyAuthCode; + createButtonVerifyAuthPassword; + createPasswordField. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/passwordField..st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/passwordField..st new file mode 100644 index 000000000..e908f117a --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/passwordField..st @@ -0,0 +1,4 @@ +accessing +passwordField: aTextMorph + + passwordField := aTextMorph \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/passwordField.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/passwordField.st new file mode 100644 index 000000000..b665b1757 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/passwordField.st @@ -0,0 +1,4 @@ +accessing +passwordField + + ^ passwordField \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showSecondStep.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showAuthCodeStep.st similarity index 59% rename from packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showSecondStep.st rename to packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showAuthCodeStep.st index aaf95f186..bf680ef02 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showSecondStep.st +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showAuthCodeStep.st @@ -1,9 +1,9 @@ drawing -showSecondStep +showAuthCodeStep self buttonNext hide. - self buttonBack show. - self buttonVerify show. + self buttonCancel show. + self buttonVerifyAuthCode show. self instructionLabel contents: 'Enter the code your received on your phone'; @@ -11,5 +11,6 @@ showSecondStep self inputField contents: ''; - crAction: [self buttonVerifyPressed]. + show; + crAction: [self buttonVerifyAuthCodePressed]. self errorLabel hide. diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showAuthPasswordStep.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showAuthPasswordStep.st new file mode 100644 index 000000000..cb2f63348 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showAuthPasswordStep.st @@ -0,0 +1,17 @@ +drawing +showAuthPasswordStep + + self buttonVerifyAuthCode hide. + self buttonCancel show. + self buttonVerifyAuthPassword show. + self inputField hide. + + self instructionLabel + contents: 'Enter your password'; + center: self center. + + self passwordField + contents: ''; + show; + crAction: [self buttonVerifyAuthPasswordPressed]. + self errorLabel hide. diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showFirstStep.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showPhoneNumberStep.st similarity index 57% rename from packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showFirstStep.st rename to packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showPhoneNumberStep.st index 1f10c7966..34cd11ffd 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showFirstStep.st +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/showPhoneNumberStep.st @@ -1,13 +1,18 @@ drawing -showFirstStep - +showPhoneNumberStep + + self passwordField hide. + self buttonVerifyAuthPassword hide. + self buttonVerifyAuthCode hide. + self buttonCancel hide. + self instructionLabel contents: 'Enter your telephone number: ' asText; center: self center. - self buttonVerify hide. self inputField show; + contents: '+49'; crAction: [self buttonNextPressed]. self buttonNext show. self instructionLabel show. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/subscribeCore.st b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/subscribeCore.st index 26b13a30a..bcf873cbb 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/subscribeCore.st +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/instance/subscribeCore.st @@ -2,6 +2,7 @@ core communication subscribeCore self core - when: #awaitPhoneNumber send: #showFirstStep to: self; - when: #awaitAuthCode send: #showSecondStep to: self; + when: #awaitPhoneNumber send: #showPhoneNumberStep to: self; + when: #awaitAuthCode send: #showAuthCodeStep to: self; + when: #awaitAuthPassword send: #showAuthPasswordStep to: self; when: #authReady send: #logInCompleted to: self. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/methodProperties.json index 715372b2b..93393a522 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/methodProperties.json @@ -7,35 +7,43 @@ "instance" : { "addHeader" : "RK 8/4/2021 12:02", "addTitle:to:" : "RK 8/4/2021 12:03", - "buttonBack" : "rs 6/11/2020 18:53", - "buttonBack:" : "RK 8/4/2021 10:39", - "buttonBackPressed" : "rs 6/11/2020 19:00", + "buttonCancel" : "aka 5/21/2022 10:39", + "buttonCancel:" : "aka 5/21/2022 10:22", + "buttonCancelPressed" : "ek 6/19/2022 20:08", "buttonNext" : "R.S 5/20/2020 13:50", "buttonNext:" : "RK 8/4/2021 10:39", - "buttonNextPressed" : "js 6/13/2020 18:12", - "buttonVerify" : "R.S 5/20/2020 13:50", - "buttonVerify:" : "RK 8/4/2021 10:39", - "buttonVerifyPressed" : "js 5/31/2020 20:10", + "buttonNextPressed" : "ek 6/19/2022 20:06", + "buttonVerifyAuthCode" : "aka 5/21/2022 10:27", + "buttonVerifyAuthCode:" : "ek 8/4/2022 12:26", + "buttonVerifyAuthCodePressed" : "ek 6/22/2022 17:54", + "buttonVerifyAuthPassword" : "aka 5/21/2022 10:31", + "buttonVerifyAuthPassword:" : "aka 5/21/2022 10:31", + "buttonVerifyAuthPasswordPressed" : "ek 6/22/2022 17:54", "core" : "js 6/13/2020 18:43", "core:" : "R.S 5/31/2020 20:18", - "createButtonBack" : "RK 8/4/2021 12:03", - "createButtonNext" : "RK 8/4/2021 12:03", - "createButtonVerify" : "RK 8/4/2021 12:03", + "createButtonCancel" : "ek 6/19/2022 20:06", + "createButtonNext" : "ek 6/19/2022 20:07", + "createButtonVerifyAuthCode" : "ek 6/19/2022 20:07", + "createButtonVerifyAuthPassword" : "ek 6/19/2022 20:07", "createErrorLabel:" : "RK 8/4/2021 12:04", - "createInputField:" : "RK 8/4/2021 12:04", + "createInputField" : "aka 5/21/2022 13:14", "createLabel:" : "RK 8/4/2021 12:04", + "createPasswordField" : "aka 5/21/2022 11:36", "delete" : "RS 7/17/2021 12:38", "deleteMorph" : "RS 7/17/2021 12:20", "errorLabel" : "R.S 5/20/2020 13:51", "errorLabel:" : "RK 8/4/2021 10:17", "initialize" : "JB 6/11/2021 18:36", - "initializeMorphs" : "js 5/29/2020 20:11", + "initializeMorphs" : "aka 5/21/2022 11:38", "inputField" : "R.S 5/20/2020 13:51", "inputField:" : "RK 8/4/2021 10:18", "instructionLabel" : "R.S 5/20/2020 13:52", "instructionLabel:" : "RK 8/4/2021 10:20", "logInCompleted" : "RS 7/17/2021 12:31", - "showFirstStep" : "js 7/31/2020 15:19", + "passwordField" : "aka 5/21/2022 13:09", + "passwordField:" : "aka 5/21/2022 13:10", + "showAuthCodeStep" : "ek 8/4/2022 13:44", + "showAuthPasswordStep" : "aka 5/21/2022 11:27", "showLoadingMessage" : "js 6/13/2020 18:45", - "showSecondStep" : "JB 6/7/2021 12:10", - "subscribeCore" : "R.S 5/31/2020 20:21" } } + "showPhoneNumberStep" : "aka 5/21/2022 11:38", + "subscribeCore" : "aka 5/21/2022 10:16" } } diff --git a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/properties.json b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/properties.json index 871580725..ba25d7db2 100644 --- a/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/properties.json +++ b/packages/TelegramClient-UI.package/TCUAuthenticationWindow.class/properties.json @@ -7,12 +7,14 @@ "commentStamp" : "js 6/13/2020 18:59", "instvars" : [ "buttonNext", - "buttonVerify", "errorLabel", "inputField", "instructionLabel", "core", - "buttonBack" ], + "buttonCancel", + "buttonVerifyAuthCode", + "buttonVerifyAuthPassword", + "passwordField" ], "name" : "TCUAuthenticationWindow", "pools" : [ ], diff --git a/packages/TelegramClient-UI.package/TCUButton.class/class/hoverStateConstant.st b/packages/TelegramClient-UI.package/TCUButton.class/class/hoverStateConstant.st new file mode 100644 index 000000000..58fe4052f --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUButton.class/class/hoverStateConstant.st @@ -0,0 +1,4 @@ +constants +hoverStateConstant + + ^ 0.8 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUButton.class/instance/handlesMouseOver..st b/packages/TelegramClient-UI.package/TCUButton.class/instance/handlesMouseOver..st new file mode 100644 index 000000000..62a3a425e --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUButton.class/instance/handlesMouseOver..st @@ -0,0 +1,4 @@ +event handling +handlesMouseOver: anEvent + + ^ true \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUButton.class/instance/makeDarker.st b/packages/TelegramClient-UI.package/TCUButton.class/instance/makeDarker.st new file mode 100644 index 000000000..bc45a7d60 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUButton.class/instance/makeDarker.st @@ -0,0 +1,7 @@ +drawing +makeDarker + + | normalColor c| + normalColor := self color. + c := self class hoverStateConstant. + self color: (Color r: (normalColor red * c) g: (normalColor green * c) b: (normalColor blue * c)). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUButton.class/instance/makeLighter.st b/packages/TelegramClient-UI.package/TCUButton.class/instance/makeLighter.st new file mode 100644 index 000000000..4b59c5ed2 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUButton.class/instance/makeLighter.st @@ -0,0 +1,7 @@ +drawing +makeLighter + + | normalColor c | + normalColor := self color. + c := self class hoverStateConstant. + self color: (Color r: (normalColor red * (1/c)) g: (normalColor green * (1/c)) b: (normalColor blue * (1/c))). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUButton.class/instance/mouseDown..st b/packages/TelegramClient-UI.package/TCUButton.class/instance/mouseDown..st new file mode 100644 index 000000000..9842a1492 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUButton.class/instance/mouseDown..st @@ -0,0 +1,4 @@ +event handling +mouseDown: anEvent + + self makeDarker. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUButton.class/instance/mouseEnter..st b/packages/TelegramClient-UI.package/TCUButton.class/instance/mouseEnter..st new file mode 100644 index 000000000..dba5dccbd --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUButton.class/instance/mouseEnter..st @@ -0,0 +1,4 @@ +event handling +mouseEnter: anEvent + + self makeDarker. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUButton.class/instance/mouseLeave..st b/packages/TelegramClient-UI.package/TCUButton.class/instance/mouseLeave..st new file mode 100644 index 000000000..de94786a8 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUButton.class/instance/mouseLeave..st @@ -0,0 +1,4 @@ +event handling +mouseLeave: anEvent + + self makeLighter. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUButton.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUButton.class/methodProperties.json index 4c9a9846e..536677f76 100644 --- a/packages/TelegramClient-UI.package/TCUButton.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUButton.class/methodProperties.json @@ -1,7 +1,13 @@ { "class" : { - }, + "hoverStateConstant" : "ek 6/19/2022 19:23" }, "instance" : { + "handlesMouseOver:" : "ek 6/19/2022 18:47", "initialize" : "per 6/15/2021 09:07", + "makeDarker" : "ek 6/19/2022 18:47", + "makeLighter" : "ek 6/19/2022 18:47", + "mouseDown:" : "ek 6/19/2022 18:48", + "mouseEnter:" : "ek 6/19/2022 18:48", + "mouseLeave:" : "ek 6/19/2022 18:48", "text" : "R.S 5/20/2020 13:56", "text:" : "RK 8/4/2021 12:05" } } diff --git a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/addBackButton.st b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/addBackButton.st index 74a6def1c..8efd41cd8 100644 --- a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/addBackButton.st +++ b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/addBackButton.st @@ -1,13 +1,11 @@ drawing addBackButton - | backButton | - - backButton := TCUButton new + self backButton: (TCUButton new text: 'Back'; - on: #mouseDown send: #buttonBackPressed to: self; + on: #mouseUp send: #buttonCancelPressed to: self; name: 'infoBackButton'; - yourself. + yourself). - self infoBar addMorph: backButton. - backButton position: (self infoBar left + self class defaultSpacing) @ (self infoBar top + self class defaultSpacing). \ No newline at end of file + self infoBar addMorph: self backButton. + self backButton position: (self infoBar left + self class defaultSpacing) @ (self infoBar top + self class defaultSpacing). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/backButton..st b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/backButton..st new file mode 100644 index 000000000..a3a9c140b --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/backButton..st @@ -0,0 +1,4 @@ +accessing +backButton: aTelegramButton + + backButton := aTelegramButton \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/backButton.st b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/backButton.st new file mode 100644 index 000000000..c3a7dfd24 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/backButton.st @@ -0,0 +1,4 @@ +accessing +backButton + + ^ backButton \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/buttonBackPressed.st b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/buttonBackPressed.st deleted file mode 100644 index 0589e072b..000000000 --- a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/buttonBackPressed.st +++ /dev/null @@ -1,4 +0,0 @@ -drawing -buttonBackPressed - - self hide \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/buttonCancelPressed.st b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/buttonCancelPressed.st new file mode 100644 index 000000000..b17d7dd69 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/instance/buttonCancelPressed.st @@ -0,0 +1,5 @@ +drawing +buttonCancelPressed + + self backButton makeLighter. + self hide \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/methodProperties.json index 7df9a7c8e..5edfb90d7 100644 --- a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/methodProperties.json @@ -7,14 +7,16 @@ "defaultSpacing" : "RS 5/20/2021 20:57", "newFor:withBounds:" : "RK 8/4/2021 10:45" }, "instance" : { - "addBackButton" : "JB 6/11/2021 15:31", + "addBackButton" : "ek 6/19/2022 19:13", "addContent" : "tom.richter 7/17/2021 16:52", "addDescription" : "RS 5/29/2021 18:00", "addDescriptionText" : "RK 8/4/2021 12:05", "addInfoBar" : "RS 5/20/2021 21:28", "addInfoText" : "RK 8/4/2021 12:05", "addUserList" : "per 6/15/2021 08:59", - "buttonBackPressed" : "RS 5/20/2021 19:48", + "backButton" : "ek 6/19/2022 18:52", + "backButton:" : "ek 6/19/2022 18:52", + "buttonCancelPressed" : "ek 6/19/2022 19:06", "chat" : "RS 5/29/2021 18:46", "chat:" : "RS 5/29/2021 18:46", "contentWrapper" : "RS 5/29/2021 18:46", diff --git a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/properties.json b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/properties.json index dc44bb8ea..9a82e1f79 100644 --- a/packages/TelegramClient-UI.package/TCUChatInfoPage.class/properties.json +++ b/packages/TelegramClient-UI.package/TCUChatInfoPage.class/properties.json @@ -10,7 +10,8 @@ "contentWrapper", "description", "chat", - "userList" ], + "userList", + "backButton" ], "name" : "TCUChatInfoPage", "pools" : [ ], diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultImageWidth.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultImageWidth.st new file mode 100644 index 000000000..625abcb82 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultImageWidth.st @@ -0,0 +1,4 @@ +default values +defaultImageWidth + + ^ self defaultHeight \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultLastMessageOffset.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultLastMessageOffset.st index 333fe18ab..d80f5bb69 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultLastMessageOffset.st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultLastMessageOffset.st @@ -1,4 +1,4 @@ default values defaultLastMessageOffset - ^ 20 @ -12 + ^ (15 @ -17) + (self defaultPhotoSize @ 0) diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultMessagePreviewLength.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultMessagePreviewLength.st index 7f3c574f3..87f9f24b4 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultMessagePreviewLength.st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultMessagePreviewLength.st @@ -1,4 +1,4 @@ default values defaultMessagePreviewLength - ^ 37 \ No newline at end of file + ^ 30 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultPhoto.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultPhoto.st new file mode 100644 index 000000000..51f3570cc --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultPhoto.st @@ -0,0 +1,40 @@ +as yet unclassified +defaultPhoto + "@linter-ignore" + "This is an auto-generated method" + ^ (Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: 'iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAABhGlDQ1BJQ0MgcHJvZmlsZQAA +KJF9kT1Iw0AcxV/TakWqDlYQcchQnSyIijhqFYpQIdQKrTqYXPoFTRqSFBdHwbXg4Mdi1cHF +WVcHV0EQ/ABxdHJSdJES/5cWWsR4cNyPd/ced+8AoVZimhUYBzTdNpPxmJjOrIrBV3RCQC8G +EJCZZcxJUgKe4+sePr7eRXmW97k/R4+atRjgE4lnmWHaxBvE05u2wXmfOMwKskp8Tjxm0gWJ +H7muNPiNc95lgWeGzVRynjhMLObbWGljVjA14iniiKrplC+kG6xy3uKslSqseU/+wlBWX1nm +Os1hxLGIJUgQoaCCIkqwEaVVJ8VCkvZjHv4h1y+RSyFXEYwcCyhDg+z6wf/gd7dWbnKikRSK +AR0vjvMxAgR3gXrVcb6PHad+AvifgSu95S/XgJlP0qstLXIE9G0DF9ctTdkDLneAwSdDNmVX +8tMUcjng/Yy+KQP03wLda43emvs4fQBS1FXiBjg4BEbzlL3u8e6u9t7+PdPs7wfkr3JuGFSY +bAAAAAZiS0dEADMA/wAAoVpNxAAAAAlwSFlzAAAN1wAADdcBQiibeAAAAAd0SU1FB+YGAg4V +IsHL5e4AAAVwSURBVHja7ZxXVxtJEIVvT1CYUY5gQGCMOcf7/3/LrtcWIJAsZIWRNEETpJ7e +BxuHJViBngBzX3hBoPlU3bequlqk179lSLS1hARBAjABmABMACZKACYAE4AJwESbS4rqG/N9 +H9T3wXwGURQgimIC8CnZto2ZrkM3TNi2A2+5/H2pCAKy6TQUVUGpUECxkIcghL+ASJi1MGMM +2nSGwWgEy1ps9FpRFFGrVLDfbCCVkl8fQMM00en2YNvObps4IWg2GjjYb4YSkYEDZIyh+6WP +wXD0rH83k07j7PQESjb7cl2YUoqP7YtnhwcAjuvi738/Yzqbv0yAlFJ8/HwBwzC5Onf7qoPJ +dPqyADLG8PmyA2uxCOR/XXZuMDeMlwPwutuDHtAD3UFsX3bgul78Ac7mcwzHk8DdkVKKy841 +GGPxBej7Pq67vdByNMOyMNa0+AIcDEdwvWWolUKvPwClfvwA+r7PJV3ZVMvlEmNtEj+Ak+kU +q9UqEnX2YDiOIUBtFpmOieu6G9faoQJcUQrDNBElaZwqFC4ATdPknj5s07yID0BrgajJWiy4 +fKhcADquGzmAjDF4nhcPgK7nIYpy4gKQrmgkAfocEmqB13KJJEA/JgAJIZEEyKPlzwVgVI8g +BTEmAMM8JXtK6VQqHgAzmUzk4BFC4gMwpyiRA6goCpe9mQvAfE6NnJEUcmp8SjlJkpDj9Ia3 +VblUjA9AAKiVy5Eyj5yqxgtgtVKGJEUjnWk26vxSI55Ja7NeDx2eJEmoVyvxAwgAe40GZDnc +nPBgf49rYs8VoCgKOD48CA1eTlXRqFX5Vje8H6JSLqHGcQk9VU6enrS4p1OBjHactI64ueBj +VcfpSQuZdJp/fR1IEU8I3r97i2wAs3uEEJy0DlEuFgP5sAIbb5MlCR/ev+MaiYQQnB63UK9W +A4v2QAcsJUnCh/Mz1Dls7OlUCn+dn6FaCTaBD21Geq4b6HR7cHc8gCKEoFGr4vDNfih9yNCn +9McTDYPhCLaz2bC5IAiolkvY32sGYhaRBPirLMvCdK7DMEwsHAeU0nuRlkqlkFMVFAsFlIuF +SHS+I3PRRlVVqL8YzGpFQekKPmMQRRGyJEXyrCVUgIwxuJ4H1/WwXC7hekusVkv4jMGnPhgY +GGMghEAURBACyLKMlCx/+5mSkc1kQgUbKEDHdaEbJizLwsK2YdsO/B2PQAkhyKTTULJZqIqC +fD4HJRscVK57IGMMc93AdDbHXNfv3X/jFhWiiHw+h0qphBLnvZILQMuyMBxr0Gaze2YQtARC +UCwWUK9WUSzknz0ynw0gYwyT6Qxft7g4GJTS6TQatRoatcqzReXOABljmM7m6PVvIzmV9dgS +399roFmv7zytsBNAw7TQ6XZ3vnEZlmRZRuvgzU7l31YAKaXo9QcYjseRHSTaRPl8Dm9bR1tV +NBsDtKwF2ledyM4Abm02goDjo4ONOzkb5YG3X4fo9W9fRNT9X77v4+q6C9Na4PjoEMKabr0W +QMYYOt0eRiHceQtao/EEjuPi/N3btZxaWAde+6rzKuD9NEcT/3xqY7lG4i+sAy/oW+BR0MK2 +8bF98cdC4EmAN73+q4R3J9t28Oni6sl6/VGAw9EYX0cjvHYZponrm95mAG3Hwc2XPhJ9N5bJ +5NHvYRAe2vcurq65TLTHWZ2b3oOmIjxk4wvbTog9VH3dDp4GSCnFlwd+KdE3jSfavbpf+H2t +a1hG5JJ0FMUYw+1w+DjA4WicUPqDJtr0tyATftq1FZt+XthRqGnT+wBnup7QWVO/svoBUNeN +hMzaybX1oyMl3IVlkrqsL9/3sfjuxgIAeJ73Int8PHU3FCUBwIr6UJVsQmWTKPwecP8B+Yeq +UNZlH5EAAAAASUVORK5CYII=' readStream)) \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultPhotoSize.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultPhotoSize.st new file mode 100644 index 000000000..944e42cbb --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultPhotoSize.st @@ -0,0 +1,4 @@ +default values +defaultPhotoSize + + ^ self defaultHeight \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultTitleOffset.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultTitleOffset.st index 5947e8194..0c4a73780 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultTitleOffset.st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/defaultTitleOffset.st @@ -1,4 +1,4 @@ default values defaultTitleOffset - ^ 20 @ 20 + ^ (15 @ 15) + (self defaultPhotoSize @ 0) diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/newWithChat.width..st b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/newWithChat.width..st index 4c691f955..b03896787 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/class/newWithChat.width..st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/class/newWithChat.width..st @@ -7,4 +7,5 @@ newWithChat: aChat width: aNumber addTitle; addLastMessage; addBorder; + addPhoto; yourself \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addLastMessage.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addLastMessage.st index 391486eb3..0c9126da2 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addLastMessage.st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addLastMessage.st @@ -2,7 +2,7 @@ drawing addLastMessage self addMorph: (TextMorph new - contents: self lastMessageText; + contents: (self lastUserName, self lastMessageText); bottomLeft: self bottomLeft + self class defaultLastMessageOffset; lock; yourself). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addPhoto.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addPhoto.st new file mode 100644 index 000000000..bd49b5fd3 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addPhoto.st @@ -0,0 +1,14 @@ +drawing +addPhoto + + | promise morph | + self chat hasPhoto ifTrue: [ + promise := self chat core imageStore getFormPromiseFor: self chat photoId. + promise >>= [:aForm | + morph := (aForm scaledToSize: self class defaultPhotoSize) asMorph. + morph position: self position. + self addMorphBack: morph. + ] + ] ifFalse: [ + self addMorphBack: TCUDefaultValues defaultProfilePhoto asMorph. + ]. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addTitle.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addTitle.st index 031947abd..2695ce06e 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addTitle.st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/addTitle.st @@ -1,8 +1,13 @@ drawing addTitle + | prefix | + prefix := ''. + self chat isPinned ifTrue: [ + prefix := '[pinned] ' + ]. self addMorph: (TextMorph new position: self topLeft + self class defaultTitleOffset; - contents: ((self chatName condensedIntoOneLine truncateWithElipsisTo: self class defaultTitleLength) asText addAttribute: TextEmphasis bold); + contents: ((prefix, self chatName condensedIntoOneLine truncateWithElipsisTo: self class defaultTitleLength) asText addAttribute: TextEmphasis bold); lock; yourself). diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/deselect.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/deselect.st index 337611f7d..c055e7c8c 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/deselect.st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/deselect.st @@ -1,4 +1,5 @@ event handling deselect - self color: Color white. \ No newline at end of file + self color: Color white; + isSelected: false. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/handlesMouseOver..st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/handlesMouseOver..st new file mode 100644 index 000000000..62a3a425e --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/handlesMouseOver..st @@ -0,0 +1,4 @@ +event handling +handlesMouseOver: anEvent + + ^ true \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/initialize.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/initialize.st index b12f09cc1..e2849acc4 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/initialize.st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/initialize.st @@ -7,4 +7,5 @@ initialize color: Color white; height: self class defaultHeight; borderWidth: 0; - clipSubmorphs: true. \ No newline at end of file + clipSubmorphs: true; + isSelected: false. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/isSelected..st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/isSelected..st new file mode 100644 index 000000000..cad009373 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/isSelected..st @@ -0,0 +1,4 @@ +accessing +isSelected: aBoolean + + isSelected := aBoolean \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/isSelected.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/isSelected.st new file mode 100644 index 000000000..7be8d37f8 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/isSelected.st @@ -0,0 +1,4 @@ +accessing +isSelected + + ^ isSelected \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/lastMessageText.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/lastMessageText.st index f9d44a0f2..4399c6626 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/lastMessageText.st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/lastMessageText.st @@ -2,5 +2,5 @@ accessing lastMessageText ^ TCUEmojiHelper embedEmojisInto: - (self chat lastMessage condensedIntoOneLine + (self chat lastMessageText condensedIntoOneLine truncateWithElipsisTo: self class defaultMessagePreviewLength) \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/lastUserName.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/lastUserName.st new file mode 100644 index 000000000..a7a9b0f62 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/lastUserName.st @@ -0,0 +1,8 @@ +accessing +lastUserName + + ^ ((self chat lastMessageSenderId = self chat core loggedInUserId) + ifTrue:['You: '] + ifFalse: [(self chat lastMessageSenderName) + ifEmpty: [''] + ifNotEmpty: [(self chat lastMessageSenderName,': ')]]) \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/mouseEnter..st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/mouseEnter..st new file mode 100644 index 000000000..b690e3988 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/mouseEnter..st @@ -0,0 +1,4 @@ +event handling +mouseEnter: anEvent + + self isSelected ifFalse: [self color: TCUDefaultValues colorLightGray.]. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/mouseLeave..st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/mouseLeave..st new file mode 100644 index 000000000..9986e88ad --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/mouseLeave..st @@ -0,0 +1,4 @@ +event handling +mouseLeave: anEvent + + self isSelected ifFalse: [self color: Color white.]. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/select.st b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/select.st index 32d1c1bce..3da1a79bd 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/select.st +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/instance/select.st @@ -4,4 +4,5 @@ select self chat loadInfoIfNotLoaded; loadChatHistory. - self color: self class defaultSelectColor. \ No newline at end of file + self color: self class defaultSelectColor; + isSelected: true. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUChatListItem.class/methodProperties.json index 22574fb7b..74f5173b4 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/methodProperties.json @@ -1,21 +1,31 @@ { "class" : { "defaultHeight" : "rs 7/4/2020 18:54", - "defaultLastMessageOffset" : "JB 6/11/2021 15:17", - "defaultMessagePreviewLength" : "JB 6/11/2021 15:17", + "defaultImageWidth" : "rgw 6/2/2022 15:26", + "defaultLastMessageOffset" : "rgw 6/2/2022 15:28", + "defaultMessagePreviewLength" : "rgw 6/2/2022 15:32", + "defaultPhoto" : "rgw 6/2/2022 16:26", + "defaultPhotoSize" : "rgw 6/2/2022 15:27", "defaultSelectColor" : "JB 7/19/2021 12:11", "defaultTitleLength" : "RK 7/4/2021 13:30", - "defaultTitleOffset" : "JB 6/11/2021 15:18", - "newWithChat:width:" : "RK 8/4/2021 10:45" }, + "defaultTitleOffset" : "rgw 6/2/2022 15:28", + "newWithChat:width:" : "rgw 6/2/2022 15:18" }, "instance" : { "addBorder" : "RK 8/4/2021 12:05", - "addLastMessage" : "RK 8/4/2021 12:06", - "addTitle" : "RK 8/4/2021 12:06", + "addLastMessage" : "LR 7/14/2022 11:35", + "addPhoto" : "ek 8/4/2022 13:56", + "addTitle" : "js 6/18/2022 10:55", "chat" : "rs 6/17/2020 21:45", "chat:" : "rs 6/17/2020 21:45", "chatId" : "8/5/2021 21:14:18", "chatName" : "rs 6/17/2020 21:45", - "deselect" : "rs 6/13/2020 09:02", - "initialize" : "r.s 7/31/2020 14:43", - "lastMessageText" : "RK 7/9/2021 16:07", - "select" : "JB 7/19/2021 12:12" } } + "deselect" : "ek 6/19/2022 18:49", + "handlesMouseOver:" : "ek 6/19/2022 18:48", + "initialize" : "ek 6/19/2022 18:48", + "isSelected" : "ek 6/19/2022 18:49", + "isSelected:" : "ek 6/19/2022 18:49", + "lastMessageText" : "LR 7/14/2022 11:38", + "lastUserName" : "js 7/22/2022 09:53", + "mouseEnter:" : "ek 6/19/2022 18:49", + "mouseLeave:" : "ek 6/19/2022 18:55", + "select" : "ek 6/19/2022 18:49" } } diff --git a/packages/TelegramClient-UI.package/TCUChatListItem.class/properties.json b/packages/TelegramClient-UI.package/TCUChatListItem.class/properties.json index 0097c287b..340fa7e3b 100644 --- a/packages/TelegramClient-UI.package/TCUChatListItem.class/properties.json +++ b/packages/TelegramClient-UI.package/TCUChatListItem.class/properties.json @@ -6,7 +6,8 @@ ], "commentStamp" : "js 6/13/2020 19:00", "instvars" : [ - "chat" ], + "chat", + "isSelected" ], "name" : "TCUChatListItem", "pools" : [ ], diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/class/defaultMessageWrapper.st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/class/defaultMessageWrapper.st deleted file mode 100644 index 3a084b76b..000000000 --- a/packages/TelegramClient-UI.package/TCUChatMessageList.class/class/defaultMessageWrapper.st +++ /dev/null @@ -1,8 +0,0 @@ -default values -defaultMessageWrapper - - ^ Morph new - cellInset: self defaultMessageMargin; - color: Color transparent; - layoutPolicy: TableLayout new; - yourself \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/class/defaultWidth.st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/class/defaultWidth.st index 8026f600f..b74da4337 100644 --- a/packages/TelegramClient-UI.package/TCUChatMessageList.class/class/defaultWidth.st +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/class/defaultWidth.st @@ -1,4 +1,4 @@ default values defaultWidth - ^ 890 \ No newline at end of file + ^ 810 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addAtBottom..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addAtBottom..st index 49d865f69..26311baaa 100644 --- a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addAtBottom..st +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addAtBottom..st @@ -1,13 +1,16 @@ messages addAtBottom: aCoreMessage - | wrapper wasFullyScrolledDown | - + | wasFullyScrolledDown messageItem | + (self isFromCurrentChat: aCoreMessage) ifFalse: [ ^ self ]. + + (aCoreMessage isFirstMessageOfDay) ifTrue: [self addBottomDayDividerForDate: aCoreMessage date asDate]. + wasFullyScrolledDown := self isFullyScrolledDown. - wrapper := self wrapperFor: (TCUMessage newFrom: aCoreMessage). - self scroller addMorphBack: wrapper. - self items addLast: wrapper. + messageItem := self createMessageItemFrom: aCoreMessage. + self scroller addMorphBack: messageItem. + self items addLast: messageItem. wasFullyScrolledDown - ifTrue: [ self scrollToNewestMessage ] \ No newline at end of file + ifTrue: [ self scrollToNewestMessage ]. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addAtTop..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addAtTop..st index aebc61d53..ffda05b6f 100644 --- a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addAtTop..st +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addAtTop..st @@ -1,13 +1,18 @@ messages addAtTop: aCoreMessage - | wrapper | + | messageItem lastMessage | (self isFromCurrentChat: aCoreMessage) ifFalse: [^ self]. - wrapper := self wrapperFor: (TCUMessage newFrom: aCoreMessage). - self scroller addMorphFront: wrapper. - self items addFirst: wrapper. + (aCoreMessage isLastMessageOfDay and: self items isEmpty not) ifTrue: [ + lastMessage := self items first message messageModel. + self addTopDayDividerForDate: lastMessage date asDate + ]. + + messageItem := self createMessageItemFrom: aCoreMessage. + self scroller addMorphFront: messageItem. + self items addFirst: messageItem. self isFullyScrolledDown ifTrue: [self scrollToNewestMessage]. - self scrollBy: 0 @ (wrapper height negated). \ No newline at end of file + self scrollBy: 0 @ (messageItem height negated). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addBottomDayDividerForDate..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addBottomDayDividerForDate..st new file mode 100644 index 000000000..c884ca2ee --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addBottomDayDividerForDate..st @@ -0,0 +1,10 @@ +stepping and presenter +addBottomDayDividerForDate: aDate + + | divider wasFullyScrolledDown | + wasFullyScrolledDown := self isFullyScrolledDown. + divider := self createDayDividerForDate: aDate. + self scroller addMorphBack: divider. + self items addLast: divider. + wasFullyScrolledDown + ifTrue: [ self scrollToNewestMessage ]. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addTopDayDividerForDate..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addTopDayDividerForDate..st new file mode 100644 index 000000000..c35a89354 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/addTopDayDividerForDate..st @@ -0,0 +1,10 @@ +stepping and presenter +addTopDayDividerForDate: aDate + + | divider | + divider := self createDayDividerForDate: aDate. + self scroller addMorphFront: divider. + self items addFirst: divider. + self isFullyScrolledDown + ifTrue: [self scrollToNewestMessage]. + self scrollBy: 0 @ (divider height negated). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/createDayDividerForDate..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/createDayDividerForDate..st new file mode 100644 index 000000000..455a377f9 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/createDayDividerForDate..st @@ -0,0 +1,7 @@ +stepping and presenter +createDayDividerForDate: aDate + + | messageItem | + messageItem := TCUDayDividerMessage newFromDate: aDate. + + ^ TCUDayDividerMessageWrapper newFromMessage: messageItem withWidth: self scroller width \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/createMessageItemFrom..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/createMessageItemFrom..st new file mode 100644 index 000000000..ce1254dfc --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/createMessageItemFrom..st @@ -0,0 +1,10 @@ +messages +createMessageItemFrom: aCoreMessage + + | messageItem | + + messageItem := TCUMessage newFrom: aCoreMessage. + messageItem when: #requestScroll send: #requestScrollToMessage: to: self with: aCoreMessage replyToMessageId. + messageItem isUserMessage + ifTrue: [^ TCUUserMessageWrapper newFromMessage: messageItem withWidth: self scroller width] + ifFalse: [^ TCUInfoMessageWrapper newFromMessage: messageItem withWidth: self scroller width]. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/displayChat..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/displayChat..st index 0d56b2f20..3e3dc4a87 100644 --- a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/displayChat..st +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/displayChat..st @@ -4,6 +4,7 @@ displayChat: aChat self chat removeActionsWithReceiver: self. aChat when: #newMessage send: #addAtBottom: to: self. aChat when: #loadedMessage send: #addAtTop: to: self. + self chat: aChat; showMessages. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/requestScrollToMessage..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/requestScrollToMessage..st new file mode 100644 index 000000000..85806a2b8 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/requestScrollToMessage..st @@ -0,0 +1,9 @@ +messages +requestScrollToMessage: aMessageId + + | messageRequest | + messageRequest := TCCMessageRequest new messageId: aMessageId; + completionReceiver: self; + completionMessage: #scrollToMessage:; + yourself. + self chat handleMessageRequest: messageRequest \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/scrollToMessage..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/scrollToMessage..st new file mode 100644 index 000000000..e78a61193 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/scrollToMessage..st @@ -0,0 +1,6 @@ +drawing +scrollToMessage: aMessageId + + | messageItem | + messageItem := self items detect: [:item | item messageId = aMessageId]. + self scrollToShow: messageItem \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/wrapperFor..st b/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/wrapperFor..st deleted file mode 100644 index 80ddccda0..000000000 --- a/packages/TelegramClient-UI.package/TCUChatMessageList.class/instance/wrapperFor..st +++ /dev/null @@ -1,15 +0,0 @@ -messages -wrapperFor: aMessage - - | wrapper | - wrapper := self class defaultMessageWrapper - width: self scroller width; - height: aMessage height; - yourself. - - aMessage isOutgoing - ifTrue: [ wrapper listDirection: #rightToLeft ] - ifFalse: [ wrapper listDirection: #leftToRight ]. - - wrapper addMorph: aMessage. - ^ wrapper \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUChatMessageList.class/methodProperties.json index 3ec3e745c..81ebcbe12 100644 --- a/packages/TelegramClient-UI.package/TCUChatMessageList.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUChatMessageList.class/methodProperties.json @@ -1,21 +1,24 @@ { "class" : { - "defaultMessageMargin" : "per 6/20/2021 11:51", - "defaultMessageWrapper" : "JB 6/28/2021 09:58", "defaultScrollOffsetBeforeLoading" : "JB 6/26/2021 10:15", - "defaultWidth" : "RS 7/17/2021 17:39" }, + "defaultWidth" : "rgw 6/2/2022 15:39" }, "instance" : { - "addAtBottom:" : "JB 8/4/2021 11:15", - "addAtTop:" : "JB 8/4/2021 11:15", + "addAtBottom:" : "ek 8/4/2022 14:03", + "addAtTop:" : "rgw 7/21/2022 15:02", + "addBottomDayDividerForDate:" : "ek 8/4/2022 14:07", "addMessages" : "RS 7/17/2021 17:40", + "addTopDayDividerForDate:" : "js 7/18/2022 07:30", "chat" : "js 7/31/2020 16:39", "chat:" : "js 7/31/2020 16:39", "core" : "JB 6/26/2021 10:22", + "createDayDividerForDate:" : "js 7/31/2022 10:20", + "createMessageItemFrom:" : "js 7/31/2022 10:02", "displayChat:" : "RS 7/17/2021 11:54", "initialize" : "RS 7/17/2021 17:40", "isFromCurrentChat:" : "pk 8/5/2021 17:07", "isFullyScrolledDown" : "JB 8/4/2021 11:15", + "requestScrollToMessage:" : "aka 6/15/2022 11:56", + "scrollToMessage:" : "js 7/31/2022 10:21", "scrollToNewestMessage" : "per 6/24/2021 23:14", "showMessages" : "RS 7/17/2021 17:34", - "step" : "JB 7/19/2021 12:12", - "wrapperFor:" : "RK 8/4/2021 10:57" } } + "step" : "JB 7/19/2021 12:12" } } diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/class/defaultInputfieldHeight.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/class/defaultInputfieldHeight.st index 86a15c03c..430bb2695 100644 --- a/packages/TelegramClient-UI.package/TCUChatWindow.class/class/defaultInputfieldHeight.st +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/class/defaultInputfieldHeight.st @@ -1,4 +1,4 @@ default values defaultInputfieldHeight - ^ 70 \ No newline at end of file + ^ 120 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/addReplyMessage.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/addReplyMessage.st new file mode 100644 index 000000000..a0195a566 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/addReplyMessage.st @@ -0,0 +1,11 @@ +drawing +addReplyMessage + + | message | + message := self selectedChat getMessageById: self selectedChat selectedReplyToMessageId. + + self inputBar addMorphFront: (TextMorph new + contentsWrapped: 'Reply to: ' , message asReplySnippet asText; + extent: self inputBar width - 200 @ self class defaultInputfieldHeight; + lock; + yourself). diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/addSendButton.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/addSendButton.st index 2142a6f3b..4a87c9962 100644 --- a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/addSendButton.st +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/addSendButton.st @@ -1,8 +1,9 @@ drawing addSendButton - self inputBar addMorph: (TCUButton new + self sendButton: (TCUButton new text: 'Send'; - on: #mouseDown send: #buttonSendPressed to: self; + on: #mouseUp send: #buttonSendPressed to: self; name: 'sendMessage'; - yourself). \ No newline at end of file + yourself). + self inputBar addMorph: self sendButton. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/buttonSendPressed.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/buttonSendPressed.st index c9118c34b..6a151f7d4 100644 --- a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/buttonSendPressed.st +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/buttonSendPressed.st @@ -2,8 +2,9 @@ event handling buttonSendPressed | messageString | - + messageString := self textInputField contents asString withBlanksTrimmed. messageString ifNotEmpty: [self selectedChat sendMessage: messageString]. - self textInputField contents: ''. \ No newline at end of file + self textInputField contents: ''. + self sendButton makeLighter. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/createInputBar.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/createInputBar.st index 2c896a436..0c8707ebe 100644 --- a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/createInputBar.st +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/createInputBar.st @@ -9,6 +9,8 @@ createInputBar bottomLeft: (self bottomLeft); layoutPolicy: TableLayout new; listDirection: #leftToRight; + wrapDirection: #topToBottom; + wrapCentering: #topLeft; layoutInset: 2; vResizing: #shrinkWrap; cellInset: 12; diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/createTitleBar.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/createTitleBar.st index a7f7c6595..f77d949bc 100644 --- a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/createTitleBar.st +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/createTitleBar.st @@ -15,4 +15,6 @@ createTitleBar cellInset: 12; yourself). - self titleBar on: #mouseDown send: #showInfoPage to: self. \ No newline at end of file + self titleBar on: #mouseDown send: #showInfoPage to: self. + self titleBar on: #mouseEnter send: #titleBarEntered to: self. + self titleBar on: #mouseLeave send: #titleBarLeft to: self. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/newChatSelected..st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/newChatSelected..st index 5880a6861..df310e573 100644 --- a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/newChatSelected..st +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/newChatSelected..st @@ -2,6 +2,9 @@ event handling newChatSelected: aChat self welcomeMessage hide. + self inputBar submorphsDo: #abandon. + self addSendButton. + self addTextInputField. self inputBar show. self titleBar delete. self infoPage delete. diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/selectedChat..st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/selectedChat..st index 0cf5e25e1..e32f89e23 100644 --- a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/selectedChat..st +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/selectedChat..st @@ -1,4 +1,5 @@ accessing selectedChat: aChat - selectedChat := aChat. \ No newline at end of file + selectedChat := aChat. + selectedChat when: #updateReplyToMessageId send: #updateReplyMessage to: self \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/sendButton..st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/sendButton..st new file mode 100644 index 000000000..9faba7777 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/sendButton..st @@ -0,0 +1,4 @@ +accessing +sendButton: aTelegramButton + + sendButton := aTelegramButton \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/sendButton.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/sendButton.st new file mode 100644 index 000000000..669bc9442 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/sendButton.st @@ -0,0 +1,4 @@ +accessing +sendButton + + ^ sendButton \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/titleBarEntered.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/titleBarEntered.st new file mode 100644 index 000000000..d2336b28a --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/titleBarEntered.st @@ -0,0 +1,4 @@ +event handling +titleBarEntered + + self titleBar color: Color veryVeryLightGray. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/titleBarLeft.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/titleBarLeft.st new file mode 100644 index 000000000..96b70d243 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/titleBarLeft.st @@ -0,0 +1,4 @@ +event handling +titleBarLeft + + self titleBar color: TCUDefaultValues colorLightGray. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/updateReplyMessage.st b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/updateReplyMessage.st new file mode 100644 index 000000000..afc499420 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/instance/updateReplyMessage.st @@ -0,0 +1,12 @@ +accessing +updateReplyMessage + + | inputFieldText | + inputFieldText := self textInputField contents asString. + self inputBar submorphsDo: #abandon. + self addSendButton. + self addTextInputField. + self selectedChat selectedReplyToMessageId = self selectedChat class defaultSelectedReplyToMessageId ifFalse: [ + self addReplyMessage. + ]. + self textInputField contents: inputFieldText. diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUChatWindow.class/methodProperties.json index 5c0c2e65d..8480dc21f 100644 --- a/packages/TelegramClient-UI.package/TCUChatWindow.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/methodProperties.json @@ -1,6 +1,6 @@ { "class" : { - "defaultInputfieldHeight" : "rs 6/12/2020 20:03", + "defaultInputfieldHeight" : "JS 5/20/2022 11:08", "defaultTitleBarHeight" : "JB 6/28/2021 09:42", "newWithHeight:width:" : "JB 7/6/2021 14:03" }, "instance" : { @@ -9,29 +9,35 @@ "addHiddenInfoPage" : "per 6/15/2021 09:02", "addInputBar" : "js 6/13/2020 17:59", "addMemberCount" : "RK 8/4/2021 12:06", - "addSendButton" : "RK 8/4/2021 12:13", + "addReplyMessage" : "JS 5/22/2022 19:39", + "addSendButton" : "ek 6/19/2022 19:07", "addTextInputField" : "RK 8/4/2021 12:06", "addTitleBar" : "RS 5/29/2021 18:12", "addWelcomeMessage" : "RK 8/4/2021 12:07", - "buttonSendPressed" : "JB 7/23/2021 12:37", + "buttonSendPressed" : "ek 6/19/2022 19:07", "chatMessageList" : "JB 7/6/2021 14:02", "chatMessageList:" : "JB 7/6/2021 14:02", "clear" : "JB 7/31/2021 15:24", "core" : "js 8/2/2020 22:11", - "createInputBar" : "RK 8/4/2021 12:07", - "createTitleBar" : "JB 6/28/2021 09:42", + "createInputBar" : "JS 5/20/2022 11:45", + "createTitleBar" : "ek 6/19/2022 19:08", "infoPage" : "RS 5/20/2021 21:14", "infoPage:" : "RS 5/20/2021 21:14", "initialize" : "RS 5/20/2021 19:29", "inputBar" : "rs 6/13/2020 10:38", "inputBar:" : "RK 8/4/2021 10:48", - "newChatSelected:" : "JB 7/6/2021 14:01", + "newChatSelected:" : "JS 5/20/2022 11:55", "selectedChat" : "rs 6/13/2020 09:11", - "selectedChat:" : "rs 6/13/2020 09:11", + "selectedChat:" : "JS 5/26/2022 16:40", + "sendButton" : "ek 6/19/2022 18:53", + "sendButton:" : "ek 6/19/2022 18:53", "showInfoPage" : "per 5/30/2021 11:51", "textInputField" : "rs 6/13/2020 10:41", "textInputField:" : "rs 6/13/2020 10:42", "titleBar" : "sp 8/2/2020 15:04", "titleBar:" : "sp 8/2/2020 15:04", + "titleBarEntered" : "ek 6/19/2022 19:08", + "titleBarLeft" : "ek 6/19/2022 19:09", + "updateReplyMessage" : "LR 8/5/2022 16:14", "welcomeMessage" : "rs 6/13/2020 09:36", "welcomeMessage:" : "RK 8/4/2021 10:49" } } diff --git a/packages/TelegramClient-UI.package/TCUChatWindow.class/properties.json b/packages/TelegramClient-UI.package/TCUChatWindow.class/properties.json index c45f65ca8..03e6fab68 100644 --- a/packages/TelegramClient-UI.package/TCUChatWindow.class/properties.json +++ b/packages/TelegramClient-UI.package/TCUChatWindow.class/properties.json @@ -11,7 +11,8 @@ "inputBar", "selectedChat", "welcomeMessage", - "textInputField" ], + "textInputField", + "sendButton" ], "name" : "TCUChatWindow", "pools" : [ ], diff --git a/packages/TelegramClient-UI.package/TCUChatsList.class/class/defaultWidth.st b/packages/TelegramClient-UI.package/TCUChatsList.class/class/defaultWidth.st index 6050c591e..8bf7846de 100644 --- a/packages/TelegramClient-UI.package/TCUChatsList.class/class/defaultWidth.st +++ b/packages/TelegramClient-UI.package/TCUChatsList.class/class/defaultWidth.st @@ -1,4 +1,4 @@ default values defaultWidth - ^ 300 \ No newline at end of file + ^ 375 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatsList.class/instance/redrawItems.st b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/redrawItems.st index 43418f809..6f37c7bd3 100644 --- a/packages/TelegramClient-UI.package/TCUChatsList.class/instance/redrawItems.st +++ b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/redrawItems.st @@ -1,9 +1,4 @@ drawing redrawItems - self clearItems. - - self items: (self chats collect: [:aChat | - self createChatListItem: aChat]). - - self items do: [:anItem | self scroller addMorphBack: anItem]. \ No newline at end of file + self shouldRedraw: true. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatsList.class/instance/shouldRedraw..st b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/shouldRedraw..st new file mode 100644 index 000000000..0916fe6fb --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/shouldRedraw..st @@ -0,0 +1,4 @@ +accessing +shouldRedraw: aBoolean + + shouldRedraw := aBoolean \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatsList.class/instance/shouldRedraw.st b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/shouldRedraw.st new file mode 100644 index 000000000..9a0ef886e --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/shouldRedraw.st @@ -0,0 +1,4 @@ +accessing +shouldRedraw + + ^ shouldRedraw \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatsList.class/instance/step.st b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/step.st new file mode 100644 index 000000000..2a75a888d --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/step.st @@ -0,0 +1,13 @@ +stepping and presenter +step + + self shouldRedraw ifTrue: [ + + self clearItems. + self items: (self chats collect: [:aChat | + self createChatListItem: aChat]). + + self items do: [:anItem | self scroller addMorphBack: anItem]. + + self shouldRedraw: false. + ]. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatsList.class/instance/stepTime.st b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/stepTime.st new file mode 100644 index 000000000..920796b75 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUChatsList.class/instance/stepTime.st @@ -0,0 +1,4 @@ +stepping and presenter +stepTime + + ^ 500 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatsList.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUChatsList.class/methodProperties.json index a04155f3d..abe8abaf5 100644 --- a/packages/TelegramClient-UI.package/TCUChatsList.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUChatsList.class/methodProperties.json @@ -1,16 +1,20 @@ { "class" : { - "defaultWidth" : "per 6/24/2021 23:03" }, + "defaultWidth" : "rgw 6/2/2022 15:32" }, "instance" : { "chatItemClicked:event:from:" : "JB 7/23/2021 12:39", "chats" : "rs 6/17/2020 22:38", "chats:" : "f.w. 7/15/2020 23:57", - "createChatListItem:" : "js 7/31/2020 23:05", + "createChatListItem:" : "js 6/18/2022 10:34", "deselectChats" : "RS 7/17/2021 12:11", "indicateKeyboardFocus" : "per 6/19/2021 13:49", "initialize" : "per 6/24/2021 23:08", "openNewChat:" : "RS 7/17/2021 17:21", - "redrawItems" : "JB 8/6/2021 16:02", + "redrawItems" : "rgw 7/24/2022 14:43", "selectChat:" : "JB 7/19/2021 12:26", "selectedChat" : "rs 6/13/2020 08:51", - "selectedChat:" : "RS 7/17/2021 10:57" } } + "selectedChat:" : "RS 7/17/2021 10:57", + "shouldRedraw" : "rgw 7/24/2022 14:42", + "shouldRedraw:" : "rgw 7/24/2022 14:42", + "step" : "ek 8/5/2022 14:07", + "stepTime" : "LR 7/25/2022 16:22" } } diff --git a/packages/TelegramClient-UI.package/TCUChatsList.class/properties.json b/packages/TelegramClient-UI.package/TCUChatsList.class/properties.json index dbcb38743..bb1e0302d 100644 --- a/packages/TelegramClient-UI.package/TCUChatsList.class/properties.json +++ b/packages/TelegramClient-UI.package/TCUChatsList.class/properties.json @@ -7,7 +7,8 @@ "commentStamp" : "js 6/13/2020 19:01", "instvars" : [ "selectedChat", - "chats" ], + "chats", + "shouldRedraw" ], "name" : "TCUChatsList", "pools" : [ ], diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/README.md b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/README.md new file mode 100644 index 000000000..91da5abc5 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/README.md @@ -0,0 +1 @@ +class for automatic generated info messages. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/class/defaultBorderWidth.st b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/class/defaultBorderWidth.st new file mode 100644 index 000000000..0cd6f8444 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/class/defaultBorderWidth.st @@ -0,0 +1,4 @@ +defaults +defaultBorderWidth + + ^ 2 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/class/defaultLayoutInset.st b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/class/defaultLayoutInset.st new file mode 100644 index 000000000..a257331e6 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/class/defaultLayoutInset.st @@ -0,0 +1,4 @@ +defaults +defaultLayoutInset + + ^ 7 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/class/newFromDate..st b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/class/newFromDate..st new file mode 100644 index 000000000..878923e5c --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/class/newFromDate..st @@ -0,0 +1,7 @@ +instance creation +newFromDate: aDate + + ^ self basicNew + content: aDate mmddyyyy; + initialize; + yourself diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/instance/content..st b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/instance/content..st new file mode 100644 index 000000000..056343ec1 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/instance/content..st @@ -0,0 +1,4 @@ +accessing +content: aString + + content := aString \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/instance/content.st b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/instance/content.st new file mode 100644 index 000000000..a5f2cf173 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/instance/content.st @@ -0,0 +1,4 @@ +accessing +content + + ^ content \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/instance/initialize.st b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/instance/initialize.st new file mode 100644 index 000000000..62526bbea --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/instance/initialize.st @@ -0,0 +1,19 @@ +initialization +initialize + + | textMorph | + super initialize. + + textMorph := TextMorph new + contents: self content; + left: self class defaultLayoutInset; + top: self class defaultLayoutInset; + color: Color white; + lock. + self color: Color gray; + addMorph: textMorph; + useRoundedCorners; + borderWidth: self class defaultBorderWidth; + borderColor: Color transparent; + width: textMorph width + (2 * self class defaultLayoutInset); + height: textMorph height + (2 * self class defaultLayoutInset). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/methodProperties.json new file mode 100644 index 000000000..a67dbe23a --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/methodProperties.json @@ -0,0 +1,9 @@ +{ + "class" : { + "defaultBorderWidth" : "rgw 7/22/2022 15:44", + "defaultLayoutInset" : "rgw 7/22/2022 15:45", + "newFromDate:" : "aka 7/14/2022 15:14" }, + "instance" : { + "content" : "aka 7/10/2022 12:37", + "content:" : "aka 7/10/2022 12:37", + "initialize" : "ek 8/5/2022 14:11" } } diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/properties.json b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/properties.json new file mode 100644 index 000000000..ad647b1eb --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessage.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "aka 7/14/2022 15:07", + "instvars" : [ + "content" ], + "name" : "TCUDayDividerMessage", + "pools" : [ + ], + "super" : "RectangleMorph", + "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/README.md b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/README.md new file mode 100644 index 000000000..b2c3568da --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/README.md @@ -0,0 +1 @@ +wraps TCUDayDividerMessage to align it in the center of chatMessageList \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/class/defaultInvalidMessageId.st b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/class/defaultInvalidMessageId.st new file mode 100644 index 000000000..523bf7157 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/class/defaultInvalidMessageId.st @@ -0,0 +1,4 @@ +default values +defaultInvalidMessageId + + ^ -1 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/instance/messageId.st b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/instance/messageId.st new file mode 100644 index 000000000..4950a3a44 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/instance/messageId.st @@ -0,0 +1,4 @@ +accessing +messageId + + ^ self class defaultInvalidMessageId \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/methodProperties.json new file mode 100644 index 000000000..646d3992d --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + "defaultInvalidMessageId" : "js 7/31/2022 10:42" }, + "instance" : { + "messageId" : "js 7/31/2022 10:41" } } diff --git a/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/properties.json b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/properties.json new file mode 100644 index 000000000..719ba7c36 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDayDividerMessageWrapper.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "js 7/31/2022 10:37", + "instvars" : [ + ], + "name" : "TCUDayDividerMessageWrapper", + "pools" : [ + ], + "super" : "TCUMessageWrapper", + "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUDefaultValues.class/class/defaultProfilePhoto.st b/packages/TelegramClient-UI.package/TCUDefaultValues.class/class/defaultProfilePhoto.st new file mode 100644 index 000000000..77cd0680c --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUDefaultValues.class/class/defaultProfilePhoto.st @@ -0,0 +1,40 @@ +colors +defaultProfilePhoto + "@linter-ignore" + "This is an auto-generated method" + ^ (Form fromBinaryStream: (Base64MimeConverter mimeDecodeToBytes: 'iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAABhGlDQ1BJQ0MgcHJvZmlsZQAA +KJF9kT1Iw0AcxV/TakWqDlYQcchQnSyIijhqFYpQIdQKrTqYXPoFTRqSFBdHwbXg4Mdi1cHF +WVcHV0EQ/ABxdHJSdJES/5cWWsR4cNyPd/ced+8AoVZimhUYBzTdNpPxmJjOrIrBV3RCQC8G +EJCZZcxJUgKe4+sePr7eRXmW97k/R4+atRjgE4lnmWHaxBvE05u2wXmfOMwKskp8Tjxm0gWJ +H7muNPiNc95lgWeGzVRynjhMLObbWGljVjA14iniiKrplC+kG6xy3uKslSqseU/+wlBWX1nm +Os1hxLGIJUgQoaCCIkqwEaVVJ8VCkvZjHv4h1y+RSyFXEYwcCyhDg+z6wf/gd7dWbnKikRSK +AR0vjvMxAgR3gXrVcb6PHad+AvifgSu95S/XgJlP0qstLXIE9G0DF9ctTdkDLneAwSdDNmVX +8tMUcjng/Yy+KQP03wLda43emvs4fQBS1FXiBjg4BEbzlL3u8e6u9t7+PdPs7wfkr3JuGFSY +bAAAAAZiS0dEADMA/wAAoVpNxAAAAAlwSFlzAAAN1wAADdcBQiibeAAAAAd0SU1FB+YGAg4V +IsHL5e4AAAVwSURBVHja7ZxXVxtJEIVvT1CYUY5gQGCMOcf7/3/LrtcWIJAsZIWRNEETpJ7e +BxuHJViBngBzX3hBoPlU3bequlqk179lSLS1hARBAjABmABMACZKACYAE4AJwESbS4rqG/N9 +H9T3wXwGURQgimIC8CnZto2ZrkM3TNi2A2+5/H2pCAKy6TQUVUGpUECxkIcghL+ASJi1MGMM +2nSGwWgEy1ps9FpRFFGrVLDfbCCVkl8fQMM00en2YNvObps4IWg2GjjYb4YSkYEDZIyh+6WP +wXD0rH83k07j7PQESjb7cl2YUoqP7YtnhwcAjuvi738/Yzqbv0yAlFJ8/HwBwzC5Onf7qoPJ +dPqyADLG8PmyA2uxCOR/XXZuMDeMlwPwutuDHtAD3UFsX3bgul78Ac7mcwzHk8DdkVKKy841 +GGPxBej7Pq67vdByNMOyMNa0+AIcDEdwvWWolUKvPwClfvwA+r7PJV3ZVMvlEmNtEj+Ak+kU +q9UqEnX2YDiOIUBtFpmOieu6G9faoQJcUQrDNBElaZwqFC4ATdPknj5s07yID0BrgajJWiy4 +fKhcADquGzmAjDF4nhcPgK7nIYpy4gKQrmgkAfocEmqB13KJJEA/JgAJIZEEyKPlzwVgVI8g +BTEmAMM8JXtK6VQqHgAzmUzk4BFC4gMwpyiRA6goCpe9mQvAfE6NnJEUcmp8SjlJkpDj9Ia3 +VblUjA9AAKiVy5Eyj5yqxgtgtVKGJEUjnWk26vxSI55Ja7NeDx2eJEmoVyvxAwgAe40GZDnc +nPBgf49rYs8VoCgKOD48CA1eTlXRqFX5Vje8H6JSLqHGcQk9VU6enrS4p1OBjHactI64ueBj +VcfpSQuZdJp/fR1IEU8I3r97i2wAs3uEEJy0DlEuFgP5sAIbb5MlCR/ev+MaiYQQnB63UK9W +A4v2QAcsJUnCh/Mz1Dls7OlUCn+dn6FaCTaBD21Geq4b6HR7cHc8gCKEoFGr4vDNfih9yNCn +9McTDYPhCLaz2bC5IAiolkvY32sGYhaRBPirLMvCdK7DMEwsHAeU0nuRlkqlkFMVFAsFlIuF +SHS+I3PRRlVVqL8YzGpFQekKPmMQRRGyJEXyrCVUgIwxuJ4H1/WwXC7hekusVkv4jMGnPhgY +GGMghEAURBACyLKMlCx/+5mSkc1kQgUbKEDHdaEbJizLwsK2YdsO/B2PQAkhyKTTULJZqIqC +fD4HJRscVK57IGMMc93AdDbHXNfv3X/jFhWiiHw+h0qphBLnvZILQMuyMBxr0Gaze2YQtARC +UCwWUK9WUSzknz0ynw0gYwyT6Qxft7g4GJTS6TQatRoatcqzReXOABljmM7m6PVvIzmV9dgS +399roFmv7zytsBNAw7TQ6XZ3vnEZlmRZRuvgzU7l31YAKaXo9QcYjseRHSTaRPl8Dm9bR1tV +NBsDtKwF2ledyM4Abm02goDjo4ONOzkb5YG3X4fo9W9fRNT9X77v4+q6C9Na4PjoEMKabr0W +QMYYOt0eRiHceQtao/EEjuPi/N3btZxaWAde+6rzKuD9NEcT/3xqY7lG4i+sAy/oW+BR0MK2 +8bF98cdC4EmAN73+q4R3J9t28Oni6sl6/VGAw9EYX0cjvHYZponrm95mAG3Hwc2XPhJ9N5bJ +5NHvYRAe2vcurq65TLTHWZ2b3oOmIjxk4wvbTog9VH3dDp4GSCnFlwd+KdE3jSfavbpf+H2t +a1hG5JJ0FMUYw+1w+DjA4WicUPqDJtr0tyATftq1FZt+XthRqGnT+wBnup7QWVO/svoBUNeN +hMzaybX1oyMl3IVlkrqsL9/3sfjuxgIAeJ73Int8PHU3FCUBwIr6UJVsQmWTKPwecP8B+Yeq +UNZlH5EAAAAASUVORK5CYII=' readStream)) \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUDefaultValues.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUDefaultValues.class/methodProperties.json index 1857cc207..7a4b07d0a 100644 --- a/packages/TelegramClient-UI.package/TCUDefaultValues.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUDefaultValues.class/methodProperties.json @@ -6,6 +6,7 @@ "colorLightGray" : "R.S 6/1/2020 14:25", "colorNileBlue" : "JB 5/10/2021 17:55", "colorPottersClay" : "JB 5/10/2021 17:57", - "colorRed" : "LL 7/15/2020 19:36" }, + "colorRed" : "LL 7/15/2020 19:36", + "defaultProfilePhoto" : "JS 6/11/2022 09:53" }, "instance" : { } } diff --git a/packages/TelegramClient-UI.package/TCUEmojiHelper.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUEmojiHelper.class/methodProperties.json index 066ec3b68..c5847fb86 100644 --- a/packages/TelegramClient-UI.package/TCUEmojiHelper.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUEmojiHelper.class/methodProperties.json @@ -10,7 +10,7 @@ "defaultMinimumEmojiAmount" : "pk 7/17/2021 10:18", "defaultOptionalCharacters" : "pk 7/6/2021 09:49", "defaultTextHeight" : "7/17/2021 09:37:29", - "downloadArchive" : "pk 7/17/2021 09:49", + "downloadArchive" : "LR 6/5/2022 11:05", "downloadUrl" : "RK 6/29/2021 11:30", "embedEmojisInto:" : "pk 7/11/2021 19:17", "emojiExists:" : "pk 7/11/2021 19:20", diff --git a/packages/TelegramClient-UI.package/TCUHeaderBar.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUHeaderBar.class/methodProperties.json index 7d559e83e..6bf863030 100644 --- a/packages/TelegramClient-UI.package/TCUHeaderBar.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUHeaderBar.class/methodProperties.json @@ -4,8 +4,8 @@ "defaultSpacing" : "r.s 8/2/2020 18:54", "newForMain:" : "js 8/2/2020 22:34" }, "instance" : { - "addCloseButton" : "RK 8/4/2021 12:07", - "addLogoutButton" : "RK 8/4/2021 12:07", + "addCloseButton" : "ek 6/12/2022 11:38", + "addLogoutButton" : "ek 6/12/2022 11:23", "addNewChatButton" : "RK 8/4/2021 12:07", "addTitle:" : "RK 8/4/2021 12:07", "initialize" : "JB 6/11/2021 18:32", diff --git a/packages/TelegramClient-UI.package/TCUInfoMessage.class/README.md b/packages/TelegramClient-UI.package/TCUInfoMessage.class/README.md new file mode 100644 index 000000000..f37bc135f --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUInfoMessage.class/README.md @@ -0,0 +1 @@ +UI message element showing information such as 'added XYZ' \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUInfoMessage.class/class/defaultBorderWidth.st b/packages/TelegramClient-UI.package/TCUInfoMessage.class/class/defaultBorderWidth.st new file mode 100644 index 000000000..06026fc2e --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUInfoMessage.class/class/defaultBorderWidth.st @@ -0,0 +1,4 @@ +default values +defaultBorderWidth + + ^ 2 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUInfoMessage.class/class/defaultLayoutInset.st b/packages/TelegramClient-UI.package/TCUInfoMessage.class/class/defaultLayoutInset.st new file mode 100644 index 000000000..c649e5256 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUInfoMessage.class/class/defaultLayoutInset.st @@ -0,0 +1,4 @@ +default values +defaultLayoutInset + + ^ 7 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUInfoMessage.class/instance/initialize.st b/packages/TelegramClient-UI.package/TCUInfoMessage.class/instance/initialize.st new file mode 100644 index 000000000..4de6037de --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUInfoMessage.class/instance/initialize.st @@ -0,0 +1,21 @@ +initialization +initialize + + | textMorph | + super initialize. + + textMorph := (TextMorph new + lock; + contents: self messageModel asText; + color: Color white; + left: self class defaultLayoutInset; + top: self class defaultLayoutInset; + yourself). + self + color: Color gray; + addMorph: textMorph; + borderWidth: self class defaultBorderWidth; + borderColor: Color transparent; + useRoundedCorners; + width: textMorph width + (2 * self class defaultLayoutInset); + height: textMorph height + (2 * self class defaultLayoutInset). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUInfoMessage.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUInfoMessage.class/methodProperties.json new file mode 100644 index 000000000..5e7f07df6 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUInfoMessage.class/methodProperties.json @@ -0,0 +1,6 @@ +{ + "class" : { + "defaultBorderWidth" : "rgw 7/21/2022 15:38", + "defaultLayoutInset" : "rgw 7/21/2022 14:52" }, + "instance" : { + "initialize" : "ek 8/5/2022 14:15" } } diff --git a/packages/TelegramClient-UI.package/TCUInfoMessage.class/properties.json b/packages/TelegramClient-UI.package/TCUInfoMessage.class/properties.json new file mode 100644 index 000000000..1e336f9af --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUInfoMessage.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "ek 8/5/2022 14:14", + "instvars" : [ + ], + "name" : "TCUInfoMessage", + "pools" : [ + ], + "super" : "TCUMessage", + "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUInfoMessageWrapper.class/README.md b/packages/TelegramClient-UI.package/TCUInfoMessageWrapper.class/README.md new file mode 100644 index 000000000..8aa5c9ec7 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUInfoMessageWrapper.class/README.md @@ -0,0 +1 @@ +wraps TCUInfoMessage to align it in the center of chatMessageList \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUInfoMessageWrapper.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUInfoMessageWrapper.class/methodProperties.json new file mode 100644 index 000000000..0e4a66223 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUInfoMessageWrapper.class/methodProperties.json @@ -0,0 +1,5 @@ +{ + "class" : { + }, + "instance" : { + } } diff --git a/packages/TelegramClient-UI.package/TCUInfoMessageWrapper.class/properties.json b/packages/TelegramClient-UI.package/TCUInfoMessageWrapper.class/properties.json new file mode 100644 index 000000000..6a00f59c0 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUInfoMessageWrapper.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "js 7/31/2022 10:36", + "instvars" : [ + ], + "name" : "TCUInfoMessageWrapper", + "pools" : [ + ], + "super" : "TCUMessageWrapper", + "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/README.md b/packages/TelegramClient-UI.package/TCUMessage.class/README.md index eba9e2da9..1e871a395 100644 --- a/packages/TelegramClient-UI.package/TCUMessage.class/README.md +++ b/packages/TelegramClient-UI.package/TCUMessage.class/README.md @@ -1 +1 @@ -class with basic building instructions for the different message types \ No newline at end of file +abstract class for all types of messages that can be shown in a chat \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/class/newFrom..st b/packages/TelegramClient-UI.package/TCUMessage.class/class/newFrom..st index 1766e3db7..2189082d3 100644 --- a/packages/TelegramClient-UI.package/TCUMessage.class/class/newFrom..st +++ b/packages/TelegramClient-UI.package/TCUMessage.class/class/newFrom..st @@ -4,6 +4,8 @@ newFrom: aCoreMessage ^ (aCoreMessage class caseOf: { [TCCTextMessage] -> [TCUTextMessage]. [TCCPhotoMessage] -> [TCUPhotoMessage]. + [TCCAddMembersMessage] -> [TCUInfoMessage]. + [TCCDeleteMemberMessage] -> [TCUInfoMessage]. } otherwise: [TCUTextMessage]) basicNew messageModel: aCoreMessage; diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/handlesMouseDown..st b/packages/TelegramClient-UI.package/TCUMessage.class/instance/handlesMouseDown..st new file mode 100644 index 000000000..7103e2771 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessage.class/instance/handlesMouseDown..st @@ -0,0 +1,4 @@ +event handling +handlesMouseDown: anEvent + + ^ true \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/isUserMessage.st b/packages/TelegramClient-UI.package/TCUMessage.class/instance/isUserMessage.st new file mode 100644 index 000000000..550a01e2b --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessage.class/instance/isUserMessage.st @@ -0,0 +1,4 @@ +accessing +isUserMessage + + ^ false \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/mouseDown..st b/packages/TelegramClient-UI.package/TCUMessage.class/instance/mouseDown..st new file mode 100644 index 000000000..e480cb9a4 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessage.class/instance/mouseDown..st @@ -0,0 +1,4 @@ +event handling +mouseDown: anEvent + + ^ self messageModel chat selectedReplyToMessageId: self messageModel id \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/sender.st b/packages/TelegramClient-UI.package/TCUMessage.class/instance/sender.st deleted file mode 100644 index 5e92cf2f7..000000000 --- a/packages/TelegramClient-UI.package/TCUMessage.class/instance/sender.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -sender - - ^ self messageModel sender \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/senderId.st b/packages/TelegramClient-UI.package/TCUMessage.class/instance/senderId.st deleted file mode 100644 index ed1d95023..000000000 --- a/packages/TelegramClient-UI.package/TCUMessage.class/instance/senderId.st +++ /dev/null @@ -1,4 +0,0 @@ -accessing -senderId - - ^ self messageModel senderId \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUMessage.class/methodProperties.json index cbd6a2cd5..c66446a7b 100644 --- a/packages/TelegramClient-UI.package/TCUMessage.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUMessage.class/methodProperties.json @@ -1,27 +1,11 @@ { "class" : { - "defaultBottomMargin" : "JB 5/30/2021 11:27", - "defaultHeight" : "JB 5/29/2021 20:44", - "defaultLayoutInset" : "JB 5/29/2021 21:08", - "defaultMargins" : "JB 6/11/2021 18:36", - "defaultTextMorph" : "RK 6/23/2021 11:49", - "defaultWidth" : "r.s 7/31/2020 14:19", - "newFrom:" : "tom.richter 6/28/2021 15:08" }, + "defaultBottomMargin" : "aka 7/14/2022 16:20", + "defaultMargins" : "aka 7/14/2022 16:20", + "newFrom:" : "LR 7/23/2022 10:44" }, "instance" : { - "addContent" : "TR 6/20/2021 11:12", - "addDate" : "RK 6/23/2021 11:46", - "addSender" : "per 7/15/2021 13:22", - "addText" : "RK 6/23/2021 11:46", - "date" : "TR 6/20/2021 10:59", - "dateColor" : "JB 5/29/2021 21:05", - "initialize" : "TR 6/20/2021 11:12", - "initializeDefaults" : "JB 6/11/2021 18:23", - "isOutgoing" : "TR 6/20/2021 11:37", - "messageColor" : "JB 5/29/2021 21:06", - "messageDateText" : "JB 5/17/2021 10:04", - "messageModel" : "TR 6/20/2021 11:00", - "messageModel:" : "RK 8/4/2021 11:16", - "sender" : "TR 6/20/2021 10:59", - "senderId" : "8/5/2021 21:14:18", - "shrinkToContent" : "RK 8/4/2021 11:58", - "text" : "RK 6/29/2021 11:18" } } + "handlesMouseDown:" : "js 7/31/2022 11:13", + "isUserMessage" : "rgw 7/21/2022 14:07", + "messageModel" : "aka 7/14/2022 17:22", + "messageModel:" : "aka 7/14/2022 16:18", + "mouseDown:" : "js 7/31/2022 11:13" } } diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/properties.json b/packages/TelegramClient-UI.package/TCUMessage.class/properties.json index a832a281e..ed4847c78 100644 --- a/packages/TelegramClient-UI.package/TCUMessage.class/properties.json +++ b/packages/TelegramClient-UI.package/TCUMessage.class/properties.json @@ -4,7 +4,7 @@ ], "classvars" : [ ], - "commentStamp" : "RK 6/26/2021 11:39", + "commentStamp" : "js 7/18/2022 07:47", "instvars" : [ "messageModel" ], "name" : "TCUMessage", diff --git a/packages/TelegramClient-UI.package/TCUMessageWrapper.class/README.md b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/README.md new file mode 100644 index 000000000..963311f84 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/README.md @@ -0,0 +1 @@ +abstract class to wrap a message to use it in chatMessageList \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUChatMessageList.class/class/defaultMessageMargin.st b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/class/defaultMessageMargin.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUChatMessageList.class/class/defaultMessageMargin.st rename to packages/TelegramClient-UI.package/TCUMessageWrapper.class/class/defaultMessageMargin.st diff --git a/packages/TelegramClient-UI.package/TCUMessageWrapper.class/class/newFromMessage.withWidth..st b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/class/newFromMessage.withWidth..st new file mode 100644 index 000000000..bea9e4cd8 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/class/newFromMessage.withWidth..st @@ -0,0 +1,10 @@ +instance creation +newFromMessage: aMessage withWidth: aNumber + + ^ (self basicNew) + message: aMessage; + initialize; + width: aNumber; + height: aMessage height; + addMorphCentered: aMessage; + yourself \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/initialize.st b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/initialize.st new file mode 100644 index 000000000..8fd863899 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/initialize.st @@ -0,0 +1,9 @@ +initialization +initialize + + super initialize. + self + cellInset: self class defaultMessageMargin; + color: Color transparent; + borderWidth: 0; + yourself. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/message..st b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/message..st new file mode 100644 index 000000000..9e0251ebe --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/message..st @@ -0,0 +1,4 @@ +accessing +message: aMessage + + message := aMessage \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/message.st b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/message.st new file mode 100644 index 000000000..d808932ce --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/message.st @@ -0,0 +1,4 @@ +accessing +message + + ^ message \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/messageId.st b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/messageId.st new file mode 100644 index 000000000..829a6720d --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/instance/messageId.st @@ -0,0 +1,4 @@ +accessing +messageId + + ^ self message messageModel id \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessageWrapper.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/methodProperties.json new file mode 100644 index 000000000..05fbefbdc --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/methodProperties.json @@ -0,0 +1,9 @@ +{ + "class" : { + "defaultMessageMargin" : "js 7/31/2022 09:58", + "newFromMessage:withWidth:" : "js 7/31/2022 10:44" }, + "instance" : { + "initialize" : "js 7/31/2022 19:22", + "message" : "js 7/31/2022 09:56", + "message:" : "js 7/31/2022 09:57", + "messageId" : "js 7/31/2022 10:41" } } diff --git a/packages/TelegramClient-UI.package/TCUMessageWrapper.class/properties.json b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/properties.json new file mode 100644 index 000000000..e6bd65657 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUMessageWrapper.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "js 7/31/2022 10:35", + "instvars" : [ + "message" ], + "name" : "TCUMessageWrapper", + "pools" : [ + ], + "super" : "RectangleMorph", + "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUPhotoMessage.class/properties.json b/packages/TelegramClient-UI.package/TCUPhotoMessage.class/properties.json index 783f38fae..0fbcea783 100644 --- a/packages/TelegramClient-UI.package/TCUPhotoMessage.class/properties.json +++ b/packages/TelegramClient-UI.package/TCUPhotoMessage.class/properties.json @@ -10,5 +10,5 @@ "name" : "TCUPhotoMessage", "pools" : [ ], - "super" : "TCUMessage", + "super" : "TCUUserMessage", "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/README.md b/packages/TelegramClient-UI.package/TCUReplySnippet.class/README.md new file mode 100644 index 000000000..8ed7bc16e --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/README.md @@ -0,0 +1 @@ +Show the reply snippet on top of a referencing message. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/class/newWith.coloredIn..st b/packages/TelegramClient-UI.package/TCUReplySnippet.class/class/newWith.coloredIn..st new file mode 100644 index 000000000..33b923deb --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/class/newWith.coloredIn..st @@ -0,0 +1,8 @@ +instance creation +newWith: aReplyText coloredIn: aMessageColor + + ^ self basicNew + replyText: aReplyText; + messageColor: aMessageColor; + initialize; + yourself \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/handlesMouseDown..st b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/handlesMouseDown..st new file mode 100644 index 000000000..7103e2771 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/handlesMouseDown..st @@ -0,0 +1,4 @@ +event handling +handlesMouseDown: anEvent + + ^ true \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/initialize.st b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/initialize.st new file mode 100644 index 000000000..ffa0d570d --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/initialize.st @@ -0,0 +1,20 @@ +initialization +initialize + + | textMorph | + + super initialize. + + textMorph := TextMorph new contents: self replyText; + hResizing: #spaceFill; + color: TCUDefaultValues colorLightGray; + lock. + + self + color: self messageColor; + vResizing: #shrinkWrap; + hResizing: #shrinkWrap; + borderWidth: 0; + width: textMorph width. + + self addMorph: textMorph. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/messageColor..st b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/messageColor..st new file mode 100644 index 000000000..b3bc49a6f --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/messageColor..st @@ -0,0 +1,4 @@ +accessing +messageColor: aColor + + messageColor := aColor \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/messageColor.st b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/messageColor.st new file mode 100644 index 000000000..5f40703e1 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/messageColor.st @@ -0,0 +1,4 @@ +accessing +messageColor + + ^ messageColor \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/mouseDown..st b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/mouseDown..st new file mode 100644 index 000000000..041beb06d --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/mouseDown..st @@ -0,0 +1,4 @@ +event handling +mouseDown: anEvent + + self triggerEvent: #requestScroll. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/replyText..st b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/replyText..st new file mode 100644 index 000000000..e3bd4fbf1 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/replyText..st @@ -0,0 +1,4 @@ +accessing +replyText: aString + + replyText := aString \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/replyText.st b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/replyText.st new file mode 100644 index 000000000..767092a33 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/instance/replyText.st @@ -0,0 +1,4 @@ +accessing +replyText + + ^ replyText \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUReplySnippet.class/methodProperties.json new file mode 100644 index 000000000..bfeb11c7a --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/methodProperties.json @@ -0,0 +1,11 @@ +{ + "class" : { + "newWith:coloredIn:" : "LR 6/11/2022 12:48" }, + "instance" : { + "handlesMouseDown:" : "js 7/14/2022 16:42", + "initialize" : "aka 6/15/2022 11:58", + "messageColor" : "aka 6/15/2022 11:50", + "messageColor:" : "aka 6/15/2022 11:50", + "mouseDown:" : "aka 6/15/2022 11:56", + "replyText" : "aka 6/15/2022 11:49", + "replyText:" : "aka 6/15/2022 11:49" } } diff --git a/packages/TelegramClient-UI.package/TCUReplySnippet.class/properties.json b/packages/TelegramClient-UI.package/TCUReplySnippet.class/properties.json new file mode 100644 index 000000000..d8c46ee04 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUReplySnippet.class/properties.json @@ -0,0 +1,15 @@ +{ + "category" : "TelegramClient-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "aka 6/15/2022 12:06", + "instvars" : [ + "replyText", + "messageColor" ], + "name" : "TCUReplySnippet", + "pools" : [ + ], + "super" : "RectangleMorph", + "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUTelegram.class/instance/collapseOrExpand.st b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/collapseOrExpand.st new file mode 100644 index 000000000..f2eb53759 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/collapseOrExpand.st @@ -0,0 +1,6 @@ +drawing +collapseOrExpand + + "Overrides SystemWindow functionality that is unwanted for the TelegramClient" + + ^ self \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUTelegram.class/instance/delete.st b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/delete.st new file mode 100644 index 000000000..35575ab79 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/delete.st @@ -0,0 +1,5 @@ +initialization +delete + + self core freeClient. + super delete. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUTelegram.class/instance/expandToFullScreen.st b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/expandToFullScreen.st new file mode 100644 index 000000000..9bba1960f --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/expandToFullScreen.st @@ -0,0 +1,6 @@ +drawing +expandToFullScreen + + "Overrides SystemWindow functionality that is unwanted for the TelegramClient" + + ^ self \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUTelegram.class/instance/initialize.st b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/initialize.st index 40a3d49f9..985850ddc 100644 --- a/packages/TelegramClient-UI.package/TCUTelegram.class/instance/initialize.st +++ b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/initialize.st @@ -4,5 +4,6 @@ initialize super initialize. self openCenteredInWorld; + setLabel: 'TelegramClient'; color: Color white; addAuthenticationWindow. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUTelegram.class/instance/openCurrentWindow.st b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/openCurrentWindow.st index ea8544bd6..76f3ea28f 100644 --- a/packages/TelegramClient-UI.package/TCUTelegram.class/instance/openCurrentWindow.st +++ b/packages/TelegramClient-UI.package/TCUTelegram.class/instance/openCurrentWindow.st @@ -3,4 +3,5 @@ openCurrentWindow self bounds: (Rectangle center: self center extent: self currentWindow extent); + position: Display extent - self extent // 2; addMorphCentered: self currentWindow. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUTelegram.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUTelegram.class/methodProperties.json index cbb8b709f..417050c08 100644 --- a/packages/TelegramClient-UI.package/TCUTelegram.class/methodProperties.json +++ b/packages/TelegramClient-UI.package/TCUTelegram.class/methodProperties.json @@ -6,12 +6,15 @@ "registerInWorldMenu" : "js 8/2/2020 14:28" }, "instance" : { "addAuthenticationWindow" : "RS 7/17/2021 12:47", - "addMainWindow" : "RS 7/17/2021 12:47", + "addMainWindow" : "ek 6/1/2022 12:24", + "collapseOrExpand" : "js 6/21/2022 11:24", "core" : "js 5/31/2020 20:04", "core:" : "js 5/31/2020 20:04", "currentWindow" : "r.s 7/13/2020 17:11", "currentWindow:" : "r.s 7/13/2020 17:11", - "initialize" : "RS 7/31/2021 15:17", + "delete" : "js 6/21/2022 11:26", + "expandToFullScreen" : "js 6/21/2022 11:27", + "initialize" : "js 7/14/2022 16:41", "logInCompleted" : "RS 7/17/2021 12:30", "loggedOut" : "RS 7/17/2021 12:25", - "openCurrentWindow" : "JB 7/19/2021 16:37" } } + "openCurrentWindow" : "js 6/21/2022 11:31" } } diff --git a/packages/TelegramClient-UI.package/TCUTelegram.class/properties.json b/packages/TelegramClient-UI.package/TCUTelegram.class/properties.json index 92bcdaecf..4bcd73a3e 100644 --- a/packages/TelegramClient-UI.package/TCUTelegram.class/properties.json +++ b/packages/TelegramClient-UI.package/TCUTelegram.class/properties.json @@ -11,5 +11,5 @@ "name" : "TCUTelegram", "pools" : [ ], - "super" : "Morph", + "super" : "SystemWindow", "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUTextMessage.class/properties.json b/packages/TelegramClient-UI.package/TCUTextMessage.class/properties.json index a13852132..25d290b55 100644 --- a/packages/TelegramClient-UI.package/TCUTextMessage.class/properties.json +++ b/packages/TelegramClient-UI.package/TCUTextMessage.class/properties.json @@ -10,5 +10,5 @@ "name" : "TCUTextMessage", "pools" : [ ], - "super" : "TCUMessage", + "super" : "TCUUserMessage", "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/README.md b/packages/TelegramClient-UI.package/TCUUserMessage.class/README.md new file mode 100644 index 000000000..5856f1536 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/README.md @@ -0,0 +1 @@ +class with basic building instructions for the different message that are created by a user \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/class/defaultHeight.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultHeight.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/class/defaultHeight.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultHeight.st diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/class/defaultLayoutInset.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultLayoutInset.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/class/defaultLayoutInset.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultLayoutInset.st diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultPhotoSize.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultPhotoSize.st new file mode 100644 index 000000000..53b490578 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultPhotoSize.st @@ -0,0 +1,4 @@ +default values +defaultPhotoSize + + ^ 80 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/class/defaultTextMorph.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultTextMorph.st similarity index 90% rename from packages/TelegramClient-UI.package/TCUMessage.class/class/defaultTextMorph.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultTextMorph.st index 52814e445..b2cf84619 100644 --- a/packages/TelegramClient-UI.package/TCUMessage.class/class/defaultTextMorph.st +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultTextMorph.st @@ -4,5 +4,5 @@ defaultTextMorph "hResizing is not set here and duplicated in the other setters, as it has to be set after the content is added" ^ TextMorph new - lock; + readOnly: true; yourself \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/class/defaultWidth.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultWidth.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/class/defaultWidth.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/class/defaultWidth.st diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/addContent.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addContent.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/addContent.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addContent.st diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/addDate.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addDate.st similarity index 78% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/addDate.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addDate.st index b635b9228..c276db5c5 100644 --- a/packages/TelegramClient-UI.package/TCUMessage.class/instance/addDate.st +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addDate.st @@ -4,5 +4,6 @@ addDate self addMorphBack: (self class defaultTextMorph contents: self messageDateText; hResizing: #spaceFill; - color: self dateColor; + color: self secondaryColor; + lock; yourself). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addPaddingMorphs.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addPaddingMorphs.st new file mode 100644 index 000000000..b47b3fcb7 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addPaddingMorphs.st @@ -0,0 +1,15 @@ +constructing +addPaddingMorphs + + self addMorphBack: (RectangleMorph new + color: self messageColor; + borderWidth: 0; + height: 5). + self addMorphBack: (RectangleMorph new + color: self secondaryColor; + borderWidth: 0; + height: 2). + self addMorphBack: (RectangleMorph new + color: self messageColor; + borderWidth: 0; + height: 5). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addReplySnippet.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addReplySnippet.st new file mode 100644 index 000000000..7336336f5 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addReplySnippet.st @@ -0,0 +1,10 @@ +constructing +addReplySnippet + + | replySnippet | + + replySnippet := TCUReplySnippet newWith: (self messageModel replyText) coloredIn: self messageColor. + replySnippet when: #requestScroll send: #triggerRequestScroll to: self. + + self addMorph: (replySnippet). + self addPaddingMorphs. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/addSender.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addSender.st similarity index 83% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/addSender.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addSender.st index d220ebcbb..26c4f231b 100644 --- a/packages/TelegramClient-UI.package/TCUMessage.class/instance/addSender.st +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addSender.st @@ -4,6 +4,7 @@ addSender self addMorphBack: (self class defaultTextMorph contents: self messageModel senderName; hResizing: #spaceFill; - color: self dateColor; + color: self secondaryColor; margins: self class defaultMargins; + lock; yourself). \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/addText.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addText.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/addText.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/addText.st diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/answeredMessageReceived.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/answeredMessageReceived.st new file mode 100644 index 000000000..edf0fd77d --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/answeredMessageReceived.st @@ -0,0 +1,4 @@ +event handling +answeredMessageReceived + + self updateReplySnippet \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/date.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/date.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/date.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/date.st diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/initialize.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/initialize.st similarity index 57% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/initialize.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/initialize.st index 0ce66e870..cc0de6ad1 100644 --- a/packages/TelegramClient-UI.package/TCUMessage.class/instance/initialize.st +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/initialize.st @@ -5,7 +5,4 @@ initialize self initializeDefaults; - addSender; - addContent; - addDate; - shrinkToContent. \ No newline at end of file + initializeSubmorphs \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/initializeDefaults.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/initializeDefaults.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/initializeDefaults.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/initializeDefaults.st diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/initializeSubmorphs.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/initializeSubmorphs.st new file mode 100644 index 000000000..a38254d14 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/initializeSubmorphs.st @@ -0,0 +1,10 @@ +initialization +initializeSubmorphs + + self messageModel isReply ifTrue: [self addReplySnippet]. + + self + addSender; + addContent; + addDate; + shrinkToContent. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/isOutgoing.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/isOutgoing.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/isOutgoing.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/isOutgoing.st diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/isUserMessage.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/isUserMessage.st new file mode 100644 index 000000000..c9ac98a8a --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/isUserMessage.st @@ -0,0 +1,4 @@ +accessing +isUserMessage + + ^ true \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/messageColor.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/messageColor.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/messageColor.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/messageColor.st diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/messageDateText.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/messageDateText.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/messageDateText.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/messageDateText.st diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/messageModel..st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/messageModel..st new file mode 100644 index 000000000..372cdb298 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/messageModel..st @@ -0,0 +1,5 @@ +accessing +messageModel: aCoreMessage + + super messageModel: aCoreMessage. + messageModel when: #answeredMessageReceived send: #answeredMessageReceived to: self. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/dateColor.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/secondaryColor.st similarity index 88% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/dateColor.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/secondaryColor.st index 54c963179..387102547 100644 --- a/packages/TelegramClient-UI.package/TCUMessage.class/instance/dateColor.st +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/secondaryColor.st @@ -1,5 +1,5 @@ drawing -dateColor +secondaryColor ^ self isOutgoing ifTrue: [TCUDefaultValues colorPottersClay] diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/shrinkToContent.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/shrinkToContent.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/shrinkToContent.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/shrinkToContent.st diff --git a/packages/TelegramClient-UI.package/TCUMessage.class/instance/text.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/text.st similarity index 100% rename from packages/TelegramClient-UI.package/TCUMessage.class/instance/text.st rename to packages/TelegramClient-UI.package/TCUUserMessage.class/instance/text.st diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/triggerRequestScroll.st b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/triggerRequestScroll.st new file mode 100644 index 000000000..25b7644a0 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/instance/triggerRequestScroll.st @@ -0,0 +1,4 @@ +event handling +triggerRequestScroll + + self triggerEvent: #requestScroll. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUUserMessage.class/methodProperties.json new file mode 100644 index 000000000..e170357fd --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/methodProperties.json @@ -0,0 +1,28 @@ +{ + "class" : { + "defaultHeight" : "JB 5/29/2021 20:44", + "defaultLayoutInset" : "LR 6/11/2022 11:40", + "defaultPhotoSize" : "JS 6/11/2022 09:55", + "defaultTextMorph" : "rgw 6/16/2022 15:47", + "defaultWidth" : "r.s 7/31/2020 14:19" }, + "instance" : { + "addContent" : "TR 6/20/2021 11:12", + "addDate" : "js 7/4/2022 15:24", + "addPaddingMorphs" : "ek 8/5/2022 14:38", + "addReplySnippet" : "ek 8/5/2022 14:38", + "addSender" : "js 7/4/2022 15:24", + "addText" : "RK 6/23/2021 11:46", + "answeredMessageReceived" : "rgw 6/2/2022 10:29", + "date" : "TR 6/20/2021 10:59", + "initialize" : "LR 6/11/2022 13:01", + "initializeDefaults" : "ek 8/5/2022 14:43", + "initializeSubmorphs" : "rgw 6/2/2022 10:26", + "isOutgoing" : "TR 6/20/2021 11:37", + "isUserMessage" : "rgw 7/21/2022 14:08", + "messageColor" : "JB 5/29/2021 21:06", + "messageDateText" : "JB 5/17/2021 10:04", + "messageModel:" : "ek 8/5/2022 14:44", + "secondaryColor" : "rgw 5/12/2022 15:54", + "shrinkToContent" : "LR 6/11/2022 12:38", + "text" : "RK 6/29/2021 11:18", + "triggerRequestScroll" : "ek 8/5/2022 14:46" } } diff --git a/packages/TelegramClient-UI.package/TCUUserMessage.class/properties.json b/packages/TelegramClient-UI.package/TCUUserMessage.class/properties.json new file mode 100644 index 000000000..03a81b2d5 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessage.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "js 7/18/2022 07:51", + "instvars" : [ + ], + "name" : "TCUUserMessage", + "pools" : [ + ], + "super" : "TCUMessage", + "type" : "normal" } diff --git a/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/README.md b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/README.md new file mode 100644 index 000000000..20a8142e2 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/README.md @@ -0,0 +1 @@ +wraps TCUMessage to add profile photo in group chats and align the message depending on senderType \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/class/defaultPhotoSize.st b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/class/defaultPhotoSize.st new file mode 100644 index 000000000..ffb4ba783 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/class/defaultPhotoSize.st @@ -0,0 +1,4 @@ +default values +defaultPhotoSize + + ^ 40 \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/class/newFromMessage.withWidth..st b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/class/newFromMessage.withWidth..st new file mode 100644 index 000000000..cff19c9ec --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/class/newFromMessage.withWidth..st @@ -0,0 +1,9 @@ +instance creation +newFromMessage: aMessage withWidth: aNumber + + ^ (self basicNew) + message: aMessage; + initialize; + width: aNumber; + height: aMessage height; + yourself \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/instance/addProfilePhoto.st b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/instance/addProfilePhoto.st new file mode 100644 index 000000000..e85c82708 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/instance/addProfilePhoto.st @@ -0,0 +1,13 @@ +constructing +addProfilePhoto + + | promise morph | + self message messageModel senderUser hasPhoto ifTrue: [ + promise := self message messageModel core imageStore getFormPromiseFor: self message messageModel senderUser photoId. + promise >>= [:aForm | + morph := (aForm scaledToSize: self class defaultPhotoSize) asMorph. + self addMorphFront: morph. + ] + ] ifFalse: [ + self addMorphFront: (TCUDefaultValues defaultProfilePhoto scaledToSize: self class defaultPhotoSize) asMorph. + ]. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/instance/initialize.st b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/instance/initialize.st new file mode 100644 index 000000000..d24b69b4b --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/instance/initialize.st @@ -0,0 +1,18 @@ +initialization +initialize + + super initialize. + self + cellInset: self class defaultMessageMargin; + color: Color transparent; + layoutPolicy: TableLayout new; + cellPositioning: #bottomCenter; + borderWidth: 0; + yourself. + + self message isOutgoing + ifTrue: [ self listDirection: #rightToLeft ] + ifFalse: [ self listDirection: #leftToRight ]. + + self addMorph: self message. + self message messageModel chat isGroup ifTrue: [self addProfilePhoto]. \ No newline at end of file diff --git a/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/methodProperties.json b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/methodProperties.json new file mode 100644 index 000000000..cdcd5fc2e --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/methodProperties.json @@ -0,0 +1,7 @@ +{ + "class" : { + "defaultPhotoSize" : "JS 6/11/2022 11:32", + "newFromMessage:withWidth:" : "js 7/31/2022 10:45" }, + "instance" : { + "addProfilePhoto" : "rgw 7/24/2022 14:48", + "initialize" : "js 7/31/2022 10:06" } } diff --git a/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/properties.json b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/properties.json new file mode 100644 index 000000000..b53179858 --- /dev/null +++ b/packages/TelegramClient-UI.package/TCUUserMessageWrapper.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClient-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "JS 6/11/2022 11:50", + "instvars" : [ + ], + "name" : "TCUUserMessageWrapper", + "pools" : [ + ], + "super" : "TCUMessageWrapper", + "type" : "normal" } diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/setUp.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/setUp.st index 045616bfe..bf22bf2c2 100644 --- a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/setUp.st +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/setUp.st @@ -1,17 +1,20 @@ running setUp + | message | super setUp. self chat: (TCCChat new id: 1337; core: self core; yourself). + self core chatsHandler chats add: self chat. 1 to: 5 do: [:aNumber | - self chat messages add: (TCCTextMessage new + message := (TCCTextMessage new text: aNumber asString; chat: self chat; userId: aNumber * 3; id: aNumber * 4; - date: (DateAndTime fromUnixTime: aNumber * 60))]. \ No newline at end of file + date: (DateAndTime fromUnixTime: aNumber * 60)). + self chat addNewestMessage: message.] \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddMessage.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddMessage.st new file mode 100644 index 000000000..353c9d22f --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddMessage.st @@ -0,0 +1,8 @@ +testing +testAddMessage + + | message | + message := TCCTextMessage new id: 13. + self chat addMessage: message. + self assert: 5 equals: self chat messages size. + self assert: message equals: (self chat getMessageById: 13) \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddNewestMessage.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddNewestMessage.st index 7f9f3cb7b..89b78652e 100644 --- a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddNewestMessage.st +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddNewestMessage.st @@ -1,5 +1,7 @@ testing testAddNewestMessage - self chat addNewestMessage: (TCCTextMessage new text: 'test'). + self chat addNewestMessage: (TCCTextMessage new + text: 'test'; + date: DateAndTime today). self assert: 'test' equals: self chat messages first asText. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddOldestMessage.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddOldestMessage.st index d5e80954c..3caa817dc 100644 --- a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddOldestMessage.st +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testAddOldestMessage.st @@ -1,5 +1,8 @@ testing testAddOldestMessage - self chat addOldestMessage: (TCCTextMessage new text: 'test'). + self chat addOldestMessage: (TCCTextMessage new + text: 'test'; + date: (DateAndTime fromUnixTime: 0) + ). self assert: 'test' equals: self chat messages last asText. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testChatCorrectlyConstructedFromJson.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testChatCorrectlyConstructedFromJson.st new file mode 100644 index 000000000..1eb6f985e --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testChatCorrectlyConstructedFromJson.st @@ -0,0 +1,14 @@ +testing +testChatCorrectlyConstructedFromJson + + | mockChat | + + mockChat := TCCChat newFromChatEvent: (TCTMMocks mockChatEvent at: 'chat'). + + self assert: 'MockChat' equals: mockChat title. + self assert: TCTMMocks mockBasicGroupChat id equals: mockChat id. + self assert: true equals: mockChat canSendMessages. + self assert: false equals: mockChat muted. + self assert: TCTMMocks mockImageId equals: mockChat photoId. + self assert: true equals: mockChat hasPhoto. + self assert: false equals: mockChat isPinned. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testChatNoPhotoCorrectlyConstructedFromJson.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testChatNoPhotoCorrectlyConstructedFromJson.st new file mode 100644 index 000000000..ad6eff63e --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testChatNoPhotoCorrectlyConstructedFromJson.st @@ -0,0 +1,12 @@ +testing +testChatNoPhotoCorrectlyConstructedFromJson + + | mockChat | + + mockChat := TCCChat newFromChatEvent: (TCTMMocks mockChatEventNoPhoto at: 'chat'). + + self assert: 'MockChat' equals: mockChat title. + self assert: TCTMMocks mockBasicGroupChat id equals: mockChat id. + self assert: true equals: mockChat canSendMessages. + self assert: false equals: mockChat muted. + self assert: false equals: mockChat hasPhoto. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testGetMessageById.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testGetMessageById.st new file mode 100644 index 000000000..8de5fbc24 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testGetMessageById.st @@ -0,0 +1,7 @@ +testing +testGetMessageById + + | message | + + message := self chat getMessageById: 16. + self assert: '4' equals: message asText \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testHandleMessageRequest.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testHandleMessageRequest.st new file mode 100644 index 000000000..518cff691 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testHandleMessageRequest.st @@ -0,0 +1,13 @@ +testing +testHandleMessageRequest + + | messageRequest receiver | + self mockTeleClient onRequestType: 'getChatHistory' respond: (TCTMMocks mockChatHistoryJsonContainingMessageId: 1 inChat: self chat id). + receiver := TCTMFunctionCalledVerifier new. + messageRequest := TCCMessageRequest new messageId: 1; + completionReceiver: receiver; + completionMessage: #call:. + self chat handleMessageRequest: messageRequest. + 1 seconds wait. + self assert: (self chat messageIds anySatisfy: [:id| id = 1]). + self assert: receiver isCalled. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testHandleMessageRequestAlreadyLoaded.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testHandleMessageRequestAlreadyLoaded.st new file mode 100644 index 000000000..47aa20c04 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testHandleMessageRequestAlreadyLoaded.st @@ -0,0 +1,10 @@ +testing +testHandleMessageRequestAlreadyLoaded + + | messageRequest receiver | + receiver := TCTMFunctionCalledVerifier new. + messageRequest := TCCMessageRequest new messageId: 4; + completionReceiver: receiver; + completionMessage: #call:. + self chat handleMessageRequest: messageRequest. + self assert: receiver isCalled. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsFirstMessageOfDay.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsFirstMessageOfDay.st new file mode 100644 index 000000000..e70967a78 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsFirstMessageOfDay.st @@ -0,0 +1,10 @@ +testing +testIsFirstMessageOfDay + + | messageYesterday messageToday | + messageYesterday := TCTMMocks mockTextMessageWith: self core withDate: (DateAndTime yesterday). + messageToday := TCTMMocks mockTextMessageWith: self core withDate: (DateAndTime today). + self chat addNewestMessage: messageYesterday. + self chat addNewestMessage: messageToday. + self assert: messageToday isFirstMessageOfDay. + self assert: messageYesterday isLastMessageOfDay. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsLastMessageOfDay.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsLastMessageOfDay.st new file mode 100644 index 000000000..a651ddbf3 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsLastMessageOfDay.st @@ -0,0 +1,10 @@ +testing +testIsLastMessageOfDay + + | messageYesterday messageToday | + messageYesterday := TCTMMocks mockTextMessageWith: self core withDate: (DateAndTime yesterday). + messageToday := TCTMMocks mockTextMessageWith: self core withDate: (DateAndTime today). + self chat addOldestMessage: messageToday. + self chat addOldestMessage: messageYesterday. + self assert: messageYesterday isLastMessageOfDay. + self assert: messageToday isFirstMessageOfDay. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsNotFirstMessageOfDay.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsNotFirstMessageOfDay.st new file mode 100644 index 000000000..78a155e2e --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsNotFirstMessageOfDay.st @@ -0,0 +1,10 @@ +testing +testIsNotFirstMessageOfDay + + | messageLaterToday messageToday | + messageToday := TCTMMocks mockTextMessageWith: self core withDate: (DateAndTime today). + messageLaterToday := TCTMMocks mockTextMessageWith: self core withDate: (DateAndTime today + 1). + self chat addNewestMessage: messageToday. + self chat addNewestMessage: messageLaterToday. + self deny: messageLaterToday isFirstMessageOfDay. + self deny: messageToday isLastMessageOfDay. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsNotLastMessageOfDay.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsNotLastMessageOfDay.st new file mode 100644 index 000000000..85badc490 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testIsNotLastMessageOfDay.st @@ -0,0 +1,10 @@ +testing +testIsNotLastMessageOfDay + + | messageLaterToday messageToday | + messageToday := TCTMMocks mockTextMessageWith: self core withDate: (DateAndTime today). + messageLaterToday := TCTMMocks mockTextMessageWith: self core withDate: (DateAndTime today + 1). + self chat addOldestMessage: messageLaterToday. + self chat addOldestMessage: messageToday. + self deny: messageToday isLastMessageOfDay. + self deny: messageLaterToday isFirstMessageOfDay. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testLastMessage.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testLastMessage.st index b54be034d..93798e31b 100644 --- a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testLastMessage.st +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testLastMessage.st @@ -1,5 +1,5 @@ testing testLastMessage - self chat lastMessage: 'test'. - self assert: 'test' equals: self chat lastMessage. \ No newline at end of file + self chat lastMessageText: 'test'. + self assert: 'test' equals: self chat lastMessageText. diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testLastMessageDate.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testLastMessageDate.st new file mode 100644 index 000000000..6e5802b72 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testLastMessageDate.st @@ -0,0 +1,6 @@ +testing +testLastMessageDate + + | lastMessageDate | + lastMessageDate := self chat lastMessageDate. + self assert: (DateAndTime fromUnixTime: 5 * 60) equals: lastMessageDate. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testMessages.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testMessages.st index cbf914e49..551aae346 100644 --- a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testMessages.st +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testMessages.st @@ -1,9 +1,18 @@ testing testMessages - | collection | + | message1 message2 messageIds messages | + + message1 := TCCMessage new id: 1. + message2 := TCCMessage new id: 2. + messageIds := OrderedCollection newFrom: {message1 id. message2 id}. + messages := OrderedCollection newFrom: {message1. message2}. - collection := OrderedCollection newFrom: {TCCMessage new. TCCMessage new}. + self chat messageIds: messageIds. + self chat addMessage: message1. + self chat addMessage: message2. - self chat messages: collection. - self assert: collection equals: self chat messages. \ No newline at end of file + self assert: messageIds equals: self chat messageIds. + self assert: message1 equals: (self chat messageDictionary at: message1 id) value. + self assert: message2 equals: (self chat messageDictionary at: message2 id) value. + self assert: messages equals: self chat messages. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testOldestLoadedMessageDate.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testOldestLoadedMessageDate.st new file mode 100644 index 000000000..eb5126181 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testOldestLoadedMessageDate.st @@ -0,0 +1,6 @@ +testing +testOldestLoadedMessageDate + + | oldestMessageDate | + oldestMessageDate := self chat oldestLoadedMessageDate. + self assert: (DateAndTime fromUnixTime: 60) equals: oldestMessageDate. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testStillRequestedMessages.st b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testStillRequestedMessages.st index eda441857..2dacd5d7c 100644 --- a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testStillRequestedMessages.st +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/instance/testStillRequestedMessages.st @@ -8,5 +8,5 @@ testStillRequestedMessages self chat requestMessages: 20. self assert: 20 equals: self chat stillRequestedMessages. - self chat addOldestMessage: TCCMessage new. + self chat addOldestMessage: (TCCMessage new date: (DateAndTime fromUnixTime: 0)). self assert: 19 equals: self chat stillRequestedMessages. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/methodProperties.json b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/methodProperties.json index 43e6f0881..484f07d4b 100644 --- a/packages/TelegramClientTests-Core.package/TCTCChatTests.class/methodProperties.json +++ b/packages/TelegramClientTests-Core.package/TCTCChatTests.class/methodProperties.json @@ -4,17 +4,29 @@ "instance" : { "chat" : "LL 8/2/2020 20:25", "chat:" : "LL 8/2/2020 20:26", - "setUp" : "tom.richter 7/25/2021 11:24", - "testAddNewestMessage" : "RS 7/31/2021 15:45", - "testAddOldestMessage" : "TR 6/22/2021 09:49", + "setUp" : "aka 7/10/2022 12:22", + "testAddMessage" : "rgw 8/5/2022 09:47", + "testAddNewestMessage" : "aka 7/10/2022 12:30", + "testAddOldestMessage" : "aka 7/10/2022 12:31", + "testChatCorrectlyConstructedFromJson" : "js 6/18/2022 10:46", + "testChatNoPhotoCorrectlyConstructedFromJson" : "rgw 6/2/2022 16:17", + "testGetMessageById" : "rgw 8/5/2022 09:41", + "testHandleMessageRequest" : "aka 6/15/2022 11:54", + "testHandleMessageRequestAlreadyLoaded" : "aka 6/15/2022 11:59", "testId" : "pk 8/5/2021 17:13", - "testLastMessage" : "per 5/21/2021 16:31", - "testMessage" : "pk 8/5/2021 17:06", - "testMessages" : "per 5/21/2021 16:30", + "testIsFirstMessageOfDay" : "aka 7/14/2022 15:51", + "testIsLastMessageOfDay" : "aka 7/14/2022 15:52", + "testIsNotFirstMessageOfDay" : "ek 8/5/2022 14:59", + "testIsNotLastMessageOfDay" : "ek 8/5/2022 15:01", + "testLastMessage" : "aka 7/10/2022 11:12", + "testLastMessageDate" : "aka 7/10/2022 11:42", + "testMessage" : "js 7/31/2022 10:31", + "testMessages" : "ek 8/5/2022 15:04", "testMessagesSize" : "per 5/21/2021 16:30", "testNullId" : "pk 8/5/2021 17:13", "testNullMessages" : "js 8/2/2020 21:17", + "testOldestLoadedMessageDate" : "aka 7/10/2022 11:40", "testPosition" : "per 5/21/2021 16:30", - "testStillRequestedMessages" : "per 5/21/2021 16:29", + "testStillRequestedMessages" : "aka 7/10/2022 12:32", "testTitle" : "per 5/21/2021 16:29", "testWaitingForUpdate" : "js 8/2/2020 20:58" } } diff --git a/packages/TelegramClientTests-Core.package/TCTCClientTests.class/instance/testClientConstants.st b/packages/TelegramClientTests-Core.package/TCTCClientTests.class/instance/testClientConstants.st index ff856be5e..515215748 100644 --- a/packages/TelegramClientTests-Core.package/TCTCClientTests.class/instance/testClientConstants.st +++ b/packages/TelegramClientTests-Core.package/TCTCClientTests.class/instance/testClientConstants.st @@ -2,5 +2,4 @@ testing testClientConstants {TCCLinuxClient . TCCWindowsClient . TCCMacClient} do: [:aClientClass | - self assert: aClientClass downloadUrl isString. - self assert: aClientClass fileName isString]. \ No newline at end of file + self assert: aClientClass downloadUrl isString]. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCClientTests.class/methodProperties.json b/packages/TelegramClientTests-Core.package/TCTCClientTests.class/methodProperties.json index 14caa67c6..7168947fc 100644 --- a/packages/TelegramClientTests-Core.package/TCTCClientTests.class/methodProperties.json +++ b/packages/TelegramClientTests-Core.package/TCTCClientTests.class/methodProperties.json @@ -2,5 +2,5 @@ "class" : { }, "instance" : { - "testClientConstants" : "js 8/2/2020 21:34", + "testClientConstants" : "rgw 7/16/2022 18:44", "testClientDestroysHandle" : "RS 7/31/2021 16:03" } } diff --git a/packages/TelegramClientTests-Core.package/TCTCCoreResource.class/instance/isCoreReadyForSetup.st b/packages/TelegramClientTests-Core.package/TCTCCoreResource.class/instance/isCoreReadyForSetup.st index 46a9ff6fe..da0955b42 100644 --- a/packages/TelegramClientTests-Core.package/TCTCCoreResource.class/instance/isCoreReadyForSetup.st +++ b/packages/TelegramClientTests-Core.package/TCTCCoreResource.class/instance/isCoreReadyForSetup.st @@ -1,4 +1,4 @@ controlling isCoreReadyForSetup - ^ self core authenticationHandler isAwaitingPhoneNumber or: [self core authenticationHandler isAuthorizationStateReady] \ No newline at end of file + ^ self core authenticationHandler isAwaitingPhoneNumber or: [self core authenticationHandler isAuthorizationStateReady or: [self core authenticationHandler isAwaitingAuthPassword]] \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCCoreResource.class/methodProperties.json b/packages/TelegramClientTests-Core.package/TCTCCoreResource.class/methodProperties.json index 5ed090af8..fd2e414bb 100644 --- a/packages/TelegramClientTests-Core.package/TCTCCoreResource.class/methodProperties.json +++ b/packages/TelegramClientTests-Core.package/TCTCCoreResource.class/methodProperties.json @@ -6,6 +6,6 @@ "core:" : "TR 6/13/2021 14:53", "ensureLoggedIn" : "RS 7/31/2021 15:59", "ensureLoggedOut" : "RS 7/31/2021 15:59", - "isCoreReadyForSetup" : "JB 8/4/2021 00:04", + "isCoreReadyForSetup" : "rgw 7/1/2022 10:46", "setUp" : "RS 8/3/2021 10:34", "tearDown" : "JB 8/4/2021 00:04" } } diff --git a/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageAddMembersCorrectlyConstructedFromJson.st b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageAddMembersCorrectlyConstructedFromJson.st new file mode 100644 index 000000000..7e0435098 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageAddMembersCorrectlyConstructedFromJson.st @@ -0,0 +1,12 @@ +testing +testMessageAddMembersCorrectlyConstructedFromJson + + | chat addMembersEvent addMembersMessage | + + chat := TCTMMocks mockBasicGroupChat. + addMembersEvent := TCTMMocks mockMessageAddMembersFrom: {TCTMMocks mockUser1 id} to: chat id. + addMembersMessage := TCCMessage newFromMessageEvent: addMembersEvent in: chat with: self core. + + self assert: addMembersMessage members equals: {TCTMMocks mockUser1 id}. + self assert: 'Added: Test User' equals: addMembersMessage asSnippet. + self assert: 'Added: Test User' equals: addMembersMessage asText. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageCorrectlyConstructedFromJson.st b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageCorrectlyConstructedFromJson.st index b5791b7bb..47845f6e8 100644 --- a/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageCorrectlyConstructedFromJson.st +++ b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageCorrectlyConstructedFromJson.st @@ -10,4 +10,5 @@ testMessageCorrectlyConstructedFromJson self assert: TCTMMocks mockMessageId equals: message id. self assert: TCTMMocks mockMessageDate equals: message date. self assert: false equals: message isOutgoing. - self assert: TCTMMocks mockUser1 id equals: message userId. \ No newline at end of file + self assert: TCTMMocks mockUser1 id equals: message userId. + self assert: 0 equals: message replyToMessageId. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageDeleteMemberCorrectlyConstructedFromJson.st b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageDeleteMemberCorrectlyConstructedFromJson.st new file mode 100644 index 000000000..c6a1c5ef0 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageDeleteMemberCorrectlyConstructedFromJson.st @@ -0,0 +1,12 @@ +testing +testMessageDeleteMemberCorrectlyConstructedFromJson + + | chat deleteMemberEvent deleteMemberMessage | + + chat := TCTMMocks mockBasicGroupChat. + deleteMemberEvent := TCTMMocks mockMessageDeleteMemberWith: TCTMMocks mockUser1 id from: chat id. + deleteMemberMessage := TCCMessage newFromMessageEvent: deleteMemberEvent in: chat with: self core. + + self assert: deleteMemberMessage member equals: (TCTMMocks mockUser1 id). + self assert: 'Removed: Test User' equals: deleteMemberMessage asSnippet. + self assert: 'Removed: Test User' equals: deleteMemberMessage asText. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageIsReply.st b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageIsReply.st new file mode 100644 index 000000000..cd153b102 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageIsReply.st @@ -0,0 +1,10 @@ +testing +testMessageIsReply + + | chat replyMessage originalMessage | + chat := TCTMMocks mockPrivateChat. + originalMessage := TCTMMocks mockTextMessageWith: self core inChat: chat. + replyMessage := TCTMMocks mockTextReplyMessageWith: self core inChat: chat. + + self deny: originalMessage isReply. + self assert: replyMessage isReply. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageReplySnippetTruncates.st b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageReplySnippetTruncates.st new file mode 100644 index 000000000..4235d9ebe --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageReplySnippetTruncates.st @@ -0,0 +1,8 @@ +testing +testMessageReplySnippetTruncates + + | message | + message := TCTMMocks mockTextMessageWith: self core. + message text: ((String new: 250) atAllPut: $A). + + self assert: message asReplySnippet size - message senderName size - 4 <= (TCCMessage maxReplySnippetSize). diff --git a/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageReplyText.st b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageReplyText.st new file mode 100644 index 000000000..f8e80f325 --- /dev/null +++ b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/instance/testMessageReplyText.st @@ -0,0 +1,12 @@ +testing +testMessageReplyText + + | chat replyMessage originalMessage | + chat := (TCTMMocks mockPrivateChat core: self core). + originalMessage := TCTMMocks mockTextMessageWith: self core inChat: chat. + replyMessage := TCTMMocks mockTextReplyMessageWith: self core inChat: chat. + chat + addNewestMessage: replyMessage; + addNewestMessage: originalMessage. + + self assert: replyMessage replyText equals: originalMessage asReplySnippet. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/methodProperties.json b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/methodProperties.json index f6cd633aa..d01d14f70 100644 --- a/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/methodProperties.json +++ b/packages/TelegramClientTests-Core.package/TCTCMessageTests.class/methodProperties.json @@ -2,15 +2,20 @@ "class" : { }, "instance" : { - "testMessageCorrectlyConstructedFromJson" : "tom.richter 7/25/2021 11:26", + "testMessageAddMembersCorrectlyConstructedFromJson" : "ek 8/5/2022 15:07", + "testMessageCorrectlyConstructedFromJson" : "js 7/31/2022 10:28", + "testMessageDeleteMemberCorrectlyConstructedFromJson" : "ek 8/5/2022 15:08", "testMessageHasTextRepresentation" : "tom.richter 6/26/2021 21:06", + "testMessageIsReply" : "ek 8/5/2022 15:09", + "testMessageReplySnippetTruncates" : "ek 8/5/2022 15:10", + "testMessageReplyText" : "rgw 8/5/2022 09:44", "testMessageShouldNotNotify" : "RS 7/17/2021 10:53", "testMessageShouldNotify" : "RS 7/17/2021 10:53", - "testMessageWithMessageSenderChatCorrectlyConstructedFromJson" : "tr 7/25/2021 22:39", - "testNotSupportedMessageTypeIdentifiedCorrectly" : "tom.richter 6/28/2021 13:54", - "testPhotoMessageCorrectlyConstructedFromJson" : "tom.richter 6/28/2021 15:05", - "testPhotoMessageTypeIdentifiedCorrectly" : "RK 6/26/2021 11:34", + "testMessageWithMessageSenderChatCorrectlyConstructedFromJson" : "js 7/31/2022 10:29", + "testNotSupportedMessageTypeIdentifiedCorrectly" : "js 7/31/2022 10:29", + "testPhotoMessageCorrectlyConstructedFromJson" : "js 7/31/2022 10:29", + "testPhotoMessageTypeIdentifiedCorrectly" : "js 7/31/2022 10:29", "testSenderNameInChannelMessage" : "tom.richter 7/25/2021 11:36", "testSenderNameInNonChannelMessage" : "per 7/17/2021 16:13", - "testTextMessageCorrectlyConstructedFromJson" : "RK 6/26/2021 11:34", - "testTextMessageTypeIdentifiedCorrectly" : "RK 6/26/2021 11:34" } } + "testTextMessageCorrectlyConstructedFromJson" : "js 7/31/2022 10:30", + "testTextMessageTypeIdentifiedCorrectly" : "js 7/31/2022 10:30" } } diff --git a/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/class/defaultApiHash.st b/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/class/defaultApiHash.st index 039a7157d..3e8c83401 100644 --- a/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/class/defaultApiHash.st +++ b/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/class/defaultApiHash.st @@ -1,4 +1,4 @@ default values defaultApiHash - ^ 'bda1c0b38033d2a5f2ce7e8ab06ef31a' \ No newline at end of file + ^ '4e185ae9b3c3cbd21e9319645af6c12c' \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/class/defaultApiId.st b/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/class/defaultApiId.st index 84c0779df..b65b9f769 100644 --- a/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/class/defaultApiId.st +++ b/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/class/defaultApiId.st @@ -1,4 +1,4 @@ default values defaultApiId - ^ '1733417' \ No newline at end of file + ^ '3016700' \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/methodProperties.json b/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/methodProperties.json index bbd85f693..2608e647b 100644 --- a/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/methodProperties.json +++ b/packages/TelegramClientTests-Core.package/TCTCTestAuthenticationHandler.class/methodProperties.json @@ -1,6 +1,6 @@ { "class" : { - "defaultApiHash" : "JB 6/26/2021 17:25", - "defaultApiId" : "pk 8/5/2021 17:08" }, + "defaultApiHash" : "rgw 7/31/2022 16:30", + "defaultApiId" : "rgw 7/31/2022 16:30" }, "instance" : { "useTestDC" : "rs 6/14/2020 12:41" } } diff --git a/packages/TelegramClientTests-Core.package/TCTCTestCore.class/instance/loginWithTestData.st b/packages/TelegramClientTests-Core.package/TCTCTestCore.class/instance/loginWithTestData.st index 4cf14b4f7..e02b81844 100644 --- a/packages/TelegramClientTests-Core.package/TCTCTestCore.class/instance/loginWithTestData.st +++ b/packages/TelegramClientTests-Core.package/TCTCTestCore.class/instance/loginWithTestData.st @@ -4,8 +4,8 @@ loginWithTestData "See https://core.telegram.org/api/auth#test-phone-numbers. Choose random numbers to bypass flood limits." | phoneNumber testX testYYYY | - testX := $3. "($1 to: $3) atRandom" - testYYYY := '1234'. "((1 to: 4) collect: [:i | ($0 to: $9) atRandom]) join" + testX := $2. "($1 to: $3) atRandom" + testYYYY := '2345'. "((1 to: 4) collect: [:i | ($0 to: $9) atRandom]) join" phoneNumber := '99966' , testX , testYYYY. self authenticationHandler sendPhoneNumber: phoneNumber. diff --git a/packages/TelegramClientTests-Core.package/TCTCTestCore.class/methodProperties.json b/packages/TelegramClientTests-Core.package/TCTCTestCore.class/methodProperties.json index a49829f9a..7ba8d33f8 100644 --- a/packages/TelegramClientTests-Core.package/TCTCTestCore.class/methodProperties.json +++ b/packages/TelegramClientTests-Core.package/TCTCTestCore.class/methodProperties.json @@ -9,4 +9,4 @@ "initialize" : "RS 6/13/2021 12:47", "initializeHandlers" : "JB 8/4/2021 21:35", "loggedEventsSatisfying:" : "RS 6/13/2021 17:06", - "loginWithTestData" : "rgw 5/11/2022 16:10" } } + "loginWithTestData" : "rgw 7/31/2022 16:38" } } diff --git a/packages/TelegramClientTests-Core.package/TCTCUserTest.class/instance/testUserConstructor.st b/packages/TelegramClientTests-Core.package/TCTCUserTest.class/instance/testUserConstructor.st index 2566ab21b..8d074c46d 100644 --- a/packages/TelegramClientTests-Core.package/TCTCUserTest.class/instance/testUserConstructor.st +++ b/packages/TelegramClientTests-Core.package/TCTCUserTest.class/instance/testUserConstructor.st @@ -7,4 +7,6 @@ testUserConstructor self assert: TCTMMocks mockUser1 firstName equals: user firstName. self assert: TCTMMocks mockUser1 lastName equals: user lastName. self assert: TCTMMocks mockUser1 username equals: user username. - self assert: TCTMMocks mockUser1 fullName equals: user fullName. \ No newline at end of file + self assert: TCTMMocks mockUser1 fullName equals: user fullName. + self assert: TCTMMocks mockUser1 photoId equals: user photoId. + self assert: true equals: user hasPhoto. \ No newline at end of file diff --git a/packages/TelegramClientTests-Core.package/TCTCUserTest.class/methodProperties.json b/packages/TelegramClientTests-Core.package/TCTCUserTest.class/methodProperties.json index c374c491e..1a3ce7970 100644 --- a/packages/TelegramClientTests-Core.package/TCTCUserTest.class/methodProperties.json +++ b/packages/TelegramClientTests-Core.package/TCTCUserTest.class/methodProperties.json @@ -2,7 +2,7 @@ "class" : { }, "instance" : { - "testUserConstructor" : "TR 6/13/2021 14:47", + "testUserConstructor" : "ek 8/5/2022 15:12", "testUserEquality" : "TR 6/13/2021 15:50", "testUserHash" : "TR 6/13/2021 15:49", "testUserInequality" : "TR 6/13/2021 15:49" } } diff --git a/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/README.md b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/README.md new file mode 100644 index 000000000..037f88bd2 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/README.md @@ -0,0 +1 @@ +Helps you to verify if a function was called on an instance of this class. \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/call..st b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/call..st new file mode 100644 index 000000000..687914849 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/call..st @@ -0,0 +1,4 @@ +initialize-release +call: anArg + + self isCalled: true. \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/initialize.st b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/initialize.st new file mode 100644 index 000000000..96a536967 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/initialize.st @@ -0,0 +1,6 @@ +initialize-release +initialize + + super initialize. + + self isCalled: false. \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/isCalled..st b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/isCalled..st new file mode 100644 index 000000000..1e74bc49b --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/isCalled..st @@ -0,0 +1,4 @@ +accessing +isCalled: aBoolean + + isCalled := aBoolean \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/isCalled.st b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/isCalled.st new file mode 100644 index 000000000..478c411bb --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/instance/isCalled.st @@ -0,0 +1,4 @@ +accessing +isCalled + + ^ isCalled \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/methodProperties.json b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/methodProperties.json new file mode 100644 index 000000000..c15dfd97f --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/methodProperties.json @@ -0,0 +1,8 @@ +{ + "class" : { + }, + "instance" : { + "call:" : "LR 6/11/2022 15:03", + "initialize" : "LR 6/11/2022 15:01", + "isCalled" : "aka 6/15/2022 11:48", + "isCalled:" : "aka 6/15/2022 11:48" } } diff --git a/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/properties.json b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/properties.json new file mode 100644 index 000000000..c6c060be4 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMFunctionCalledVerifier.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClientTests-Misc", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "aka 6/15/2022 12:07", + "instvars" : [ + "isCalled" ], + "name" : "TCTMFunctionCalledVerifier", + "pools" : [ + ], + "super" : "Object", + "type" : "normal" } diff --git a/packages/TelegramClientTests-Misc.package/TCTMMockTdlibClient.class/methodProperties.json b/packages/TelegramClientTests-Misc.package/TCTMMockTdlibClient.class/methodProperties.json index 8a79545c3..a4132dcf8 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMockTdlibClient.class/methodProperties.json +++ b/packages/TelegramClientTests-Misc.package/TCTMMockTdlibClient.class/methodProperties.json @@ -3,7 +3,7 @@ "authorizationStateReadyEvent" : "RS 6/3/2021 12:05" }, "instance" : { "addExtraAttribute:to:" : "RS 6/6/2021 12:29", - "appendResponsesToRequest:" : "RS 6/6/2021 12:33", + "appendResponsesToRequest:" : "LR 6/15/2022 10:07", "execute:" : "RS 6/3/2021 11:49", "free" : "RS 6/25/2021 12:30", "freed" : "RS 6/25/2021 12:28", @@ -13,7 +13,7 @@ "logIn" : "JB 6/7/2021 09:13", "onRequestType:respond:" : "RS 6/6/2021 12:20", "onRequestType:respondAll:" : "RS 6/6/2021 12:22", - "receive:" : "JB 6/7/2021 09:13", + "receive:" : "LR 6/15/2022 10:08", "requestResponses" : "JB 6/7/2021 09:12", "requestResponses:" : "JB 6/7/2021 09:12", "responseQueue" : "JB 6/7/2021 09:12", diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEvent.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEvent.st new file mode 100644 index 000000000..4e6fd6052 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEvent.st @@ -0,0 +1,29 @@ +chat event +mockChatEvent + "@linter-ignore" + + ^ (JsonObject newFrom: { + '@type' -> 'chat'. + 'chat' -> (JsonObject newFrom: { + 'id' -> self mockBasicGroupChat id. + 'title' -> 'MockChat'. + 'type' -> (JsonObject newFrom: { + '@type' -> 'chatTypeBasicGroup'. + 'basic_group_id' -> self mockBasicGroupChat id. + }). + 'notification_settings' -> (JsonObject newFrom: { + 'mute_for' -> 0 + }). + 'permissions' -> (JsonObject newFrom: { + '@type' -> 'chatPermissions'. + 'can_send_messages' -> true. + }). + 'photo' -> (JsonObject newFrom: { + '@type' -> 'chatPhotoInfo'. + 'small' -> (JsonObject newFrom: { + '@type' -> 'file'. + 'id' -> self mockImageId + }). + }). + }) + }) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEventMutedFor..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEventMutedFor..st index 534048f92..8a1b422ab 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEventMutedFor..st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEventMutedFor..st @@ -11,7 +11,8 @@ mockChatEventMutedFor: aNumber 'basic_group_id' -> self mockBasicGroupChat id. }). 'permissions' -> (JsonObject newFrom: { - '@type' -> 'can_send_messages' + '@type' -> 'chatPermissions'. + 'can_send_messages' -> true. }). 'notification_settings' -> (JsonObject newFrom: { 'mute_for' -> aNumber diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEventNoPhoto.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEventNoPhoto.st new file mode 100644 index 000000000..a4b95c8d7 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatEventNoPhoto.st @@ -0,0 +1,22 @@ +chat event +mockChatEventNoPhoto + "@linter-ignore" + + ^ (JsonObject newFrom: { + '@type' -> 'chat'. + 'chat' -> (JsonObject newFrom: { + 'id' -> self mockBasicGroupChat id. + 'title' -> 'MockChat'. + 'type' -> (JsonObject newFrom: { + '@type' -> 'chatTypeBasicGroup'. + 'basic_group_id' -> self mockBasicGroupChat id. + }). + 'notification_settings' -> (JsonObject newFrom: { + 'mute_for' -> 0 + }). + 'permissions' -> (JsonObject newFrom: { + '@type' -> 'chatPermissions'. + 'can_send_messages' -> true. + }). + }) + }) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatHistoryJsonContainingMessageId.inChat..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatHistoryJsonContainingMessageId.inChat..st new file mode 100644 index 000000000..918741680 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockChatHistoryJsonContainingMessageId.inChat..st @@ -0,0 +1,10 @@ +message - json +mockChatHistoryJsonContainingMessageId: aMessageId inChat: aChatId + + | messages | + messages := OrderedCollection newFrom: {(self mockTextMessageJsonFrom: aChatId replyingTo: aMessageId with: 1)}. + + 1 to: 19 do: [:anIndex | messages addLast: (self mockTextMessageJsonFrom: aChatId replyingTo: 0 with: (20 + anIndex))]. + ^ (JsonObject newFrom: { + '@type' -> 'messages'. + 'messages'->(messages)}) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMembers.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMembers.st index ac60edfb4..5cf7df47a 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMembers.st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMembers.st @@ -2,6 +2,6 @@ user mockMembers ^ { - JsonObject newFrom: {'user_id'->self mockUser1 id}. - JsonObject newFrom: {'user_id'->self mockUser2 id} + JsonObject newFrom: {'member_id' -> (JsonObject newFrom: {'user_id' -> self mockUser1 id})}. + JsonObject newFrom: {'member_id' -> (JsonObject newFrom: {'user_id' -> self mockUser2 id})} } \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMessageAddMembersFrom.to..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMessageAddMembersFrom.to..st new file mode 100644 index 000000000..e4bdb5972 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMessageAddMembersFrom.to..st @@ -0,0 +1,19 @@ +message - json +mockMessageAddMembersFrom: aList to: aChatId + + ^ (JsonObject newFrom: { + '@type' -> 'message'. + 'id' -> self mockMessageId. + 'chat_id' -> aChatId. + 'sender_id' -> (JsonObject newFrom: { + '@type' -> #messageSenderChat. + 'user_id' -> self mockUser1 id + }). + 'content' -> (JsonObject newFrom: { + '@type'->'messageChatAddMembers'. + 'member_user_ids'-> aList + }). + 'is_outgoing' -> false. + 'reply_to_message_id' -> 0. + 'date' -> self mockMessageTimestamp + }) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMessageDeleteMemberWith.from..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMessageDeleteMemberWith.from..st new file mode 100644 index 000000000..0244c505a --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMessageDeleteMemberWith.from..st @@ -0,0 +1,19 @@ +message - json +mockMessageDeleteMemberWith: aUserId from: aChatId + + ^ (JsonObject newFrom: { + '@type' -> 'message'. + 'id' -> self mockMessageId. + 'chat_id' -> aChatId. + 'sender_id' -> (JsonObject newFrom: { + '@type' -> #messageSenderChat. + 'user_id' -> self mockUser1 id + }). + 'content' -> (JsonObject newFrom: { + '@type'->'messageChatDeleteMember'. + 'user_id'-> aUserId + }). + 'is_outgoing' -> false. + 'reply_to_message_id' -> 0. + 'date' -> self mockMessageTimestamp + }) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMessageReplyMessageId.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMessageReplyMessageId.st new file mode 100644 index 000000000..4472926b8 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockMessageReplyMessageId.st @@ -0,0 +1,4 @@ +message +mockMessageReplyMessageId + + ^ 42 \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockNotSupportedMessageJsonFrom..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockNotSupportedMessageJsonFrom..st index 8b9c0d2c0..7a73dfba4 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockNotSupportedMessageJsonFrom..st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockNotSupportedMessageJsonFrom..st @@ -5,7 +5,7 @@ mockNotSupportedMessageJsonFrom: aChatId '@type' -> 'message'. 'id' -> self mockMessageId. 'chat_id' -> aChatId. - 'sender' -> (JsonObject newFrom: { + 'sender_id' -> (JsonObject newFrom: { '@type' -> 'messageSenderUser'. 'user_id' -> self mockUser1 id }). diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockNotSupportedMessageWith..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockNotSupportedMessageWith..st index 4927aad5d..2c2260374 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockNotSupportedMessageWith..st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockNotSupportedMessageWith..st @@ -2,9 +2,10 @@ message mockNotSupportedMessageWith: aCore ^ TCCNotSupportedMessage new - chat: self mockPrivateChat; + chat: (self mockPrivateChat core: aCore); core: aCore; userId: self mockUser1 id; isOutgoing: false; date: self mockMessageDate; - id: self mockMessageId \ No newline at end of file + id: self mockMessageId; + replyToMessageId: 0 \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPhotoMessageJsonFrom..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPhotoMessageJsonFrom..st index 63565f50e..34ebf48ac 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPhotoMessageJsonFrom..st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPhotoMessageJsonFrom..st @@ -6,7 +6,7 @@ mockPhotoMessageJsonFrom: aChatId '@type' -> 'message'. 'id' -> self mockMessageId. 'chat_id' -> aChatId. - 'sender' -> (JsonObject newFrom: { + 'sender_id' -> (JsonObject newFrom: { '@type' -> 'messageSenderUser'. 'user_id' -> self mockUser1 id }). diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPhotoMessageWith..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPhotoMessageWith..st index 23a547ce5..50756c917 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPhotoMessageWith..st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPhotoMessageWith..st @@ -2,7 +2,7 @@ message mockPhotoMessageWith: aCore ^ TCCPhotoMessage new - chat: self mockPrivateChat; + chat: (self mockPrivateChat core: aCore); core: aCore; userId: self mockUser1 id; isOutgoing: false; @@ -12,4 +12,5 @@ mockPhotoMessageWith: aCore caption: self mockText; width: self mockPhotoWidth; height: self mockPhotoHeight; - fileId: self mockImageId \ No newline at end of file + fileId: self mockImageId; + replyToMessageId: 0 \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPrivateChat.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPrivateChat.st index 70d9a0326..3d3a1defa 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPrivateChat.st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPrivateChat.st @@ -3,8 +3,11 @@ mockPrivateChat ^ TCCPrivateChat new id: 1; + photoId: self mockImageId; title: 'PrivateMockChat'; - lastMessage: 'lastPrivateMessage'; + lastMessageText: 'lastPrivateMessage'; + lastMessageSenderId: 1673511834; + lastMessageSenderName: 'Test User'; canSendMessages: true; infoLoaded: true; muted: false; diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPrivateChatLastMessageIsLoggedInUser.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPrivateChatLastMessageIsLoggedInUser.st new file mode 100644 index 000000000..c63a68e55 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockPrivateChatLastMessageIsLoggedInUser.st @@ -0,0 +1,14 @@ +chat +mockPrivateChatLastMessageIsLoggedInUser + + ^ TCCPrivateChat new + id: 2; + photoId: self mockImageId; + title: 'PrivateMockChatLastMessageisLoggedInUser'; + lastMessageText: 'lastPrivateMessage'; + lastMessageSenderId: 0; + lastMessageSenderName: 'LoggedIn User'; + canSendMessages: true; + infoLoaded: true; + muted: false; + yourself \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.replyingTo.with..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.replyingTo.with..st new file mode 100644 index 000000000..030877f14 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.replyingTo.with..st @@ -0,0 +1,4 @@ +message - json +mockTextMessageJsonFrom: aChatId replyingTo: aReplyMessageId with: aMessageId + + ^ self mockTextMessageJsonFrom: aChatId with: #messageSenderUser replyingTo: aReplyMessageId with: aMessageId \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with..st index 671213dd9..807b57fc8 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with..st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with..st @@ -1,20 +1,4 @@ message - json mockTextMessageJsonFrom: aChatId with: aSenderType - ^ (JsonObject newFrom: { - '@type' -> 'message'. - 'id' -> self mockMessageId. - 'chat_id' -> aChatId. - 'sender' -> (JsonObject newFrom: { - '@type' -> aSenderType asString. - 'user_id' -> self mockUser1 id - }). - 'content' -> (JsonObject newFrom: { - '@type' -> 'messageText'. - 'text' -> (JsonObject newFrom: { - 'text' -> self mockText - }) - }). - 'is_outgoing' -> false. - 'date' -> self mockMessageTimestamp - }) \ No newline at end of file + ^ self mockTextMessageJsonFrom: aChatId with: aSenderType replyingTo: 0 diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with.replyingTo..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with.replyingTo..st new file mode 100644 index 000000000..c996d50d7 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with.replyingTo..st @@ -0,0 +1,4 @@ +message - json +mockTextMessageJsonFrom: aChatId with: aSenderType replyingTo: aReplyMessageId + + ^ self mockTextMessageJsonFrom: aChatId with: aSenderType replyingTo: aReplyMessageId with: self mockMessageId \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with.replyingTo.with..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with.replyingTo.with..st new file mode 100644 index 000000000..8876b46a6 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageJsonFrom.with.replyingTo.with..st @@ -0,0 +1,21 @@ +message - json +mockTextMessageJsonFrom: aChatId with: aSenderType replyingTo: aReplyMessageId with: aMessageId + + ^ (JsonObject newFrom: { + '@type' -> 'message'. + 'id' -> aMessageId. + 'chat_id' -> aChatId. + 'sender_id' -> (JsonObject newFrom: { + '@type' -> aSenderType asString. + 'user_id' -> self mockUser1 id + }). + 'content' -> (JsonObject newFrom: { + '@type' -> 'messageText'. + 'text' -> (JsonObject newFrom: { + 'text' -> self mockText + }) + }). + 'is_outgoing' -> false. + 'reply_to_message_id' -> aReplyMessageId. + 'date' -> self mockMessageTimestamp + }) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith..st index 5b88d6e2c..b546e5d3e 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith..st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith..st @@ -1,12 +1,4 @@ message mockTextMessageWith: aCore - ^ TCCTextMessage new - chat: self mockPrivateChat; - core: aCore; - userId: self mockUser1 id; - isOutgoing: false; - senderType: #messageSenderUser; - date: self mockMessageDate; - id: self mockMessageId; - text: self mockText \ No newline at end of file + ^ self mockTextMessageWith: aCore withId: self mockMessageId \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.inChat..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.inChat..st new file mode 100644 index 000000000..3e58e3419 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.inChat..st @@ -0,0 +1,4 @@ +message +mockTextMessageWith: aCore inChat: aChat + + ^ self mockTextMessageWith: aCore with: self mockMessageId replyTo: 0 in: aChat \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.with.replyTo.in..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.with.replyTo.in..st new file mode 100644 index 000000000..21d0da274 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.with.replyTo.in..st @@ -0,0 +1,13 @@ +message +mockTextMessageWith: aCore with: aMessageId replyTo: aReplyMessageId in: aChatId + + ^ TCCTextMessage new + chat: aChatId; + core: aCore; + userId: self mockUser1 id; + isOutgoing: false; + senderType: #messageSenderUser; + date: self mockMessageDate; + id: aMessageId; + text: self mockText; + replyToMessageId: aReplyMessageId \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withDate..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withDate..st new file mode 100644 index 000000000..fe760a292 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withDate..st @@ -0,0 +1,4 @@ +message +mockTextMessageWith: aCore withDate: aDateAndTime + + ^ (TCTMMocks mockTextMessageWith: aCore) date: aDateAndTime \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withId..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withId..st new file mode 100644 index 000000000..fbc9b1e29 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withId..st @@ -0,0 +1,4 @@ +message +mockTextMessageWith: aCore withId: aMessageId + + ^ self mockTextMessageWith: aCore withId: aMessageId replyTo: 0 \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withId.replyTo..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withId.replyTo..st new file mode 100644 index 000000000..855290261 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withId.replyTo..st @@ -0,0 +1,4 @@ +message +mockTextMessageWith: aCore withId: aMessageId replyTo: aReplyMessageId + + ^ self mockTextMessageWith: aCore with: aMessageId replyTo: aReplyMessageId in: (self mockPrivateChat core: aCore) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withUnixDate..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withUnixDate..st new file mode 100644 index 000000000..46b1d4afc --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextMessageWith.withUnixDate..st @@ -0,0 +1,4 @@ +message +mockTextMessageWith: aCore withUnixDate: aUnixDate + + ^ TCTMMocks mockTextMessageWith: aCore withDate: (DateAndTime fromUnixTime: aUnixDate) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextReplyMessageWith.inChat..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextReplyMessageWith.inChat..st new file mode 100644 index 000000000..9f9927389 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockTextReplyMessageWith.inChat..st @@ -0,0 +1,4 @@ +message +mockTextReplyMessageWith: aCore inChat: aChat + + ^ self mockTextMessageWith: aCore with: self mockMessageReplyMessageId replyTo: self mockMessageId in: aChat \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUnloadedBasicGroupChat.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUnloadedBasicGroupChat.st index b86dbffbb..adcd38df7 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUnloadedBasicGroupChat.st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUnloadedBasicGroupChat.st @@ -5,6 +5,8 @@ mockUnloadedBasicGroupChat id: -2; groupId: 2; title: 'GroupMockChat'; - lastMessage: 'lastBasicGroupMessage'; + lastMessageText: 'lastBasicGroupMessage'; + lastMessageSenderId: 1673511834; + lastMessageSenderName: 'Test User'; canSendMessages: true; yourself \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUnloadedSuperGroupChat.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUnloadedSuperGroupChat.st index fe56830a3..6c2a40c15 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUnloadedSuperGroupChat.st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUnloadedSuperGroupChat.st @@ -3,7 +3,10 @@ mockUnloadedSuperGroupChat ^ TCCSuperGroupChat new id: 3; + photoId: self mockImageId; title: 'SupergroupMockChat'; - lastMessage: 'lastSupergroupMessage'; + lastMessageText: 'lastSupergroupMessage'; + lastMessageSenderId: 1673511834; + lastMessageSenderName: 'Test User'; canSendMessages: true; yourself \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUpdateChatPositionEventForNotPinnedChatWithId..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUpdateChatPositionEventForNotPinnedChatWithId..st new file mode 100644 index 000000000..1ec442327 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUpdateChatPositionEventForNotPinnedChatWithId..st @@ -0,0 +1,12 @@ +chat event +mockUpdateChatPositionEventForNotPinnedChatWithId: aNumber + "@linter-ignore" + + ^ (JsonObject newFrom: { + 'chat_id' -> aNumber. + 'position' -> (JsonObject newFrom: { + '@type' -> 'chatPosition'. + 'is_pinned' -> false. + 'order' -> '314159'. + }). + }) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUpdateChatPositionEventForPinnedChatWithId..st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUpdateChatPositionEventForPinnedChatWithId..st new file mode 100644 index 000000000..9c7e626d7 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUpdateChatPositionEventForPinnedChatWithId..st @@ -0,0 +1,12 @@ +chat event +mockUpdateChatPositionEventForPinnedChatWithId: aNumber + "@linter-ignore" + + ^ (JsonObject newFrom: { + 'chat_id' -> aNumber. + 'position' -> (JsonObject newFrom: { + '@type' -> 'chatPosition'. + 'is_pinned' -> true. + 'order' -> '314159'. + }). + }) \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUser1.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUser1.st index e43e26fdb..6911eb265 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUser1.st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUser1.st @@ -6,4 +6,5 @@ mockUser1 lastName: 'User'; username: 'username'; id: 1673511834; + photoId: self mockImageId; yourself \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUser3.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUser3.st new file mode 100644 index 000000000..eb6283ad5 --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUser3.st @@ -0,0 +1,10 @@ +user +mockUser3 + + ^ TCCUser new + firstName: 'LoggedIn'; + lastName: 'User'; + username: 'loggedinusername'; + id: 0; + photoId: self mockImageId; + yourself \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserJson1.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserJson1.st index 34318d120..96b824cb1 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserJson1.st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserJson1.st @@ -2,10 +2,17 @@ user mockUserJson1 ^ JsonObject newFrom: { - '@type' -> 'user'. - 'id' -> self mockUser1 id. - 'first_name' -> self mockUser1 firstName. - 'last_name' -> self mockUser1 lastName. - 'username' -> self mockUser1 username. - '@extra' -> self mockUser1 id asString + '@type' -> 'user'. + 'id' -> self mockUser1 id. + 'first_name' -> self mockUser1 firstName. + 'last_name' -> self mockUser1 lastName. + 'username' -> self mockUser1 username. + '@extra' -> self mockUser1 id asString. + 'profile_photo' -> (JsonObject newFrom: { + '@type' -> 'profilePhoto'. + 'small' -> (JsonObject newFrom: { + '@type' -> 'file'. + 'id' -> self mockImageId + }). + }). } \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserJson3.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserJson3.st new file mode 100644 index 000000000..7edbb3e6e --- /dev/null +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserJson3.st @@ -0,0 +1,11 @@ +user +mockUserJson3 + + ^ JsonObject newFrom: { + '@type' -> 'user'. + 'id' -> self mockUser3 id. + 'first_name' -> self mockUser3 firstName. + 'last_name' -> self mockUser3 lastName. + 'username' -> self mockUser3 username. + '@extra' -> self mockUser3 id asString + } \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserStore.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserStore.st index 108999c7f..6bd9909a4 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserStore.st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUserStore.st @@ -3,5 +3,6 @@ mockUserStore ^ TCCUserStore newFrom: { self mockUser1 id -> (Promise new resolveWith: self mockUser1). - self mockUser2 id -> (Promise new resolveWith: self mockUser2) + self mockUser2 id -> (Promise new resolveWith: self mockUser2). + self mockUser3 id -> (Promise new resolveWith: self mockUser3) } \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUsers.st b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUsers.st index df9232001..1061fe8c9 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUsers.st +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/class/mockUsers.st @@ -1,4 +1,4 @@ user mockUsers - ^ {self mockUser1 . self mockUser2} \ No newline at end of file + ^ {self mockUser1 . self mockUser2 . self mockUser3} \ No newline at end of file diff --git a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/methodProperties.json b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/methodProperties.json index b5f609ad5..d3ef0c572 100644 --- a/packages/TelegramClientTests-Misc.package/TCTMMocks.class/methodProperties.json +++ b/packages/TelegramClientTests-Misc.package/TCTMMocks.class/methodProperties.json @@ -1,10 +1,13 @@ { "class" : { - "mockBasicGroupChat" : "per 6/15/2021 09:16", + "mockBasicGroupChat" : "rgw 6/2/2022 12:06", "mockBasicGroupFullInfoJson" : "per 6/10/2021 19:41", - "mockChannelSupergroupChat" : "per 7/25/2021 12:33", - "mockChatEventMutedFor:" : "per 6/18/2021 09:20", - "mockChats" : "TR 5/27/2021 19:55", + "mockChannelSupergroupChat" : "rgw 6/2/2022 12:07", + "mockChatEvent" : "rgw 6/2/2022 15:45", + "mockChatEventMutedFor:" : "rgw 6/2/2022 11:48", + "mockChatEventNoPhoto" : "rgw 6/2/2022 15:23", + "mockChatHistoryJsonContainingMessageId:inChat:" : "aka 6/15/2022 11:49", + "mockChats" : "LR 7/16/2022 12:52", "mockChatsFor:" : "JB 7/18/2021 13:15", "mockEmojiSequence1" : "pk 7/10/2021 15:22", "mockEmojiSequence2" : "pk 7/10/2021 15:23", @@ -18,39 +21,57 @@ "mockImageResponseJson" : "pk 6/19/2021 18:21", "mockInvalidEmoji" : "pk 7/9/2021 16:08", "mockLongText" : "pk 7/17/2021 12:20", - "mockMembers" : "per 6/15/2021 08:25", + "mockMembers" : "rgw 6/2/2022 10:04", + "mockMessageAddMembersFrom:to:" : "rgw 7/21/2022 15:05", "mockMessageDate" : "TR 6/25/2021 21:07", + "mockMessageDeleteMemberWith:from:" : "LR 7/23/2022 10:13", "mockMessageEventFrom:" : "pk 8/5/2021 17:09", - "mockMessageFrom:with:" : "tr 7/25/2021 18:05", + "mockMessageFrom:with:" : "js 7/31/2022 10:30", "mockMessageId" : "8/5/2021 21:14:18", - "mockMessageIn:with:" : "6/26/2021 17:10:55", + "mockMessageIn:with:" : "js 7/31/2022 10:24", "mockMessageJsonFrom:" : "tr 7/25/2021 18:06", + "mockMessageReplyMessageId" : "rgw 5/12/2022 14:50", "mockMessageTimestamp" : "RK 6/25/2021 15:14", "mockMutedPrivateChat" : "per 6/18/2021 08:55", "mockNotSupportedMessageJsonFrom:" : "tom.richter 6/28/2021 13:54", - "mockNotSupportedMessageWith:" : "tom.richter 7/25/2021 11:22", + "mockNotSupportedMessageWith:" : "rgw 8/5/2022 10:23", "mockPhotoHeight" : "tom.richter 6/28/2021 13:57", "mockPhotoMessageJsonFrom:" : "tom.richter 6/28/2021 15:05", - "mockPhotoMessageWith:" : "per 7/25/2021 12:56", + "mockPhotoMessageWith:" : "rgw 8/5/2022 10:22", "mockPhotoWidth" : "tom.richter 6/28/2021 13:57", - "mockPrivateChat" : "JB 8/4/2021 00:22", + "mockPrivateChat" : "LR 7/16/2022 12:03", + "mockPrivateChatLastMessageIsLoggedInUser" : "LR 7/16/2022 12:25", "mockSingleEmojiSequence" : "pk 7/10/2021 15:21", "mockSplitCharsAndEmojis" : "pk 7/10/2021 15:23", - "mockSupergroupChat" : "per 6/15/2021 09:16", + "mockSupergroupChat" : "rgw 6/2/2022 12:07", "mockSupergroupMembersJson" : "per 6/10/2021 20:53", "mockText" : "TR 6/25/2021 21:15", - "mockTextMessageJsonFrom:with:" : "tr 7/25/2021 18:05", - "mockTextMessageWith:" : "per 7/25/2021 12:41", - "mockUnloadedBasicGroupChat" : "JB 8/4/2021 00:22", - "mockUnloadedSuperGroupChat" : "JB 8/4/2021 00:22", + "mockTextMessageJsonFrom:replyingTo:with:" : "aka 6/15/2022 12:03", + "mockTextMessageJsonFrom:with:" : "aka 6/15/2022 12:04", + "mockTextMessageJsonFrom:with:replyingTo:" : "aka 6/15/2022 12:04", + "mockTextMessageJsonFrom:with:replyingTo:with:" : "rgw 7/21/2022 13:28", + "mockTextMessageWith:" : "aka 6/15/2022 12:04", + "mockTextMessageWith:inChat:" : "aka 6/15/2022 12:04", + "mockTextMessageWith:with:replyTo:in:" : "aka 6/15/2022 12:04", + "mockTextMessageWith:withDate:" : "ek 8/5/2022 15:21", + "mockTextMessageWith:withId:" : "aka 6/15/2022 12:04", + "mockTextMessageWith:withId:replyTo:" : "aka 6/15/2022 12:04", + "mockTextMessageWith:withUnixDate:" : "ek 8/5/2022 15:22", + "mockTextReplyMessageWith:inChat:" : "aka 6/15/2022 12:04", + "mockUnloadedBasicGroupChat" : "aka 7/10/2022 11:14", + "mockUnloadedSuperGroupChat" : "aka 7/10/2022 11:14", + "mockUpdateChatPositionEventForNotPinnedChatWithId:" : "js 6/18/2022 11:03", + "mockUpdateChatPositionEventForPinnedChatWithId:" : "js 6/18/2022 11:04", "mockUpdateNewMessageJsonEventFrom:" : "7/25/2021 12:12:21", - "mockUser1" : "TR 6/13/2021 15:03", + "mockUser1" : "JS 6/11/2022 09:38", "mockUser2" : "RK 6/26/2021 10:05", + "mockUser3" : "LR 7/16/2022 12:24", "mockUserEvent" : "pk 8/5/2021 17:09", - "mockUserJson1" : "per 6/10/2021 19:43", + "mockUserJson1" : "JS 6/11/2022 11:51", "mockUserJson2" : "per 6/10/2021 19:29", - "mockUserStore" : "RS 6/23/2021 16:00", - "mockUsers" : "TR 6/13/2021 15:15", + "mockUserJson3" : "LR 7/16/2022 12:24", + "mockUserStore" : "LR 7/16/2022 12:58", + "mockUsers" : "LR 7/16/2022 12:25", "mockValidEmoji" : "pk 7/9/2021 16:07", "writeMockImage" : "pk 6/19/2021 17:36" }, "instance" : { diff --git a/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringCodeOpensTelegram.st b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringCodeOpensTelegram.st index 4e9f080c7..c54f42d77 100644 --- a/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringCodeOpensTelegram.st +++ b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringCodeOpensTelegram.st @@ -4,9 +4,9 @@ testEnteringCodeOpensTelegram | inputField authenticationWindow | authenticationWindow := self subject currentWindow. authenticationWindow - showFirstStep; - showSecondStep. - inputField := (self subject findByClass: TextMorph) findByCriteria: [:textMorph | textMorph isLocked not]. + showPhoneNumberStep; + showAuthCodeStep. + inputField := (self subject findByClass: TextMorph) findByCriteria: [:textMorph | textMorph isLocked not and: textMorph visible]. inputField sendKeys: '934505'. self assertReading: '934505' in: self subject. authenticationWindow logInCompleted. diff --git a/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringPasswordOpensTelegram.st b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringPasswordOpensTelegram.st new file mode 100644 index 000000000..126ae1d6c --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringPasswordOpensTelegram.st @@ -0,0 +1,15 @@ +testing +testEnteringPasswordOpensTelegram + + | passwordField authenticationWindow | + authenticationWindow := self subject currentWindow. + authenticationWindow + showPhoneNumberStep; + showAuthCodeStep; + showAuthPasswordStep. + passwordField := (self subject findByClass: TextMorph) findByCriteria: [:textMorph | textMorph isLocked not and: textMorph visible]. + passwordField sendKeys: '934505'. + self assertReading: '934505' in: self subject. + authenticationWindow logInCompleted. + + self deny: self subject currentWindow = authenticationWindow. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringPhoneNumberAsksForCode.st b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringPhoneNumberAsksForCode.st index a752fef99..de3389d3e 100644 --- a/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringPhoneNumberAsksForCode.st +++ b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testEnteringPhoneNumberAsksForCode.st @@ -2,8 +2,8 @@ testing testEnteringPhoneNumberAsksForCode | inputField | - self subject currentWindow showFirstStep. - inputField := (self subject findByClass: TextMorph) findByCriteria: [:textMorph | textMorph isLocked not]. + self subject currentWindow showPhoneNumberStep. + inputField := (self subject findByClass: TextMorph) findByCriteria: [:textMorph | textMorph isLocked not and: textMorph visible]. inputField sendKeys: '+49 934 505'. self assertReading: '+49 934 505' in: self subject. (self subject createWrapperFor: {self subject currentWindow buttonNext}) click. diff --git a/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testPressCancelOnAuthCode.st b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testPressCancelOnAuthCode.st new file mode 100644 index 000000000..808a0bd05 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testPressCancelOnAuthCode.st @@ -0,0 +1,11 @@ +testing +testPressCancelOnAuthCode + + | button nextButton | + nextButton := (self subject findByClass: TCUButton) findByCriteria: [:textMorph | textMorph text asText = 'Next' ]. + self subject currentWindow + showPhoneNumberStep; + showAuthCodeStep. + button := (self subject findByClass: TCUButton) findByCriteria: [:textMorph | textMorph text asText = 'Cancel' ]. + button click. + self assert: nextButton visible. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testPressCancelOnAuthPassword.st b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testPressCancelOnAuthPassword.st new file mode 100644 index 000000000..f160da3aa --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/instance/testPressCancelOnAuthPassword.st @@ -0,0 +1,12 @@ +testing +testPressCancelOnAuthPassword + + | button nextButton | + nextButton := (self subject findByClass: TCUButton) findByCriteria: [:textMorph | textMorph text asText = 'Next' ]. + self subject currentWindow + showPhoneNumberStep; + showAuthCodeStep; + showAuthPasswordStep. + button := (self subject findByClass: TCUButton) findByCriteria: [:textMorph | textMorph text asText = 'Cancel' ]. + button click. + self assert: nextButton visible. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/methodProperties.json index cc55f8740..e0b733ea6 100644 --- a/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/methodProperties.json +++ b/packages/TelegramClientTests-UI.package/TCTUAuthenticationTests.class/methodProperties.json @@ -3,6 +3,9 @@ }, "instance" : { "setUp" : "RS 7/17/2021 12:56", - "testEnteringCodeOpensTelegram" : "RS 7/17/2021 12:52", - "testEnteringPhoneNumberAsksForCode" : "RS 7/17/2021 12:54", + "testEnteringCodeOpensTelegram" : "aka 5/21/2022 13:02", + "testEnteringPasswordOpensTelegram" : "aka 5/21/2022 14:01", + "testEnteringPhoneNumberAsksForCode" : "aka 5/21/2022 13:29", + "testPressCancelOnAuthCode" : "ek 8/5/2022 15:27", + "testPressCancelOnAuthPassword" : "ek 8/5/2022 15:27", "testTelegramOpensAuthentication" : "RS 7/17/2021 12:55" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/README.md b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/README.md new file mode 100644 index 000000000..da007ebde --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/README.md @@ -0,0 +1 @@ +Test hover and pressed behavior of buttonlike objects. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/instance/testHoverOnTitleBar.st b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/instance/testHoverOnTitleBar.st new file mode 100644 index 000000000..499fa066f --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/instance/testHoverOnTitleBar.st @@ -0,0 +1,12 @@ +hovering +testHoverOnTitleBar + + | titleBar normalColor | + + self openAnyChat. + titleBar := self subject chatWindow titleBar. + normalColor := titleBar color. + titleBar mouseEnter: EventMorph new. + self deny: normalColor = titleBar color. + titleBar mouseLeave: EventMorph new. + self assert: normalColor = titleBar color. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/instance/testMouseHoverOnChatsListItem.st b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/instance/testMouseHoverOnChatsListItem.st new file mode 100644 index 000000000..ce91d62d0 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/instance/testMouseHoverOnChatsListItem.st @@ -0,0 +1,11 @@ +hovering +testMouseHoverOnChatsListItem + + | chatListItem oldColor | + + chatListItem := TCUChatListItem new. + oldColor := chatListItem color. + chatListItem mouseEnter: EventMorph new. + self deny: oldColor = chatListItem color. + chatListItem mouseLeave: EventMorph new. + self assert: oldColor = chatListItem color. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/instance/testMouseHoverOnRegularButtons.st b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/instance/testMouseHoverOnRegularButtons.st new file mode 100644 index 000000000..ce874115d --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/instance/testMouseHoverOnRegularButtons.st @@ -0,0 +1,11 @@ +hovering +testMouseHoverOnRegularButtons + + | button normalColor | + + button := TCUButton new. + normalColor := button color. + button mouseEnter: EventMorph new. + self deny: normalColor = button color. + button mouseLeave: EventMorph new. + self assert: normalColor = button color. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/methodProperties.json new file mode 100644 index 000000000..b420a992a --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/methodProperties.json @@ -0,0 +1,7 @@ +{ + "class" : { + }, + "instance" : { + "testHoverOnTitleBar" : "ek 6/22/2022 19:19", + "testMouseHoverOnChatsListItem" : "ek 8/5/2022 15:28", + "testMouseHoverOnRegularButtons" : "ek 6/22/2022 18:19" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/properties.json b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/properties.json new file mode 100644 index 000000000..33fbbd8dc --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUButtonTests.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClientTests-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "ek 6/19/2022 19:00", + "instvars" : [ + ], + "name" : "TCTUButtonTests", + "pools" : [ + ], + "super" : "TCTUTestCase", + "type" : "normal" } diff --git a/packages/TelegramClientTests-UI.package/TCTUChatInfoPageTests.class/instance/testPrivateChatHasNoDescription.st b/packages/TelegramClientTests-UI.package/TCTUChatInfoPageTests.class/instance/testPrivateChatHasNoDescription.st index fe039b808..1a2f9919a 100644 --- a/packages/TelegramClientTests-UI.package/TCTUChatInfoPageTests.class/instance/testPrivateChatHasNoDescription.st +++ b/packages/TelegramClientTests-UI.package/TCTUChatInfoPageTests.class/instance/testPrivateChatHasNoDescription.st @@ -11,4 +11,4 @@ testPrivateChatHasNoDescription chatInfoPage := (self subject findByClass: TCUChatInfoPage) morphs anyOne. self forceSaveScreenshotOf: chatInfoPage as: 'testPrivateChatHasNoDescription' in: self class defaultTestResultPath. - self assert: 236496437 equals: (self computeHashOf: (self takeScreenshotOf: chatInfoPage)). \ No newline at end of file + self assert: 225928729 equals: (self computeHashOf: (self takeScreenshotOf: chatInfoPage)). \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatInfoPageTests.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUChatInfoPageTests.class/methodProperties.json index 9697fd197..132669f5a 100644 --- a/packages/TelegramClientTests-UI.package/TCTUChatInfoPageTests.class/methodProperties.json +++ b/packages/TelegramClientTests-UI.package/TCTUChatInfoPageTests.class/methodProperties.json @@ -11,7 +11,7 @@ "testCanOpenChatInfoPage" : "RS 6/6/2021 15:50", "testChatInfoPageIsHidden" : "RS 6/6/2021 15:50", "testDoesDisplayGroupDescription" : "RS 8/1/2021 12:56", - "testPrivateChatHasNoDescription" : "RS 8/1/2021 12:57", + "testPrivateChatHasNoDescription" : "rgw 6/6/2022 18:11", "testPrivateChatHasNoUserList" : "RK 8/2/2021 18:39", "testSupergroupChatHasUserList" : "tr 7/25/2021 18:08", "testUserListNotVisibleInChannelChatInfoPage" : "RK 8/2/2021 18:39" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/README.md b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/README.md new file mode 100644 index 000000000..43ea4b56b --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/README.md @@ -0,0 +1 @@ +Tests TCUChatListItem \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/setUp.st b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/setUp.st new file mode 100644 index 000000000..9286a2356 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/setUp.st @@ -0,0 +1,6 @@ +running +setUp + + self core: (TCTUMockCore newWithTeleClient: TCTMMockTdlibClient new). + self core userStore: TCTMMocks mockUserStore. + self core chatsHandler chats: (TCTMMocks mockChatsFor: self core). \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatHasPhoto.st b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatHasPhoto.st new file mode 100644 index 000000000..689515502 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatHasPhoto.st @@ -0,0 +1,7 @@ +testing +testChatHasPhoto + + self core client onRequestType: 'downloadFile' respond: TCTMMocks mockImageResponseJson. + self wantsToTest: (TCUChatListItem newWithChat: self core chatsHandler chats first width: 500). + 0.1 seconds wait. + self assert: (self subject findByClass: ImageMorph) morphs notEmpty. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatIsNotPinned.st b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatIsNotPinned.st new file mode 100644 index 000000000..26f016db8 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatIsNotPinned.st @@ -0,0 +1,8 @@ +testing +testChatIsNotPinned + + | chat | + chat := (self core chatsHandler chats reject: [:aChat | aChat isPinned]) first. + self core chatsHandler updateChatPosition: (TCTMMocks mockUpdateChatPositionEventForNotPinnedChatWithId: chat id). + self wantsToTest: (TCUChatListItem newWithChat: chat width: TCUChatsList defaultWidth). + self assertNotReading: 'pinned' in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatIsPinned.st b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatIsPinned.st new file mode 100644 index 000000000..3a2f1b789 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatIsPinned.st @@ -0,0 +1,8 @@ +testing +testChatIsPinned + + | chat | + chat := (self core chatsHandler chats reject: [:aChat | aChat isPinned]) first. + self core chatsHandler updateChatPosition: (TCTMMocks mockUpdateChatPositionEventForPinnedChatWithId: chat id). + self wantsToTest: (TCUChatListItem newWithChat: chat width: TCUChatsList defaultWidth). + self assertReading: 'pinned' in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatLastSenderNameIsLoggedInUser.st b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatLastSenderNameIsLoggedInUser.st new file mode 100644 index 000000000..37faa611a --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatLastSenderNameIsLoggedInUser.st @@ -0,0 +1,8 @@ +testing +testChatLastSenderNameIsLoggedInUser + + | chat | + chat := TCTMMocks mockPrivateChatLastMessageIsLoggedInUser. + chat core: self core. + self wantsToTest: (TCUChatListItem newWithChat: chat width: TCUChatsList defaultWidth). + self assertReading: 'You:' in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatLastSenderNameIsNotLoggedInUser.st b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatLastSenderNameIsNotLoggedInUser.st new file mode 100644 index 000000000..303b24d8d --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatLastSenderNameIsNotLoggedInUser.st @@ -0,0 +1,8 @@ +testing +testChatLastSenderNameIsNotLoggedInUser + + | chat | + chat := TCTMMocks mockPrivateChat. + chat core: self core. + self wantsToTest: (TCUChatListItem newWithChat: chat width: TCUChatsList defaultWidth). + self assertReading: 'Test User:' in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatWithoutPhotoHasDefaultPhoto.st b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatWithoutPhotoHasDefaultPhoto.st new file mode 100644 index 000000000..5f011d8bd --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/instance/testChatWithoutPhotoHasDefaultPhoto.st @@ -0,0 +1,7 @@ +testing +testChatWithoutPhotoHasDefaultPhoto + + | chat | + chat := (self core chatsHandler chats reject: [:aChat | aChat hasPhoto]) first. + self wantsToTest: (TCUChatListItem newWithChat: chat width: TCUChatsList defaultWidth). + self assert: (self subject findByClass: ImageMorph) morphs notEmpty. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/methodProperties.json new file mode 100644 index 000000000..18af45e3c --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/methodProperties.json @@ -0,0 +1,11 @@ +{ + "class" : { + }, + "instance" : { + "setUp" : "ek 8/5/2022 15:29", + "testChatHasPhoto" : "js 6/30/2022 16:01", + "testChatIsNotPinned" : "ek 8/5/2022 15:30", + "testChatIsPinned" : "ek 8/5/2022 15:30", + "testChatLastSenderNameIsLoggedInUser" : "ek 8/5/2022 15:31", + "testChatLastSenderNameIsNotLoggedInUser" : "ek 8/5/2022 15:31", + "testChatWithoutPhotoHasDefaultPhoto" : "ek 8/5/2022 15:31" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/properties.json b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/properties.json new file mode 100644 index 000000000..bc9bfe069 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatListItemTests.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClientTests-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "rgw 6/2/2022 16:17", + "instvars" : [ + ], + "name" : "TCTUChatListItemTests", + "pools" : [ + ], + "super" : "TCTUTestCase", + "type" : "normal" } diff --git a/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testAddDateDividerAtBottom.st b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testAddDateDividerAtBottom.st new file mode 100644 index 000000000..7a0053690 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testAddDateDividerAtBottom.st @@ -0,0 +1,12 @@ +testing +testAddDateDividerAtBottom + + | oldMessage newMessage oldDate newDate | + oldDate := 1376462359. "14.8.13" + newDate := 1376548759. "15.8.13" + oldMessage := TCTMMocks mockTextMessageWith: self core withUnixDate: oldDate. + newMessage := TCTMMocks mockTextMessageWith: self core withUnixDate: newDate. + self subject chat addNewestMessage: oldMessage. + self subject chat addNewestMessage: newMessage. + + self assertReading: '8/15/2013' in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testAddDateDividerAtTop.st b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testAddDateDividerAtTop.st new file mode 100644 index 000000000..9e5268162 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testAddDateDividerAtTop.st @@ -0,0 +1,12 @@ +testing +testAddDateDividerAtTop + + | oldMessage newMessage oldDate newDate | + oldDate := 1376462359. "14.8.13" + newDate := 1376548759. "15.8.13" + oldMessage := TCTMMocks mockTextMessageWith: self core withUnixDate: oldDate. + newMessage := TCTMMocks mockTextMessageWith: self core withUnixDate: newDate. + self subject chat addOldestMessage: newMessage. + self subject chat addOldestMessage: oldMessage. + + self assertReading: '8/15/2013' in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testDoNotShowDateDivider.st b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testDoNotShowDateDivider.st new file mode 100644 index 000000000..5391c465d --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testDoNotShowDateDivider.st @@ -0,0 +1,12 @@ +testing +testDoNotShowDateDivider + + | oldMessage newMessage oldDate newDate | + oldDate := 1376462359. "14.8.13" + newDate := 1376462360. "14.8.13" + oldMessage := TCTMMocks mockTextMessageWith: self core withUnixDate: oldDate. + newMessage := TCTMMocks mockTextMessageWith: self core withUnixDate: newDate. + self subject chat addNewestMessage: oldMessage. + self subject chat addNewestMessage: newMessage. + + self assertNotReading: '8/15/2013' in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testItemsHaveMessageId.st b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testItemsHaveMessageId.st new file mode 100644 index 000000000..a4c2a85fd --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testItemsHaveMessageId.st @@ -0,0 +1,12 @@ +testing +testItemsHaveMessageId + + | oldMessage newMessage oldDate newDate | + oldDate := 1376462359. "14.8.13" + newDate := 1376548759. "15.8.13" + oldMessage := TCTMMocks mockTextMessageWith: self core withUnixDate: oldDate. + newMessage := TCTMMocks mockTextMessageWith: self core withUnixDate: newDate. + self subject chat addNewestMessage: oldMessage. + self subject chat addNewestMessage: newMessage. + + self assert: (self subject items select: [:item | (item respondsTo: #messageId) not]) isEmpty. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testScrollToReferencedMessage.st b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testScrollToReferencedMessage.st new file mode 100644 index 000000000..3aacc95d5 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/instance/testScrollToReferencedMessage.st @@ -0,0 +1,20 @@ +testing +testScrollToReferencedMessage + + | referencedMessage referencingMessage referencedOffset | + referencedMessage := (TCTMMocks mockTextMessageWith: self core withId: 1) + text: 'Referenced Message'; + chat: self subject chat. + referencingMessage := (TCTMMocks mockTextMessageWith: self core withId: 2 replyTo: 1) + text: 'Referencing Message'; + chat: self subject chat. + self subject chat addOldestMessage: referencedMessage. + self subject chat addNewestMessage: referencingMessage. + + self subject scrollToShow: self subject scroller submorphs first. + referencedOffset := self subject vScrollBar value. + self subject scrollToNewestMessage. + + (self subject findByClass: TCUReplySnippet) click. + + self assert: referencedOffset equals: self subject vScrollBar value. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/methodProperties.json index aa2c81e9c..7431347f0 100644 --- a/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/methodProperties.json +++ b/packages/TelegramClientTests-UI.package/TCTUChatMessageListTests.class/methodProperties.json @@ -2,9 +2,14 @@ "class" : { }, "instance" : { - "fillWithMessages" : "per 6/28/2021 16:22", - "setUp" : "RS 8/1/2021 12:57", - "testAddingOldMessagesDoesNotScroll" : "per 6/28/2021 16:23", + "fillWithMessages" : "ek 8/5/2022 15:32", + "setUp" : "js 7/31/2022 19:10", + "testAddDateDividerAtBottom" : "js 7/31/2022 17:48", + "testAddDateDividerAtTop" : "js 7/31/2022 17:48", + "testAddingOldMessagesDoesNotScroll" : "aka 7/14/2022 15:30", "testChatDoesNotDisplayMessagesFromOtherChats" : "RS 8/1/2021 12:57", "testDisplayedChatLoadsOldMessage" : "per 6/28/2021 16:23", - "testDisplayedChatReceivesNewMessage" : "per 6/28/2021 16:23" } } + "testDisplayedChatReceivesNewMessage" : "per 6/28/2021 16:23", + "testDoNotShowDateDivider" : "js 7/31/2022 19:11", + "testItemsHaveMessageId" : "js 7/31/2022 20:15", + "testScrollToReferencedMessage" : "rgw 8/5/2022 10:53" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/instance/messageInputField.st b/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/instance/messageInputField.st index 3d4d58587..d09e2fdaa 100644 --- a/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/instance/messageInputField.st +++ b/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/instance/messageInputField.st @@ -1,4 +1,4 @@ accessing messageInputField - ^ (self subject findByClass: TextMorph) findByCriteria: [:textMorph | textMorph isLocked not] \ No newline at end of file + ^ (self subject findByClass: TextMorph) findByCriteria: [:textMorph | textMorph readOnly not and: [textMorph isLocked not]] \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/instance/testSelectAndDeselectMessageToReplyTo.st b/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/instance/testSelectAndDeselectMessageToReplyTo.st new file mode 100644 index 000000000..0249bf534 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/instance/testSelectAndDeselectMessageToReplyTo.st @@ -0,0 +1,15 @@ +testing +testSelectAndDeselectMessageToReplyTo + + | newMessage chatWindow | + + self openChatWithId: 1. + chatWindow := self subject chatWindow. + newMessage := (TCTMMocks mockTextMessageWith: self core) text: 'New message'. + chatWindow selectedChat addNewestMessage: newMessage. + + self assertNotReading: newMessage text inMorph: chatWindow inputBar. + chatWindow selectedChat selectedReplyToMessageId: newMessage id. + self assertReading: newMessage text inMorph: chatWindow inputBar. + chatWindow selectedChat selectedReplyToMessageId: newMessage id. + self assertNotReading: newMessage text inMorph: chatWindow inputBar. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/methodProperties.json index 96a485137..aff5ecc5e 100644 --- a/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/methodProperties.json +++ b/packages/TelegramClientTests-UI.package/TCTUChatWindowTests.class/methodProperties.json @@ -2,6 +2,7 @@ "class" : { }, "instance" : { - "messageInputField" : "JB 7/19/2021 12:41", + "messageInputField" : "rgw 7/1/2022 11:32", "sendButton" : "JB 7/19/2021 12:44", - "testSentMessageAppearsInList" : "JB 7/18/2021 13:19" } } + "testSelectAndDeselectMessageToReplyTo" : "JS 5/22/2022 19:23", + "testSentMessageAppearsInList" : "rgw 7/1/2022 11:33" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/instance/testChatOrderUpdatesIfPositionChanges.st b/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/instance/testChatOrderUpdatesIfPositionChanges.st index 381fcfa7c..04f51ea27 100644 --- a/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/instance/testChatOrderUpdatesIfPositionChanges.st +++ b/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/instance/testChatOrderUpdatesIfPositionChanges.st @@ -5,5 +5,5 @@ testChatOrderUpdatesIfPositionChanges chat := self core chatsHandler chats last. chat position: 0. "no chat has a position so this should become the first chat" self core chatsHandler chats notify. - + (self subject findByClass: TCUChatsList) step. self assert: chat id equals: self subject chatsList items first chatId. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/instance/testLastMessageVisible.st b/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/instance/testLastMessageVisible.st index 42594156e..66f56e9cc 100644 --- a/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/instance/testLastMessageVisible.st +++ b/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/instance/testLastMessageVisible.st @@ -3,6 +3,6 @@ testLastMessageVisible 1 to: self core chatsHandler chats size do: [:index | self - assertReading: (self core chatsHandler chats at: index) lastMessage + assertReading: (self core chatsHandler chats at: index) lastMessageText in: (self subject createWrapperFor: {self subject chatsList items at: index}). ]. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/methodProperties.json index 6816c7412..d38fda130 100644 --- a/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/methodProperties.json +++ b/packages/TelegramClientTests-UI.package/TCTUChatsListTests.class/methodProperties.json @@ -2,6 +2,6 @@ "class" : { }, "instance" : { - "testChatOrderUpdatesIfPositionChanges" : "pk 8/6/2021 18:57", + "testChatOrderUpdatesIfPositionChanges" : "rgw 7/26/2022 10:24", "testChatTitleVisible" : "JB 8/6/2021 15:52", - "testLastMessageVisible" : "JB 8/6/2021 15:52" } } + "testLastMessageVisible" : "aka 7/10/2022 11:13" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testAddMembersMessage.st b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testAddMembersMessage.st new file mode 100644 index 000000000..9e1804b91 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testAddMembersMessage.st @@ -0,0 +1,11 @@ +testing +testAddMembersMessage + + | addMembersEvent addMembersMessage chat | + + chat := TCTMMocks mockBasicGroupChat. + addMembersEvent := TCTMMocks mockMessageAddMembersFrom: {TCTMMocks mockUser1 id} to: chat id. + addMembersMessage := TCCMessage newFromMessageEvent: addMembersEvent in: chat with: self core. + + self wantsToTest: (TCUMessage newFrom: addMembersMessage). + self assertReading: 'Added: Test User' in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testAddMembersMessageIsNotUserMessage.st b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testAddMembersMessageIsNotUserMessage.st new file mode 100644 index 000000000..4209c1703 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testAddMembersMessageIsNotUserMessage.st @@ -0,0 +1,11 @@ +testing +testAddMembersMessageIsNotUserMessage + + | addMembersEvent addMembersMessage chat | + + chat := TCTMMocks mockBasicGroupChat. + addMembersEvent := TCTMMocks mockMessageAddMembersFrom: {TCTMMocks mockUser1 id} to: chat id. + addMembersMessage := TCCMessage newFromMessageEvent: addMembersEvent in: chat with: self core. + + self wantsToTest: (TCUMessage newFrom: addMembersMessage). + self deny: self subject isUserMessage. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testDeleteMemberMessage.st b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testDeleteMemberMessage.st new file mode 100644 index 000000000..0799c8c4a --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testDeleteMemberMessage.st @@ -0,0 +1,11 @@ +testing +testDeleteMemberMessage + + | deleteMemberEvent deleteMemberMessage chat | + + chat := TCTMMocks mockBasicGroupChat. + deleteMemberEvent := TCTMMocks mockMessageDeleteMemberWith: TCTMMocks mockUser1 id from: chat id. + deleteMemberMessage := TCCMessage newFromMessageEvent: deleteMemberEvent in: chat with: self core. + + self wantsToTest: (TCUMessage newFrom: deleteMemberMessage). + self assertReading: 'Removed: Test User' in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testDeleteMemberMessageIsNotUserMessage.st b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testDeleteMemberMessageIsNotUserMessage.st new file mode 100644 index 000000000..3cfa3800d --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testDeleteMemberMessageIsNotUserMessage.st @@ -0,0 +1,11 @@ +testing +testDeleteMemberMessageIsNotUserMessage + + | deleteMemberEvent deleteMemberMessage chat | + + chat := TCTMMocks mockBasicGroupChat. + deleteMemberEvent := TCTMMocks mockMessageDeleteMemberWith: TCTMMocks mockUser1 id from: chat id. + deleteMemberMessage := TCCMessage newFromMessageEvent: deleteMemberEvent in: chat with: self core. + + self wantsToTest: (TCUMessage newFrom: deleteMemberMessage). + self deny: self subject isUserMessage. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageBetweenRequestsAnsweredMessage.st b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageBetweenRequestsAnsweredMessage.st new file mode 100644 index 000000000..55ed56e6a --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageBetweenRequestsAnsweredMessage.st @@ -0,0 +1,19 @@ +testing +testMessageBetweenRequestsAnsweredMessage + + | replyMessage betweenMessage chat | + chat := self core chatsHandler chats first. + self core client onRequestType: 'getMessage' respond: (TCTMMocks mockMessageJsonFrom: chat id). + replyMessage := TCCTextMessage newFromMessageEvent: (TCTMMocks mockTextMessageJsonFrom: chat id with: #messageSenderUser replyingTo: TCTMMocks mockMessageId) in: chat with: self core. + replyMessage text: 'reply message'; + id: (TCTMMocks mockMessageId + 2). + + betweenMessage := TCCTextMessage newFromMessageEvent: (TCTMMocks mockTextMessageJsonFrom: chat id with: #messageSenderUser replyingTo: TCTMMocks mockMessageId) in: chat with: self core. + betweenMessage text: 'between message'; + id: (TCTMMocks mockMessageId + 1). + + chat addNewestMessage: replyMessage. + self wantsToTest: (TCUMessage newFrom: replyMessage). + 0.5 seconds wait. + self assertNotReading: 'Message not loaded' in: self subject. + self assertReading: TCTMMocks mockText in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageContainsMessageText.st b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageContainsMessageText.st index 7260d4223..2452500df 100644 --- a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageContainsMessageText.st +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageContainsMessageText.st @@ -1,11 +1,9 @@ testing testMessageContainsMessageText - self core client onRequestType: 'downloadFile' respond: TCTMMocks mockImageResponseJson. - self wantsToTest: (TCUMessage newFrom: (TCTMMocks mockTextMessageWith: self core)). self assertReading: TCTMMocks mockText in: self subject. - + self wantsToTest: (TCUMessage newFrom: (TCTMMocks mockPhotoMessageWith: self core)). self assertReading: TCTMMocks mockText in: self subject. diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageRequestsAnsweredMessage.st b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageRequestsAnsweredMessage.st new file mode 100644 index 000000000..5bd6b0b61 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMessageRequestsAnsweredMessage.st @@ -0,0 +1,17 @@ +testing +testMessageRequestsAnsweredMessage + + | message chat | + + chat := self core chatsHandler chats first. + self core client onRequestType: 'getMessage' respond: (TCTMMocks mockMessageJsonFrom: chat id). + + message := TCCTextMessage newFromMessageEvent: (TCTMMocks mockTextMessageJsonFrom: chat id with: #messageSenderUser replyingTo: TCTMMocks mockMessageId) in: chat with: self core. + message text: 'reply message'; + id: (TCTMMocks mockMessageId + 1). + chat addNewestMessage: message. + + self wantsToTest: (TCUMessage newFrom: message). + 0.5 seconds wait. + self assertNotReading: 'Message not loaded' in: self subject. + self assertReading: TCTMMocks mockText in: self subject. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMouseDownOnMessage.st b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMouseDownOnMessage.st new file mode 100644 index 000000000..b3649ce0c --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testMouseDownOnMessage.st @@ -0,0 +1,10 @@ +testing +testMouseDownOnMessage + + | message messageMorph | + + message := TCTMMocks mockTextMessageWith: self core. + messageMorph := TCUMessage newFrom: message. + messageMorph mouseDown: EventMorph new. + + self assert: message chat selectedReplyToMessageId = messageMorph messageModel id. diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testTextMessageIsUserMessage.st b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testTextMessageIsUserMessage.st new file mode 100644 index 000000000..71403b310 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/instance/testTextMessageIsUserMessage.st @@ -0,0 +1,9 @@ +testing +testTextMessageIsUserMessage + + | message | + + message := (TCTMMocks mockTextMessageWith: self core). + + self wantsToTest: (TCUMessage newFrom: message). + self assert: self subject isUserMessage. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/methodProperties.json index 2dafbca29..1a784bfb4 100644 --- a/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/methodProperties.json +++ b/packages/TelegramClientTests-UI.package/TCTUMessageTests.class/methodProperties.json @@ -4,14 +4,22 @@ "instance" : { "expectedSqueak5_2Failures" : "pk 7/6/2021 12:25", "handleScreenShotTestFor:with:usedBy:" : "RK 6/26/2021 10:15", - "setUp" : "RK 6/26/2021 09:32", + "setUp" : "rgw 6/6/2022 18:42", + "testAddMembersMessage" : "ek 8/5/2022 15:37", + "testAddMembersMessageIsNotUserMessage" : "ek 8/5/2022 15:38", + "testDeleteMemberMessage" : "ek 8/5/2022 15:38", + "testDeleteMemberMessageIsNotUserMessage" : "ek 8/5/2022 15:38", + "testMessageBetweenRequestsAnsweredMessage" : "ek 8/5/2022 15:40", "testMessageColorsDifferentForIncomingOutgoing" : "tom.richter 6/26/2021 17:23", "testMessageContainsDate" : "tom.richter 6/26/2021 17:23", "testMessageContainsMessageSender" : "tom.richter 6/26/2021 17:23", - "testMessageContainsMessageText" : "tom.richter 6/26/2021 17:25", + "testMessageContainsMessageText" : "rgw 6/6/2022 18:41", "testMessageDisplaysEmojis" : "RK 7/6/2021 11:04", + "testMessageRequestsAnsweredMessage" : "ek 8/5/2022 15:43", "testMessageShrinksCorrectly" : "tom.richter 6/26/2021 21:04", - "testTextAndPhotoScaleCorrectlyLongCaption" : "tom.richter 6/26/2021 21:15", - "testTextAndPhotoScaleCorrectlyLongUserName" : "tom.richter 7/25/2021 11:22", - "testTextAndPhotoScaleCorrectlyNoCaption" : "tom.richter 6/26/2021 21:22", - "testTextAndPhotoScaleCorrectlyShortCaption" : "tom.richter 6/26/2021 21:16" } } + "testMouseDownOnMessage" : "JS 5/22/2022 18:54", + "testTextAndPhotoScaleCorrectlyLongCaption" : "rgw 8/5/2022 10:33", + "testTextAndPhotoScaleCorrectlyLongUserName" : "rgw 8/5/2022 10:34", + "testTextAndPhotoScaleCorrectlyNoCaption" : "rgw 8/5/2022 10:34", + "testTextAndPhotoScaleCorrectlyShortCaption" : "rgw 8/5/2022 10:34", + "testTextMessageIsUserMessage" : "ek 8/5/2022 15:44" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/README.md b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/README.md new file mode 100644 index 000000000..d5a656b7e --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/README.md @@ -0,0 +1 @@ +Tests the TCUMessageWrapper. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/instance/testDayDividerMessageIdInvalid.st b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/instance/testDayDividerMessageIdInvalid.st new file mode 100644 index 000000000..d041bb86c --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/instance/testDayDividerMessageIdInvalid.st @@ -0,0 +1,9 @@ +testing +testDayDividerMessageIdInvalid + + | date message | + date := (DateAndTime fromUnixTime: 1376462359) asDate. "14.8.13" + message := TCUDayDividerMessage newFromDate: date. + self wantsToTest: (TCUDayDividerMessageWrapper newFromMessage: message withWidth: 500). + + self assert: self subject messageId < 0. \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/instance/testGroupMessageContainsPhoto.st b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/instance/testGroupMessageContainsPhoto.st new file mode 100644 index 000000000..05695963f --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/instance/testGroupMessageContainsPhoto.st @@ -0,0 +1,8 @@ +testing +testGroupMessageContainsPhoto + + | message | + message := TCUMessage newFrom: (TCTMMocks mockTextMessageWith: self core inChat: TCTMMocks mockBasicGroupChat). + self wantsToTest: (TCUUserMessageWrapper newFromMessage: message withWidth: 500). + 0.1 seconds wait. + self assert: (self subject morphs first submorphs anySatisfy: [:aMorph | aMorph isImageMorph]). \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/methodProperties.json new file mode 100644 index 000000000..32383070e --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/methodProperties.json @@ -0,0 +1,6 @@ +{ + "class" : { + }, + "instance" : { + "testDayDividerMessageIdInvalid" : "js 7/31/2022 20:37", + "testGroupMessageContainsPhoto" : "ek 8/5/2022 15:46" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/properties.json b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/properties.json new file mode 100644 index 000000000..773f8a0b3 --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMessageWrapperTests.class/properties.json @@ -0,0 +1,14 @@ +{ + "category" : "TelegramClientTests-UI", + "classinstvars" : [ + ], + "classvars" : [ + ], + "commentStamp" : "JS 6/11/2022 11:48", + "instvars" : [ + ], + "name" : "TCTUMessageWrapperTests", + "pools" : [ + ], + "super" : "TCTUTestCase", + "type" : "normal" } diff --git a/packages/TelegramClientTests-UI.package/TCTUMockCore.class/instance/checkAuthenticationPassword..st b/packages/TelegramClientTests-UI.package/TCTUMockCore.class/instance/checkAuthenticationPassword..st new file mode 100644 index 000000000..8b76994ef --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUMockCore.class/instance/checkAuthenticationPassword..st @@ -0,0 +1,2 @@ +handlers +checkAuthenticationPassword: aString \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUMockCore.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUMockCore.class/methodProperties.json index 1a4493dd7..e73059a20 100644 --- a/packages/TelegramClientTests-UI.package/TCTUMockCore.class/methodProperties.json +++ b/packages/TelegramClientTests-UI.package/TCTUMockCore.class/methodProperties.json @@ -3,5 +3,6 @@ }, "instance" : { "checkAuthenticationCode:" : "JB 6/7/2021 11:52", + "checkAuthenticationPassword:" : "aka 5/21/2022 12:35", "initializeHandlers" : "JB 6/7/2021 09:19", "sendPhoneNumber:" : "JB 6/7/2021 12:04" } } diff --git a/packages/TelegramClientTests-UI.package/TCTUTestCase.class/instance/assertNotReading.inMorph..st b/packages/TelegramClientTests-UI.package/TCTUTestCase.class/instance/assertNotReading.inMorph..st new file mode 100644 index 000000000..b3b86e86c --- /dev/null +++ b/packages/TelegramClientTests-UI.package/TCTUTestCase.class/instance/assertNotReading.inMorph..st @@ -0,0 +1,4 @@ +asserting +assertNotReading: aString inMorph: aMorph + + self assertNotReading: aString in: (MTFMorphWrapper newWith: {aMorph}). \ No newline at end of file diff --git a/packages/TelegramClientTests-UI.package/TCTUTestCase.class/instance/setUp.st b/packages/TelegramClientTests-UI.package/TCTUTestCase.class/instance/setUp.st index 2974e81bc..e48a606f7 100644 --- a/packages/TelegramClientTests-UI.package/TCTUTestCase.class/instance/setUp.st +++ b/packages/TelegramClientTests-UI.package/TCTUTestCase.class/instance/setUp.st @@ -4,5 +4,7 @@ setUp self core: (TCTUMockCore newWithTeleClient: TCTMMockTdlibClient new). self core userStore: TCTMMocks mockUserStore. self core chatsHandler chats: (TCTMMocks mockChatsFor: self core). + self core client onRequestType: 'downloadFile' respond: TCTMMocks mockImageResponseJson. TCUEmojiHelper ensureEmojisArePresent. self wantsToTest: (TCUMainWindow newWithCore: self core). + (self subject findByClass: TCUChatsList) step. diff --git a/packages/TelegramClientTests-UI.package/TCTUTestCase.class/methodProperties.json b/packages/TelegramClientTests-UI.package/TCTUTestCase.class/methodProperties.json index 3ca4554c0..f78f2edd1 100644 --- a/packages/TelegramClientTests-UI.package/TCTUTestCase.class/methodProperties.json +++ b/packages/TelegramClientTests-UI.package/TCTUTestCase.class/methodProperties.json @@ -6,6 +6,7 @@ "defaultTestResultPath" : "RS 5/23/2021 17:12" }, "instance" : { "assertNotReading:in:" : "RS 5/31/2021 07:54", + "assertNotReading:inMorph:" : "JS 5/22/2022 19:17", "assertReading:in:" : "TR 6/9/2021 14:55", "assertReading:inMorph:" : "JB 6/26/2021 10:02", "computeHashOf:" : "RS 5/23/2021 16:19", @@ -16,7 +17,7 @@ "forceSaveScreenshotOf:as:in:" : "RS 5/26/2021 13:29", "openAnyChat" : "JB 7/18/2021 12:22", "openChatWithId:" : "JB 7/18/2021 12:57", - "setUp" : "RS 8/1/2021 12:53", + "setUp" : "ek 8/5/2022 15:47", "takeScreenshotOf:" : "JB 5/24/2021 16:21", "tearDown" : "RS 6/25/2021 12:38", "waitUntil:" : "RS 6/6/2021 13:00" } }