Closed Bug 100586 Opened 23 years ago Closed 2 years ago

remove dependency on view from gfx

Categories

(Core :: Layout, defect)

defect
Not set
normal

Tracking

()

RESOLVED INACTIVE

People

(Reporter: jonsmirl, Unassigned)

References

Details

(Keywords: arch)

Attachments

(1 file)

Patch removes one gfx API that depended on internals of the view directory. 
Three places in the tree that called this API were adjusted to use other gfx 
APIs.

removed:
NS_IMETHOD  CreateRenderingContext(nsIView *aView, nsIRenderingContext 
*&aContext) = 0;

This allows gfx to be build with depending on view.
Blocks: 100107
this looks reasonable to me.. are nsIWidgets not refcounted?
Since I didn't know that until now, I'll leave the r= to someone else (marc?)
and then I'll sr=
Blocks: 100612
Comment on attachment 49916 [details] [diff] [review]
remove dependency on view

r=attinasi
Attachment #49916 - Flags: review+
Had to fix a new use in nsSelection.cpp. Change view to widget on gfx call, 
widget is already a variable.

Also, this should not be in the patch, it is part of SVG support....

Index: mozilla/gfx/src/windows/nsDrawingSurfaceWin.cpp
===================================================================
RCS file: /cvsroot/mozilla/gfx/src/windows/nsDrawingSurfaceWin.cpp,v
retrieving revision 3.7
diff -r3.7 nsDrawingSurfaceWin.cpp
390c390,394
<         depth = ::GetDeviceCaps(aDC, BITSPIXEL);
---
>         if (aFlags & NS_CREATEDRAWINGSURFACE_24BIT)
>           depth = 24;
>         else
>           depth = ::GetDeviceCaps(aDC, BITSPIXEL);
>  
Jon: I don't see the nsSelection change you're talking about - do you have a new
patch?
Index: mozilla/content/base/src/nsSelection.cpp
===================================================================
RCS file: /cvsroot/mozilla/content/base/src/nsSelection.cpp,v
retrieving revision 3.106
diff -u -r3.106 nsSelection.cpp
--- mozilla/content/base/src/nsSelection.cpp	2001/08/21 18:38:20	3.106
+++ mozilla/content/base/src/nsSelection.cpp	2001/09/20 15:15:42
@@ -52,6 +52,7 @@
 #include "nsIDocumentEncoder.h"
 #include "nsIIndependentSelection.h"
 #include "nsIPref.h"
+#include "nsIWidget.h"
 
 // for IBMBIDI
 #include "nsFrameTraversal.h"
@@ -6971,7 +6972,7 @@
 
 	nsCOMPtr<nsIRenderingContext> rendContext;
 
-	rv = deviceContext->CreateRenderingContext(closestView, *getter_AddRefs
(rendContext));		
+	rv = deviceContext->CreateRenderingContext(widget, *getter_AddRefs
(rendContext));		
   
 	if (NS_FAILED(rv))
 		return rv;
jon, I'm actually going to reassign these bugs you filed to you, since you're
the one doing the work
Assignee: attinasi → jonsmirl
Keywords: patch
jon, do you have an updated patch? I'll check it in if so..this patch is kind of
outdated..
check in the widget dependency one and then I'll do this one over
Depends on: 106686
No longer blocks: 100107
Keywords: arch
QA Contact: chrispetersen → layout

The bug assignee didn't login in Bugzilla in the last 7 months.
:dholbert, could you have a look please?
For more information, please visit auto_nag documentation.

Assignee: jonsmirl → nobody
Flags: needinfo?(dholbert)

If there's anything to be done here at this point, someone can open a new bug about it.

Status: NEW → RESOLVED
Closed: 2 years ago
Flags: needinfo?(dholbert)
Resolution: --- → INACTIVE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: