# HG changeset patch # User ssadetsky # Date 1433865474 -10800 # Node ID 22615e4a6ab7bb9b549f111d4936d7be0e558b64 # Parent 66b012d00bd3c9a54ebd0b8455803cb7ed734cee 8078269: JTabbedPane UI Property TabbedPane.tabAreaBackground no longer works Reviewed-by: serb, alexsch diff -r 66b012d00bd3 -r 22615e4a6ab7 jdk/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalTabbedPaneUI.java --- a/jdk/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalTabbedPaneUI.java Tue Jun 09 14:11:11 2015 +0300 +++ b/jdk/src/java.desktop/share/classes/javax/swing/plaf/metal/MetalTabbedPaneUI.java Tue Jun 09 18:57:54 2015 +0300 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -896,11 +896,12 @@ // Paint the background for the tab area if ( tabPane.isOpaque() ) { - if (!c.isBackgroundSet() && (tabAreaBackground != null)) { + Color background = c.getBackground(); + if (background instanceof UIResource && tabAreaBackground != null) { g.setColor(tabAreaBackground); } else { - g.setColor( c.getBackground() ); + g.setColor(background); } switch ( tabPlacement ) { case LEFT: diff -r 66b012d00bd3 -r 22615e4a6ab7 jdk/test/javax/swing/JTabbedPane/8007563/Test8007563.java --- a/jdk/test/javax/swing/JTabbedPane/8007563/Test8007563.java Tue Jun 09 14:11:11 2015 +0300 +++ b/jdk/test/javax/swing/JTabbedPane/8007563/Test8007563.java Tue Jun 09 18:57:54 2015 +0300 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -21,9 +21,7 @@ * questions. */ -import java.awt.Color; -import java.awt.Point; -import java.awt.Robot; +import java.awt.*; import java.util.ArrayList; import java.util.concurrent.CountDownLatch; import javax.swing.JFrame; @@ -119,6 +117,20 @@ } } - invokeLater(this); + SecondaryLoop secondaryLoop = + Toolkit.getDefaultToolkit().getSystemEventQueue() + .createSecondaryLoop(); + new Thread() { + @Override + public void run() { + try { + Thread.sleep(200); + } catch (InterruptedException e) { + } + secondaryLoop.exit(); + invokeLater(Test8007563.this); + } + }.start(); + secondaryLoop.enter(); } }