diff --git a/app/src/main/java/org/meowcat/edxposed/manager/BaseActivity.java b/app/src/main/java/org/meowcat/edxposed/manager/BaseActivity.java index b4443bb0..576ca0d6 100644 --- a/app/src/main/java/org/meowcat/edxposed/manager/BaseActivity.java +++ b/app/src/main/java/org/meowcat/edxposed/manager/BaseActivity.java @@ -219,34 +219,32 @@ public class BaseActivity extends AppCompatActivity { switch (item.getItemId()) { case R.id.dexopt_all: areYouSure(R.string.take_while_cannot_resore, (dialog, which) -> { - new MaterialAlertDialogBuilder(this) - .setTitle(R.string.dexopt_now) - .setMessage(R.string.this_may_take_a_while) - .setCancelable(false) - .show(); - new Thread("dexopt") { - @Override - public void run() { - if (!Shell.rootAccess()) { - dialog.dismiss(); - NavUtil.showMessage(BaseActivity.this, getString(R.string.root_failed)); - return; - } - Shell.su("cmd package bg-dexopt-job").exec(); + new MaterialAlertDialogBuilder(this) + .setTitle(R.string.dexopt_now) + .setMessage(R.string.this_may_take_a_while) + .setCancelable(false) + .show(); + new Thread("dexopt") { + @Override + public void run() { + if (!Shell.rootAccess()) { + dialog.dismiss(); + NavUtil.showMessage(BaseActivity.this, getString(R.string.root_failed)); + return; + } - dialog.dismiss(); - XposedApp.runOnUiThread(() -> Toast.makeText(BaseActivity.this, R.string.done, Toast.LENGTH_LONG).show()); - } - }.start(); + Shell.su("cmd package bg-dexopt-job").exec(); + + dialog.dismiss(); + XposedApp.runOnUiThread(() -> Toast.makeText(BaseActivity.this, R.string.done, Toast.LENGTH_LONG).show()); } - ); - + }.start(); + }); break; case R.id.speed_all: areYouSure(R.string.take_while_cannot_resore, (dialog, which) -> { - new MaterialAlertDialogBuilder(this) - .setTitle(R.string.dexopt_now) + .setTitle(R.string.speed_now) .setMessage(R.string.this_may_take_a_while) .setCancelable(false) .show(); @@ -264,51 +262,26 @@ public class BaseActivity extends AppCompatActivity { dialog.dismiss(); XposedApp.runOnUiThread(() -> Toast.makeText(BaseActivity.this, R.string.done, Toast.LENGTH_LONG).show()); } - }; }); break; case R.id.reboot: - if (XposedApp.getPreferences().getBoolean("confirm_reboots", true)) { - areYouSure(R.string.reboot, (dialog, which) -> reboot(null)); - } else { - reboot(null); - } + areYouSure(R.string.reboot, (dialog, which) -> reboot(null)); break; case R.id.soft_reboot: - if (XposedApp.getPreferences().getBoolean("confirm_reboots", true)) { - areYouSure(R.string.soft_reboot, (dialog, which) -> softReboot()); - } else { - softReboot(); - } + areYouSure(R.string.soft_reboot, (dialog, which) -> softReboot()); break; case R.id.reboot_recovery: - if (XposedApp.getPreferences().getBoolean("confirm_reboots", true)) { - areYouSure(R.string.reboot_recovery, (dialog, which) -> reboot("recovery")); - } else { - reboot("recovery"); - } + reboot("recovery"); break; case R.id.reboot_bootloader: - if (XposedApp.getPreferences().getBoolean("confirm_reboots", true)) { - areYouSure(R.string.reboot_bootloader, (dialog, which) -> reboot("bootloader")); - } else { - reboot("bootloader"); - } + reboot("bootloader"); break; case R.id.reboot_download: - if (XposedApp.getPreferences().getBoolean("confirm_reboots", true)) { - areYouSure(R.string.reboot_download, (dialog, which) -> reboot("download")); - } else { - reboot("download"); - } + reboot("download"); break; case R.id.reboot_edl: - if (XposedApp.getPreferences().getBoolean("confirm_reboots", true)) { - areYouSure(R.string.reboot_download, (dialog, which) -> reboot("edl")); - } else { - reboot("edl"); - } + reboot("edl"); break; } diff --git a/app/src/main/java/org/meowcat/edxposed/manager/DownloadActivity.java b/app/src/main/java/org/meowcat/edxposed/manager/DownloadActivity.java index 6b7ed174..1deef5d8 100644 --- a/app/src/main/java/org/meowcat/edxposed/manager/DownloadActivity.java +++ b/app/src/main/java/org/meowcat/edxposed/manager/DownloadActivity.java @@ -172,7 +172,7 @@ public class DownloadActivity extends BaseActivity implements RepoLoader.RepoLis private void reloadItems() { runOnUiThread(() -> { - adapter.swapCursor(RepoDb.queryModuleOverview(sortingOrder, filterText)); + adapter.changeCursor(RepoDb.queryModuleOverview(sortingOrder, filterText)); TransitionManager.beginDelayedTransition(binding.recyclerView); adapter.notifyDataSetChanged(); }); @@ -231,7 +231,7 @@ public class DownloadActivity extends BaseActivity implements RepoLoader.RepoLis private String[] sectionHeaders; DownloadsAdapter(Context context, Cursor cursor) { - super(context, cursor); + super(cursor); this.context = context; prefs = context.getSharedPreferences("update_ignored", MODE_PRIVATE); diff --git a/app/src/main/java/org/meowcat/edxposed/manager/SettingsActivity.java b/app/src/main/java/org/meowcat/edxposed/manager/SettingsActivity.java index 8895272f..3ec2781c 100644 --- a/app/src/main/java/org/meowcat/edxposed/manager/SettingsActivity.java +++ b/app/src/main/java/org/meowcat/edxposed/manager/SettingsActivity.java @@ -501,10 +501,18 @@ public class SettingsActivity extends BaseActivity { } private void updatePreference(boolean show) { - findPreference("black_dark_theme").setVisible(show); - findPreference("transparent_status_bar").setVisible(show); - //findPreference("accent_color").setVisible(show); - findPreference("colorized_action_bar").setVisible(show); + Preference black_dark_theme = findPreference("black_dark_theme"); + if (black_dark_theme != null) { + black_dark_theme.setVisible(show); + } + Preference transparent_status_bar = findPreference("transparent_status_bar"); + if (transparent_status_bar != null) { + transparent_status_bar.setVisible(show); + } + Preference colorized_action_bar = findPreference("colorized_action_bar"); + if (colorized_action_bar != null) { + colorized_action_bar.setVisible(show); + } } @Override diff --git a/app/src/main/java/org/meowcat/edxposed/manager/adapters/CursorRecyclerViewAdapter.java b/app/src/main/java/org/meowcat/edxposed/manager/adapters/CursorRecyclerViewAdapter.java index 4b6ba104..76648eaa 100644 --- a/app/src/main/java/org/meowcat/edxposed/manager/adapters/CursorRecyclerViewAdapter.java +++ b/app/src/main/java/org/meowcat/edxposed/manager/adapters/CursorRecyclerViewAdapter.java @@ -1,6 +1,5 @@ package org.meowcat.edxposed.manager.adapters; -import android.content.Context; import android.database.Cursor; import android.database.DataSetObserver; @@ -9,9 +8,6 @@ import androidx.recyclerview.widget.RecyclerView; public abstract class CursorRecyclerViewAdapter extends RecyclerView.Adapter { - @SuppressWarnings("FieldCanBeLocal") - private Context context; - private Cursor cursor; private boolean dataValid; @@ -20,8 +16,7 @@ public abstract class CursorRecyclerViewAdapternot * closed. */ - public Cursor swapCursor(Cursor newCursor) { + private Cursor swapCursor(Cursor newCursor) { if (newCursor == cursor) { return null; } diff --git a/app/src/main/java/org/meowcat/edxposed/manager/repo/RepoParser.java b/app/src/main/java/org/meowcat/edxposed/manager/repo/RepoParser.java index 345caa74..9867db52 100644 --- a/app/src/main/java/org/meowcat/edxposed/manager/repo/RepoParser.java +++ b/app/src/main/java/org/meowcat/edxposed/manager/repo/RepoParser.java @@ -7,7 +7,6 @@ import android.graphics.Point; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.graphics.drawable.LevelListDrawable; -import android.text.Html; import android.text.SpannableStringBuilder; import android.text.Spanned; import android.util.Log; @@ -16,6 +15,7 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import androidx.core.text.HtmlCompat; import com.bumptech.glide.Glide; import com.bumptech.glide.request.target.CustomTarget; @@ -51,34 +51,32 @@ public class RepoParser { public static Spanned parseSimpleHtml(final Context context, String source, final TextView textView) { source = source.replaceAll("
  • ", "\t\u0095 "); source = source.replaceAll("
  • ", "
    "); - Spanned html = Html.fromHtml(source, new Html.ImageGetter() { - @Override - public Drawable getDrawable(String source) { - LevelListDrawable levelListDrawable = new LevelListDrawable(); - final Drawable[] drawable = new Drawable[1]; - Glide.with(context).asBitmap().load(source).into(new CustomTarget() { - @Override - public void onResourceReady(@NonNull Bitmap bitmap, @Nullable Transition transition) { - try { - drawable[0] = new BitmapDrawable(context.getResources(), bitmap); - Point size = new Point(); - ((Activity) context).getWindowManager().getDefaultDisplay().getSize(size); - int multiplier = size.x / bitmap.getWidth(); - if (multiplier <= 0) multiplier = 1; - levelListDrawable.addLevel(1, 1, drawable[0]); - levelListDrawable.setBounds(0, 0, bitmap.getWidth() * multiplier, bitmap.getHeight() * multiplier); - levelListDrawable.setLevel(1); - textView.setText(textView.getText()); - } catch (Exception ignored) { /* Like a null bitmap, etc. */ - } - } + Spanned html = HtmlCompat.fromHtml(source, HtmlCompat.FROM_HTML_MODE_LEGACY, source1 -> { - @Override - public void onLoadCleared(@Nullable Drawable placeholder) { + LevelListDrawable levelListDrawable = new LevelListDrawable(); + final Drawable[] drawable = new Drawable[1]; + Glide.with(context).asBitmap().load(source1).into(new CustomTarget() { + @Override + public void onResourceReady(@NonNull Bitmap bitmap, @Nullable Transition transition) { + try { + drawable[0] = new BitmapDrawable(context.getResources(), bitmap); + Point size = new Point(); + ((Activity) context).getWindowManager().getDefaultDisplay().getSize(size); + int multiplier = size.x / bitmap.getWidth(); + if (multiplier <= 0) multiplier = 1; + levelListDrawable.addLevel(1, 1, drawable[0]); + levelListDrawable.setBounds(0, 0, bitmap.getWidth() * multiplier, bitmap.getHeight() * multiplier); + levelListDrawable.setLevel(1); + textView.setText(textView.getText()); + } catch (Exception ignored) { /* Like a null bitmap, etc. */ } - }); - return drawable[0]; - } + } + + @Override + public void onLoadCleared(@Nullable Drawable placeholder) { + } + }); + return drawable[0]; }, null); // trim trailing newlines diff --git a/app/src/main/java/org/meowcat/edxposed/manager/util/InstallApkUtil.java b/app/src/main/java/org/meowcat/edxposed/manager/util/InstallApkUtil.java index d8991b9c..aaca4477 100644 --- a/app/src/main/java/org/meowcat/edxposed/manager/util/InstallApkUtil.java +++ b/app/src/main/java/org/meowcat/edxposed/manager/util/InstallApkUtil.java @@ -6,11 +6,9 @@ import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.ApplicationInfo; import android.content.pm.PackageManager; -import android.content.res.Configuration; import android.content.res.Resources; import android.net.Uri; import android.os.AsyncTask; -import android.os.Build; import androidx.core.content.FileProvider; @@ -23,7 +21,6 @@ import org.meowcat.edxposed.manager.XposedApp; import java.io.File; import java.util.LinkedList; import java.util.List; -import java.util.Locale; public class InstallApkUtil extends AsyncTask { @@ -44,9 +41,6 @@ public class InstallApkUtil extends AsyncTask { try { if (info.labelRes > 0) { Resources res = pm.getResourcesForApplication(info); - Configuration config = new Configuration(); - config.setLocale(Locale.getDefault()); - res.updateConfiguration(config, res.getDisplayMetrics()); return res.getString(info.labelRes); } } catch (Exception ignored) { @@ -58,12 +52,8 @@ public class InstallApkUtil extends AsyncTask { Intent installIntent = new Intent(Intent.ACTION_INSTALL_PACKAGE); installIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); Uri uri; - if (Build.VERSION.SDK_INT >= 24) { - uri = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID + ".fileprovider", new File(localFilename)); - installIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); - } else { - uri = Uri.fromFile(new File(localFilename)); - } + uri = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID + ".fileprovider", new File(localFilename)); + installIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); installIntent.setDataAndType(uri, DownloadsUtil.MIME_TYPE_APK); installIntent.putExtra(Intent.EXTRA_INSTALLER_PACKAGE_NAME, context.getApplicationInfo().packageName); context.startActivity(installIntent); diff --git a/app/src/main/java/org/meowcat/edxposed/manager/util/ModuleUtil.java b/app/src/main/java/org/meowcat/edxposed/manager/util/ModuleUtil.java index 5be6c507..d107356a 100644 --- a/app/src/main/java/org/meowcat/edxposed/manager/util/ModuleUtil.java +++ b/app/src/main/java/org/meowcat/edxposed/manager/util/ModuleUtil.java @@ -40,7 +40,7 @@ public final class ModuleUtil { private final String frameworkPackageName; private final List listeners = new CopyOnWriteArrayList<>(); private SharedPreferences pref; - private InstalledModule framework = null; + //private InstalledModule framework = null; private Map installedModules; private boolean isReloading = false; private Toast toast; @@ -93,9 +93,9 @@ public final class ModuleUtil { if (app.metaData != null && app.metaData.containsKey("xposedmodule")) { installed = new InstalledModule(pkg, false); modules.put(pkg.packageName, installed); - } else if (isFramework(pkg.packageName)) { + }/* else if (isFramework(pkg.packageName)) { framework = installed = new InstalledModule(pkg, true); - } + }*/ if (installed != null) RepoDb.insertInstalledModule(installed); @@ -156,17 +156,17 @@ public final class ModuleUtil { return isReloading; } - public InstalledModule getFramework() { +/* public InstalledModule getFramework() { return framework; - } + }*/ public String getFrameworkPackageName() { return frameworkPackageName; } - private boolean isFramework(String packageName) { +/* private boolean isFramework(String packageName) { return frameworkPackageName.equals(packageName); - } + }*/ // public boolean isInstalled(String packageName) { // return installedModules.containsKey(packageName) || isFramework(packageName); diff --git a/app/src/main/java/org/meowcat/edxposed/manager/util/PrefixedSharedPreferences.java b/app/src/main/java/org/meowcat/edxposed/manager/util/PrefixedSharedPreferences.java index a8f6631b..abe4cb21 100644 --- a/app/src/main/java/org/meowcat/edxposed/manager/util/PrefixedSharedPreferences.java +++ b/app/src/main/java/org/meowcat/edxposed/manager/util/PrefixedSharedPreferences.java @@ -35,7 +35,7 @@ public class PrefixedSharedPreferences implements SharedPreferences { @Override public Map getAll() { Map baseResult = mBase.getAll(); - Map prefixedResult = new HashMap(baseResult); + Map prefixedResult = new HashMap<>(baseResult); for (Entry entry : baseResult.entrySet()) { prefixedResult.put(mPrefix + entry.getKey(), entry.getValue()); } diff --git a/app/src/main/java/org/meowcat/edxposed/manager/util/json/JSONUtils.java b/app/src/main/java/org/meowcat/edxposed/manager/util/json/JSONUtils.java index aaf82626..18ce3f07 100644 --- a/app/src/main/java/org/meowcat/edxposed/manager/util/json/JSONUtils.java +++ b/app/src/main/java/org/meowcat/edxposed/manager/util/json/JSONUtils.java @@ -29,12 +29,12 @@ public class JSONUtils { return sb.toString(); } - public class XposedJson { + public static class XposedJson { public List tabs; public ApkRelease apk; } - public class ApkRelease { + public static class ApkRelease { public String version; public String changelog; public String link; diff --git a/app/src/main/res/drawable/shortcut_ic_modules.xml b/app/src/main/res/drawable/shortcut_ic_modules.xml index fe33d631..da6a8324 100644 --- a/app/src/main/res/drawable/shortcut_ic_modules.xml +++ b/app/src/main/res/drawable/shortcut_ic_modules.xml @@ -1,4 +1,5 @@ + android:pathData="M182.3,10.8C186.8,8.5 192.2,10.9 196.9,9.3C202.1,8.8 207.4,8.9 212.6,9.2C217.5,10.9 223.1,8.5 227.7,10.8C230.3,11 233.3,10.1 235.7,11.7C237.6,11.9 239.8,11.6 241.6,12.6C243,12.8 244.4,13 245.6,13.7C247.3,13.8 249.1,13.8 250.6,14.6C252,14.8 253.3,15.1 254.6,15.6C255.9,15.8 257.3,16.1 258.6,16.5C259.6,16.9 260.6,17.2 261.6,17.6C262.6,17.9 263.6,18.2 264.6,18.6C265.6,18.9 266.6,19.2 267.6,19.6C268.6,19.9 269.6,20.2 270.6,20.6C271.6,20.9 272.6,21.2 273.6,21.5C274.9,22 276.2,22.5 277.5,23.1C280,24.5 282.9,25.3 285.5,26.5C287.2,27.3 288.9,28.3 290.5,29.1C291.5,29.6 292.5,30.1 293.4,30.6C293.9,30.9 294.9,31.4 295.4,31.6C297.4,32.6 299.4,33.6 301.5,34.6C302.8,35.4 304.1,36.3 305.5,37.1C307.3,38 308.9,39.2 310.5,40.2C311.5,40.9 312.5,41.6 313.5,42.2C314.5,42.9 315.5,43.6 316.5,44.2C317.5,44.9 318.5,45.6 319.6,46.2C320.5,47 321.4,47.8 322.3,48.5C324.8,49.7 326.2,52.1 328.7,53.2C331,55.1 332.8,57.8 335.6,59.1C340.3,63.5 344.7,68.2 349.1,72.9C351,76.2 354.6,78.2 356.4,81.7C357.5,82.9 358.6,84.1 359.7,85.3C363.8,91.3 368.1,97.2 371.8,103.4C372.6,104.8 373.5,106.1 374.3,107.5C375.1,109.2 375.9,110.8 376.7,112.5C377.5,113.8 378.5,115.1 379.4,116.5C380.6,119.1 381.4,121.9 382.7,124.5C383,124.9 383.6,125.9 383.8,126.4C384.5,128 385.1,129.7 385.8,131.4C386.4,132.7 387,134.1 387.3,135.5C387.8,136.6 388.4,137.7 389,138.8C389,139.2 389.1,139.9 389.2,140.3C389.6,141.3 390,142.4 390.4,143.4C390.8,144.7 391.1,146.1 391.3,147.4C391.7,148.4 392.1,149.4 392.4,150.4C392.9,151.7 393.1,153.1 393.3,154.4C393.7,155.4 394.1,156.4 394.4,157.4C395.1,159 395.1,160.7 395.2,162.3C396.2,163.8 396.1,165.6 396.2,167.3C397.5,169.1 397,171.3 397.2,173.3C398.6,175.4 397.9,178 398.2,180.3C399.9,183 398.8,186.3 399.1,189.3C400.5,190.9 400,193.1 400.1,195C400,202.6 400.2,210.3 400,218C399.8,218.4 399.4,219.3 399.1,219.7C398.8,222.7 399.9,226 398.2,228.7C397.9,231 398.7,233.6 397.2,235.7C397,237.7 397.5,239.9 396.2,241.6C396,243.3 396.3,245.2 395.3,246.6C395,248.3 395.1,250.1 394.3,251.6C393.7,253.4 393.2,255.2 392.8,257.1C392,259.5 391.2,261.9 390.6,264.4C390.3,265.4 389.9,266.4 389.6,267.4C388.9,269.1 388.3,270.8 387.6,272.5C387.3,273.5 386.9,274.4 386.6,275.4C385.9,277 385.2,278.7 384.7,280.4C384,281.8 383.3,283.1 382.6,284.5C381.9,286.1 381.2,287.7 380.7,289.4C380.4,289.9 379.9,291 379.7,291.5C378.3,293.8 376.8,296.1 375.7,298.5C374.4,301.3 372.6,303.8 371.2,306.5C367.7,311.8 364.3,317.4 360.3,322.4C359.3,324.3 357.7,325.7 356.3,327.3C346.7,339.9 335,350.8 322.4,360.3C318.7,363.4 314.5,365.9 310.5,368.7C309.1,369.5 307.8,370.4 306.5,371.2C304.6,372.6 302.6,373.6 300.5,374.6C298.7,375.6 297,376.7 295.3,377.8C294.9,377.9 294.2,378 293.9,378C293.3,378.3 292.1,378.9 291.5,379.2C289.3,380.5 287,381.7 284.6,382.7C282.3,383.8 279.9,384.7 277.5,385.6C277,385.9 276,386.4 275.5,386.7C274.4,386.9 273.4,387.3 272.4,387.6C271.4,387.9 270.4,388.3 269.4,388.6C268.4,389 267.3,389.3 266.3,389.7C265.9,389.8 265.1,390 264.6,390.1C262.4,391.4 259.8,391.9 257.4,392.6C256,392.9 254.6,393.1 253.4,393.6C252,393.9 250.6,394.1 249.3,394.6C246.3,395.2 243.2,395.7 240.3,396.7C238.3,397 236,396.5 234.3,397.8C231.6,398.1 228.6,397.2 226.3,398.8C221.8,399 217.4,398.6 213,399.7C206.4,399.8 199.6,400.5 193.1,399C190,398.7 186.9,399 183.7,398.8C181.4,397.2 178.4,398.1 175.7,397.8C174,396.5 171.7,397 169.7,396.7C166.4,395.4 162.7,395.4 159.3,394.1C158.4,394 157.6,393.9 156.7,393.7C155.4,393.1 154,392.9 152.6,392.6C150.1,392 147.6,391.5 145.3,390.1C144.9,390 144.1,389.8 143.7,389.7C141.7,389 139.6,388.4 137.6,387.7C136.6,387.3 135.6,386.9 134.5,386.6C134,386.4 133,385.9 132.5,385.6C130.4,384.9 128.4,384.2 126.5,383.2C125.2,382.6 123.9,382 122.6,381.6C120,380 117.3,378.7 114.4,377.7C112.8,376.7 111.2,375.6 109.5,374.6C108.5,374.1 107.5,373.7 106.5,373.2C104.2,371.8 101.9,370 99.5,368.7C97.6,367.9 96.1,366.6 94.6,365.2C92.1,363.8 89.7,362.2 87.6,360.3C79.6,354.5 72.2,347.8 65.3,340.7C63.1,338.3 60.3,336.3 58.8,333.3C55.4,330 52.4,326.3 49.7,322.4C45.6,317.4 42.2,311.9 38.8,306.5C37.5,304.5 36.4,302.6 35.3,300.5C34.3,298.4 33,296.5 31.8,294.4C31.3,293.5 30.8,292.5 30.3,291.5C29.7,290.2 29,288.8 28.3,287.4C28.1,286.5 27.8,285.5 27.4,284.6C26.7,283.2 26,281.9 25.3,280.5C24.6,278.9 24,277.1 23.4,275.4C23.1,274.5 22.7,273.5 22.4,272.6C21.6,270.9 21,269.2 20.4,267.4C20,266.4 19.7,265.3 19.3,264.3C19.2,263.9 19,263 18.9,262.6C17.8,261.5 18,260 17.7,258.6C17.3,257.6 16.9,256.6 16.6,255.6C16.2,254.3 15.9,252.9 15.7,251.6C15.1,250.3 14.9,248.9 14.6,247.6C13.2,243.5 13.5,238.9 12,234.8C11.7,232.6 12.3,230.1 11,228C10.8,225.6 10.8,223.1 10.8,220.7C9.9,219.3 10,217.6 10,216C10,208.3 10,200.6 10,193C10,191.4 9.9,189.7 10.8,188.3C10.8,185.8 10.8,183.3 10.9,180.9C12.4,178.9 11.6,176.3 11.9,174.1C13.1,172.3 12.8,170.1 13,168C13.9,166.4 13.8,164.6 14.1,162.9C14.7,161.1 15,159.2 15.6,157.4C15.8,156 16,154.6 16.6,153.3C16.8,152.9 17,152.1 17,151.7C17.8,150 18,148.2 18.5,146.4C18.9,145.4 19.2,144.4 19.6,143.4C19.9,142.4 20.2,141.4 20.5,140.4C21,139.1 21.6,137.7 22.2,136.4C22.7,135.1 23.1,133.8 23.6,132.5C24.2,130 25.5,127.8 26.8,125.5C27.6,123.5 28.3,121.4 29.2,119.4C29.4,118.9 30,117.9 30.2,117.5C30.7,116.5 31.2,115.5 31.7,114.5C32.5,113.1 33.4,111.8 34.3,110.5C34.7,109.5 35.2,108.5 35.7,107.5C42.3,96 50.2,85 59,75C67.1,65.4 76.7,57.2 86.4,49.2C87.9,48.4 89.1,47.3 90.4,46.2C91.5,45.6 92.5,44.9 93.5,44.2C95.5,42.9 97.4,41.5 99.4,40.2C101.9,38.8 104.1,37.1 106.5,35.7C107.5,35.2 108.5,34.7 109.4,34.3C111.3,33.3 113,32.3 114.6,31C115.1,30.9 115.9,30.9 116.4,30.8C117.4,30.3 118.4,29.8 119.5,29.3C120.5,28.6 121.5,27.9 122.5,27.2C123.9,26.8 125.2,26.3 126.5,25.7C128.1,24.9 129.8,24.2 131.5,23.7C132,23.4 133,22.9 133.5,22.6C134.5,22.2 135.5,21.9 136.4,21.6C137.4,21.2 138.4,20.9 139.4,20.6C140.4,20.3 141.4,19.9 142.4,19.6C143.4,19.3 144.4,18.9 145.5,18.6C147.4,18 149.4,17.3 151.4,16.7C154.6,15.7 157.9,15.2 161,14.1C162.1,14 163.2,13.9 164.3,13.8C165.6,13.1 167,12.9 168.4,12.7C170.2,11.6 172.3,12 174.3,11.8C176.7,10.2 179.7,11.1 182.3,10.8M196.4,124.6C191.8,125.9 187.4,128.7 185.2,133.1C181.9,139.1 183.1,146.1 182.9,152.6C174.3,152.6 165.6,152.6 157,152.6C153.3,152.6 149.3,152.9 146.2,155.1C142.2,158.1 139.8,163.1 140,168C140.1,176.8 139.9,185.5 140.1,194.3C144.1,194.3 148.1,194.2 152,194.3C158.9,194.1 165,198.9 168.1,204.8C170.1,208.5 169.9,212.9 169.6,217C168.4,225.5 160.4,232.1 152,232.5C148,232.6 144,232.5 140,232.5C140.1,241.7 139.9,250.9 140.1,260.1C140.2,267.4 146.7,273.8 153.9,274C163.1,274.1 172.3,274 181.5,274C181.5,270.3 181.4,266.6 181.5,263C181.5,256.5 185.1,250.1 190.6,246.7C195.1,243.8 200.9,243.8 206,244.7C212.4,246.4 217.8,251.9 219.4,258.4C220.1,263.5 219.6,268.7 219.7,273.9C228.8,274.1 237.9,274 247.1,274C254.1,273.9 260.9,268.3 261.3,261C261.6,251.1 261.3,241.1 261.4,231.1C267.7,230.9 274.3,232 280.1,229.1C288.1,225.5 292.1,215.2 288.8,207.1C287.1,202.3 283.3,198.4 278.6,196.7C273.1,194.6 267.1,195.7 261.4,195.4C261.3,185.6 261.6,175.8 261.3,166C261.1,158.7 254.3,152.4 247,152.6C237.5,152.5 228.1,152.6 218.6,152.6C218.3,146.5 219.6,140 216.9,134.3C213.5,126.8 204.3,122.4 196.4,124.6Z" + tools:ignore="VectorPath" /> + android:pathData="M196.4,124.6C204.3,122.4 213.5,126.8 216.9,134.3C219.6,140 218.3,146.5 218.6,152.6C228.1,152.6 237.5,152.5 247,152.6C254.3,152.4 261.1,158.7 261.3,166C261.6,175.8 261.3,185.6 261.4,195.4C267.1,195.7 273.1,194.6 278.6,196.7C283.3,198.4 287.1,202.3 288.8,207.1C292.1,215.2 288.1,225.5 280.1,229.1C274.3,232 267.7,230.9 261.4,231.1C261.3,241.1 261.6,251.1 261.3,261C260.9,268.3 254.1,273.9 247.1,274C237.9,274 228.8,274.1 219.7,273.9C219.6,268.7 220.1,263.5 219.4,258.4C217.8,251.9 212.4,246.4 206,244.7C200.9,243.8 195.1,243.8 190.6,246.7C185.1,250.1 181.5,256.5 181.5,263C181.4,266.6 181.5,270.3 181.5,274C172.3,274 163.1,274.1 153.9,274C146.7,273.8 140.2,267.4 140.1,260.1C139.9,250.9 140.1,241.7 140,232.5C144,232.5 148,232.6 152,232.5C160.4,232.1 168.4,225.5 169.6,217C169.9,212.9 170.1,208.5 168.1,204.8C165,198.9 158.9,194.1 152,194.3C148.1,194.2 144.1,194.3 140.1,194.3C139.9,185.5 140.1,176.8 140,168C139.8,163.1 142.2,158.1 146.2,155.1C149.3,152.9 153.3,152.6 157,152.6C165.6,152.6 174.3,152.6 182.9,152.6C183.1,146.1 181.9,139.1 185.2,133.1C187.4,128.7 191.8,125.9 196.4,124.6Z" + tools:ignore="VectorPath" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_download_details.xml b/app/src/main/res/layout/activity_download_details.xml index 35476ba7..dbda5103 100644 --- a/app/src/main/res/layout/activity_download_details.xml +++ b/app/src/main/res/layout/activity_download_details.xml @@ -7,10 +7,19 @@ android:clipChildren="false" android:clipToPadding="false"> + + + android:theme="?actionBarTheme" + app:liftOnScroll="false"> - - - \ No newline at end of file diff --git a/app/src/main/res/layout/single_installer_view.xml b/app/src/main/res/layout/single_installer_view.xml index 3c7b31bc..8964ed51 100644 --- a/app/src/main/res/layout/single_installer_view.xml +++ b/app/src/main/res/layout/single_installer_view.xml @@ -188,9 +188,6 @@ android:layout_height="wrap_content" android:layout_below="@id/container" android:layout_marginTop="4dp" - android:background="?roundBackground" - android:clickable="true" - android:focusable="true" android:gravity="center_vertical" android:minHeight="48dp" android:orientation="horizontal" @@ -305,9 +302,6 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_below="@id/updateDescription" - android:background="?roundBackground" - android:clickable="true" - android:focusable="true" android:gravity="center_vertical" android:minHeight="48dp" android:orientation="horizontal" diff --git a/app/src/main/res/layout/status_installer.xml b/app/src/main/res/layout/status_installer.xml index 5d169556..d5f28db5 100644 --- a/app/src/main/res/layout/status_installer.xml +++ b/app/src/main/res/layout/status_installer.xml @@ -24,9 +24,6 @@ @@ -303,9 +283,6 @@ android:id="@+id/click_to_update" android:layout_width="match_parent" android:layout_height="wrap_content" - android:background="?roundBackground" - android:clickable="true" - android:focusable="true" android:gravity="center_vertical" android:minHeight="48dp" android:orientation="horizontal" diff --git a/app/src/main/res/menu/menu_logs.xml b/app/src/main/res/menu/menu_logs.xml index 0bf3d1a3..265fb148 100644 --- a/app/src/main/res/menu/menu_logs.xml +++ b/app/src/main/res/menu/menu_logs.xml @@ -22,16 +22,16 @@ + app:showAsAction="never" /> + app:showAsAction="never" /> + app:showAsAction="never" /> \ No newline at end of file diff --git a/app/src/main/res/menu/menu_main.xml b/app/src/main/res/menu/menu_main.xml deleted file mode 100644 index 47776106..00000000 --- a/app/src/main/res/menu/menu_main.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - diff --git a/app/src/main/res/menu/menu_modules.xml b/app/src/main/res/menu/menu_modules.xml index 31783df0..74729dd8 100644 --- a/app/src/main/res/menu/menu_modules.xml +++ b/app/src/main/res/menu/menu_modules.xml @@ -6,7 +6,7 @@ android:id="@+id/menu_search" android:title="@string/menuSearch" app:actionViewClass="androidx.appcompat.widget.SearchView" - app:showAsAction="always" /> + app:showAsAction="ifRoom" /> 强调色 着色应用栏 主题 - 质感设计 2 + 惨白设计 diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 6e654b8f..448c9d62 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -42,7 +42,7 @@ @color/colorBackground_md2 @color/colorBackground_md2 16dp - 8dp + 12dp @drawable/item_background_md2 @drawable/item_background_md2 true diff --git a/app/src/main/res/xml/prefs.xml b/app/src/main/res/xml/prefs.xml index 8e40f175..dd3fcd06 100644 --- a/app/src/main/res/xml/prefs.xml +++ b/app/src/main/res/xml/prefs.xml @@ -2,7 +2,6 @@ @@ -70,7 +69,6 @@ app:iconSpaceReserved="false" /> diff --git a/app/src/main/res/xml/shortcuts.xml b/app/src/main/res/xml/shortcuts.xml index a20e2a5e..5a1d0c7c 100644 --- a/app/src/main/res/xml/shortcuts.xml +++ b/app/src/main/res/xml/shortcuts.xml @@ -1,13 +1,11 @@ - + + android:shortcutShortLabel="@string/nav_item_modules"> + android:shortcutShortLabel="@string/nav_item_download">