From 4053f55e9ae5a646c24d07256fad833ab9952b59 Mon Sep 17 00:00:00 2001 From: tdv Date: Mon, 4 Aug 2008 11:29:28 -0700 Subject: 6728834: D3D/OGL: LCD AA text becomes bold and blurred when rendering to a non-opaque destination Reviewed-by: campbell --- src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/windows/classes/sun') diff --git a/src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java b/src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java index 3d1457c72..18f049f2d 100644 --- a/src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java +++ b/src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java @@ -501,12 +501,14 @@ public class D3DSurfaceData extends SurfaceData implements AccelSurface { * - the pixel shaders are available, and * - blending is disabled, and * - the source color is opaque + * - and the destination is opaque */ public boolean canRenderLCDText(SunGraphics2D sg2d) { return graphicsDevice.isCapPresent(CAPS_LCD_SHADER) && sg2d.compositeState <= SunGraphics2D.COMP_ISCOPY && - sg2d.paintState <= SunGraphics2D.PAINT_OPAQUECOLOR; + sg2d.paintState <= SunGraphics2D.PAINT_OPAQUECOLOR && + sg2d.surfaceData.getTransparency() == Transparency.OPAQUE; } public void validatePipe(SunGraphics2D sg2d) { -- cgit v1.2.3 From 514bccd1976a8633182a84934b37643cd6a20931 Mon Sep 17 00:00:00 2001 From: tdv Date: Thu, 28 Aug 2008 11:27:14 -0700 Subject: 6739267: D3D/OGL: add missing ThreeByteBgr to texture upload blit loop Reviewed-by: campbell, flar --- src/windows/classes/sun/java2d/d3d/D3DBlitLoops.java | 8 ++++++++ src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java | 1 + 2 files changed, 9 insertions(+) (limited to 'src/windows/classes/sun') diff --git a/src/windows/classes/sun/java2d/d3d/D3DBlitLoops.java b/src/windows/classes/sun/java2d/d3d/D3DBlitLoops.java index 459a197fa..45d6cd8fd 100644 --- a/src/windows/classes/sun/java2d/d3d/D3DBlitLoops.java +++ b/src/windows/classes/sun/java2d/d3d/D3DBlitLoops.java @@ -85,6 +85,8 @@ class D3DBlitLoops { D3DSurfaceData.ST_INT_RGB), new D3DSwToSurfaceBlit(SurfaceType.IntBgr, D3DSurfaceData.ST_INT_BGR), + new D3DSwToSurfaceBlit(SurfaceType.ThreeByteBgr, + D3DSurfaceData.ST_3BYTE_BGR), new D3DSwToSurfaceBlit(SurfaceType.Ushort565Rgb, D3DSurfaceData.ST_USHORT_565_RGB), new D3DSwToSurfaceBlit(SurfaceType.Ushort555Rgb, @@ -106,6 +108,8 @@ class D3DBlitLoops { D3DSurfaceData.ST_INT_RGB), new D3DSwToSurfaceScale(SurfaceType.IntBgr, D3DSurfaceData.ST_INT_BGR), + new D3DSwToSurfaceScale(SurfaceType.ThreeByteBgr, + D3DSurfaceData.ST_3BYTE_BGR), new D3DSwToSurfaceScale(SurfaceType.Ushort565Rgb, D3DSurfaceData.ST_USHORT_565_RGB), new D3DSwToSurfaceScale(SurfaceType.Ushort555Rgb, @@ -124,6 +128,8 @@ class D3DBlitLoops { D3DSurfaceData.ST_INT_RGB), new D3DSwToSurfaceTransform(SurfaceType.IntBgr, D3DSurfaceData.ST_INT_BGR), + new D3DSwToSurfaceTransform(SurfaceType.ThreeByteBgr, + D3DSurfaceData.ST_3BYTE_BGR), new D3DSwToSurfaceTransform(SurfaceType.Ushort565Rgb, D3DSurfaceData.ST_USHORT_565_RGB), new D3DSwToSurfaceTransform(SurfaceType.Ushort555Rgb, @@ -147,6 +153,8 @@ class D3DBlitLoops { D3DSurfaceData.ST_INT_ARGB), new D3DSwToTextureBlit(SurfaceType.IntBgr, D3DSurfaceData.ST_INT_BGR), + new D3DSwToTextureBlit(SurfaceType.ThreeByteBgr, + D3DSurfaceData.ST_3BYTE_BGR), new D3DSwToTextureBlit(SurfaceType.Ushort565Rgb, D3DSurfaceData.ST_USHORT_565_RGB), new D3DSwToTextureBlit(SurfaceType.Ushort555Rgb, diff --git a/src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java b/src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java index 18f049f2d..722440a77 100644 --- a/src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java +++ b/src/windows/classes/sun/java2d/d3d/D3DSurfaceData.java @@ -135,6 +135,7 @@ public class D3DSurfaceData extends SurfaceData implements AccelSurface { public static final int ST_USHORT_555_RGB = 6; public static final int ST_BYTE_INDEXED = 7; public static final int ST_BYTE_INDEXED_BM = 8; + public static final int ST_3BYTE_BGR = 9; /** Equals to D3DSWAPEFFECT_DISCARD */ public static final int SWAP_DISCARD = 1; -- cgit v1.2.3 From 842a6f2b886556afcf665f1ef6ece4de79637f92 Mon Sep 17 00:00:00 2001 From: tdv Date: Fri, 12 Sep 2008 15:01:45 -0700 Subject: 6748082: remove platform-specific code from SwingUtilities2.isDisplayLocal Reviewed-by: prr, tdv Contributed-by: rkennke@kennke.org --- src/windows/classes/sun/awt/Win32GraphicsEnvironment.java | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/windows/classes/sun') diff --git a/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java b/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java index 80ee77470..73b73dbb0 100644 --- a/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java +++ b/src/windows/classes/sun/awt/Win32GraphicsEnvironment.java @@ -393,4 +393,9 @@ public class Win32GraphicsEnvironment private static void dwmCompositionChanged(boolean enabled) { isDWMCompositionEnabled = enabled; } + + @Override + public boolean isDisplayLocal() { + return true; + } } -- cgit v1.2.3 From f65c1d6f8e65d537fefe75621590e6541d155b5a Mon Sep 17 00:00:00 2001 From: tdv Date: Tue, 21 Oct 2008 08:25:38 -0700 Subject: 6755274: 6u10b33 2d tests fails on sles10x64 with jvm crash Reviewed-by: campbell --- .../classes/sun/java2d/opengl/WGLGraphicsConfig.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'src/windows/classes/sun') diff --git a/src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java b/src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java index 7ff7e1e8d..bdd0ade46 100644 --- a/src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java +++ b/src/windows/classes/sun/java2d/opengl/WGLGraphicsConfig.java @@ -127,12 +127,14 @@ public class WGLGraphicsConfig new WGLGetConfigInfo(device.getScreen(), pixfmt); rq.flushAndInvokeNow(action); cfginfo = action.getConfigInfo(); - OGLContext.setScratchSurface(cfginfo); - rq.flushAndInvokeNow(new Runnable() { - public void run() { - ids[0] = OGLContext.getOGLIdString(); - } - }); + if (cfginfo != 0L) { + OGLContext.setScratchSurface(cfginfo); + rq.flushAndInvokeNow(new Runnable() { + public void run() { + ids[0] = OGLContext.getOGLIdString(); + } + }); + } } finally { rq.unlock(); } -- cgit v1.2.3