Commit Graph

432 Commits

Author SHA1 Message Date
Kartikaya Gupta
a17147cd57 Bug 748384 - Propagate the page bounds in via browser.js. r=Cwiiis,mats 2012-05-23 10:49:59 -04:00
Kartikaya Gupta
d7e205e633 Bug 748384 - Update all Java code to keep a page rect and CSS page rect instead of just the page size. r=Cwiiis 2012-05-23 10:49:52 -04:00
James Willcox
3814700c00 Bug 731288 - Don't call methods on finalized SurfaceTexture, JNI housekeeping r=blassey 2012-05-21 21:35:29 -04:00
Gervase Markham
87620f5676 Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Matt Brubeck
dd1a410b01 Bug 707571 (part 4) - Use mininum-scale and maximum-scale from <meta name="viewport"> [r=kats] 2012-05-18 08:24:27 -07:00
Matt Brubeck
a3928422a4 Bug 707571 (part 3) - Disable double-tap listener on pages with user-scalable=no [r=kats] 2012-05-18 08:24:27 -07:00
Matt Brubeck
901910c609 Bug 707571 (part 2) - Disable zooming for pages with user-scalable=no [r=kats] 2012-05-18 08:24:27 -07:00
Ali Juma
eaec281765 Bug 745243 - Wait for surfaceChanged before calling GLController.provideEGLSurface. r=kats 2012-05-18 15:58:46 -04:00
Matt Brubeck
babf33c424 Back out bug 707571 because of reftest failures 2012-05-18 09:31:27 -07:00
Matt Brubeck
206bfef1de Bug 707571 (part 4) - Use mininum-scale and maximum-scale from <meta name="viewport"> [r=kats] 2012-05-18 08:24:27 -07:00
Matt Brubeck
a5e1d94154 Bug 707571 (part 3) - Disable double-tap listener on pages with user-scalable=no [r=kats] 2012-05-18 08:24:27 -07:00
Matt Brubeck
828992dc11 Bug 707571 (part 2) - Disable zooming for pages with user-scalable=no [r=kats] 2012-05-18 08:24:27 -07:00
Vladimir Vukicevic
9d6a42d017 b=752368; [android] random black screen when opening links from other apps; r=bgirard,ajuma,kats 2012-05-09 22:32:54 -04:00
Kartikaya Gupta
2bee45a402 Bug 749384 - Notify PZC of some events before the touchevent listeners deal with it so that we remain responsive. r=wesj 2012-05-15 13:22:26 -04:00
Kartikaya Gupta
7f60b33ddf Bug 749384 - Store the PZC instead of the LayerController. r=wesj 2012-05-15 13:21:53 -04:00
Kartikaya Gupta
2f9f805686 Bug 749384 - Hardcode the touch event timeout to 200ms. r=wesj 2012-05-15 13:21:14 -04:00
James Willcox
424a4c0c97 Small fixup to my last patch (no bug, r=blassey) 2012-05-11 11:05:37 -04:00
James Willcox
b5f5a032fd Bug 750778 - Ensure PluginLayer is always present when plugin is visible r=blassey 2012-05-11 10:54:51 -04:00
Margaret Leibovic
8819187046 Bug 752759 - Get rid of excessive mFormAssistPopup.hide() calls in PanZoomController. r=kats 2012-05-10 12:09:00 -07:00
Kartikaya Gupta
fb82ca7260 Bug 753334 - Audit and clean up code that deals with allocating/freeing direct buffers. r=Cwiiis 2012-05-10 09:46:53 -04:00
Phil Ringnalda
ba25bff73d Back out 3502d9840d98 (bug 752368) for robo* failure 2012-05-09 22:26:52 -07:00
Vladimir Vukicevic
c78e67e17b b=752368; [android] random black screen when opening links from other apps; r=bgirard,ajuma 2012-05-09 22:32:54 -04:00
Joe Drew
16cc3ebe26 Bug 728026 - Leave the scissor bit enabled when we return from Java code. r=jrmuizel 2012-05-01 12:12:45 -04:00
Kartikaya Gupta
3b62936fe6 Bug 752939 - Update the mGeckoViewport when switching tabs so that we map touch events to the right point. r=Cwiiis 2012-05-08 13:33:48 -04:00
James Willcox
5a33f3734d Bug 746633 - Don't use placeholder for full page plugins on Android r=blassey 2012-05-07 14:18:46 -04:00
Kartikaya Gupta
8c34304689 Bug 749429 - Increase displayport size multiplier default to 2000 for fixed-margin and velocity-bias. r=Cwiiis 2012-04-28 01:02:19 -04:00
Jeff Muizelaar
8ea266ecb1 Bug 743247. Ensure we don't have an array buffer bound when drawing PluginLayer. r=kats
This fixes the same problem in the newly added PluginLayer
2012-04-28 00:55:16 -04:00
Jeff Muizelaar
ba61cba43b Bug 743247. Ensure we don't have an array buffer bound when drawing. r=bas
Our C++ code was binding a buffer and leaving it bound. This
avoids that problem by making sure we unbind it before
calling VertexPointerAttrib.

--HG--
extra : rebase_source : ec39fcf4a6a74c2f96765752b0ffb6e38b44f5de
2012-04-27 21:08:30 -04:00
James Willcox
22ddeff430 Bug 727116 - Draw Flash plugins with OpenGL during pan/zoom on legacy Android r=blassey 2012-04-27 16:04:47 -04:00
Chris Lord
9b4791fda0 Bug 749630 - Fix single-colour checkerboard and masking. r=kats
Bug 748718 tried to fix masking of the checkerboard layer, but incorrectly
calculated the values for the right and bottom sides of the page, causing
less masking to occur than should happen.

It also possibly broke single-colour layer drawing (though I'm not sure this
worked previously), which this fixes by clearing to the page colour instead of
generating and drawing a texture for it.
2012-04-27 12:54:18 -04:00
Kartikaya Gupta
97492a9c94 Bug 749164 - Fix viewport intersection with page rect and guard against zero screen area. r=jrmuizel 2012-04-26 14:23:28 -04:00
Chris Lord
968ce32698 Bug 748718 - Make ScreenshotLayer use SingleTileLayer's draw function. r=kats
ScreenshotLayer overrides SingleTileLayer's draw function to simplify the
drawing process. Unfortunately, this doesn't respect the layer mask, and can
cause the layer to appear incorrectly stretched.

Change the screenshot process so that whole-page screenshots pass parameters
that are pre-scaled (to avoid mismatches when the viewport changes), and set
the page size on the ScreenShotLayer so it draws in the correct place.

This also alters the masking slightly to avoid visible seams around masks in
the centre of the page, and to avoid unnnecessary drawing at the edges of the
page.

This change fixes the frame-rate issues with the screenshot layer, as it
removes unnecessary over-draw.

--HG--
extra : rebase_source : 671c5a48d7bc08b3b452ed7eea228eb22843c1ce
2012-04-26 13:45:31 -04:00
Chris Lord
d39372407d Bug 748718 - Crash if the buffer size mismatches the layer size. r=kats
TileLayer.java always treats the buffer as if it's the same size as the texture.
Instead of crashing (or some other unintended effect), throw a RunTimeException.
Also include some commented out code that would work, but we likely don't ever
want to use (for reference when running into the exception).

--HG--
extra : rebase_source : 93b4c834c2a0dc0fab62341f779de9c7fcce5f87
2012-04-26 13:45:17 -04:00
Chris Lord
52c99cba6f Bug 748718 - Fix drawing in SingleTileLayer.java. r=kats
SingleTileLayer draws upside-down and doesn't handle non-repeating/stretched
layers correctly.

--HG--
extra : rebase_source : d33dcecc949b252826f557033e47311f885bd9b8
2012-04-26 13:45:06 -04:00
Kartikaya Gupta
a3bf19f083 Bug 747528 - Add a PredictionBiasStrategy that uses estimated draw time to paint ahead. r=Cwiiis 2012-04-25 09:53:38 -04:00
Jeff Muizelaar
deff894d8a Bug 748382. Don't count overscroll as checkerboard. r=kats
We currently check root layer position with the viewport.
During overscroll these won't match and we'll think we're
checkerboarding.

--HG--
extra : rebase_source : 27c93b524a539ad5851ff4ba5ee94f5321c24172
2012-04-24 11:26:21 -04:00
Brad Lassey
142a463d8e bug 746016 - Cache low res version of the page in the java ui for use instead of checkerboarding r=kats
--HG--
extra : rebase_source : d6de0327a46393cd4cfc327dea5689364744a71d
2012-04-24 15:13:36 -04:00
Kartikaya Gupta
35a2feec7c Bug 737510 - Expand the displayport to fill any partial tiles. r=Cwiiis 2012-04-23 23:53:44 -04:00
Kartikaya Gupta
315b043c15 Bug 737510 - Print something useful when dumping an ImmutableViewportMetrics. r=Cwiiis 2012-04-23 23:52:58 -04:00
Joe Drew
00a38cd8a9 Bug 744439 - Reset the checkerboard colour when we start loading a new page. r=kats a=blocker
--HG--
extra : rebase_source : ca294fc3dd36a0d0a299c8247aa72673e115d372
2012-04-23 10:29:14 -07:00
Joe Drew
f4582050e7 Bug 745809 - Default to white for checkboard color. r=kats
--HG--
extra : rebase_source : a1b7f38fc97f0f0048df000aebc510cbff1b1801
2012-04-23 10:28:15 -07:00
Joe Drew
41506abc0b Bug 744939 - Make animatedZoomTo operate in CSS pixels instead of device pixels. r=kats a=blocking-fennec 2012-04-14 13:18:10 -04:00
Joe Drew
7f29dc336a Bug 744916 - Make the Java viewport keep track of its size in both CSS pixels and device pixels. r=kats
--HG--
extra : rebase_source : f733c2a4eadaeaa9c845b83886af8ab335250f85
2012-04-12 16:00:56 -04:00
Ali Juma
c40c713688 Bug 733596 - Tell the compositor about the new surface size on surface change. r=bgirard a=blocking-fennec 2012-04-20 11:46:30 -04:00
Wes Johnston
d1ace57baf Bug 746679 - Reset touch event dispatch state on each touch down. r=kats, a=blocking-fennec 2012-04-20 08:40:41 -07:00
Kartikaya Gupta
3fcd38a3b0 Bug 743800 - Ensure all metrics used during one frame of composition are consistent. r=jrmuizel a=blocking-fennec 2012-04-18 01:34:05 -04:00
Wes Johnston
7a8951e19d Backed out changeset a43a33ddd2b3 2012-04-17 09:29:18 -07:00
Kartikaya Gupta
f59a7fd649 Bug 745381 - Don't call GetFrameFromPoint for non touchstart touch events. r=smaug 2012-04-17 09:28:10 -07:00
Kartikaya Gupta
a9f2029abe Bug 741693 - Move the Axis prefs from GeckoLayerClient into PanZoomController. r=Cwiiis 2012-04-17 11:33:42 -04:00
Kartikaya Gupta
3392d13abf Bug 741693 - Make the zoom animation frames preffable. r=Cwiiis 2012-04-17 11:33:19 -04:00
Jeff Muizelaar
19bdb5c297 Bug 742743. Unify pageRect retrieval. r=kats
This ensures that we use the same pageRect for the whole
drawing process and avoids the overhead of recreating it.
2012-04-05 15:58:42 -04:00
Jeff Muizelaar
67ee388e23 Bug 742743. Remove needless try/catch block. r=kats
This was needed before, but I've since removed
the code that would throw.
2012-04-05 11:42:49 -04:00
Jeff Muizelaar
ed0c88f349 Bug 742731. Remove performUpdates return value. r=kats
No need to have a return value if it's always going to be true.

--HG--
extra : rebase_source : 78b0ad28f320c84080bea6bd62cafe2cb33bdd5b
2012-04-05 11:32:16 -04:00
Kartikaya Gupta
ae83f3f0a9 Bug 744390 - Add a configurable danger zone to the velocity-bias strategy. r=Cwiiis 2012-04-14 09:50:04 -04:00
Kartikaya Gupta
aeabc8adc5 Bug 742115 - Make the java panning constants preffable; original patch stolen from :joe. r=Cwiiis 2012-04-13 10:29:14 -04:00
Kartikaya Gupta
ff40dc71d3 Bug 744241 - Make the displayport strategy options preffable. r=Cwiiis 2012-04-13 10:28:10 -04:00
Kartikaya Gupta
eb9ca81204 Bug 733041 - Switch to using the velocity-bias strategy by default. r=Cwiiis 2012-04-10 13:56:28 -05:00
Kartikaya Gupta
49cf07ae0d Bug 733041 - Adjust the velocity bias strategy to keep a small buffer in the opposite direction of the scroll. r=Cwiiis 2012-04-10 13:56:25 -05:00
Jeff Muizelaar
0def51bdb5 Bug 740303. Make sure we update the checkerboard layer. r=kats.
Presumably this started happening after we stopped setting the
checkerboard color all of the time.

--HG--
extra : rebase_source : d9c76561256161335727d3e76c8a8aed37a36c97
2012-04-09 10:59:36 -04:00
Kartikaya Gupta
5ed6f42383 Bug 742019 - Rewrite how we handle touch events so we don't break panning, and don't introduce unnecessary latency. r=wesj 2012-04-07 03:09:26 -04:00
Jeff Muizelaar
f9b0fd8b45 Bug 740898. Merge LayerView and GLSurfaceView. r=pcwalton
Once, GLThread is gone we don't have any need to support both styles of GL
rendering. Merging LayerView and FlexibleGLSurfaceView makes it clearer what's
going on, and I expect we'll also be able to take out some dead code from the
resulting LayerView.

This patch is mostly uninteresting. The interesting bits are that
implementations of requestRender and the constructors are merged. Everything
else is mostly copying over methods and renaming FlexibleGLSurfaceView's
mController to mGLController.
2012-04-05 11:28:50 -04:00
Jeff Muizelaar
4f2cb20d6a Backed out changeset 0f8439284834
The bug number was wrong.
2012-04-05 11:27:02 -04:00
Jeff Muizelaar
1268f26df1 Bug 730898. Merge LayerView and GLSurfaceView. r=pcwalton
Once, GLThread is gone we don't have any need to support both styles of GL
rendering. Merging LayerView and FlexibleGLSurfaceView makes it clearer what's
going on, and I expect we'll also be able to take out some dead code from the
resulting LayerView.

This patch is mostly uninteresting. The interesting bits are that
implementations of requestRender and the constructors are merged. Everything
else is mostly copying over methods and renaming FlexibleGLSurfaceView's
mController to mGLController.
2012-03-30 14:21:59 -04:00
Kartikaya Gupta
da06ce864b Bug 741400 - Guard against NullPointerException, and also move some code so it shouldn't happen. r=mfinkle 2012-04-04 11:55:40 -04:00
Kartikaya Gupta
b698486bcd Bug 737577 - Set the display port before bouncing rather than after. r=Cwiiis 2012-04-02 17:14:33 -04:00
Joe Drew
16e6932efe Bug 741166 - Add clarifying comment. DONTBUILD
--HG--
extra : rebase_source : 4d2e524732e6a02d99f3c2b68d4ac066399b61b3
2012-04-02 15:57:53 -04:00
Joe Drew
110c76a0cf Bug 741166 - Restore waitForValidSurface, removed in error in bug 737949. r=ajuma 2012-04-02 15:43:21 -04:00
Geoff Brown
487c80efc5 Bug 740146 - Remove unused screenshot code. r=blassey 2012-04-01 15:17:32 -04:00
Kartikaya Gupta
a97511483d Bug 740539 - Account for possible mismatch in zoom levels when handling Viewport:PageSize. r=Cwiiis 2012-04-01 14:30:35 -04:00
Jeff Muizelaar
4062986b9e Bug 740061. Remove unused skip functionality. r=kats
mSkipTextureUpdate is never set to true.
2012-03-31 13:36:42 -04:00
Jeff Muizelaar
26401e5f90 Bug 740061. Remove support for subuploads. r=kats
Since, the dirtyRect is either the size of the buffer
or empty we don't need to support subuploads anymore.
2012-03-31 13:30:11 -04:00
Jeff Muizelaar
b049831818 Bug 740061. Remove unused isDirty. r=kats 2012-03-31 13:05:05 -04:00
Jeff Muizelaar
3bbd39d3dd Bug 740061. Use set() instead of union(). r=kats
mBufferrRect is either new Rect(0, 0, bufferSize.width, bufferSize.height)
or Rect() so we can just set() instead of unioning. This is cheaper
and avoids an allocation.
2012-03-31 13:04:14 -04:00
Jeff Muizelaar
aaa63d8381 Bug 740061. Remove unused invalidate(rect). r=kats 2012-03-31 13:02:37 -04:00
Jeff Muizelaar
55780e3e28 Bug 740983. Remove unneeded invalidate from scrollbar layers. r=kats
We used to fade the scrollbars by reuploading textures
rather than using a shader. Since the textures don't change anymore
the invalidate is unneeded.
2012-03-30 17:22:59 -04:00
Joe Drew
380cd4cd8b Bug 737949 - Don't initialize EGL from Fennec java code, and remove GLThread altogether. r=pcwalton,jrmuizel 2012-03-30 10:50:54 -07:00
Kartikaya Gupta
e9436816e4 Bug 740569 - Make the display port strategy preffable. r=Cwiiis 2012-03-30 09:57:39 -04:00
Kartikaya Gupta
9fdc703bd0 Bug 737553 - Refactor much of the code in DisplayPortCalculator and tune some of the behaviour. r=Cwiiis
Commonly reused pieces of code are pulled out into reusable functions in DisplayPortCalculator.
Reusing these functions makes the individual strategies' code much clearer and the similarities
between them more apparent. One actual bug was fixed, where the display port resolution was
incorrectly calculated in the DynamicResolutionStrategy. Prior to this change, it did not apply
the reshaping algorithm to the pre-velocity display port size, resulting in a different resolution
in some cases which would leave the content blurry. Additionally, the FixedMarginStrategy was
modified so that its margins are a multiple of the view size rather than constant pixel values.
2012-03-30 09:47:22 -04:00
Kartikaya Gupta
a337361ec8 Bug 737553 - Fix null handling in DisplayPortCalculator. r=Cwiiis 2012-03-30 09:46:27 -04:00
Ali Juma
6535865665 Bug 735230 - Part 3: Use the new compositor pause/resume events. r=kats 2012-03-28 18:00:38 -04:00
Jeff Muizelaar
56b876fb67 Bug 738188. Avoid crashing by disabling the screenshot drawing code. r=kats
The crashes seem to be caused by SurfaceChange breaking any future
onDrawFrame calls. We don't seem to handle renewing the context at all. I added
mController.disposeGLContext(); mController.initGLContext(); to the
SizeChange::run() but that doesn't seem to fix it.

Bug 739867 will add this support back.

--HG--
extra : rebase_source : a4f71b22f381756c4285311cd3288b3ef46d5543
2012-03-27 21:43:56 -04:00
Kartikaya Gupta
1aa4458a8a Bug 729528 - Delete some unneeded things. r=Cwiiis 2012-03-26 13:15:50 -04:00
Kartikaya Gupta
83e8404b16 Bug 729528 - Add an alternate strategy with a margin that is a multiple of view-size and shifts it with velocity bias. r=Cwiiis 2012-03-26 13:15:50 -04:00
Kartikaya Gupta
c7fb70b37d Bug 729528 - Add an alternate strategy where we have no display port, to better isolate problems in layout/draw code. r=Cwiiis 2012-03-26 13:15:50 -04:00
Kartikaya Gupta
9ec788a1a2 Bug 729528 - Add an alternate code path (selected at compile-time) to render low-res content while panning. r=Cwiiis 2012-03-26 13:15:50 -04:00
Kartikaya Gupta
53cd348221 Bug 729528 - Move displayport calculation and comparison code into a DisplayPortCalculator class. No functional changes intended. r=Cwiiis 2012-03-26 13:15:50 -04:00
Kartikaya Gupta
e01c4001a4 Bug 729528 - Add a DisplayPortMetrics to track the requested display resolution along with the area. r=Cwiiis 2012-03-26 13:15:49 -04:00
Brian Nicholson
1166758395 Bug 725428 - Draw white background in LayerView until Gecko has painted. r=kats 2012-03-22 15:07:00 -07:00
Brian Nicholson
15931dd3db Backout 017f6dd98dc0 for robocop failures 2012-03-22 17:28:13 -07:00
Brian Nicholson
acdfb24780 Bug 725428 - Draw white background in LayerView until Gecko has painted. r=kats 2012-03-22 15:07:00 -07:00
Geoff Brown
da09399809 Bug 737411 - Robocop: update reflection references; r=kats 2012-03-22 13:35:19 -04:00
Chris Lord
49b9819ead Bug 736729 - Fix display-port on first paint and page-size changes. r=kats
Previously, we only set the display-port in response to a page scrolling itself,
or when we adjust the viewport. This meant that the display-port could be
incorrect if a viewport adjustment was sent after a page-size changed, but
before a render had completed.

Similarly, we were not updating the display-port when the viewport of a
foreground document that hadn't been displayed yet was changing. This would
cause the first-paint to have an incorrect (and often too small) display port,
which wouldn't be corrected until the page was scrolled.
2012-03-21 14:44:33 +00:00
Kartikaya Gupta
a1603a2231 Bug 737630 - Remove duplicated code from beginDrawing. r=pcwalton 2012-03-20 16:55:28 -04:00
Kartikaya Gupta
8476d96552 Bug 731603 - Save the display port and resolution in the VirtualLayer's mPosition and mResolution fields. r=Cwiiis 2012-03-20 00:07:42 -04:00
Kartikaya Gupta
3bdc8512b4 Bug 731603 - Propagate a layersUpdated flag to Java for robocop use. r=ajuma 2012-03-20 00:06:56 -04:00
Kartikaya Gupta
aa77819a92 Bug 731603 - Propagate the resolution of the painted content into syncViewportInfo as well. r=Cwiiis 2012-03-20 00:05:45 -04:00
Ali Juma
88035a4af3 Bug 737031 - Add EGL error code to error messages in GLController. r=bgirard 2012-03-19 13:35:13 -04:00
William Lachance
fcd96f3e0d Bug 736610 - Code to set checkerboard to flat color broken with Maple merge. r=pwalton 2012-03-18 13:26:54 -04:00
William Lachance
5b9d5bfc8e Bug 734003 - Using white as the base checkerboard color doesn't work. r=pwalton 2012-03-18 13:25:13 -04:00
Chris Lord
1c2dd7f8ef Bug 732756 - Fix overdrawing of checkerboard. r=kats
Fix overdrawing of the checkerboard layer by letting layers have a concept of
a display-port, and keeping the root layer's display port in track with
Gecko's.
2012-03-17 15:08:22 +00:00