| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 80 * @interface | 80 * @interface |
| 81 * @extends {WebInspector.EventTarget} | 81 * @extends {WebInspector.EventTarget} |
| 82 */ | 82 */ |
| 83 WebInspector.OverridesSupport.PageResizer = function() | 83 WebInspector.OverridesSupport.PageResizer = function() |
| 84 { | 84 { |
| 85 }; | 85 }; |
| 86 | 86 |
| 87 WebInspector.OverridesSupport.PageResizer.Events = { | 87 WebInspector.OverridesSupport.PageResizer.Events = { |
| 88 AvailableSizeChanged: "AvailableSizeChanged", | 88 AvailableSizeChanged: "AvailableSizeChanged", |
| 89 ResizeRequested: "ResizeRequested", | 89 ResizeRequested: "ResizeRequested", |
| 90 FixedScaleRequested: "FixedScaleRequested" | 90 FixedScaleRequested: "FixedScaleRequested", |
| 91 InsetsChanged: "InsetsChanged" |
| 91 }; | 92 }; |
| 92 | 93 |
| 93 WebInspector.OverridesSupport.PageResizer.prototype = { | 94 WebInspector.OverridesSupport.PageResizer.prototype = { |
| 94 /** | 95 /** |
| 95 * Zero width and height mean default size. | 96 * Zero width and height mean default size. |
| 96 * Scale should be applied to page-scale-dependent UI bits. Zero means no sc
ale. | 97 * Scale should be applied to page-scale-dependent UI bits. Zero means no sc
ale. |
| 97 * @param {number} dipWidth | 98 * @param {number} dipWidth |
| 98 * @param {number} dipHeight | 99 * @param {number} dipHeight |
| 99 * @param {number} scale | 100 * @param {number} scale |
| 100 */ | 101 */ |
| (...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 320 | 321 |
| 321 this.dispatchEventToListeners(WebInspector.OverridesSupport.Events.E
mulationStateChanged); | 322 this.dispatchEventToListeners(WebInspector.OverridesSupport.Events.E
mulationStateChanged); |
| 322 | 323 |
| 323 callback(); | 324 callback(); |
| 324 } | 325 } |
| 325 }, | 326 }, |
| 326 | 327 |
| 327 /** | 328 /** |
| 328 * @param {?WebInspector.OverridesSupport.PageResizer} pageResizer | 329 * @param {?WebInspector.OverridesSupport.PageResizer} pageResizer |
| 329 * @param {!Size} availableSize | 330 * @param {!Size} availableSize |
| 331 * @param {!Insets} insets |
| 330 */ | 332 */ |
| 331 setPageResizer: function(pageResizer, availableSize) | 333 setPageResizer: function(pageResizer, availableSize, insets) |
| 332 { | 334 { |
| 333 if (pageResizer === this._pageResizer) | 335 if (pageResizer === this._pageResizer) |
| 334 return; | 336 return; |
| 335 | 337 |
| 336 if (this._pageResizer) { | 338 if (this._pageResizer) { |
| 337 this._pageResizer.removeEventListener(WebInspector.OverridesSupport.
PageResizer.Events.AvailableSizeChanged, this._onPageResizerAvailableSizeChanged
, this); | 339 this._pageResizer.removeEventListener(WebInspector.OverridesSupport.
PageResizer.Events.AvailableSizeChanged, this._onPageResizerAvailableSizeChanged
, this); |
| 338 this._pageResizer.removeEventListener(WebInspector.OverridesSupport.
PageResizer.Events.ResizeRequested, this._onPageResizerResizeRequested, this); | 340 this._pageResizer.removeEventListener(WebInspector.OverridesSupport.
PageResizer.Events.ResizeRequested, this._onPageResizerResizeRequested, this); |
| 339 this._pageResizer.removeEventListener(WebInspector.OverridesSupport.
PageResizer.Events.FixedScaleRequested, this._onPageResizerFixedScaleRequested,
this); | 341 this._pageResizer.removeEventListener(WebInspector.OverridesSupport.
PageResizer.Events.FixedScaleRequested, this._onPageResizerFixedScaleRequested,
this); |
| 342 this._pageResizer.removeEventListener(WebInspector.OverridesSupport.
PageResizer.Events.InsetsChanged, this._onPageResizerInsetsChanged, this); |
| 340 } | 343 } |
| 341 this._pageResizer = pageResizer; | 344 this._pageResizer = pageResizer; |
| 342 this._pageResizerAvailableSize = availableSize; | 345 this._pageResizerAvailableSize = availableSize; |
| 346 this._pageResizerInsets = insets; |
| 343 if (this._pageResizer) { | 347 if (this._pageResizer) { |
| 344 this._pageResizer.addEventListener(WebInspector.OverridesSupport.Pag
eResizer.Events.AvailableSizeChanged, this._onPageResizerAvailableSizeChanged, t
his); | 348 this._pageResizer.addEventListener(WebInspector.OverridesSupport.Pag
eResizer.Events.AvailableSizeChanged, this._onPageResizerAvailableSizeChanged, t
his); |
| 345 this._pageResizer.addEventListener(WebInspector.OverridesSupport.Pag
eResizer.Events.ResizeRequested, this._onPageResizerResizeRequested, this); | 349 this._pageResizer.addEventListener(WebInspector.OverridesSupport.Pag
eResizer.Events.ResizeRequested, this._onPageResizerResizeRequested, this); |
| 346 this._pageResizer.addEventListener(WebInspector.OverridesSupport.Pag
eResizer.Events.FixedScaleRequested, this._onPageResizerFixedScaleRequested, thi
s); | 350 this._pageResizer.addEventListener(WebInspector.OverridesSupport.Pag
eResizer.Events.FixedScaleRequested, this._onPageResizerFixedScaleRequested, thi
s); |
| 351 this._pageResizer.addEventListener(WebInspector.OverridesSupport.Pag
eResizer.Events.InsetsChanged, this._onPageResizerInsetsChanged, this); |
| 347 } | 352 } |
| 348 this._deviceMetricsChanged(); | 353 this._deviceMetricsChanged(); |
| 349 }, | 354 }, |
| 350 | 355 |
| 351 /** | 356 /** |
| 352 * @param {!WebInspector.OverridesSupport.Device} device | 357 * @param {!WebInspector.OverridesSupport.Device} device |
| 353 */ | 358 */ |
| 354 emulateDevice: function(device) | 359 emulateDevice: function(device) |
| 355 { | 360 { |
| 356 this._deviceMetricsChangedListenerMuted = true; | 361 this._deviceMetricsChangedListenerMuted = true; |
| (...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 483 if (this._userAgent !== userAgent) | 488 if (this._userAgent !== userAgent) |
| 484 this._updateUserAgentWarningMessage(WebInspector.UIString("You might
need to reload the page for proper user agent spoofing and viewport rendering."
)); | 489 this._updateUserAgentWarningMessage(WebInspector.UIString("You might
need to reload the page for proper user agent spoofing and viewport rendering."
)); |
| 485 this._userAgent = userAgent; | 490 this._userAgent = userAgent; |
| 486 }, | 491 }, |
| 487 | 492 |
| 488 /** | 493 /** |
| 489 * @param {!WebInspector.Event} event | 494 * @param {!WebInspector.Event} event |
| 490 */ | 495 */ |
| 491 _onPageResizerAvailableSizeChanged: function(event) | 496 _onPageResizerAvailableSizeChanged: function(event) |
| 492 { | 497 { |
| 493 this._pageResizerAvailableSize = /** @type {!Size} */ (event.data); | 498 this._pageResizerAvailableSize = /** @type {!Size} */ (event.data.size); |
| 499 this._pageResizerInsets = /** @type {!Insets} */ (event.data.insets); |
| 494 this._deviceMetricsChanged(); | 500 this._deviceMetricsChanged(); |
| 495 }, | 501 }, |
| 496 | 502 |
| 497 /** | 503 /** |
| 498 * @param {!WebInspector.Event} event | 504 * @param {!WebInspector.Event} event |
| 499 */ | 505 */ |
| 506 _onPageResizerInsetsChanged: function(event) |
| 507 { |
| 508 this._pageResizerInsets = /** @type {!Insets} */ (event.data); |
| 509 }, |
| 510 |
| 511 /** |
| 512 * @param {!WebInspector.Event} event |
| 513 */ |
| 500 _onPageResizerResizeRequested: function(event) | 514 _onPageResizerResizeRequested: function(event) |
| 501 { | 515 { |
| 502 if (typeof event.data.width !== "undefined") { | 516 if (typeof event.data.width !== "undefined") { |
| 503 var width = /** @type {number} */ (event.data.width); | 517 var width = /** @type {number} */ (event.data.width); |
| 504 if (width !== this.settings.deviceWidth.get()) | 518 if (width !== this.settings.deviceWidth.get()) |
| 505 this.settings.deviceWidth.set(width); | 519 this.settings.deviceWidth.set(width); |
| 506 } | 520 } |
| 507 if (typeof event.data.height !== "undefined") { | 521 if (typeof event.data.height !== "undefined") { |
| 508 var height = /** @type {number} */ (event.data.height); | 522 var height = /** @type {number} */ (event.data.height); |
| 509 if (height !== this.settings.deviceHeight.get()) | 523 if (height !== this.settings.deviceHeight.get()) |
| (...skipping 28 matching lines...) Expand all Loading... |
| 538 } | 552 } |
| 539 | 553 |
| 540 var dipWidth = this.settings.emulateResolution.get() ? this.settings.dev
iceWidth.get() : 0; | 554 var dipWidth = this.settings.emulateResolution.get() ? this.settings.dev
iceWidth.get() : 0; |
| 541 var dipHeight = this.settings.emulateResolution.get() ? this.settings.de
viceHeight.get() : 0; | 555 var dipHeight = this.settings.emulateResolution.get() ? this.settings.de
viceHeight.get() : 0; |
| 542 | 556 |
| 543 var overrideWidth = dipWidth; | 557 var overrideWidth = dipWidth; |
| 544 var overrideHeight = dipHeight; | 558 var overrideHeight = dipHeight; |
| 545 var scale = 1; | 559 var scale = 1; |
| 546 if (this._pageResizer) { | 560 if (this._pageResizer) { |
| 547 var available = this._pageResizerAvailableSize; | 561 var available = this._pageResizerAvailableSize; |
| 562 var insets = this._pageResizerInsets; |
| 548 if (this.settings.deviceFitWindow.get()) { | 563 if (this.settings.deviceFitWindow.get()) { |
| 549 if (this._fixedDeviceScale) { | 564 if (this._fixedDeviceScale) { |
| 550 scale = this._deviceScale; | 565 scale = this._deviceScale; |
| 551 } else { | 566 } else { |
| 552 scale = 1; | 567 scale = 1; |
| 553 while (available.width < dipWidth * scale || available.heigh
t < dipHeight * scale) | 568 while (available.width < (dipWidth + insets.left + insets.ri
ght) * scale || available.height < (dipHeight + insets.top + insets.bottom) * sc
ale) |
| 554 scale *= 0.8; | 569 scale *= 0.8; |
| 555 } | 570 } |
| 556 } | 571 } |
| 557 | 572 |
| 558 this._pageResizer.update(Math.min(dipWidth * scale, available.width)
, Math.min(dipHeight * scale, available.height), scale); | 573 this._pageResizer.update(Math.min(dipWidth * scale, available.width
- insets.left * scale), Math.min(dipHeight * scale, available.height - insets.to
p * scale), scale); |
| 559 if (scale === 1 && available.width >= dipWidth && available.height >
= dipHeight) { | 574 if (scale === 1 && available.width >= dipWidth && available.height >
= dipHeight) { |
| 560 // When we have enough space, no page size override is required.
This will speed things up and remove lag. | 575 // When we have enough space, no page size override is required.
This will speed things up and remove lag. |
| 561 overrideWidth = 0; | 576 overrideWidth = 0; |
| 562 overrideHeight = 0; | 577 overrideHeight = 0; |
| 563 } | 578 } |
| 564 if (dipWidth === 0 && dipHeight !== 0) | 579 if (dipWidth === 0 && dipHeight !== 0) |
| 565 overrideWidth = Math.round(available.width / scale); | 580 overrideWidth = Math.round(available.width / scale); |
| 566 if (dipHeight === 0 && dipWidth !== 0) | 581 if (dipHeight === 0 && dipWidth !== 0) |
| 567 overrideHeight = Math.round(available.height / scale); | 582 overrideHeight = Math.round(available.height / scale); |
| 568 } | 583 } |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 774 }, | 789 }, |
| 775 | 790 |
| 776 __proto__: WebInspector.Object.prototype | 791 __proto__: WebInspector.Object.prototype |
| 777 } | 792 } |
| 778 | 793 |
| 779 | 794 |
| 780 /** | 795 /** |
| 781 * @type {!WebInspector.OverridesSupport} | 796 * @type {!WebInspector.OverridesSupport} |
| 782 */ | 797 */ |
| 783 WebInspector.overridesSupport; | 798 WebInspector.overridesSupport; |
| OLD | NEW |