If you think a bug might affect users in the 57 release, please set the correct tracking and status flags for Release Management.

move stuff out of gfx/public/

RESOLVED FIXED in mozilla1.4alpha

Status

Core Graveyard
GFX
P3
enhancement
RESOLVED FIXED
15 years ago
9 years ago

People

(Reporter: Biesinger, Assigned: Biesinger)

Tracking

Trunk
mozilla1.4alpha

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

so I found some files in gfx/public/ today that, imho, should not be there...

1. There's nsPDECommon.h nsRepeater.h nsWatchTask.h
these are only used on MacOS... however, Makefile.in exports nsRepeater.h for
all OSes, and for all of these files, it would be imho clearer if they would be
in a mac-specific directory (gfx/public/mac or something like that), so that
people don't think this stuff is available on all platforms/must be implemented
by all toolkits.

2. nsNameValuePairDB.h nsRenderingContextImpl.h imgScaler.h
these are only used from inside gfx/... I don't think they should live in
public/, and the last two of these files should definitely not be exported,
imho... imgScaler misses the NS_GFX part in the declaration which would (I
think) be necessary if it would be used outside of gfx.

3. gfxcompat.h.
from the comment in the file, this is:
 * gfx ifdef file to make gfx2 and gfx live together
given that gfx2 is dead, I would think that this file can be removed, and
includes for it can probably be replaced by #include "nsCoord.h" which is what
gfxcompat.h does unless GFX2_ONLY is defined (which is, basically, never the case).



Any comments on my suggestions above?
I'm for it.
er, I just found another issue... nsRegion.h is in src/ but is a public API that
is also used outside gfx... imho, it should be moved to public/.

in addition, gfx/src/Makefile.in has an EXPORTS entry for nsFontList.h, though
that file is used only inside gfx/; that EXPORTS line can probably be simply
deleted as well...

reassigning to me, as I plan to work on this sometime.
Assignee: kmcclusk → cbiesinger
OS: Windows 98 → All
Priority: -- → P3
Hardware: PC → All
Target Milestone: --- → mozilla1.4alpha
Created attachment 112106 [details] [diff] [review]
patch

this should do it, except the move of the mac files I mentioned. I'd like to do
that in a separate patch, because it would involve mac project xml files
(right?)
Comment on attachment 112106 [details] [diff] [review]
patch

oh yeah, I also merged gfxtypes and gfx2types, because the latter was only used
by the former, and a separate file just made no sense to me.
Attachment #112106 - Flags: review?(roc+moz)
Do we actually use any of the stuff from gfx2types.idl? Or can they just be
completely removed?
Created attachment 112140 [details] [diff] [review]
patch v1.1

ok, some (most) of the types there were not used. I now left only the used ones
in.
Attachment #112106 - Attachment is obsolete: true
Attachment #112106 - Flags: review?(roc+moz)
Attachment #112140 - Flags: review?(roc+moz)
Status: NEW → ASSIGNED
Comment on attachment 112140 [details] [diff] [review]
patch v1.1

sr=roc+moz

strictly speaking I'm not a GFX peer. try kmcclusk
Attachment #112140 - Flags: superreview+
Attachment #112140 - Flags: review?(roc+moz)
Attachment #112140 - Flags: review?(kmcclusk)
Comment on attachment 112140 [details] [diff] [review]
patch v1.1

r=kmcclusk@netscape.com
Attachment #112140 - Flags: review?(kmcclusk) → review+
patch checked in. leaving open for the mac stuff I mentioned.
.
Status: ASSIGNED → NEW
I decided to file Bug 223442 for the mentioned mac stuff
Status: NEW → RESOLVED
Last Resolved: 14 years ago
Resolution: --- → FIXED
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.