Commit Graph

619 Commits

Author SHA1 Message Date
Chris Lord
08f9e1089b 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
413fbf7cd0 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
1461d5cf81 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
077631a00a 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
7041e15b1f 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
bd341fe084 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
b7560520fb Bug 844275 - Make the GLController a singleton instance. r=Cwiiis 2013-02-28 13:28:23 -05:00
Kartikaya Gupta
3fc63dc2c0 Bug 844275 - Move mCompositorCreated and associated methods from GeckoLayerClient to GLController. r=Cwiiis 2013-02-28 13:28:23 -05:00
Kartikaya Gupta
29285115b8 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
ca5f856d26 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
eae7e0275a Bug 845618 - Remove unused imports. r=kats 2013-02-26 21:50:25 -08:00
Brian Nicholson
09bb93a1e8 Bug 845612 - Add @Override annotations for implemented interfaces. r=kats 2013-02-26 21:48:00 -08:00
Brian Nicholson
ecbec88fd7 Bug 845612 - Add missing @Override annotations. r=kats 2013-02-26 21:48:00 -08:00
Kartikaya Gupta
3015b13f60 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
9d18f3a9c3 Bug 835906 - Let GeckoInputConnection switch to background thread; r=cpeterson 2013-02-08 16:07:12 -05:00
Kartikaya Gupta
88dcc6657a 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
1a5dcc2958 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
4dcacbb416 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
bb838d30bc Bug 837821 - Guard against exception when calling scheduleComposite before libxul is loaded. r=gbrown 2013-02-07 10:17:33 -05:00
Kartikaya Gupta
57216f4b09 Bug 834414 - Fix leaks caused by missing tab change listener unregistrations. r=sriram 2013-01-25 13:51:41 -05:00
Phil Ringnalda
b8c910183c 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
e9dd366630 Bug 834414 - Fix leaks caused by missing tab change listener unregistrations. r=sriram 2013-01-25 13:51:41 -05:00
Chris Lord
d0161b544c 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
c9f9091646 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
ef869e5ac5 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
a90d14ab62 Bug 828594 - Part 2: Remove unused Java imports. r=kats 2013-01-09 10:32:50 -08:00
Wes Johnston
f1da34eb65 Bug 725018 - FormAssistant should reposition itself on viewport changes. r=kats,mleibovic 2013-01-09 11:37:01 -08:00
Kartikaya Gupta
5cd68ceed7 Bug 828316 - Rename setForceRedraw to forceRedraw. r=Cwiiis DONTBUILD 2013-01-09 11:21:04 -05:00
Kartikaya Gupta
4ec5ac501e Bug 827836 - Force sending a viewport update to Gecko after aborting animations. r=Cwiiis 2013-01-09 09:40:08 -05:00
Greg Roodt
8134e1c125 Bug 686228 - Add simple mouse scrolling support. r=kats 2013-01-06 22:35:01 +00:00
Kartikaya Gupta
12271b92b9 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
a28080e65d Bug 771746 - Some cleanup in ScrollbarLayer.java. r=Cwiiis 2012-12-29 15:22:59 -05:00
Kartikaya Gupta
40cdde21d1 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
1df52c4fc2 Bug 785597 - Get rid of unused mGLVersion field. r=snorp 2012-12-21 11:33:09 -05:00
Kartikaya Gupta
51e401c59c Bug 785597 - Remove a bunch of unused code. r=snorp 2012-12-21 11:32:52 -05:00
Kartikaya Gupta
aa24841938 Bug 817134 - Delete dead code in java-land to display checkerboarding. r=blassey 2012-12-15 10:43:57 -05:00
Kartikaya Gupta
3da21dae58 Bug 817134 - Remove the low-res screenshotting code. r=blassey 2012-12-15 10:43:52 -05:00
Kartikaya Gupta
d51168bc42 Bug 820556 - Remove unused function. r=snorp 2012-12-11 17:33:09 -05:00
Kartikaya Gupta
b1dabb9993 Bug 820556 - Remove unused GeckoEventResponder bindings in GeckoLayerClient. r=snorp 2012-12-11 17:33:09 -05:00
Kartikaya Gupta
4418e76adb Bug 820556 - Kill mUsesDefaultProgram which is always true. r=snorp 2012-12-11 17:33:09 -05:00
Kartikaya Gupta
36c0ea5990 Bug 805353 - Guard against crash if two threads call into freeBuffer concurrently. r=snorp 2012-12-10 10:13:10 -05:00
James Willcox
64ad895cda Bug 789271 - Remove placeholder code from PluginLayer r=blassey
--HG--
extra : rebase_source : ea4287baa67b24a5382ceb323317b795e6ebc44e
2012-12-10 10:00:17 -05:00
Chris Lord
600eb8829f 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
9b229ca87b 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
12de3548e2 Backed out changeset 5368aced79b3 (bug 814437) because it breaks Android builds 2012-11-30 15:41:08 -05:00
Chris Lord
524e13922f 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
7e2e47a4e0 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
c18df4638e 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
f934392869 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
8df438c5af 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