1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef APPS_SHELL_BROWSER_SHELL_BROWSER_CONTEXT_H_ 6 #define APPS_SHELL_BROWSER_SHELL_BROWSER_CONTEXT_H_ 7 8 #include "base/compiler_specific.h" 9 #include "content/shell/browser/shell_browser_context.h" 10 11 namespace apps { 12 13 // The BrowserContext used by the content, apps and extensions systems in 14 // app_shell. 15 class ShellBrowserContext : public content::ShellBrowserContext { 16 public: 17 ShellBrowserContext(); 18 virtual ~ShellBrowserContext(); 19 20 // HACK: Pad the virtual function table so we trip an assertion if someone 21 // tries to use |this| as a Profile. 22 virtual void ProfileFunctionCallOnNonProfileBrowserContext1(); 23 virtual void ProfileFunctionCallOnNonProfileBrowserContext2(); 24 virtual void ProfileFunctionCallOnNonProfileBrowserContext3(); 25 virtual void ProfileFunctionCallOnNonProfileBrowserContext4(); 26 virtual void ProfileFunctionCallOnNonProfileBrowserContext5(); 27 virtual void ProfileFunctionCallOnNonProfileBrowserContext6(); 28 virtual void ProfileFunctionCallOnNonProfileBrowserContext7(); 29 virtual void ProfileFunctionCallOnNonProfileBrowserContext8(); 30 virtual void ProfileFunctionCallOnNonProfileBrowserContext9(); 31 virtual void ProfileFunctionCallOnNonProfileBrowserContext10(); 32 virtual void ProfileFunctionCallOnNonProfileBrowserContext11(); 33 virtual void ProfileFunctionCallOnNonProfileBrowserContext12(); 34 virtual void ProfileFunctionCallOnNonProfileBrowserContext13(); 35 virtual void ProfileFunctionCallOnNonProfileBrowserContext14(); 36 virtual void ProfileFunctionCallOnNonProfileBrowserContext15(); 37 38 private: 39 DISALLOW_COPY_AND_ASSIGN(ShellBrowserContext); 40 }; 41 42 } // namespace apps 43 44 #endif // APPS_SHELL_BROWSER_SHELL_BROWSER_CONTEXT_H_ 45