Bug 800106: replace NS_ALWAYS_INLINE with MOZ_ALWAYS_INLINE; r=ehsan
Bug 626245. Part 1: Refactor test_plugin_scroll_invalidation to definitely wait for a paint between each call to waitForPaint. r=matspal
The current code sets the plugin size to 0,0 and then does some stuff after a setTimeout(0), then
sets the size back to 1,1 and expects to be sure to get a new paint event. This is wrong since
the timing of plugin geometry changes isn't guaranteed, so we might simply not resize the plugin
between setting the size to 0,0 and 1,1.

--HG--
extra : rebase_source : d7cee523260b0ba1e44e6d7bf41d1636772722a9
Bug 626245. Part 2: Fix test_convertpoint to poll until the plugin is in the right place. r=matspal

--HG--
extra : rebase_source : e949763a9925736723617ca3f829c52b4a5e40d1
Bug 626245. Part 3: Make aAncestor const in TransformFrameRectToAncestor. r=matspal

--HG--
extra : rebase_source : d09fd6845a0405dd657fc0c0c1d43ebbab2bfc9d
Bug 626245. Part 3.5: Fix nsLayoutUtils::Transform functions to convert to correct appunits values for the destination frame. r=mats

--HG--
extra : rebase_source : d8130b84e38d5a0cdc84375e22d06951a405025b
Bug 626245. Part 4: Compute plugin widget geometry updates via the refresh driver's painting, and defer actual widget updates until we've just composited the window. r=mats
Updating plugin widget geometry every time we paint means we don't have to
explicitly request plugin geometry updates.
This patch stops us from flushing plugin geometry changes in
FlushPendingNotifications(Flush_Layout). There are too many Flush_Layouts and
flushing plugin geometry changes on them produces frequent
desynchronization of the plugin geometry with the rendered window contents.
There is some Web compatibility risk there --- it means we have to change
our tests, for one thing --- but hopefully it's OK.

--HG--
extra : rebase_source : 87adde45795ea2cab362ed9df54e62c5cc97e16c
Bug 626245. Part 4.5: Forward WillPaintWindow/DidPaintWindow notifications to the presshell and do plugin geometry updates from there. r=matspal

--HG--
extra : rebase_source : 5cf892e26962ef045d76a69fa4b4be9f7d7388da
Bug 626245. Part 5: Move plugin widgets before compositing the window, not after. r=matspal

--HG--
extra : rebase_source : 147afbc494e9b05f52b134ca6dd4f9635457d879
Bug 799849: Wrap nothrow libstdc++ allocators. r=glandium
Silence two compiler warnings about redifinition of LOG, no bug

--HG--
extra : rebase_source : b2ad9b63ef071b71620506e78bcf12d507eb6577
Silence a compiler warning about initialization order of RasterImage members, no bug

--HG--
extra : rebase_source : a109b2d20f362add2dbb38a6b2037adfab69941e
Silence a compiler warning about initialization order of nsIdleServiceDaily members, no bug

--HG--
extra : rebase_source : e78d2c0f443dd67ec147f38ee48d2e52e8ea92f8
Silence a compiler warning about unused private field, no bug

--HG--
extra : rebase_source : 931d6682a63588501930c7b2f93496fb2ef747d1
Remove nsGridRowGroupLayout::mRowColumn because it is unused, no bug
Remove nsSelectionIterator::mType because it is unused, no bug
Bug 799272: Implement Debugger.Object.prototype.global. r=luke
Bug 799272: Implement Debugger.Object.prototype.unwrap. r=luke
Bug 795119: Complain coherently when evalInGlobal{,withBindings} is passed a CCW to a global, not a global. r=luke
Bug 796073: Use Debugger.Object.prototype.makeDebuggeeValue where appropriate, not Debugger.prototype.addDebuggee. r=luke

Many tests use Debugger.prototype.addDebuggee to produce Debugger.Object
instances referring to random objects. Now we have
Debugger.Object.prototype.makeDebuggeeValue to do that, which is more
careful about wrappers. This patch changes all the existing tests that
abuse addDebuggee in this way (well, they didn't have any choice when they
were written) to use makeDebuggeeValue instead, in preparation for
tightening up addDebuggee to only accept global objects.
Bug 796073: Identify debuggees only by Debugger.Object instances and CCWs that can be unwrapped securely. r=luke

This patch affects behavior that a lot of debugger tests rely on; I've
tried to update the tests without losing coverage of behavior that is still
supported:

- A prior patch in this series removes uses of addDebuggee to generate
  Debugger.Object instances referring to random objects, using
  makeDebuggeeValue instead.

- The test debug/Debugger-debuggees-07.js is deleted, because it's testing
  for the very behavior we're removing. Other tests are trimmed to remove
  usage that is no longer supported.

- The new test debug/Debugger-debuggees-17.js checks that we reject objects
  that don't designate debuggees. The existing test
  Debugger-debuggees-06.js checks that non-object values are properly
  rejected.

- The new test debug/Debugger-debuggees-18.js checks that globals are
  correctly identified regardless of how we designate them.