Deleted unnecessary setLayout()
Optimized isDarkColor() method
Refactoring: extends AbstractBorder instead of implements Border
Removed unnecessary call of super.paintComponent(g)
Added updating of the component when mouse entered or exited from the
resize triangle