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