Loading res/xml/development_settings.xml +1 −1 Original line number Diff line number Diff line Loading @@ -23,7 +23,7 @@ android:key="memory" android:icon="@drawable/ic_settings_memory" android:title="@string/memory_settings_title" android:summary="@string/summary_empty" android:summary="@string/summary_placeholder" android:fragment="com.android.settings.applications.ProcessStatsSummary" /> <com.android.settings.BugreportPreference Loading src/com/android/settings/dashboard/DashboardFragment.java +5 −3 Original line number Diff line number Diff line Loading @@ -87,10 +87,12 @@ public abstract class DashboardFragment extends SettingsPreferenceFragment // Set ComparisonCallback so we get better animation when list changes. getPreferenceManager().setPreferenceComparisonCallback( new PreferenceManager.SimplePreferenceComparisonCallback()); if (icicle != null) { // Upon rotation configuration change we need to update preference states before any // editing dialog is recreated (that would happen before onResume is called). updatePreferenceStates(); } } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Loading src/com/android/settings/development/MemoryUsagePreferenceController.java +14 −8 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ import com.android.settings.applications.ProcStatsData; import com.android.settings.applications.ProcessStatsBase; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.development.DeveloperOptionsPreferenceController; import com.android.settingslib.utils.ThreadUtils; public class MemoryUsagePreferenceController extends DeveloperOptionsPreferenceController implements PreferenceControllerMixin { Loading Loading @@ -56,14 +57,19 @@ public class MemoryUsagePreferenceController extends DeveloperOptionsPreferenceC @Override public void updateState(Preference preference) { // This is posted on the background thread to speed up fragment launch time for dev options // mProcStasData.refreshStats(true) takes ~20ms to run. ThreadUtils.postOnBackgroundThread(() -> { mProcStatsData.refreshStats(true); final ProcStatsData.MemInfo memInfo = mProcStatsData.getMemInfo(); final String usedResult = Formatter.formatShortFileSize(mContext, (long) memInfo.realUsedRam); final String totalResult = Formatter.formatShortFileSize(mContext, (long) memInfo.realTotalRam); mPreference.setSummary(mContext.getString(R.string.memory_summary, usedResult, totalResult)); ThreadUtils.postOnMainThread( () -> mPreference.setSummary(mContext.getString(R.string.memory_summary, usedResult, totalResult))); }); } @VisibleForTesting Loading tests/robotests/src/com/android/settings/development/MemoryUsagePreferenceControllerTest.java +4 −0 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import android.support.v7.preference.PreferenceScreen; import com.android.settings.TestConfig; import com.android.settings.applications.ProcStatsData; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.shadow.ShadowThreadUtils; import org.junit.Before; import org.junit.Test; Loading Loading @@ -68,6 +69,9 @@ public class MemoryUsagePreferenceControllerTest { } @Test @Config(shadows = { ShadowThreadUtils.class }) public void updateState_shouldUpdatePreferenceSummary() { mController.updateState(mPreference); Loading Loading
res/xml/development_settings.xml +1 −1 Original line number Diff line number Diff line Loading @@ -23,7 +23,7 @@ android:key="memory" android:icon="@drawable/ic_settings_memory" android:title="@string/memory_settings_title" android:summary="@string/summary_empty" android:summary="@string/summary_placeholder" android:fragment="com.android.settings.applications.ProcessStatsSummary" /> <com.android.settings.BugreportPreference Loading
src/com/android/settings/dashboard/DashboardFragment.java +5 −3 Original line number Diff line number Diff line Loading @@ -87,10 +87,12 @@ public abstract class DashboardFragment extends SettingsPreferenceFragment // Set ComparisonCallback so we get better animation when list changes. getPreferenceManager().setPreferenceComparisonCallback( new PreferenceManager.SimplePreferenceComparisonCallback()); if (icicle != null) { // Upon rotation configuration change we need to update preference states before any // editing dialog is recreated (that would happen before onResume is called). updatePreferenceStates(); } } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Loading
src/com/android/settings/development/MemoryUsagePreferenceController.java +14 −8 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ import com.android.settings.applications.ProcStatsData; import com.android.settings.applications.ProcessStatsBase; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.development.DeveloperOptionsPreferenceController; import com.android.settingslib.utils.ThreadUtils; public class MemoryUsagePreferenceController extends DeveloperOptionsPreferenceController implements PreferenceControllerMixin { Loading Loading @@ -56,14 +57,19 @@ public class MemoryUsagePreferenceController extends DeveloperOptionsPreferenceC @Override public void updateState(Preference preference) { // This is posted on the background thread to speed up fragment launch time for dev options // mProcStasData.refreshStats(true) takes ~20ms to run. ThreadUtils.postOnBackgroundThread(() -> { mProcStatsData.refreshStats(true); final ProcStatsData.MemInfo memInfo = mProcStatsData.getMemInfo(); final String usedResult = Formatter.formatShortFileSize(mContext, (long) memInfo.realUsedRam); final String totalResult = Formatter.formatShortFileSize(mContext, (long) memInfo.realTotalRam); mPreference.setSummary(mContext.getString(R.string.memory_summary, usedResult, totalResult)); ThreadUtils.postOnMainThread( () -> mPreference.setSummary(mContext.getString(R.string.memory_summary, usedResult, totalResult))); }); } @VisibleForTesting Loading
tests/robotests/src/com/android/settings/development/MemoryUsagePreferenceControllerTest.java +4 −0 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import android.support.v7.preference.PreferenceScreen; import com.android.settings.TestConfig; import com.android.settings.applications.ProcStatsData; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.shadow.ShadowThreadUtils; import org.junit.Before; import org.junit.Test; Loading Loading @@ -68,6 +69,9 @@ public class MemoryUsagePreferenceControllerTest { } @Test @Config(shadows = { ShadowThreadUtils.class }) public void updateState_shouldUpdatePreferenceSummary() { mController.updateState(mPreference); Loading