Move Help & feedback to Nav drawer.

b/11061485

HELP and SEND FEEDBACK are now the two bottom-most drawer
items in the Navigation drawer when it is present or in
the overflow menu when it is not present.

SEND FEEDBACK still behaves as always.

HELP has been redesigned so that it displays the help
content in a local webview rather than using an external
browser.

Change-Id: I01003f3cd6f8dedbcfb95ae87872968dfc6be48b
This commit is contained in:
James Lemieux 2014-03-03 13:01:04 -08:00
parent 351aa25ccb
commit 31ce5555b8
3 changed files with 25 additions and 7 deletions

View File

@ -340,6 +340,16 @@
</intent-filter>
</activity>
<activity
android:name="com.android.mail.ui.HelpActivity"
android:label="@string/help_and_info">
</activity>
<activity
android:name="com.android.mail.ui.LicensesActivity"
android:label="@string/open_source_licenses">
</activity>
<!-- additional activities -->
<provider

View File

@ -49,7 +49,6 @@ import com.android.emailcommon.utility.IntentUtilities;
import com.android.emailcommon.utility.Utility;
import com.android.mail.providers.Folder;
import com.android.mail.providers.UIProvider.EditSettingsExtras;
import com.android.mail.ui.FeedbackEnabledActivity;
import com.android.mail.utils.LogUtils;
import com.android.mail.utils.Utils;
@ -70,7 +69,7 @@ import java.util.List;
* sense to use a loader for the accounts list, because it would provide better support for
* dealing with accounts being added/deleted and triggering the header reload.
*/
public class AccountSettings extends PreferenceActivity implements FeedbackEnabledActivity,
public class AccountSettings extends PreferenceActivity implements
SetupDataFragment.SetupDataContainer, SecurityRequiredDialogFragment.Callback,
CheckSettingsErrorDialogFragment.Callback, AccountCheckSettingsFragment.Callback,
AccountServerBaseFragment.Callback {
@ -988,11 +987,6 @@ public class AccountSettings extends PreferenceActivity implements FeedbackEnabl
}
}
@Override
public Context getActivityContext() {
return this;
}
@Override
public SetupDataFragment getSetupData() {
return mSetupData;

View File

@ -2515,6 +2515,14 @@ public class EmailProvider extends ContentProvider {
"'" + feedbackUri + "'");
}
final String helpUri = context.getString(R.string.help_uri);
if (!TextUtils.isEmpty(helpUri)) {
// This string needs to be in single quotes, as it will be used as a constant
// in a sql expression
builder.add(UIProvider.AccountColumns.HELP_INTENT_URI,
"'" + helpUri + "'");
}
sAccountListMap = builder.build();
}
return sAccountListMap;
@ -3102,6 +3110,12 @@ public class EmailProvider extends ContentProvider {
if (res.getBoolean(R.bool.feedback_supported)) {
capabilities |= UIProvider.AccountCapabilities.SEND_FEEDBACK;
}
// If we can find a help URL then add the Help capability
if (!TextUtils.isEmpty(context.getResources().getString(R.string.help_uri))) {
capabilities |= UIProvider.AccountCapabilities.HELP_CONTENT;
}
// TODO: Should this be stored per-account, or some other mechanism?
capabilities |= UIProvider.AccountCapabilities.NESTED_FOLDERS;