Button component optimizing