First of all, State
is already StateT
type State s = StateT s Identity
Maybe you need to use StateT 1 level up, something like this:
runStateT $
put []
lift $ mUpdate `onClicked` do
txt <- lift $ entryGetText entry
listWas <- get
put $ txt : listWas --in reverse order
return ()