Bug 56591 - [chromium] Support RTL pages and elements in the compositor
Summary: [chromium] Support RTL pages and elements in the compositor
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Adrienne Walker
Depends on: 60741
  Show dependency treegraph
Reported: 2011-03-17 14:18 PDT by Adrienne Walker
Modified: 2012-01-03 14:13 PST (History)
8 users (show)

See Also:

Patch (15.55 KB, patch)
2011-06-30 17:21 PDT, Adrienne Walker
no flags Details | Formatted Diff | Diff
Patch (8.89 KB, patch)
2012-01-03 13:12 PST, Adrienne Walker
jamesr: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Adrienne Walker 2011-03-17 14:18:35 PDT
Due to ScrollView::visibleContentRect having different semantics on RTL pages than on LTR ones (width of the visibleContentRect goes towards negative x instead of towards positive x), RTL pages don't render properly when accelerated compositing is turned on in the Chromium compositor.  There are some other assumptions in LayerTilerChromium and in TilingData where pages are only assumed to grow right and down instead of potentially growing left and down instead.
Comment 1 Adrienne Walker 2011-06-30 17:21:10 PDT
Created attachment 99403 [details]
Comment 2 James Robinson 2011-07-12 16:36:38 PDT
Comment on attachment 99403 [details]

Clearing review flag since this needs some mergin' love now that the edge AA patch has landed.
Comment 3 Jungshik Shin 2011-11-23 10:23:14 PST
There's a Chromium-OS bug related to this issue : http://crosbug.com/20666
Comment 4 Adrienne Walker 2012-01-03 13:12:03 PST
Created attachment 120982 [details]
Comment 5 WebKit Review Bot 2012-01-03 13:15:31 PST
Attachment 120982 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/update-webkit']" exit_code: 9

Updating OpenSource
Index mismatch: 3a7674dadd24ecd6a1b023eba203ecf2ed62fc59 != edb861612940a3244431d239dacdbc36317b627c
rereading e1e2538cff7d320c2b7cc22c0b75c9369ce9cdb2
	A	LayoutTests/svg/custom/webkit-transform-crash.html
	A	LayoutTests/svg/custom/webkit-transform-crash-expected.txt
	M	LayoutTests/ChangeLog
	M	Source/WebCore/ChangeLog
	M	Source/WebCore/svg/SVGStyledTransformableElement.cpp
103950 = 8282a1d85ad097ce4064a5896912bdb211b115e6 already exists! Why are we refetching it?
 at /usr/lib/git-core/git-svn line 5210

Died at Tools/Scripts/update-webkit line 158.

If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 6 Adrienne Walker 2012-01-03 13:24:55 PST
(In reply to comment #5)
> Attachment 120982 [details] did not pass style-queue:
> Failed to run "['Tools/Scripts/update-webkit']" exit_code: 9

I wonder if the git mirror needs to be kicked.  Mine seems stuck at r103949 and these errors are files in r103950.
Comment 7 James Robinson 2012-01-03 14:00:44 PST
Comment on attachment 120982 [details]

View in context: https://bugs.webkit.org/attachment.cgi?id=120982&action=review

Sweet! That's so easy.

> Source/WebKit/chromium/src/NonCompositedContentHost.cpp:138
> +void NonCompositedContentHost::paintContents(const WebCore::GraphicsLayer* graphicsLayer, WebCore::GraphicsContext& context, WebCore::GraphicsLayerPaintingPhase, const WebCore::IntRect& clipRect)

nit: no need to name the graphicsLayer parameter here
Comment 8 Adrienne Walker 2012-01-03 14:13:55 PST
Committed r103968: <http://trac.webkit.org/changeset/103968>