Reland the ULONG -> SIZE_T change from 317177
[chromium-blink-merge.git] / extensions / browser / api / app_window / app_window_api.h
blobe8c9c811d7748d5b6aa1d7f489986a248a8a308b
1 // Copyright (c) 2012 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.
5 #ifndef EXTENSIONS_BROWSER_API_APP_WINDOW_APP_WINDOW_API_H_
6 #define EXTENSIONS_BROWSER_API_APP_WINDOW_APP_WINDOW_API_H_
8 #include "extensions/browser/app_window/app_window.h"
9 #include "extensions/browser/extension_function.h"
11 namespace extensions {
13 namespace core_api {
14 namespace app_window {
15 struct CreateWindowOptions;
19 class AppWindowCreateFunction : public AsyncExtensionFunction {
20 public:
21 AppWindowCreateFunction();
22 DECLARE_EXTENSION_FUNCTION("app.window.create", APP_WINDOW_CREATE)
24 protected:
25 ~AppWindowCreateFunction() override {}
26 bool RunAsync() override;
28 private:
29 bool GetBoundsSpec(
30 const extensions::core_api::app_window::CreateWindowOptions& options,
31 AppWindow::CreateParams* params,
32 std::string* error);
34 AppWindow::Frame GetFrameFromString(const std::string& frame_string);
35 bool GetFrameOptions(
36 const extensions::core_api::app_window::CreateWindowOptions& options,
37 AppWindow::CreateParams* create_params);
38 void UpdateFrameOptionsForChannel(AppWindow::CreateParams* create_params);
40 bool inject_html_titlebar_;
43 } // namespace extensions
45 #endif // EXTENSIONS_BROWSER_API_APP_WINDOW_APP_WINDOW_API_H_