diff --git a/app/build.gradle b/app/build.gradle
index e38f2b2a..aa65d9a9 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -142,7 +142,6 @@ dependencies {
implementation 'cn.dreamtobe.kpswitch:library:1.6.2'
implementation 'org.litepal.android:kotlin:3.0.0'
implementation 'com.github.SheHuan:RecyclerViewAdapter:1.2.6'
- implementation 'com.lapism:searchview:27.1.1.0.0'
implementation 'com.github.lygttpod:SuperTextView:2.1.8'
implementation 'com.davemorrissey.labs:subsampling-scale-image-view:3.10.0'
implementation 'com.bm.photoview:library:1.4.1'
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b0c616d8..bcc0dcdc 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -99,10 +99,6 @@
android:name=".activities.UserActivity"
android:configChanges="screenSize|screenLayout|orientation|smallestScreenSize|keyboardHidden"
android:windowSoftInputMode="adjustResize" />
-
{
@@ -142,9 +128,6 @@ open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemS
}
protected fun initView() {
- mSearchAdapter = MainSearchAdapter(this)
- mSearchAdapter!!.onSearchItemClickListener = this
- mSearchView.adapter = mSearchAdapter
val hideExploreItemView = menuView!!.getChildAt(if (hideExplore) 1 else 2) as BottomNavigationItemView
val badge = layoutInflater.inflate(R.layout.layout_badge, hideExploreItemView, true)
badgeTextView = badge.findViewById(R.id.tv_msg_count)
@@ -162,35 +145,11 @@ open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemS
mViewPager.isCanScroll = false
mViewPager.adapter = mAdapter
mViewPager.offscreenPageLimit = mAdapter.count
- refreshSearchView()
- }
-
- override fun refreshGlobal(activity: Activity) {
- super.refreshGlobal(activity)
- refreshSearchView()
- }
-
- private fun refreshSearchView() {
- if (mSearchView == null) {
- return
- }
- mSearchAdapter!!.refreshData()
- mSearchView.theme = if (ThemeUtil.isNightMode(this) || ThemeUtil.THEME_TRANSLUCENT == ThemeUtil.getTheme(this)) Search.Theme.DARK else Search.Theme.LIGHT
}
protected fun initListener() {
mBottomNavigationView.setOnNavigationItemSelectedListener(this)
mBottomNavigationView.setOnNavigationItemReselectedListener(this)
- mSearchView.setOnQueryTextListener(object : Search.OnQueryTextListener {
- override fun onQueryTextChange(newText: CharSequence) {}
- override fun onQueryTextSubmit(key: CharSequence): Boolean {
- startActivity(Intent(this@MainActivity, SearchActivity::class.java)
- .putExtra(SearchActivity.EXTRA_KEYWORD, key.toString()))
- SearchHistory(key.toString())
- .saveOrUpdate("content = ?", key.toString())
- return true
- }
- })
mViewPager.addOnPageChangeListener(object : OnPageChangeListener {
override fun onPageScrolled(position: Int, positionOffset: Float, positionOffsetPixels: Int) {}
@@ -414,21 +373,13 @@ open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemS
TiebaUtil.startSign(this@MainActivity)
return true
}
- R.id.action_search -> {
- mSearchView.open(item)
- return true
- }
}
return super.onOptionsItemSelected(item)
}
override fun onBackPressed() {
- if (mSearchView.isOpen) {
- mSearchView.close()
- } else {
- if (!HandleBackUtil.handleBackPress(this)) {
- exit()
- }
+ if (!HandleBackUtil.handleBackPress(this)) {
+ exit()
}
}
@@ -446,14 +397,6 @@ open class MainActivity : BaseActivity(), BottomNavigationView.OnNavigationItemS
mToolbar.title = newTitle
}
- override fun onSearchItemClick(position: Int, content: CharSequence) {
- startActivity(Intent(this@MainActivity, SearchActivity::class.java)
- .putExtra(SearchActivity.EXTRA_KEYWORD, content.toString()))
- SearchHistory(content.toString())
- .saveOrUpdate("content = ?", content.toString())
- refreshSearchView()
- }
-
private inner class NewMessageReceiver : BroadcastReceiver() {
@SuppressLint("RestrictedApi")
override fun onReceive(context: Context, intent: Intent) {
diff --git a/app/src/main/java/com/huanchengfly/tieba/post/activities/SearchActivity.java b/app/src/main/java/com/huanchengfly/tieba/post/activities/SearchActivity.java
deleted file mode 100644
index b14263d2..00000000
--- a/app/src/main/java/com/huanchengfly/tieba/post/activities/SearchActivity.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package com.huanchengfly.tieba.post.activities;
-
-import android.content.Intent;
-import android.os.Bundle;
-import android.text.TextUtils;
-
-import com.google.android.material.tabs.TabLayout;
-import com.huanchengfly.tieba.post.ui.theme.utils.ThemeUtils;
-import com.huanchengfly.tieba.post.R;
-import com.huanchengfly.tieba.post.adapters.FragmentTabViewPagerAdapter;
-import com.huanchengfly.tieba.post.fragments.SearchForumFragment;
-import com.huanchengfly.tieba.post.fragments.SearchThreadFragment;
-import com.huanchengfly.tieba.post.fragments.SearchUserFragment;
-import com.huanchengfly.tieba.post.models.database.SearchHistory;
-import com.huanchengfly.tieba.post.utils.ThemeUtil;
-import com.huanchengfly.tieba.post.widgets.MyViewPager;
-import com.lapism.searchview.Search;
-import com.lapism.searchview.widget.SearchView;
-
-public class SearchActivity extends BaseActivity implements Search.OnQueryTextListener {
- public static final String TAG = SearchActivity.class.getSimpleName();
- public static final String EXTRA_KEYWORD = "keyword";
-
- private String mKeyword;
- private TabLayout mTabLayout;
- private SearchForumFragment searchForumFragment;
- private SearchThreadFragment searchThreadFragment;
- private SearchUserFragment searchUserFragment;
- private SearchView mSearchView;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_search);
- ThemeUtil.setTranslucentThemeBackground(findViewById(R.id.background));
- Intent intent = getIntent();
- mKeyword = intent.getStringExtra(EXTRA_KEYWORD);
- mSearchView = (SearchView) findViewById(R.id.toolbar_search_view);
- mSearchView.setTheme(ThemeUtil.isNightMode(this) ? Search.Theme.DARK : Search.Theme.LIGHT);
- mSearchView.setShadow(false);
- mSearchView.setBackgroundColor(ThemeUtils.getColorByAttr(this, R.attr.colorToolbar));
- mSearchView.setClearColor(ThemeUtils.getColorByAttr(this, R.attr.colorToolbarItem));
- mSearchView.setLogoColor(ThemeUtils.getColorByAttr(this, R.attr.colorToolbarItem));
- mSearchView.setTextColor(ThemeUtils.getColorByAttr(this, R.attr.colorToolbarItem));
- mSearchView.setHintColor(ThemeUtils.getColorByAttr(this, R.attr.color_toolbar_item_secondary));
- mTabLayout = (TabLayout) findViewById(R.id.tab);
- MyViewPager mViewPager = (MyViewPager) findViewById(R.id.view_pager);
- mViewPager.setOffscreenPageLimit(3);
- mSearchView.setQuery(mKeyword, false);
- mSearchView.setOnQueryTextListener(this);
- mSearchView.setOnLogoClickListener(this::finish);
- FragmentTabViewPagerAdapter mAdapter = new FragmentTabViewPagerAdapter(getSupportFragmentManager());
- searchForumFragment = SearchForumFragment.newInstance(mKeyword);
- searchThreadFragment = SearchThreadFragment.newInstance(mKeyword);
- searchUserFragment = SearchUserFragment.newInstance(mKeyword);
- mAdapter.addFragment(searchForumFragment, "吧");
- mAdapter.addFragment(searchThreadFragment, "贴");
- mAdapter.addFragment(searchUserFragment, "人");
- mViewPager.setAdapter(mAdapter);
- mTabLayout.setupWithViewPager(mViewPager);
- }
-
- @Override
- public boolean onQueryTextSubmit(CharSequence query) {
- setKeyword(query.toString());
- new SearchHistory(query.toString())
- .saveOrUpdate("content = ?", query.toString());
- return true;
- }
-
- private void setKeyword(String keyword) {
- if (TextUtils.equals(keyword, mKeyword)) {
- return;
- }
- mKeyword = keyword;
- searchForumFragment.setKeyword(keyword, mTabLayout.getSelectedTabPosition() == 0);
- searchThreadFragment.setKeyword(keyword, mTabLayout.getSelectedTabPosition() == 1);
- searchUserFragment.setKeyword(keyword, mTabLayout.getSelectedTabPosition() == 2);
- }
-
- @Override
- public void onQueryTextChange(CharSequence newText) {
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/huanchengfly/tieba/post/fragments/SettingsFragment.kt b/app/src/main/java/com/huanchengfly/tieba/post/fragments/SettingsFragment.kt
index 73a4761a..f444f30f 100644
--- a/app/src/main/java/com/huanchengfly/tieba/post/fragments/SettingsFragment.kt
+++ b/app/src/main/java/com/huanchengfly/tieba/post/fragments/SettingsFragment.kt
@@ -25,7 +25,6 @@ import com.huanchengfly.tieba.post.models.database.Account
import com.huanchengfly.tieba.post.models.database.Block
import com.huanchengfly.tieba.post.ui.theme.utils.ThemeUtils
import com.huanchengfly.tieba.post.utils.*
-import com.lapism.searchview.database.SearchHistoryTable
import java.util.*
class SettingsFragment : PreferencesFragment() {
@@ -74,11 +73,6 @@ class SettingsFragment : PreferencesFragment() {
}
true
}
- findPreference("clear_search_history")!!.onPreferenceClickListener = Preference.OnPreferenceClickListener {
- SearchHistoryTable(attachContext).clearDatabase()
- if (view != null) Util.createSnackbar(view!!, R.string.toast_clear_success, Snackbar.LENGTH_SHORT).show()
- true
- }
findPreference("exit_account")!!.isEnabled = AccountUtil.isLoggedIn(attachContext)
findPreference("exit_account")!!.onPreferenceClickListener = Preference.OnPreferenceClickListener {
DialogUtil.build(attachContext)
@@ -132,7 +126,7 @@ class SettingsFragment : PreferencesFragment() {
clearCache!!.summary = attachContext.getString(R.string.tip_cache, GlideCacheUtil.getInstance().getCacheSize(attachContext))
clearCache.onPreferenceClickListener = Preference.OnPreferenceClickListener { preference: Preference ->
GlideCacheUtil.getInstance().clearImageAllCache(attachContext)
- if (view != null) Util.createSnackbar(view!!, R.string.toast_clear_cache_success, Snackbar.LENGTH_SHORT).show()
+ if (view != null) Util.createSnackbar(requireView(), R.string.toast_clear_cache_success, Snackbar.LENGTH_SHORT).show()
preference.summary = attachContext.getString(R.string.tip_cache, "0.0B")
true
}
diff --git a/app/src/main/java/com/huanchengfly/tieba/post/widgets/theme/TintSearchView.java b/app/src/main/java/com/huanchengfly/tieba/post/widgets/theme/TintSearchView.java
deleted file mode 100644
index 6bf2bbf5..00000000
--- a/app/src/main/java/com/huanchengfly/tieba/post/widgets/theme/TintSearchView.java
+++ /dev/null
@@ -1,86 +0,0 @@
-package com.huanchengfly.tieba.post.widgets.theme;
-
-import android.content.Context;
-import android.content.res.TypedArray;
-import android.util.AttributeSet;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-
-import com.huanchengfly.tieba.post.ui.theme.interfaces.Tintable;
-import com.huanchengfly.tieba.post.ui.theme.utils.ThemeUtils;
-import com.huanchengfly.tieba.post.R;
-import com.lapism.searchview.widget.SearchView;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-public class TintSearchView extends SearchView implements Tintable {
- private int mBackgroundTintResId;
- private int mSearchItemColorResId;
- private int mHintColorResId;
-
- public TintSearchView(@NonNull Context context) {
- this(context, null);
- }
-
- public TintSearchView(@NonNull Context context, @Nullable AttributeSet attrs) {
- this(context, attrs, 0);
- }
-
- public TintSearchView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
- this(context, attrs, defStyleAttr, 0);
- }
-
- public TintSearchView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) {
- super(context, attrs, defStyleAttr, defStyleRes);
- if (isInEditMode()) {
- return;
- }
- if (attrs == null) {
- mBackgroundTintResId = 0;
- mSearchItemColorResId = 0;
- mHintColorResId = 0;
- return;
- }
- TypedArray array = getContext().obtainStyledAttributes(attrs, R.styleable.TintSearchView, defStyleAttr, 0);
- mBackgroundTintResId = array.getResourceId(R.styleable.TintSearchView_searchBackground, 0);
- mSearchItemColorResId = array.getResourceId(R.styleable.TintSearchView_searchItemColor, 0);
- mHintColorResId = array.getResourceId(R.styleable.TintSearchView_hintColor, 0);
- array.recycle();
- applyTintColor();
- }
-
- private void applyTintColor() {
- if (mBackgroundTintResId != 0) {
- setBackgroundColor(ThemeUtils.getColorById(getContext(), mBackgroundTintResId));
- }
- if (mSearchItemColorResId != 0) {
- setLogoColor(ThemeUtils.getColorById(getContext(), mBackgroundTintResId));
- setMicColor(ThemeUtils.getColorById(getContext(), mBackgroundTintResId));
- setClearColor(ThemeUtils.getColorById(getContext(), mBackgroundTintResId));
- try {
- Method method = Class.forName("com.lapism.searchview.widget.SearchView").getDeclaredMethod("setMenuColor", int.class);
- method.setAccessible(true);
- method.invoke(this, ThemeUtils.getColorById(getContext(), mBackgroundTintResId));
- } catch (NoSuchMethodException e) {
- e.printStackTrace();
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- } catch (InvocationTargetException e) {
- e.printStackTrace();
- }
- setTextColor(ThemeUtils.getColorById(getContext(), mBackgroundTintResId));
- }
- if (mHintColorResId != 0) {
- setHintColor(ThemeUtils.getColorById(getContext(), mBackgroundTintResId));
- }
- }
-
- @Override
- public void tint() {
-
- }
-}
diff --git a/app/src/main/res/layout/activity_forum.xml b/app/src/main/res/layout/activity_forum.xml
index a66889c0..08231c2d 100644
--- a/app/src/main/res/layout/activity_forum.xml
+++ b/app/src/main/res/layout/activity_forum.xml
@@ -332,13 +332,6 @@
app:backgroundTint="@color/default_color_primary"
app:borderWidth="0dp" />
-
-
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index f2790db1..bf157ece 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -47,12 +47,4 @@
app:labelVisibilityMode="unlabeled"
app:menu="@menu/navbar_main" />
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_search.xml b/app/src/main/res/layout/activity_search.xml
deleted file mode 100644
index 5cf1ad65..00000000
--- a/app/src/main/res/layout/activity_search.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml
index ea77d956..1247ba90 100644
--- a/app/src/main/res/values/attrs.xml
+++ b/app/src/main/res/values/attrs.xml
@@ -125,12 +125,6 @@
-
-
-
-
-
-
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 0d342391..3ff3e160 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -58,24 +58,6 @@
-
-
-
-
-
-