final PropertyChangeListener focusOwnerPropertyChangeListener = new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
if (evt.getNewValue() != null) {
JTabbedContentPane tabbedPane = SwingUtil.getParent((Component) evt.getNewValue(), JTabbedContentPane.class);
if (tabbedPane != null) {
if (!valueAdjusting && !contentValueAdjusting) {
PlafContent newSelected = (PlafContent) tabbedPane.getSelectedContent();
if (newSelected != null) {
if (newSelected == lastSelected)
return;
if (lastSelected != null) {