@Override
 public void setSize(final Dimension size) {
   final Dimension oldSize = getSize();
   if (size != null && !size.equals(oldSize)) {
     super.setSize(size);
     updateShape(oldSize.width, oldSize.height);
   }
 }