refactoring app delegate category into uiresponder