@@ -2,6 +2,7 @@ package io.github.chsbuffer.revancedxposed.youtube.layout.sponsorblock
22
33import android.graphics.Canvas
44import android.graphics.Rect
5+ import android.os.Build
56import android.view.ViewGroup
67import app.revanced.extension.shared.Utils
78import app.revanced.extension.youtube.sponsorblock.SegmentPlaybackController
@@ -81,6 +82,11 @@ fun YoutubeHook.SponsorBlock() {
8182 SegmentPlaybackController .setSponsorBarRect(sponsorBarRectField.get(param.thisObject) as Rect )
8283 }
8384 }
85+ val drawCircle =
86+ if (Build .VERSION .SDK_INT < Build .VERSION_CODES .R )
87+ " Landroid/view/DisplayListCanvas;->drawCircle(FFFLandroid/graphics/Paint;)V"
88+ else
89+ " Landroid/graphics/RecordingCanvas;->drawCircle(FFFLandroid/graphics/Paint;)V"
8490 ::seekbarOnDrawFingerprint.hookMethod(
8591 scopedHook(
8692 // Set the thickness of the segment.
@@ -93,7 +99,7 @@ fun YoutubeHook.SponsorBlock() {
9399 }
94100 },
95101 // Find the drawCircle call and draw the segment before it.
96- DexMethod (" Landroid/graphics/RecordingCanvas;-> drawCircle(FFFLandroid/graphics/Paint;)V " ).toMethod() to {
102+ DexMethod (drawCircle).toMethod() to {
97103 before { param ->
98104 SegmentPlaybackController .drawSponsorTimeBars(
99105 param.thisObject as Canvas , param.args[1 ] as Float
@@ -141,7 +147,7 @@ fun YoutubeHook.SponsorBlock() {
141147 }
142148 })
143149
144- ::adProgressTextViewVisibilityFingerprint.hookMethod(scopedHook(::AdProgressTextVisibility .method){
150+ ::adProgressTextViewVisibilityFingerprint.hookMethod(scopedHook(::AdProgressTextVisibility .method) {
145151 before {
146152 SegmentPlaybackController .setAdProgressTextVisibility(it.args[0 ] as Int )
147153 }
0 commit comments