]> git.sesse.net Git - casparcg/blobdiff - dependencies64/cef/linux/tests/shared/common/client_app.h
Upgrade CEF to 3.3029.1611.g44e39a8 / Chromium 58.0.3029.81.
[casparcg] / dependencies64 / cef / linux / tests / shared / common / client_app.h
diff --git a/dependencies64/cef/linux/tests/shared/common/client_app.h b/dependencies64/cef/linux/tests/shared/common/client_app.h
new file mode 100644 (file)
index 0000000..225f808
--- /dev/null
@@ -0,0 +1,49 @@
+// Copyright (c) 2013 The Chromium Embedded Framework Authors. All rights
+// reserved. Use of this source code is governed by a BSD-style license that
+// can be found in the LICENSE file.
+
+#ifndef CEF_TESTS_SHARED_COMMON_CLIENT_APP_H_
+#define CEF_TESTS_SHARED_COMMON_CLIENT_APP_H_
+#pragma once
+
+#include <vector>
+
+#include "include/cef_app.h"
+
+namespace client {
+
+// Base class for customizing process-type-based behavior.
+class ClientApp : public CefApp {
+ public:
+  ClientApp();
+
+  enum ProcessType {
+    BrowserProcess,
+    RendererProcess,
+    ZygoteProcess,
+    OtherProcess,
+  };
+
+  // Determine the process type based on command-line arguments.
+  static ProcessType GetProcessType(CefRefPtr<CefCommandLine> command_line);
+
+ protected:
+  // Schemes that will be registered with the global cookie manager.
+  std::vector<CefString> cookieable_schemes_;
+
+ private:
+  // Registers custom schemes. Implemented by cefclient in
+  // client_app_delegates_common.cc
+  static void RegisterCustomSchemes(CefRawPtr<CefSchemeRegistrar> registrar,
+                                    std::vector<CefString>& cookiable_schemes);
+
+  // CefApp methods.
+  void OnRegisterCustomSchemes(
+      CefRawPtr<CefSchemeRegistrar> registrar) OVERRIDE;
+
+  DISALLOW_COPY_AND_ASSIGN(ClientApp);
+};
+
+}  // namespace client
+
+#endif  // CEF_TESTS_SHARED_COMMON_CLIENT_APP_H_