W 2004 został brązowym medalistą mistrzostw świata na basenie 25 m, w konkurencji 50 m st. motylkowym; rok później zaś wywalczył tytuł wicemistrza świata w konkurencji 50 m st. dowolnym. W 2006 został mistrzem świata na krótkim basenie w konkurencji 50 m st. dowolnym, a także zdobywcą dwóch medali na mistrzostwach Europy – srebrnego w konkurencji 50 m st. motylkowym oraz brązowego w konkurencji 50 m st. dowolnym. W 2007 roku wywalczył tytuł wicemistrza Europy na basenie 25 m, w konkurencji 50 m st. dowolnym. Rok później został dwukrotnym mistrzem Europy na basenie 50 m, Chorwat wywalczył medale w konkurencjach 50 m st. dowolnym, a także 4 × 100 m st. zmiennym.

11 kwietnia 2008, podczas rozgrywanych w Manchesterze mistrzostw świata na krótkim basenie, wystąpił w konkurencji 50 m st. dowolnym, w której zdobył złoty medal i w finale uzyskał czas 20,81 będący nowym rekordem świata na basenie 25 mRekord ten obowiązywał do 7 września 2008 roku.. Na tej samej imprezie sportowej otrzymał także brązowy medal w konkurencji 100 m tym samym stylem pływackim.