simplify OnPreferenceClickListener implementations

add NavigatorUtils
This commit is contained in:
dalvesrever
2023-01-15 19:45:12 +03:00
parent 923586cc33
commit 75732deb61
14 changed files with 204 additions and 302 deletions
@@ -24,6 +24,7 @@ import com.vk.navigation.Navigator;
import com.vtosters.lite.R;
import ru.vtosters.lite.ui.fragments.ProxySettingsFragment;
import ru.vtosters.lite.utils.NavigatorUtils;
public class ProxyHook {
public static void hookAuth(View v) {
@@ -89,12 +90,9 @@ public class ProxyHook {
restartApplication();
}
}))
.setNeutralButton(ctx.getString(R.string.proxy_settings), ((dialog, which) -> {
var intent = new Navigator(ProxySettingsFragment.class)
.b(ctx)
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
ctx.startActivity(intent);
}))
.setNeutralButton(ctx.getString(R.string.proxy_settings), (dialog, which) -> {
NavigatorUtils.switchFragment(ctx, ProxySettingsFragment.class);
})
.show();
}
}
@@ -12,6 +12,7 @@ import com.vk.navigation.Navigator;
import com.vtosters.lite.R;
import ru.vtosters.lite.ui.fragments.InstallGMSFragment;
import ru.vtosters.lite.utils.NavigatorUtils;
public class InstallGMS {
public static void alert(final Activity activity) {
@@ -25,10 +26,7 @@ public class InstallGMS {
)
.setNeutralButton(activity.getString(R.string.gmsissuebtn2), (dialogInterface, i) -> {
edit().putBoolean("showAlertGms", false).apply();
var intent = new Navigator(InstallGMSFragment.class)
.b(activity)
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
activity.startActivity(intent);
NavigatorUtils.switchFragment(activity, InstallGMSFragment.class);
})
.show();
}
@@ -13,6 +13,7 @@ import com.vk.navigation.Navigator;
import com.vtosters.lite.R;
import ru.vtosters.lite.ui.fragments.VKUIwrapper;
import ru.vtosters.lite.utils.NavigatorUtils;
public class VKIDProtection {
public static void alert(final Activity activity) {
@@ -29,9 +30,7 @@ public class VKIDProtection {
isAnyProxyEnabled()
? "https://id.vk.com/account"
: "https://" + getApi() + "/_/id.vk.com/account");
var intent = new Navigator(VKUIwrapper.class).b(activity)
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
activity.startActivity(intent);
NavigatorUtils.switchFragment(activity, VKUIwrapper.class);
})
.show();
}
@@ -21,6 +21,7 @@ import com.vtosters.lite.R;
import com.vtosters.lite.general.fragments.MaterialPreferenceToolbarFragment;
import ru.vtosters.lite.ui.components.NewsfeedListManager;
import ru.vtosters.lite.utils.NavigatorUtils;
public class FeedFragment extends MaterialPreferenceToolbarFragment {
@Override
@@ -31,7 +32,11 @@ public class FeedFragment extends MaterialPreferenceToolbarFragment {
}
private void prefs() {
findPreference("officialnewssett").setOnPreferenceClickListener(new openofficialsett());
findPreference("officialnewssett").setOnPreferenceClickListener(preference -> {
NavigatorUtils.switchFragment(requireContext(), SystemInfo.class);
return true;
});
findPreference("cringecopyright").setEnabled(!copyright_post());
findPreference("spamfilters").setSummary(count(getPrefsValue("spamfilters")));
@@ -140,15 +145,4 @@ public class FeedFragment extends MaterialPreferenceToolbarFragment {
public int T4() {
return R.string.vtlfeed;
}
public class openofficialsett implements Preference.OnPreferenceClickListener {
@Override // android.support.v7.preference.Preference.c
public boolean onPreferenceClick(Preference preference) {
Context context = requireContext();
Intent a2 = new Navigator(NewsfeedSettingsFragment.class).b(context);
a2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(a2);
return true;
}
}
}
@@ -1,25 +1,19 @@
package ru.vtosters.lite.ui.fragments;
import static ru.vtosters.lite.utils.AndroidUtils.*;
import static ru.vtosters.lite.utils.LifecycleUtils.restartApplicationWithTimer;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import androidx.preference.Preference;
import com.vk.core.fragments.FragmentImpl;
import com.vk.navigation.Navigator;
import com.vtosters.lite.R;
import com.vtosters.lite.general.fragments.MaterialPreferenceToolbarFragment;
import ru.vtosters.lite.ui.components.SuperAppEditorManager;
import ru.vtosters.lite.ui.dialogs.RoundingSeekbarDialog;
import ru.vtosters.lite.utils.AndroidUtils;
import ru.vtosters.lite.utils.NavigatorUtils;
import ru.vtosters.lite.utils.Preferences;
import ru.vtosters.lite.utils.ThemesUtils;
import static ru.vtosters.lite.utils.AndroidUtils.*;
import static ru.vtosters.lite.utils.LifecycleUtils.restartApplicationWithTimer;
public class InterfaceFragment extends MaterialPreferenceToolbarFragment {
@Override
public void onCreate(Bundle bundle) {
@@ -29,10 +23,26 @@ public class InterfaceFragment extends MaterialPreferenceToolbarFragment {
}
private void prefs() {
findPreference("stories").setOnPreferenceClickListener(new restart());
findPreference("swipe").setOnPreferenceClickListener(new restart());
findPreference("is_likes_on_right").setOnPreferenceClickListener(new restart());
findPreference("superapp").setOnPreferenceClickListener(new restart());
findPreference("stories").setOnPreferenceClickListener(preference -> {
restartApplicationWithTimer();
return true;
});
findPreference("swipe").setOnPreferenceClickListener(preference -> {
restartApplicationWithTimer();
return true;
});
findPreference("is_likes_on_right").setOnPreferenceClickListener(preference -> {
restartApplicationWithTimer();
return true;
});
findPreference("superapp").setOnPreferenceClickListener(preference -> {
restartApplicationWithTimer();
return true;
});
findPreference("dateformat").setOnPreferenceChangeListener((preference, o) -> {
edit().putString("dateformat", o.toString()).commit();
@@ -44,7 +54,7 @@ public class InterfaceFragment extends MaterialPreferenceToolbarFragment {
superappeditor.setSummary(AndroidUtils.getString(R.string.elements_hidden_count) + ": " + SuperAppEditorManager.getInstance().getDisabledTabs().size());
superappeditor.setVisible(!Preferences.vkme() && !isTablet() && Preferences.superapp());
superappeditor.setOnPreferenceClickListener(preference -> {
switchFragment(SuperAppEditorFragment.class);
NavigatorUtils.switchFragment(requireContext(), SuperAppEditorFragment.class);
return true;
});
@@ -75,27 +85,8 @@ public class InterfaceFragment extends MaterialPreferenceToolbarFragment {
}
}
public boolean restart(Preference preference) {
restartApplicationWithTimer();
return true;
}
@Override
public int T4() {
return R.string.vtlinterface;
}
private class restart implements Preference.OnPreferenceClickListener {
@Override
public boolean onPreferenceClick(Preference preference) {
return InterfaceFragment.this.restart(preference);
}
}
private void switchFragment(Class< ? extends FragmentImpl> fragmentClz) {
var intent = new Navigator(fragmentClz)
.b(requireContext())
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
requireContext().startActivity(intent);
}
}
@@ -91,7 +91,11 @@ public class MediaFragment extends MaterialPreferenceToolbarFragment {
}
private void prefs() {
findPreference("download_video").setOnPreferenceClickListener(new MediaFragment.download());
findPreference("download_video").setOnPreferenceClickListener(preference -> {
download(requireContext());
return true;
});
findPreference("clearvideohistory").setOnPreferenceClickListener(preference -> {
deleteVideoHistoryDialog(requireContext());
return true;
@@ -284,12 +288,4 @@ public class MediaFragment extends MaterialPreferenceToolbarFragment {
public int T4() {
return R.string.vtlmedia;
}
private class download implements Preference.OnPreferenceClickListener {
@Override // android.support.v7.preference.Preference.c
public boolean onPreferenceClick(Preference preference) {
download(getActivity());
return true;
}
}
}
@@ -37,8 +37,16 @@ public class MessagesFragment extends MaterialPreferenceToolbarFragment {
@SuppressLint("UseCompatLoadingForDrawables")
private void prefs() {
findPreference("vkme").setOnPreferenceClickListener(new MessagesFragment.restart());
findPreference("vkme_notifs").setOnPreferenceClickListener(new MessagesFragment.restart());
findPreference("vkme").setOnPreferenceClickListener(preference -> {
restart();
return true;
});
findPreference("vkme_notifs").setOnPreferenceClickListener(preference -> {
restart();
return true;
});
findPreference("autotranslate").setEnabled(!autoalltranslate());
@@ -86,18 +94,4 @@ public class MessagesFragment extends MaterialPreferenceToolbarFragment {
public int T4() {
return R.string.vtlmessages;
}
public class restart implements Preference.OnPreferenceClickListener {
@Override
public boolean onPreferenceClick(Preference preference) {
return MessagesFragment.this.restart();
}
}
public class clearCache implements Preference.OnPreferenceClickListener {
@Override
public boolean onPreferenceClick(Preference preference) {
return MessagesFragment.this.restart();
}
}
}
@@ -1,40 +1,16 @@
package ru.vtosters.lite.ui.fragments;
import static android.widget.Toast.LENGTH_LONG;
import static android.widget.Toast.LENGTH_SHORT;
import static android.widget.Toast.makeText;
import static ru.vtosters.lite.ui.components.BackupManager.backupOnlines;
import static ru.vtosters.lite.ui.components.BackupManager.backupSettings;
import static ru.vtosters.lite.ui.components.BackupManager.deletePrefs;
import static ru.vtosters.lite.ui.components.BackupManager.restoreBackup;
import static ru.vtosters.lite.utils.AccountManagerUtils.getUserToken;
import static ru.vtosters.lite.utils.AndroidUtils.*;
import static ru.vtosters.lite.utils.LifecycleUtils.restartApplication;
import static ru.vtosters.lite.utils.LifecycleUtils.restartApplicationWithTimer;
import static ru.vtosters.lite.utils.ThemesUtils.getTextAttr;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.*;
import android.os.Bundle;
import android.util.Log;
import android.util.TypedValue;
import android.view.View;
import android.view.ViewGroup;
import android.webkit.WebView;
import android.widget.ArrayAdapter;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.*;
import androidx.appcompat.view.ContextThemeWrapper;
import androidx.preference.Preference;
import b.h.g.m.FileUtils;
import com.vk.auth.api.VKAccount;
import com.vk.core.dialogs.alert.VkAlertDialog;
import com.vk.core.util.ToastUtils;
@@ -52,17 +28,21 @@ import com.vtosters.lite.R;
import com.vtosters.lite.auth.VKAccountManager;
import com.vtosters.lite.general.fragments.MaterialPreferenceToolbarFragment;
import com.vtosters.lite.im.ImEngineProvider;
import java.io.IOException;
import b.h.g.m.FileUtils;
import ru.vtosters.lite.ssfs.UsersList;
import ru.vtosters.lite.ui.activities.VKAdminTokenActivity;
import ru.vtosters.lite.ui.components.BackupManager;
import ru.vtosters.lite.utils.AccountManagerUtils;
import ru.vtosters.lite.utils.AndroidUtils;
import ru.vtosters.lite.utils.ContactsUtils;
import ru.vtosters.lite.utils.VTVerifications;
import ru.vtosters.lite.utils.*;
import java.io.IOException;
import static android.widget.Toast.LENGTH_LONG;
import static android.widget.Toast.LENGTH_SHORT;
import static ru.vtosters.lite.ui.components.BackupManager.*;
import static ru.vtosters.lite.utils.AccountManagerUtils.getUserToken;
import static ru.vtosters.lite.utils.AndroidUtils.*;
import static ru.vtosters.lite.utils.LifecycleUtils.restartApplication;
import static ru.vtosters.lite.utils.LifecycleUtils.restartApplicationWithTimer;
import static ru.vtosters.lite.utils.ThemesUtils.getTextAttr;
public class OtherFragment extends MaterialPreferenceToolbarFragment {
private static final int VK_ADMIN_TOKEN_REQUEST_CODE = 1;
@@ -82,32 +62,61 @@ public class OtherFragment extends MaterialPreferenceToolbarFragment {
if (resultCode == Activity.RESULT_OK) {
String token = data.getStringExtra("token");
AndroidUtils.getPreferences().edit().putString("vk_admin_token", token).apply();
Log.d("VkAdminToken", token);
Toast.makeText(getContext(), requireContext().getString(R.string.token_saved), LENGTH_SHORT).show();
}
}
}
private void prefs() {
findPreference("firebasefix").setOnPreferenceClickListener(new a());
findPreference("applicationstop").setOnPreferenceClickListener(new b());
findPreference("tokencopy").setOnPreferenceClickListener(new c());
findPreference("applicationrestart").setOnPreferenceClickListener(new d());
findPreference("firebasefix").setOnPreferenceClickListener(preference -> {
VKAccount b = VKAccountManager.d();
PushSubscriber.e.a();
ToastUtils.a(requireContext().getString(R.string.fcmtokenrem));
AndroidUtils.getGlobalContext().getSharedPreferences("gcm", 0).edit().clear().apply();
OtherFragment.this.getListView().postDelayed(() -> {
PushSubscriber.e.a(true);
ToastUtils.a(requireContext().getString(R.string.fcmtokenget));
ToastUtils.a(requireContext().getString(R.string.fcmtokenfixed));
}, 1000);
return true;
});
findPreference("applicationstop").setOnPreferenceClickListener(preference -> {
System.exit(0);
return true;
});
findPreference("tokencopy").setOnPreferenceClickListener(preference -> {
copyText(getUserToken());
Toast.makeText(requireContext(), requireContext().getString(R.string.copybtn), LENGTH_SHORT).show();
ToastUtils.a(requireContext().getString(R.string.tokenwarning));
return true;
});
findPreference("applicationrestart").setOnPreferenceClickListener(preference -> {
restartApplication();
return true;
});
findPreference("clearcache").setOnPreferenceClickListener(preference -> {
cacheCleanDialog();
return true;
});
findPreference("copyownlink").setOnPreferenceClickListener(preference -> {
((ClipboardManager) requireContext().getSystemService(Context.CLIPBOARD_SERVICE)).setPrimaryClip(ClipData.newPlainText("MBH-ST", "https://vk.com/id" + AccountManagerUtils.getUserId()));
copyText("https://vk.com/id" + AccountManagerUtils.getUserId());
ToastUtils.a(requireContext().getString(R.string.link_copied));
return true;
});
findPreference("deviceinfo").setOnPreferenceClickListener(preference -> {
Context context = requireContext();
Intent a2 = new Navigator(SystemInfo.class).b(context);
a2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(a2);
NavigatorUtils.switchFragment(requireContext(), SystemInfo.class);
return true;
});
@@ -123,7 +132,7 @@ public class OtherFragment extends MaterialPreferenceToolbarFragment {
return true;
});
findPreference("contacts_sync").setOnPreferenceClickListener((preference) -> {
findPreference("contacts_sync").setOnPreferenceClickListener(preference -> {
ContactsUtils.getContactsStatus(requireContext());
return true;
});
@@ -155,16 +164,52 @@ public class OtherFragment extends MaterialPreferenceToolbarFragment {
return true;
});
findPreference("saveonlines").setOnPreferenceClickListener(new onlines());
findPreference("saveonlines").setOnPreferenceClickListener(preference -> {
try {
backupOnlines();
} catch (IOException e) {
Toast.makeText(getContext(), requireContext().getString(R.string.no_data_to_backup), LENGTH_SHORT).show();
}
findPreference("saveprefs").setOnPreferenceClickListener(new saveprefs());
findPreference("restoreprefs").setOnPreferenceClickListener(new restoreprefs());
return true;
});
findPreference("saveprefs").setOnPreferenceClickListener(preference -> {
backupSettings();
return false;
});
findPreference("restoreprefs").setOnPreferenceClickListener(preference -> {
var arr = BackupManager.getBackupsNames();
var adapter = new ArrayAdapter(getContext(), android.R.layout.simple_list_item_1, arr) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView textView = (TextView) super.getView(position, convertView, parent);
textView.setTextColor(getTextAttr());
return textView;
}
};
new VkAlertDialog.Builder(getContext())
.setTitle(requireContext().getString(R.string.select_backup))
.setAdapter(adapter, (dialog, which) -> {
try {
restoreBackup(arr[which]);
restartApplicationWithTimer();
Toast.makeText(getContext(), requireContext().getString(R.string.backup_success), LENGTH_LONG).show();
} catch (IOException e) {
e.printStackTrace();
Toast.makeText(getContext(), requireContext().getString(R.string.backup_error), LENGTH_LONG).show();
}
})
.show();
return true;
});
var vkAdminTokenPref = findPreference("vk_admin_token");
vkAdminTokenPref.setVisible(AndroidUtils.getDefaultPrefs().getBoolean("new_music_downloading_way", false));
if (vkAdminTokenPref.isVisible()) {
vkAdminTokenPref.setOnPreferenceClickListener(preference -> {
startActivityForResult(new Intent(getContext(), VKAdminTokenActivity.class), VK_ADMIN_TOKEN_REQUEST_CODE);
return true;
@@ -276,115 +321,13 @@ public class OtherFragment extends MaterialPreferenceToolbarFragment {
.show();
}
private void copyText(String src) {
var manager = (ClipboardManager) requireContext().getSystemService(Context.CLIPBOARD_SERVICE);
manager.setPrimaryClip(ClipData.newPlainText("MBH-ST", src));
}
@Override
public int T4() {
return R.string.vtlother;
}
public static class d implements Preference.OnPreferenceClickListener {
@Override // android.support.v7.preference.Preference.c
public boolean onPreferenceClick(Preference preference) {
restartApplication();
return true;
}
}
public static class b implements Preference.OnPreferenceClickListener {
@Override // android.support.v7.preference.Preference.c
public boolean onPreferenceClick(Preference preference) {
System.exit(0);
return true;
}
}
public static class saveprefs implements Preference.OnPreferenceClickListener {
saveprefs() {
}
@Override // android.support.v7.preference.Preference.c
public boolean onPreferenceClick(Preference preference) {
backupSettings();
return true;
}
}
public class onlines implements Preference.OnPreferenceClickListener {
@Override // android.support.v7.preference.Preference.c
public boolean onPreferenceClick(Preference preference) {
try {
backupOnlines();
} catch (IOException e) {
Toast.makeText(getContext(), requireContext().getString(R.string.no_data_to_backup), LENGTH_SHORT).show();
}
return true;
}
}
class c implements Preference.OnPreferenceClickListener {
public void copy(Context context, String str) {
((ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE)).setPrimaryClip(ClipData.newPlainText("MBH-ST", str));
makeText(context, requireContext().getString(R.string.copybtn), LENGTH_SHORT).show();
ToastUtils.a(requireContext().getString(R.string.tokenwarning));
}
@Override // android.support.v7.preference.Preference.c
public boolean onPreferenceClick(Preference preference) {
copy(getContext(), getUserToken());
return true;
}
}
public class a implements Preference.OnPreferenceClickListener {
@Override // android.support.v7.preference.Preference.c
public boolean onPreferenceClick(Preference preference) {
VKAccount b = VKAccountManager.d();
PushSubscriber.e.a();
ToastUtils.a(requireContext().getString(R.string.fcmtokenrem));
AndroidUtils.getGlobalContext().getSharedPreferences("gcm", 0).edit().clear().apply();
OtherFragment.this.getListView().postDelayed(() -> {
PushSubscriber.e.a(true);
Context ctx;
try {
ctx = requireContext();
} catch (Exception unused) {
ctx = getGlobalContext();
}
ToastUtils.a(ctx.getString(R.string.fcmtokenget));
ToastUtils.a(ctx.getString(R.string.fcmtokenfixed));
}, 1000);
return true;
}
}
public class restoreprefs implements Preference.OnPreferenceClickListener {
@Override // android.support.v7.preference.Preference.c
public boolean onPreferenceClick(Preference preference) {
var arr = BackupManager.getBackupsNames();
var adapter = new ArrayAdapter(getContext(), android.R.layout.simple_list_item_1, arr) {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView textView = (TextView) super.getView(position, convertView, parent);
textView.setTextColor(getTextAttr());
return textView;
}
};
new VkAlertDialog.Builder(getContext())
.setTitle(requireContext().getString(R.string.select_backup))
.setAdapter(adapter, (dialog, which) -> {
try {
restoreBackup(arr[which]);
restartApplicationWithTimer();
Toast.makeText(getContext(), requireContext().getString(R.string.backup_success), LENGTH_LONG).show();
} catch (IOException e) {
e.printStackTrace();
Toast.makeText(getContext(), requireContext().getString(R.string.backup_error), LENGTH_LONG).show();
}
})
.show();
return true;
}
}
}
@@ -18,10 +18,7 @@ import ru.vtosters.lite.ui.components.DockBarEditorManager;
import ru.vtosters.lite.ui.dialogs.PalettesBottomSheetDialog;
import ru.vtosters.lite.ui.views.rarepebble.ColorPickerView;
import ru.vtosters.lite.ui.wallpapers.WallpaperMenuFragment;
import ru.vtosters.lite.utils.AndroidUtils;
import ru.vtosters.lite.utils.LifecycleUtils;
import ru.vtosters.lite.utils.Preferences;
import ru.vtosters.lite.utils.ThemesUtils;
import ru.vtosters.lite.utils.*;
import static ru.vtosters.lite.utils.AndroidUtils.getGlobalContext;
import static ru.vtosters.lite.utils.ThemesUtils.recolorDrawable;
@@ -46,7 +43,7 @@ public class ThemesFragment extends MaterialPreferenceToolbarFragment {
var dockbarEditor = findPreference("dockbareditor");
dockbarEditor.setSummary(AndroidUtils.getString(R.string.vtldocksumm) + ": " + DockBarEditorManager.getInstance().getSelectedTabs().size());
dockbarEditor.setOnPreferenceClickListener(preference -> {
switchFragment(DockBarEditorFragment.class);
NavigatorUtils.switchFragment(requireContext(), DockBarEditorFragment.class);
return true;
});
@@ -77,7 +74,7 @@ public class ThemesFragment extends MaterialPreferenceToolbarFragment {
var iconManagerPreference = findPreference("iconmanager");
iconManagerPreference.setOnPreferenceClickListener(preference -> {
switchFragment(IconsFragment.class);
NavigatorUtils.switchFragment(requireContext(), IconsFragment.class);
return true;
});
@@ -112,10 +109,8 @@ public class ThemesFragment extends MaterialPreferenceToolbarFragment {
var wp = findPreference("wallpapers");
wp.setIcon(recolorDrawable(getGlobalContext().getDrawable(R.drawable.ic_media_outline_28)));
wp.setOnPreferenceClickListener(preference -> {
Context context = requireContext();
Intent a2 = new Navigator(WallpaperMenuFragment.class).b(context);
a2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(a2);
NavigatorUtils.switchFragment(requireContext(), WallpaperMenuFragment.class);
return true;
});
@@ -210,11 +205,4 @@ public class ThemesFragment extends MaterialPreferenceToolbarFragment {
void restart() {
LifecycleUtils.restartApplicationWithTimer();
}
private void switchFragment(Class< ? extends FragmentImpl > fragmentClz) {
var intent = new Navigator(fragmentClz)
.b(requireContext())
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
requireContext().startActivity(intent);
}
}
@@ -1,10 +1,8 @@
package ru.vtosters.lite.ui.fragments;
import android.content.Intent;
import android.os.Bundle;
import com.vk.core.fragments.FragmentImpl;
import com.vk.navigation.Navigator;
import ru.vtosters.lite.utils.NavigatorUtils;
public class VKPayFragment extends FragmentImpl {
@Override
@@ -15,9 +13,6 @@ public class VKPayFragment extends FragmentImpl {
public void start() {
VKUIwrapper.setLink("https://vk.com/vkpay");
Intent intent = new Navigator(VKUIwrapper.class)
.b(getActivity())
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
NavigatorUtils.switchFragment(requireContext(), VKUIwrapper.class);
}
}
@@ -163,7 +163,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
R.drawable.ic_link_circle_outline_28,
preference -> {
VKUIwrapper.setLink(Utils.getVKUILink());
launchFragment(VKUIwrapper.class);
NavigatorUtils.switchFragment(requireContext(), VKUIwrapper.class);
return false;
}
);
@@ -217,7 +217,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"",
R.drawable.ic_about_outline_28,
preference -> {
launchFragment(InstallGMSFragment.class);
NavigatorUtils.switchFragment(requireContext(), InstallGMSFragment.class);
return false;
}
);
@@ -233,7 +233,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"",
R.drawable.ic_bug_outline_28,
preference -> {
launchFragment(SettingsDebugFragment.class);
NavigatorUtils.switchFragment(requireContext(), SettingsDebugFragment.class);
return false;
}
);
@@ -278,7 +278,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
R.drawable.ic_user_circle_outline_28,
preference -> {
VKUIwrapper.officalLinks("account");
launchFragment(VKUIwrapper.class);
NavigatorUtils.switchFragment(requireContext(), VKUIwrapper.class);
return false;
}
);
@@ -290,7 +290,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"",
R.drawable.ic_privacy_outline_28,
preference -> {
launchFragment(PrivacyFragment.class);
NavigatorUtils.switchFragment(requireContext(), PrivacyFragment.class);
return false;
}
);
@@ -302,7 +302,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"",
R.drawable.ic_user_outline_28,
preference -> {
launchFragment(SettingsAccountFragment.class);
NavigatorUtils.switchFragment(requireContext(), SettingsAccountFragment.class);
return false;
}
);
@@ -316,7 +316,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
R.drawable.ic_bug_outline_28,
preference -> {
VKUIwrapper.officalLinks("bugs");
launchFragment(VKUIwrapper.class);
NavigatorUtils.switchFragment(requireContext(), VKUIwrapper.class);
return false;
}
);
@@ -331,7 +331,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"",
R.drawable.ic_settings_outline_28,
preference -> {
launchFragment(SettingsGeneralFragment.class);
NavigatorUtils.switchFragment(requireContext(), SettingsGeneralFragment.class);
return false;
}
);
@@ -343,7 +343,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"",
R.drawable.ic_users_outline_28,
preference -> {
launchFragment(BlacklistFragment.class);
NavigatorUtils.switchFragment(requireContext(), BlacklistFragment.class);
return false;
}
);
@@ -355,7 +355,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"",
R.drawable.ic_menu_notification_outline_28,
preference -> {
launchFragment(NotificationsSettingsFragment.class);
NavigatorUtils.switchFragment(requireContext(), NotificationsSettingsFragment.class);
return false;
}
);
@@ -368,7 +368,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"",
R.drawable.ic_music_outline_28,
preference -> {
launchFragment(MusicSubscriptionControlFragment.class);
NavigatorUtils.switchFragment(requireContext(), MusicSubscriptionControlFragment.class);
return false;
}
);
@@ -381,7 +381,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"",
R.drawable.ic_coins_outline_28,
preference -> {
launchFragment(BalanceFragment.class);
NavigatorUtils.switchFragment(requireContext(), BalanceFragment.class);
return false;
}
);
@@ -405,7 +405,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
getValAsString(R.string.vtlfeedsumm, Preferences.ads()),
R.drawable.ic_newsfeed_outline_28,
preference -> {
launchFragment(FeedFragment.class);
NavigatorUtils.switchFragment(requireContext(), FeedFragment.class);
return false;
}
);
@@ -418,7 +418,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
getValAsString(R.string.vtlinterfacesumm, Preferences.shortinfo()),
R.drawable.ic_media_outline_28,
preference -> {
launchFragment(MediaFragment.class);
NavigatorUtils.switchFragment(requireContext(), MediaFragment.class);
return false;
}
);
@@ -432,7 +432,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
: getValAsString(R.string.vtlmsgsumm, Preferences.vkme()),
R.drawable.ic_message_outline_28,
preference -> {
launchFragment(MessagesFragment.class);
NavigatorUtils.switchFragment(requireContext(), MessagesFragment.class);
return false;
}
);
@@ -444,7 +444,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
getTGSsumm(),
R.drawable.ic_telegram_outline_28,
preference -> {
launchFragment(StickersFragment.class);
NavigatorUtils.switchFragment(requireContext(), StickersFragment.class);
return false;
}
);
@@ -456,7 +456,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
getThemesumm(),
R.drawable.ic_write_outline_28,
preference -> {
launchFragment(ThemesFragment.class);
NavigatorUtils.switchFragment(requireContext(), ThemesFragment.class);
return false;
}
);
@@ -468,7 +468,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
getValAsString(R.string.showstories, Preferences.stories()),
R.drawable.ic_interface_outline_28,
preference -> {
launchFragment(InterfaceFragment.class);
NavigatorUtils.switchFragment(requireContext(), InterfaceFragment.class);
return false;
}
);
@@ -480,7 +480,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
getValAsString(R.string.vtlactivitysumm, Preferences.offline()),
R.drawable.ic_write_outline_28_new_accent,
preference -> {
launchFragment(ActivityFragment.class);
NavigatorUtils.switchFragment(requireContext(), ActivityFragment.class);
return false;
}
);
@@ -492,7 +492,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
getProxysumm(),
R.drawable.ic_globe_outline_28,
preference -> {
launchFragment(ProxySettingsFragment.class);
NavigatorUtils.switchFragment(requireContext(), ProxySettingsFragment.class);
return false;
}
);
@@ -504,7 +504,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
getValAsString(R.string.vtlothersumm, VTVerifications.vtverif()),
R.drawable.ic_more_horizontal_28,
preference -> {
launchFragment(OtherFragment.class);
NavigatorUtils.switchFragment(requireContext(), OtherFragment.class);
return false;
}
);
@@ -518,7 +518,7 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
"Commit: " + About.getBuildNumber(),
R.drawable.ic_about_outline_28,
preference -> {
launchFragment(AboutAppFragment.class);
NavigatorUtils.switchFragment(requireContext(), AboutAppFragment.class);
return false;
}
);
@@ -577,13 +577,6 @@ public class VTSettings extends MaterialPreferenceToolbarFragment implements Tel
}
}
private void launchFragment(Class< ? extends FragmentImpl > fragmentClz) {
Intent intent = new Navigator(fragmentClz)
.b(requireContext())
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
requireContext().startActivity(intent);
}
@Override
public void onResume() {
super.onResume();
@@ -29,6 +29,7 @@ import ru.vtosters.lite.ui.adapters.StickerPackAdapter;
import ru.vtosters.lite.ui.components.StickerTouchHelperCallback;
import ru.vtosters.lite.ui.fragments.BaseToolbarFragment;
import ru.vtosters.lite.utils.AndroidUtils;
import ru.vtosters.lite.utils.NavigatorUtils;
import ru.vtosters.lite.utils.ThemesUtils;
import java.io.File;
@@ -85,9 +86,7 @@ public class StickersFragment extends BaseToolbarFragment {
if (toast != null) {
Toast.makeText(requireContext(), toast, Toast.LENGTH_SHORT).show();
}
var intent = new Navigator(StickersPreferencesFragment.class, new Bundle()).b(requireContext());
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
super.requireContext().startActivity(intent);
NavigatorUtils.switchFragment(requireContext(), StickersPreferencesFragment.class);
}
@Override
@@ -8,6 +8,7 @@ import android.content.pm.PackageManager;
import android.os.Bundle;
import android.os.Handler;
import com.vk.core.fragments.FragmentImpl;
import com.vk.navigation.Navigator;
import java.util.ArrayList;
@@ -72,13 +73,10 @@ public class LifecycleUtils {
handler.postDelayed(LifecycleUtils::restartApplication, 500);
}
public static void restartApplicationInto(Class Class) {
public static void restartApplicationInto(Class< ? extends FragmentImpl> clz) {
Context ctx = AndroidUtils.getGlobalContext();
Intent intent = new Navigator(Class).b(ctx);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Intent mainIntent = Intent.makeRestartActivityTask(intent.getComponent());
ctx.startActivity(mainIntent);
NavigatorUtils.switchFragment(AndroidUtils.getGlobalContext(), clz);
Runtime.getRuntime().exit(0);
}
@@ -0,0 +1,16 @@
package ru.vtosters.lite.utils;
import android.content.Context;
import android.content.Intent;
import com.vk.core.fragments.FragmentImpl;
import com.vk.navigation.Navigator;
public class NavigatorUtils {
public static void switchFragment(Context context, Class< ? extends FragmentImpl > fragmentClz) {
var intent = new Navigator(fragmentClz)
.b(context)
.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
}