resolve merge conflicts of f757d1e
to nyc-mr1-dev-plus-aosp
Change-Id: I1e53b78977bb32fe34462cf46bbfe66626574e65
This commit is contained in:
@@ -42,6 +42,7 @@ import com.android.settingslib.drawer.DashboardCategory;
|
||||
import com.android.settingslib.drawer.SettingsDrawerActivity;
|
||||
import com.android.settingslib.drawer.Tile;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class DashboardSummary extends InstrumentedFragment
|
||||
@@ -63,6 +64,8 @@ public class DashboardSummary extends InstrumentedFragment
|
||||
private static final String SUGGESTIONS = "suggestions";
|
||||
|
||||
private static final String EXTRA_SCROLL_POSITION = "scroll_position";
|
||||
private static final String EXTRA_SUGGESTION_SHOWN_LOGGED = "suggestions_shown_logged";
|
||||
private static final String EXTRA_SUGGESTION_HIDDEN_LOGGED = "suggestions_hidden_logged";
|
||||
|
||||
private FocusRecyclerView mDashboard;
|
||||
private DashboardAdapter mAdapter;
|
||||
@@ -71,6 +74,8 @@ public class DashboardSummary extends InstrumentedFragment
|
||||
private SuggestionParser mSuggestionParser;
|
||||
private LinearLayoutManager mLayoutManager;
|
||||
private SuggestionsChecks mSuggestionsChecks;
|
||||
private ArrayList<String> mSuggestionsShownLogged;
|
||||
private ArrayList<String> mSuggestionsHiddenLogged;
|
||||
|
||||
@Override
|
||||
protected int getMetricsCategory() {
|
||||
@@ -90,6 +95,15 @@ public class DashboardSummary extends InstrumentedFragment
|
||||
mSuggestionParser = new SuggestionParser(context,
|
||||
context.getSharedPreferences(SUGGESTIONS, 0), R.xml.suggestion_ordering);
|
||||
mSuggestionsChecks = new SuggestionsChecks(getContext());
|
||||
if (savedInstanceState == null) {
|
||||
mSuggestionsShownLogged = new ArrayList<>();
|
||||
mSuggestionsHiddenLogged = new ArrayList<>();
|
||||
} else {
|
||||
mSuggestionsShownLogged =
|
||||
savedInstanceState.getStringArrayList(EXTRA_SUGGESTION_SHOWN_LOGGED);
|
||||
mSuggestionsHiddenLogged =
|
||||
savedInstanceState.getStringArrayList(EXTRA_SUGGESTION_HIDDEN_LOGGED);
|
||||
}
|
||||
if (DEBUG_TIMING) Log.d(TAG, "onCreate took " + (System.currentTimeMillis() - startTime)
|
||||
+ " ms");
|
||||
}
|
||||
@@ -112,12 +126,6 @@ public class DashboardSummary extends InstrumentedFragment
|
||||
MetricsLogger.visible(getContext(), c.getMetricsConstant());
|
||||
}
|
||||
}
|
||||
if (mAdapter.getSuggestions() != null) {
|
||||
for (Tile suggestion : mAdapter.getSuggestions()) {
|
||||
MetricsLogger.action(getContext(), MetricsEvent.ACTION_SHOW_SETTINGS_SUGGESTION,
|
||||
DashboardAdapter.getSuggestionIdentifier(getContext(), suggestion));
|
||||
}
|
||||
}
|
||||
if (DEBUG_TIMING) Log.d(TAG, "onResume took " + (System.currentTimeMillis() - startTime)
|
||||
+ " ms");
|
||||
}
|
||||
@@ -136,9 +144,15 @@ public class DashboardSummary extends InstrumentedFragment
|
||||
if (mAdapter.getSuggestions() == null) {
|
||||
return;
|
||||
}
|
||||
for (Tile suggestion : mAdapter.getSuggestions()) {
|
||||
MetricsLogger.action(getContext(), MetricsEvent.ACTION_HIDE_SETTINGS_SUGGESTION,
|
||||
DashboardAdapter.getSuggestionIdentifier(getContext(), suggestion));
|
||||
if (!getActivity().isChangingConfigurations()) {
|
||||
for (Tile suggestion : mAdapter.getSuggestions()) {
|
||||
String id = DashboardAdapter.getSuggestionIdentifier(getContext(), suggestion);
|
||||
if (!mSuggestionsHiddenLogged.contains(id)) {
|
||||
mSuggestionsHiddenLogged.add(id);
|
||||
MetricsLogger.action(getContext(),
|
||||
MetricsEvent.ACTION_HIDE_SETTINGS_SUGGESTION, id);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -169,6 +183,8 @@ public class DashboardSummary extends InstrumentedFragment
|
||||
if (mAdapter != null) {
|
||||
mAdapter.onSaveInstanceState(outState);
|
||||
}
|
||||
outState.putStringArrayList(EXTRA_SUGGESTION_HIDDEN_LOGGED, mSuggestionsHiddenLogged);
|
||||
outState.putStringArrayList(EXTRA_SUGGESTION_SHOWN_LOGGED, mSuggestionsShownLogged);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -222,9 +238,17 @@ public class DashboardSummary extends InstrumentedFragment
|
||||
protected List<Tile> doInBackground(Void... params) {
|
||||
List<Tile> suggestions = mSuggestionParser.getSuggestions();
|
||||
for (int i = 0; i < suggestions.size(); i++) {
|
||||
if (mSuggestionsChecks.isSuggestionComplete(suggestions.get(i))) {
|
||||
mAdapter.disableSuggestion(suggestions.get(i));
|
||||
Tile suggestion = suggestions.get(i);
|
||||
if (mSuggestionsChecks.isSuggestionComplete(suggestion)) {
|
||||
mAdapter.disableSuggestion(suggestion);
|
||||
suggestions.remove(i--);
|
||||
} else {
|
||||
String id = DashboardAdapter.getSuggestionIdentifier(getContext(), suggestion);
|
||||
if (!mSuggestionsShownLogged.contains(id)) {
|
||||
mSuggestionsShownLogged.add(id);
|
||||
MetricsLogger.action(getContext(),
|
||||
MetricsEvent.ACTION_SHOW_SETTINGS_SUGGESTION, id);
|
||||
}
|
||||
}
|
||||
}
|
||||
return suggestions;
|
||||
|
Reference in New Issue
Block a user