Compare commits

..
Author SHA1 Message Date
gdlbo 1e6c60f2ed Fixed statusbar and navbar light coloring 2022-05-17 23:08:12 +03:00
gdlbo beedb1538d Poll fix 2022-05-17 20:05:16 +03:00
gdlbo 8463f9e963 Fixes 2022-05-17 18:40:56 +03:00
gdlbo ce8f88b8d4 reworked statusbar coloring 2022-05-17 00:35:39 +03:00
gdlbo ff7d080b5a fix music tabs 2022-05-16 22:38:57 +03:00
gdlbo 12ad83c607 reworked do not read 2022-05-16 21:50:32 +03:00
gdlbo cdf5d2c37c fixes 2022-05-16 21:27:59 +03:00
gdlbo 9af8e1729e copyright posts detect 2022-05-16 21:21:39 +03:00
gdlbo d5219ed322 Fixes + some imp of custom msg loader 2022-05-16 00:11:00 +03:00
gdlbo 7af9a72e77 Fixes 2022-05-15 21:23:48 +03:00
gdlbo 08817bde7e Reworked some cringe code 2022-05-15 21:11:25 +03:00
gdlbo d1e9aadd71 fixed white screamers (maybe) 2022-05-13 20:28:20 +03:00
gdlbo b6307182cd fixes 2022-05-13 19:59:36 +03:00
gdlbo cc70e55b53 Fix summ 2022-05-13 15:36:42 +03:00
gdlbo ed08e97a50 Color fixes 2022-05-13 15:12:02 +03:00
gdlbo 44904786d9 Some corrections 2022-05-13 14:13:36 +03:00
gdlbo 12b67ce189 color fix header 2022-05-13 14:10:18 +03:00
gdlbo 21b0edf092 Fixes 2022-05-13 14:05:00 +03:00
gdlbo 2adb446d80 Fix open notifs 2022-05-13 12:40:42 +03:00
gdlbo 60738458bb Fixes 2022-05-13 11:59:15 +03:00
gdlbo a591026258 Fix article custom verifs 2022-05-12 18:47:42 +03:00
gdlbo 1bab7fa17c Monet dockbar icons coloring 2022-05-12 18:04:12 +03:00
gdlbo 2713216728 Added more summaries 2022-05-12 16:50:30 +03:00
gdlbo f9a529275a System theme at start 2022-05-11 20:59:37 +03:00
78 changed files with 496 additions and 235 deletions
+1
View File
@@ -86,6 +86,7 @@ android {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
}
namespace 'ru.vtosters.lite'
}
dependencies {
+1 -2
View File
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="ru.vtosters.lite">
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
@@ -27,7 +27,6 @@ import java.util.regex.Pattern;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import ru.f0x1d.net.F0x1dRequest;
import ru.vtosters.lite.utils.Preferences;
public class FoafBase {
private static final Pattern FOAF_REGEX = Pattern.compile("<ya:created dc:date=\"(.+?)\"\\/>");
@@ -1,8 +1,10 @@
package ru.vtosters.lite.ui.fragments.dockbar;
import static ru.vtosters.lite.utils.Globals.getContext;
import static ru.vtosters.lite.utils.Themes.getAccentColor;
import android.content.res.ColorStateList;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.view.Menu;
import android.view.MenuItem;
@@ -62,11 +64,17 @@ public class DockBarInjector {
for (DockBarTab tab : sManager.getSelectedTabs()) {
MenuItem add = menu.add(0, tab.id, 0, tab.titleID);
Drawable drawable = getContext().getResources().getDrawable(tab.iconID);
ColorStateList colorStateList = getContext().getResources().getColorStateList(com.vtosters.lite.R.color.bottom_navigation_item);
// if (isAndroidMonet()) {
// colorStateList = ColorStateList.valueOf(Themes.getAccentColor());
// }
add.setIcon(new RecoloredDrawable(drawable, colorStateList));
ColorStateList dockcolors = new ColorStateList(
new int[][]{
new int[]{android.R.attr.state_checked},
new int[]{-android.R.attr.state_checked}
},
new int[] {
getAccentColor(),
Color.parseColor("#ffaaaeb3")
}
);
add.setIcon(new RecoloredDrawable(drawable, dockcolors));
add.setShowAsAction(1);
add.setCheckable(true);
}
@@ -8,8 +8,8 @@ import static ru.vtosters.lite.utils.Globals.getIdentifier;
import static ru.vtosters.lite.utils.Globals.getResources;
import static ru.vtosters.lite.utils.Globals.getString;
import static ru.vtosters.lite.utils.Themes.getAccentColor;
import static ru.vtosters.lite.utils.Themes.getNavbarColor;
import static ru.vtosters.lite.utils.Themes.getSTextAttr;
import static ru.vtosters.lite.utils.Themes.getTabbarBackground;
import static ru.vtosters.lite.utils.Themes.getTextAttr;
import static ru.vtosters.lite.utils.Themes.recolorDrawable;
@@ -372,7 +372,7 @@ public class StickersFragment extends ToolbarFragment {
holder.switchCompat.setOnCheckedChangeListener((buttonView, isChecked) -> stickersService.setPackEnabled(pack, isChecked, false));
holder.count.setText(pack.stickersCount + " " + getString("stickerscount"));
holder.layout.setBackgroundColor(getNavbarColor());
holder.layout.setBackgroundColor(getTabbarBackground());
// Color костыль
int color = getTextAttr();
@@ -1,7 +1,7 @@
package ru.vtosters.lite.utils;
import static ru.vtosters.lite.utils.Globals.getContext;
import static ru.vtosters.lite.utils.Globals.getPreferences;
import static ru.vtosters.lite.utils.Globals.getPrefsValue;
import static ru.vtosters.lite.utils.Preferences.BooleanFalse;
import android.content.ContentValues;
@@ -76,7 +76,7 @@ public class DeletedMessagesHandler {
}
private static String getPreifxUndelete() {
String string = getPreferences().getString("undeletemsg_prefix", "");
String string = getPrefsValue("undeletemsg_prefix");
if (string.isEmpty()) {
return "[Удалено] ";
}
@@ -41,6 +41,10 @@ public class Globals {
return prefs;
}
public static String getPrefsValue(String pref) {
return getPreferences().getString(pref, "");
}
// Current UserId
public static int getUserId() {
return VKAccountManager.b().a();
@@ -162,14 +166,14 @@ public class Globals {
try {
if (Build.VERSION.SDK_INT >= 26) {
NotificationManager notificationManager = (NotificationManager) getContext().getSystemService(Context.NOTIFICATION_SERVICE);
boolean z = false;
boolean hasMusicChannel = false;
try {
if (notificationManager.getNotificationChannel("audio_playback_channel") != null) {
z = true;
hasMusicChannel = true;
}
} catch (Exception ignored) {
}
if (!z) {
if (!hasMusicChannel) {
notificationManager.createNotificationChannel(new NotificationChannel("audio_playback_channel", getResources().getString(com.vtosters.lite.R.string.audio_message_play_error), NotificationManager.IMPORTANCE_LOW));
}
}
@@ -239,4 +243,13 @@ public class Globals {
resources.updateConfiguration(configuration, resources.getDisplayMetrics());
return context;
}
public static float[] getCenterScreenCoords() {
int width = getResources().getDisplayMetrics().widthPixels;
int height = getResources().getDisplayMetrics().heightPixels;
int centerWidth = width/2;
int centerHeight = height/2;
return new float[] {centerWidth, centerHeight};
}
}
@@ -3,7 +3,7 @@ package ru.vtosters.lite.utils;
import static java.lang.Long.MAX_VALUE;
import static ru.vtosters.lite.ui.fragments.dockbar.DockBarManager.getInstance;
import static ru.vtosters.lite.utils.Globals.getContext;
import static ru.vtosters.lite.utils.Globals.getPreferences;
import static ru.vtosters.lite.utils.Globals.getPrefsValue;
import static ru.vtosters.lite.utils.Preferences.BooleanTrue;
import static ru.vtosters.lite.utils.Preferences.adsgroup;
import static ru.vtosters.lite.utils.Preferences.adsstories;
@@ -65,10 +65,10 @@ public class Newsfeed {
getFilter("default_ad_list", "StandartFilter.txt");
getFilter("shitposting", "IDontWantToReadIt.txt");
String string = getPreferences().getString("spamfilters", "");
String customfilters = getPrefsValue("spamfilters");
if (!string.isEmpty()) {
mFilters.addAll(Arrays.asList(string.split(", ")));
if (!customfilters.isEmpty()) {
mFilters.addAll(Arrays.asList(customfilters.split(", ")));
}
}
@@ -94,11 +94,11 @@ public class Newsfeed {
public static boolean injectFilters(JSONObject jSONObject) {
String optString = jSONObject.optString(NavigatorKeys.j, "");
if (!ads(optString) && !authors_rec(optString) && !recomm(optString) && !friendrecomm(optString)) {
if (!ads(optString) && !checkCopyright(optString) && !authors_rec(optString) && !recomm(optString) && !friendrecomm(optString)) {
String optString2 = jSONObject.optString("post_type", "");
if (!ads(optString2) && !authors_rec(optString2) && !recomm(optString2) && !friendrecomm(optString2)) {
String optString3 = jSONObject.optString("filters", "");
if (ads(optString3) || authors_rec(optString3) || recomm(optString3) || friendrecomm(optString3) || isBlockedByFilter(jSONObject.optString(NavigatorKeys.x, "")) || checkCopyright(jSONObject) || captions(jSONObject)) {
if (ads(optString3) || authors_rec(optString3) || recomm(optString3) || friendrecomm(optString3) || isBlockedByFilter(jSONObject.optString(NavigatorKeys.x, "")) || captions(jSONObject)) {
return false;
}
return !AD(jSONObject);
@@ -142,8 +142,8 @@ public class Newsfeed {
return jSONObject.optInt("marked_as_ads", 0) == 1 && adsgroup();
}
public static boolean checkCopyright(JSONObject jSONObject) {
return jSONObject.optInt("copyright", 0) == 1 && copyright_post();
public static boolean checkCopyright(String str) {
return str.equals("copyright") && copyright_post();
}
public static String friendsads() {
@@ -171,7 +171,7 @@ public class Newsfeed {
}
public static String getCommentsSort(String def) {
switch (getPreferences().getString("commentssort", "")) {
switch (getPrefsValue("commentssort")) {
case "new":
return "desc";
case "old":
@@ -182,7 +182,7 @@ public class Newsfeed {
}
public static long getUpdateNewsfeed(boolean refresh_timeout) {
switch (getPreferences().getString("newsupdate", "")) {
switch (getPrefsValue("newsupdate")) {
case "no_update":
return MAX_VALUE;
case "imd_update":
@@ -193,7 +193,7 @@ public class Newsfeed {
}
public static Class getStartFragment() {
switch (getPreferences().getString("start_values", "")) {
switch (getPrefsValue("start_values")) {
case "newsfeed":
return newfeed() ? HomeFragment.class : NewsfeedFragment.class;
case "messenger":
@@ -37,18 +37,15 @@ public class OEMDetector {
private static String getSystemProperty(String str) {
BufferedReader bufferedReader;
Throwable th;
BufferedReader bufferedReader2 = null;
try {
bufferedReader = new BufferedReader(new InputStreamReader(Runtime.getRuntime().exec("getprop " + str).getInputStream()), 1024);
try {
String readLine = bufferedReader.readLine();
try {
bufferedReader.close();
} catch (IOException e) {
e.printStackTrace();
}
return readLine;
return bufferedReader.readLine();
} catch (IOException ignored) {
}
} catch (Throwable ignored) {
@@ -4,11 +4,12 @@ import static ru.vtosters.lite.ui.fragments.multiaccount.MultiAccountManager.mig
import static ru.vtosters.lite.utils.DeletedMessagesHandler.reloadMessagesList;
import static ru.vtosters.lite.utils.Globals.fixGapps;
import static ru.vtosters.lite.utils.Globals.getContext;
import static ru.vtosters.lite.utils.Globals.getPreferences;
import static ru.vtosters.lite.utils.Globals.getPrefsValue;
import static ru.vtosters.lite.utils.Globals.registerActivities;
import static ru.vtosters.lite.utils.Newsfeed.setupFilters;
import static ru.vtosters.lite.utils.OpusLoader.LoadLibrary;
import static ru.vtosters.lite.utils.Proxy.setProxy;
import static ru.vtosters.lite.utils.Themes.systemThemeChanger;
import android.app.Application;
import android.content.Context;
@@ -35,8 +36,10 @@ public class Preferences {
reloadMessagesList();
registerActivities(application);
LoadLibrary("vkopustest");
systemThemeChanger();
}
public static boolean BooleanFalse(String key) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext());
return prefs.getBoolean(key, false);
@@ -51,6 +54,10 @@ public class Preferences {
return BooleanTrue("opusmodule");
}
public static boolean systemtheme() {
return BooleanTrue("systemtheme");
}
public static boolean authorsrecomm() {
return BooleanTrue("authorsrecomm");
}
@@ -230,6 +237,10 @@ public class Preferences {
return dnr() ? "messages.markAsRead" : "null";
}
public static String copyrightfix() {
return copyright_post() ? "copyright" : "ads_easy_promote";
}
public static boolean refsfilter() {
return BooleanFalse("refsfilter");
}
@@ -291,7 +302,7 @@ public class Preferences {
}
public static int getMsgCount() {
String customvalue = getPreferences().getString("msgcount", "");
String customvalue = getPrefsValue("msgcount");
return customvalue.isEmpty() ? 30 : Integer.parseInt(customvalue);
}
@@ -316,13 +327,11 @@ public class Preferences {
}
public static String VKVersion() {
String string = getPreferences().getString("vkver", "");
return !string.isEmpty() ? string : VKVER;
return VKVER;
}
public static int VKVersionBuild() {
String string = getPreferences().getString("vkbuild", "");
return !string.isEmpty() ? Integer.parseInt(string) : VKBUILD;
return VKBUILD;
}
public static long VKVersionBuildLong() {
@@ -330,7 +339,7 @@ public class Preferences {
}
public static String getLocale() {
String string = getPreferences().getString("lang_value", "");
String string = getPrefsValue("lang_value");
if (string.equals("system")) {
return Locale.getDefault().getLanguage();
}
@@ -1,25 +1,23 @@
package ru.vtosters.lite.utils;
import static java.lang.System.*;
import static ru.vtosters.lite.utils.Globals.*;
import static ru.vtosters.lite.utils.Preferences.*;
import static java.lang.System.clearProperty;
import static java.lang.System.getProperties;
import static ru.vtosters.lite.utils.Globals.getPrefsValue;
import static ru.vtosters.lite.utils.Preferences.BooleanFalse;
import java.util.Properties;
public class Proxy {
public static String getOauthComAuth() {
String oauthComHttps = getOauthComHttps();
return oauthComHttps + "/authorize";
return getOauthComHttps() + "/authorize";
}
public static String getOauthComAuthClient() {
String oauthComAuth = getOauthComAuth();
return oauthComAuth + "?client_id=";
return getOauthComAuth() + "?client_id=";
}
public static String getOauthComBlank() {
String oauthComHttps = getOauthComHttps();
return oauthComHttps + "/blank.html";
return getOauthComHttps() + "/blank.html";
}
public static String getOauthComBlankRedirect() {
@@ -31,8 +29,7 @@ public class Proxy {
}
public static String getStaticComSupport() {
String staticCom = getStaticCom();
return staticCom + "/support";
return getStaticCom() + "/support";
}
public static String oauthFix() {
@@ -40,7 +37,7 @@ public class Proxy {
}
public static String getApiCom() {
String string = getPreferences().getString("proxyapi", "");
String string = getPrefsValue("proxyapi");
if (!proxy() & string.isEmpty()) {
return "api.vk.com";
}
@@ -48,7 +45,7 @@ public class Proxy {
}
public static String getAwayPhpCom() {
String string = getPreferences().getString("proxyapi", "");
String string = getPrefsValue("proxyapi");
if (!proxy() & string.isEmpty()) {
return "m.vk.com";
}
@@ -56,7 +53,7 @@ public class Proxy {
}
public static String getOauthCom() {
String string = getPreferences().getString("proxyoauth", "");
String string = getPrefsValue("proxyoauth");
if (!proxy() & string.isEmpty()) {
return "oauth.vk.com";
}
@@ -64,7 +61,7 @@ public class Proxy {
}
public static String getStaticCom() {
String string = getPreferences().getString("proxystatic", "");
String string = getPrefsValue("proxystatic");
if (!proxy() & string.isEmpty()) {
return "static.vk.com";
}
@@ -73,7 +70,7 @@ public class Proxy {
public static String staticFix(String str) {
String str2;
String string = getPreferences().getString("proxystatic", "");
String string = getPrefsValue("proxystatic");
if (!proxy() & string.isEmpty()) {
return str;
}
@@ -83,7 +80,7 @@ public class Proxy {
public static void setProxy() {
Properties properties = getProperties();
switch (getPreferences().getString("proxy", "")) {
switch (getPrefsValue("proxy")) {
case "zaborona":
properties.setProperty("socksProxyHost", "socks.zaboronahelp.pp.ua");
properties.setProperty("socksProxyPort", "1488");
@@ -157,57 +154,57 @@ public class Proxy {
}
public static String proxyHostHTTP() {
String string = getPreferences().getString("proxyHostHTTP", "");
String string = getPrefsValue("proxyHostHTTP");
return string.isEmpty() ? "192.168.0.1" : string;
}
public static String proxyHostHTTPS() {
String string = getPreferences().getString("proxyHostHTTPS", "");
String string = getPrefsValue("proxyHostHTTPS");
return string.isEmpty() ? "192.168.0.1" : string;
}
public static String proxyHostSocks() {
String string = getPreferences().getString("proxyHostSocks", "");
String string = getPrefsValue("proxyHostSocks");
return string.isEmpty() ? "192.168.0.1" : string;
}
public static String proxyPortHTTP() {
String string = getPreferences().getString("proxyPortHTTP", "");
String string = getPrefsValue("proxyPortHTTP");
return string.isEmpty() ? "8888" : string;
}
public static String proxyPortHTTPS() {
String string = getPreferences().getString("proxyPortHTTPS", "");
String string = getPrefsValue("proxyPortHTTPS");
return string.isEmpty() ? "8888" : string;
}
public static String proxyPortSocks() {
String string = getPreferences().getString("proxyPortSocks", "");
String string = getPrefsValue("proxyPortSocks");
return string.isEmpty() ? "8888" : string;
}
public static String proxyUserHTTP() {
String string = getPreferences().getString("proxyUserHTTP", "");
String string = getPrefsValue("proxyUserHTTP");
return string.isEmpty() ? "" : string;
}
public static String proxyUserHTTPS() {
String string = getPreferences().getString("proxyUserHTTPS", "");
String string = getPrefsValue("proxyUserHTTPS");
return string.isEmpty() ? "" : string;
}
public static String proxyPassHTTP() {
String string = getPreferences().getString("proxyPassHTTP", "");
String string = getPrefsValue("proxyPassHTTP");
return string.isEmpty() ? "" : string;
}
public static String proxyPassHTTPS() {
String string = getPreferences().getString("proxyPassHTTPS", "");
String string = getPrefsValue("proxyPassHTTPS");
return string.isEmpty() ? "" : string;
}
public static boolean proxy() {
return getPreferences().getString("proxy", "").equals("apiproxy");
return getPrefsValue("proxy").equals("apiproxy");
}
// Official vk proxy enforcer
@@ -1,7 +1,7 @@
package ru.vtosters.lite.utils;
import static ru.vtosters.lite.utils.About.getBuildNumber;
import static ru.vtosters.lite.utils.Globals.getPreferences;
import static ru.vtosters.lite.utils.Globals.getPrefsValue;
import static ru.vtosters.lite.utils.Globals.getUserSecret;
import static ru.vtosters.lite.utils.Globals.getUserToken;
import static ru.vtosters.lite.utils.Preferences.dev;
@@ -17,7 +17,7 @@ public class SSFS {
}
public static String SSFSDomain() {
String string = getPreferences().getString("ssfscustom", "");
String string = getPrefsValue("ssfscustom");
if (!string.isEmpty()) {
return string;
}
@@ -29,8 +29,7 @@ public class SSFS {
}
public static String getAmoledVKUI() {
String string = getPreferences().getString("darktheme", "");
return string.equals("amoled") ? "1" : "0";
return getPrefsValue("darktheme").equals("amoled") ? "1" : "0";
}
public static String getUserProxy() {
@@ -1,17 +1,21 @@
package ru.vtosters.lite.utils;
import static android.view.View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR;
import static ru.vtosters.lite.utils.Globals.getContext;
import static ru.vtosters.lite.utils.Globals.getPreferences;
import static ru.vtosters.lite.utils.Globals.getPrefsValue;
import static ru.vtosters.lite.utils.Preferences.color_grishka;
import static ru.vtosters.lite.utils.Preferences.isBGStickersEnabled;
import static ru.vtosters.lite.utils.Preferences.navbar;
import static ru.vtosters.lite.utils.Preferences.systemtheme;
import static ru.vtosters.lite.utils.Preferences.vksans;
import android.content.Context;
import android.content.res.ColorStateList;
import android.content.res.Configuration;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.view.Window;
import android.widget.ImageButton;
@@ -19,6 +23,7 @@ import com.vk.core.d.RecoloredDrawable;
import com.vk.core.ui.themes.VKTheme;
import com.vk.core.ui.themes.VKThemeHelper;
import com.vk.im.ui.themes.ImTheme;
import com.vk.im.ui.themes.ImThemeHelper;
import com.vtosters.lite.R;
public class Themes {
@@ -38,6 +43,10 @@ public class Themes {
return VKThemeHelper.a(R.attr.tabbar_background);
}
public static int getBackgroundContent() {
return VKThemeHelper.a(R.attr.background_content);
}
public static int getHeaderBackground() {
return VKThemeHelper.a(R.attr.header_background);
}
@@ -54,8 +63,30 @@ public class Themes {
return getContext().getResources().getIdentifier("VkIm.Theme.VkApp.Amoled", "style", getContext().getPackageName());
}
public static int getHeaderText() {
return VKThemeHelper.a(R.attr.header_text);
}
public static void setBarTheme(View getview) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
getview.setSystemUiVisibility(getNeededColorNavbar() | getNeededColorStatusbar());
}
}
public static int getNeededColorStatusbar() {
return VKThemeHelper.d() && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ? 8192 : 0;
}
public static int getNeededColorNavbar() {
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.O ? VKThemeHelper.d() ? SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR : 0 : 0;
}
public static int getNeededColorStatusbarFix() {
return VKThemeHelper.d() ? 8192 : 0;
}
public static VKTheme getDarkTheme() {
switch (getPreferences().getString("darktheme", "")) {
switch (getPrefsValue("darktheme")) {
case "amoled":
return VKTheme.AMOLED;
default:
@@ -64,7 +95,7 @@ public class Themes {
}
public static ImTheme getImDarkTheme() {
switch (getPreferences().getString("darktheme", "")) {
switch (getPrefsValue("darktheme")) {
case "amoled":
return ImTheme.VKAPP_AMOLED;
default:
@@ -73,14 +104,14 @@ public class Themes {
}
public static VKTheme getLightTheme() {
switch (getPreferences().getString("lighttheme", "")) {
switch (getPrefsValue("lighttheme")) {
default:
return VKTheme.DEFAULT_LIGHT;
}
}
public static ImTheme getImLightTheme() {
switch (getPreferences().getString("lighttheme", "")) {
switch (getPrefsValue("lighttheme")) {
default:
return ImTheme.VKAPP_LIGHT;
}
@@ -90,10 +121,6 @@ public class Themes {
return VKThemeHelper.a(attr);
}
public static int getHeaderText() {
return VKThemeHelper.a(R.attr.header_text);
}
public static boolean isAndroidMonet() {
return color_grishka() && Build.VERSION.SDK_INT >= 31;
}
@@ -149,7 +176,8 @@ public class Themes {
public static void setNavbarColor(Window window, int i) {
if (navbar() && Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
window.setNavigationBarColor(getNavbarColor());
window.setNavigationBarColor(getTabbarBackground());
window.getDecorView().setSystemUiVisibility(getNeededColorNavbar());
}
}
@@ -184,14 +212,32 @@ public class Themes {
return vksans() ? R.font.vk_sans_text_regular : R.font.roboto_regular;
}
public static int getNavbarColor() {
return VKThemeHelper.a(R.attr.tabbar_background);
}
public static String getBackgroundStickers() {
if (isBGStickersEnabled()) {
return "images_with_background";
}
return "images";
}
public static void systemThemeChanger() {
if (!systemtheme())
return;
int currentNightMode = getContext().getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
switch (currentNightMode) {
case Configuration.UI_MODE_NIGHT_UNDEFINED:
changeTheme(getLightTheme(), getImLightTheme());
break;
case Configuration.UI_MODE_NIGHT_NO:
changeTheme(getLightTheme(), getImLightTheme());
break;
case Configuration.UI_MODE_NIGHT_YES:
changeTheme(getDarkTheme(), getImDarkTheme());
break;
}
}
public static void changeTheme(VKTheme theme, ImTheme imtheme) {
VKThemeHelper.b.a(theme);
ImThemeHelper.b.a(imtheme);
}
}
@@ -1,7 +1,7 @@
package ru.vtosters.lite.utils;
import static ru.vtosters.lite.utils.Globals.getContext;
import static ru.vtosters.lite.utils.Globals.getPreferences;
import static ru.vtosters.lite.utils.Globals.getPrefsValue;
import static ru.vtosters.lite.utils.Themes.getColorFromAttr;
import static ru.vtosters.lite.utils.Themes.hex;
@@ -66,7 +66,7 @@ public class VKUIInjector {
}
public static void inject(WebView webView) {
String string = getPreferences().getString("darktheme", "");
String string = getPrefsValue("darktheme");
if (Preferences.BooleanTrue("VKUI_INJ")) {
if (!isLoaded) {
load();
+1 -1
View File
@@ -5,7 +5,7 @@ buildscript {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.2.0-rc02'
classpath 'com.android.tools.build:gradle:7.2.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#fff8f8f8"
android:endColor="#ffffffff"
android:startColor="?background_content"
android:endColor="?background_content"
android:angle="90.0" />
</shape>
@@ -5,5 +5,5 @@
android:topRightRadius="12.0dip"
android:bottomLeftRadius="12.0dip"
android:bottomRightRadius="12.0dip" />
<solid android:color="@color/blue_300" />
<solid android:color="?accent" />
</shape>
+1 -1
View File
@@ -7,7 +7,7 @@
<solid android:color="@android:color/transparent" />
<stroke
android:width="0.5dip"
android:color="@color/blue_300" />
android:color="?accent" />
<padding
android:left="0.0dip"
android:top="0.0dip"
@@ -2,7 +2,7 @@
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false">
<shape android:shape="rectangle">
<solid android:color="@color/blue_200_muted" />
<solid android:color="?accent" />
</shape>
</item>
<item android:state_pressed="true">
@@ -12,7 +12,7 @@
</item>
<item>
<shape android:shape="rectangle">
<solid android:color="@color/blue_300" />
<solid android:color="?accent" />
</shape>
</item>
</selector>
@@ -9,7 +9,7 @@
<FrameLayout
android:id="@id/appkit_loader_content"
android:background="#ffffffff"
android:background="?background_content"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
+1
View File
@@ -6,6 +6,7 @@
<LinearLayout
android:gravity="center"
android:background="?background_content"
android:layout_gravity="center"
android:orientation="vertical"
android:padding="16.0dip"
+1
View File
@@ -14,6 +14,7 @@
android:orientation="horizontal"
android:id="@id/load_more_error"
android:padding="16.0dip"
android:background="?background_content"
android:layout_width="fill_parent"
android:layout_height="76.0dip">
+1
View File
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="?background_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<ProgressBar
+1 -1
View File
@@ -42,7 +42,7 @@
android:layout_width="16.0dip"
android:layout_height="16.0dip"
android:src="@drawable/ic_favorite_16"
android:tint="@color/blue_200_muted"
android:tint="?accent"
android:layout_marginEnd="4.0dip"
app:layout_constraintBottom_toBottomOf="@id/game_title"
app:layout_constraintEnd_toStartOf="@id/game_menu"
+1 -1
View File
@@ -10,7 +10,7 @@
<android.support.design.widget.CoordinatorLayout
android:id="@id/appkit_loader_content"
android:background="#ffffffff"
android:background="?background_content"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
+1 -1
View File
@@ -55,7 +55,7 @@
<TextView
android:textSize="17.0dip"
android:textColor="?text_primary"
android:textColor="?header_text"
android:ellipsize="end"
android:gravity="center_horizontal"
android:id="@id/playlist_title"
+1 -1
View File
@@ -21,7 +21,7 @@
<TextView
android:textSize="14.0dip"
android:textStyle="normal"
android:textColor="?text_primary"
android:textColor="?header_text"
android:ellipsize="end"
android:gravity="center_vertical"
android:id="@id/playlist_title"
@@ -36,7 +36,7 @@
<TextView
android:textSize="17.0dip"
android:textColor="?text_primary"
android:textColor="?header_text"
android:ellipsize="end"
android:id="@id/playlist_title"
android:layout_width="0.0dip"
@@ -9,7 +9,7 @@
<FrameLayout
android:id="@id/appkit_loader_content"
android:background="#ffffffff"
android:background="?background_content"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
+1 -1
View File
@@ -18,7 +18,7 @@
android:layout_height="24.0dip"
android:layout_marginTop="12.0dip"
android:src="@drawable/ic_tag_24"
android:tint="@color/blue_200_muted"
android:tint="?accent"
android:layout_marginStart="16.0dip" />
<com.vk.fave.views.FaveTagViewGroup
+2 -2
View File
@@ -33,7 +33,7 @@
<ImageView
android:id="@id/search_voice"
android:background="?accent"
android:background="?header_background"
android:layout_width="48.0dip"
android:layout_height="48.0dip"
android:src="@drawable/ic_voice_24"
@@ -42,7 +42,7 @@
<ImageView
android:id="@id/search_done"
android:background="?accent"
android:background="?header_background"
android:layout_width="48.0dip"
android:layout_height="48.0dip"
android:src="@drawable/ic_check_24"
+1 -1
View File
@@ -445,7 +445,7 @@
<item>Украинский</item>
</string-array>
<string-array name="start">
<item>Стандартное</item>
<item>По умолчанию</item>
<item>Новости</item>
<item>Диалоги</item>
<item>Меню</item>
+6 -6
View File
@@ -1773,7 +1773,7 @@
без ограничений"</string>
<string name="music_subs_try_free">Попробовать</string>
<string name="music_subscription_agreement">Условия использования</string>
<string name="music_subscription_exist">У Вас уже оформлена подписка на Музыку</string>
<string name="music_subscription_exist">Данный трэк нельзя воспроизвести без настоящей подписки на музыку</string>
<string name="music_subscription_label_payment_type">Cпособ оплаты</string>
<string name="music_subscription_label_status">Статус подписки</string>
<string name="music_subscription_purchase_btn_title">Оформить за %1$s в месяц</string>
@@ -4118,7 +4118,7 @@
<string name="ctypedisabled">Не установлено</string>
<string name="ctypesocks">Socks</string>
<string name="dnr">Нечиталка</string>
<string name="dns">Отправка статуса просмотра истории</string>
<string name="dns">Статус просмотра/прочтения историй</string>
<string name="dnw">Неписалка</string>
<string name="docknumbers">Счётчики в докбаре</string>
<string name="docknumberssum">Отключение не работает в интерфейсе для планшетов</string>
@@ -4151,7 +4151,7 @@
Показать полностью..."</string>
<string name="interfacenewsfeed">Лента</string>
<string name="interfacenewsfeedswipe">Боковая камера в новостях</string>
<string name="interfacenewsfeedswipesum">Работает только со стандартным дизайном новостей</string>
<string name="interfacenewsfeedswipesum">Работает только с классическим дизайном новостей</string>
<string name="interfacestartfr">Стандартный стартовый фрагмент</string>
<string name="interfacestartfrsum">Выберите стартовый фрагмент</string>
<string name="interfacevideo">Видео</string>
@@ -4204,7 +4204,7 @@
<string name="shitposting">Однотипные новости</string>
<string name="shitpostingsummary">Фильтр очистки постов с РФ и действиями связанными на Украине</string>
<string name="showstories">Показывать истории</string>
<string name="showstoriessum">Показывать истории в верхней части ленты</string>
<string name="showstoriessum">Блок истории в верхней части ленты</string>
<string name="showvtfire">Показывать специальные верификации</string>
<string name="showvtverify">Показывать верификации</string>
<string name="sprefsctype">Тип подключения</string>
@@ -4242,10 +4242,10 @@
<string name="useproxy">Вариант прокси</string>
<string name="useproxyinfo">Информация об использовании прокси</string>
<string name="useproxysum">Выберите вариант прокси</string>
<string name="vkuiinj">Покраска VKUI</string>
<string name="vkuiinj">Покраска веб страниц</string>
<string name="vtlawayphpsummary">Слежка за пользователем для персонализации рекламы. Также проверка ссылок на блэклист от ВКонтакте и антивирус</string>
<string name="vtloffline">Отправка статуса онлайн</string>
<string name="vtloffline2">Принудительно отправлять офлайн запросы</string>
<string name="vtloffline2">Принудительный офлайн</string>
<string name="vtloffline2summary">"Работает только при отключении отправки статуса онлайн
Отправляет мгновенно в офлайн после отправки сообщений и прочих методов апи которые отправляют в онлайн
+1 -1
View File
@@ -1638,7 +1638,7 @@
без обмежень"</string>
<string name="music_subs_try_free">Спробувати</string>
<string name="music_subscription_agreement">Умови використання</string>
<string name="music_subscription_exist">У Вас уже оформлена підписка на Музику</string>
<string name="music_subscription_exist">Данный трэк нельзя воспроизвести без настоящей подписки на музыку</string>
<string name="music_subscription_label_payment_type">Спосіб оплати</string>
<string name="music_subscription_label_status">Статус підписки</string>
<string name="music_subscription_purchase_btn_title">Оформити за %1$s в місяць</string>
+1 -1
View File
@@ -1290,7 +1290,7 @@
<item name="im_btn_confirm">@drawable/vkim_btn_confirm_default</item>
<item name="im_btn_confirm_background">?accent</item>
<item name="im_btn_confirm_background_dark">?accent</item>
<item name="im_btn_confirm_background_disabled">@color/blue_200_muted</item>
<item name="im_btn_confirm_background_disabled">?accent</item>
<item name="im_btn_reject_background">@color/black</item>
<item name="im_btn_reject_background_dark">@color/black</item>
<item name="im_btn_reject_foreground">@color/white</item>
+5 -5
View File
@@ -4243,7 +4243,7 @@ Warning! It can cause long downloads of user lists if there are a lot of users i
<string name="ctypedisabled">Not set</string>
<string name="ctypesocks">Socks</string>
<string name="dnr">Do not read</string>
<string name="dns">Send status of viewing stories</string>
<string name="dns">Status of viewing/checking stories</string>
<string name="dnw">Do not write</string>
<string name="docknumbers">Counters in dockbar</string>
<string name="docknumberssum">"Disabling doesn't work in the tablet interface"</string>
@@ -4276,7 +4276,7 @@ Registration date:"</string>
Expand text..."</string>
<string name="interfacenewsfeed">Feed</string>
<string name="interfacenewsfeedswipe">Side camera in the news</string>
<string name="interfacenewsfeedswipesum">Works only with the default newsfeed design</string>
<string name="interfacenewsfeedswipesum">Works only with classic newsfeed design</string>
<string name="interfacestartfr">Default start fragment</string>
<string name="interfacestartfrsum">Select start fragment</string>
<string name="interfacevideo">Video</string>
@@ -4329,7 +4329,7 @@ You need to restart the application to apply proxy settings"</string>
<string name="shitposting">The same type of news</string>
<string name="shitpostingsummary">Filter for cleaning posts with the Russian Federation and actions related in Ukraine</string>
<string name="showstories">Show stories</string>
<string name="showstoriessum">Show stories at the top of the feed</string>
<string name="showstoriessum">The story section at the top of the feed</string>
<string name="showvtfire">Show special verifications</string>
<string name="showvtverify">Show verifications</string>
<string name="sprefsctype">Connection type</string>
@@ -4367,10 +4367,10 @@ You need to restart the application to apply proxy settings"</string>
<string name="useproxy">Proxy variant</string>
<string name="useproxyinfo">Information about using a proxy</string>
<string name="useproxysum">Select the proxy variant</string>
<string name="vkuiinj">VKUI theming</string>
<string name="vkuiinj">Coloring web pages</string>
<string name="vtlawayphpsummary">Tracking the user to personalize ads. Also checking links to the blacklist from VKontakte and antivirus</string>
<string name="vtloffline">Send online status</string>
<string name="vtloffline2">Force offline requests</string>
<string name="vtloffline2">Force offline</string>
<string name="vtloffline2summary">"Works only when online status sending is disabledsends instantly offline after sending messages and other api methods that are sent online
May look like a fake leaving the online"</string>
+38 -29
View File
@@ -1,6 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="@string/dnr">
<Preference
android:enabled="false"
android:summary="Функция позволяет вам не отправлять статус прочтения вами сообщения собеседника"
android:title="Что это за функция?" />
<Preference
android:enabled="false"
android:summary="Визуально может работать некорректно (сообщение прочиталось локально), но у собеседника оно прочитано не будет"
android:title="Внимание!" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="read_pm"
@@ -16,6 +24,10 @@
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<PreferenceCategory android:title="@string/dnw">
<Preference
android:enabled="false"
android:summary="Функция позволяет вам не отправлять статус вашего набора/написания сообщения"
android:title="Что это за функция?" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="write_pm"
@@ -30,6 +42,32 @@
android:title="@string/act_bot" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<PreferenceCategory android:title="@string/stories_vtl">
<Preference
android:enabled="false"
android:summary="Функция позволяет вам не отправлять статус просмотра вами историй"
android:title="Что это за функция?" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="dns"
android:title="@string/dns" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<PreferenceCategory android:title="Анти-удаление сообщений">
<com.vtosters.lite.ui.SummaryListPreference
android:defaultValue="default"
android:dialogTitle="Выберите значение"
android:entries="@array/undel_value"
android:entryValues="@array/undel"
android:key="undeletemsg_prefix"
android:title="Пометка удаленного сообщения" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="undeletemsg"
android:summary="Может не сохранять вложения"
android:title="Оставлять удаленные сообщения" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<PreferenceCategory android:title="@string/online_vtl">
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
@@ -46,26 +84,7 @@
android:title="@string/vtloffline2" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<PreferenceCategory android:title="@string/stories_vtl">
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="dns"
android:title="@string/dns" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<PreferenceCategory android:title="@string/privacy_vtl">
<com.vtosters.lite.ui.SummaryListPreference
android:defaultValue="default"
android:dialogTitle="Выберите значение"
android:entries="@array/undel_value"
android:entryValues="@array/undel"
android:key="undeletemsg_prefix"
android:title="Пометка удаленного сообщения" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="undeletemsg"
android:summary="Может не сохранять вложения"
android:title="Оставлять удаленные сообщения" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="awayphp"
@@ -76,15 +95,5 @@
android:key="benchmark"
android:summary="@string/benchapisummary"
android:title="@string/benchapi" />
<EditTextPreference
android:defaultValue="7.24"
android:key="vkver"
android:summary="Требуется перезапуск"
android:title="Подмена версии ВК" />
<EditTextPreference
android:defaultValue="12116"
android:key="vkbuild"
android:summary="Требуется перезапуск"
android:title="Подмена версии билда ВК" />
</PreferenceCategory>
</PreferenceScreen>
+1 -5
View File
@@ -3,7 +3,7 @@
android:key="preferences_debug">
<Preference
android:enabled="false"
android:summary="Данное меню предназначено только для тестирования работоспособности приложения. Если вы являетесь рядовым юзером, то вам не следует ничего не трогать в данных настройках, что бы не было проблем с работой приложения!"
android:summary="Данное меню предназначено только для тестирования работоспособности приложения. Если вы являетесь рядовым юзером, то вам не следует ничего не трогать в данных настройках (пожалуйста)"
android:title="Внимание!" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
@@ -28,10 +28,6 @@
android:defaultValue="false"
android:key="vkme_msg"
android:title="VK Me MSG mode" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="color_grishka"
android:title="Фикс некоторых покрасок Monet" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="libverify"
+12
View File
@@ -4,6 +4,7 @@
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="__dbg_no_ads"
android:summary="Обычные рекламные вставки в ленте между постами"
android:title="@string/vtldads" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
@@ -13,11 +14,18 @@
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="__dbg_no_slider_ads"
android:summary="Реклама со списком (товаров)"
android:title="@string/vtldca" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="adsstories"
android:summary="Реклама при переходе между историями"
android:title="@string/vtldas" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="copyright_post"
android:summary="В большенстве случаев рекламные посты с пометкой источника рекламодателя"
android:title="Отключить посты с источником" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<PreferenceCategory android:title="@string/vtlfilters">
@@ -55,14 +63,17 @@
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="friendsrecomm"
android:summary="Рекомендации возможных друзей"
android:title="@string/vtlrecommendfriend" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="authorsrecomm"
android:summary="Рекомендации постов популярных авторов контента"
android:title="@string/vtlrecommendauthor" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="postsrecomm"
android:summary="Рекомендации лайкнутых постов твоих друзей"
android:title="@string/vtlrecommendfriendpost" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
@@ -89,6 +100,7 @@
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="feedcache"
android:summary="Оставлять список загруженных постов в ленте"
android:title="@string/vtlfeedcache" />
</PreferenceCategory>
</PreferenceScreen>
-2
View File
@@ -14,7 +14,6 @@
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="swipe"
android:summary="@string/interfacenewsfeedswipesum"
android:title="@string/interfacenewsfeedswipe" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
@@ -73,6 +72,5 @@
android:key="dockcounter"
android:summary="@string/docknumberssum"
android:title="@string/docknumbers" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
</PreferenceScreen>
+2 -1
View File
@@ -9,6 +9,7 @@
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="msgtails"
android:summary="Может некорректно работать с вложениями"
android:title="@string/vtlmsgtails" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
@@ -42,7 +43,7 @@
android:entries="@array/msgcount_value"
android:entryValues="@array/msgcount"
android:key="msgcount"
android:title="Количество загружаемых сообщений" />
android:title="Количество загружаемых сразу сообщений" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="convUsersOnline"
-1
View File
@@ -24,6 +24,5 @@
android:key="gcmfix"
android:summary="Актуально если музыкальный раздел не работает (не отображается музыка или вместо музыки написано Слушайте в официальном приложении ВКонтакте) или же отсутствует компонент GMS"
android:title="Исправление музыкального раздела" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
</PreferenceScreen>
+16 -9
View File
@@ -1,30 +1,38 @@
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="@string/vtsystem">
<PreferenceCategory android:title="Исправление работы приложения">
<Preference
android:key="firebasefix"
android:summary="@string/firebasefixsum"
android:title="@string/firebasefix" />
<Preference
android:key="clearcache"
android:summary="@string/clearcachesum"
android:title="@string/clearcache" />
<Preference
android:key="tokencopy"
android:title="@string/copytokenbtn" />
<Preference
android:key="stickfix"
android:title="Очистить кэш стикеров"
android:summary="Исправление загрузки стикеров при их полном отсутствии" />
<Preference
android:key="deleteprefs"
android:summary="Сбрасывает включенные вами функции модификации на значения по умолчанию"
android:title="Сбросить настройки" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="color_grishka"
android:title="Исправление покрасок для Android 12" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<PreferenceCategory android:title="@string/vtsystem">
<Preference
android:key="clearcache"
android:summary="@string/clearcachesum"
android:title="@string/clearcache" />
<Preference
android:key="applicationrestart"
android:title="@string/applicationrestart" />
<Preference
android:key="applicationstop"
android:title="@string/killappbtn" />
<Preference
android:key="tokencopy"
android:title="@string/copytokenbtn" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<!-- <PreferenceCategory android:title="Backup system">
@@ -60,6 +68,5 @@
android:defaultValue="true"
android:key="VT_Fire"
android:title="@string/showvtfire" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
</PreferenceScreen>
+7 -1
View File
@@ -19,6 +19,11 @@
android:entryValues="@array/lighttheme"
android:key="lighttheme"
android:title="Светлая тема приложения" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="systemtheme"
android:summary="Применение системной темы при запуске приложения"
android:title="Использовать системную тему" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
<PreferenceCategory android:title="@string/vticon">
@@ -33,11 +38,12 @@
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="navbar"
android:summary="Если системно имеется"
android:title="@string/vtlnavbar" />
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="true"
android:key="VKUI_INJ"
android:summary="Покраска страниц как VKID под тему приложения"
android:title="@string/vkuiinj" />
<com.vtosters.lite.ui.MaterialSectionDividerPreference />
</PreferenceCategory>
</PreferenceScreen>
@@ -79,6 +79,8 @@
const/16 v1, 0xd04
invoke-virtual {v0, v1}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {v0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
@@ -92,6 +92,10 @@
iput-object p2, p0, Lcom/vk/im/engine/commands/dialogs/DialogsHistoryGetArgs;->c:Lcom/vk/im/engine/models/dialogs/DialogsFilter;
invoke-static {}, Lru/vtosters/lite/utils/Preferences;->getMsgCount()I
move-result p3
iput p3, p0, Lcom/vk/im/engine/commands/dialogs/DialogsHistoryGetArgs;->d:I
iput-object p4, p0, Lcom/vk/im/engine/commands/dialogs/DialogsHistoryGetArgs;->e:Lcom/vk/im/engine/models/Source;
@@ -1089,6 +1089,10 @@
:cond_c
const v5, -0x8e8a86
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getTextAttr()I
move-result v5
:goto_6
invoke-virtual {v1, v5}, Landroid/widget/TextView;->setTextColor(I)V
@@ -1406,7 +1410,12 @@
:cond_2
const v7, -0x8e8a86
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getTextAttr()I
move-result v7
:goto_1
.line 180
invoke-virtual {v6, v7}, Landroid/widget/TextView;->setTextColor(I)V
.line 268
@@ -1532,6 +1541,10 @@
:cond_7
const v6, -0xd3d2d2
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getTextAttr()I
move-result v6
:goto_3
invoke-virtual {v5, v6}, Lcom/vk/core/widget/AdaptiveSizeTextView;->setTextColor(I)V
@@ -1580,7 +1593,9 @@
if-eqz v0, :cond_a
const v2, -0x29000001
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getTextAttr()I
move-result v2
:cond_a
invoke-virtual {p1, v2}, Landroid/widget/TextView;->setTextColor(I)V
@@ -681,6 +681,8 @@
.line 249
invoke-virtual {v0, v1}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {v0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:cond_0
return-void
.end method
@@ -727,6 +729,8 @@
invoke-virtual {v0, v1}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {v0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:cond_0
return-void
.end method
@@ -2419,6 +2419,8 @@
.line 3218
invoke-virtual {p0, v0}, Landroid/support/design/widget/CoordinatorLayout;->setSystemUiVisibility(I)V
invoke-static {p0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
goto :goto_0
:cond_2
@@ -226,6 +226,17 @@
.method public b(Lcom/vk/im/engine/ImEnvironment;)V
.locals 6
iget v0, p0, Lcom/vk/im/engine/commands/messages/MsgMarkAsReadViaBgCmd;->b:I
invoke-static {v0}, Lru/vtosters/lite/dnr/DNRModule;->isDnrEnabledFor(I)Z
move-result v3
if-eqz v3, :cond_beb
return-void
:cond_beb
const-string v0, "env"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->b(Ljava/lang/Object;Ljava/lang/String;)V
@@ -80,8 +80,19 @@
.end method
.method public a(Lcom/vk/im/engine/ImEnvironment;Lcom/vk/instantjobs/InstantJob$b;)V
.locals 3
.locals 4
iget v0, p0, Lcom/vk/im/engine/internal/jobs/msg/MsgMarkAsReadJob;->b:I
invoke-static {v0}, Lru/vtosters/lite/dnr/DNRModule;->isDnrEnabledFor(I)Z
move-result v3
if-eqz v3, :cond_beb
return-void
:cond_beb
const-string v0, "env"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->b(Ljava/lang/Object;Ljava/lang/String;)V
@@ -120,6 +120,8 @@
invoke-virtual {p1, v1}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p1}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
goto :goto_1
:cond_1
@@ -175,6 +177,8 @@
invoke-virtual {p1, v0}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p1}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:cond_2
:goto_1
return-void
@@ -768,18 +768,6 @@
if-eqz v7, :cond_a
.line 109
invoke-virtual {v7}, Lcom/vk/dto/common/VerifyInfo;->e()Z
move-result v8
if-eqz v8, :cond_7
const v7, 0x7f0808cf
goto :goto_3
.line 109
:cond_7
invoke-virtual {v7}, Lcom/vk/dto/common/VerifyInfo;->d()Z
move-result v8
@@ -663,6 +663,8 @@
.line 399
invoke-virtual {v0, v1}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {v0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
.line 403
:cond_0
invoke-virtual {p0, v2, v2}, Lcom/vk/sharing/SharingActivity;->overridePendingTransition(II)V
@@ -42,6 +42,8 @@
invoke-virtual {p1, p2}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p1}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:cond_0
return-void
.end method
@@ -83,7 +83,7 @@
return-object p1
.end method
.method b()Ljava/util/ArrayList;
.method public b()Ljava/util/ArrayList;
.locals 12
.annotation system Ldalvik/annotation/Signature;
value = {
@@ -1148,6 +1148,50 @@
new-instance v5, Lcom/vtosters/lite/fragments/SettingsListFragment$a;
const v6, 0x7f080340
const v7, 0x7f040022
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string v8, "Скачать последнюю версию"
new-instance v9, Lcom/vtosters/lite/fragments/VTDownload;
invoke-direct {v9, p0}, Lcom/vtosters/lite/fragments/VTDownload;-><init>(Lcom/vtosters/lite/fragments/SettingsListFragment$b;)V
invoke-direct {v5, v6, v7, v8, v9}, Lcom/vtosters/lite/fragments/SettingsListFragment$a;-><init>(IILjava/lang/Object;Ljava/lang/Runnable;)V
invoke-static {v4, v5}, Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;->a(ILjava/lang/Object;)Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;
move-result-object v5
invoke-virtual {v0, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-static {v3, v2}, Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;->d(ILjava/lang/Object;)Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
invoke-static {v3, v2}, Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;->c(ILjava/lang/Object;)Lcom/vtosters/lite/ui/holder/RecyclerSectionAdapter$a;
move-result-object v2
invoke-virtual {v0, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
new-instance v5, Lcom/vtosters/lite/fragments/SettingsListFragment$a;
const v6, 0x7f08063e
iget-object v7, p0, Lcom/vtosters/lite/fragments/SettingsListFragment$b;->a:Lcom/vtosters/lite/fragments/SettingsListFragment;
@@ -0,0 +1,55 @@
.class public Lcom/vtosters/lite/fragments/VTDownload;
.super Ljava/lang/Object;
.source "VTDownload.java"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/vtosters/lite/fragments/SettingsListFragment$b;->b()Ljava/util/ArrayList;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
# instance fields
.field final synthetic a:Lcom/vtosters/lite/fragments/SettingsListFragment$b;
# direct methods
.method constructor <init>(Lcom/vtosters/lite/fragments/SettingsListFragment$b;)V
.locals 0
.line 216
iput-object p1, p0, Lcom/vtosters/lite/fragments/VTDownload;->a:Lcom/vtosters/lite/fragments/SettingsListFragment$b;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.locals 2
.line 220
iget-object v0, p0, Lcom/vtosters/lite/fragments/VTDownload;->a:Lcom/vtosters/lite/fragments/SettingsListFragment$b;
iget-object v0, v0, Lcom/vtosters/lite/fragments/SettingsListFragment$b;->a:Lcom/vtosters/lite/fragments/SettingsListFragment;
invoke-virtual {v0}, Lcom/vtosters/lite/fragments/SettingsListFragment;->n()Landroid/content/Context;
move-result-object v0
const-string v1, "https://github.com/vtosters/lite/releases/latest/"
invoke-static {v0, v1}, Lcom/vk/common/links/LinkProcessor;->a(Landroid/content/Context;Ljava/lang/String;)V
return-void
.end method
@@ -628,11 +628,15 @@
if-eqz v0, :cond_0
const/16 v0, 0x2000
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getNeededColorStatusbar()I
move-result v0
.line 158
invoke-virtual {p1, v0}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p1}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
.line 161
:cond_0
new-instance v0, Lcom/vtosters/lite/ui/widget/MenuListView;
@@ -814,6 +818,8 @@
invoke-virtual {p1, v0}, Lcom/vtosters/lite/ui/EdgeSlidingPaneLayout;->setSystemUiVisibility(I)V
invoke-static {p1}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
.line 266
:cond_0
iget-object p1, p0, Lcom/vtosters/lite/ui/h/NavigationDelegateLeftMenu;->b:Lcom/vtosters/lite/ui/widget/MenuListView;
@@ -31,7 +31,9 @@
move-result p0
or-int/lit16 p0, p0, 0x2000
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getNeededColorStatusbar()I
move-result p0
invoke-virtual {p1, p0}, Landroid/view/View;->setSystemUiVisibility(I)V
@@ -62,7 +64,9 @@
move-result p0
or-int/lit16 p0, p0, 0x2000
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getNeededColorStatusbar()I
move-result p0
invoke-virtual {p1, p0}, Landroid/view/View;->setSystemUiVisibility(I)V
@@ -74,11 +78,15 @@
move-result p0
and-int/lit16 p0, p0, -0x2001
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getNeededColorStatusbar()I
move-result p0
invoke-virtual {p1, p0}, Landroid/view/View;->setSystemUiVisibility(I)V
:cond_2
:goto_0
invoke-static {p1}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
return-void
.end method
@@ -79,10 +79,14 @@
move-result v0
or-int/lit16 v0, v0, 0x2000
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getNeededColorStatusbar()I
move-result v0
invoke-virtual {p0, v0}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:cond_1
return-void
.end method
@@ -618,6 +618,8 @@
invoke-virtual {p1, v0}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p1}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:cond_1
return-void
.end method
@@ -65,7 +65,9 @@
goto :goto_0
:cond_0
const/high16 p1, -0x1000000
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getTextAttr()I
move-result p1
:goto_0
return p1
@@ -292,9 +292,7 @@
:try_start_0
new-instance v0, Lcom/vk/api/internal/InternalGetNotifications;
invoke-static {}, Lru/vtosters/lite/utils/Preferences;->VKVersionBuild()I
move-result v1
const/16 v1, 0xd6f
invoke-static {}, Lcom/vtosters/lite/data/Analytics;->e()Ljava/lang/String;
@@ -427,9 +425,7 @@
:try_start_0
new-instance v0, Lcom/vk/api/internal/InternalGetUserNotifications;
invoke-static {}, Lru/vtosters/lite/utils/Preferences;->VKVersionBuild()I
move-result v4
const/16 v4, 0xd6f
.line 260
invoke-static {}, Lcom/vtosters/lite/data/Analytics;->e()Ljava/lang/String;
@@ -1067,7 +1067,7 @@
.method public a()Ljava/lang/String;
.locals 1
const-string v0, "5.97"
const-string v0, "5.111"
return-object v0
.end method
@@ -102,6 +102,8 @@
const/16 v1, 0xd04
invoke-virtual {v0, v1}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {v0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
@@ -43,11 +43,8 @@
aput-object v0, v4, v5
invoke-static {}, Lru/vtosters/lite/utils/Preferences;->VKVersionBuild()I
const/16 v6, 0xd6f
move-result v6
.line 26
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v6
@@ -254,6 +254,10 @@
check-cast v0, Lcom/vk/im/engine/commands/messages/MsgHistoryGetArgs$a;
invoke-static {}, Lru/vtosters/lite/utils/Preferences;->getMsgCount()I
move-result p1
iput p1, v0, Lcom/vk/im/engine/commands/messages/MsgHistoryGetArgs$a;->f:I
return-object v0
@@ -126,7 +126,9 @@
move-result v1
or-int/lit16 v1, v1, 0x2000
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getNeededColorStatusbarFix()I
move-result v1
.line 68
invoke-virtual {v0, v1}, Lcom/vk/core/view/FitSystemWindowsFragmentWrapperFrameLayout;->setSystemUiVisibility(I)V
@@ -4601,10 +4601,14 @@
move-result p2
add-int/lit16 p2, p2, 0x2000
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getNeededColorStatusbar()I
move-result p2
invoke-virtual {p1, p2}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p1}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
.line 375
:cond_2
invoke-virtual {p0}, Lcom/vk/poll/fragments/PollEditorFragment;->p()Landroid/support/v4/app/FragmentActivity;
@@ -165,6 +165,8 @@
invoke-virtual {v0, v1}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {v0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
.line 96
invoke-virtual {p0}, Lcom/vtosters/lite/fragments/LeaderboardFragment;->p()Landroid/support/v4/app/FragmentActivity;
@@ -1390,40 +1390,10 @@
const/4 v2, 0x0
:goto_3
invoke-virtual {p1}, Lcom/vk/dto/articles/ArticleAuthor;->e()Lcom/vk/dto/newsfeed/Owner;
move-result-object v0
invoke-virtual {v0}, Lcom/vk/dto/newsfeed/Owner;->f()Lcom/vk/dto/common/VerifyInfo;
move-result-object v0
if-eqz v0, :cond_8
invoke-virtual {v0}, Lcom/vk/dto/common/VerifyInfo;->e()Z
move-result p2
goto :goto_4
:cond_8
const/4 p2, 0x0
.line 308
:goto_4
const v3, 0x7f0601bd
const v4, 0x7f080365
if-eqz p2, :cond_9
const v4, 0x7f0808cf
const v1, 0x7f0808cf
goto :goto_6
:cond_9
if-eqz v0, :cond_a
if-eqz v2, :cond_a
@@ -1433,7 +1433,9 @@
:cond_26
:goto_15
const-string v2, "ads_easy_promote"
invoke-static {}, Lru/vtosters/lite/utils/Preferences;->copyrightfix()Ljava/lang/String;
move-result-object v2
.line 373
invoke-virtual {v0, v2}, Lorg/json/JSONObject;->optJSONObject(Ljava/lang/String;)Lorg/json/JSONObject;
@@ -244,7 +244,6 @@
move-result-object v1
.line 49
const-string v2, "filter"
@@ -80,8 +80,18 @@
move-result v3
if-nez v3, :cond_beb
if-eqz v3, :cond_beb
const/4 p1, 0x0
.line 24
invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p1
return-object p1
:cond_beb
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
@@ -127,8 +137,6 @@
invoke-virtual {p1, v0}, Lcom/vk/api/sdk/VKApiManager;->a(Lcom/vk/api/sdk/VKMethodCall;)V
:cond_beb
const/4 p1, 0x1
.line 24
@@ -190,6 +190,8 @@
.line 131
invoke-virtual {p0, v1}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:cond_1
return-void
.end method
@@ -535,6 +537,8 @@
.line 139
invoke-virtual {p0, v0}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:cond_0
return-void
.end method
@@ -763,10 +763,14 @@
move-result v0
add-int/lit16 v0, v0, 0x2000
invoke-static {}, Lru/vtosters/lite/utils/Themes;->getNeededColorStatusbar()I
move-result v0
invoke-virtual {p1, v0}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {p1}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
.line 181
invoke-virtual {p0}, Lcom/vk/wall/thread/CommentThreadFragment;->p()Landroid/support/v4/app/FragmentActivity;
@@ -115,6 +115,8 @@
invoke-virtual {v0, p1}, Landroid/view/View;->setSystemUiVisibility(I)V
invoke-static {v0}, Lru/vtosters/lite/utils/Themes;->setBarTheme(Landroid/view/View;)V
:cond_2
return-void
.end method
@@ -712,7 +712,7 @@
.method public a()Ljava/lang/String;
.locals 1
const-string v0, "5.97"
const-string v0, "5.111"
return-object v0
.end method