Bug 11468 - Group graphics related files in platform/graphics
Summary: Group graphics related files in platform/graphics
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Platform (show other bugs)
Version: 420+
Hardware: Mac OS X 10.4
: P2 Normal
Assignee: Nikolas Zimmermann
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-10-31 10:23 PST by Nikolas Zimmermann
Modified: 2006-11-11 06:44 PST (History)
2 users (show)

See Also:


Attachments
A script doing the svn mv's automatically (2.57 KB, text/plain)
2006-10-31 11:09 PST, Nikolas Zimmermann
no flags Details
Initial patch (62.40 KB, patch)
2006-10-31 11:17 PST, Nikolas Zimmermann
no flags Details | Formatted Diff | Diff
Updated patch (89.43 KB, patch)
2006-10-31 12:06 PST, Nikolas Zimmermann
aroben: review-
Details | Formatted Diff | Diff
Updated svn move script (4.15 KB, text/plain)
2006-11-10 14:46 PST, Nikolas Zimmermann
no flags Details
Final version of the move script (4.22 KB, text/plain)
2006-11-10 15:00 PST, Nikolas Zimmermann
ap: review+
Details
Updated patch including ChangeLogs (97.18 KB, patch)
2006-11-10 15:01 PST, Nikolas Zimmermann
aroben: review-
Details | Formatted Diff | Diff
Updated patch, preserving private attributes in project.pbxproj (98.16 KB, patch)
2006-11-11 05:45 PST, Nikolas Zimmermann
ap: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Nikolas Zimmermann 2006-10-31 10:23:17 PST
As discussed with Darin & Dave, now that platform/graphics exists, a lot of stuff
can be moved there from platform/. In detail:
AffineTransform
Color
IntSize
IntRect
IntPoint
Image
ImageSource
Path
Pen
FloatSize
FloatRect
FloatPoint

platform/cairo can be moved to platform/graphics/cairo.
platform/cg can be moved to platform/graphics/cg.

From platform/qt, the respective FooQt.cpp files can be
moved into platform/graphics/qt (IntSizeQt, etc..)

I'm attaching a script soon which does the svn mv's,
and a patch which fixes os x build system & kde/qt.
Comment 1 Nikolas Zimmermann 2006-10-31 11:09:23 PST
Created attachment 11304 [details]
A script doing the svn mv's automatically

This script should ease the committer's life....
Comment 2 Nikolas Zimmermann 2006-10-31 11:17:09 PST
Created attachment 11305 [details]
Initial patch

Just run MoveScript.sh in trunk/. That will move all files correctly, then apply this patch.
Compilation tested on osx & Qt platform, ran layout tests/pixel tests/leak tests. Nothing changed.
Comment 3 Nikolas Zimmermann 2006-10-31 12:06:18 PST
Created attachment 11309 [details]
Updated patch

As I found out WebCore.vcproj is indeed hand-editable, I could fix also
win32 compilation - of course untested, as I have no win32 dev machine.
Comment 4 Adam Roben (:aroben) 2006-11-01 08:14:08 PST
Comment on attachment 11309 [details]
Updated patch

r=me. I'll take care of landing this.
Comment 5 Adam Roben (:aroben) 2006-11-01 09:45:35 PST
Comment on attachment 11309 [details]
Updated patch

With a semi-painful patch like this, it makes sense to do as complete a job as possible. Can you move Icon and IntSizeHash into platform/graphics, and move the Mac- and Win-specific implementation files to platform/graphics/mac and platform/graphics/win? Then we won't have to deal with subsequent patches to move those as well. Thanks!
Comment 6 Nikolas Zimmermann 2006-11-10 14:46:05 PST
Created attachment 11470 [details]
Updated svn move script

Also move mac/, win/ subdirectories.
Comment 7 Nikolas Zimmermann 2006-11-10 15:00:15 PST
Created attachment 11471 [details]
Final version of the move script

Forgot to move IconMac.mm before
Comment 8 Nikolas Zimmermann 2006-11-10 15:01:36 PST
Created attachment 11472 [details]
Updated patch including ChangeLogs
Comment 9 Adam Roben (:aroben) 2006-11-10 16:44:55 PST
Comment on attachment 11472 [details]
Updated patch including ChangeLogs

+		B27535690B053814002CE64F /* FloatPoint.h in Headers */ = {isa = PBXBuildFile; fileRef = B275353B0B053814002CE64F /* FloatPoint.h */; };
-		BC73E3930978CED700EDFF8A /* FloatPoint.h in Headers */ = {isa = PBXBuildFile; fileRef = BC73E3910978CED700EDFF8A /* FloatPoint.h */; settings = {ATTRIBUTES = (Private, ); }; };

On a number of files you're losing the ATTRIBUTES flag. Take a look at WebKitTools/Scripts/do-file-rename for how to rename files correctly. Perhaps you can even use that script here?

It's really great that this move is being done!
Comment 10 Nikolas Zimmermann 2006-11-11 05:45:37 PST
Created attachment 11485 [details]
Updated patch, preserving private attributes in project.pbxproj

Incorporated Adam's comments.
Tested with fresh build directory, works fine.
Comment 11 Alexey Proskuryakov 2006-11-11 06:44:22 PST
Committed revision 17727.