Dbrant has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/326858 )
Change subject: Fix possible crash due to support library bug. ...................................................................... Fix possible crash due to support library bug. https://rink.hockeyapp.net/manage/apps/226649/app_versions/113/crash_reasons/148684781 I haven't been able to repro, so this will need to be a blind fix, but it is impacting a nontrivial number of users. Change-Id: I449cdb9b809547afc906d1d71a8db24900865baf --- A app/src/main/java/org/wikipedia/views/FloatingActionButtonBehaviorFixed.java M app/src/main/res/layout/item_reading_list_detail.xml M app/src/main/res/layout/view_description_edit.xml 3 files changed, 36 insertions(+), 0 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia refs/changes/58/326858/1 diff --git a/app/src/main/java/org/wikipedia/views/FloatingActionButtonBehaviorFixed.java b/app/src/main/java/org/wikipedia/views/FloatingActionButtonBehaviorFixed.java new file mode 100644 index 0000000..75259ff --- /dev/null +++ b/app/src/main/java/org/wikipedia/views/FloatingActionButtonBehaviorFixed.java @@ -0,0 +1,34 @@ +package org.wikipedia.views; + +import android.content.Context; +import android.graphics.Rect; +import android.support.annotation.NonNull; +import android.support.design.widget.CoordinatorLayout; +import android.support.design.widget.FloatingActionButton; +import android.util.AttributeSet; + +import org.wikipedia.util.log.L; + +// TODO: Remove when this is fixed: +// https://code.google.com/p/android/issues/detail?id=222597 +// +public class FloatingActionButtonBehaviorFixed extends FloatingActionButton.Behavior { + + public FloatingActionButtonBehaviorFixed() { + super(); + } + + public FloatingActionButtonBehaviorFixed(Context context, AttributeSet attrs) { + super(context, attrs); + } + + @Override + public boolean getInsetDodgeRect(@NonNull CoordinatorLayout parent, + @NonNull FloatingActionButton child, @NonNull Rect rect) { + super.getInsetDodgeRect(parent, child, rect); + if (!rect.intersect(child.getLeft(), child.getTop(), child.getRight(), child.getBottom())) { + L.logRemoteErrorIfProd(new IllegalArgumentException("Rect should intersect with child's bounds.")); + } + return false; + } +} \ No newline at end of file diff --git a/app/src/main/res/layout/item_reading_list_detail.xml b/app/src/main/res/layout/item_reading_list_detail.xml index ee64d8f..4c1346e 100644 --- a/app/src/main/res/layout/item_reading_list_detail.xml +++ b/app/src/main/res/layout/item_reading_list_detail.xml @@ -83,6 +83,7 @@ android:layout_marginTop="16dp" app:srcCompat="@drawable/ic_mode_edit_white_24dp" android:contentDescription="@string/reading_list_menu_edit" + app:layout_behavior="org.wikipedia.views.FloatingActionButtonBehaviorFixed" app:fabSize="mini" app:elevation="4dp" app:borderWidth="0dp" diff --git a/app/src/main/res/layout/view_description_edit.xml b/app/src/main/res/layout/view_description_edit.xml index ba29420..bbd9102 100644 --- a/app/src/main/res/layout/view_description_edit.xml +++ b/app/src/main/res/layout/view_description_edit.xml @@ -101,6 +101,7 @@ app:srcCompat="@drawable/ic_check_black_24dp" android:tint="@color/foundation_blue" android:contentDescription="@string/description_edit_save" + app:layout_behavior="org.wikipedia.views.FloatingActionButtonBehaviorFixed" app:fabSize="mini" app:elevation="6dp" app:borderWidth="0dp" -- To view, visit https://gerrit.wikimedia.org/r/326858 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I449cdb9b809547afc906d1d71a8db24900865baf Gerrit-PatchSet: 1 Gerrit-Project: apps/android/wikipedia Gerrit-Branch: master Gerrit-Owner: Dbrant <dbr...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits