firing view updates on main thread