| /* |
| * Copyright (C) 2013 The Android Open Source Project |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| |
| package com.android.mail.ui; |
| |
| import android.widget.ListView; |
| |
| /** |
| * A drawer that is shown in one pane mode, as a pull-out from the left. All the |
| * implementation is inherited from the FolderListFragment. |
| * |
| * The drawer shows a list of accounts, the recent folders, and a list of top-level folders for |
| * the given account. This fragment is created using no arguments, it gets all its state from the |
| * controller in {@link #onActivityCreated(android.os.Bundle)}. In particular, it gets the current |
| * account, the list of accounts, and the current folder from the {@link ControllableActivity}. |
| * |
| * Once it has this information, the drawer sets itself up to observe for changes and allows the |
| * user to change folders and accounts. |
| * |
| * The drawer is always instantiated through XML resources: in one_pane_activity.xml and in |
| * two_pane_activity.xml |
| */ |
| public class DrawerFragment extends FolderListFragment { |
| /** |
| * The only way a drawer is constructed is through XML layouts, and so it needs no constructor |
| * like {@link FolderListFragment#ofTopLevelTree(android.net.Uri, java.util.ArrayList} |
| */ |
| public DrawerFragment() { |
| super(); |
| // Drawer is always divided: it shows groups for inboxes, recent folders and all other |
| // folders. |
| mIsDivided = true; |
| // The drawer also switches accounts, so don't hide accounts. |
| mHideAccounts = false; |
| } |
| |
| @Override |
| protected int getListViewChoiceMode() { |
| // Always let one item be selected |
| return ListView.CHOICE_MODE_SINGLE; |
| } |
| } |