| OLD | NEW | 
|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "chrome/browser/extensions/api/app_window/app_window_api.h" | 5 #include "chrome/browser/extensions/api/app_window/app_window_api.h" | 
| 6 | 6 | 
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" | 
| 8 #include "base/time.h" | 8 #include "base/time.h" | 
| 9 #include "base/values.h" | 9 #include "base/values.h" | 
| 10 #include "chrome/browser/debugger/devtools_window.h" | 10 #include "chrome/browser/debugger/devtools_window.h" | 
| (...skipping 15 matching lines...) Expand all  Loading... | 
| 26 namespace app_window = extensions::api::app_window; | 26 namespace app_window = extensions::api::app_window; | 
| 27 namespace Create = app_window::Create; | 27 namespace Create = app_window::Create; | 
| 28 | 28 | 
| 29 namespace extensions { | 29 namespace extensions { | 
| 30 | 30 | 
| 31 namespace app_window_constants { | 31 namespace app_window_constants { | 
| 32 const char kInvalidWindowId[] = | 32 const char kInvalidWindowId[] = | 
| 33     "The window id can not be more than 256 characters long."; | 33     "The window id can not be more than 256 characters long."; | 
| 34 } | 34 } | 
| 35 | 35 | 
|  | 36 const char kPanelTypeOption[] = "panel"; | 
| 36 const char kNoneFrameOption[] = "none"; | 37 const char kNoneFrameOption[] = "none"; | 
| 37 const char kHtmlFrameOption[] = "experimental-html"; | 38 const char kHtmlFrameOption[] = "experimental-html"; | 
| 38 | 39 | 
| 39 namespace { | 40 namespace { | 
| 40 | 41 | 
| 41 // Opens an inspector window and delays the response to the | 42 // Opens an inspector window and delays the response to the | 
| 42 // AppWindowCreateFunction until the DevToolsWindow has finished loading, and is | 43 // AppWindowCreateFunction until the DevToolsWindow has finished loading, and is | 
| 43 // ready to stop on breakpoints in the callback. | 44 // ready to stop on breakpoints in the callback. | 
| 44 class DevToolsRestorer : public content::NotificationObserver { | 45 class DevToolsRestorer : public content::NotificationObserver { | 
| 45  public: | 46  public: | 
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 137       if (bounds->width.get()) | 138       if (bounds->width.get()) | 
| 138         create_params.bounds.set_width(*bounds->width.get()); | 139         create_params.bounds.set_width(*bounds->width.get()); | 
| 139       if (bounds->height.get()) | 140       if (bounds->height.get()) | 
| 140         create_params.bounds.set_height(*bounds->height.get()); | 141         create_params.bounds.set_height(*bounds->height.get()); | 
| 141       if (bounds->left.get()) | 142       if (bounds->left.get()) | 
| 142         create_params.bounds.set_x(*bounds->left.get()); | 143         create_params.bounds.set_x(*bounds->left.get()); | 
| 143       if (bounds->top.get()) | 144       if (bounds->top.get()) | 
| 144         create_params.bounds.set_y(*bounds->top.get()); | 145         create_params.bounds.set_y(*bounds->top.get()); | 
| 145     } | 146     } | 
| 146 | 147 | 
|  | 148     if (CommandLine::ForCurrentProcess()->HasSwitch( | 
|  | 149             switches::kEnableExperimentalExtensionApis)) { | 
|  | 150       if (options->type.get()) { | 
|  | 151         if (*options->type == kPanelTypeOption) | 
|  | 152           create_params.window_type = ShellWindow::WINDOW_TYPE_PANEL; | 
|  | 153       } | 
|  | 154     } | 
|  | 155 | 
| 147     if (options->frame.get()) { | 156     if (options->frame.get()) { | 
| 148       if (*options->frame == kHtmlFrameOption && | 157       if (*options->frame == kHtmlFrameOption && | 
| 149           CommandLine::ForCurrentProcess()->HasSwitch( | 158           CommandLine::ForCurrentProcess()->HasSwitch( | 
| 150               switches::kEnableExperimentalExtensionApis)) { | 159               switches::kEnableExperimentalExtensionApis)) { | 
| 151         create_params.frame = ShellWindow::CreateParams::FRAME_NONE; | 160         create_params.frame = ShellWindow::FRAME_NONE; | 
| 152         inject_html_titlebar = true; | 161         inject_html_titlebar = true; | 
| 153       } else if (*options->frame == kNoneFrameOption) { | 162       } else if (*options->frame == kNoneFrameOption) { | 
| 154         create_params.frame = ShellWindow::CreateParams::FRAME_NONE; | 163         create_params.frame = ShellWindow::FRAME_NONE; | 
| 155       } else { | 164       } else { | 
| 156         create_params.frame = ShellWindow::CreateParams::FRAME_CHROME; | 165         create_params.frame = ShellWindow::FRAME_CHROME; | 
| 157       } | 166       } | 
| 158     } | 167     } | 
| 159 | 168 | 
| 160     gfx::Size& minimum_size = create_params.minimum_size; | 169     gfx::Size& minimum_size = create_params.minimum_size; | 
| 161     if (options->min_width.get()) | 170     if (options->min_width.get()) | 
| 162       minimum_size.set_width(*options->min_width); | 171       minimum_size.set_width(*options->min_width); | 
| 163     if (options->min_height.get()) | 172     if (options->min_height.get()) | 
| 164       minimum_size.set_height(*options->min_height); | 173       minimum_size.set_height(*options->min_height); | 
| 165     gfx::Size& maximum_size = create_params.maximum_size; | 174     gfx::Size& maximum_size = create_params.maximum_size; | 
| 166     if (options->max_width.get()) | 175     if (options->max_width.get()) | 
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 201   if (ShellWindowRegistry::Get(profile())->HadDevToolsAttached(created_view)) { | 210   if (ShellWindowRegistry::Get(profile())->HadDevToolsAttached(created_view)) { | 
| 202     new DevToolsRestorer(this, created_view); | 211     new DevToolsRestorer(this, created_view); | 
| 203     return true; | 212     return true; | 
| 204   } | 213   } | 
| 205 | 214 | 
| 206   SendResponse(true); | 215   SendResponse(true); | 
| 207   return true; | 216   return true; | 
| 208 } | 217 } | 
| 209 | 218 | 
| 210 }  // namespace extensions | 219 }  // namespace extensions | 
| OLD | NEW | 
|---|