Commit Graph

619 Commits

Author SHA1 Message Date
Chris Lord
763609d916 Bug 716403 - Use setContentDocumentFixedPositionMargins in Android's browser.js. r=kats
This uses the aforementioned method on nsIDOMWindowUtils to make sure layout's
idea of the fixed position margins matches those used in the compositor.
2013-03-01 15:46:34 +00:00
Chris Lord
0f2474d98f Bug 716403 - Resize viewport dynamically on Android. r=kats,mfinkle
This causes the viewport size to differ, depending on the length of the page.
This has the effect of pages that size themselves to the size of the window
always having the toolbar visible, making sites like Google Maps more usable.
2013-03-01 15:46:34 +00:00
Chris Lord
ebc2d0679f Bug 716403 - Make the top of the page accessible with the toolbar visible. r=kats
This makes it possible to scroll to the top of the page with the toolbar visible
in Firefox for Android. It also causes JavaScript scrolling to position 0 to
expose the toolbar.
2013-03-01 15:46:34 +00:00
Chris Lord
a02bd9b3ba Bug 716403 - Offset fixed layers so the toolbar doesn't obscure them. r=nrc,kats
Offset fixed layers in the compositor so that the toolbar in Firefox for Android
doesn't obscure them. This does not affect layout, so input on the elements in
said layers will appear broken.
2013-03-01 15:46:33 +00:00
Kartikaya Gupta
c9cda0b4bc Bug 844275 - Move the GfxInfoThread so that it is guaranteed to run to completion before compositor creation. r=Cwiiis 2013-02-28 13:28:24 -05:00
Kartikaya Gupta
2fe60aac17 Bug 844275 - Drive the layer manager creation from the GLController rather than GetLayerManager. r=Cwiiis 2013-02-28 13:28:23 -05:00
Kartikaya Gupta
3f826a8b7b Bug 844275 - Make the GLController a singleton instance. r=Cwiiis 2013-02-28 13:28:23 -05:00
Kartikaya Gupta
fcf89dce13 Bug 844275 - Move mCompositorCreated and associated methods from GeckoLayerClient to GLController. r=Cwiiis 2013-02-28 13:28:23 -05:00
Kartikaya Gupta
09440c33a9 Bug 844275 - Ensure that the GeckoLayerClient always starts off with an accurate viewport size. r=Cwiiis 2013-02-28 13:28:23 -05:00
Kartikaya Gupta
4242be4e8e Bug 845877 - Don't call GfxInfoThread.error() from GfxInfoThread.getData() as it will deadlock. r=bjacob 2013-02-28 13:28:22 -05:00
Brian Nicholson
414a4fc6f8 Bug 845618 - Remove unused imports. r=kats 2013-02-26 21:50:25 -08:00
Brian Nicholson
0bc444d6e2 Bug 845612 - Add @Override annotations for implemented interfaces. r=kats 2013-02-26 21:48:00 -08:00
Brian Nicholson
a11631e56a Bug 845612 - Add missing @Override annotations. r=kats 2013-02-26 21:48:00 -08:00
Kartikaya Gupta
a63abe2a76 Bug 840346 - Make the overscroll background area a solid color. r=cwiis
--HG--
extra : rebase_source : 97fc27101558f6da74f3e0418601eac7728656fb
2013-02-14 10:00:23 -08:00
Jim Chen
4292b3f95e Bug 835906 - Let GeckoInputConnection switch to background thread; r=cpeterson 2013-02-08 16:07:12 -05:00
Kartikaya Gupta
340661f4dc Bug 777468 - Move ownership of TouchEventHandler from LayerView to JavaPanZoomController. r=Cwiiis
This patch has a bunch of semi-independent changes that unfortunately
couldn't be split apart without introducing hacks to make stuff build
on the intermediate patches. The main changes are:
- Moving TouchEventHandler from LayerView to JavaPanZoomController
- Registering the touch interceptor on the LayerView rather than the
  TouchEventHandler
- Moving the Tab:HasTouchListener handler from GeckoApp to JPZC

The net effect of all of this is that the TouchEventHandler is hidden
behind the PanZoomController interface and not accessible to GeckoApp
or GeckoAppShell.

Additionally, some of the JPZC methods were renamed from onXXX to
handleXXX to maintain the convention that onXXX methods are "interface"
methods (i.e. exposed to arbitrary other code) whereas handleXXX
methods are private/package and should only be called in very specific
ways.
2013-02-08 09:13:09 -05:00
Kartikaya Gupta
5eeb9c6f6a Bug 777468 - Rename PanZoomController to JavaPanZoomController and extract a new PanZoomController interface. r=Cwiiis
--HG--
rename : mobile/android/base/gfx/PanZoomController.java => mobile/android/base/gfx/JavaPanZoomController.java
2013-02-08 09:12:59 -05:00
Kartikaya Gupta
8edd8b627e Bug 777468 - Move mobile/android/base/ui/* to mobile/android/base/gfx/. r=Cwiiis
--HG--
rename : mobile/android/base/ui/Axis.java => mobile/android/base/gfx/Axis.java
rename : mobile/android/base/ui/PanZoomController.java => mobile/android/base/gfx/PanZoomController.java
rename : mobile/android/base/ui/PanZoomTarget.java => mobile/android/base/gfx/PanZoomTarget.java
rename : mobile/android/base/ui/SimpleScaleGestureDetector.java => mobile/android/base/gfx/SimpleScaleGestureDetector.java
rename : mobile/android/base/ui/SubdocumentScrollHelper.java => mobile/android/base/gfx/SubdocumentScrollHelper.java
2013-02-08 09:11:43 -05:00
Kartikaya Gupta
a5e2d190b0 Bug 837821 - Guard against exception when calling scheduleComposite before libxul is loaded. r=gbrown 2013-02-07 10:17:33 -05:00
Kartikaya Gupta
fbeedc6265 Bug 834414 - Fix leaks caused by missing tab change listener unregistrations. r=sriram 2013-01-25 13:51:41 -05:00
Phil Ringnalda
7dee6cb50e Back out 5a56a56a6481:a5969a01955b (bug 834414) to investigate whether it caused reftest-4 failures
CLOSED TREE
2013-01-25 20:03:50 -08:00
Kartikaya Gupta
2748102adc Bug 834414 - Fix leaks caused by missing tab change listener unregistrations. r=sriram 2013-01-25 13:51:41 -05:00
Chris Lord
cf7e552096 Bug 827844 - Fix flickering when layout changes on Firefox/android. r=kats,bgirard
Fix flickering that can occur when the surface size changes due to a layout
change (such as the virtual keyboard appearing/disappearing) on Android.
2013-01-10 17:32:43 +00:00
Kartikaya Gupta
513d67161a Bug 785597 - Allow the compositor to be registered earlier in the startup process and prevent creating multiple LayerManager instances. r=snorp 2013-01-10 11:21:10 -05:00
Kartikaya Gupta
a752c5511f Bug 826300 - Don't block on waiting for a valid surface when trying to resume the compositor; allow resuming to fail gracefully. r=snorp,BenWa 2013-01-10 11:21:10 -05:00
Chris Peterson
d62d1ced11 Bug 828594 - Part 2: Remove unused Java imports. r=kats 2013-01-09 10:32:50 -08:00
Wes Johnston
3e1bd5d46d Bug 725018 - FormAssistant should reposition itself on viewport changes. r=kats,mleibovic 2013-01-09 11:37:01 -08:00
Kartikaya Gupta
adad08e444 Bug 828316 - Rename setForceRedraw to forceRedraw. r=Cwiiis DONTBUILD 2013-01-09 11:21:04 -05:00
Kartikaya Gupta
17e9bed0e2 Bug 827836 - Force sending a viewport update to Gecko after aborting animations. r=Cwiiis 2013-01-09 09:40:08 -05:00
Greg Roodt
4ff102a424 Bug 686228 - Add simple mouse scrolling support. r=kats 2013-01-06 22:35:01 +00:00
Kartikaya Gupta
7affc8fd4f Bug 771746 - Draw scrollbars using a white outline so it shows up on dark backgrounds. r=Cwiiis 2012-12-29 15:24:01 -05:00
Kartikaya Gupta
e65170c39d Bug 771746 - Some cleanup in ScrollbarLayer.java. r=Cwiiis 2012-12-29 15:22:59 -05:00
Kartikaya Gupta
5b7500d077 Bug 820302 - Don't abort the pan-zoom animation on a viewport update if the page size didn't really change. r=Cwiiis 2012-12-21 15:50:49 -05:00
Kartikaya Gupta
1814d8a991 Bug 785597 - Get rid of unused mGLVersion field. r=snorp 2012-12-21 11:33:09 -05:00
Kartikaya Gupta
c4b3061dfd Bug 785597 - Remove a bunch of unused code. r=snorp 2012-12-21 11:32:52 -05:00
Kartikaya Gupta
a0022428f2 Bug 817134 - Delete dead code in java-land to display checkerboarding. r=blassey 2012-12-15 10:43:57 -05:00
Kartikaya Gupta
810968cdf4 Bug 817134 - Remove the low-res screenshotting code. r=blassey 2012-12-15 10:43:52 -05:00
Kartikaya Gupta
fac326de5a Bug 820556 - Remove unused function. r=snorp 2012-12-11 17:33:09 -05:00
Kartikaya Gupta
ee05e5dbd7 Bug 820556 - Remove unused GeckoEventResponder bindings in GeckoLayerClient. r=snorp 2012-12-11 17:33:09 -05:00
Kartikaya Gupta
e2e85fdecb Bug 820556 - Kill mUsesDefaultProgram which is always true. r=snorp 2012-12-11 17:33:09 -05:00
Kartikaya Gupta
f1df453ab0 Bug 805353 - Guard against crash if two threads call into freeBuffer concurrently. r=snorp 2012-12-10 10:13:10 -05:00
James Willcox
af363a4bf8 Bug 789271 - Remove placeholder code from PluginLayer r=blassey
--HG--
extra : rebase_source : ea4287baa67b24a5382ceb323317b795e6ebc44e
2012-12-10 10:00:17 -05:00
Chris Lord
98d6ecce87 Bug 819310 - Fix possible race when stopping checkerboard recording. r=kats
Make stopCheckerboardRecording safe to call while recordCheckerboard is
executing.
2012-12-07 15:11:05 +00:00
Chris Lord
77c6546972 Bug 814437 - Address review comments that were missed. r=bgirard
In my haste, I forgot to address review comments before pushing. This
corrects indentation in PanningPerf.java, moves GetValidLowPrecisionRegion from
Layer to TiledLayerComposer and corrects checkerboard measurement when there
isn't a low precision buffer and when the display ports don't cover the screen.
2012-11-30 23:11:37 +00:00
Ehsan Akhgari
48c687113c Backed out changeset 5368aced79b3 (bug 814437) because it breaks Android builds 2012-11-30 15:41:08 -05:00
Chris Lord
b2b8133657 Bug 814437 - Address review comments that were missed. r=bgirard
In my haste, I forgot to address review comments before pushing. This
corrects indentation in PanningPerf.java, moves GetValidLowPrecisionRegion from
Layer to TiledLayerComposer and corrects checkerboard measurement when there
isn't a low precision buffer and when the display ports don't cover the screen.
2012-11-30 19:52:17 +00:00
Chris Lord
5598017819 Bug 814864 - Only draw low precision tiles when necessary. r=kats
Use DisplayPortCalculator.aboutToCheckerboard to determine if we're in risk of
checkerboarding while drawing tiles, and only then enable low precision
rendering. This makes sure that we don't spend time doing low precision
rendering when it isn't going to be of benefit (and thus decreases the
likelihood of the user seeing low precision tiles unnecessarily).
2012-11-29 13:08:41 +00:00
Chris Lord
09c84058e2 Bug 814864 - Abort old, stale, low precision updates. r=kats
Don't spend time during stale, low precision content when there are newer
display ports in the pipeline.
2012-11-29 13:08:40 +00:00
Chris Lord
e1569825cd Bug 814437 - Record checkerboarding over time instead of per frame. r=kats
Frame-rate has an unpredictable effect on the results of robocop checkerboarding
tests. Instead of recording checkerboarding per frame, record it over time.
2012-11-29 12:03:52 +00:00
Chris Lord
0997087f82 Bug 814437 - Fix checkerboard measurement when using a critical displayport. r=bgirard
The checkerboard measurement depended on the displayport coverage of the
viewport, which was calculated in LayerRenderer. When using a critical
displayport, this value changes, but this was not being accounted for.

We have all the context we need for this Gecko-side, so move this code into
LayerManagerOGL::ComputeRenderIntegrity and account for displayport coverage
correctly.
2012-11-29 12:03:38 +00:00