author Chris Jones <>
Thu, 11 Oct 2012 22:46:24 -0700
changeset 113352 62f7d7f4956a1d93bf9538494009217f9da52773
parent 112939 d04782dc009156e114f27da3a468321a99edc47b
child 114427 2a0e2af364bc635500fc8fe7129b217119c5ff03
permissions -rwxr-xr-x
Bug 795657: Integrate native viewport configuration better into async pan-zoom code. r=jwir3,roc a=blocking-basecamp This is a rollup of the following patches - Change the interpretation of FrameMetrics.mZoom to a "resolution-indepedent zoom", instead of a resolution-depedent scale factor. r=roc - Remove mention of "meta" from TabChild. r=roc - Remove some useless logging. r=roc - Tag FrameMetrics with its composition bounds at paint time. r=roc - Add a helper to calculate the render resolution for a FrameMetrics. r=roc - Add a helper to compute the approximate CSS dimensions a FrameMetrics will cover during composition. r=roc - BrowserElementScrolling doesn't actually care about zoom or resolution. r=roc - Accept the viewport that content has calculated, when it's received the latest widget geometry update. r=roc - Mechanically separate uses of zoom/resolution based on new definitions. r=roc - Convert GetViewportInfo()'s resolution-dependent scale into resolution-indepedent zoom. r=roc - Reinterpret defaultZoom == 0.0 as "intrinsic scale". r=jwir3,roc

#!/usr/bin/env python
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at

from __future__ import print_function, unicode_literals

import os
import platform
import sys

# Ensure we are running Python 2.7+. We put this check here so we generate a
# user-friendly error message rather than a cryptic stack trace on module
# import.
if sys.version_info[0] == 2 and sys.version_info[1] < 7:
    print('Python 2.7 or above is required to run mach.')
    print('You are running', platform.python_version())

# TODO Bug 794506 Integrate with the in-tree virtualenv configuration.

our_dir = os.path.dirname(os.path.abspath(__file__))

    import mach.main
except ImportError:
    sys.path[0:0] = [os.path.join(our_dir, path) for path in SEARCH_PATHS]

    import mach.main

# All of the code is in a module because EVERYTHING IS A LIBRARY.
mach = mach.main.Mach(our_dir)