Compare commits

...

108 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
3968 changed files with 2636930 additions and 1790 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:** 35.0-alpha1 (1223), released on 2020-08-09.
**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)!

1
ctcci/.gitignore vendored
View File

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

View File

@ -1,13 +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
- 34.2
- 34.3
- 35.0-alpha1

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,16 +0,0 @@
## DisTok CutTheCord: Hide Unusable Emojis Patch
This patch only shows the emojis the user can actually use (mostly hides custom emojis from other guilds when you don't have Nitro).
![](https://lasagna.cat/i/4g6wfksl.png)
#### Thanks
Big thanks to [@BlueMods](https://gitdab.com/BlueMods) for sending in this patch.
#### Available and tested on:
- 34.0
- 34.2
- 34.3
- 35.0-alpha1

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,173 +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
- 34.2
- 34.3
- 35.0-alpha1

View File

@ -1,19 +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
- 34.2
- 34.3
- 35.0-alpha1

View File

@ -1 +0,0 @@
{"versionname": "35.0-alpha1", "versioncode": "1223"}

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