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 | 8 |
9 #include "base/json/json_reader.h" | 9 #include "base/json/json_reader.h" |
10 #include "base/metrics/histogram.h" | 10 #include "base/metrics/histogram.h" |
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
315 DCHECK(it != instances->end()); | 315 DCHECK(it != instances->end()); |
316 instances->erase(it); | 316 instances->erase(it); |
317 | 317 |
318 if (!close_callback_.is_null()) { | 318 if (!close_callback_.is_null()) { |
319 close_callback_.Run(); | 319 close_callback_.Run(); |
320 close_callback_ = base::Closure(); | 320 close_callback_ = base::Closure(); |
321 } | 321 } |
322 } | 322 } |
323 | 323 |
324 // static | 324 // static |
325 std::string DevToolsWindow::GetDevToolsWindowPlacementPrefKey() { | |
326 return std::string(prefs::kBrowserWindowPlacement) + "_" + | |
327 std::string(kDevToolsApp); | |
328 } | |
329 | |
330 // static | |
331 void DevToolsWindow::RegisterProfilePrefs( | 325 void DevToolsWindow::RegisterProfilePrefs( |
332 user_prefs::PrefRegistrySyncable* registry) { | 326 user_prefs::PrefRegistrySyncable* registry) { |
333 registry->RegisterDictionaryPref( | 327 registry->RegisterDictionaryPref( |
334 prefs::kDevToolsEditedFiles, | 328 prefs::kDevToolsEditedFiles, |
335 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 329 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
336 registry->RegisterDictionaryPref( | 330 registry->RegisterDictionaryPref( |
337 prefs::kDevToolsFileSystemPaths, | 331 prefs::kDevToolsFileSystemPaths, |
338 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 332 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
339 registry->RegisterStringPref( | 333 registry->RegisterStringPref( |
340 prefs::kDevToolsAdbKey, std::string(), | 334 prefs::kDevToolsAdbKey, std::string(), |
341 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 335 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
342 | 336 |
343 registry->RegisterDictionaryPref( | |
344 GetDevToolsWindowPlacementPrefKey().c_str(), | |
345 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | |
346 | |
347 registry->RegisterBooleanPref( | 337 registry->RegisterBooleanPref( |
348 prefs::kDevToolsDiscoverUsbDevicesEnabled, | 338 prefs::kDevToolsDiscoverUsbDevicesEnabled, |
349 true, | 339 true, |
350 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 340 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
351 registry->RegisterBooleanPref( | 341 registry->RegisterBooleanPref( |
352 prefs::kDevToolsPortForwardingEnabled, | 342 prefs::kDevToolsPortForwardingEnabled, |
353 false, | 343 false, |
354 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); | 344 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
355 registry->RegisterBooleanPref( | 345 registry->RegisterBooleanPref( |
356 prefs::kDevToolsPortForwardingDefaultSet, | 346 prefs::kDevToolsPortForwardingDefaultSet, |
(...skipping 773 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1130 if (life_stage_ != kLoadCompleted) { | 1120 if (life_stage_ != kLoadCompleted) { |
1131 // Load is completed when both kIsDockedSet and kOnLoadFired happened. | 1121 // Load is completed when both kIsDockedSet and kOnLoadFired happened. |
1132 // Here we set kOnLoadFired. | 1122 // Here we set kOnLoadFired. |
1133 life_stage_ = life_stage_ == kIsDockedSet ? kLoadCompleted : kOnLoadFired; | 1123 life_stage_ = life_stage_ == kIsDockedSet ? kLoadCompleted : kOnLoadFired; |
1134 } | 1124 } |
1135 if (life_stage_ == kLoadCompleted) | 1125 if (life_stage_ == kLoadCompleted) |
1136 LoadCompleted(); | 1126 LoadCompleted(); |
1137 } | 1127 } |
1138 | 1128 |
1139 void DevToolsWindow::CreateDevToolsBrowser() { | 1129 void DevToolsWindow::CreateDevToolsBrowser() { |
1140 std::string wp_key = GetDevToolsWindowPlacementPrefKey(); | 1130 const char* wp_key = prefs::kAppWindowPlacement; |
gab
2014/09/05 00:53:10
Inlining the constant will be more readable IMO.
dgrogan
2014/09/06 00:47:06
Done.
| |
1141 PrefService* prefs = profile_->GetPrefs(); | 1131 PrefService* prefs = profile_->GetPrefs(); |
1142 const base::DictionaryValue* wp_pref = prefs->GetDictionary(wp_key.c_str()); | 1132 if (!prefs->GetDictionary(wp_key)->HasKey(kDevToolsApp)) { |
1143 if (!wp_pref || wp_pref->empty()) { | 1133 DictionaryPrefUpdate update(prefs, wp_key); |
1144 DictionaryPrefUpdate update(prefs, wp_key.c_str()); | 1134 base::DictionaryValue* wp_prefs = update.Get(); |
1145 base::DictionaryValue* defaults = update.Get(); | 1135 base::DictionaryValue* dev_tools_defaults = new base::DictionaryValue; |
1146 defaults->SetInteger("left", 100); | 1136 wp_prefs->Set(kDevToolsApp, dev_tools_defaults); |
1147 defaults->SetInteger("top", 100); | 1137 dev_tools_defaults->SetInteger("left", 100); |
1148 defaults->SetInteger("right", 740); | 1138 dev_tools_defaults->SetInteger("top", 100); |
1149 defaults->SetInteger("bottom", 740); | 1139 dev_tools_defaults->SetInteger("right", 740); |
1150 defaults->SetBoolean("maximized", false); | 1140 dev_tools_defaults->SetInteger("bottom", 740); |
1151 defaults->SetBoolean("always_on_top", false); | 1141 dev_tools_defaults->SetBoolean("maximized", false); |
1142 dev_tools_defaults->SetBoolean("always_on_top", false); | |
1152 } | 1143 } |
1153 | 1144 |
1154 browser_ = new Browser(Browser::CreateParams::CreateForDevTools( | 1145 browser_ = new Browser(Browser::CreateParams::CreateForDevTools( |
1155 profile_, | 1146 profile_, |
1156 chrome::GetHostDesktopTypeForNativeView( | 1147 chrome::GetHostDesktopTypeForNativeView( |
1157 main_web_contents_->GetNativeView()))); | 1148 main_web_contents_->GetNativeView()))); |
1158 browser_->tab_strip_model()->AddWebContents( | 1149 browser_->tab_strip_model()->AddWebContents( |
1159 main_web_contents_, -1, content::PAGE_TRANSITION_AUTO_TOPLEVEL, | 1150 main_web_contents_, -1, content::PAGE_TRANSITION_AUTO_TOPLEVEL, |
1160 TabStripModel::ADD_ACTIVE); | 1151 TabStripModel::ADD_ACTIVE); |
1161 main_web_contents_->GetRenderViewHost()->SyncRendererPrefs(); | 1152 main_web_contents_->GetRenderViewHost()->SyncRendererPrefs(); |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1236 closure.Run(); | 1227 closure.Run(); |
1237 return; | 1228 return; |
1238 } | 1229 } |
1239 load_completed_callback_ = closure; | 1230 load_completed_callback_ = closure; |
1240 } | 1231 } |
1241 | 1232 |
1242 bool DevToolsWindow::ForwardKeyboardEvent( | 1233 bool DevToolsWindow::ForwardKeyboardEvent( |
1243 const content::NativeWebKeyboardEvent& event) { | 1234 const content::NativeWebKeyboardEvent& event) { |
1244 return event_forwarder_->ForwardEvent(event); | 1235 return event_forwarder_->ForwardEvent(event); |
1245 } | 1236 } |
OLD | NEW |