UI: remove progress bar in package manager activity
This commit is contained in:
@ -19,7 +19,6 @@ import android.widget.EditText
|
|||||||
import android.widget.ProgressBar
|
import android.widget.ProgressBar
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import com.github.wrdlbrnft.sortedlistadapter.SortedListAdapter
|
import com.github.wrdlbrnft.sortedlistadapter.SortedListAdapter
|
||||||
import com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView
|
|
||||||
import io.neoterm.R
|
import io.neoterm.R
|
||||||
import io.neoterm.backend.TerminalSession
|
import io.neoterm.backend.TerminalSession
|
||||||
import io.neoterm.component.pm.NeoPackageComponent
|
import io.neoterm.component.pm.NeoPackageComponent
|
||||||
@ -46,19 +45,15 @@ class PackageManagerActivity : AppCompatActivity(), SearchView.OnQueryTextListen
|
|||||||
|
|
||||||
lateinit var recyclerView: RecyclerView
|
lateinit var recyclerView: RecyclerView
|
||||||
lateinit var adapter: PackageAdapter
|
lateinit var adapter: PackageAdapter
|
||||||
lateinit var progressBar: ProgressBar
|
|
||||||
lateinit var models: ArrayList<PackageModel>
|
lateinit var models: ArrayList<PackageModel>
|
||||||
|
|
||||||
var mAnimator: Animator? = null
|
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
setContentView(R.layout.ui_package_manager)
|
setContentView(R.layout.ui_pm)
|
||||||
val toolbar = findViewById<Toolbar>(R.id.pm_toolbar)
|
val toolbar = findViewById<Toolbar>(R.id.pm_toolbar)
|
||||||
setSupportActionBar(toolbar)
|
setSupportActionBar(toolbar)
|
||||||
supportActionBar?.setDisplayHomeAsUpEnabled(true)
|
supportActionBar?.setDisplayHomeAsUpEnabled(true)
|
||||||
|
|
||||||
progressBar = findViewById(R.id.package_loading_progress_bar)
|
|
||||||
recyclerView = findViewById(R.id.package_list)
|
recyclerView = findViewById(R.id.package_list)
|
||||||
recyclerView.setHasFixedSize(true)
|
recyclerView.setHasFixedSize(true)
|
||||||
adapter = PackageAdapter(this, COMPARATOR, object : PackageAdapter.Listener {
|
adapter = PackageAdapter(this, COMPARATOR, object : PackageAdapter.Listener {
|
||||||
@ -200,8 +195,6 @@ class PackageManagerActivity : AppCompatActivity(), SearchView.OnQueryTextListen
|
|||||||
|
|
||||||
private fun refreshPackageList() {
|
private fun refreshPackageList() {
|
||||||
models.clear()
|
models.clear()
|
||||||
progressBar.visibility = View.VISIBLE
|
|
||||||
progressBar.alpha = 0.0f
|
|
||||||
Thread {
|
Thread {
|
||||||
val pm = ComponentManager.getComponent<NeoPackageComponent>()
|
val pm = ComponentManager.getComponent<NeoPackageComponent>()
|
||||||
val sourceFiles = SourceUtils.detectSourceFiles()
|
val sourceFiles = SourceUtils.detectSourceFiles()
|
||||||
@ -217,7 +210,6 @@ class PackageManagerActivity : AppCompatActivity(), SearchView.OnQueryTextListen
|
|||||||
}
|
}
|
||||||
|
|
||||||
this@PackageManagerActivity.runOnUiThread {
|
this@PackageManagerActivity.runOnUiThread {
|
||||||
progressBar.visibility = View.GONE
|
|
||||||
adapter.edit()
|
adapter.edit()
|
||||||
.replaceAll(models)
|
.replaceAll(models)
|
||||||
.commit()
|
.commit()
|
||||||
@ -257,48 +249,11 @@ class PackageManagerActivity : AppCompatActivity(), SearchView.OnQueryTextListen
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun onEditStarted() {
|
override fun onEditStarted() {
|
||||||
if (progressBar.visibility != View.VISIBLE) {
|
|
||||||
progressBar.visibility = View.VISIBLE
|
|
||||||
progressBar.alpha = 0.0f
|
|
||||||
}
|
|
||||||
|
|
||||||
if (mAnimator != null) {
|
|
||||||
mAnimator?.cancel()
|
|
||||||
}
|
|
||||||
|
|
||||||
mAnimator = ObjectAnimator.ofFloat(progressBar, View.ALPHA, 1.0f)
|
|
||||||
mAnimator?.interpolator = AccelerateDecelerateInterpolator()
|
|
||||||
mAnimator?.start()
|
|
||||||
|
|
||||||
recyclerView.animate().alpha(0.5f)
|
recyclerView.animate().alpha(0.5f)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onEditFinished() {
|
override fun onEditFinished() {
|
||||||
recyclerView.scrollToPosition(0)
|
recyclerView.scrollToPosition(0)
|
||||||
recyclerView.animate().alpha(1.0f)
|
recyclerView.animate().alpha(1.0f)
|
||||||
|
|
||||||
if (mAnimator != null) {
|
|
||||||
mAnimator?.cancel()
|
|
||||||
}
|
|
||||||
|
|
||||||
mAnimator = ObjectAnimator.ofFloat(progressBar, View.ALPHA, 0.0f)
|
|
||||||
mAnimator?.interpolator = AccelerateDecelerateInterpolator()
|
|
||||||
mAnimator?.addListener(object : AnimatorListenerAdapter() {
|
|
||||||
|
|
||||||
private var mCanceled = false
|
|
||||||
|
|
||||||
override fun onAnimationCancel(animation: Animator) {
|
|
||||||
super.onAnimationCancel(animation)
|
|
||||||
mCanceled = true
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onAnimationEnd(animation: Animator) {
|
|
||||||
super.onAnimationEnd(animation)
|
|
||||||
if (!mCanceled) {
|
|
||||||
progressBar.visibility = View.GONE
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
mAnimator?.start()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -14,13 +14,6 @@
|
|||||||
android:theme="@style/ThemeOverlay.AppCompat.Dark"
|
android:theme="@style/ThemeOverlay.AppCompat.Dark"
|
||||||
app:popupTheme="@style/ThemeOverlay.AppCompat.Dark" />
|
app:popupTheme="@style/ThemeOverlay.AppCompat.Dark" />
|
||||||
|
|
||||||
<ProgressBar
|
|
||||||
android:id="@+id/package_loading_progress_bar"
|
|
||||||
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="4dp"
|
|
||||||
android:visibility="gone" />
|
|
||||||
|
|
||||||
<com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView
|
<com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView
|
||||||
android:id="@+id/package_list"
|
android:id="@+id/package_list"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
Reference in New Issue
Block a user