DO NOT MERGE: Optimize Dashboard loading

- prevent loading categories twice
- add some logging to see the time taken for building the Dashboard titles

Change-Id: I31724c0e66fe3b453a87f12476f58db84c73423f
(cherry picked from commit b644f29313)
This commit is contained in:
Fabrice Di Meglio
2014-05-22 10:30:03 -07:00
committed by Dave Langemak
parent 6654884417
commit 42c4b0abe5
2 changed files with 11 additions and 10 deletions

View File

@@ -329,7 +329,9 @@ public class SettingsActivity extends Activity
public void handleMessage(Message msg) {
switch (msg.what) {
case MSG_BUILD_CATEGORIES: {
buildDashboardCategories(mCategories);
if(mNeedToRebuildCategories) {
buildDashboardCategories(mCategories);
}
} break;
}
}
@@ -346,7 +348,7 @@ public class SettingsActivity extends Activity
}
public List<DashboardCategory> getDashboardCategories() {
if (mNeedToRebuildCategories) {
if (mNeedToRebuildCategories || mCategories.size() == 0) {
buildDashboardCategories(mCategories);
mNeedToRebuildCategories = false;
}
@@ -497,16 +499,11 @@ public class SettingsActivity extends Activity
switchToFragment( initialFragmentName, initialArguments, true, false,
mInitialTitle, false);
} else {
// We need to build the Categories in all cases
buildDashboardCategories(mCategories);
// No UP if we are displaying the main Dashboard
mDisplayHomeAsUpEnabled = false;
if (mCategories.size() > 0) {
mInitialTitle = getText(R.string.dashboard_title);
switchToFragment(DashboardSummary.class.getName(), null, false, false,
mInitialTitle, false);
}
mInitialTitle = getText(R.string.dashboard_title);
switchToFragment(DashboardSummary.class.getName(), null, false, false,
mInitialTitle, false);
}
}