Add some words before counters of enumerate environment in beamer

I want to change the default style of enumerate from

1. item1
2. item2

to

Stage 1. item1

Stage 2. item2

So I use

\setbeamertemplate{enumerate item}{Stage \arabic{enumi}.}
\begin{enumerate}
\item
\item
\end{enumerate}
\setbeamertemplate{enumerate item}{\arabic{enumi}.}


But I find that the position of the counter (enumi) is fixed while the word "Stage" is pushed to the left border of the slide (See the snapshot below).

So what can I do to have the enumerate counter display normally?

-

Although not optimal, the following is a temporary work-around (until someone else provides a better alternative):

\usepackage{etoolbox}% http://ctan.org/pkg/etoolbox
\makeatletter
\patchcmd{\beamer@enum@}{\llap}{\mbox}{}{}% \llap -> \mbox in \beamer@enum@
\makeatother
...
\setbeamertemplate{enumerate item}{~~Stage \arabic{enumi}.}


beamer uses a left overlap (\llap) for item labels in the enumerate environment. Hence, making this an \mbox (using \patchcmd from the etoolbox package) plus adding ~~ to the enumerate item as a prefix provides the correct spacing.

-