Commit 89f634e6 authored by Shakti Sahu's avatar Shakti Sahu Committed by Commit Bot

Download Home : Fixed multiple crashes

1 - Fixed a bug in partial rebind attempt
2 - Fixed a bug in custom view rebind where view already has a parent

Bug: 870879
Change-Id: I006e2d0f92a038e3b7a44b01b3e7f0c3075ab9b3
Reviewed-on: https://chromium-review.googlesource.com/1162774Reviewed-by: default avatarTheresa <twellington@chromium.org>
Commit-Queue: Shakti Sahu <shaktisahu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#580704}
parent 7b4f9813
...@@ -36,7 +36,7 @@ class ListPropertyViewBinder implements ViewBinder<PropertyModel, RecyclerView, ...@@ -36,7 +36,7 @@ class ListPropertyViewBinder implements ViewBinder<PropertyModel, RecyclerView,
|| propertyKey == ListProperties.PROVIDER_VISUALS || propertyKey == ListProperties.PROVIDER_VISUALS
|| propertyKey == ListProperties.CALLBACK_SELECTION || propertyKey == ListProperties.CALLBACK_SELECTION
|| propertyKey == ListProperties.SELECTION_MODE_ACTIVE) { || propertyKey == ListProperties.SELECTION_MODE_ACTIVE) {
view.getAdapter().notifyItemChanged(0, view.getAdapter().getItemCount()); view.getAdapter().notifyItemRangeChanged(0, view.getAdapter().getItemCount());
} }
} }
} }
\ No newline at end of file
...@@ -6,6 +6,7 @@ package org.chromium.chrome.browser.download.home.list.holder; ...@@ -6,6 +6,7 @@ package org.chromium.chrome.browser.download.home.list.holder;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.view.ViewParent;
import android.widget.FrameLayout; import android.widget.FrameLayout;
import org.chromium.chrome.browser.download.home.list.ListItem; import org.chromium.chrome.browser.download.home.list.ListItem;
...@@ -31,6 +32,9 @@ public class CustomViewHolder extends ListItemViewHolder { ...@@ -31,6 +32,9 @@ public class CustomViewHolder extends ListItemViewHolder {
return; return;
} }
ViewParent parent = viewItem.customView.getParent();
if (parent instanceof ViewGroup) ((ViewGroup) parent).removeView(viewItem.customView);
viewGroup.removeAllViews(); viewGroup.removeAllViews();
viewGroup.addView(viewItem.customView, viewGroup.addView(viewItem.customView,
new ViewGroup.LayoutParams( new ViewGroup.LayoutParams(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment