add saving and resetting
This commit is contained in:
@@ -5,12 +5,20 @@ import android.support.v7.widget.LinearLayoutManager;
|
||||
import android.support.v7.widget.RecyclerView;
|
||||
import android.support.v7.widget.a.ItemTouchHelper;
|
||||
import android.util.Log;
|
||||
import android.view.Gravity;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.Button;
|
||||
import android.widget.FrameLayout;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.Toast;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
import me.grishka.appkit.fragments.ToolbarFragment;
|
||||
import ru.vtosters.lite.utils.Helper;
|
||||
|
||||
public class DockBarFragment extends ToolbarFragment {
|
||||
|
||||
@@ -24,6 +32,42 @@ public class DockBarFragment extends ToolbarFragment {
|
||||
|
||||
LinearLayout container = new LinearLayout(n());
|
||||
container.setLayoutParams(new FrameLayout.LayoutParams(-1, -1));
|
||||
container.setGravity(Gravity.CENTER);
|
||||
container.setOrientation(LinearLayout.VERTICAL);
|
||||
|
||||
LinearLayout buttonsContainer = new LinearLayout(n());
|
||||
buttonsContainer.setPadding(
|
||||
Helper.convertDpToPixel(13),
|
||||
Helper.convertDpToPixel(10),
|
||||
Helper.convertDpToPixel(13),
|
||||
Helper.convertDpToPixel(10)
|
||||
);
|
||||
container.addView(buttonsContainer, new LinearLayout.LayoutParams(-1, -2));
|
||||
|
||||
Button save = new Button(n());
|
||||
save.setText("Сохранить");
|
||||
save.setOnClickListener(v -> {
|
||||
DockBarManager.getInstance().save();
|
||||
Helper.restarting();
|
||||
});
|
||||
|
||||
LinearLayout.LayoutParams saveParams = new LinearLayout.LayoutParams(0, -2);
|
||||
saveParams.weight = 1.0f;
|
||||
buttonsContainer.addView(save, saveParams);
|
||||
|
||||
View divider = new View(n());
|
||||
buttonsContainer.addView(divider, new LinearLayout.LayoutParams(Helper.convertDpToPixel(10), 0));
|
||||
|
||||
Button reset = new Button(n());
|
||||
reset.setText("Сбросить");
|
||||
reset.setOnClickListener(v -> {
|
||||
DockBarManager.getInstance().delete();
|
||||
Helper.restarting();
|
||||
});
|
||||
|
||||
LinearLayout.LayoutParams resetParams = new LinearLayout.LayoutParams(0, -2);
|
||||
resetParams.weight = 1.0f;
|
||||
buttonsContainer.addView(reset, resetParams);
|
||||
|
||||
mRecyclerView = new RecyclerView(n());
|
||||
mRecyclerView.setHasFixedSize(true);
|
||||
@@ -48,9 +92,11 @@ public class DockBarFragment extends ToolbarFragment {
|
||||
a("Редактор докбара");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
|
||||
/* @Override
|
||||
public void A_() {
|
||||
super.A_();
|
||||
DockBarManager.getInstance().save();
|
||||
}
|
||||
|
||||
}*/
|
||||
}
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
package ru.vtosters.lite.ui.fragments.dockbar;
|
||||
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.vk.apps.AppsFragment;
|
||||
@@ -27,7 +25,6 @@ import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.vk.notifications.NotificationsFragment;
|
||||
import com.vtosters.lite.R;
|
||||
@@ -47,8 +44,8 @@ import ru.vtosters.lite.utils.Helper;
|
||||
import ru.vtosters.lite.utils.Prefs;
|
||||
|
||||
public class DockBarManager {
|
||||
static final int MIN_SELECTED_TABS_LIMIT = 3;
|
||||
static final int MAX_SELECTED_TABS_LIMIT = 8;
|
||||
public static final int MIN_SELECTED_TABS_LIMIT = 3;
|
||||
public static final int MAX_SELECTED_TABS_LIMIT = 8;
|
||||
|
||||
private static DockBarManager sInstance = new DockBarManager();
|
||||
|
||||
@@ -91,7 +88,7 @@ public class DockBarManager {
|
||||
mDisabledTabs.add(new DockBarTab("tab_payments", R.drawable.ic_money_transfer_24, R.string.money_transfer_money_transfers, R.id.menu_payments, MoneyTransfersFragment.class));
|
||||
mDisabledTabs.add(new DockBarTab("tab_vk_apps", R.drawable.ic_services_24, R.string.menu_apps, R.id.menu_vk_apps, AppsFragment.class));
|
||||
mDisabledTabs.add(new DockBarTab("tab_profile", R.drawable.libverify_ic_account_circle_white, R.string.profile, R.id.profile, ProfileFragment.class));
|
||||
|
||||
|
||||
} else {
|
||||
try {
|
||||
JSONObject json = new JSONObject(readFully(new FileInputStream(dockbar)));
|
||||
@@ -164,9 +161,14 @@ public class DockBarManager {
|
||||
return bos.toString();
|
||||
}
|
||||
|
||||
public void delete() {
|
||||
File dockbar = new File(Helper.GetContext().getFilesDir(), "dockbar.json");
|
||||
if (dockbar.exists()) dockbar.delete();
|
||||
}
|
||||
|
||||
public void save() {
|
||||
try {
|
||||
File cache = new File(Helper.GetContext().getFilesDir(), "dockbar.json");
|
||||
File dockbar = new File(Helper.GetContext().getFilesDir(), "dockbar.json");
|
||||
|
||||
JSONArray selected = new JSONArray();
|
||||
for (DockBarTab tab : mSelectedTabs) {
|
||||
@@ -194,7 +196,7 @@ public class DockBarManager {
|
||||
JSONObject json = new JSONObject();
|
||||
json.put("selected", selected).put("disabled", disabled);
|
||||
|
||||
FileOutputStream fos = new FileOutputStream(cache);
|
||||
FileOutputStream fos = new FileOutputStream(dockbar);
|
||||
fos.write(json.toString().getBytes(StandardCharsets.UTF_8));
|
||||
} catch (JSONException | IOException e) {
|
||||
e.printStackTrace();
|
||||
|
||||
Reference in New Issue
Block a user