1ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved.
23345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// Use of this source code is governed by a BSD-style license that can be
33345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// found in the LICENSE file.
43345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick
53345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#include "chrome/common/switch_utils.h"
63345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick
7ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen#include "base/basictypes.h"
83345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick#include "chrome/common/chrome_switches.h"
93345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick
103345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merricknamespace switches {
113345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick
123345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// Switches enumerated here will be removed when a background instance of
133345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// Chrome restarts itself. If your key is designed to only be used once,
143345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// or if it does not make sense when restarting a background instance to
153345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick// pick up an automatic update, be sure to add it to this list.
163345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickconst char* const kSwitchesToRemoveOnAutorestart[] = {
173345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick  switches::kApp,
18201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  switches::kAppId,
193345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick  switches::kFirstRun,
203345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick  switches::kImport,
213345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick  switches::kImportFromFile,
223345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick  switches::kMakeDefaultBrowser
233345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick};
243345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick
253345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrickvoid RemoveSwitchesForAutostart(
263345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick    std::map<std::string, CommandLine::StringType>* switch_list) {
273345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick  for (size_t i = 0; i < arraysize(kSwitchesToRemoveOnAutorestart); ++i)
283345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick    switch_list->erase(kSwitchesToRemoveOnAutorestart[i]);
293345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick}
303345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick
313345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick}  // namespace switches
32