Index: chrome/android/java/src/org/chromium/chrome/browser/history/HistoryAdapter.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryAdapter.java b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryAdapter.java |
index 70487af91c97dcef3c76af6252276d0fe8513667..bd861651893470235e03eafd316b5993d812a1b2 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryAdapter.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/history/HistoryAdapter.java |
@@ -12,13 +12,17 @@ import android.view.View; |
import android.view.View.OnClickListener; |
import android.view.ViewGroup; |
import android.widget.Button; |
+import android.widget.FrameLayout; |
import android.widget.TextView; |
import org.chromium.base.ContextUtils; |
import org.chromium.base.VisibleForTesting; |
import org.chromium.chrome.R; |
import org.chromium.chrome.browser.history.HistoryProvider.BrowsingHistoryObserver; |
+import org.chromium.chrome.browser.preferences.PrefServiceBridge; |
import org.chromium.chrome.browser.widget.DateDividedAdapter; |
+import org.chromium.chrome.browser.widget.DateDividedAdapter.DateViewHolder; |
+import org.chromium.chrome.browser.widget.displaystyle.MarginResizer; |
import org.chromium.chrome.browser.widget.selection.SelectableItemViewHolder; |
import org.chromium.chrome.browser.widget.selection.SelectionDelegate; |
import org.chromium.chrome.browser.widget.selection.SelectionDelegate.SelectionObserver; |
@@ -42,12 +46,13 @@ public class HistoryAdapter extends DateDividedAdapter implements BrowsingHistor |
private final SelectionDelegate<HistoryItem> mSelectionDelegate; |
private final HistoryProvider mHistoryProvider; |
- private final HistoryManager mManager; |
+ private final HistoryManager mHistoryManager; |
private TextView mSignedInNotSyncedTextView; |
private TextView mSignedInSyncedTextView; |
private TextView mOtherFormsOfBrowsingHistoryTextView; |
private Button mClearBrowsingDataButton; |
+ private FrameLayout mClearBrowsingDataButtonContainer; |
private boolean mHasOtherFormsOfBrowsingData; |
private boolean mHasSyncedData; |
@@ -63,13 +68,15 @@ public class HistoryAdapter extends DateDividedAdapter implements BrowsingHistor |
private final ArrayList<HistoryItemView> mItemViews; |
gone
2017/01/27 18:48:52
Move this up to the other private final things, th
Theresa
2017/01/27 23:34:45
Done.
|
+ private int mTextDefaultMargin; |
+ |
public HistoryAdapter(SelectionDelegate<HistoryItem> delegate, HistoryManager manager, |
HistoryProvider provider) { |
setHasStableIds(true); |
mSelectionDelegate = delegate; |
mHistoryProvider = provider; |
mHistoryProvider.setObserver(this); |
- mManager = manager; |
+ mHistoryManager = manager; |
mItemViews = new ArrayList<>(); |
} |
@@ -164,6 +171,7 @@ public class HistoryAdapter extends DateDividedAdapter implements BrowsingHistor |
for (HistoryItemView itemView : mItemViews) { |
itemView.onSignInStateChange(); |
} |
+ updateClearBrowsingDataButtonVisibility(); |
} |
/** |
@@ -195,12 +203,12 @@ public class HistoryAdapter extends DateDividedAdapter implements BrowsingHistor |
SelectableItemViewHolder<HistoryItem> holder = |
(SelectableItemViewHolder<HistoryItem>) current; |
holder.displayItem(item); |
- ((HistoryItemView) holder.itemView).setHistoryManager(mManager); |
+ ((HistoryItemView) holder.itemView).setHistoryManager(mHistoryManager); |
} |
@Override |
protected int getTimedItemViewResId() { |
- return R.layout.date_view; |
+ return R.layout.history_date_view; |
} |
@Override |
@@ -250,26 +258,45 @@ public class HistoryAdapter extends DateDividedAdapter implements BrowsingHistor |
R.layout.history_header, parent, false); |
mIsHeaderInflated = true; |
+ if (mTextDefaultMargin == 0) { |
+ mTextDefaultMargin = parent.getResources().getDimensionPixelSize( |
+ R.dimen.history_text_default_margin); |
+ } |
+ |
mClearBrowsingDataButton = (Button) v.findViewById(R.id.clear_browsing_data_button); |
mClearBrowsingDataButton.setOnClickListener(new OnClickListener() { |
@Override |
public void onClick(View v) { |
- mManager.openClearBrowsingDataPreference(); |
+ mHistoryManager.openClearBrowsingDataPreference(); |
} |
}); |
+ mClearBrowsingDataButtonContainer = (FrameLayout) mClearBrowsingDataButton.getParent(); |
+ MarginResizer.createWithViewAdapter(mClearBrowsingDataButtonContainer, |
+ mHistoryManager.getSelectableListLayout().getUiConfig(), |
+ mHistoryManager.getDefaultLateralListItemMarginPx(), 0); |
+ updateClearBrowsingDataButtonVisibility(); |
mSignedInNotSyncedTextView = (TextView) v.findViewById(R.id.signed_in_not_synced); |
setPrivacyDisclaimerText(mSignedInNotSyncedTextView, |
R.string.android_history_no_synced_results, LEARN_MORE_LINK); |
+ MarginResizer.createWithViewAdapter(mSignedInNotSyncedTextView, |
+ mHistoryManager.getSelectableListLayout().getUiConfig(), |
+ mTextDefaultMargin, mHistoryManager.getListItemLateralShadowSizePx()); |
mSignedInSyncedTextView = (TextView) v.findViewById(R.id.signed_in_synced); |
setPrivacyDisclaimerText(mSignedInSyncedTextView, |
R.string.android_history_has_synced_results, LEARN_MORE_LINK); |
+ MarginResizer.createWithViewAdapter(mSignedInSyncedTextView, |
+ mHistoryManager.getSelectableListLayout().getUiConfig(), |
+ mTextDefaultMargin, mHistoryManager.getListItemLateralShadowSizePx()); |
mOtherFormsOfBrowsingHistoryTextView = (TextView) v.findViewById( |
R.id.other_forms_of_browsing_history); |
setPrivacyDisclaimerText(mOtherFormsOfBrowsingHistoryTextView, |
R.string.android_history_other_forms_of_history, GOOGLE_HISTORY_LINK); |
+ MarginResizer.createWithViewAdapter(mOtherFormsOfBrowsingHistoryTextView, |
+ mHistoryManager.getSelectableListLayout().getUiConfig(), |
+ mTextDefaultMargin, mHistoryManager.getListItemLateralShadowSizePx()); |
setPrivacyDisclaimerVisibility(); |
@@ -282,11 +309,25 @@ public class HistoryAdapter extends DateDividedAdapter implements BrowsingHistor |
R.layout.indeterminate_progress_view, parent, false)); |
} |
+ @Override |
+ protected DateViewHolder createDateViewHolder(ViewGroup parent) { |
+ if (mTextDefaultMargin == 0) { |
+ mTextDefaultMargin = parent.getResources().getDimensionPixelSize( |
+ R.dimen.history_text_default_margin); |
+ } |
gone
2017/01/27 18:48:52
Pull this and the other version up top out into a
Theresa
2017/01/27 23:34:45
Done.
|
+ |
+ DateViewHolder viewHolder = super.createDateViewHolder(parent); |
+ MarginResizer.createWithViewAdapter(viewHolder.itemView, |
+ mHistoryManager.getSelectableListLayout().getUiConfig(), |
+ mTextDefaultMargin, mHistoryManager.getListItemLateralShadowSizePx()); |
+ return viewHolder; |
+ } |
+ |
private void setPrivacyDisclaimerText(TextView view, int stringId, final String url) { |
NoUnderlineClickableSpan link = new NoUnderlineClickableSpan() { |
@Override |
public void onClick(View view) { |
- mManager.openUrl(url, null, true); |
+ mHistoryManager.openUrl(url, null, true); |
} |
}; |
SpannableString spannable = SpanApplier.applySpans( |
@@ -308,6 +349,12 @@ public class HistoryAdapter extends DateDividedAdapter implements BrowsingHistor |
mHasOtherFormsOfBrowsingData ? View.VISIBLE : View.GONE); |
} |
+ private void updateClearBrowsingDataButtonVisibility() { |
+ mClearBrowsingDataButtonContainer.setVisibility( |
+ !PrefServiceBridge.getInstance().canDeleteBrowsingHistory() ? View.GONE : |
+ View.VISIBLE); |
+ } |
+ |
@VisibleForTesting |
TextView getSignedInNotSyncedViewForTests() { |
return mSignedInNotSyncedTextView; |