Removed code which was painting rectangles over the plugin objects on the Mac. Bug #41016. r=av

This commit is contained in:
bnesse%netscape.com 2000-07-11 20:06:05 +00:00
Родитель 93fd499362
Коммит 639d02f3fa
2 изменённых файлов: 66 добавлений и 102 удалений

Просмотреть файл

@ -1129,56 +1129,38 @@ nsObjectFrame::Paint(nsIPresContext* aPresContext,
nsFramePaintLayer aWhichLayer)
{
const nsStyleDisplay* disp = (const nsStyleDisplay*)mStyleContext->GetStyleData(eStyleStruct_Display);
if ((disp != nsnull) && !disp->IsVisibleOrCollapsed())
{
if ((disp != nsnull) && !disp->IsVisibleOrCollapsed()) {
return NS_OK;
}
nsIFrame * child = mFrames.FirstChild();
if(child != NULL) //This is an image
{
if (child != NULL) { // This is an image
nsObjectFrameSuper::Paint(aPresContext, aRenderingContext, aDirtyRect, aWhichLayer);
return NS_OK;
}
aRenderingContext.SetColor(NS_RGB(192, 192, 192));
aRenderingContext.FillRect(0, 0, mRect.width, mRect.height);
#if !defined(XP_MAC)
#if defined (XP_MAC)
// delegate all painting to the plugin instance.
if ((NS_FRAME_PAINT_LAYER_FOREGROUND == aWhichLayer) && (nsnull != mInstanceOwner)) {
mInstanceOwner->Paint(aDirtyRect);
}
#elif defined (XP_PC)
if (NS_FRAME_PAINT_LAYER_FOREGROUND == aWhichLayer)
{
//~~~
#ifdef XP_WIN
nsIPluginInstance * inst;
if(NS_OK == GetPluginInstance(inst))
if (NS_OK == GetPluginInstance(inst))
{
NS_RELEASE(inst);
// Look if it's windowless
nsPluginWindow * window;
mInstanceOwner->GetWindow(window);
if(window->type == nsPluginWindowType_Drawable)
if (window->type == nsPluginWindowType_Drawable)
{
PRUint32 hdc;
aRenderingContext.RetrieveCurrentNativeGraphicData(&hdc);
mInstanceOwner->Paint(aDirtyRect, hdc);
return NS_OK;
}
}
#endif
const nsStyleFont* font = (const nsStyleFont*)mStyleContext->GetStyleData(eStyleStruct_Font);
aRenderingContext.SetFont(font->mFont);
aRenderingContext.SetColor(NS_RGB(192, 192, 192));
aRenderingContext.FillRect(0, 0, mRect.width, mRect.height);
aRenderingContext.SetColor(NS_RGB(0, 0, 0));
aRenderingContext.DrawRect(0, 0, mRect.width, mRect.height);
}
#else
// delegate all painting to the plugin instance.
if (NS_FRAME_PAINT_LAYER_FOREGROUND == aWhichLayer && nsnull != mInstanceOwner) {
mInstanceOwner->Paint(aDirtyRect);
}
#endif /* !XP_MAC */
return NS_OK;

Просмотреть файл

@ -1129,56 +1129,38 @@ nsObjectFrame::Paint(nsIPresContext* aPresContext,
nsFramePaintLayer aWhichLayer)
{
const nsStyleDisplay* disp = (const nsStyleDisplay*)mStyleContext->GetStyleData(eStyleStruct_Display);
if ((disp != nsnull) && !disp->IsVisibleOrCollapsed())
{
if ((disp != nsnull) && !disp->IsVisibleOrCollapsed()) {
return NS_OK;
}
nsIFrame * child = mFrames.FirstChild();
if(child != NULL) //This is an image
{
if (child != NULL) { // This is an image
nsObjectFrameSuper::Paint(aPresContext, aRenderingContext, aDirtyRect, aWhichLayer);
return NS_OK;
}
aRenderingContext.SetColor(NS_RGB(192, 192, 192));
aRenderingContext.FillRect(0, 0, mRect.width, mRect.height);
#if !defined(XP_MAC)
#if defined (XP_MAC)
// delegate all painting to the plugin instance.
if ((NS_FRAME_PAINT_LAYER_FOREGROUND == aWhichLayer) && (nsnull != mInstanceOwner)) {
mInstanceOwner->Paint(aDirtyRect);
}
#elif defined (XP_PC)
if (NS_FRAME_PAINT_LAYER_FOREGROUND == aWhichLayer)
{
//~~~
#ifdef XP_WIN
nsIPluginInstance * inst;
if(NS_OK == GetPluginInstance(inst))
if (NS_OK == GetPluginInstance(inst))
{
NS_RELEASE(inst);
// Look if it's windowless
nsPluginWindow * window;
mInstanceOwner->GetWindow(window);
if(window->type == nsPluginWindowType_Drawable)
if (window->type == nsPluginWindowType_Drawable)
{
PRUint32 hdc;
aRenderingContext.RetrieveCurrentNativeGraphicData(&hdc);
mInstanceOwner->Paint(aDirtyRect, hdc);
return NS_OK;
}
}
#endif
const nsStyleFont* font = (const nsStyleFont*)mStyleContext->GetStyleData(eStyleStruct_Font);
aRenderingContext.SetFont(font->mFont);
aRenderingContext.SetColor(NS_RGB(192, 192, 192));
aRenderingContext.FillRect(0, 0, mRect.width, mRect.height);
aRenderingContext.SetColor(NS_RGB(0, 0, 0));
aRenderingContext.DrawRect(0, 0, mRect.width, mRect.height);
}
#else
// delegate all painting to the plugin instance.
if (NS_FRAME_PAINT_LAYER_FOREGROUND == aWhichLayer && nsnull != mInstanceOwner) {
mInstanceOwner->Paint(aDirtyRect);
}
#endif /* !XP_MAC */
return NS_OK;