This is the first step in using these functions without having a
LayerManagerComposite at all.
MozReview-Commit-ID: 2zkuB7Ox4Ut
--HG--
extra : rebase_source : b23988275f5851a2fd30bd3e8a9931107a224c66
We were always uploading the entire texture region, but still by using
glTexSubImage2D. In most cases it should be quicker to use
glTexSubImage2D on the updated region only. And where that function has
problems we should avoid it by making CanUploadSubTextures return false
so that glTexImage2D is used instead.
MozReview-Commit-ID: BrobWEPJ82M
--HG--
extra : rebase_source : 986642a1d7bfe2bcb0cc12dc8e41c17ac77abc1d
We need to consider fill mode in compositor thread as well as other properties
because pulling the animation back from the compositor thread is sometimes
delayed due to the main thread busyness. In such situations, if there is
another animation running on the main thread on the same element, users can
easily notice a gap between both of animations.
MozReview-Commit-ID: 1i7YTWboira
--HG--
extra : rebase_source : 036ca7707d07200af7435e027607503cd03f547e
The check of negative elapsedDuration is basically no longer valid since
animation delay is not factored into start time any more. But still we have
somtimes met negative elapsedDuration sice we use a previous vsync time stamp
for async animations to make the animations more sync. This is not a problem
in most cases but makes two reftests intermitent failure because both of them
used steps(1, start), the steps(1, start) composed different results in the
before phase and in the active phase. To avoid this difference this patch
replace the steps(1, start) with steps(1, end).
Once we incorpolate playbackRate into GetCurrentOrPendingStartTime, we don't
need to call AnimationTimeToTimeStamp for deviding delay by playbackRate since
the time passed to AnimationTimeToTimeStamp does not contain delay any more.
MozReview-Commit-ID: IVE2IFfNgm0
--HG--
extra : rebase_source : 7cb42e57067c21451706bd89284016d996dc8b12
Add AndroidCompositorWidget to act as the intermediary between gfx code
and GeckoLayerClient, in place of AndroidBridge. AndroidCompositorWidget
currently inherits from InProcessCompositorWidget, but when Android
eventually supports OOP compositing, it will be made to inherit from
CompositorWidget directly.
It would make the next change awkard.
This also temporarily removes the current, incomplete, handling of an
unconsumed translation, but this will be added back (and made complete)
in the next commit.
MozReview-Commit-ID: 2tPOjEMRKfj
--HG--
extra : rebase_source : 55f35596fa9ff29563ab8434d8f1fd427b2c917d
There shouldn't be a local transform because we create container layers
for fixed layers, so any transform would be on a descendant layer instead.
MozReview-Commit-ID: Kmya9vHZx1n
--HG--
extra : rebase_source : 88f31ae44e7baeff546624ba0e058d33ba6dc72f
There shouldn't be an ancestor transform, because transforms create
containing blocks for fixed-position descendants.
MozReview-Commit-ID: IVp1djLgIV9
--HG--
extra : rebase_source : d3a07e2bb0a727de25817d0d9ca18bdf92d6c6bf