Compare commits

...

120 Commits

Author SHA1 Message Date
ave 59c76a6506 Revert "betterrotation: Restore from old-patches"
This reverts commit a8c17e2032.

I am an idiot
2021-08-24 22:14:28 +03:00
ave a8c17e2032 betterrotation: Restore from old-patches 2021-08-24 21:47:57 +03:00
ave de8cfb9a10 readme: Make the screenshot smaller 2021-08-23 00:03:15 +03:00
ave b7aa569435 README: Update readme 2021-08-23 00:01:16 +03:00
ave 7e4c49becc customtheme 87202: red pings 2021-08-22 22:42:41 +03:00
ave f58c28410d customtheme 87202: Fix logo bg color, drop bg field from ctcconfig 2021-08-22 22:34:47 +03:00
ave 91c37ab9d0 87202 nocamerabutton: Don't show the fucking expand button 2021-08-22 22:19:39 +03:00
ave 166d763792 87202 customtheme: Use CTC logo for splash 2021-08-22 22:04:35 +03:00
ave 0754700d51 87202 customtheme: black background pls 2021-08-22 21:49:40 +03:00
ave c4fd0be029 Fix gradle builds
whoops, broke it with d139344274
2021-08-22 20:16:55 +03:00
ave d139344274 Remove hardcode'd docker paths 2021-08-22 20:04:01 +03:00
ave b6f80bbee0 ctcci: Get xmlpatch command from config 2021-08-22 19:41:58 +03:00
ave 2786de6c73 Add a keystores folder 2021-08-22 19:26:57 +03:00
ave de992e86ea Stricter gitignore 2021-08-22 19:25:32 +03:00
ave 78d5dea649 Create an "others" icon folder 2021-08-22 19:17:25 +03:00
ave 7b77ce9eda Merge pull request '87202 patches' (#127) from clienthax/cutthecord:2021-05-31 into 2021-05-31
Reviewed-on: distok/cutthecord#127
2021-08-22 15:58:56 +00:00
ave f1e8382505 ctcconfig: Use better defaults 2021-08-22 18:57:56 +03:00
ave d3c51e2bef Fix images defaulting to spoilered state + not getting out 2021-08-22 18:38:17 +03:00
ave 4199ef9d22 Fix permissions on files 2021-08-22 18:37:50 +03:00
clienthax e1e88773ec notrack fixup 2021-08-21 18:12:56 +01:00
clienthax 015c90eb70 cmd cleanup 2021-08-21 18:12:42 +01:00
clienthax cdfa005d35 Split notrack and port 2021-08-21 18:00:17 +01:00
clienthax c17cb44eaa Fixup commands/supplemental changes. 2021-08-21 17:02:18 +01:00
clienthax 4de5282bf3 Woops. 2021-08-21 15:37:47 +01:00
clienthax a70f7395aa Split and implement betterdmheader 2021-08-21 15:37:40 +01:00
clienthax 1d0a8b7088 Implement slashcommands for discord api 2021-08-21 15:18:19 +01:00
clienthax 5bd99aa8c3 Deprecate old slashcommand patches 2021-08-15 14:44:15 +01:00
clienthax 5cca5ef444 Port more patches. 2021-08-11 17:56:22 +01:00
clienthax 3e0464c796 Move customtheme to xml+smali patch 2021-08-10 20:36:53 +01:00
clienthax f08854f5d0 Exclude -custom generated patches from git 2021-08-10 20:15:15 +01:00
clienthax f8dbc9333c Move noblocked to xml patch 2021-08-10 20:14:07 +01:00
clienthax 1c6b151083 Move betterrotation to xml patch 2021-08-10 20:09:53 +01:00
clienthax 0359f5f975 fix customversion 2021-08-10 20:01:46 +01:00
clienthax f709704fce Implement squareavatars as xml patch 2021-08-10 20:01:12 +01:00
clienthax ec47b98061 Move squareavatars to old patches 2021-08-10 19:57:49 +01:00
clienthax 1a7ad17c87 Add xml-port support. 2021-08-10 19:56:58 +01:00
clienthax 55e2e94b63 Dockerise 2021-08-06 18:43:36 +01:00
clienthax 8ec2dd75c2 87202 patches 2021-08-06 15:58:49 +01:00
ave 44cd92fcdc hotfix for branding 2021-06-30 15:15:30 +03:00
ave 8037a7c9b8 Add branding to 78.4 2021-06-30 15:13:42 +03:00
ave ab288a7c79 add customversion 2021-06-04 21:53:33 +03:00
ave f38df07e48 Add profilemention 2021-06-04 21:23:03 +03:00
ave 350f30b1f6 Add nozlib, remove nonearby 2021-06-04 21:02:56 +03:00
ave 4f86cec370 Add embedlinks 2021-05-31 18:40:14 +03:00
ave 9d7138b6a6 Add showtag 2021-05-31 18:31:10 +03:00
ave 66b238bb1b Fix versions on patch READMEs 2021-05-31 16:42:35 +03:00
ave ee4a3cb49e Remove noprofilestrip 2021-05-31 16:29:20 +03:00
ave 8f690ffe03 Push start on 78.4 alpha 2021-05-31 16:21:06 +03:00
ave 69700dacaf patchport: Look out for "can't find file to patch" 2021-02-21 22:43:49 +03:00
ave fb587755da Make CTCCI use a hacky self built version of apktool bc yeah 2021-02-21 22:33:49 +03:00
ave 1b99304a05 Revert "Start up work on 1387"
This reverts commit c60d13a690.
2021-02-21 22:12:13 +03:00
ave c60d13a690 Start up work on 1387 2021-01-10 05:35:35 +03:00
ave 1cc00f6a48 patchport: Fix #92 2021-01-10 03:39:47 +03:00
ave f3ee05255c supplemental: Fix #104 2021-01-10 02:41:09 +03:00
ave 4db6c07a04 Merge pull request '53.1 - 56.0 (1358 - 1371) + other small changes' (#103) from tesnos6921/cutthecord:master into master
Reviewed-on: distok/cutthecord#103
2021-01-06 19:53:43 +00:00
tesnos fb8a857955 56.0 (1371) 2021-01-05 17:09:25 -05:00
tesnos 9082828e56 55.1 (1370) 2021-01-05 17:01:54 -05:00
tesnos 354e1538c2 54.0 but better (1368) 2021-01-05 16:52:52 -05:00
tesnos 8811192499 53.8 (1367) 2021-01-05 16:44:17 -05:00
tesnos 9de62d94f3 53.6 (1365) 2021-01-05 16:23:38 -05:00
tesnos dab5801b1e 53.3 (1361) + 54.0 (1362) 2021-01-05 16:06:09 -05:00
tesnos 03827d9f02 53.1 (1358) + patchport.py performance improvements + small BUILDING.md corrections 2021-01-05 15:33:23 -05:00
ave 73cba5f94d Update building to clarify how to force old versions
Closes #95
2020-12-15 18:09:44 +03:00
eatsfoobars a35345d167
Fix all slashcommands patches 2020-12-13 05:53:12 +00:00
eatsfoobars c21b085f22
53.0 (1356) 2020-12-13 05:35:00 +00:00
eatsfoobars 91dd61f262
[1355] Fix slashcommands patch 2020-12-13 05:34:37 +00:00
eatsfoobars f52a1d0764
52.3 (1355) 2020-12-10 19:03:11 +00:00
ave b9cf51f294
rename sanerotation to betterrotation and add docs 2020-12-08 22:03:04 +03:00
ave 2027eaeb39 Merge pull request 'Add sane rotation patch.' (#91) from clienthax/cutthecord:master into master
Reviewed-on: distok/cutthecord#91
2020-12-08 18:58:34 +00:00
clienthax 846555b074 Add sane rotation patch.
Makes discord follow the system settings like every other app.
2020-12-08 18:52:51 +00:00
eatsfoobars aa4716a408
Fix `nocamerabutton` patch (thanks TechnoJo4#1337) 2020-11-20 17:05:52 +00:00
eatsfoobars be9d148ab6
49.13 (1340) 2020-11-20 16:36:30 +00:00
eatsfoobars 5b3d119feb
49.12 (1339) 2020-11-19 15:28:50 +00:00
eatsfoobars ba24b116ef
49.10 (1334) 2020-11-16 14:20:51 +00:00
eatsfoobars cc8480a670
49.8 (1330) 2020-11-13 15:21:45 +00:00
eatsfoobars 1b951992d6
49.2 (1318) 2020-11-11 12:22:17 +00:00
eatsfoobars c959bbd5dc
49.1 (1315) 2020-11-10 19:24:37 +00:00
eatsfoobars eb5982b549
48.2 (1310) 2020-11-09 19:13:11 +00:00
eatsfoobars 1a0e94e839
48.1 (1307) 2020-11-08 15:08:44 +00:00
eatsfoobars 4d55171e0a
48.0 (1306) 2020-11-05 15:14:59 +00:00
eatsfoobars eba502d79b
46.3 (1304) 2020-11-02 13:50:03 +00:00
eatsfoobars 74ef6c739c
46.0 (1301) 2020-10-27 21:47:44 +00:00
eatsfoobars 0d9e174896
45.2 (1300) 2020-10-20 01:04:24 +01:00
eatsfoobars 50635e7ef5
44.6 (1298) 2020-10-17 16:09:18 +01:00
eatsfoobars 27e17c1b02
44.5 (1295) 2020-10-15 15:18:50 +01:00
eatsfoobars fa42c5c2ac
44-alpha4 (1294) 2020-10-11 17:15:08 +01:00
eatsfoobars 6b28150550
44-alpha2 (1290) 2020-10-06 19:06:18 +01:00
eatsfoobars 042e463396
42.3 (1284) 2020-10-01 01:21:40 +01:00
eatsfoobars 7d26edb384
42.1 (1282) 2020-09-30 13:01:03 +01:00
eatsfoobars 55350f39f3
42.0 (1281) 2020-09-29 14:13:40 +01:00
eatsfoobars 0eac291e9e
41.11 (1280) 2020-09-24 10:58:57 +01:00
eatsfoobars 365fbb5434
41.10 (1279) 2020-09-23 12:24:52 +01:00
eatsfoobars 8b40115c04
41.06 (1273) 2020-09-17 10:38:27 +01:00
eatsfoobars 1e65ddc414
41.05 (1270) 2020-09-16 11:27:08 +01:00
eatsfoobars 36148dc8c4
41.02 (1266) 2020-09-15 09:48:20 +01:00
eatsfoobars af9c3084c4
Fix supplemental breaking image uploading on 1259 2020-09-13 15:09:49 +01:00
eatsfoobars b486a04551
40.04 (1259) 2020-09-13 12:14:34 +01:00
eatsfoobars 012602f8d3
Do not add the new version to the patch README if it's the same as the old one 2020-09-08 11:01:23 +01:00
eatsfoobars dedd8883e6
38.1 (1252) 2020-09-08 10:58:21 +01:00
eatsfoobars b9a34abfd1
Rollback to 1249
Custom emojis seem to be missing, probably something on Discord's side
2020-09-07 14:07:41 +01:00
eatsfoobars 4135a5166e
Fix supplemental breaking image uploading on 1251 2020-09-07 12:06:56 +01:00
eatsfoobars e4214a720a
38.1 (1251) 2020-09-07 11:16:46 +01:00
eatsfoobars a41f6243c6 38.0 (1249) 2020-08-27 15:14:03 +03:00
eatsfoobars 654b36a802 customtheme: Splash logo location changed 2020-08-23 16:53:30 +03:00
eatsfoobars be8022f711 embedlinks: Show embed links for images
Closes #70
2020-08-22 14:50:28 +03:00
eatsfoobars 3a3a87e5b0 36.5 (1246) 2020-08-22 13:36:16 +03:00
eatsfoobars 5a51e939bf 36.3 (1243) 2020-08-20 13:27:16 +03:00
Juby210 ec246529e2 add (deleted) to deleted messages (#77)
add (deleted) to deleted messages

Co-authored-by: BlueMods
Reviewed-on: distok/cutthecord#77
2020-08-20 10:05:57 +00:00
ave e17082f086 Merge pull request 'add ctc commands and subcommands to autocomplete' (#76) from Juby210/cutthecord:patch-2 into master
Reviewed-on: distok/cutthecord#76

Got approved by theo too
2020-08-12 18:27:56 +00:00
Juby210 19d9174f13 add ctc commands and subcommands to autocomplete 2020-08-12 20:02:29 +02:00
eatsfoobars e0da880575 35.0-alpha1 (1223) 2020-08-09 14:42:54 +03:00
ave 68088a72da
34.3
my fucking god discord
2020-08-01 14:48:14 +03:00
ave 6b0907b1f4
cleanartifacts: Whoopsie 2020-07-31 23:21:25 +03:00
ave c0f31381e4
Add cleanartifacts script to ctcci
Closes #75
2020-07-31 23:13:24 +03:00
ave 8021dc754f
34.2 2020-07-31 21:43:10 +03:00
ave cb48362e57
Implement gif autoplay option
Closes #63
2020-07-31 19:12:01 +03:00
ave bcbb19690b
Extend license to include other scripts 2020-07-31 17:14:49 +03:00
ave 839fac0839
Support guilds on squareavatars 2020-07-31 17:10:18 +03:00
ave 38112bd90f
hideunusableemojis: Implement patch
Closes #45

Thanks to @BlueMods for contributing this!
2020-07-31 15:37:51 +03:00
ave ce167af965
Add license information 2020-07-31 15:20:46 +03:00
3968 changed files with 2815204 additions and 1805 deletions

2
.gitattributes vendored Normal file
View File

@ -0,0 +1,2 @@
* text=auto eol=lf

12
.gitignore vendored
View File

@ -1,2 +1,14 @@
patches/*/*-custom.patch
patches/*/*.patch-failed
resources/distok/versionlogs/*
!resources/distok/versionlogs/.gitkeep
resources/fdroid/repo/icons/*.xml
resources/fonts/*.ttf
resources/fonts/*.otf
resources/icons/others/*
!resources/icons/others/.gitkeep
resources/ringtones/*
!resources/ringtones/.gitkeep
resources/keystores/*
!resources/keystores/.gitkeep
*.apk

View File

@ -2,7 +2,7 @@
#### Toolchain setup
- Get apktool (due to 2 bugs present in v2.3.4, you're strongly recommended to use v2.4.0 or higher, I compile latest from source).
- Get apktool (use [this self-built version](//f001.backblazeb2.com/file/avepub/apktool-cli-all.jar) which is master + [this pr](https://github.com/iBotPeaches/Apktool/pull/2463)).
- Get a keystore, see [here](https://stackoverflow.com/a/14994354/3286892), step 1.
- Get apksigner, it's part of android build tools.
- If you want Mutant Standard emoji patches, get 72x72 PNG copies of latest version of mutant standard emojis with codepoints. I have a zip [here](https://mutant.lavatech.top/72x72.zip).
@ -21,9 +21,8 @@ CTCCI requires python3.6+, and also likely requires Linux (I haven't tried it on
#### Initial setup
- Follow the "Toolchain setup" steps above in case you haven't already.
- Install dependencies (`python3 -m pip install -Ur requirements.txt`)
- Copy `ctcci/ctcconfig.example.py` to `ctcci/ctcconfig.py` and configure contents to your local data and your personal preferences.
- If you don't want to always automatically be required to use the latest discord version, set `LOCAL_STATE` to `True` and point `STATE_FILE` to a `state.json` file that looks like this: `{"android": {"com.discord": {"version": 909}}}`.
- If you don't want to always automatically be required to use the latest discord version, edit the `$REPO_FOLDER/patchport-state.json` file.
- Set up a local distok-style file storage for your APKs, and copy your APKs on it, and name them properly (the format is `$DISTOK_FOLDER/android/$PACKAGE_ID-$VERSION_NUMBER.apk`, example: `/home/ave/distok/android/com.discord-909.apk`).
#### Environment Variables
@ -61,11 +60,11 @@ To get the diff, run `diff -crB -x "dist" -x "res/raw" -x "build" CleanFolder Pa
#### Porting patches
You can use `patchport.py` to easily attempt to port patches. This is what I use to port between every single version.
You can use `patchport.py` to easily attempt to port patches. This is what I use to port between every single version. Note that while CTCCI requires python3.6+, `patchport.py` requires python3.7+.
It's not really intelligent and doesn't do much more than manually preparing necessary patch, checking if an existing patch can be applied to a given version, replacing relevant variables required for porting various patches and eliminating offsets caused by updates, but it saves a lot of time if used carefully.
Example command: `python3 patchport.py /home/ave/workbench/ctc/com.discord-968`
Example command: `python3.7 patchport.py /home/ave/workbench/ctc/com.discord-968`
#### Figuring out which patch is causing your build to break

68
Dockerfile Normal file
View File

@ -0,0 +1,68 @@
FROM ubuntu:21.04
# Install needed packages
RUN apt-get update
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install python3 android-sdk-build-tools wget unzip imagemagick git patch software-properties-common
# Mirror is being weird currently so install this seperatly
RUN apt-get update
RUN DEBIAN_FRONTEND=noninteractive apt-get -y install zipmerge
# Install fdroid
RUN add-apt-repository ppa:fdroid/fdroidserver
RUN apt-get update
RUN apt-get -y install fdroidserver
# Create resources folder for tools/images etc
ENV CTC_FOLDER=/opt/ctc
RUN mkdir ${CTC_FOLDER}
# Grab modified apktool
RUN mkdir ${CTC_FOLDER}/tools
RUN wget -O ${CTC_FOLDER}/tools/apktool.jar https://f001.backblazeb2.com/file/avepub/apktool-cli-all.jar
# Grab xml-patch (https://github.com/dnault/xml-patch)
RUN wget -O ${CTC_FOLDER}/tools/xml-patch.jar https://jcenter.bintray.com/com/github/dnault/xml-patch/0.3.1/xml-patch-0.3.1.jar
# Grab dex2jar (https://github.com/Aliucord/dex2jar)
RUN wget -O ${CTC_FOLDER}/tools/dex2jar.jar https://github.com/Aliucord/dex2jar/releases/download/v19-fork2/dex2jar.jar
# Grab emoji sets
ENV EMOJI_PATH=${CTC_FOLDER}/emojis
ENV EMOJI_MUTANT_PATH=${EMOJI_PATH}/mutant
ENV EMOJI_BLOBMOJIS_PATH=${EMOJI_PATH}/blobmojis
RUN mkdir ${EMOJI_PATH}
# Mutant emojis
RUN mkdir ${EMOJI_MUTANT_PATH}
WORKDIR ${EMOJI_MUTANT_PATH}
RUN wget https://mutant.lavatech.top/72x72.zip
RUN unzip 72x72.zip
RUN mv 72x72/*.png .
RUN rm -rf 72x72
RUN rm 72x72.zip
# Blobmojis
RUN mkdir ${EMOJI_BLOBMOJIS_PATH}
RUN mkdir /tmp/blobmoji
WORKDIR /tmp/blobmoji
RUN wget https://github.com/C1710/blobmoji/archive/refs/heads/main.zip
RUN 7za x main.zip
WORKDIR /tmp/blobmoji/blobmoji-main/svg
RUN find ./*.svg -exec mogrify -format png -resize 72x72 -path ${EMOJI_BLOBMOJIS_PATH} {} \; ; exit 0
# Generate self signed KS
RUN mkdir ${CTC_FOLDER}/keystores
WORKDIR ${CTC_FOLDER}/keystores
RUN keytool -genkey -alias test \
-keyalg RSA -keystore keystore.jks \
-dname "CN=Test, OU=Test, O=Test, L=Test, S=Test, C=Test" \
-storepass password -keypass password
# Make folder for git repo
RUN mkdir ${CTC_FOLDER}/gitrepo
WORKDIR ${CTC_FOLDER}/gitrepo
# paths in ctcconfig in docker
# container fs
# /opt/ctc/gitrepo
# /opt/ctc/keystores/keystore.jks not specified by default

View File

@ -2,11 +2,17 @@
Modular Client Mod for Discord's Android app.
**Latest supported Discord Android version:** 34.0 (1213), released on 2020-07-29.
**THIS IS A WORK IN PROGRESS BRANCH! SOME PATCHES ARE MISSING (tokenlogin, hideunusableemojis, plus showtag has a bug)!**
Current state is good enough™ for an RC release, and there's currently RC releases in the repo. Update away!
For status updates and support on the project, join #cutthecord on https://libera.chat. WebIRC link: https://web.libera.chat/#cutthecord
**Latest supported Discord Android version:** 87.2 - Alpha (87202), released on 2021-08-04.
New patch development will be done for the latest supported version.
![A CutTheCord screenshot](https://elixi.re/t/mh3eirsy9.png)
![A CutTheCord screenshot](https://elixi.re/t/m16z287iw.png)
Check out [README.md in patches folder to see what patches are available and what each of them do](patches/README.md)!
@ -23,3 +29,8 @@ If you fail recaptcha, [follow this](https://gitdab.com/distok/cutthecord/issues
## Building
See [BUILDING.md](BUILDING.md).
## License
- CTCCI, patchport and other scripts are AGPLv3.
- We chose to not license the patches, and are therefore "All Rights Reserved". However, you're allowed to use it to build your own version of CutTheCord, fork CutTheCord, develop your own patches etc, and we kindly ask you to send us any patches you develop that you think may be helpful. You're free to distribute binaries (apks) including CutTheCord patches as long as you give appropriate credit to the CutTheCord project.

1
ctcci/.gitignore vendored
View File

@ -1 +0,0 @@
ctcconfig.py

View File

@ -1,10 +0,0 @@
## DisTok CutTheCord: Better DM Header Patch
This patch replaces the call button on DM headers with search button. The call button is still available in the right menu.
![](https://lasagna.cat/i/9njfeecd.png)
#### Available and tested on:
- 33.1
- 34.0

View File

@ -1 +0,0 @@
../bettertm/bettertm.sh

View File

@ -1,7 +0,0 @@
\cp res/mipmap-xxxhdpi/ic_launcher_background.png res/mipmap-hdpi/ic_launcher_background.png
\cp res/mipmap-xxxhdpi/ic_launcher_background.png res/mipmap-xhdpi/ic_launcher_background.png
\cp res/mipmap-xxxhdpi/ic_launcher_background.png res/mipmap-xxhdpi/ic_launcher_background.png
\cp res/mipmap-xxxhdpi/ic_launcher_foreground.png res/mipmap-hdpi/ic_launcher_foreground.png
\cp res/mipmap-xxxhdpi/ic_launcher_foreground.png res/mipmap-xhdpi/ic_launcher_foreground.png
\cp res/mipmap-xxxhdpi/ic_launcher_foreground.png res/mipmap-xxhdpi/ic_launcher_foreground.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

View File

@ -1,3 +0,0 @@
#!/bin/bash
\cp "$1" res/drawable-xxhdpi/img_loading_clyde.png
\cp "$1" res/drawable-xxxhdpi/img_loading_clyde.png

View File

@ -1,223 +0,0 @@
#!/bin/env python3
import os
import re
import shutil
# You'll likely want to edit these lines or set DISTOK_EXTRACTED_DISCORD_PATH and DISTOK_EMOJI_MUTANT
extracted_discord_path = os.environ.get("DISTOK_EXTRACTED_DISCORD_PATH", "/tmp/cutthecord/discord")
extracted_mutstd_path = os.environ.get("DISTOK_EMOJI_MUTANT", "/root/distokfiles/mutant/72x72")
# Add your custom emojis here
# with "mutstd filename": "discord filename".
# You'll need to write a patch for `assets/data/emojis.json` too.
custom_emojis = {"1f4af-200d-1f308.png": "emoji_1f4af_1f308.webp",
"10169b-200d-1f308.png": "emoji_10169b_1f308.webp",
"1f9d1-200d-2708-fe0f.png": "emoji_1f9d1_2708.webp",
"1f9d1-200d-2695-fe0f.png": "emoji_1f9d1_2695.webp",
"1f9d1-200d-1f680.png": "emoji_1f9d1_1f680.webp",
"1f9d1-200d-1f52c.png": "emoji_1f9d1_1f52c.webp",
"1f9d1-200d-1f527.png": "emoji_1f9d1_1f527.webp",
"1f9d1-200d-1f4bb.png": "emoji_1f9d1_1f4bb.webp",
"1f9d1-200d-1f373.png": "emoji_1f9d1_1f373.webp",
"1f3fb.png": "emoji_1f3fb.webp",
"1f3fc.png": "emoji_1f3fc.webp",
"1f3fd.png": "emoji_1f3fd.webp",
"1f3fe.png": "emoji_1f3fe.webp",
"1f3ff.png": "emoji_1f3ff.webp",
"101600.png": "emoji_101600.webp",
"101601.png": "emoji_101601.webp",
"101602.png": "emoji_101602.webp",
"101603.png": "emoji_101603.webp",
"101604.png": "emoji_101604.webp",
"101605.png": "emoji_101605.webp",
"101606.png": "emoji_101606.webp",
"101607.png": "emoji_101607.webp",
"101608.png": "emoji_101608.webp",
"101609.png": "emoji_101609.webp",
"10160a.png": "emoji_10160a.webp",
"10160b.png": "emoji_10160b.webp",
"10160c.png": "emoji_10160c.webp",
"10160d.png": "emoji_10160d.webp",
"10160e.png": "emoji_10160e.webp",
"10160f.png": "emoji_10160f.webp",
"101610.png": "emoji_101610.webp",
"101611.png": "emoji_101611.webp",
"101612.png": "emoji_101612.webp",
"101613.png": "emoji_101613.webp",
"101614.png": "emoji_101614.webp",
"101615.png": "emoji_101615.webp",
"101616.png": "emoji_101616.webp",
"101617.png": "emoji_101617.webp",
"101618.png": "emoji_101618.webp",
"101619.png": "emoji_101619.webp",
"10161a.png": "emoji_10161a.webp",
"10161b.png": "emoji_10161b.webp",
"10161c.png": "emoji_10161c.webp",
"10161d.png": "emoji_10161d.webp",
"10161e.png": "emoji_10161e.webp",
"10161f.png": "emoji_10161f.webp",
"101620.png": "emoji_101620.webp",
"101621.png": "emoji_101621.webp",
"101622.png": "emoji_101622.webp",
"101623.png": "emoji_101623.webp",
"101624.png": "emoji_101624.webp",
"101625.png": "emoji_101625.webp",
"101626.png": "emoji_101626.webp",
"101627.png": "emoji_101627.webp",
"101628.png": "emoji_101628.webp",
"101629.png": "emoji_101629.webp",
"10162a.png": "emoji_10162a.webp",
"10162b.png": "emoji_10162b.webp",
"10162c.png": "emoji_10162c.webp",
"101650.png": "emoji_101650.webp",
"101651.png": "emoji_101651.webp",
"10169a.png": "emoji_10169a.webp",
"26b2-fe0f.png": "emoji_26b2.webp",
"26a8-fe0f.png": "emoji_26a8.webp",
"26a7-fe0f.png": "emoji_26a7.webp",
"26a5-fe0f.png": "emoji_26a5.webp",
"26a4-fe0f.png": "emoji_26a4.webp",
"26a3-fe0f.png": "emoji_26a3.webp",
"26a2-fe0f.png": "emoji_26a2.webp",
"2642-fe0f.png": "emoji_2642.webp",
"2640-fe0f.png": "emoji_2640.webp",
"1f9e1.png": "emoji_1f9e1.webp",
"101685.png": "emoji_101685.webp",
"101684.png": "emoji_101684.webp",
"101683.png": "emoji_101683.webp",
"101682.png": "emoji_101682.webp",
"1f9fb.png": "emoji_1f9fb.webp",
"1f9f1.png": "emoji_1f9f1.webp",
"1f9e8.png": "emoji_1f9e8.webp",
"1f9b4.png": "emoji_1f9b4.webp",
"101696.png": "emoji_101696.webp",
"101695.png": "emoji_101695.webp",
"101694.png": "emoji_101694.webp",
"101693.png": "emoji_101693.webp",
"101692.png": "emoji_101692.webp",
"10169b.png": "emoji_10169b.webp",
"101698.png": "emoji_101698.webp",
"101699.png": "emoji_101699.webp",
"1f9dd.png": "emoji_1f9dd.webp",
"1f99d.png": "emoji_1f99d.webp",
"1f99c.png": "emoji_1f99c.webp",
"1f99a.png": "emoji_1f99a.webp",
"101666.png": "emoji_101666.webp",
"1f9d0.png": "emoji_1f9d0.webp",
"1f97a.png": "emoji_1f97a.webp",
"1f976.png": "emoji_1f976.webp",
"1f975.png": "emoji_1f975.webp",
"1f974.png": "emoji_1f974.webp",
"1f973.png": "emoji_1f973.webp",
"1f970.png": "emoji_1f970.webp",
"1f92f.png": "emoji_1f92f.webp",
"1f92e.png": "emoji_1f92e.webp",
"1f92d.png": "emoji_1f92d.webp",
"1f92c.png": "emoji_1f92c.webp",
"1f92b.png": "emoji_1f92b.webp",
"1f92a.png": "emoji_1f92a.webp",
"1f929.png": "emoji_1f929.webp",
"1f928.png": "emoji_1f928.webp",
"1f575-10162b.png": "emoji_1f575_10162b.webp",
"1f486-10162b.png": "emoji_1f486_10162b.webp",
"1f481-10162b.png": "emoji_1f481_10162b.webp",
"101690.png": "emoji_101690.webp",
"101697.png": "emoji_101697.webp",
"1f9dc.png": "emoji_1f9dc.webp",
"101681.png": "emoji_101681.webp",
"101680.png": "emoji_101680.webp",
"10167f.png": "emoji_10167f.webp",
"10167e.png": "emoji_10167e.webp",
"10167d.png": "emoji_10167d.webp",
"10167c.png": "emoji_10167c.webp",
"10167b.png": "emoji_10167b.webp",
"10167a.png": "emoji_10167a.webp",
"101679.png": "emoji_101679.webp",
"101678.png": "emoji_101678.webp",
"101677.png": "emoji_101677.webp",
"101676.png": "emoji_101676.webp",
"101675.png": "emoji_101675.webp",
"101674.png": "emoji_101674.webp",
"101673.png": "emoji_101673.webp",
"101672.png": "emoji_101672.webp",
"101671.png": "emoji_101671.webp",
"101670.png": "emoji_101670.webp",
"101686.png": "emoji_101686.webp",
"101691.png": "emoji_101691.webp"}
# self note to get MM emojos:
# ls 72x72 | grep "101650-" | cut -f 1 -d '-' | sort | uniq
# ls 72x72 | grep "101651-" | cut -f 1 -d '-' | sort | uniq
# echo -e "\U1f44c"
# paw: 􁙐
# claw: 􁙑
def add_diverse_emojos():
# Hackiest regex ever
div_regex = r'(|.*/)([a-f0-9]+(|-fe0f)-(|101650|101651|101650-|101651-)'\
r'(|1016[0-2][a-f0-9]|1f3f[b-f])\.png)'
div_regex = re.compile(div_regex)
for file in mutstd_emojis:
re_result = div_regex.fullmatch(file)
if re_result:
mutant = re_result.group(2)
discord = discordify_emoji_name(mutant)
custom_emojis[mutant] = discord
def clean_emoji_name(name):
name = name.lower().replace("_", "-")\
.replace("emoji-", "").replace("-fe0f", "")
return name
def discordify_emoji_name(name):
name = "emoji_" + name.lower().replace("-", "_").replace("fe0f_", "")\
.replace("200d_", "").replace(".png", ".webp")
return name
discord_emoji_path = os.path.join(extracted_discord_path, "res", "raw")
# Get file listings in relevant folders
discord_emojis = os.listdir(discord_emoji_path)
mutstd_emojis = os.listdir(extracted_mutstd_path)
add_diverse_emojos()
# Clean names of mutantstd emojis so thar we can compare them
# to clean discord emojis later
clean_mutstd_emojis = {clean_emoji_name(emoji): emoji for
emoji in mutstd_emojis}
replace_counter = 0
# Go through each discord emoji, and clean their names
for emoji in discord_emojis:
clean_discord_emoji = clean_emoji_name("{}.png".format(os.path.splitext(emoji)[0]))
# Check if said clean name of emoji is in clean mutstd list
if clean_discord_emoji in clean_mutstd_emojis:
# Get full unclean filename of mutantstd emoji, generate relevant paths
full_mutstd_name = clean_mutstd_emojis[clean_discord_emoji]
full_mutstd_path = os.path.join(extracted_mutstd_path, full_mutstd_name)
full_discord_path = os.path.join(discord_emoji_path, emoji)
# Copy and overwrite the discord emojis with the mutantstd alternatives
shutil.copyfile(full_mutstd_path, full_discord_path)
# print("Replaced {} emoji.".format(emoji))
replace_counter += 1
for custom_emoji in custom_emojis:
# One day I'd like to do discordify_emoji_name(custom_emoji)
# But discord has too many exceptions for that~
discord_emoji_name = custom_emojis[custom_emoji]
full_mutstd_path = os.path.join(extracted_mutstd_path, custom_emoji)
full_discord_path = os.path.join(discord_emoji_path, discord_emoji_name)
shutil.copyfile(full_mutstd_path, full_discord_path)
# print("Added custom {} emoji.".format(discord_emoji_name))
replace_counter += 1
print("Done, {} emojis replaced.".format(replace_counter))

View File

@ -1,170 +0,0 @@
## DisTok CutTheCord: No Profile Strip Patch
This patch removes the "profile strip" from the left side menu, helping remove PII from screenshots:
![](https://x3.pm/i/99b1vutg.png)
#### Available and tested on:
- 8.4.2g
- 8.4.3g
- 8.4.4g
- 8.4.5g
- 8.4.8
- 8.5.0
- 8.5.1
- 8.5.3
- 8.5.4
- 8.5.5
- 8.5.6
- 8.7.6
- 8.8.4
- 8.8.8
- 8.9.6
- 8.9.7
- 8.9.8
- 8.9.9
- 9.0.0
- 9.0.1
- 9.0.2
- 9.0.3
- 9.0.4
- 9.0.6
- 9.0.9
- 9.1.0
- 9.3.8-SAO-Heathcliff
- 9.3.9
- 9.4.0
- 9.4.2-SA
- 9.4.3-SA
- 9.4.5
- 9.4.6
- 9.4.7
- 9.4.8
- 9.6.4
- 9.6.5
- 9.6.6
- 9.6.7
- 9.6.8
- 9.7.0
- 9.8.0
- 9.8.4
- 9.8.6
- 9.9.1
- 9.9.2
- 9.9.3
- 9.9.4
- 9.9.6
- 10.0.6
- 10.0.7
- 10.1.1
- 10.1.2
- 10.1.3
- 10.1.5
- 10.1.6
- 10.1.9
- 10.2.0
- 10.2.1
- 10.2.2
- 10.2.3
- 10.2.4
- 10.2.5
- 10.2.6
- 10.2.9
- 10.3.1
- 10.3.2
- 10.3.3
- 10.4.0
- 10.4.1
- 10.5.1
- 11.0
- 11.4
- 11.5
- 12.0-alpha1
- 11.7
- 12.1
- 12.2
- 12.3
- 13-alpha1
- 12.5
- 14-alpha2
- 14-alpha3
- 14.0
- 15-alpha3
- 15.0
- 16
- 17.0
- 18.0-alpha1
- 18.0-alpha9
- 18.0-alpha11
- 18.0-alpha12
- 19.0
- 20-alpha1
- 21-alpha2
- 22-alpha1
- 21.3
- 22-alpha3-alpha1
- 16
- 17.0
- 18.0-alpha1
- 18.0-alpha9
- 18.0-alpha11
- 18.0-alpha12
- 19.0
- 20-alpha1
- 21-alpha2
- 22-alpha1
- 21.3
- 22-alpha3-alpha4
- 16
- 17.0
- 18.0-alpha1
- 18.0-alpha9
- 18.0-alpha11
- 18.0-alpha12
- 19.0
- 20-alpha1
- 21-alpha2
- 22-alpha1
- 21.3
- 22-alpha3-alpha6
- 16
- 17.0
- 18.0-alpha1
- 18.0-alpha9
- 18.0-alpha11
- 18.0-alpha12
- 19.0
- 20-alpha1
- 21-alpha2
- 22-alpha1
- 21.3
- 22-alpha3-alpha7
- 16
- 17.0
- 18.0-alpha1
- 18.0-alpha9
- 18.0-alpha11
- 18.0-alpha12
- 19.0
- 20-alpha1
- 21-alpha2
- 22-alpha1
- 21.3
- 22-alpha3
- 22.4
- 22.5
- 23.0
- 24-alpha2
- 24
- 28-alpha2
- 28.1
- 29-alpha1
- 30.0
- 30.1
- 31-alpha1
- 31-alpha2
- 32-alpha2
- 32.0
- 33.1
- 34.0

View File

@ -1,16 +0,0 @@
## DisTok CutTheCord: Show Tag Patch
This patch shows user's username after their nickname, if user has a nickname.
Example, no nickname:
![](https://lasagna.cat/i/c28755s6.png)
Example, with nickname:
![](https://lasagna.cat/i/uy68njkr.png)
#### Available and tested on:
- 33.1
- 34.0

View File

@ -1,21 +0,0 @@
diff -crB from/res/values/styles.xml to/res/values/styles.xml
*** from/res/values/styles.xml 2020-07-18 13:36:43.160000000 +0300
--- to/res/values/styles.xml 2020-07-18 13:37:55.320000000 +0300
***************
*** 1010,1016 ****
<item name="actualImageScaleType">fitCenter</item>
<item name="placeholderImage">@drawable/asset_default_avatar_32dp</item>
<item name="placeholderImageScaleType">fitCenter</item>
! <item name="roundAsCircle">true</item>
</style>
<style name="Avatar.Chat" parent="@style/Avatar.Large">
<item name="android:layout_width">@dimen/avatar_size_chat</item>
--- 1010,1017 ----
<item name="actualImageScaleType">fitCenter</item>
<item name="placeholderImage">@drawable/asset_default_avatar_32dp</item>
<item name="placeholderImageScaleType">fitCenter</item>
! <item name="roundAsCircle">false</item>
! <item name="roundedCornerRadius">3dp</item>
</style>
<style name="Avatar.Chat" parent="@style/Avatar.Large">
<item name="android:layout_width">@dimen/avatar_size_chat</item>

View File

@ -1 +0,0 @@
{"versionname": "34.0", "versioncode": "1213"}

View File

@ -1,235 +0,0 @@
#!/bin/env python3
import re
import sys
import os
import json
import subprocess
import datetime
import shutil
# Example invocation:
# python3 patchport.py /home/ave/apks/com.discord-900/
with open("patchport-state.json", "r") as f:
jin = json.load(f)
from_versioncode = jin["versioncode"]
from_versionname = jin["versionname"]
apk_folder = sys.argv[1]
cutthecord_folder = os.path.dirname(os.path.realpath(__file__))
debug = False
tmp_folder = "/tmp/patchport"
if debug:
print(f"ctc folder: {cutthecord_folder}")
def modify_patch(patch_name, patch_path):
with open(patch_path) as f:
patch_content = f.read()
if patch_name in ["branding", "customversion"]:
patch_content = patch_content.replace(from_versioncode, to_versioncode)
patch_content = patch_content.replace(from_versionname, to_versionname)
if patch_name == "notrack":
# TODO: There's a risk here that we'll replace the nulled value
from_crashlytics_id = re_crashlytics.findall(patch_content)[0]
patch_content = patch_content.replace(from_crashlytics_id,
to_crashlytics_id)
return patch_content
def apply_patch(patch_contents):
subprocess.run("patch -p1 --no-backup-if-mismatch --force",
shell=True, input=patch_contents, text=True,
cwd=apk_folder, capture_output=True)
def fix_offset(patch_contents):
# OH GOD OH FUCK
shutil.rmtree(tmp_folder, ignore_errors=True)
shutil.copytree(apk_folder, tmp_folder)
subprocess.run("patch -p1 --no-backup-if-mismatch --force",
shell=True, input=patch_contents, text=True,
cwd=tmp_folder, capture_output=True)
out = subprocess.run(f"diff -crB {apk_folder} {tmp_folder}",
shell=True, input=patch_contents, text=True,
cwd=tmp_folder, capture_output=True)
shutil.rmtree(tmp_folder, ignore_errors=True)
patch_out = out.stdout.replace(apk_folder, "from").replace(tmp_folder, "to")
return patch_out
def make_necessary(version_name, version_code):
# OH GOD OH FUCK
shutil.rmtree(tmp_folder, ignore_errors=True)
shutil.copytree(apk_folder, tmp_folder)
# Set version code and name
# Due to https://github.com/iBotPeaches/Apktool/issues/2046
# Code based on https://stackoverflow.com/a/4128192/3286892
with open(os.path.join(tmp_folder, "AndroidManifest.xml")) as fin:
filec = fin.read()
incorrect_versioncode = re_versioncode_xml.findall(filec)[0]
filec = filec.replace(incorrect_versioncode,
f'platformBuildVersionCode="{to_versioncode}"')
incorrect_versionname = re_versionname_xml.findall(filec)[0]
filec = filec.replace(incorrect_versionname,
f'platformBuildVersionName="{to_versionname}"')
with open(os.path.join(tmp_folder, "AndroidManifest.xml"), "w") as fout:
fout.write(filec)
out = subprocess.run(f"diff -crB {apk_folder} {tmp_folder}",
shell=True, text=True,
cwd=tmp_folder, capture_output=True)
shutil.rmtree(tmp_folder, ignore_errors=True)
patch_out = out.stdout.replace(apk_folder, "from").replace(tmp_folder, "to")
return patch_out
re_versioncode_xml = re.compile(r'(platformBuildVersionCode="[0-9]+")')
re_versionname_xml = re.compile(r'(platformBuildVersionName="[0-9a-z.]+")')
re_versioncode_yml = re.compile(r'versionCode: \'([0-9]+)\'')
re_versionname_yml = re.compile(r'versionName: \'?(.+?)\'?$')
re_releasedate = re.compile(r'released on ([0-9]{4}-[0-9]{2}-[0-9]{2})')
re_crashlytics = re.compile(r'com\.crashlytics\.android\.build_id">([a-z0-9]'
r'{8}-?[a-z0-9]{4}-?[a-z0-9]{4}-?[a-z0-9]{4}-?'
r'[a-z0-9]{12})</string>')
# Get version code and name
with open(os.path.join(apk_folder, "apktool.yml")) as f:
file_contents = f.read()
to_versioncode = re_versioncode_yml.findall(file_contents)[0]
to_versionname = re_versionname_yml.findall(file_contents)[0]
# Get crashlytics build ID
with open(os.path.join(apk_folder, "res", "values", "strings.xml")) as f:
file_contents = f.read()
to_crashlytics_id = re_crashlytics.findall(file_contents)[0]
failures = []
for patch in os.listdir(os.path.join(cutthecord_folder, "patches")):
if debug:
print(f"going over patch: {patch}")
# Ignore non-dirs
if not os.path.isdir(os.path.join(cutthecord_folder, "patches", patch)):
if debug:
print(f"patch is not a folder, skipping: {patch}")
continue
pre_in_path = os.path.join(cutthecord_folder, "patches", patch,
f"{from_versioncode}-pre.sh")
post_in_path = os.path.join(cutthecord_folder, "patches", patch,
f"{from_versioncode}-post.sh")
pre_out_path = os.path.join(cutthecord_folder, "patches", patch,
f"{to_versioncode}-pre.sh")
post_out_path = os.path.join(cutthecord_folder, "patches", patch,
f"{to_versioncode}-post.sh")
patch_path = os.path.join(cutthecord_folder, "patches", patch,
f"{from_versioncode}.patch")
out_path = os.path.join(cutthecord_folder, "patches", patch,
f"{to_versioncode}.patch")
readme_path = os.path.join(cutthecord_folder, "patches", patch, "README.md")
# Handle copying of versioned scripts, untested and dirty!
script_path = os.path.join(cutthecord_folder, "patches", patch,
f"{from_versioncode}.sh")
if os.path.exists(script_path):
script_out_path = os.path.join(cutthecord_folder, "patches", patch,
f"{to_versioncode}.sh")
with open(script_path) as f:
with open(script_out_path, "w") as f2:
f2.write(f.read())
# Check if patch exists for from_version, if it doesn't, warn user
if not os.path.isfile(patch_path) and patch not in ["necessary"]:
# Don't warn on instructional patches
if patch not in ["customfont", "customring",
"bettertm", "bettertmlight",
"blobs"]:
print(f"SKIPPED: No {from_versionname} version found for {patch}.")
continue
# Check if pre-script exists, if it does copy it
if os.path.isfile(pre_in_path):
shutil.copyfile(pre_in_path, pre_out_path)
print(f"PRE COPIED: {patch}'s pre script was copied.")
# Check if post-script exists, if it does copy it
if os.path.isfile(post_in_path):
shutil.copyfile(post_in_path, post_out_path)
print(f"POST COPIED: {patch}'s post script was copied.")
# Create necessary instead of porting it.
if patch == "necessary":
patch_contents = make_necessary(to_versioncode, to_versionname)
else:
# Get a modified version of the patch
patch_contents = modify_patch(patch, patch_path)
# Pass the new patch to patch command and get it to attempt to patch
out = subprocess.run("patch -p1 --dry-run --force", shell=True,
cwd=apk_folder, input=patch_contents, text=True,
capture_output=True)
# Check for issues
if "FAILED" in out.stdout:
print(f"FAILED: {patch} failed, please fix by hand.")
failures.append(patch)
out_path += "-failed"
elif "offset" in out.stdout:
patch_contents = fix_offset(patch_contents)
print(f"WARNING: {patch} has offsets which were auto corrected.")
if debug:
print(out.stdout)
# Apply patch to main APK folder too
if patch in ["necessary"]:
apply_patch(patch_contents)
# Add supported version to readme of that patch, hacky
# https://stackoverflow.com/a/35130508/3286892
with open(readme_path, 'r') as f:
readme_text = f.read().replace(f'- {from_versionname}\n',
f'- {from_versionname}\n'
f'- {to_versionname}\n')
with open(readme_path, "w") as f:
f.write(readme_text)
# Save ported patch
with open(out_path, "w") as f:
f.write(patch_contents)
if not out_path.endswith("-failed"):
print(f"PORTED: {patch} was successfully ported.")
ctcreadme_path = os.path.join(cutthecord_folder, "README.md")
# TODO: can we pull the correct date from distok?
out_datestamp = datetime.datetime.utcnow().strftime("%Y-%m-%d")
# Update readme with latest version, hacky
# https://stackoverflow.com/a/35130508/3286892
with open(ctcreadme_path, 'r') as f:
ctcr_text = f.read().replace(f'{from_versionname} ({from_versioncode})',
f'{to_versionname} ({to_versioncode})')
in_datestamp = re_releasedate.findall(ctcr_text)[0]
ctcr_text = ctcr_text.replace(in_datestamp, out_datestamp)
with open(ctcreadme_path, "w") as f:
f.write(ctcr_text)
with open("patchport-state.json", "w") as f:
jout = {"versionname": to_versionname, "versioncode": to_versioncode}
json.dump(jout, f)
if failures:
print(f"Port complete. Following patches failed: {', '.join(failures)}")
else:
print("Port complete. All patches completed successfully.")

2
resources/distok/android/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*.apk

View File

View File

View File

0
resources/fonts/.gitkeep Normal file
View File

View File

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

Before

Width:  |  Height:  |  Size: 578 KiB

After

Width:  |  Height:  |  Size: 578 KiB

View File

Before

Width:  |  Height:  |  Size: 638 KiB

After

Width:  |  Height:  |  Size: 638 KiB

View File

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

View File

Before

Width:  |  Height:  |  Size: 8.5 KiB

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

Before

Width:  |  Height:  |  Size: 9.9 KiB

After

Width:  |  Height:  |  Size: 9.9 KiB

View File

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

View File

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

Before

Width:  |  Height:  |  Size: 8.5 KiB

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View File

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

View File

Before

Width:  |  Height:  |  Size: 4.6 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

Before

Width:  |  Height:  |  Size: 8.5 KiB

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

Before

Width:  |  Height:  |  Size: 9.9 KiB

After

Width:  |  Height:  |  Size: 9.9 KiB

View File

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

View File

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

Before

Width:  |  Height:  |  Size: 8.5 KiB

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

Before

Width:  |  Height:  |  Size: 9.7 KiB

After

Width:  |  Height:  |  Size: 9.7 KiB

View File

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View File

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View File

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 112 KiB

View File

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 63 KiB

View File

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View File

Before

Width:  |  Height:  |  Size: 578 KiB

After

Width:  |  Height:  |  Size: 578 KiB

View File

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

View File

Before

Width:  |  Height:  |  Size: 591 KiB

After

Width:  |  Height:  |  Size: 591 KiB

View File

Before

Width:  |  Height:  |  Size: 51 KiB

After

Width:  |  Height:  |  Size: 51 KiB

View File

View File

View File

@ -9,3 +9,9 @@ Here's why these patches are no longer maintained in this form:
- compact: It's just a pain to maintain.
- smalltime: It's just a pain to maintain.
- customdefaultemoji: There doesn't seem to be default emojis anymore?
- noprofilestrip: UI changes removed the profile strip.
- nonearby: Didn't add much anyways.
- squareavatars: Moved to xml-patchs
- betterrotation: Moved to xml-patchs
- noblocked: Moved to xml-patchs
- slashcommands: Moved to dynamic patch due to discord api supporting this now

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB from/AndroidManifest.xml to/AndroidManifest.xml
*** from/AndroidManifest.xml 2020-12-08 18:13:28.198490900 +0000
--- to/AndroidManifest.xml 2020-12-08 18:10:38.788471600 +0000
***************
*** 30,37 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 30,37 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:requestLegacyExternalStorage="true" android:roundIcon="@mipmap/ic_logo_round" android:supportsRtl="true" android:theme="@style/AppTheme.Dark" android:usesCleartextTraffic="@bool/use_cleartext_traffic">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB fromAndroidManifest.xml to/AndroidManifest.xml
*** fromAndroidManifest.xml 2021-05-31 15:40:24.000000000 +0300
--- to/AndroidManifest.xml 2021-05-31 15:40:24.000000000 +0300
***************
*** 37,44 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square_canary" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:networkSecurityConfig="@xml/network_security_config" android:roundIcon="@mipmap/ic_logo_round_canary" android:supportsRtl="true" android:theme="@style/AppTheme.Dark">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 37,44 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square_canary" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:networkSecurityConfig="@xml/network_security_config" android:roundIcon="@mipmap/ic_logo_round_canary" android:supportsRtl="true" android:theme="@style/AppTheme.Dark">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,22 @@
diff -crB fromAndroidManifest.xml to/AndroidManifest.xml
*** fromAndroidManifest.xml 2021-05-31 15:40:24.000000000 +0300
--- to/AndroidManifest.xml 2021-05-31 15:40:24.000000000 +0300
***************
*** 37,44 ****
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square_canary" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:networkSecurityConfig="@xml/network_security_config" android:roundIcon="@mipmap/ic_logo_round_canary" android:supportsRtl="true" android:theme="@style/AppTheme.Dark">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:screenOrientation="fullUser" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
--- 37,44 ----
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<application android:allowBackup="false" android:appCategory="social" android:appComponentFactory="androidx.core.app.CoreComponentFactory" android:icon="@mipmap/ic_logo_square_canary" android:label="@string/discord" android:largeHeap="true" android:name="com.discord.app.App" android:networkSecurityConfig="@xml/network_security_config" android:roundIcon="@mipmap/ic_logo_round_canary" android:supportsRtl="true" android:theme="@style/AppTheme.Dark">
<activity android:name="com.discord.samsung.SamsungConnectActivity" android:theme="@style/AppTheme.Translucent"/>
! <activity android:name="com.discord.app.AppActivity" android:theme="@style/AppTheme.Dark" android:windowSoftInputMode="adjustResize|stateHidden"/>
! <activity android:exported="true" android:launchMode="singleTask" android:name="com.discord.app.AppActivity$Main" android:theme="@style/AppTheme.Loading" android:windowSoftInputMode="adjustResize|stateHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>

View File

@ -0,0 +1,17 @@
## DisTok CutTheCord: Better Rotation
This patch changes rotation settings to disallow upside down rotation.
Contributed by [clienthax](https://gitdab.com/clienthax).
#### Available and tested on:
- 49.13
- 52.3
- 53.0
- 53.1
- 53.3
- 54.0
- 55.1
- 56.0
- 78.4 - Alpha

Some files were not shown because too many files have changed in this diff Show More