Skip to content

Commit b2046d9

Browse files
committed
Update ActivityLogListActivity.kt
Update static banner on ActivityLog screen to scrollable animation
1 parent 0b78a7e commit b2046d9

File tree

1 file changed

+25
-17
lines changed

1 file changed

+25
-17
lines changed

WordPress/src/main/java/org/wordpress/android/ui/activitylog/list/ActivityLogListActivity.kt

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,13 @@ import android.content.Intent
44
import android.os.Bundle
55
import android.view.MenuItem
66
import android.view.View
7-
import android.view.ViewGroup.MarginLayoutParams
8-
import androidx.core.view.isVisible
9-
import androidx.core.view.updateLayoutParams
7+
import androidx.recyclerview.widget.RecyclerView
108
import dagger.hilt.android.AndroidEntryPoint
119
import org.wordpress.android.R
1210
import org.wordpress.android.databinding.ActivityLogListActivityBinding
1311
import org.wordpress.android.ui.LocaleAwareActivity
1412
import org.wordpress.android.ui.RequestCodes
13+
import org.wordpress.android.ui.ScrollableViewInitializedListener
1514
import org.wordpress.android.ui.activitylog.detail.ActivityLogDetailActivity
1615
import org.wordpress.android.ui.jetpack.backup.download.KEY_BACKUP_DOWNLOAD_ACTION_STATE_ID
1716
import org.wordpress.android.ui.jetpack.backup.download.KEY_BACKUP_DOWNLOAD_DOWNLOAD_ID
@@ -26,29 +25,42 @@ import org.wordpress.android.viewmodel.activitylog.ACTIVITY_LOG_REWINDABLE_ONLY_
2625
import javax.inject.Inject
2726

2827
@AndroidEntryPoint
29-
class ActivityLogListActivity : LocaleAwareActivity() {
28+
class ActivityLogListActivity : LocaleAwareActivity(), ScrollableViewInitializedListener {
3029
@Inject lateinit var jetpackBrandingUtils: JetpackBrandingUtils
30+
private var binding: ActivityLogListActivityBinding? = null
3131

3232
override fun onCreate(savedInstanceState: Bundle?) {
3333
super.onCreate(savedInstanceState)
3434
with(ActivityLogListActivityBinding.inflate(layoutInflater)) {
3535
setContentView(root)
36+
binding = this
3637
checkAndUpdateUiToBackupScreen()
3738

3839
setSupportActionBar(toolbarMain)
40+
}
41+
supportActionBar?.let {
42+
it.setHomeButtonEnabled(true)
43+
it.setDisplayHomeAsUpEnabled(true)
44+
}
45+
}
3946

40-
if (jetpackBrandingUtils.shouldShowJetpackBranding()) {
41-
jetpackBanner.root.isVisible = true
42-
jetpackBrandingUtils.setNavigationBarColorForBanner(window)
47+
override fun onScrollableViewInitialized(containerId: Int) {
48+
initJetpackBanner(containerId)
49+
}
4350

44-
// Add bottom margin to content.
45-
val fragment = supportFragmentManager.findFragmentById(R.id.fragment_container)
46-
fragment?.view?.updateLayoutParams<MarginLayoutParams> {
47-
bottomMargin = resources.getDimensionPixelSize(R.dimen.jetpack_banner_height)
48-
}
51+
private fun initJetpackBanner(scrollableContainerId: Int) {
52+
if (jetpackBrandingUtils.shouldShowJetpackBranding()) {
53+
binding?.root?.post {
54+
val jetpackBannerView = binding?.jetpackBanner?.root ?: return@post
55+
val scrollableView = binding?.root?.findViewById<View>(scrollableContainerId) as? RecyclerView
56+
?: return@post
57+
58+
jetpackBrandingUtils.showJetpackBannerIfScrolledToTop(jetpackBannerView, scrollableView)
59+
window?.let { jetpackBrandingUtils.setNavigationBarColorForBanner(it) }
60+
jetpackBrandingUtils.initJetpackBannerAnimation(jetpackBannerView, scrollableView)
4961

5062
if (jetpackBrandingUtils.shouldShowJetpackPoweredBottomSheet()) {
51-
jetpackBanner.root.setOnClickListener {
63+
binding?.jetpackBanner?.root?.setOnClickListener {
5264
jetpackBrandingUtils.trackBannerTapped(ACTIVITY_LOG)
5365
JetpackPoweredBottomSheetFragment
5466
.newInstance()
@@ -57,10 +69,6 @@ class ActivityLogListActivity : LocaleAwareActivity() {
5769
}
5870
}
5971
}
60-
supportActionBar?.let {
61-
it.setHomeButtonEnabled(true)
62-
it.setDisplayHomeAsUpEnabled(true)
63-
}
6472
}
6573

6674
/**

0 commit comments

Comments
 (0)