Il 25 maggio 2012 disputò la finale dei 1500 m ai Campionati europei di nuoto, riuscendo a conquistare la medaglia d'oro in 14'48"94 davanti agli ungheresi Gergő Kis e Gergely Gyurta. Per la prima volta in carriera Gregorio riuscì ad abbattere il muro dei 15'00 minuti realizzando la terza prestazione mondiale del momento. Inoltre, tale crono si avvicinò al primato italiano di Federico Colbertaldo di 14'48"28 stabilito con costume gommato nel 2009. Infine, il tempo della vittoria gli garantì la qualificazione alla sua prima edizione dei Giochi.