diff options
author | Rohan Shah <shahrk@google.com> | 2014-08-15 22:26:21 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-08-15 21:23:40 +0000 |
commit | 52666490bf734a71ad3fce634e21f5a9f1d448a9 (patch) | |
tree | c01ed34390d9b4ca4ba96444b95631ffb22ac54b /src | |
parent | 1353da4b3075af7d5bb8f6bcd0dcb5bb3f8afdab (diff) | |
parent | eec2e988e634e5cd501b4fce3e78d6caadfe7558 (diff) | |
download | android_packages_apps_UnifiedEmail-52666490bf734a71ad3fce634e21f5a9f1d448a9.tar.gz android_packages_apps_UnifiedEmail-52666490bf734a71ad3fce634e21f5a9f1d448a9.tar.bz2 android_packages_apps_UnifiedEmail-52666490bf734a71ad3fce634e21f5a9f1d448a9.zip |
Merge "Fix "Move to" crashing Gmail" into ub-gmail-ur14-dev
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/mail/ui/HierarchicalFolderSelectorAdapter.java | 8 | ||||
-rw-r--r-- | src/com/android/mail/ui/SingleFolderSelectionDialog.java | 30 |
2 files changed, 24 insertions, 14 deletions
diff --git a/src/com/android/mail/ui/HierarchicalFolderSelectorAdapter.java b/src/com/android/mail/ui/HierarchicalFolderSelectorAdapter.java index 0f52e6565..b306f8d36 100644 --- a/src/com/android/mail/ui/HierarchicalFolderSelectorAdapter.java +++ b/src/com/android/mail/ui/HierarchicalFolderSelectorAdapter.java @@ -117,8 +117,12 @@ public class HierarchicalFolderSelectorAdapter extends FolderSelectorAdapter { display.append(mContext.getResources().getString(R.string.hierarchical_folder_top, topParentName)); } - display.setSpan(new ForegroundColorSpan(R.color.hierarchical_folder_parent_color), 0, - display.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); + + // If there is nothing appended to display, don't try to setSpan. + if (display.length() > 0) { + display.setSpan(new ForegroundColorSpan(R.color.hierarchical_folder_parent_color), + 0, display.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); + } display.append(folderName); } return display; diff --git a/src/com/android/mail/ui/SingleFolderSelectionDialog.java b/src/com/android/mail/ui/SingleFolderSelectionDialog.java index 1fd74c506..a61ded0ff 100644 --- a/src/com/android/mail/ui/SingleFolderSelectionDialog.java +++ b/src/com/android/mail/ui/SingleFolderSelectionDialog.java @@ -82,21 +82,27 @@ public class SingleFolderSelectionDialog extends FolderSelectionDialog { dialog.getListView().setAdapter(null); mAdapter.clearSections(); - // TODO(mindyp) : bring this back in UR8 when Email providers - // will have divided folder sections. - // Currently, the number of adapters are assumed to match the - // number of headers in the string array. - mAdapter.addSection(new SystemFolderSelectorAdapter(context, data, - R.layout.single_folders_view, mCurrentFolder)); - - // TODO(mindyp): we currently do not support frequently moved to - // folders, at headers[1]; need to define what that means.*/ + + // Create a system folder adapter and an adapter for hierarchical + // and user folders. If there are no folders added to either of them, + // do not add as a section since a 0-count adapter will result in an + // IndexOutOfBoundsException. + SystemFolderSelectorAdapter sysFolderAdapter = + new SystemFolderSelectorAdapter(context, data, + R.layout.single_folders_view, mCurrentFolder); + if (sysFolderAdapter.getCount() > 0) { + mAdapter.addSection(sysFolderAdapter); + } + // TODO(pwestbro): determine if we need to call filterFolders // if filterFolders is not necessary, remove the method decl with one arg. - mAdapter.addSection( + UserFolderHierarchicalFolderSelectorAdapter hierarchicalAdapter = new UserFolderHierarchicalFolderSelectorAdapter(context, - AddableFolderSelectorAdapter.filterFolders(data), - R.layout.single_folders_view, mCurrentFolder)); + AddableFolderSelectorAdapter.filterFolders(data), + R.layout.single_folders_view, mCurrentFolder); + if (hierarchicalAdapter.getCount() > 0) { + mAdapter.addSection(hierarchicalAdapter); + } dialog.getListView().setAdapter(mAdapter); } |