some code imp

This commit is contained in:
gdlbo
2022-08-05 19:28:27 +03:00
parent 91bfea9917
commit 09333dc64d
7 changed files with 95 additions and 21 deletions
@@ -1,7 +1,6 @@
package com.vk.im.ui.views.dialogs;
import static com.vk.im.ui.d.vkim_administration_title;
import static ru.vtosters.lite.utils.ThemesUtils.getAccentColor;
import android.content.Context;
@@ -23,7 +22,6 @@ import androidx.annotation.ColorInt;
import androidx.appcompat.widget.AppCompatImageView;
import com.vk.core.extensions.AnimationExtKt;
import com.vk.core.ui.themes.VKThemeHelper;
import com.vk.core.util.ContextExtKt;
import com.vk.core.util.Screen;
import com.vk.core.utils.VerifyInfoHelper;
@@ -0,0 +1,38 @@
package ru.vtosters.lite.hooks;
import static ru.vtosters.lite.utils.Preferences.preferences;
import com.facebook.drawee.generic.RoundingParams;
import ru.vtosters.lite.utils.AndroidUtils;
public class PicRoundingHook{
private static final int pref = preferences.getInt("pic_rounding", 0);
public static RoundingParams inject() {
if (pref > 0) {
return customParams();
}
return new RoundingParams().a(true);
}
public static RoundingParams inject(float orig) {
if (pref > 0) {
return customParams();
}
return new RoundingParams().b(orig);
}
public static RoundingParams inject(float orig, float orig2, float orig3, float orig4) {
if (pref > 0) {
orig = orig2 = orig3 = orig4 = AndroidUtils.dp2px(pref);
}
return new RoundingParams().a(orig, orig2, orig3, orig4);
}
private static RoundingParams customParams(){
return RoundingParams.b(AndroidUtils.dp2px(pref), AndroidUtils.dp2px(pref), AndroidUtils.dp2px(pref), AndroidUtils.dp2px(pref));
}
}
@@ -0,0 +1,41 @@
package ru.vtosters.lite.ui.dialogs;
import static ru.vtosters.lite.utils.AndroidUtils.dp2px;
import static ru.vtosters.lite.utils.AndroidUtils.edit;
import static ru.vtosters.lite.utils.AndroidUtils.getPreferences;
import static ru.vtosters.lite.utils.LifecycleUtils.restartApplicationWithTimer;
import android.content.Context;
import android.widget.LinearLayout;
import android.widget.SeekBar;
import com.vk.core.dialogs.alert.VkAlertDialog;
import ru.vtosters.lite.utils.LayoutUtils;
public class RoundingSeekbarDialog{
public static void dialog(Context context) {
LinearLayout mContainer = new LinearLayout(context);
SeekBar seek = new SeekBar(context);
seek.setMax(10);
seek.setKeyProgressIncrement(0);
seek.setProgress(getPreferences().getInt("pic_rounding", 0));
seek.setPadding(dp2px(16f), dp2px(16f), dp2px(16f), dp2px(16f));
mContainer.addView(seek, LayoutUtils.createLinear(-1, -2));
VkAlertDialog.Builder builder = new VkAlertDialog.Builder(context);
builder.setTitle("Выберите размер закругления углов");
builder.setMessage("Для отключения функции закругления углов введите 0");
builder.setCancelable(true);
builder.setNegativeButton("Отмена", null);
builder.setView(mContainer);
builder.setPositiveButton("Применить", (dialog, which) -> {
edit().putInt("pic_rounding", seek.getProgress()).commit();
restartApplicationWithTimer();
});
builder.show();
}
}
@@ -40,6 +40,7 @@ import okhttp3.Request;
import ru.vtosters.lite.downloaders.VideoDownloader;
import ru.vtosters.lite.music.Scrobbler;
import ru.vtosters.lite.ui.adapters.ImagineArrayAdapter;
import ru.vtosters.lite.ui.dialogs.RoundingSeekbarDialog;
public class MediaFragment extends MaterialPreferenceToolbarFragment {
public static void download(Context ctx) {
@@ -162,6 +163,11 @@ public class MediaFragment extends MaterialPreferenceToolbarFragment {
return true;
});
findPreference("customrounding").setOnPreferenceClickListener(preference -> {
RoundingSeekbarDialog.dialog(getContext());
return true;
});
if (isLoggedIn()) {
findPreference("lastfm_auth").setSummary("Вы авторизованы как " + Scrobbler.getUserName());
} else {
@@ -42,7 +42,7 @@ public class AndroidUtils {
@NonNull
public static Context getGlobalContext() {
try {
return (Context) ReflectionUtils.invokeStaticMethod("android.app.AppGlobals", "getInitialApplication");
return ReflectionUtils.invokeStaticMethod("android.app.AppGlobals", "getInitialApplication");
} catch (Exception e) {
e.printStackTrace();
}
+3
View File
@@ -89,6 +89,9 @@
<Preference
android:key="select_photo_search_engine"
android:title="Выбор движка для поиска фото" />
<Preference
android:key="customrounding"
android:title="Размер закруглений картинок" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/vkx_title">
<Preference
@@ -74,13 +74,9 @@
.method public static b(FFFF)Lcom/facebook/drawee/generic/RoundingParams;
.locals 1
.line 4
new-instance v0, Lcom/facebook/drawee/generic/RoundingParams;
invoke-static {p0, p1, p2, p3}, Lru/vtosters/lite/hooks/PicRoundingHook;->inject(FFFF)Lcom/facebook/drawee/generic/RoundingParams;
invoke-direct {v0}, Lcom/facebook/drawee/generic/RoundingParams;-><init>()V
.line 5
invoke-virtual {v0, p0, p1, p2, p3}, Lcom/facebook/drawee/generic/RoundingParams;->a(FFFF)Lcom/facebook/drawee/generic/RoundingParams;
move-result-object v0
return-object v0
.end method
@@ -88,12 +84,9 @@
.method public static d(F)Lcom/facebook/drawee/generic/RoundingParams;
.locals 1
.line 2
new-instance v0, Lcom/facebook/drawee/generic/RoundingParams;
invoke-static {p0}, Lru/vtosters/lite/hooks/PicRoundingHook;->inject(F)Lcom/facebook/drawee/generic/RoundingParams;
invoke-direct {v0}, Lcom/facebook/drawee/generic/RoundingParams;-><init>()V
invoke-virtual {v0, p0}, Lcom/facebook/drawee/generic/RoundingParams;->b(F)Lcom/facebook/drawee/generic/RoundingParams;
move-result-object v0
return-object v0
.end method
@@ -101,14 +94,9 @@
.method public static i()Lcom/facebook/drawee/generic/RoundingParams;
.locals 2
.line 1
new-instance v0, Lcom/facebook/drawee/generic/RoundingParams;
invoke-static {}, Lru/vtosters/lite/hooks/PicRoundingHook;->inject()Lcom/facebook/drawee/generic/RoundingParams;
invoke-direct {v0}, Lcom/facebook/drawee/generic/RoundingParams;-><init>()V
const/4 v1, 0x1
invoke-virtual {v0, v1}, Lcom/facebook/drawee/generic/RoundingParams;->a(Z)Lcom/facebook/drawee/generic/RoundingParams;
move-result-object v0
return-object v0
.end method