From 00bd87140c577a4edcbeeeb694357ffdb33b163a Mon Sep 17 00:00:00 2001 From: M66B Date: Thu, 19 Sep 2019 13:02:51 +0200 Subject: [PATCH] Added compose behavior --- .../faircode/email/BehaviorBottomPadding.java | 55 ++ app/src/main/res/layout/fragment_compose.xml | 886 +++++++++--------- 2 files changed, 501 insertions(+), 440 deletions(-) create mode 100644 app/src/main/java/eu/faircode/email/BehaviorBottomPadding.java diff --git a/app/src/main/java/eu/faircode/email/BehaviorBottomPadding.java b/app/src/main/java/eu/faircode/email/BehaviorBottomPadding.java new file mode 100644 index 0000000000..66dc5d725d --- /dev/null +++ b/app/src/main/java/eu/faircode/email/BehaviorBottomPadding.java @@ -0,0 +1,55 @@ +package eu.faircode.email; + +/* + This file is part of FairEmail. + + FairEmail is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + FairEmail is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with FairEmail. If not, see . + + Copyright 2018-2019 by Marcel Bokhorst (M66B) +*/ + +import android.content.Context; +import android.util.AttributeSet; +import android.view.View; + +import androidx.annotation.NonNull; +import androidx.coordinatorlayout.widget.CoordinatorLayout; + +import com.google.android.material.snackbar.Snackbar; + +public class BehaviorBottomPadding extends CoordinatorLayout.Behavior { + public BehaviorBottomPadding() { + super(); + } + + public BehaviorBottomPadding(Context context, AttributeSet attrs) { + super(context, attrs); + } + + @Override + public boolean layoutDependsOn(@NonNull CoordinatorLayout parent, @NonNull View child, @NonNull View dependency) { + return dependency instanceof Snackbar.SnackbarLayout; + } + + @Override + public boolean onDependentViewChanged(@NonNull CoordinatorLayout parent, @NonNull View child, @NonNull View dependency) { + child.setPadding(0, 0, 0, dependency.getHeight()); + return true; + } + + @Override + public void onDependentViewRemoved(CoordinatorLayout parent, View child, View dependency) { + child.setPadding(0, 0, 0, 0); + } +} diff --git a/app/src/main/res/layout/fragment_compose.xml b/app/src/main/res/layout/fragment_compose.xml index 4069bd4e26..49fa6f4bc0 100644 --- a/app/src/main/res/layout/fragment_compose.xml +++ b/app/src/main/res/layout/fragment_compose.xml @@ -1,451 +1,457 @@ - - + android:layout_height="match_parent" + app:layout_behavior=".BehaviorBottomPadding"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + android:layout_height="wrap_content"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file