From ae7c2e8825a4c08612a0ff495c29f9e929613180 Mon Sep 17 00:00:00 2001 From: FongMi Date: Sat, 18 Feb 2023 11:20:24 +0800 Subject: [PATCH 1/9] Fix switch bug --- .../fongmi/android/tv/ui/activity/DetailActivity.java | 5 ++++- .../main/java/com/fongmi/android/tv/utils/Notify.java | 11 ++++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java index 885bd70ad..154009c4f 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java @@ -97,6 +97,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis private boolean mAutoMode; private History mHistory; private Players mPlayers; + private String mSiteKey; private int mCurrent; private Runnable mR1; private Runnable mR2; @@ -197,6 +198,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis mPlayers = new Players().init(); mR1 = this::hideControl; mR2 = this::setTraffic; + mSiteKey = getKey(); setRecyclerView(); setVideoView(); setViewModel(); @@ -835,7 +837,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis } private void checkFlag() { - int position = mBinding.flag.getSelectedPosition(); + int position = isGone(mBinding.flag) ? -1 : mBinding.flag.getSelectedPosition(); if (position == mFlagAdapter.size() - 1) checkSearch(); else nextFlag(position); } @@ -903,6 +905,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis private void nextSite() { if (mSearchAdapter.size() == 0) return; Vod vod = (Vod) mSearchAdapter.get(0); + if (vod.getSiteKey().equals(mSiteKey)) return; Notify.show(getString(R.string.play_switch_site, vod.getSiteName())); mSearchAdapter.removeItems(0, 1); setInitAuto(false); diff --git a/app/src/main/java/com/fongmi/android/tv/utils/Notify.java b/app/src/main/java/com/fongmi/android/tv/utils/Notify.java index 7cbd7ced4..a03b098a6 100644 --- a/app/src/main/java/com/fongmi/android/tv/utils/Notify.java +++ b/app/src/main/java/com/fongmi/android/tv/utils/Notify.java @@ -33,9 +33,8 @@ public class Notify { } public static void progress(Context context) { - ViewProgressBinding binding = ViewProgressBinding.inflate(LayoutInflater.from(context)); - get().mDialog = new MaterialAlertDialogBuilder(context).setView(binding.getRoot()).create(); - get().mDialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent); + dismiss(); + get().create(context); get().mDialog.show(); } @@ -43,6 +42,12 @@ public class Notify { if (get().mDialog != null && get().mDialog.isShowing()) get().mDialog.dismiss(); } + private void create(Context context) { + ViewProgressBinding binding = ViewProgressBinding.inflate(LayoutInflater.from(context)); + mDialog = new MaterialAlertDialogBuilder(context).setView(binding.getRoot()).create(); + mDialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent); + } + private void makeText(String message) { if (mToast != null) mToast.cancel(); if (TextUtils.isEmpty(message)) return; From b2ddc40c7dd6d1c87977ce2f000041bc5a9d2cb3 Mon Sep 17 00:00:00 2001 From: FongMi Date: Sat, 18 Feb 2023 11:28:01 +0800 Subject: [PATCH 2/9] Update dev --- app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index c0e6003fb..defa45941 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -11,7 +11,7 @@ android { minSdk 21 targetSdk 29 versionCode 65 - versionName "1.6.5" + versionName "20230218#1" ndk { abiFilters "armeabi-v7a" } } From 622d79b166d244f50d2464d95a2146fbefd2761a Mon Sep 17 00:00:00 2001 From: FongMi Date: Sat, 18 Feb 2023 11:58:25 +0800 Subject: [PATCH 3/9] Fix autosize bug --- .../java/com/fongmi/android/tv/Product.java | 17 +++++++++++++++++ .../android/tv/ui/activity/DetailActivity.java | 4 ++-- .../android/tv/ui/activity/BaseActivity.java | 7 +++++++ 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 app/src/leanback/java/com/fongmi/android/tv/Product.java diff --git a/app/src/leanback/java/com/fongmi/android/tv/Product.java b/app/src/leanback/java/com/fongmi/android/tv/Product.java new file mode 100644 index 000000000..3d75d9815 --- /dev/null +++ b/app/src/leanback/java/com/fongmi/android/tv/Product.java @@ -0,0 +1,17 @@ +package com.fongmi.android.tv; + +import android.content.res.Resources; + +import me.jessyan.autosize.AutoSizeCompat; + +public class Product { + + public static Resources hackResources(Resources resources) { + try { + AutoSizeCompat.autoConvertDensityOfGlobal(resources); + return resources; + } catch (Exception ignored) { + return resources; + } + } +} diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java index 154009c4f..f2d806c4b 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java @@ -843,8 +843,8 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis } private void checkSearch() { - if (isAutoMode() && mSearchAdapter.size() > 0) nextSite(); - else initSearch(getName(), true); + if (mSearchAdapter.size() == 0) initSearch(getName(), true); + else if (isAutoMode()) nextSite(); } private void initSearch(String keyword, boolean auto) { diff --git a/app/src/main/java/com/fongmi/android/tv/ui/activity/BaseActivity.java b/app/src/main/java/com/fongmi/android/tv/ui/activity/BaseActivity.java index ad73bd9be..f33f1ac0a 100644 --- a/app/src/main/java/com/fongmi/android/tv/ui/activity/BaseActivity.java +++ b/app/src/main/java/com/fongmi/android/tv/ui/activity/BaseActivity.java @@ -2,6 +2,7 @@ package com.fongmi.android.tv.ui.activity; import android.app.Activity; import android.content.res.Configuration; +import android.content.res.Resources; import android.graphics.drawable.Drawable; import android.os.Bundle; @@ -9,6 +10,7 @@ import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.viewbinding.ViewBinding; +import com.fongmi.android.tv.Product; import com.fongmi.android.tv.R; import com.fongmi.android.tv.api.WallConfig; import com.fongmi.android.tv.event.RefreshEvent; @@ -65,6 +67,11 @@ public abstract class BaseActivity extends AppCompatActivity { setWall(); } + @Override + public Resources getResources() { + return Product.hackResources(super.getResources()); + } + @Override public void onConfigurationChanged(@NonNull Configuration newConfig) { super.onConfigurationChanged(newConfig); From 17f33d091c4ccc52841bd4287cf70e64cd1c2cb2 Mon Sep 17 00:00:00 2001 From: FongMi Date: Sat, 18 Feb 2023 12:41:32 +0800 Subject: [PATCH 4/9] Clean style --- .../leanback/res/layout/activity_detail.xml | 4 +-- app/src/leanback/res/layout/activity_live.xml | 4 +-- app/src/leanback/res/layout/adapter_vod.xml | 4 +-- app/src/leanback/res/values/styles.xml | 15 ----------- app/src/main/res/values/styles.xml | 25 +++++++++++++++++++ app/src/mobile/res/layout/adapter_vod.xml | 4 +-- 6 files changed, 33 insertions(+), 23 deletions(-) create mode 100644 app/src/main/res/values/styles.xml diff --git a/app/src/leanback/res/layout/activity_detail.xml b/app/src/leanback/res/layout/activity_detail.xml index 874540560..a25028496 100644 --- a/app/src/leanback/res/layout/activity_detail.xml +++ b/app/src/leanback/res/layout/activity_detail.xml @@ -21,7 +21,7 @@ true - - - - diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml new file mode 100644 index 000000000..7069776a4 --- /dev/null +++ b/app/src/main/res/values/styles.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + diff --git a/app/src/mobile/res/layout/adapter_vod.xml b/app/src/mobile/res/layout/adapter_vod.xml index 3607a94df..c3f4aecb8 100644 --- a/app/src/mobile/res/layout/adapter_vod.xml +++ b/app/src/mobile/res/layout/adapter_vod.xml @@ -13,7 +13,7 @@ android:layout_height="match_parent" android:background="@color/black_20" android:scaleType="center" - app:shapeAppearanceOverlay="@style/VodStyle" + app:shapeAppearanceOverlay="@style/Vod" tools:src="@drawable/ic_img_loading" /> Date: Sat, 18 Feb 2023 12:46:09 +0800 Subject: [PATCH 5/9] Update dev --- app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index defa45941..239b4fca5 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -11,7 +11,7 @@ android { minSdk 21 targetSdk 29 versionCode 65 - versionName "20230218#1" + versionName "20230218#2" ndk { abiFilters "armeabi-v7a" } } From a9d7b05797df3793403d6de59a808d405060bc1e Mon Sep 17 00:00:00 2001 From: FongMi Date: Sat, 18 Feb 2023 12:59:09 +0800 Subject: [PATCH 6/9] [mobile] fix build --- .../java/com/fongmi/android/tv/Product.java | 10 ++++++++++ app/src/mobile/res/layout/activity_detail.xml | 4 ++-- app/src/mobile/res/values/styles.xml | 15 --------------- 3 files changed, 12 insertions(+), 17 deletions(-) create mode 100644 app/src/mobile/java/com/fongmi/android/tv/Product.java diff --git a/app/src/mobile/java/com/fongmi/android/tv/Product.java b/app/src/mobile/java/com/fongmi/android/tv/Product.java new file mode 100644 index 000000000..316acd3c8 --- /dev/null +++ b/app/src/mobile/java/com/fongmi/android/tv/Product.java @@ -0,0 +1,10 @@ +package com.fongmi.android.tv; + +import android.content.res.Resources; + +public class Product { + + public static Resources hackResources(Resources resources) { + return resources; + } +} diff --git a/app/src/mobile/res/layout/activity_detail.xml b/app/src/mobile/res/layout/activity_detail.xml index 3bf703a44..c4fc192d1 100644 --- a/app/src/mobile/res/layout/activity_detail.xml +++ b/app/src/mobile/res/layout/activity_detail.xml @@ -15,7 +15,7 @@ @style/BottomSheetDialog - - - - From cfecabc1e9fae93bca3a80df019974584a115f21 Mon Sep 17 00:00:00 2001 From: FongMi Date: Sat, 18 Feb 2023 13:21:25 +0800 Subject: [PATCH 7/9] [mobile] fix progress --- .../com/fongmi/android/tv/ui/fragment/child/SiteFragment.java | 1 + 1 file changed, 1 insertion(+) diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/fragment/child/SiteFragment.java b/app/src/mobile/java/com/fongmi/android/tv/ui/fragment/child/SiteFragment.java index 789e28bb2..18940bb3b 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/fragment/child/SiteFragment.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/fragment/child/SiteFragment.java @@ -41,6 +41,7 @@ public class SiteFragment extends BaseFragment implements VodAdapter.OnClickList @Override protected void initView() { + mBinding.progressLayout.showProgress(); setRecyclerView(); } From f60396e655967cb4acfda20f67bd61e6f63fae5d Mon Sep 17 00:00:00 2001 From: FongMi Date: Sat, 18 Feb 2023 13:47:52 +0800 Subject: [PATCH 8/9] Fix auto search bug --- .../com/fongmi/android/tv/ui/activity/DetailActivity.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java index f2d806c4b..821dc7c0f 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java @@ -258,7 +258,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis mBinding.part.setAdapter(new ItemBridgeAdapter(mPartAdapter = new ArrayObjectAdapter(mPartPresenter = new PartPresenter(item -> initSearch(item, false))))); mBinding.search.setHorizontalSpacing(ResUtil.dp2px(8)); mBinding.search.setRowHeight(ViewGroup.LayoutParams.WRAP_CONTENT); - mBinding.search.setAdapter(new ItemBridgeAdapter(mSearchAdapter = new ArrayObjectAdapter(new SearchPresenter(this::getDetail)))); + mBinding.search.setAdapter(new ItemBridgeAdapter(mSearchAdapter = new ArrayObjectAdapter(new SearchPresenter(this::setSearch)))); mBinding.control.parse.setHorizontalSpacing(ResUtil.dp2px(8)); mBinding.control.parse.setRowHeight(ViewGroup.LayoutParams.WRAP_CONTENT); mBinding.control.parse.setAdapter(new ItemBridgeAdapter(mParseAdapter = new ArrayObjectAdapter(new ParsePresenter(this::setParseActivated)))); @@ -884,6 +884,11 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis if (isInitAuto()) nextSite(); } + private void setSearch(Vod item) { + setAutoMode(false); + getDetail(item); + } + private boolean mismatch(Vod item) { String keyword = mBinding.part.getTag().toString(); if (isAutoMode()) return !item.getVodName().equals(keyword); From ea6866eeecb7c80bb332ce3c692fa73535791662 Mon Sep 17 00:00:00 2001 From: FongMi Date: Sat, 18 Feb 2023 13:57:35 +0800 Subject: [PATCH 9/9] Update to 1.6.6 --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 239b4fca5..1e3afa89b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId "com.fongmi.android.tv" minSdk 21 targetSdk 29 - versionCode 65 - versionName "20230218#2" + versionCode 66 + versionName "1.6.6" ndk { abiFilters "armeabi-v7a" } }