add ctc commands and subcommands to autocomplete #76
2 changed files with 277 additions and 5 deletions
|
@ -1,6 +1,6 @@
|
|||
diff -crB from/smali/com/discord/stores/StoreMessages.smali to/smali/com/discord/stores/StoreMessages.smali
|
||||
*** from/smali/com/discord/stores/StoreMessages.smali 2020-08-09 14:14:55.960000000 +0300
|
||||
--- to/smali/com/discord/stores/StoreMessages.smali 2020-08-09 14:15:35.250000000 +0300
|
||||
*** from/smali/com/discord/stores/StoreMessages.smali Wed Aug 12 18:07:38 2020
|
||||
--- to/smali/com/discord/stores/StoreMessages.smali Wed Aug 12 19:30:34 2020
|
||||
***************
|
||||
*** 922,927 ****
|
||||
--- 922,931 ----
|
||||
|
@ -3330,9 +3330,282 @@ diff -crB from/smali/com/discord/stores/StoreMessages.smali to/smali/com/discord
|
|||
+ :cond_0
|
||||
+ return-object p0
|
||||
+ .end method
|
||||
diff -crB from/smali/com/discord/widgets/chat/input/WidgetChatInputCommandsModel.smali to/smali/com/discord/widgets/chat/input/WidgetChatInputCommandsModel.smali
|
||||
*** from/smali/com/discord/widgets/chat/input/WidgetChatInputCommandsModel.smali Wed Aug 12 18:07:40 2020
|
||||
--- to/smali/com/discord/widgets/chat/input/WidgetChatInputCommandsModel.smali Wed Aug 12 19:49:34 2020
|
||||
***************
|
||||
*** 835,843 ****
|
||||
.line 5
|
||||
invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
|
||||
! move-result-object v1
|
||||
|
||||
! invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
|
||||
return-object v0
|
||||
.end method
|
||||
--- 835,1067 ----
|
||||
.line 5
|
||||
invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
|
||||
! move-result-object v2
|
||||
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! # ctc commands
|
||||
!
|
||||
! const-string v2, "lenny"
|
||||
!
|
||||
! const-string v3, "( ͡° ͜ʖ ͡°)"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "upper"
|
||||
!
|
||||
! const-string v3, "{CTC_COMMAND}"
|
||||
!
|
||||
! const-string v4, "Makes text uppercase"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "lower"
|
||||
!
|
||||
! const-string v4, "Makes text lowercase"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "bold"
|
||||
!
|
||||
! const-string v4, "Makes text bold"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "spoiler"
|
||||
!
|
||||
! const-string v4, "Marks your message as a spoiler"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "spoilerimg"
|
||||
!
|
||||
! const-string v4, "Prepends SPOILER_ to names of all images attached to the message that starts with this, causing them to get marked as spoiler"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "me"
|
||||
!
|
||||
! const-string v4, "Display text with emphasis"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "st"
|
||||
!
|
||||
! const-string v4, "Puts a strikethrough the message"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "owo"
|
||||
!
|
||||
! const-string v4, "Myakes tyext reawwy owo-ly, nya :3"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "fw"
|
||||
!
|
||||
! const-string v4, "Makes text fullwidth (like “Sent from my Android Device”)"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "gordon"
|
||||
!
|
||||
! const-string v4, "𝗛𝗲𝗹𝗹𝗼,𝗚𝗼𝗿𝗱𝗼𝗻!"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "small"
|
||||
!
|
||||
! const-string v4, "Makes text smaller (like “ᴛʜɪs”)"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "smaller"
|
||||
!
|
||||
! const-string v4, "Makes text even smaller (like “ᵗʰvˢ”)"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "flip"
|
||||
!
|
||||
! const-string v4, "Flips text (like “ʇɥıs”)"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "clap"
|
||||
!
|
||||
! const-string v4, "Please 👏 clap"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "ctc channelleak"
|
||||
!
|
||||
! const-string v4, "Shows all channels, even those you don’t have permissions to view"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "ctc notyping"
|
||||
!
|
||||
! const-string v4, "Disables typing event so that it’s not visible when you type"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "ctc nodelete"
|
||||
!
|
||||
! const-string v4, "Disables handling of message delete events"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "ctc gifautoplay"
|
||||
!
|
||||
! const-string v4, "Disables auto play of GIFs"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "ctc token"
|
||||
!
|
||||
! const-string v4, "Gives or sets token"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "ctc addaccount"
|
||||
!
|
||||
! const-string v4, "Adds an account to the account switcher"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
!
|
||||
! const-string v2, "ctc account"
|
||||
!
|
||||
! const-string v4, "Switches to the account"
|
||||
!
|
||||
! invoke-static {v2, v3, v4, v1}, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->createSlashCommand(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/discord/widgets/chat/input/WidgetChatInputSlashAction;)Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;
|
||||
!
|
||||
! move-result-object v2
|
||||
!
|
||||
! invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
||||
|
||||
return-object v0
|
||||
.end method
|
||||
***************
|
||||
*** 1503,1508 ****
|
||||
--- 1727,1738 ----
|
||||
.locals 2
|
||||
|
||||
.line 1
|
||||
+ iget-object v0, p1, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->slashOutput:Ljava/lang/String;
|
||||
+
|
||||
+ const-string v1, "{CTC_COMMAND}"
|
||||
+
|
||||
+ if-eq v0, v1, :cond_0
|
||||
+
|
||||
iget-object v0, p1, Lcom/discord/widgets/chat/input/WidgetChatInputCommandsModel;->tag:Ljava/lang/String;
|
||||
|
||||
const-string v1, ""
|
||||
***************
|
||||
*** 1530,1535 ****
|
||||
--- 1760,1766 ----
|
||||
|
||||
move-result-object p0
|
||||
|
||||
+ :cond_0
|
||||
return-object p0
|
||||
.end method
|
||||
|
||||
diff -crB from/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali to/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali
|
||||
*** from/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali 2020-08-09 14:14:56.710000000 +0300
|
||||
--- to/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali 2020-08-09 14:34:47.100000000 +0300
|
||||
*** from/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali Wed Aug 12 18:07:40 2020
|
||||
--- to/smali/com/discord/widgets/chat/input/WidgetChatInputSend$configureSendListeners$1.smali Wed Aug 12 19:19:05 2020
|
||||
***************
|
||||
*** 693,698 ****
|
||||
--- 693,728 ----
|
||||
|
|
|
@ -37,7 +37,6 @@ Commands like fw can be generated by `textreplacegen.py` or `textreplacegen-arra
|
|||
|
||||
## Known bugs
|
||||
- There's no help.
|
||||
- The slashcommands do not show when putting a slash (which was added in I think 9.7.2).
|
||||
- Output from /ctc commands doesn't get properly displayed if enter is not pressed using a physical keyboard (usb or bluetooth). This is bizarre and oh god please help me solve this bug.
|
||||
|
||||
#### Available and tested on:
|
||||
|
|
Reference in a new issue