OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 /** | 5 /** |
6 * @constructor | 6 * @constructor |
7 * @extends {WebInspector.VBox} | 7 * @extends {WebInspector.VBox} |
8 * @implements {WebInspector.OverridesSupport.PageResizer} | 8 * @implements {WebInspector.OverridesSupport.PageResizer} |
9 * @param {!WebInspector.InspectedPagePlaceholder} inspectedPagePlaceholder | 9 * @param {!WebInspector.InspectedPagePlaceholder} inspectedPagePlaceholder |
10 */ | 10 */ |
(...skipping 17 matching lines...) Expand all Loading... |
28 this._warningMessage = this._canvasContainer.element.createChild("div", "res
ponsive-design-warning hidden"); | 28 this._warningMessage = this._canvasContainer.element.createChild("div", "res
ponsive-design-warning hidden"); |
29 this._warningMessage.createChild("div", "warning-icon-small"); | 29 this._warningMessage.createChild("div", "warning-icon-small"); |
30 this._warningMessage.createChild("span"); | 30 this._warningMessage.createChild("span"); |
31 var warningCloseButton = this._warningMessage.createChild("div", "close-butt
on"); | 31 var warningCloseButton = this._warningMessage.createChild("div", "close-butt
on"); |
32 warningCloseButton.addEventListener("click", this._closeOverridesWarning.bin
d(this), false); | 32 warningCloseButton.addEventListener("click", this._closeOverridesWarning.bin
d(this), false); |
33 WebInspector.overridesSupport.addEventListener(WebInspector.OverridesSupport
.Events.OverridesWarningUpdated, this._overridesWarningUpdated, this); | 33 WebInspector.overridesSupport.addEventListener(WebInspector.OverridesSupport
.Events.OverridesWarningUpdated, this._overridesWarningUpdated, this); |
34 | 34 |
35 this._slidersContainer = this._canvasContainer.element.createChild("div", "v
box responsive-design-sliders-container"); | 35 this._slidersContainer = this._canvasContainer.element.createChild("div", "v
box responsive-design-sliders-container"); |
36 var hbox = this._slidersContainer.createChild("div", "hbox flex-auto"); | 36 var hbox = this._slidersContainer.createChild("div", "hbox flex-auto"); |
37 this._heightSliderContainer = this._slidersContainer.createChild("div", "hbo
x responsive-design-slider-height"); | 37 this._heightSliderContainer = this._slidersContainer.createChild("div", "hbo
x responsive-design-slider-height"); |
38 this._resolutionHeightLabel = this._heightSliderContainer.createChild("div",
"responsive-design-resolution-label responsive-design-resolution-height"); | |
39 this._pageContainer = hbox.createChild("div", "vbox flex-auto"); | 38 this._pageContainer = hbox.createChild("div", "vbox flex-auto"); |
40 this._widthSliderContainer = hbox.createChild("div", "vbox responsive-design
-slider-width"); | 39 this._widthSliderContainer = hbox.createChild("div", "vbox responsive-design
-slider-width"); |
41 this._resolutionWidthLabel = this._widthSliderContainer.createChild("div", "
responsive-design-resolution-label responsive-design-resolution-width"); | |
42 | 40 |
43 this._widthSlider = this._widthSliderContainer.createChild("div", "responsiv
e-design-slider-thumb"); | 41 this._widthSlider = this._widthSliderContainer.createChild("div", "responsiv
e-design-slider-thumb"); |
44 this._widthSlider.createChild("div", "responsive-design-thumb-handle"); | 42 this._widthSlider.createChild("div", "responsive-design-thumb-handle"); |
45 this._createResizer(this._widthSlider, false); | 43 this._createResizer(this._widthSlider, false); |
46 this._heightSlider = this._heightSliderContainer.createChild("div", "respons
ive-design-slider-thumb"); | 44 this._heightSlider = this._heightSliderContainer.createChild("div", "respons
ive-design-slider-thumb"); |
47 this._heightSlider.createChild("div", "responsive-design-thumb-handle"); | 45 this._heightSlider.createChild("div", "responsive-design-thumb-handle"); |
48 this._createResizer(this._heightSlider, true); | 46 this._createResizer(this._heightSlider, true); |
49 | 47 |
50 this._inspectedPagePlaceholder = inspectedPagePlaceholder; | 48 this._inspectedPagePlaceholder = inspectedPagePlaceholder; |
51 inspectedPagePlaceholder.show(this.element); | 49 inspectedPagePlaceholder.show(this.element); |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 * WebInspector.OverridesSupport.PageResizer override. | 100 * WebInspector.OverridesSupport.PageResizer override. |
103 * @param {number} dipWidth | 101 * @param {number} dipWidth |
104 * @param {number} dipHeight | 102 * @param {number} dipHeight |
105 * @param {number} scale | 103 * @param {number} scale |
106 */ | 104 */ |
107 update: function(dipWidth, dipHeight, scale) | 105 update: function(dipWidth, dipHeight, scale) |
108 { | 106 { |
109 this._scale = scale; | 107 this._scale = scale; |
110 this._dipWidth = dipWidth; | 108 this._dipWidth = dipWidth; |
111 this._dipHeight = dipHeight; | 109 this._dipHeight = dipHeight; |
112 this._resolutionWidthLabel.textContent = dipWidth + "px"; | |
113 this._resolutionHeightLabel.textContent = dipHeight + "px"; | |
114 this._updateUI(); | 110 this._updateUI(); |
115 }, | 111 }, |
116 | 112 |
117 /** | 113 /** |
118 * WebInspector.OverridesSupport.PageResizer override. | 114 * WebInspector.OverridesSupport.PageResizer override. |
119 * @return {!Size} | 115 * @return {!Size} |
120 */ | 116 */ |
121 availableDipSize: function() | 117 availableDipSize: function() |
122 { | 118 { |
123 if (typeof this._availableSize === "undefined") { | 119 if (typeof this._availableSize === "undefined") { |
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
373 }, | 369 }, |
374 | 370 |
375 _onZoomChanged: function() | 371 _onZoomChanged: function() |
376 { | 372 { |
377 this._updateUI(); | 373 this._updateUI(); |
378 }, | 374 }, |
379 | 375 |
380 _createToolbar: function() | 376 _createToolbar: function() |
381 { | 377 { |
382 this._toolbarElement = this._responsiveDesignContainer.element.createChi
ld("div", "responsive-design-toolbar"); | 378 this._toolbarElement = this._responsiveDesignContainer.element.createChi
ld("div", "responsive-design-toolbar"); |
383 this._createExpandSection(); | 379 this._createButtonsSection(); |
384 this._toolbarElement.createChild("div", "responsive-design-separator"); | 380 this._toolbarElement.createChild("div", "responsive-design-separator"); |
385 this._createDeviceSection(); | 381 this._createDeviceSection(); |
386 if (WebInspector.experimentsSettings.networkConditions.isEnabled()) { | 382 if (WebInspector.experimentsSettings.networkConditions.isEnabled()) { |
387 this._toolbarElement.createChild("div", "responsive-design-separator
"); | 383 this._toolbarElement.createChild("div", "responsive-design-separator
"); |
388 this._createNetworkSection(); | 384 this._createNetworkSection(); |
389 } | 385 } |
390 this._toolbarElement.createChild("div", "responsive-design-separator"); | 386 this._toolbarElement.createChild("div", "responsive-design-separator"); |
391 | |
392 this._toolbarExpandedChanged(); | |
393 }, | 387 }, |
394 | 388 |
395 _createExpandSection: function() | 389 _createButtonsSection: function() |
396 { | 390 { |
397 this.toolbarExpandedSetting = WebInspector.settings.createSetting("respo
nsiveDesignToolbarExpanded", false); | 391 var buttonsSection = this._toolbarElement.createChild("div", "responsive
-design-section responsive-design-section-buttons"); |
398 var expandSection = this._toolbarElement.createChild("div", "responsive-
design-section responsive-design-section-expand"); | |
399 this._expandButton = expandSection.createChild("div", "responsive-design
-button"); | |
400 this._expandButton.createChild("div", "responsive-design-icon responsive
-design-icon-expand"); | |
401 this._expandButton.createChild("span"); | |
402 this._expandButton.addEventListener("click", this._toggleToolbarExpanded
.bind(this), false); | |
403 this.toolbarExpandedSetting.addChangeListener(this._toolbarExpandedChang
ed, this); | |
404 }, | |
405 | 392 |
406 _toggleToolbarExpanded: function() | 393 var resetButton = new WebInspector.StatusBarButton(WebInspector.UIString
("Reset all overrides."), "clear-status-bar-item"); |
407 { | 394 buttonsSection.appendChild(resetButton.element); |
408 this.toolbarExpandedSetting.set(!this.toolbarExpandedSetting.get()); | 395 resetButton.addEventListener("click", WebInspector.overridesSupport.rese
t, WebInspector.overridesSupport); |
409 }, | |
410 | 396 |
411 _toolbarExpandedChanged: function() | 397 var moreButton = buttonsSection.createChild("button", "responsive-design
-more-button"); |
412 { | 398 moreButton.title = WebInspector.UIString("More overrides"); |
413 var expanded = this.toolbarExpandedSetting.get(); | 399 moreButton.addEventListener("click", this._showEmulationInDrawer.bind(th
is), false); |
414 this._expandButton.querySelector("span").textContent = WebInspector.UISt
ring(expanded ? "Less" : "More"); | 400 moreButton.textContent = "\u2026"; |
415 this._toolbarElement.classList.toggle("expanded", expanded); | |
416 this.onResize(); | |
417 }, | 401 }, |
418 | 402 |
419 _createDeviceSection: function() | 403 _createDeviceSection: function() |
420 { | 404 { |
421 var deviceSection = this._toolbarElement.createChild("div", "responsive-
design-section responsive-design-section-device"); | 405 var deviceSection = this._toolbarElement.createChild("div", "responsive-
design-section responsive-design-section-device"); |
422 | 406 |
423 // Device. | 407 // Device. |
424 var deviceElement = deviceSection.createChild("div", "responsive-design-
suite").createChild("div"); | 408 var deviceElement = deviceSection.createChild("div", "responsive-design-
suite").createChild("div"); |
425 var fieldsetElement = deviceElement.createChild("fieldset"); | 409 var fieldsetElement = deviceElement.createChild("fieldset"); |
426 fieldsetElement.createChild("label").textContent = WebInspector.UIString
("Device"); | 410 fieldsetElement.createChild("label").textContent = WebInspector.UIString
("Device"); |
427 fieldsetElement.appendChild(WebInspector.overridesSupport.createDeviceSe
lect(document)); | 411 fieldsetElement.appendChild(WebInspector.overridesSupport.createDeviceSe
lect(document)); |
428 | 412 |
429 var separator = deviceSection.createChild("div", "responsive-design-sect
ion-separator expanded-only"); | 413 var separator = deviceSection.createChild("div", "responsive-design-sect
ion-separator"); |
430 | 414 |
431 var detailsElement = deviceSection.createChild("div", "responsive-design
-suite expanded-only"); | 415 var detailsElement = deviceSection.createChild("div", "responsive-design
-suite"); |
432 | 416 |
433 // Dimensions. | 417 // Dimensions. |
434 var screenElement = detailsElement.createChild("div", ""); | 418 var screenElement = detailsElement.createChild("div", ""); |
435 fieldsetElement = screenElement.createChild("fieldset"); | 419 fieldsetElement = screenElement.createChild("fieldset"); |
436 fieldsetElement.createChild("div", "responsive-design-icon responsive-de
sign-icon-resolution").title = WebInspector.UIString("Screen resolution"); | 420 fieldsetElement.createChild("div", "responsive-design-icon responsive-de
sign-icon-resolution").title = WebInspector.UIString("Screen resolution"); |
437 fieldsetElement.appendChild(WebInspector.SettingsUI.createSettingInputFi
eld("", WebInspector.overridesSupport.settings.deviceWidth, true, 4, "3em", WebI
nspector.OverridesSupport.deviceSizeValidator, true, true, WebInspector.UIString
("--"))); | 421 fieldsetElement.appendChild(WebInspector.SettingsUI.createSettingInputFi
eld("", WebInspector.overridesSupport.settings.deviceWidth, true, 4, "3em", WebI
nspector.OverridesSupport.deviceSizeValidator, true, true, WebInspector.UIString
("\u2013"))); |
438 fieldsetElement.appendChild(document.createTextNode(" \u00D7 ")); | 422 fieldsetElement.appendChild(document.createTextNode(" \u00D7 ")); |
439 fieldsetElement.appendChild(WebInspector.SettingsUI.createSettingInputFi
eld("", WebInspector.overridesSupport.settings.deviceHeight, true, 4, "3em", Web
Inspector.OverridesSupport.deviceSizeValidator, true, true, WebInspector.UIStrin
g("--"))); | 423 fieldsetElement.appendChild(WebInspector.SettingsUI.createSettingInputFi
eld("", WebInspector.overridesSupport.settings.deviceHeight, true, 4, "3em", Web
Inspector.OverridesSupport.deviceSizeValidator, true, true, WebInspector.UIStrin
g("\u2013"))); |
440 | 424 |
441 this._swapDimensionsElement = fieldsetElement.createChild("button", "res
ponsive-design-icon responsive-design-icon-swap"); | 425 this._swapDimensionsElement = fieldsetElement.createChild("button", "res
ponsive-design-icon responsive-design-icon-swap"); |
| 426 this._swapDimensionsElement.tabIndex = -1; |
442 this._swapDimensionsElement.title = WebInspector.UIString("Swap dimensio
ns"); | 427 this._swapDimensionsElement.title = WebInspector.UIString("Swap dimensio
ns"); |
443 this._swapDimensionsElement.addEventListener("click", WebInspector.overr
idesSupport.swapDimensions.bind(WebInspector.overridesSupport), false); | 428 this._swapDimensionsElement.addEventListener("click", WebInspector.overr
idesSupport.swapDimensions.bind(WebInspector.overridesSupport), false); |
444 | 429 |
445 // Device pixel ratio. | 430 // Device pixel ratio. |
446 detailsElement.createChild("div", "responsive-design-suite-separator"); | 431 detailsElement.createChild("div", "responsive-design-suite-separator"); |
447 var dprElement = detailsElement.createChild("div", ""); | 432 var dprElement = detailsElement.createChild("div", ""); |
448 fieldsetElement = dprElement.createChild("fieldset"); | 433 fieldsetElement = dprElement.createChild("fieldset"); |
449 fieldsetElement.createChild("div", "responsive-design-icon responsive-de
sign-icon-dpr").title = WebInspector.UIString("Device pixel ratio"); | 434 fieldsetElement.createChild("div", "responsive-design-icon responsive-de
sign-icon-dpr").title = WebInspector.UIString("Device pixel ratio"); |
450 fieldsetElement.appendChild(WebInspector.SettingsUI.createSettingInputFi
eld("", WebInspector.overridesSupport.settings.deviceScaleFactor, true, 4, "2.5e
m", WebInspector.OverridesSupport.deviceScaleFactorValidator, true, true, WebIns
pector.UIString("--"))); | 435 fieldsetElement.appendChild(WebInspector.SettingsUI.createSettingInputFi
eld("", WebInspector.overridesSupport.settings.deviceScaleFactor, true, 4, "2.5e
m", WebInspector.OverridesSupport.deviceScaleFactorValidator, true, true, WebIns
pector.UIString("\u2013"))); |
451 | |
452 detailsElement.createChild("div", "responsive-design-suite-separator"); | |
453 var resetButton = detailsElement.createChild("div", "responsive-design-b
utton"); | |
454 resetButton.textContent = WebInspector.UIString("Reset"); | |
455 resetButton.addEventListener("click", WebInspector.overridesSupport.rese
t.bind(WebInspector.overridesSupport), false); | |
456 }, | 436 }, |
457 | 437 |
458 _createNetworkSection: function() | 438 _createNetworkSection: function() |
459 { | 439 { |
460 var networkSection = this._toolbarElement.createChild("div", "responsive
-design-section responsive-design-section-network"); | 440 var networkSection = this._toolbarElement.createChild("div", "responsive
-design-section responsive-design-section-network"); |
461 | 441 |
462 // Bandwidth. | 442 // Bandwidth. |
463 var bandwidthElement = networkSection.createChild("div", "responsive-des
ign-suite").createChild("div"); | 443 var bandwidthElement = networkSection.createChild("div", "responsive-des
ign-suite").createChild("div"); |
464 var fieldsetElement = bandwidthElement.createChild("fieldset"); | 444 var fieldsetElement = bandwidthElement.createChild("fieldset"); |
465 var networkCheckbox = fieldsetElement.createChild("label"); | 445 var networkCheckbox = fieldsetElement.createChild("label"); |
466 networkCheckbox.textContent = WebInspector.UIString("Network"); | 446 networkCheckbox.textContent = WebInspector.UIString("Network"); |
467 fieldsetElement.appendChild(WebInspector.overridesSupport.createNetworkT
hroughputSelect(document)); | 447 fieldsetElement.appendChild(WebInspector.overridesSupport.createNetworkT
hroughputSelect(document)); |
468 | 448 |
469 var separator = networkSection.createChild("div", "responsive-design-sec
tion-separator expanded-only"); | 449 var separator = networkSection.createChild("div", "responsive-design-sec
tion-separator"); |
470 | 450 |
471 // User agent. | 451 // User agent. |
472 var userAgentElement = networkSection.createChild("div", "responsive-des
ign-suite expanded-only").createChild("div"); | 452 var userAgentElement = networkSection.createChild("div", "responsive-des
ign-suite").createChild("div"); |
473 fieldsetElement = userAgentElement.createChild("fieldset"); | 453 fieldsetElement = userAgentElement.createChild("fieldset"); |
474 fieldsetElement.appendChild(WebInspector.SettingsUI.createSettingInputFi
eld("UA", WebInspector.overridesSupport.settings.userAgent, false, 0, "", undefi
ned, false, false, WebInspector.UIString("no override"))); | 454 fieldsetElement.appendChild(WebInspector.SettingsUI.createSettingInputFi
eld("UA", WebInspector.overridesSupport.settings.userAgent, false, 0, "", undefi
ned, false, false, WebInspector.UIString("No override"))); |
475 | 455 |
476 updateNetworkCheckboxTitle(); | 456 updateNetworkCheckboxTitle(); |
477 WebInspector.overridesSupport.settings.networkConditionsDomains.addChang
eListener(updateNetworkCheckboxTitle); | 457 WebInspector.overridesSupport.settings.networkConditionsDomains.addChang
eListener(updateNetworkCheckboxTitle); |
478 | 458 |
479 function updateNetworkCheckboxTitle() | 459 function updateNetworkCheckboxTitle() |
480 { | 460 { |
481 var domains = WebInspector.overridesSupport.settings.networkConditio
nsDomains.get(); | 461 var domains = WebInspector.overridesSupport.settings.networkConditio
nsDomains.get(); |
482 if (!domains.trim()) { | 462 if (!domains.trim()) { |
483 networkCheckbox.title = WebInspector.UIString("Limit for all dom
ains"); | 463 networkCheckbox.title = WebInspector.UIString("Limit for all dom
ains"); |
484 } else { | 464 } else { |
(...skipping 15 matching lines...) Expand all Loading... |
500 this._invalidateCache(); | 480 this._invalidateCache(); |
501 this.onResize(); | 481 this.onResize(); |
502 }, | 482 }, |
503 | 483 |
504 _closeOverridesWarning: function() | 484 _closeOverridesWarning: function() |
505 { | 485 { |
506 this._warningMessage.querySelector("span").textContent = ""; | 486 this._warningMessage.querySelector("span").textContent = ""; |
507 this._warningMessage.classList.add("hidden"); | 487 this._warningMessage.classList.add("hidden"); |
508 }, | 488 }, |
509 | 489 |
| 490 _showEmulationInDrawer: function() |
| 491 { |
| 492 WebInspector.overridesSupport.reveal(); |
| 493 }, |
| 494 |
510 __proto__: WebInspector.VBox.prototype | 495 __proto__: WebInspector.VBox.prototype |
511 }; | 496 }; |
OLD | NEW |