Commit Graph

522 Commits

Author SHA1 Message Date
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
Ryan VanderMeulen
3edabe2c6f Backout d5b66e64cf44 (bug 732756) to see if it fixes Android crashtests. 2012-03-16 17:17:22 -04:00
Chris Lord
ff0265ea28 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-16 16:30:23 +00:00
Ali Juma
65f4af1f4a Bug 736205 - Make GLController.disposeGLContext actually destroy the context. r=bgirard 2012-03-15 15:58:32 -04:00
Ali Juma
766c4e4874 Bug 736099 - Prevent a null pointer dereference in GLController.disposeGLContext. r=kats 2012-03-15 15:57:54 -04:00
Kartikaya Gupta
12d8c44ba1 Bug 736125 - Fix Java 7 compile warnings. r=sriram 2012-03-15 15:01:52 -04:00
Kartikaya Gupta
49b5aadf76 Bug 735612 - Remove unneeded call to notifyLayerClientOfGeometryChange. r=Cwiiis 2012-03-15 10:43:32 -04:00
Kartikaya Gupta
7a119cd250 Bug 729646 - Allow Java to update the display port on background tabs as well, so that we draw the right thing upon switching to it. r=Cwiiis 2012-03-15 10:38:43 -04:00
Kartikaya Gupta
08ef4dfac6 Bug 729646 - Remove some annoying logging. r=Cwiiis 2012-03-15 10:38:43 -04:00
James Willcox
a0db3488b7 Bug 728371 - Make Flash work with GLES 2.0 and GL layers r=pcwalton
--HG--
extra : rebase_source : 4b845e7dc4224bfd807fb757e7199c91655c0d69
2012-03-12 13:03:54 -04:00
Kartikaya Gupta
6184d9e2af Back out 89833e1b3016 (bug 707571) as it is broken with the new maple rewrite. r=backout 2012-03-13 17:11:28 -04:00
Kartikaya Gupta
bc6777aae5 Bug 725095 - Various fixes to get maple ready to land on m-c. r=Cwiiis
- Disable fps layer.
- Add some comments to FlexibleGLSurfaceView.
- Get rid of getBufferSize and some other related cleanup.
- Add some comments to compositor-invoked functions in GeckoLayerClient.
- Take out unnecessary parameters to Rect constructor.
- Move class variable initialization to constructor.
- Take out kUsingGLLayers.
- Add a comment about changes in background color.
- Fix up convertViewPointToLayerPoint to be more correct.
- Add note in setPositionAndResolution about how it might be wrong.
- Modify provideEGLSurface to not store the surface in mEGLSurface.
- Remove some unneeded, commented out code in GLThread.
2012-03-12 16:20:19 -04:00
Kartikaya Gupta
e7c9424a66 Bug 735180 - Remove max(0,..) clamps when calculating display port margins; negative margins are needed during overscroll. r=Cwiiis 2012-03-13 12:14:25 -04:00
Ehsan Akhgari
5097691ede Backout changeset d2340d74fc19 because of bug 735076 2012-03-12 18:51:44 -04:00
Chris Lord
54f1c2a4e3 Bug 732756 - Fix layers with a mask appearing squashed. r=pcwalton
If a mask was set on a layer, each sub-rectangle would end up drawing with the
full texture extents.
2012-03-12 18:49:01 +00:00
James Willcox
02313468a0 Bug 728371 - Make Flash work with GLES 2.0 and GL layers r=pcwalton
--HG--
extra : rebase_source : f7a9eb9dab84cb35ba17fb1551051dae2e744d00
2012-03-12 13:03:54 -04:00
Kartikaya Gupta
c2b8ddeddc Bug 732564 - Align the rotation/resize codepath with The Grand Viewport Plan of 2012. r=Cwiiis 2012-03-12 12:03:38 -04:00
Kartikaya Gupta
537956a054 Bug 732564 - Make sure to update the display port when we get a viewport update. r=Cwiiis 2012-03-12 12:03:38 -04:00
Kartikaya Gupta
b7e427003c Bug 732564 - Move the display port trimming to Java so that we always have a copy of the display port being used. r=Cwiiis 2012-03-12 12:03:38 -04:00
Kartikaya Gupta
afb3444228 Bug 732564 - Take out java-side draw suppression on rotation as it often prevents redrawing completely; we can put this back later if needed. r=Cwiiis 2012-03-12 12:03:38 -04:00
Kartikaya Gupta
51962130f6 Bug 732564 - Modify the Viewport:Update event to take a viewport and synchronously update Java with it. r=Cwiiis 2012-03-12 12:03:38 -04:00
Kartikaya Gupta
e7a3a7af3e Bug 732564 - Merge the UpdateAndDraw and UpdateLater events into a single Update event since they do the same thing now. r=Cwiiis 2012-03-12 12:03:37 -04:00
Kartikaya Gupta
041332fc6d Bug 732564 - Remove JS-driven redraw; gecko should be invalidating whenever we need it to, and we're not suppressing anything now. r=Cwiiis 2012-03-12 12:03:37 -04:00
Kartikaya Gupta
7015851d36 Bug 732091 - Part 4: Add JNI-exposed functions on GeckoLayerClient to allow the compositor to update various properties. r=Cwiiis 2012-03-12 11:50:21 -04:00
Benoit Girard
fb79343e79 Merge mc->Maple 2012-03-09 11:13:30 -05:00
Jeff Muizelaar
69adeff0bf Bug 732576. make getViewTransform fast. r=kats
This removes the logging, locking and allocations from getViewTransform.

This reduces the time spent from an median of 6.3ms to 0.061ms

We use a new scheme where the view transform is immutable and the member
variable containing it is atomically overwritten. So we may get a slightly old
view transform but this won't be a problem.
2012-03-02 14:31:27 -05:00
Benoit Girard
8461970bfc Bug 733184 - Remove more logging from widget. r=pcwalton 2012-03-05 19:58:18 -05:00
Benoit Girard
91127e368d Bug 733184 - Maple: Remove some Java logging. r=pcwalton 2012-03-05 18:50:00 -05:00
Chris Lord
1fdd807090 Bug 731570 - Don't re-upload scrollbar texture on opacity change. r=kats
Rather than re-render the scrollbar texture and re-upload it when the opacity
changes, just render/upload it once and use a shader to modify the opacity.
2012-03-02 12:12:08 +00:00
Chris Lord
1c2a06b747 Bug 731570 - Rename and make default shaders public. r=pcwalton
Rename and make public the default shaders used in LayerRenderer, and make
loadShader a public, static method. This should make it easier for layers to
implement their own shader programs.
2012-03-02 12:12:08 +00:00
Chris Lord
52546827ab Bug 732013 - Fix overdraw in LayerRenderer. r=kats
Add an optional rectangular mask to SingleTileLayer so that we can reduce the
amount of overdraw when drawing the background and checkerboard layers.
2012-03-01 19:43:14 +00:00
Benoit Girard
08f33710af Merge mc->maple 2012-03-01 10:44:44 -05:00
Kartikaya Gupta
594a05e06b Bug 730966 - Remove time-based throttling of viewport change events; the refresh driver does this in Gecko already. r=pcwalton 2012-02-29 16:42:53 -05:00
Kartikaya Gupta
fb19acba47 Bug 731619 - Fix race condition where flags are cleared before they are set. r=ehsan 2012-02-29 16:26:02 -05:00
Kartikaya Gupta
067dac7bbe Bug 731417 - Fix missing call to checkMonitoringEnabled for the LayerRenderer we use in OMTC, and make it frame rate layer wider so it doesn't get truncated. r=pcwalton 2012-02-29 14:08:23 -05:00
Benoit Girard
c405868a59 Bug 730967 - Don't recompute checkerboard color every frame. r=pwalton
--HG--
extra : rebase_source : 1c8251bb2e84e0039185ffe9f80d43f52d7c2bcf
2012-02-28 19:17:58 -05:00
Kartikaya Gupta
ab3d01ba8a Bug 730949 - Take the frame rate layer initialization out of the startup path. r=sriram 2012-02-28 18:08:43 -05:00
Kartikaya Gupta
3dc008dce0 Bug 730687 - Hook up the aboutToCheckerboard code again. r=Cwiiis 2012-02-28 16:14:14 -05:00
Kartikaya Gupta
822a63318b Bug 730687 - Fold updateViewport into endDrawing. r=Cwiiis 2012-02-28 16:13:26 -05:00
Kartikaya Gupta
ac12da1374 Bug 730687 - Move the display port margin amounts out of browser.js and into Java. r=Cwiiis 2012-02-28 16:13:20 -05:00
Kartikaya Gupta
0061b51e7e Take out a line I inadvertently left in in cset ce31a3b140a2 2012-02-26 17:27:58 -05:00
Kartikaya Gupta
fbe94f983a Merge the origin (Point) and size (IntSize) properties of Layers into a single position (Rect) property.
Not only does this reduce the amount of cruft needed while getting and setting these properties, it
makes the code more consistent because we don't have half of this stored in the Layer base class and
the other half provided by an abstract method implementation in subclasses. Furthermore, this
allows the VirtualLayer size to be updated based on the area painted by gecko rather than remaining
fixed at the view size when the virtual layer was created.
2012-02-26 10:47:47 -05:00
Kartikaya Gupta
e37885a6c7 Take out the code that allows Java to further clip the invalid rect based on visible area.
This code is never used because the invalid rect we pass to DrawTo is ignored;
the nsLayoutUtils::PaintFrame uses the display port as the visible region to
paint instead. (http://mxr.mozilla.org/mozilla-central/source/layout/base/nsLayoutUtils.cpp#1603)
2012-02-26 10:47:45 -05:00
Benoit Girard
fb8fcecde6 Work around white not working as Cherckerboard color. r=kats
--HG--
extra : rebase_source : 768fe9d869c1aff743fbc69b5f537668eedf3298
2012-02-24 15:13:39 -05:00
Kartikaya Gupta
9969c98db4 Remove unused parameters passed to endDrawing 2012-02-24 12:11:29 -05:00
Kartikaya Gupta
fa940eb49b Pull out tile dimensions being passed around uselessly 2012-02-24 10:51:41 -05:00
Brad Lassey
a2ce1ffae0 bug 707571 - user-scalable property of viewport meta tag is ignored r=mbrubeck
--HG--
extra : rebase_source : a4a4d9fb6c61ff91ffb917c1e25b78a6266d7347
2012-03-08 11:55:19 -05:00
Kartikaya Gupta
b1d893be53 Extract a setOriginAndResolution method to VirtualLayer and drop the locking as it is not needed. 2012-02-23 16:29:22 -05:00
Kartikaya Gupta
8551a0e239 Rename mTileLayer to mRootLayer since it's not a tile layer anymore. Also change the type to VirtualLayer 2012-02-23 16:21:45 -05:00
Kartikaya Gupta
bb376197c2 Move transaction lock and synchronization from callers of updateViewport in to updateViewport itself 2012-02-23 15:31:40 -05:00
Kartikaya Gupta
9072b3ae2e Move the beginTransaction from beginDrawing to endDrawing since we don't need to hold the lock during paint 2012-02-23 15:26:20 -05:00
Kartikaya Gupta
abd4d3c2b4 Remove redundant getDisplayportOrigin method from ViewportMetrics; use getOrigin instead 2012-02-23 15:08:05 -05:00
Kartikaya Gupta
5857681738 Bug 730033 - Rip out WidgetTileLayer and associated gunk. r=snorp 2012-02-23 14:55:15 -05:00
Kartikaya Gupta
af5d11aaee Add a bunch of comments to trace which threads transaction-related things are happening on 2012-02-23 13:25:19 -05:00
Kartikaya Gupta
7ab9804cda Move the call to moveFrameRateLayer off the UI thread since it calls beginTransaction 2012-02-23 12:54:54 -05:00
Kartikaya Gupta
024374bb46 Convert tabs to spaces 2012-02-23 11:31:01 -05:00
Kartikaya Gupta
01cac3410f Re-land a fixed c8451607557b (Take out the empty GeckoLayerClient.dimensionsChanged method and the unneeded support architecture for it) 2012-02-23 10:09:38 -05:00
Benoit Girard
4f1487504a Merge backout 2012-02-23 11:09:14 -05:00
Benoit Girard
afdf4e93b3 Backed out changeset c8451607557b 2012-02-23 11:04:11 -05:00
Kartikaya Gupta
32f2175b41 Take out unused MultiTileLayer 2012-02-23 10:11:16 -05:00
Kartikaya Gupta
82652145a9 Take out the empty GeckoLayerClient.dimensionsChanged method and the unneeded support architecture for it 2012-02-23 10:09:38 -05:00
Ehsan Akhgari
e7a0b58044 Bug 728614 - Part 8: Remove the unneeded assignment from getViewTransform; r=kats 2012-02-22 21:27:36 -05:00
Ehsan Akhgari
aaf74b5c86 Address the review comment, missed from the previous push 2012-02-22 17:15:53 -05:00
Ehsan Akhgari
9c18c93381 Bug 728614 - Part 7: Pause painting when the orientation changes in order to avoid getting intermediate frames painted; r=kats 2012-02-22 15:14:28 -05:00
Ehsan Akhgari
6cfc3f9a14 Bug 728614 - Fix the zoom level when the device rotates on pages with <meta viewport> information; r=kats 2012-02-22 13:13:16 -05:00
Kartikaya Gupta
c0b7a3b747 Strip down GeckoLayerClient - scope down visibility of fields/methods, remove empty methods and dead code, and inline some one-liner methods. 2012-02-22 15:08:46 -05:00
Kartikaya Gupta
53a439cccc Completely collapse GeckoGLLayerClient into GeckoLayerClient. 2012-02-22 14:45:44 -05:00
Kartikaya Gupta
dd4b0855ae Bug 729528 - Add logging to figure out how much viewport prediction will help us. r=Cwiiis 2012-02-22 12:02:38 -05:00
Kartikaya Gupta
3c391ae195 Rip out the unused viewport bias and optimum offset code 2012-02-22 10:22:31 -05:00
Kartikaya Gupta
1578d03ea6 Reduce some unnecessary logcat spew 2012-02-22 09:37:39 -05:00
Benoit Girard
e61477fb94 Don't do TexImage2D+TexSubImage2D 2012-02-21 16:44:59 -05:00
Benoit Girard
6a237f25c7 mCheckerboardShouldShowChecks should default to true. DONTBUILD 2012-02-21 16:19:23 -05:00
Chris Lord
67c0bdc893 Bug 728978 - Fix scrollToFocusedInput in browser.js. r=mfinkle
This fixes scrollToFocusedInput by doing the extra scrolling that scrollIntoView
can't do (due to the way we zoom), and by making sure the events land in the
right order.
2012-02-21 16:46:48 +00:00
Jeff Muizelaar
bc85051deb Bug 728622. Remove dead code for dealing with view in Layer.java. r=clord
Now that bug 727939 has landed we don't seem to have any need to keep
the view around.
2012-02-21 11:05:09 -05:00
Brad Lassey
d91772d0d4 bug 726827 - MAPLE: Black thumbnails r=jmuizelaar 2012-02-21 01:22:56 -05:00
Joe Drew
f392e297d3 Bug 728631 - Don't disable blending inside our Java rendering code, because we rely on it remaining set from LayerManagerOGL. r=dougt
--HG--
extra : rebase_source : 9fe18ddb4582455fe428f14acb8a931e1b1e4661
2012-02-20 14:48:36 -08:00
Ehsan Akhgari
6843e16113 Fix clicking 2012-02-20 17:47:32 -05:00
Ehsan Akhgari
4e66f598b5 Bug 728614 - Part 2: Remove viewport offsets 2012-02-20 16:51:37 -05:00
Jeff Muizelaar
c091627d90 Bug 727939. Avoid double painting after invalidation. r=bgirard
This reduces the paint rate on things like runfield
so that we only paint at the rate that we're invalidating.

We do so by not requesting render in endTransaction

It looks like endTransaction is only called by endDrawing
on the gecko thread and only on VirtualLayers. We don't
need the extra requestRender call because we've already
done the rendering.
2012-02-18 18:06:30 -05:00
Brad Lassey
95697a85f1 backing out e45688c8531c because it broke the build 2012-02-18 14:21:48 -05:00
Patrick Walton
ce3f178378 Stub untested gralloc support, disabled for now 2012-02-17 23:53:21 -08:00
Chris Lord
dd4aacfc79 Fix screen/window size change events.
Window size was being treated as equivalent to screen size, which it isn't.
Make sure to send the size-changed event when either the window size or the
screen size change, and to properly differentiate between the two.
2012-02-17 17:25:52 +00:00
Kartikaya Gupta
c0bede0671 (Part 5) Move overrides and abstract/interface implementations up from GeckoGLLayerClient into GeckoLayerClient 2012-02-17 10:33:23 -05:00
Kartikaya Gupta
61b3014dc0 (Part 4) Mark all gfx functions invoked by JNI so I don't shoot myself in the foot shortly 2012-02-17 10:13:56 -05:00
Kartikaya Gupta
fb6b8d0de1 (Part 3) Collapse LayerClient into GeckoLayerClient, the only subclass 2012-02-17 10:03:28 -05:00
Kartikaya Gupta
248ea83b06 (Part 2) Stop PlaceholderLayerClient from extending LayerClient since it has nothing in common with GeckoLayerClient and makes a mockery of OOP 2012-02-17 09:56:47 -05:00
Kartikaya Gupta
18f2df4c4b (Part 1) Get rid of LayerController.getLayerClient() 2012-02-17 09:32:24 -05:00
Kartikaya Gupta
6e72a9570d Also remove dangling entrails of the layer client type 2012-02-17 09:16:14 -05:00
Kartikaya Gupta
5ec5bd703f Rip out unused GeckoSoftwareLayerClient since we've committed to GL layers. 2012-02-17 09:04:50 -05:00
Kartikaya Gupta
f3c1b6a928 Put back some things left out of dougt's merge 2012-02-17 01:36:49 -05:00
Doug Turner
b66a0f8126 Merge with mozilla-central 2012-02-16 18:06:54 -08:00
Kartikaya Gupta
067aec74dc Cache the checkberboard color so that we don't redo a bunch of work uselessly 2012-02-16 12:04:37 -05:00
Patrick Walton
0a26b4f1af Don't render while pinching. Reduces jank and makes zooming easier to debug. 2012-02-13 22:48:00 -08:00
Patrick Walton
1b46184a8f Fix scissor rect and use the Java compositor's cached viewport metrics when drawing decorations 2012-02-13 20:20:38 -08:00
Kartikaya Gupta
678c1602f3 Guard against OOMing in GeckoGLLayerClient.getBitmap like we were doing in GeckoSoftwareLayerClient 2012-02-13 18:15:27 -05:00
Patrick Walton
ec85569a69 Expose ActivateProgram() and DeactivateProgram() to widget 2012-02-13 13:55:10 -08:00
Patrick Walton
9e0e8cfe4a Split out Java compositor shader program activation and deactivation into separate functions 2012-02-13 12:27:09 -08:00
Patrick Walton
6676ba0403 Deactivate vertex attribute arrays and the program. Seems to fix the crashes on PowerVR. 2012-02-10 23:50:13 -08:00
Patrick Walton
d698580c18 Uncomment the Java compositor integration, except for the part that causes PowerVR crashes 2012-02-10 23:03:02 -08:00
Ali Juma
77cc2a2579 Fix race conditions when updating view transform, by switching to an absolute transform. 2012-02-10 16:08:24 -05:00
Ali Juma
302758e203 Merge heads. 2012-02-10 10:31:31 -05:00
Patrick Walton
76fcf64d4a Expose the necessary Java routines to render decorations through JNI 2012-02-09 22:58:18 -08:00
Ali Juma
c1890c2bfc Code cleanup. 2012-02-09 17:39:04 -05:00
Patrick Walton
fdf11e0c13 Split up the LayerRenderer's drawing logic in preparation for exposing it to JNI 2012-02-08 22:27:01 -08:00
Patrick Walton
2acc9c16c8 Bug 723036 - Port the Java compositor to OpenGL ES 2.0 2012-02-08 21:13:08 -08:00
Benoit Girard
b18a77e427 Merge viewport with tip 2012-02-08 20:42:17 -05:00
Benoit Girard
3f101c071a Merge working on Nexus S 2012-02-08 20:23:27 -05:00
Ali Juma
dc7ca971bd Merge. 2012-02-08 19:55:13 -05:00
Benoit Girard
2430a6b71c Merge fixes 2012-02-08 19:01:21 -05:00
Benoit Girard
7dc71cdb8d Merge m-c into maple 2012-02-08 16:43:22 -05:00
Ali Juma
979559567f Fix incorrect rendering after orientation change. 2012-02-08 16:09:10 -05:00