Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5256b47f90 | ||
|
|
5d932b06a9 | ||
|
|
076f1c2479 | ||
|
|
48f0cecbe4 |
@@ -1,3 +1,15 @@
|
||||
## [1.1.6](https://git.krtss.de/StanPonomarev/twitter-patch/compare/v1.1.5...v1.1.6) (2026-08-23)
|
||||
|
||||
### 🐛 Bug Fixes
|
||||
|
||||
* google update screen ([5d932b0](https://git.krtss.de/StanPonomarev/twitter-patch/commit/5d932b06a9e63659a98cbc9b36c4fe17807acc39))
|
||||
|
||||
## [1.1.5](https://git.krtss.de/StanPonomarev/twitter-patch/compare/v1.1.4...v1.1.5) (2026-08-23)
|
||||
|
||||
### 🐛 Bug Fixes
|
||||
|
||||
* vending update screen ([48f0cec](https://git.krtss.de/StanPonomarev/twitter-patch/commit/48f0cecbe47d73ee06c15915d5c57694856b904e))
|
||||
|
||||
## [1.1.4](https://git.krtss.de/StanPonomarev/twitter-patch/compare/v1.1.3...v1.1.4) (2026-08-22)
|
||||
|
||||
### 🐛 Bug Fixes
|
||||
|
||||
@@ -4,7 +4,7 @@ Patch bundle for X (Twitter), maintained by
|
||||
[Stan Ponomarev](https://git.krtss.de/StanPonomarev).
|
||||
|
||||
<!-- PATCHES_START -->
|
||||
> **[v1.1.4](https://git.krtss.de/StanPonomarev/twitter-patch/releases/tag/v1.1.4)** • `main` • 2 patches total
|
||||
> **[v1.1.6](https://git.krtss.de/StanPonomarev/twitter-patch/releases/tag/v1.1.6)** • `main` • 2 patches total
|
||||
<details open>
|
||||
<summary>📦 X • 2 patches</summary>
|
||||
<br>
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
org.gradle.parallel = true
|
||||
org.gradle.caching = true
|
||||
kotlin.code.style = official
|
||||
version = 1.1.4
|
||||
version = 1.1.6
|
||||
|
||||
+4
-4
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"created_at": "2026-08-22T19:19:24",
|
||||
"description": "## [1.1.4](https://git.krtss.de/StanPonomarev/twitter-patch/compare/v1.1.3...v1.1.4) (2026-08-22)\n\n### 🐛 Bug Fixes\n\n* more update required fixes ([97c30af](https://git.krtss.de/StanPonomarev/twitter-patch/commit/97c30af97d00e7f92b5c2801e9e744f00704758a))",
|
||||
"download_url": "https://git.krtss.de/StanPonomarev/twitter-patch/releases/download/v1.1.4/patches-1.1.4.mpp",
|
||||
"created_at": "2026-08-23T10:17:01",
|
||||
"description": "## [1.1.6](https://git.krtss.de/StanPonomarev/twitter-patch/compare/v1.1.5...v1.1.6) (2026-08-23)\n\n### 🐛 Bug Fixes\n\n* google update screen ([5d932b0](https://git.krtss.de/StanPonomarev/twitter-patch/commit/5d932b06a9e63659a98cbc9b36c4fe17807acc39))",
|
||||
"download_url": "https://git.krtss.de/StanPonomarev/twitter-patch/releases/download/v1.1.6/patches-1.1.6.mpp",
|
||||
"signature_download_url": "",
|
||||
"version": "1.1.4"
|
||||
"version": "1.1.6"
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"NOTE": "Do NOT manually edit this file. This file is automatically updated when semantic release (release.yml) runs. Manually editing this file can break your releases and break third party tools that use this file.",
|
||||
"version": "1.1.4",
|
||||
"version": "1.1.6",
|
||||
"patches": [
|
||||
{
|
||||
"name": "Disable outdated version screen",
|
||||
|
||||
@@ -84,6 +84,27 @@ private val forceUpdateScreenRendererFingerprint = Fingerprint(
|
||||
strings = listOf("onUpdateClick", "onLearnMoreClick")
|
||||
)
|
||||
|
||||
private val playCoreUpdateManagerFingerprint = Fingerprint(
|
||||
definingClass = "Lcom/x/android/appupdate/b${'$'}a;",
|
||||
name = "invokeSuspend",
|
||||
returnType = "Ljava/lang/Object;",
|
||||
parameters = listOf("Ljava/lang/Object;"),
|
||||
strings = listOf("x_lite_in_app_update_enabled")
|
||||
)
|
||||
|
||||
private val serverDrivenCoverRendererFingerprint = Fingerprint(
|
||||
definingClass = "Lcom/x/urt/cover/ui/j;",
|
||||
name = "a",
|
||||
returnType = "V",
|
||||
parameters = listOf(
|
||||
"Lcom/x/urt/cover/component/e;",
|
||||
"Landroidx/compose/ui/Modifier;",
|
||||
"Landroidx/compose/runtime/Composer;",
|
||||
"I"
|
||||
),
|
||||
strings = listOf("component")
|
||||
)
|
||||
|
||||
private const val APP_UPDATE_ACTIVITY = "com.twitter.clientshutdown.update.AppUpdateActivity"
|
||||
|
||||
private val disableOutdatedVersionActivityPatch = resourcePatch {
|
||||
@@ -179,5 +200,48 @@ val disableOutdatedVersionScreenPatch = bytecodePatch(
|
||||
0,
|
||||
"return-void"
|
||||
)
|
||||
|
||||
playCoreUpdateManagerFingerprint.method.addInstructions(
|
||||
0,
|
||||
"""
|
||||
sget-object v0, Lkotlin/Unit;->a:Lkotlin/Unit;
|
||||
return-object v0
|
||||
"""
|
||||
)
|
||||
|
||||
serverDrivenCoverRendererFingerprint.method.addInstructions(
|
||||
0,
|
||||
"""
|
||||
move-object/from16 v0, p0
|
||||
invoke-interface {v0}, Lcom/x/urt/cover/component/e;->a()Lcom/x/models/timelines/instructions/cover/URTCover;
|
||||
move-result-object v0
|
||||
instance-of v1, v0, Lcom/x/models/timelines/instructions/cover/URTCover${'$'}FullCover;
|
||||
if-eqz v1, :check_outdated_half_cover
|
||||
check-cast v0, Lcom/x/models/timelines/instructions/cover/URTCover${'$'}FullCover;
|
||||
invoke-virtual {v0}, Lcom/x/models/timelines/instructions/cover/URTCover${'$'}FullCover;->getData()Lcom/x/models/timelines/instructions/cover/URTFullCover;
|
||||
move-result-object v0
|
||||
invoke-virtual {v0}, Lcom/x/models/timelines/instructions/cover/URTFullCover;->getPrimaryText()Lcom/x/models/text/RichText;
|
||||
move-result-object v0
|
||||
goto :check_outdated_cover_title
|
||||
:check_outdated_half_cover
|
||||
instance-of v1, v0, Lcom/x/models/timelines/instructions/cover/URTCover${'$'}HalfCover;
|
||||
if-eqz v1, :outdated_server_cover_allowed
|
||||
check-cast v0, Lcom/x/models/timelines/instructions/cover/URTCover${'$'}HalfCover;
|
||||
invoke-virtual {v0}, Lcom/x/models/timelines/instructions/cover/URTCover${'$'}HalfCover;->getData()Lcom/x/models/timelines/instructions/cover/URTHalfCover;
|
||||
move-result-object v0
|
||||
invoke-virtual {v0}, Lcom/x/models/timelines/instructions/cover/URTHalfCover;->getPrimaryText()Lcom/x/models/text/RichText;
|
||||
move-result-object v0
|
||||
:check_outdated_cover_title
|
||||
invoke-virtual {v0}, Lcom/x/models/text/RichText;->getText()Ljava/lang/String;
|
||||
move-result-object v0
|
||||
const-string v1, "This app is out of date."
|
||||
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
|
||||
move-result v0
|
||||
if-eqz v0, :outdated_server_cover_allowed
|
||||
return-void
|
||||
:outdated_server_cover_allowed
|
||||
"""
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user