| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 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 | 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 #ifndef CONTENT_SHELL_BROWSER_SHELL_H_ | 4 #ifndef CONTENT_SHELL_BROWSER_SHELL_H_ |
| 5 #define CONTENT_SHELL_BROWSER_SHELL_H_ | 5 #define CONTENT_SHELL_BROWSER_SHELL_H_ |
| 6 | 6 |
| 7 | 7 |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| 11 #include "base/callback_forward.h" | 11 #include "base/callback_forward.h" |
| 12 #include "base/memory/scoped_ptr.h" | 12 #include "base/memory/scoped_ptr.h" |
| 13 #include "base/strings/string_piece.h" | 13 #include "base/strings/string_piece.h" |
| 14 #include "build/build_config.h" |
| 14 #include "content/public/browser/web_contents_delegate.h" | 15 #include "content/public/browser/web_contents_delegate.h" |
| 15 #include "content/public/browser/web_contents_observer.h" | 16 #include "content/public/browser/web_contents_observer.h" |
| 16 #include "ipc/ipc_channel.h" | 17 #include "ipc/ipc_channel.h" |
| 17 #include "ui/gfx/native_widget_types.h" | 18 #include "ui/gfx/native_widget_types.h" |
| 18 #include "ui/gfx/size.h" | 19 #include "ui/gfx/size.h" |
| 19 | 20 |
| 20 #if defined(TOOLKIT_GTK) | 21 #if defined(TOOLKIT_GTK) |
| 21 #include <gtk/gtk.h> | 22 #include <gtk/gtk.h> |
| 22 #include "ui/base/gtk/gtk_signal.h" | 23 #include "ui/base/gtk/gtk_signal.h" |
| 23 | 24 |
| 24 typedef struct _GtkToolItem GtkToolItem; | 25 typedef struct _GtkToolItem GtkToolItem; |
| 25 #elif defined(OS_ANDROID) | 26 #elif defined(OS_ANDROID) |
| 26 #include "base/android/scoped_java_ref.h" | 27 #include "base/android/scoped_java_ref.h" |
| 27 #elif defined(USE_AURA) | 28 #elif defined(USE_AURA) |
| 28 #if defined(OS_CHROMEOS) | 29 #if defined(OS_CHROMEOS) |
| 29 namespace shell { | 30 namespace shell { |
| 30 class MinimalShell; | 31 class MinimalShell; |
| 31 } // namespace shell | 32 } // namespace shell |
| 32 #endif // defined(OS_CHROMEOS) | 33 #endif // defined(OS_CHROMEOS) |
| 33 namespace views { | 34 namespace views { |
| 34 class Widget; | 35 class Widget; |
| 35 class ViewsDelegate; | 36 class ViewsDelegate; |
| 36 } // namespace views | 37 } // namespace views |
| 37 #endif // defined(USE_AURA) | 38 #endif // defined(USE_AURA) |
| 38 | 39 |
| 39 class GURL; | 40 class GURL; |
| 40 namespace content { | 41 namespace content { |
| 41 | 42 |
| 43 #if defined(USE_AURA) |
| 44 class ShellAuraPlatformData; |
| 45 #endif |
| 46 |
| 42 class BrowserContext; | 47 class BrowserContext; |
| 43 class ShellDevToolsFrontend; | 48 class ShellDevToolsFrontend; |
| 44 class ShellJavaScriptDialogManager; | 49 class ShellJavaScriptDialogManager; |
| 45 class SiteInstance; | 50 class SiteInstance; |
| 46 class WebContents; | 51 class WebContents; |
| 47 | 52 |
| 48 // This represents one window of the Content Shell, i.e. all the UI including | 53 // This represents one window of the Content Shell, i.e. all the UI including |
| 49 // buttons and url bar, as well as the web content area. | 54 // buttons and url bar, as well as the web content area. |
| 50 class Shell : public WebContentsDelegate, | 55 class Shell : public WebContentsDelegate, |
| 51 public WebContentsObserver { | 56 public WebContentsObserver { |
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 252 | 257 |
| 253 int content_width_; | 258 int content_width_; |
| 254 int content_height_; | 259 int content_height_; |
| 255 int ui_elements_height_; // height of menubar, toolbar, etc. | 260 int ui_elements_height_; // height of menubar, toolbar, etc. |
| 256 #elif defined(OS_ANDROID) | 261 #elif defined(OS_ANDROID) |
| 257 base::android::ScopedJavaGlobalRef<jobject> java_object_; | 262 base::android::ScopedJavaGlobalRef<jobject> java_object_; |
| 258 #elif defined(USE_AURA) | 263 #elif defined(USE_AURA) |
| 259 #if defined(OS_CHROMEOS) | 264 #if defined(OS_CHROMEOS) |
| 260 static shell::MinimalShell* minimal_shell_; | 265 static shell::MinimalShell* minimal_shell_; |
| 261 #endif | 266 #endif |
| 267 #if defined(TOOLKIT_VIEWS) |
| 262 static views::ViewsDelegate* views_delegate_; | 268 static views::ViewsDelegate* views_delegate_; |
| 263 | 269 |
| 264 views::Widget* window_widget_; | 270 views::Widget* window_widget_; |
| 271 #else // defined(TOOLKIT_VIEWS) |
| 272 scoped_ptr<ShellAuraPlatformData> platform_; |
| 273 #endif // defined(TOOLKIT_VIEWS) |
| 265 #elif defined(OS_MACOSX) | 274 #elif defined(OS_MACOSX) |
| 266 int content_width_; | 275 int content_width_; |
| 267 int content_height_; | 276 int content_height_; |
| 268 #endif | 277 #endif |
| 269 | 278 |
| 270 bool headless_; | 279 bool headless_; |
| 271 | 280 |
| 272 // A container of all the open windows. We use a vector so we can keep track | 281 // A container of all the open windows. We use a vector so we can keep track |
| 273 // of ordering. | 282 // of ordering. |
| 274 static std::vector<Shell*> windows_; | 283 static std::vector<Shell*> windows_; |
| 275 | 284 |
| 276 static base::Callback<void(Shell*)> shell_created_callback_; | 285 static base::Callback<void(Shell*)> shell_created_callback_; |
| 277 | 286 |
| 278 // True if the destructur of Shell should post a quit closure on the current | 287 // True if the destructur of Shell should post a quit closure on the current |
| 279 // message loop if the destructed Shell object was the last one. | 288 // message loop if the destructed Shell object was the last one. |
| 280 static bool quit_message_loop_; | 289 static bool quit_message_loop_; |
| 281 }; | 290 }; |
| 282 | 291 |
| 283 } // namespace content | 292 } // namespace content |
| 284 | 293 |
| 285 #endif // CONTENT_SHELL_BROWSER_SHELL_H_ | 294 #endif // CONTENT_SHELL_BROWSER_SHELL_H_ |
| OLD | NEW |