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 --> - + + + + + + + + +