From 29fe488b0cf9f8a79aad774c912be94bb737d36a Mon Sep 17 00:00:00 2001
From: Robert Speicher <rspeicher@gmail.com>
Date: Thu, 8 Oct 2015 20:53:29 -0400
Subject: [PATCH] Make the loading spinner toggle more explicit

Occasionally the loading spinner would stay visible after the tab
finished loading. This change makes the toggle explicit so that it's
always shown on `beforeSend`, and always hidden on `complete`.

Plus a bonus semi-colon eradication! :boom:
---
 app/assets/javascripts/merge_request_tabs.js.coffee | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/app/assets/javascripts/merge_request_tabs.js.coffee b/app/assets/javascripts/merge_request_tabs.js.coffee
index 4e56791bde4..3e77ea515f8 100644
--- a/app/assets/javascripts/merge_request_tabs.js.coffee
+++ b/app/assets/javascripts/merge_request_tabs.js.coffee
@@ -69,7 +69,7 @@ class @MergeRequestTabs
   scrollToElement: (container) ->
     if window.location.hash
       top = $(container + " " + window.location.hash).offset().top
-      $('body').scrollTo(top);
+      $('body').scrollTo(top)
 
   # Activate a tab based on the current action
   activateTab: (action) ->
@@ -139,13 +139,16 @@ class @MergeRequestTabs
         @diffsLoaded = true
         @scrollToElement(".diffs")
 
-  toggleLoading: ->
-    $('.mr-loading-status .loading').toggle()
+  # Show or hide the loading spinner
+  #
+  # status - Boolean, true to show, false to hide
+  toggleLoading: (status) ->
+    $('.mr-loading-status .loading').toggle(status)
 
   _get: (options) ->
     defaults = {
-      beforeSend: @toggleLoading
-      complete: @toggleLoading
+      beforeSend: => @toggleLoading(true)
+      complete:   => @toggleLoading(false)
       dataType: 'json'
       type: 'GET'
     }
-- 
GitLab