I managed to put together an example by combining the approaches from the above links. Here is jsfiddle with ext js script: http://jsfiddle.net/chetanbaheti/zGXr6/3/
There are 2 types (tabs) - home and suppliers with corresponding history tokens
DemoApp.view.HomeTab
DemoApp.view.ProvidersTab
, .
DemoApp.controller.HomeController
//and its history token
this.uiToken = 'MainTabPanel,HomeTab';
ui :
initializeHistoryHandling
setUiState
( ) :
DemoApp.controller.ViewportController:onTabpanelTabChange
ui URL- .