navigationView refactor