diff --git a/app/src/main/java/org/lsposed/manager/ui/fragment/HomeFragment.java b/app/src/main/java/org/lsposed/manager/ui/fragment/HomeFragment.java
index e843a8c9..6e62ba4c 100644
--- a/app/src/main/java/org/lsposed/manager/ui/fragment/HomeFragment.java
+++ b/app/src/main/java/org/lsposed/manager/ui/fragment/HomeFragment.java
@@ -51,6 +51,7 @@ import org.lsposed.manager.util.chrome.LinkTransformationMethod;
import java.util.Locale;
import rikka.core.res.ResourcesKt;
+import rikka.widget.borderview.BorderView;
public class HomeFragment extends BaseFragment {
@@ -69,10 +70,12 @@ public class HomeFragment extends BaseFragment {
@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- FragmentMainBinding mainBinding = FragmentMainBinding.inflate(inflater, container, false);
- snackbar = mainBinding.snackbar;
- binding = FragmentHomeBinding.bind(mainBinding.snackbar);
- return mainBinding.getRoot();
+ binding = FragmentHomeBinding.inflate(inflater, container, false);
+
+ setupToolbar(binding.toolbar, R.string.app_name);
+ binding.toolbar.setNavigationIcon(null);
+ binding.nestedScrollView.getBorderViewDelegate().setBorderVisibilityChangedListener((top, oldTop, bottom, oldBottom) -> binding.appBar.setRaised(!top));
+ return binding.getRoot();
}
@Override
@@ -109,9 +112,6 @@ public class HomeFragment extends BaseFragment {
.setView(binding.getRoot())
.show();
});
- Glide.with(binding.appIcon)
- .load(wrap(activity.getApplicationInfo(), getResources().getConfiguration().hashCode()))
- .into(binding.appIcon);
int cardBackgroundColor;
if (isBinderAlive) {
if (!ConfigManager.isSepolicyLoaded()) {
@@ -151,7 +151,7 @@ public class HomeFragment extends BaseFragment {
binding.download.setVisibility(View.GONE);
}
binding.statusIcon.setImageResource(R.drawable.ic_error);
- Snackbar.make(snackbar, R.string.lsposed_not_active, Snackbar.LENGTH_INDEFINITE).show();
+ Snackbar.make(binding.snackbar, R.string.lsposed_not_active, Snackbar.LENGTH_INDEFINITE).show();
}
binding.status.setCardBackgroundColor(cardBackgroundColor);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
@@ -172,7 +172,7 @@ public class HomeFragment extends BaseFragment {
@Override
public void onClick(View v) {
if (requireInstalled && !ConfigManager.isBinderAlive()) {
- Snackbar.make(snackbar, R.string.lsposed_not_active, Snackbar.LENGTH_LONG).show();
+ Snackbar.make(binding.snackbar, R.string.lsposed_not_active, Snackbar.LENGTH_LONG).show();
} else {
getNavController().navigate(fragment);
}
diff --git a/app/src/main/java/org/lsposed/manager/ui/fragment/ModulesFragment.java b/app/src/main/java/org/lsposed/manager/ui/fragment/ModulesFragment.java
index ef89f5bf..d89f8bd9 100644
--- a/app/src/main/java/org/lsposed/manager/ui/fragment/ModulesFragment.java
+++ b/app/src/main/java/org/lsposed/manager/ui/fragment/ModulesFragment.java
@@ -23,7 +23,6 @@ import static android.provider.Settings.ACTION_APPLICATION_DETAILS_SETTINGS;
import static androidx.recyclerview.widget.RecyclerView.Adapter.StateRestorationPolicy.PREVENT_WHEN_EMPTY;
import android.annotation.SuppressLint;
-import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
diff --git a/app/src/main/java/org/lsposed/manager/ui/fragment/RepoItemFragment.java b/app/src/main/java/org/lsposed/manager/ui/fragment/RepoItemFragment.java
index 02bad7ec..d238b8e8 100644
--- a/app/src/main/java/org/lsposed/manager/ui/fragment/RepoItemFragment.java
+++ b/app/src/main/java/org/lsposed/manager/ui/fragment/RepoItemFragment.java
@@ -40,7 +40,6 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog;
-import androidx.lifecycle.Lifecycle;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewpager2.widget.ViewPager2;
diff --git a/app/src/main/res/drawable-nodpi/ic_launcher.xml b/app/src/main/res/drawable-nodpi/ic_launcher.xml
new file mode 100644
index 00000000..496302eb
--- /dev/null
+++ b/app/src/main/res/drawable-nodpi/ic_launcher.xml
@@ -0,0 +1,36 @@
+
+
+
+ -
+
+
+
+
+
+ -
+
+
+
diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml
index 5083624c..0b331c95 100644
--- a/app/src/main/res/layout/fragment_home.xml
+++ b/app/src/main/res/layout/fragment_home.xml
@@ -18,23 +18,53 @@
~ Copyright (C) 2021 LSPosed Contributors
-->
-
+ xmlns:tools="http://schemas.android.com/tools"
+ android:id="@+id/snackbar"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ app:consumeSystemWindowsInsets="start|end"
+ app:edgeToEdge="true"
+ app:fitsSystemWindowsInsets="start|end">
+
+
+
+
+
+
-
+ app:borderTopVisibility="whenTop"
+ app:borderTopDrawable="@null"
+ app:borderBottomVisibility="never">
-
-
-
-
-
-
-
+ style="@style/HomeItem.Primary">
+ android:paddingHorizontal="16dp"
+ android:paddingVertical="16dp">
@@ -106,9 +97,11 @@
android:id="@+id/status_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginStart="25dp"
+ android:layout_marginStart="24dp"
android:layout_toEndOf="@id/status_icon"
- android:textAppearance="@style/TextAppearance.AppCompat.Medium"
+ android:fontFamily="sans-serif-medium"
+ android:textSize="16sp"
+ android:textAppearance="?android:attr/textAppearanceListItem"
android:textColor="?android:attr/textColorPrimaryInverse" />
@@ -127,29 +119,18 @@
android:id="@+id/modules"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_marginHorizontal="16dp"
- android:layout_marginTop="10dp"
- android:clickable="true"
- android:focusable="true"
- android:foreground="?attr/selectableItemBackground"
- android:outlineAmbientShadowColor="#3A000000"
- android:outlineSpotShadowColor="#3A000000"
- app:cardCornerRadius="8dp"
- app:cardElevation="4dp"
- app:cardPreventCornerOverlap="false">
+ style="@style/HomeItem.Secondary">
+ android:paddingHorizontal="16dp"
+ android:paddingVertical="12dp">
@@ -158,10 +139,11 @@
android:id="@+id/modules_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginStart="25dp"
+ android:layout_marginStart="24dp"
android:layout_toEndOf="@id/modules_icon"
android:text="@string/Modules"
- android:textAppearance="@style/TextAppearance.AppCompat.Medium" />
+ android:textSize="16sp"
+ android:textAppearance="?android:attr/textAppearanceListItem" />
+ android:textAppearance="?android:attr/textAppearanceSmall" />
@@ -179,29 +159,18 @@
android:id="@+id/download"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_marginHorizontal="16dp"
- android:layout_marginTop="10dp"
- android:clickable="true"
- android:focusable="true"
- android:foreground="?attr/selectableItemBackground"
- android:outlineAmbientShadowColor="#3A000000"
- android:outlineSpotShadowColor="#3A000000"
- app:cardCornerRadius="8dp"
- app:cardElevation="4dp"
- app:cardPreventCornerOverlap="false">
+ style="@style/HomeItem.Secondary">
+ android:paddingHorizontal="16dp"
+ android:paddingVertical="12dp">
@@ -210,10 +179,11 @@
android:id="@+id/download_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginStart="25dp"
+ android:layout_marginStart="24dp"
android:layout_toEndOf="@id/download_icon"
android:text="@string/module_repo"
- android:textAppearance="@style/TextAppearance.AppCompat.Medium" />
+ android:textSize="16sp"
+ android:textAppearance="?android:attr/textAppearanceListItem" />
+ android:textAppearance="?android:attr/textAppearanceSmall" />
@@ -232,84 +200,65 @@
android:id="@+id/logs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:gravity="center_vertical"
- android:layout_marginHorizontal="16dp"
- android:layout_marginTop="10dp"
- android:background="@drawable/item_background_round_nopadding"
- android:clickable="true"
- android:focusable="true"
- android:orientation="horizontal"
- android:padding="18dp">
+ style="@style/HomeItem.Tertiary">
+ android:textSize="16sp"
+ android:textAppearance="?android:attr/textAppearanceListItem" />
+ style="@style/HomeItem.Tertiary">
+ android:textAppearance="?android:attr/textAppearanceListItem" />
+ style="@style/HomeItem.Tertiary">
+ android:textSize="16sp"
+ android:textAppearance="?android:attr/textAppearanceListItem" />
-
+
-
+
diff --git a/app/src/main/res/values-night/colors.xml b/app/src/main/res/values-night/colors.xml
index acdb7a2d..b3b30748 100644
--- a/app/src/main/res/values-night/colors.xml
+++ b/app/src/main/res/values-night/colors.xml
@@ -22,4 +22,7 @@
@color/material_pink_300
@color/material_light_blue_50
+
+ @color/material_grey_700
+ @color/material_grey_600
diff --git a/app/src/main/res/values-v28/dimens.xml b/app/src/main/res/values-v28/dimens.xml
new file mode 100644
index 00000000..429e5b8a
--- /dev/null
+++ b/app/src/main/res/values-v28/dimens.xml
@@ -0,0 +1,23 @@
+
+
+
+ 12dp
+ 8dp
+
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 616feffd..8f03d347 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -25,4 +25,7 @@
@android:color/white
@color/material_pink_200
+
+ @color/material_grey_500
+ @color/material_grey_300
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index db18f122..a330a316 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -22,4 +22,7 @@
48dp
48dp
32dp
+
+ 6dp
+ 2dp
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index aaa6d01c..74e736e9 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -17,7 +17,7 @@
~ Copyright (C) 2021 LSPosed Contributors
-->
-
+
+
+
+
+
+
+
+
+