Closed
Bug 921753
Opened 11 years ago
Closed 11 years ago
Reduce the number of places where we #include gfx/2d.h
Categories
(Core :: Graphics, defect)
Tracking
()
RESOLVED
FIXED
mozilla27
People
(Reporter: ehsan.akhgari, Assigned: ehsan.akhgari)
References
(Blocks 1 open bug)
Details
Attachments
(6 files, 1 obsolete file)
106.66 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
8.06 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
53.97 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
933 bytes,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
34.82 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
938 bytes,
patch
|
seth
:
review+
|
Details | Diff | Splinter Review |
This will hopefully help minimize the impact of this header across our code base.
Assignee | ||
Comment 1•11 years ago
|
||
Attachment #811577 -
Flags: review?(roc)
Assignee | ||
Comment 2•11 years ago
|
||
Attachment #811578 -
Flags: review?(roc)
Assignee | ||
Comment 3•11 years ago
|
||
Attachment #811579 -
Flags: review?(roc)
Assignee | ||
Comment 4•11 years ago
|
||
Attachment #811580 -
Flags: review?(roc)
Assignee | ||
Comment 5•11 years ago
|
||
Attachment #811581 -
Flags: review?(roc)
Assignee | ||
Comment 6•11 years ago
|
||
Assignee | ||
Comment 7•11 years ago
|
||
https://tbpl.mozilla.org/?tree=Try&rev=467f05b6a367
The windows bustage is fixed by https://hg.mozilla.org/integration/mozilla-inbound/rev/7f0a3480a460.
Comment on attachment 811577 [details] [diff] [review]
Part 1: Avoid #including nsStyleStructInlines.h in nsIFrame.h
Review of attachment 811577 [details] [diff] [review]:
-----------------------------------------------------------------
::: layout/generic/nsIFrame.h
@@ +2931,5 @@
> + uint8_t GetDisplay() const;
> + bool IsFloating() const;
> + bool IsPositioned() const;
> + bool IsRelativelyPositioned() const;
> + bool IsAbsolutelyPositioned() const;
I don't think it's wise to uninline all these!
Attachment #811577 -
Flags: review?(roc) → review+
Attachment #811577 -
Flags: review+ → review-
Assignee | ||
Comment 9•11 years ago
|
||
(In reply to Robert O'Callahan (:roc) (Mozilla Corporation) from comment #8)
> Comment on attachment 811577 [details] [diff] [review]
> Part 1: Avoid #including nsStyleStructInlines.h in nsIFrame.h
>
> Review of attachment 811577 [details] [diff] [review]:
> -----------------------------------------------------------------
>
> ::: layout/generic/nsIFrame.h
> @@ +2931,5 @@
> > + uint8_t GetDisplay() const;
> > + bool IsFloating() const;
> > + bool IsPositioned() const;
> > + bool IsRelativelyPositioned() const;
> > + bool IsAbsolutelyPositioned() const;
>
> I don't think it's wise to uninline all these!
OK, the reason I did that was to get rid of nsStyleStructInlines.h. One option is to keep them inline, and move their implementation to a new file (nsIFrameInlines.h) which the few files which require the definitions of these methods would be able to #include. What do you think?
nsIFrameInlines works I guess.
Assignee | ||
Comment 11•11 years ago
|
||
Attachment #811577 -
Attachment is obsolete: true
Attachment #812609 -
Flags: review?(roc)
Attachment #812609 -
Flags: review?(roc) → review+
Attachment #811578 -
Flags: review?(roc) → review+
Attachment #811579 -
Flags: review?(roc) → review+
Attachment #811580 -
Flags: review?(roc) → review+
Attachment #811581 -
Flags: review?(roc) → review+
Assignee | ||
Comment 12•11 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/2f3016318932
https://hg.mozilla.org/integration/mozilla-inbound/rev/dbff283df8c1
https://hg.mozilla.org/integration/mozilla-inbound/rev/236de57e3215
https://hg.mozilla.org/integration/mozilla-inbound/rev/ae6c7a11874e
https://hg.mozilla.org/integration/mozilla-inbound/rev/42de34151ea9
https://hg.mozilla.org/mozilla-central/rev/2f3016318932
https://hg.mozilla.org/mozilla-central/rev/dbff283df8c1
https://hg.mozilla.org/mozilla-central/rev/236de57e3215
https://hg.mozilla.org/mozilla-central/rev/ae6c7a11874e
https://hg.mozilla.org/mozilla-central/rev/42de34151ea9
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla27
![]() |
||
Comment 14•11 years ago
|
||
I think this breaks build with --disable-webgl.
Comment 15•11 years ago
|
||
(In reply to Honza Bambas (:mayhemer) from comment #14)
> I think this breaks build with --disable-webgl.
Filed bug 923188.
Comment 16•11 years ago
|
||
Part 2 of this patch is wrong; it switches to forward declaring gfxPattern in gfxDrawable.h, but gfxPatternDrawable both includes an nsRefPtr<gfxPattern> as a member and implements its destructor directly in the header. This causes a compilation failure if someone includes gfxDrawable.h without including gfxPattern.h first, since the destructor of nsRefPtr<gfxPattern> needs the definition of gfxPattern to be visible.
Ehsan, could you please push a followup patch to fix this?
Assignee | ||
Comment 17•11 years ago
|
||
Normally I'd ask for a follow-up bug to be filed, but that would be kind of rude here. ;-)
Attachment #817450 -
Flags: review?(seth)
Comment 18•11 years ago
|
||
Comment on attachment 817450 [details] [diff] [review]
Fix comment 16
Review of attachment 817450 [details] [diff] [review]:
-----------------------------------------------------------------
Super duper. Thanks!
Attachment #817450 -
Flags: review?(seth) → review+
Assignee | ||
Comment 19•11 years ago
|
||
Comment 20•11 years ago
|
||
You need to log in
before you can comment on or make changes to this bug.
Description
•