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/devtools/devtools_window.h" | 5 #include "chrome/browser/devtools/devtools_window.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <utility> |
8 | 9 |
9 #include "base/command_line.h" | 10 #include "base/command_line.h" |
10 #include "base/json/json_reader.h" | 11 #include "base/json/json_reader.h" |
11 #include "base/macros.h" | 12 #include "base/macros.h" |
| 13 #include "base/memory/ptr_util.h" |
12 #include "base/metrics/histogram_macros.h" | 14 #include "base/metrics/histogram_macros.h" |
13 #include "base/metrics/user_metrics.h" | 15 #include "base/metrics/user_metrics.h" |
14 #include "base/time/time.h" | 16 #include "base/time/time.h" |
15 #include "base/values.h" | 17 #include "base/values.h" |
16 #include "chrome/browser/certificate_viewer.h" | 18 #include "chrome/browser/certificate_viewer.h" |
17 #include "chrome/browser/data_use_measurement/data_use_web_contents_observer.h" | 19 #include "chrome/browser/data_use_measurement/data_use_web_contents_observer.h" |
18 #include "chrome/browser/file_select_helper.h" | 20 #include "chrome/browser/file_select_helper.h" |
19 #include "chrome/browser/infobars/infobar_service.h" | 21 #include "chrome/browser/infobars/infobar_service.h" |
20 #include "chrome/browser/profiles/profile.h" | 22 #include "chrome/browser/profiles/profile.h" |
21 #include "chrome/browser/sessions/session_tab_helper.h" | 23 #include "chrome/browser/sessions/session_tab_helper.h" |
(...skipping 1278 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1300 ready_for_test_callback_.Run(); | 1302 ready_for_test_callback_.Run(); |
1301 ready_for_test_callback_ = base::Closure(); | 1303 ready_for_test_callback_ = base::Closure(); |
1302 } | 1304 } |
1303 } | 1305 } |
1304 | 1306 |
1305 void DevToolsWindow::CreateDevToolsBrowser() { | 1307 void DevToolsWindow::CreateDevToolsBrowser() { |
1306 PrefService* prefs = profile_->GetPrefs(); | 1308 PrefService* prefs = profile_->GetPrefs(); |
1307 if (!prefs->GetDictionary(prefs::kAppWindowPlacement)->HasKey(kDevToolsApp)) { | 1309 if (!prefs->GetDictionary(prefs::kAppWindowPlacement)->HasKey(kDevToolsApp)) { |
1308 DictionaryPrefUpdate update(prefs, prefs::kAppWindowPlacement); | 1310 DictionaryPrefUpdate update(prefs, prefs::kAppWindowPlacement); |
1309 base::DictionaryValue* wp_prefs = update.Get(); | 1311 base::DictionaryValue* wp_prefs = update.Get(); |
1310 base::DictionaryValue* dev_tools_defaults = new base::DictionaryValue; | 1312 auto dev_tools_defaults = base::MakeUnique<base::DictionaryValue>(); |
1311 wp_prefs->Set(kDevToolsApp, dev_tools_defaults); | |
1312 dev_tools_defaults->SetInteger("left", 100); | 1313 dev_tools_defaults->SetInteger("left", 100); |
1313 dev_tools_defaults->SetInteger("top", 100); | 1314 dev_tools_defaults->SetInteger("top", 100); |
1314 dev_tools_defaults->SetInteger("right", 740); | 1315 dev_tools_defaults->SetInteger("right", 740); |
1315 dev_tools_defaults->SetInteger("bottom", 740); | 1316 dev_tools_defaults->SetInteger("bottom", 740); |
1316 dev_tools_defaults->SetBoolean("maximized", false); | 1317 dev_tools_defaults->SetBoolean("maximized", false); |
1317 dev_tools_defaults->SetBoolean("always_on_top", false); | 1318 dev_tools_defaults->SetBoolean("always_on_top", false); |
| 1319 wp_prefs->Set(kDevToolsApp, std::move(dev_tools_defaults)); |
1318 } | 1320 } |
1319 | 1321 |
1320 browser_ = new Browser(Browser::CreateParams::CreateForDevTools(profile_)); | 1322 browser_ = new Browser(Browser::CreateParams::CreateForDevTools(profile_)); |
1321 browser_->tab_strip_model()->AddWebContents( | 1323 browser_->tab_strip_model()->AddWebContents( |
1322 main_web_contents_, -1, ui::PAGE_TRANSITION_AUTO_TOPLEVEL, | 1324 main_web_contents_, -1, ui::PAGE_TRANSITION_AUTO_TOPLEVEL, |
1323 TabStripModel::ADD_ACTIVE); | 1325 TabStripModel::ADD_ACTIVE); |
1324 main_web_contents_->GetRenderViewHost()->SyncRendererPrefs(); | 1326 main_web_contents_->GetRenderViewHost()->SyncRendererPrefs(); |
1325 } | 1327 } |
1326 | 1328 |
1327 BrowserWindow* DevToolsWindow::GetInspectedBrowserWindow() { | 1329 BrowserWindow* DevToolsWindow::GetInspectedBrowserWindow() { |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1407 bool DevToolsWindow::ReloadInspectedWebContents(bool bypass_cache) { | 1409 bool DevToolsWindow::ReloadInspectedWebContents(bool bypass_cache) { |
1408 // Only route reload via front-end if the agent is attached. | 1410 // Only route reload via front-end if the agent is attached. |
1409 WebContents* wc = GetInspectedWebContents(); | 1411 WebContents* wc = GetInspectedWebContents(); |
1410 if (!wc || wc->GetCrashedStatus() != base::TERMINATION_STATUS_STILL_RUNNING) | 1412 if (!wc || wc->GetCrashedStatus() != base::TERMINATION_STATUS_STILL_RUNNING) |
1411 return false; | 1413 return false; |
1412 base::Value bypass_cache_value(bypass_cache); | 1414 base::Value bypass_cache_value(bypass_cache); |
1413 bindings_->CallClientFunction("DevToolsAPI.reloadInspectedPage", | 1415 bindings_->CallClientFunction("DevToolsAPI.reloadInspectedPage", |
1414 &bypass_cache_value, nullptr, nullptr); | 1416 &bypass_cache_value, nullptr, nullptr); |
1415 return true; | 1417 return true; |
1416 } | 1418 } |
OLD | NEW |