Loading src/com/android/settings/dashboard/DashboardSummary.java +9 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.settings.dashboard; import android.app.Activity; import android.app.LoaderManager; import android.content.Context; import android.os.AsyncTask; import android.os.Bundle; Loading Loading @@ -95,6 +96,14 @@ public class DashboardSummary extends InstrumentedFragment } } @Override public LoaderManager getLoaderManager() { if (!isAdded()) { return null; } return super.getLoaderManager(); } @Override public void onCreate(Bundle savedInstanceState) { long startTime = System.currentTimeMillis(); Loading src/com/android/settings/dashboard/suggestions/SuggestionControllerMixin.java +9 −3 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import android.content.Context; import android.content.Loader; import android.os.Bundle; import android.service.settings.suggestions.Suggestion; import android.support.annotation.Nullable; import android.util.Log; import com.android.settings.overlay.FeatureFactory; Loading @@ -44,8 +45,10 @@ public class SuggestionControllerMixin implements SuggestionController.ServiceCo void onSuggestionReady(List<Suggestion> data); /** * Returns {@link LoaderManager} associated with the host. * Returns {@link LoaderManager} associated with the host. If host is not attached to * activity then return null. */ @Nullable LoaderManager getLoaderManager(); } Loading Loading @@ -82,9 +85,12 @@ public class SuggestionControllerMixin implements SuggestionController.ServiceCo @Override public void onServiceConnected() { mHost.getLoaderManager().restartLoader(SuggestionLoader.LOADER_ID_SUGGESTIONS, final LoaderManager loaderManager = mHost.getLoaderManager(); if (loaderManager != null) { loaderManager.restartLoader(SuggestionLoader.LOADER_ID_SUGGESTIONS, null /* args */, this /* callback */); } } @Override public void onServiceDisconnected() { Loading tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionControllerMixinTest.java +10 −1 Original line number Diff line number Diff line Loading @@ -23,7 +23,6 @@ import static org.mockito.Mockito.when; import android.app.LoaderManager; import android.content.Context; import android.database.MatrixCursor; import com.android.settings.TestConfig; import com.android.settings.testutils.FakeFeatureFactory; Loading Loading @@ -88,4 +87,14 @@ public class SuggestionControllerMixinTest { verify(loaderManager).restartLoader(SuggestionLoader.LOADER_ID_SUGGESTIONS, null /* args */, mMixin /* callback */); } @Test public void onServiceConnected_hostNotAttached_shouldDoNothing() { when(mHost.getLoaderManager()).thenReturn(null); mMixin = new SuggestionControllerMixin(mContext, mHost, mLifecycle); mMixin.onServiceConnected(); verify(mHost).getLoaderManager(); } } Loading
src/com/android/settings/dashboard/DashboardSummary.java +9 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.settings.dashboard; import android.app.Activity; import android.app.LoaderManager; import android.content.Context; import android.os.AsyncTask; import android.os.Bundle; Loading Loading @@ -95,6 +96,14 @@ public class DashboardSummary extends InstrumentedFragment } } @Override public LoaderManager getLoaderManager() { if (!isAdded()) { return null; } return super.getLoaderManager(); } @Override public void onCreate(Bundle savedInstanceState) { long startTime = System.currentTimeMillis(); Loading
src/com/android/settings/dashboard/suggestions/SuggestionControllerMixin.java +9 −3 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import android.content.Context; import android.content.Loader; import android.os.Bundle; import android.service.settings.suggestions.Suggestion; import android.support.annotation.Nullable; import android.util.Log; import com.android.settings.overlay.FeatureFactory; Loading @@ -44,8 +45,10 @@ public class SuggestionControllerMixin implements SuggestionController.ServiceCo void onSuggestionReady(List<Suggestion> data); /** * Returns {@link LoaderManager} associated with the host. * Returns {@link LoaderManager} associated with the host. If host is not attached to * activity then return null. */ @Nullable LoaderManager getLoaderManager(); } Loading Loading @@ -82,9 +85,12 @@ public class SuggestionControllerMixin implements SuggestionController.ServiceCo @Override public void onServiceConnected() { mHost.getLoaderManager().restartLoader(SuggestionLoader.LOADER_ID_SUGGESTIONS, final LoaderManager loaderManager = mHost.getLoaderManager(); if (loaderManager != null) { loaderManager.restartLoader(SuggestionLoader.LOADER_ID_SUGGESTIONS, null /* args */, this /* callback */); } } @Override public void onServiceDisconnected() { Loading
tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionControllerMixinTest.java +10 −1 Original line number Diff line number Diff line Loading @@ -23,7 +23,6 @@ import static org.mockito.Mockito.when; import android.app.LoaderManager; import android.content.Context; import android.database.MatrixCursor; import com.android.settings.TestConfig; import com.android.settings.testutils.FakeFeatureFactory; Loading Loading @@ -88,4 +87,14 @@ public class SuggestionControllerMixinTest { verify(loaderManager).restartLoader(SuggestionLoader.LOADER_ID_SUGGESTIONS, null /* args */, mMixin /* callback */); } @Test public void onServiceConnected_hostNotAttached_shouldDoNothing() { when(mHost.getLoaderManager()).thenReturn(null); mMixin = new SuggestionControllerMixin(mContext, mHost, mLifecycle); mMixin.onServiceConnected(); verify(mHost).getLoaderManager(); } }