Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(139)

Side by Side Diff: components/dom_distiller/content/resources/dom_distiller_viewer.js

Issue 444143002: Loading Indicator for Distilled Pages (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: styling Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 function addToPage(html) { 5 function addToPage(html) {
6 var div = document.createElement('div'); 6 var div = document.createElement('div');
7 div.innerHTML = html; 7 div.innerHTML = html;
8 document.getElementById('content').appendChild(div); 8 document.getElementById('content').appendChild(div);
9 } 9 }
10 10
11 function showLoadingIndicator(isLastPage) { 11 function showLoadingIndicator(isLastPage) {
12 document.getElementById('loadingIndicator').className = 12 document.getElementById('loadingIndicator').className =
13 isLastPage ? 'hidden' : 'visible'; 13 isLastPage ? 'hidden' : 'visible';
14 updateLoadingIndicator(isLastPage);
14 } 15 }
15 16
16 // Maps JS theme to CSS class and then changes body class name. 17 // Maps JS theme to CSS class and then changes body class name.
17 // CSS classes must agree with distilledpage.css. 18 // CSS classes must agree with distilledpage.css.
18 function useTheme(theme) { 19 function useTheme(theme) {
19 var cssClass; 20 var cssClass;
20 if (theme == "sepia") { 21 if (theme == "sepia") {
21 cssClass = "sepia"; 22 cssClass = "sepia";
22 } else if (theme == "dark") { 23 } else if (theme == "dark") {
23 cssClass = "dark"; 24 cssClass = "dark";
24 } else { 25 } else {
25 cssClass = "light"; 26 cssClass = "light";
26 } 27 }
27 document.body.className = cssClass; 28 document.body.className = cssClass;
28 } 29 }
30
31 var updateLoadingIndicator = function() {
32 var colors = ["red", "yellow", "green", "blue"];
33 return function(isLastPage) {
34 if (!isLastPage && typeof this.colorShuffle == "undefined") {
35 var loader = document.getElementById("loader");
36 if (loader) {
37 var colorIndex = -1;
38 this.colorShuffle = setInterval(function() {
39 colorIndex = (colorIndex + 1) % colors.length;
40 loader.className = colors[colorIndex];
41 }, 600);
42 }
43 } else if (isLastPage && typeof this.colorShuffle != "undefined") {
44 clearInterval(this.colorShuffle);
45 }
46 };
47 }();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698