Skip to content

Commit 1dc1463

Browse files
committed
Merged DrawableResolver into ThemeHelper
1 parent 0f551ba commit 1dc1463

4 files changed

Lines changed: 20 additions & 28 deletions

File tree

app/src/main/java/org/schabi/newpipe/local/feed/FeedFragment.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,10 +75,10 @@ import org.schabi.newpipe.local.feed.item.StreamItem
7575
import org.schabi.newpipe.local.feed.service.FeedLoadService
7676
import org.schabi.newpipe.local.subscription.SubscriptionManager
7777
import org.schabi.newpipe.util.DeviceUtils
78-
import org.schabi.newpipe.util.DrawableResolver.resolveDrawable
7978
import org.schabi.newpipe.util.Localization
8079
import org.schabi.newpipe.util.NavigationHelper
8180
import org.schabi.newpipe.util.ThemeHelper.getGridSpanCountStreams
81+
import org.schabi.newpipe.util.ThemeHelper.resolveDrawable
8282
import org.schabi.newpipe.util.ThemeHelper.shouldUseGridLayout
8383
import java.time.OffsetDateTime
8484
import java.util.function.Consumer

app/src/main/java/org/schabi/newpipe/player/helper/PlaybackParameterDialog.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
import static org.schabi.newpipe.ktx.ViewUtils.animateRotation;
44
import static org.schabi.newpipe.player.Player.DEBUG;
5-
import static org.schabi.newpipe.util.DrawableResolver.resolveDrawable;
65
import static org.schabi.newpipe.util.Localization.assureCorrectAppLanguage;
6+
import static org.schabi.newpipe.util.ThemeHelper.resolveDrawable;
77

88
import android.app.Dialog;
99
import android.content.Context;

app/src/main/java/org/schabi/newpipe/util/DrawableResolver.kt

Lines changed: 0 additions & 26 deletions
This file was deleted.

app/src/main/java/org/schabi/newpipe/util/ThemeHelper.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,11 @@
2323
import android.content.Context;
2424
import android.content.res.Configuration;
2525
import android.content.res.Resources;
26+
import android.graphics.drawable.Drawable;
2627
import android.util.TypedValue;
2728

2829
import androidx.annotation.AttrRes;
30+
import androidx.annotation.NonNull;
2931
import androidx.annotation.Nullable;
3032
import androidx.annotation.StyleRes;
3133
import androidx.appcompat.app.ActionBar;
@@ -227,6 +229,22 @@ public static int resolveColorFromAttr(final Context context, @AttrRes final int
227229
return value.data;
228230
}
229231

232+
/**
233+
* Resolves a {@link Drawable} by it's id.
234+
*
235+
* @param context Context
236+
* @param attrResId Resource id
237+
* @return the {@link Drawable}
238+
*/
239+
public static Drawable resolveDrawable(
240+
@NonNull final Context context,
241+
@AttrRes final int attrResId
242+
) {
243+
final TypedValue typedValue = new TypedValue();
244+
context.getTheme().resolveAttribute(attrResId, typedValue, true);
245+
return ContextCompat.getDrawable(context, typedValue.resourceId);
246+
}
247+
230248
private static String getSelectedThemeKey(final Context context) {
231249
final String themeKey = context.getString(R.string.theme_key);
232250
final String defaultTheme = context.getResources().getString(R.string.default_theme_value);

0 commit comments

Comments
 (0)