mirror of
https://github.com/wrwrabbit/Partisan-Telegram-Android.git
synced 2026-05-22 19:54:34 +00:00
refactoring
This commit is contained in:
parent
61ff05c1bd
commit
baaaaab83c
7 changed files with 18 additions and 63 deletions
|
|
@ -889,13 +889,8 @@ public class UserConfig extends BaseController {
|
|||
|
||||
public static int getUsedAccountCountForCurrentFakePasscodeState() {
|
||||
int usedAccounts = 0;
|
||||
Integer availableAccount = null;
|
||||
for (int a = UserConfig.MAX_ACCOUNT_COUNT - 1; a >= 0; a--) {
|
||||
if (!UserConfig.getInstance(a).isClientActivated()) {
|
||||
if (availableAccount == null) {
|
||||
availableAccount = a;
|
||||
}
|
||||
} else if (!FakePasscodeUtils.isHideAccount(a)) {
|
||||
if (!FakePasscodeUtils.isHideAccount(a)) {
|
||||
usedAccounts++;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
package org.telegram.ui;
|
||||
package org.telegram.messenger.partisan.ui;
|
||||
|
||||
import static org.telegram.messenger.LocaleController.getString;
|
||||
|
||||
|
|
@ -19,9 +19,6 @@ import org.telegram.messenger.partisan.ui.items.CollapseItem;
|
|||
import org.telegram.messenger.partisan.ui.items.DelimiterItem;
|
||||
import org.telegram.messenger.partisan.ui.items.DescriptionItem;
|
||||
import org.telegram.messenger.partisan.ui.items.HeaderItem;
|
||||
import org.telegram.messenger.partisan.ui.InterfaceTweaksFragment;
|
||||
import org.telegram.messenger.partisan.ui.PartisanBaseFragment;
|
||||
import org.telegram.messenger.partisan.ui.PartisanTelegramSettingsLocationFragment;
|
||||
import org.telegram.messenger.partisan.ui.items.ItemsGenerator;
|
||||
import org.telegram.messenger.partisan.ui.items.ToggleItem;
|
||||
import org.telegram.messenger.partisan.voicechange.VoiceChangeSettings;
|
||||
|
|
@ -29,6 +26,11 @@ import org.telegram.messenger.partisan.voicechange.VoiceChangeSettingsFragment;
|
|||
import org.telegram.ui.ActionBar.AlertDialog;
|
||||
import org.telegram.ui.ActionBar.BaseFragment;
|
||||
import org.telegram.ui.ActionBar.Theme;
|
||||
import org.telegram.ui.FakePasscodeActivity;
|
||||
import org.telegram.ui.FakePasscodeRestoreActivity;
|
||||
import org.telegram.ui.PartisanSettingsActivity;
|
||||
import org.telegram.ui.PasscodeActivity;
|
||||
import org.telegram.ui.SecurityIssuesFragment;
|
||||
|
||||
public class PTelegramSettingsFragment extends PartisanBaseFragment {
|
||||
|
||||
|
|
@ -321,7 +321,9 @@ public class PartisanTelegramSettingsLockActivity extends BaseFragment {
|
|||
|
||||
if (SharedConfig.passcodeRetryInMs > 0) {
|
||||
int value = Math.max(1, (int) Math.ceil(SharedConfig.passcodeRetryInMs / 1000.0));
|
||||
Toast.makeText(getParentActivity(), LocaleController.formatString(R.string.TooManyTries, LocaleController.formatPluralString("Seconds", value)), Toast.LENGTH_SHORT).show();
|
||||
if (getParentActivity() != null) {
|
||||
Toast.makeText(getParentActivity(), LocaleController.formatString(R.string.TooManyTries, LocaleController.formatPluralString("Seconds", value)), Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
clearInput();
|
||||
onPasscodeError();
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ import org.telegram.messenger.partisan.appmigration.AppMigrationActivity;
|
|||
import org.telegram.messenger.partisan.appmigration.AppMigrator;
|
||||
import org.telegram.messenger.partisan.appmigration.AppMigratorPreferences;
|
||||
import org.telegram.messenger.partisan.settings.PartisanTelegramSettings;
|
||||
import org.telegram.messenger.partisan.ui.DangerousSettingSwitcher;
|
||||
import org.telegram.messenger.partisan.ui.PartisanTelegramSettingsLocationFragment;
|
||||
import org.telegram.messenger.partisan.verification.VerificationRepository;
|
||||
import org.telegram.messenger.partisan.verification.VerificationStorage;
|
||||
|
|
@ -104,54 +105,6 @@ public class PartisanSettingsActivity extends BaseFragment {
|
|||
private int protectPtelegramSettingsRow;
|
||||
private int protectPtelegramSettingsDetailRow;
|
||||
|
||||
private class DangerousSettingSwitcher {
|
||||
public Context context;
|
||||
public View view;
|
||||
public boolean value;
|
||||
public Consumer<Boolean> setValue;
|
||||
public Consumer<AccountInstance> dangerousAction;
|
||||
public Function<UserConfig, Boolean> isChanged;
|
||||
public String dangerousActionTitle;
|
||||
public String positiveButtonText;
|
||||
public String negativeButtonText;
|
||||
public String neutralButtonText;
|
||||
|
||||
public void switchSetting() {
|
||||
if (context == null || !value || !isChangedSetting(isChanged)) {
|
||||
changeSetting(value);
|
||||
} else {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(context);
|
||||
builder.setTitle(LocaleController.getString("AppName", R.string.AppName));
|
||||
builder.setMessage(dangerousActionTitle);
|
||||
builder.setPositiveButton(positiveButtonText, (dialog, which) -> changeSetting(true));
|
||||
builder.setNegativeButton(negativeButtonText, (dialog, which) -> changeSetting(false));
|
||||
builder.setNeutralButton(neutralButtonText, null);
|
||||
showDialog(builder.create());
|
||||
}
|
||||
}
|
||||
|
||||
private void changeSetting(boolean runDangerousAction) {
|
||||
setValue.accept(!value);
|
||||
SharedConfig.saveConfig();
|
||||
((TextCheckCell) view).setChecked(!value);
|
||||
if (runDangerousAction) {
|
||||
Utils.foreachActivatedAccountInstance(dangerousAction);
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isChangedSetting(Function<UserConfig, Boolean> isChanged) {
|
||||
for (int a = 0; a < UserConfig.MAX_ACCOUNT_COUNT; a++) {
|
||||
UserConfig config = UserConfig.getInstance(a);
|
||||
if (config.isClientActivated()) {
|
||||
if (isChanged.apply(config)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private final boolean ptelegramSettingsMode;
|
||||
|
||||
public PartisanSettingsActivity() {
|
||||
|
|
@ -217,8 +170,7 @@ public class PartisanSettingsActivity extends BaseFragment {
|
|||
((TextCheckCell) view).setChecked(SharedConfig.showId);
|
||||
} else if (position == disableAvatarRow) {
|
||||
DangerousSettingSwitcher switcher = new DangerousSettingSwitcher();
|
||||
switcher.context = context;
|
||||
switcher.view = view;
|
||||
switcher.fragment = this;
|
||||
switcher.value = SharedConfig.allowDisableAvatar;
|
||||
switcher.setValue = v -> SharedConfig.allowDisableAvatar = v;
|
||||
switcher.isChanged = c -> c.chatInfoOverrides.values().stream().anyMatch(o -> !o.avatarEnabled);
|
||||
|
|
@ -226,6 +178,7 @@ public class PartisanSettingsActivity extends BaseFragment {
|
|||
switcher.positiveButtonText = LocaleController.getString("Reset", R.string.Reset);
|
||||
switcher.negativeButtonText = LocaleController.getString("NotReset", R.string.NotReset);
|
||||
switcher.neutralButtonText = LocaleController.getString("Cancel", R.string.Cancel);
|
||||
switcher.onSettingChanged = () -> listAdapter.notifyItemChanged(position);
|
||||
switcher.dangerousAction = accountInstance -> {
|
||||
for (UserConfig.ChatInfoOverride override : accountInstance.getUserConfig().chatInfoOverrides.values()) {
|
||||
override.avatarEnabled = true;
|
||||
|
|
@ -235,8 +188,7 @@ public class PartisanSettingsActivity extends BaseFragment {
|
|||
switcher.switchSetting();
|
||||
} else if (position == renameChatRow) {
|
||||
DangerousSettingSwitcher switcher = new DangerousSettingSwitcher();
|
||||
switcher.context = context;
|
||||
switcher.view = view;
|
||||
switcher.fragment = this;
|
||||
switcher.value = SharedConfig.allowRenameChat;
|
||||
switcher.setValue = v -> SharedConfig.allowRenameChat = v;
|
||||
switcher.isChanged = c -> c.chatInfoOverrides.values().stream().anyMatch(o -> o.title != null);
|
||||
|
|
@ -244,6 +196,7 @@ public class PartisanSettingsActivity extends BaseFragment {
|
|||
switcher.positiveButtonText = LocaleController.getString("Reset", R.string.Reset);
|
||||
switcher.negativeButtonText = LocaleController.getString("NotReset", R.string.NotReset);
|
||||
switcher.neutralButtonText = LocaleController.getString("Cancel", R.string.Cancel);
|
||||
switcher.onSettingChanged = () -> listAdapter.notifyItemChanged(position);
|
||||
switcher.dangerousAction = accountInstance -> {
|
||||
for (UserConfig.ChatInfoOverride override : accountInstance.getUserConfig().chatInfoOverrides.values()) {
|
||||
override.title = null;
|
||||
|
|
|
|||
|
|
@ -49,6 +49,7 @@ import org.telegram.messenger.R;
|
|||
import org.telegram.messenger.SharedConfig;
|
||||
import org.telegram.messenger.partisan.settings.PartisanTelegramSettings;
|
||||
import org.telegram.messenger.partisan.settings.PartisanTelegramSettingsLocation;
|
||||
import org.telegram.messenger.partisan.ui.PTelegramSettingsFragment;
|
||||
import org.telegram.tgnet.ConnectionsManager;
|
||||
import org.telegram.tgnet.TLRPC;
|
||||
import org.telegram.tgnet.tl.TL_account;
|
||||
|
|
|
|||
|
|
@ -167,6 +167,7 @@ import org.telegram.messenger.partisan.PartisanWarningDialogBuilder;
|
|||
import org.telegram.messenger.partisan.SecurityChecker;
|
||||
import org.telegram.messenger.partisan.secretgroups.EncryptedGroup;
|
||||
import org.telegram.messenger.partisan.settings.TesterSettings;
|
||||
import org.telegram.messenger.partisan.ui.PTelegramSettingsFragment;
|
||||
import org.telegram.tgnet.ConnectionsManager;
|
||||
import org.telegram.tgnet.SerializedData;
|
||||
import org.telegram.tgnet.TLObject;
|
||||
|
|
|
|||
|
|
@ -83,6 +83,7 @@ import org.telegram.messenger.SharedConfig;
|
|||
import org.telegram.messenger.UserConfig;
|
||||
import org.telegram.messenger.UserObject;
|
||||
import org.telegram.messenger.browser.Browser;
|
||||
import org.telegram.messenger.partisan.ui.PTelegramSettingsFragment;
|
||||
import org.telegram.tgnet.ConnectionsManager;
|
||||
import org.telegram.tgnet.TLRPC;
|
||||
import org.telegram.ui.ActionBar.ActionBar;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue