diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-06-23 01:17:10 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-06-25 17:39:24 +0000 |
| commit | 57e8d0cbd1c4e83309847d0f9fa23309b0cfa0c8 (patch) | |
| tree | aecd54db919a610eadc8143a2119d992983009ec /android/src | |
| parent | 1f9a0ccd4f79af3231efa5493a8aebfd0700876b (diff) | |
| download | mullvadvpn-57e8d0cbd1c4e83309847d0f9fa23309b0cfa0c8.tar.xz mullvadvpn-57e8d0cbd1c4e83309847d0f9fa23309b0cfa0c8.zip | |
Create `UnderNotificationBannerBehavior` class
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ui/UnderNotificationBannerBehavior.kt | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/UnderNotificationBannerBehavior.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/UnderNotificationBannerBehavior.kt new file mode 100644 index 0000000000..a0759ed9fa --- /dev/null +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/UnderNotificationBannerBehavior.kt @@ -0,0 +1,34 @@ +package net.mullvad.mullvadvpn.ui + +import android.content.Context +import android.support.design.widget.CoordinatorLayout +import android.support.design.widget.CoordinatorLayout.Behavior +import android.util.AttributeSet +import android.view.View +import android.widget.ScrollView +import net.mullvad.mullvadvpn.R + +class UnderNotificationBannerBehavior( + context: Context, + attributes: AttributeSet +) : Behavior<ScrollView>(context, attributes) { + override fun layoutDependsOn(parent: CoordinatorLayout, body: ScrollView, dependency: View) = + dependency.id == R.id.notification_banner + + override fun onDependentViewChanged( + parent: CoordinatorLayout, + body: ScrollView, + dependency: View + ): Boolean { + val newPaddingTop = dependency.height + + body.getChildAt(0).apply { + if (paddingTop != newPaddingTop) { + setPadding(paddingLeft, newPaddingTop, paddingRight, paddingBottom) + return true + } else { + return false + } + } + } +} |
