| OLD | NEW |
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 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/debugger/devtools_manager.h" | 5 #include "chrome/browser/debugger/devtools_manager.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/auto_reset.h" | 9 #include "base/auto_reset.h" |
| 10 #include "base/message_loop.h" | 10 #include "base/message_loop.h" |
| (...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 335 DCHECK(window); | 335 DCHECK(window); |
| 336 window->SetDocked(docked); | 336 window->SetDocked(docked); |
| 337 } | 337 } |
| 338 | 338 |
| 339 void DevToolsManager::ToggleDevToolsWindow(RenderViewHost* inspected_rvh, | 339 void DevToolsManager::ToggleDevToolsWindow(RenderViewHost* inspected_rvh, |
| 340 bool force_open, | 340 bool force_open, |
| 341 bool open_console) { | 341 bool open_console) { |
| 342 bool do_open = force_open; | 342 bool do_open = force_open; |
| 343 DevToolsClientHost* host = GetDevToolsClientHostFor(inspected_rvh); | 343 DevToolsClientHost* host = GetDevToolsClientHostFor(inspected_rvh); |
| 344 if (!host) { | 344 if (!host) { |
| 345 #if defined OS_MACOSX | |
| 346 // TODO(pfeldman): Implement dock on Mac OS. | |
| 347 bool docked = false; | |
| 348 #else | |
| 349 bool docked = inspected_rvh->process()->profile()->GetPrefs()-> | 345 bool docked = inspected_rvh->process()->profile()->GetPrefs()-> |
| 350 GetBoolean(prefs::kDevToolsOpenDocked); | 346 GetBoolean(prefs::kDevToolsOpenDocked); |
| 351 #endif | |
| 352 host = new DevToolsWindow( | 347 host = new DevToolsWindow( |
| 353 inspected_rvh->site_instance()->browsing_instance()->profile(), | 348 inspected_rvh->site_instance()->browsing_instance()->profile(), |
| 354 inspected_rvh, | 349 inspected_rvh, |
| 355 docked); | 350 docked); |
| 356 RegisterDevToolsClientHostFor(inspected_rvh, host); | 351 RegisterDevToolsClientHostFor(inspected_rvh, host); |
| 357 do_open = true; | 352 do_open = true; |
| 358 } | 353 } |
| 359 DevToolsWindow* window = host->AsDevToolsWindow(); | 354 DevToolsWindow* window = host->AsDevToolsWindow(); |
| 360 if (!window) | 355 if (!window) |
| 361 return; | 356 return; |
| 362 | 357 |
| 363 // If window is docked and visible, we hide it on toggle. If window is | 358 // If window is docked and visible, we hide it on toggle. If window is |
| 364 // undocked, we show (activate) it. | 359 // undocked, we show (activate) it. |
| 365 if (!window->is_docked() || do_open) { | 360 if (!window->is_docked() || do_open) { |
| 366 AutoReset auto_reset_in_initial_show(&in_initial_show_, true); | 361 AutoReset auto_reset_in_initial_show(&in_initial_show_, true); |
| 367 window->Show(open_console); | 362 window->Show(open_console); |
| 368 } else { | 363 } else { |
| 369 CloseWindow(host); | 364 CloseWindow(host); |
| 370 } | 365 } |
| 371 } | 366 } |
| 372 | 367 |
| 373 void DevToolsManager::CloseWindow(DevToolsClientHost* client_host) { | 368 void DevToolsManager::CloseWindow(DevToolsClientHost* client_host) { |
| 374 RenderViewHost* inspected_rvh = GetInspectedRenderViewHost(client_host); | 369 RenderViewHost* inspected_rvh = GetInspectedRenderViewHost(client_host); |
| 375 DCHECK(inspected_rvh); | 370 DCHECK(inspected_rvh); |
| 376 SendDetachToAgent(inspected_rvh); | 371 SendDetachToAgent(inspected_rvh); |
| 377 | 372 |
| 378 UnregisterDevToolsClientHostFor(inspected_rvh); | 373 UnregisterDevToolsClientHostFor(inspected_rvh); |
| 379 } | 374 } |
| OLD | NEW |