Bug 18435

Summary: Cairo build does not work as it is in the tree
Product: WebKit Reporter: Daniel Zucker <zucker>
Component: PlatformAssignee: Nobody <webkit-unassigned>
Severity: Normal CC: a.butenka, bfulgham
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Windows Vista   
Description Flags
fix for Cairo build aroben: review-

Description Daniel Zucker 2008-04-11 15:10:07 PDT
Cairo build needs to remove functions WebFrame::spoolPages; DrawTextAtPoint; and createDragImageForLink since these require functionality not currently implemented in the Cairo configuration.
Comment 1 Daniel Zucker 2008-04-11 15:11:44 PDT
Created attachment 20487 [details]
fix for Cairo build

this is needed for Cairo build to work
Comment 2 Adam Roben (:aroben) 2008-04-14 09:04:27 PDT
Comment on attachment 20487 [details]
fix for Cairo build

This patch seems to use tabs for indentation. Please only use 4 spaces for indentation.

@@ -1665,6 +1666,7 @@ HRESULT STDMETHODCALLTYPE WebFrame::spoo
     /* [in] */ UINT endPage,
     /* [retval][out] */ void* ctx)
     if (!printDC || !ctx) {
         return E_POINTER;
@@ -1748,8 +1750,11 @@ HRESULT STDMETHODCALLTYPE WebFrame::spoo
     return S_OK;
+	notImplemented();
+	return E_NOTIMPL;
+#endif //!PLATFORM(CAIRO)

Can we move most of spoolPages down into WebCore? You should talk to Alp Toker, who I think was working on a cross-platform printing abstraction.

 void DrawTextAtPoint(CGContextRef cgContext, LPCTSTR text, int length, POINT point, const WebFontDescription& description, CGColorRef color, int underlinedIndex, bool drawAsPassword)
     GraphicsContext context(cgContext);
     String drawString(text, length);
     if (drawAsPassword)
         drawString = drawString.impl()->secure(WebCore::bullet);
     WebCoreDrawTextAtPoint(context, drawString, point, makeFont(description), color, underlinedIndex);
+	notImplemented();
+#endif //!Platform(CAIRO)

Seems like this whole function will have to be compiled out for Cairo, since you won't have a CGContextRef type.

I think we can/should rework WebDragClient to use the new ImageBuffer abstraction so that we can remove the CG-specific code from it.
Comment 3 Alexander Butenko 2009-07-28 21:14:09 PDT
builds fine now.
Comment 4 Brent Fulgham 2009-12-18 09:24:50 PST
Equivalents of these patches are all in the tree now.