Home | History | Annotate | Download | only in ui
      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
      3 // found in the LICENSE file.
      4 
      5 /**
      6  * @constructor
      7  * @extends {WebInspector.Object}
      8  * @param {!InspectorFrontendHostAPI} frontendHost
      9  */
     10 WebInspector.ZoomManager = function(frontendHost)
     11 {
     12     this._frontendHost = frontendHost;
     13     this._zoomFactor = this._frontendHost.zoomFactor();
     14     window.addEventListener("resize", this._onWindowResize.bind(this), true);
     15 };
     16 
     17 WebInspector.ZoomManager.Events = {
     18     ZoomChanged: "ZoomChanged"
     19 };
     20 
     21 WebInspector.ZoomManager.prototype = {
     22     /**
     23      * @return {number}
     24      */
     25     zoomFactor: function()
     26     {
     27         return this._zoomFactor;
     28     },
     29 
     30     _onWindowResize: function()
     31     {
     32         var oldZoomFactor = this._zoomFactor;
     33         this._zoomFactor = this._frontendHost.zoomFactor();
     34         if (oldZoomFactor !== this._zoomFactor)
     35             this.dispatchEventToListeners(WebInspector.ZoomManager.Events.ZoomChanged, {from: oldZoomFactor, to: this._zoomFactor});
     36     },
     37 
     38     __proto__: WebInspector.Object.prototype
     39 };
     40 
     41 /**
     42  * @type {!WebInspector.ZoomManager}
     43  */
     44 WebInspector.zoomManager;
     45