         $.fudgeDateForProfileTimezone(new Date)
 
     setCurrentView: (view) ->
-      @updateFragment view_name: view
+      @updateFragment
+        view_name: view
+        replaceState: !_.has(@dataFromDocumentHash(), 'view_name') # use replaceState if view_name wasn't set before
+
       @currentView = view
       userSettings.set('calendar_view', view)
 

          data[k] = v
        else
          delete data[k]
      location.href = "#" + $.param(data) if changed

    viewDisplay: (view) =>
      @setDateTitle(view.title)

      data = @dataFromDocumentHash()
      if not data.view_start and @options?.viewStart
        data.view_start = @options.viewStart
        @updateFragment data, replaceState: true
      if data.view_start
        date = $.fullCalendar.parseISO8601(data.view_start)
      else
