| Index: chrome/browser/app_mode/app_mode_utils.cc
|
| diff --git a/chrome/browser/app_mode/app_mode_utils.cc b/chrome/browser/app_mode/app_mode_utils.cc
|
| index ca3baa5ca11f6533d70c6ae7b7271d23a916f167..c4cdeb247fb66f9cacd98d81b57b0880cc66dcdc 100644
|
| --- a/chrome/browser/app_mode/app_mode_utils.cc
|
| +++ b/chrome/browser/app_mode/app_mode_utils.cc
|
| @@ -4,16 +4,51 @@
|
|
|
| #include "chrome/browser/app_mode/app_mode_utils.h"
|
|
|
| +#include "base/basictypes.h"
|
| #include "base/command_line.h"
|
| +#include "base/logging.h"
|
| +#include "chrome/app/chrome_command_ids.h"
|
| #include "chrome/common/chrome_switches.h"
|
|
|
| namespace chrome {
|
|
|
| +bool IsCommandAllowedInAppMode(int command_id) {
|
| + DCHECK(IsRunningInForcedAppMode());
|
| +
|
| + const int kAllowed[] = {
|
| + IDC_BACK,
|
| + IDC_FORWARD,
|
| + IDC_RELOAD,
|
| + IDC_STOP,
|
| + IDC_RELOAD_IGNORING_CACHE,
|
| + IDC_RELOAD_CLEARING_CACHE,
|
| + IDC_CUT,
|
| + IDC_COPY,
|
| + IDC_COPY_URL,
|
| + IDC_PASTE,
|
| + IDC_ZOOM_PLUS,
|
| + IDC_ZOOM_NORMAL,
|
| + IDC_ZOOM_MINUS,
|
| + };
|
| +
|
| + for (size_t i = 0; i < arraysize(kAllowed); ++i) {
|
| + if (kAllowed[i] == command_id)
|
| + return true;
|
| + }
|
| +
|
| + return false;
|
| +}
|
| +
|
| bool IsRunningInAppMode() {
|
| CommandLine* command_line = CommandLine::ForCurrentProcess();
|
| return command_line->HasSwitch(switches::kKioskMode) ||
|
| - (command_line->HasSwitch(switches::kForceAppMode) &&
|
| - command_line->HasSwitch(switches::kAppId));
|
| + IsRunningInForcedAppMode();
|
| +}
|
| +
|
| +bool IsRunningInForcedAppMode() {
|
| + CommandLine* command_line = CommandLine::ForCurrentProcess();
|
| + return command_line->HasSwitch(switches::kForceAppMode) &&
|
| + command_line->HasSwitch(switches::kAppId);
|
| }
|
|
|
| } // namespace switches
|
|
|