Bug 83956 - [WK2] Use ShareableSurface instead of ShareableBitmap in DrawingAreaImpl
: [WK2] Use ShareableSurface instead of ShareableBitmap in DrawingAreaImpl
Status: NEW
: WebKit
WebKit2
: 528+ (Nightly build)
: All All
: P2 Normal
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2012-04-13 16:04 PST by
Modified: 2012-07-11 05:45 PST (History)


Attachments
Patch (15.89 KB, patch)
2012-04-13 16:31 PST, Igor Trindade Oliveira
no flags Review Patch | Details | Formatted Diff | Diff
Patch (21.38 KB, patch)
2012-04-16 09:30 PST, Igor Trindade Oliveira
buildbot: commit‑queue-
Review Patch | Details | Formatted Diff | Diff
Patch (21.94 KB, patch)
2012-04-16 10:06 PST, Igor Trindade Oliveira
buildbot: commit‑queue-
Review Patch | Details | Formatted Diff | Diff
Archive of layout-test-results from ec2-cr-linux-01 (6.33 MB, application/zip)
2012-04-16 13:06 PST, WebKit Review Bot
no flags Details
Patch (24.34 KB, patch)
2012-04-16 19:26 PST, Igor Trindade Oliveira
buildbot: commit‑queue-
Review Patch | Details | Formatted Diff | Diff
Patch (24.57 KB, patch)
2012-04-16 20:37 PST, Igor Trindade Oliveira
buildbot: commit‑queue-
Review Patch | Details | Formatted Diff | Diff
Patch (24.57 KB, patch)
2012-04-16 21:36 PST, Igor Trindade Oliveira
hausmann: review-
Review Patch | Details | Formatted Diff | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2012-04-13 16:04:39 PST
GTK and EFL port have plans to use OpenGL instead of Image backend, as initial step in WebKit2 we should use ShareableSurface instead of ShareableBitmap, so we can use OpenGL surfaces.
------- Comment #1 From 2012-04-13 16:31:49 PST -------
Created an attachment (id=137175) [details]
Patch

WIP patch.
------- Comment #2 From 2012-04-16 09:30:25 PST -------
Created an attachment (id=137354) [details]
Patch

Proposed patch.
------- Comment #3 From 2012-04-16 09:32:32 PST -------
Attachment 137354 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebKit2/CMakeLists.txt', u'Source/W..." exit_code: 1
Source/WebKit2/Shared/ShareableSurface.h:67:  The parameter name "hints" adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 15 files


If any of these errors are false positives, please file a bug against check-webkit-style.
------- Comment #4 From 2012-04-16 09:51:08 PST -------
(From update of attachment 137354 [details])
Attachment 137354 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/12416147
------- Comment #5 From 2012-04-16 10:06:28 PST -------
Created an attachment (id=137359) [details]
Patch

Fix windows build.
------- Comment #6 From 2012-04-16 10:09:57 PST -------
Attachment 137359 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebKit2/CMakeLists.txt', u'Source/W..." exit_code: 1
Source/WebKit2/Shared/ShareableSurface.h:67:  The parameter name "hints" adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 16 files


If any of these errors are false positives, please file a bug against check-webkit-style.
------- Comment #7 From 2012-04-16 10:20:48 PST -------
(From update of attachment 137359 [details])
Attachment 137359 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/12412438
------- Comment #8 From 2012-04-16 13:05:59 PST -------
(From update of attachment 137359 [details])
Attachment 137359 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/12414447

New failing tests:
fast/canvas/webgl/shader-precision-format.html
------- Comment #9 From 2012-04-16 13:06:11 PST -------
Created an attachment (id=137386) [details]
Archive of layout-test-results from ec2-cr-linux-01

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: ec2-cr-linux-01  Port: <class 'webkitpy.common.config.ports.ChromiumXVFBPort'>  Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
------- Comment #10 From 2012-04-16 19:26:48 PST -------
Created an attachment (id=137459) [details]
Patch

Trying again.
------- Comment #11 From 2012-04-16 19:30:53 PST -------
(From update of attachment 137459 [details])
View in context: https://bugs.webkit.org/attachment.cgi?id=137459&action=review

> Source/WebKit2/Shared/ShareableSurface.h:41
> +        SupportsGraphicsSurface = 0x01,
> +        None = 0x0

I'd rather if we put None first, and call it NoHints
------- Comment #12 From 2012-04-16 19:48:14 PST -------
(From update of attachment 137459 [details])
Attachment 137459 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/12414631
------- Comment #13 From 2012-04-16 20:37:47 PST -------
Created an attachment (id=137471) [details]
Patch

Use NoHints instead of None.
------- Comment #14 From 2012-04-16 20:58:49 PST -------
(From update of attachment 137471 [details])
Attachment 137471 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/12416438
------- Comment #15 From 2012-04-16 21:36:04 PST -------
Created an attachment (id=137474) [details]
Patch

it is becoming boring, trying again.
------- Comment #16 From 2012-06-27 23:18:39 PST -------
(In reply to comment #0)
> GTK and EFL port have plans to use OpenGL instead of Image backend, as initial step in WebKit2 we should use ShareableSurface instead of ShareableBitmap, so we can use OpenGL surfaces.

You say initial step, but are you actually going to end up with that design?

I mean, if you go through with this you're also going to have to change the backing stores to be surfaces, and you'll probably want to combine multiple updates into the same surface. And then you'll end up half-way re-implementing what exists already for the WK2 AC implementation.

So wouldn't it be simpler to leave the drawing area with its working approach of using shared memory and software rendering (and update incorporation) and instead focus on the WK2 AC implementation? Because I suspect in the end you're going to want to use that and remain in permanent state of AC.
------- Comment #17 From 2012-06-27 23:22:22 PST -------
(In reply to comment #16)
> (In reply to comment #0)
> > GTK and EFL port have plans to use OpenGL instead of Image backend, as initial step in WebKit2 we should use ShareableSurface instead of ShareableBitmap, so we can use OpenGL surfaces.
> 
> You say initial step, but are you actually going to end up with that design?
> 
> I mean, if you go through with this you're also going to have to change the backing stores to be surfaces, and you'll probably want to combine multiple updates into the same surface. And then you'll end up half-way re-implementing what exists already for the WK2 AC implementation.
> 
> So wouldn't it be simpler to leave the drawing area with its working approach of using shared memory and software rendering (and update incorporation) and instead focus on the WK2 AC implementation? Because I suspect in the end you're going to want to use that and remain in permanent state of AC.

I totally agree with that. That would be the right approach.
------- Comment #18 From 2012-07-11 05:45:58 PST -------
(From update of attachment 137474 [details])
I'm saying r- based on the lack of clarity about where this is going and why it is better than putting an effort into getting WK2 AC working for the ports in question.