Может я не так код написал. Вот пример, у меня 2 основные кнопки внизу (Добавить аккаунт, удалить аккаунт)
Когда юзер нажимает на кнопку "добавить аккаунт" запускается стейт и просит ввести логин, юзер вместо ввода, нажимает на кнопку "удалить аккаунт" и мой стейт как логин запоминает слово "удалить аккаунт" и дальше просит ввести пароль.
У тебя с логикой беда. Если юзер нажал добавить аккаунт, то он запустил состояние действия добавление акка. По нормальному при запуске этого состояния нужно изменить клаву - убрать другие действия и вместо них вывести кнопку "отмена". Раз у тебя предполагается машина состояний и действие состоит из нескольких шагов, то и выглядить это должно логично, как в любом пошаговом мастере. Самый простейший пример - инсталлятор любой проги под винду. Там несколько состояний, которые по кнопке далее меняются. А в текущем варианте это как - нажал кнопку "одеть штаны", вошел в состояние одел левую штанину, а потом нажал кнопку "снять трусы"