From 8ac83043f5bd53cf6094fe026f27004dcd3b67c5 Mon Sep 17 00:00:00 2001
From: wxiaoguang <wxiaoguang@gmail.com>
Date: Thu, 24 Aug 2023 22:21:41 +0800
Subject: [PATCH] Use "small-loading-icon" insead of "btn-octicon is-loading"
 (#26710)

The "btn-octicon is-loading" was introduced by #21842 , it is only used
by the "Copy Content" button, but the "btn-octicon" selector would
affect too many uncertain elements.

Now there is a general "small-loading-icon" class, so the "btn-octicon
is-loading" could be removed.
---
 web_src/css/modules/animations.css | 7 -------
 web_src/js/features/copycontent.js | 4 ++--
 2 files changed, 2 insertions(+), 9 deletions(-)

diff --git a/web_src/css/modules/animations.css b/web_src/css/modules/animations.css
index 2f69117928..ea1409687a 100644
--- a/web_src/css/modules/animations.css
+++ b/web_src/css/modules/animations.css
@@ -57,13 +57,6 @@ form.single-button-form.is-loading .button {
   background: transparent;
 }
 
-/* TODO: not needed, use "is-loading small-loading-icon" instead */
-.btn-octicon.is-loading::after {
-  border-width: 2px;
-  height: 1.25rem;
-  width: 1.25rem;
-}
-
 /* TODO: not needed, use "is-loading small-loading-icon" instead */
 code.language-math.is-loading::after {
   padding: 0;
diff --git a/web_src/js/features/copycontent.js b/web_src/js/features/copycontent.js
index 621d6dab73..c1419a524b 100644
--- a/web_src/js/features/copycontent.js
+++ b/web_src/js/features/copycontent.js
@@ -18,7 +18,7 @@ export function initCopyContent() {
     // the text to copy is not in the DOM or it is an image which should be
     // fetched to copy in full resolution
     if (link) {
-      btn.classList.add('is-loading');
+      btn.classList.add('is-loading', 'small-loading-icon');
       try {
         const res = await fetch(link, {credentials: 'include', redirect: 'follow'});
         const contentType = res.headers.get('content-type');
@@ -32,7 +32,7 @@ export function initCopyContent() {
       } catch {
         return showTemporaryTooltip(btn, i18n.copy_error);
       } finally {
-        btn.classList.remove('is-loading');
+        btn.classList.remove('is-loading', 'small-loading-icon');
       }
     } else { // text, read from DOM
       const lineEls = document.querySelectorAll('.file-view .lines-code');