diff --git a/app/src/main/java/ru/vtosters/lite/ui/fragments/dockbar/DockBarFragment.java b/app/src/main/java/ru/vtosters/lite/ui/fragments/dockbar/DockBarFragment.java index 56dbebb6c..20f8a472b 100644 --- a/app/src/main/java/ru/vtosters/lite/ui/fragments/dockbar/DockBarFragment.java +++ b/app/src/main/java/ru/vtosters/lite/ui/fragments/dockbar/DockBarFragment.java @@ -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(); - } + + }*/ } diff --git a/app/src/main/java/ru/vtosters/lite/ui/fragments/dockbar/DockBarManager.java b/app/src/main/java/ru/vtosters/lite/ui/fragments/dockbar/DockBarManager.java index db13a36bb..300fa5346 100644 --- a/app/src/main/java/ru/vtosters/lite/ui/fragments/dockbar/DockBarManager.java +++ b/app/src/main/java/ru/vtosters/lite/ui/fragments/dockbar/DockBarManager.java @@ -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();