This will conflict with the keyboard refactor in #5076.