mirror of
https://github.com/revanced/revanced-integrations.git
synced 2024-12-03 01:02:55 +01:00
refactor: dialogs and seperate RYD from SB (#31)
This commit is contained in:
parent
d9268bc0fa
commit
aecafc5380
@ -22,7 +22,6 @@ public class Dialogs {
|
||||
// Inject call from YT to this
|
||||
public static void showDialogsAtStartup(Activity activity) {
|
||||
rydFirstRun(activity);
|
||||
sbFirstRun(activity);
|
||||
}
|
||||
|
||||
private static void rydFirstRun(Activity activity) {
|
||||
@ -78,58 +77,4 @@ public class Dialogs {
|
||||
activity.startActivity(intent);
|
||||
});
|
||||
}
|
||||
|
||||
private static void sbFirstRun(Activity activity) {
|
||||
Context context = ReVancedUtils.getContext();
|
||||
boolean enabled = SharedPrefHelper.getBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_ENABLED, false);
|
||||
boolean hintShown = SharedPrefHelper.getBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_HINT_SHOWN, false);
|
||||
|
||||
// If SB is enabled or hint has been shown, exit
|
||||
if (enabled || hintShown) {
|
||||
// If SB is enabled but hint hasn't been shown, mark it as shown
|
||||
if (enabled && !hintShown) {
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_HINT_SHOWN, true);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
AlertDialog.Builder builder;
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||
builder = new AlertDialog.Builder(activity, android.R.style.Theme_Material_Dialog_Alert);
|
||||
} else {
|
||||
builder = new AlertDialog.Builder(activity);
|
||||
}
|
||||
builder.setTitle(str("vanced_sb"));
|
||||
builder.setIcon(ReVancedUtils.getIdentifier("ic_sb_logo", "drawable"));
|
||||
builder.setCancelable(false);
|
||||
builder.setMessage(str("vanced_sb_firstrun"));
|
||||
builder.setPositiveButton(str("vanced_enable"),
|
||||
(dialog, id) -> {
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_HINT_SHOWN, true);
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_ENABLED, true);
|
||||
dialog.dismiss();
|
||||
});
|
||||
|
||||
builder.setNegativeButton(str("vanced_disable"),
|
||||
(dialog, id) -> {
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_HINT_SHOWN, true);
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_ENABLED, false);
|
||||
dialog.dismiss();
|
||||
});
|
||||
|
||||
builder.setNeutralButton(str("vanced_learnmore"), null);
|
||||
|
||||
AlertDialog dialog = builder.create();
|
||||
dialog.show();
|
||||
|
||||
// Set black background
|
||||
dialog.getWindow().getDecorView().getBackground().setColorFilter(new LightingColorFilter(0xFF000000, ReVancedUtils.getIdentifier("ytBrandBackgroundSolid", "color")));
|
||||
|
||||
// Set learn more action (set here so clicking it doesn't dismiss the dialog)
|
||||
dialog.getButton(DialogInterface.BUTTON_NEUTRAL).setOnClickListener(v -> {
|
||||
Uri uri = Uri.parse("https://sponsor.ajay.app/");
|
||||
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
|
||||
activity.startActivity(intent);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,80 @@
|
||||
package app.revanced.integrations.sponsorblock.dialog;
|
||||
|
||||
import static app.revanced.integrations.ryd.RYDSettings.PREFERENCES_KEY_RYD_ENABLED;
|
||||
import static app.revanced.integrations.ryd.RYDSettings.PREFERENCES_KEY_RYD_HINT_SHOWN;
|
||||
import static app.revanced.integrations.sponsorblock.SponsorBlockSettings.PREFERENCES_KEY_SPONSOR_BLOCK_ENABLED;
|
||||
import static app.revanced.integrations.sponsorblock.SponsorBlockSettings.PREFERENCES_KEY_SPONSOR_BLOCK_HINT_SHOWN;
|
||||
import static app.revanced.integrations.sponsorblock.StringRef.str;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.AlertDialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.graphics.LightingColorFilter;
|
||||
import android.net.Uri;
|
||||
import android.os.Build;
|
||||
|
||||
import app.revanced.integrations.utils.ReVancedUtils;
|
||||
import app.revanced.integrations.utils.SharedPrefHelper;
|
||||
|
||||
public class Dialogs {
|
||||
// Inject call from YT to this
|
||||
public static void showDialogsAtStartup(Activity activity) {
|
||||
sbFirstRun(activity);
|
||||
}
|
||||
|
||||
private static void sbFirstRun(Activity activity) {
|
||||
Context context = ReVancedUtils.getContext();
|
||||
boolean enabled = SharedPrefHelper.getBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_ENABLED, false);
|
||||
boolean hintShown = SharedPrefHelper.getBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_HINT_SHOWN, false);
|
||||
|
||||
// If SB is enabled or hint has been shown, exit
|
||||
if (enabled || hintShown) {
|
||||
// If SB is enabled but hint hasn't been shown, mark it as shown
|
||||
if (enabled && !hintShown) {
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_HINT_SHOWN, true);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
AlertDialog.Builder builder;
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
||||
builder = new AlertDialog.Builder(activity, android.R.style.Theme_Material_Dialog_Alert);
|
||||
} else {
|
||||
builder = new AlertDialog.Builder(activity);
|
||||
}
|
||||
builder.setTitle(str("vanced_sb"));
|
||||
builder.setIcon(ReVancedUtils.getIdentifier("ic_sb_logo", "drawable"));
|
||||
builder.setCancelable(false);
|
||||
builder.setMessage(str("vanced_sb_firstrun"));
|
||||
builder.setPositiveButton(str("vanced_enable"),
|
||||
(dialog, id) -> {
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_HINT_SHOWN, true);
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_ENABLED, true);
|
||||
dialog.dismiss();
|
||||
});
|
||||
|
||||
builder.setNegativeButton(str("vanced_disable"),
|
||||
(dialog, id) -> {
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_HINT_SHOWN, true);
|
||||
SharedPrefHelper.saveBoolean(context, SharedPrefHelper.SharedPrefNames.RYD, PREFERENCES_KEY_SPONSOR_BLOCK_ENABLED, false);
|
||||
dialog.dismiss();
|
||||
});
|
||||
|
||||
builder.setNeutralButton(str("vanced_learnmore"), null);
|
||||
|
||||
AlertDialog dialog = builder.create();
|
||||
dialog.show();
|
||||
|
||||
// Set black background
|
||||
dialog.getWindow().getDecorView().getBackground().setColorFilter(new LightingColorFilter(0xFF000000, ReVancedUtils.getIdentifier("ytBrandBackgroundSolid", "color")));
|
||||
|
||||
// Set learn more action (set here so clicking it doesn't dismiss the dialog)
|
||||
dialog.getButton(DialogInterface.BUTTON_NEUTRAL).setOnClickListener(v -> {
|
||||
Uri uri = Uri.parse("https://sponsor.ajay.app/");
|
||||
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
|
||||
activity.startActivity(intent);
|
||||
});
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user