Closed
Bug 577200
Opened 14 years ago
Closed 14 years ago
Allow gfxWindowsSurface to contain Alpha
Categories
(Core :: Graphics, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: bas.schouten, Assigned: bas.schouten)
References
Details
Attachments
(2 files, 1 obsolete file)
(deleted),
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
jrmuizel
:
review+
|
Details | Diff | Splinter Review |
When a gfxWindowsSurface is created around an HDC it currently always believes it's opaque. For the glass window surface this isn't true. It should be told properly if it's wrapping a transparent DC, this allows BasicLayers to later determine if it's dealing with a transparent surface so it knows if it needs to clear it when reusing it.
Attachment #456229 -
Flags: review?(jmuizelaar)
Assignee | ||
Comment 1•14 years ago
|
||
Attachment #456230 -
Flags: review?(roc)
Attachment #456230 -
Flags: review?(roc) → review+
Updated•14 years ago
|
Attachment #456229 -
Flags: review?(jmuizelaar) → review-
Comment 2•14 years ago
|
||
Comment on attachment 456229 [details] [diff] [review]
Allow HDC surfaces to contain alpha
The new function needs documentation describing what it is there for and what it does. I think one problem, is that the function doesn't really make it clear that difference between cairo_win32_surface_create and cairo_win32_surface_create_transparent is not really in the surface that's created but in the way that we interpret the data associated with the HDC. A better name would help, though I'm not exactly sure what that name should be.
Comment 3•14 years ago
|
||
roc and I came up with cairo_win32_surface_create_with_alpha which I think is better.
Comment 4•14 years ago
|
||
With Both of the patches shown here I was seeing bug 552114 with OOPP on.
Attachment #456229 -
Attachment is obsolete: true
Attachment #456603 -
Flags: review?(jmuizelaar)
Comment 6•14 years ago
|
||
Comment on attachment 456603 [details] [diff] [review]
Part 1 v2
>- * Creates a cairo surface that targets the given DC. The DC will be
>- * queried for its initial clip extents, and this
>+ * Creates a cairo surface that targets the given DC. The DC will be
>+ * queried for its initial clip extents, and this will be used as the
>+ * size of the cairo surface. The resulting surface will always be of
>+ * format %CAIRO_FORMAT_ARGB32 (as supported for transparent windows with
>+ * Windows Vista and up.
Fix up the comment and a close paren.
Attachment #456603 -
Flags: review?(jmuizelaar) → review+
Whiteboard: [needs landing]
http://hg.mozilla.org/mozilla-central/rev/c48562866467
http://hg.mozilla.org/mozilla-central/rev/8c3a6563be2d
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Whiteboard: [needs landing]
You need to log in
before you can comment on or make changes to this bug.
Description
•