]> git.wh0rd.org - tt-rss.git/blobdiff - tt-rss.js
loading progress bar for main window
[tt-rss.git] / tt-rss.js
index 6dd3427457d3e9c34ad2877ae5c0a0a8c63eb3ab..538a318d9cdcfffa3601a45673fc280b2b6d655a 100644 (file)
--- a/tt-rss.js
+++ b/tt-rss.js
@@ -325,6 +325,8 @@ function init() {
 
        try {
 
+               loading_set_progress(30);
+
                // this whole shebang is based on http://www.birnamdesigns.com/misc/busted2.html
 
                if (arguments.callee.done) return;
@@ -423,6 +425,8 @@ function init_second_stage() {
 
                debug("second stage ok");
        
+               loading_set_progress(60);
+
        } catch (e) {
                exception_error("init_second_stage", e);
        }
@@ -785,7 +789,7 @@ function toggle_feedlist() {
 //                             queue: { position: 'end', scope: 'FLFADEQ', limit: 1 }});
                }
        } catch (e) {
-               exception_error(e, "toggle_feedlist");
+               exception_error("toggle_feedlist", e);
        }
 } */
 
@@ -848,7 +852,7 @@ function collapse_feedlist() {
                        setCookie("ttrss_vf_fclps", "1");
                }
        } catch (e) {
-               exception_error(e, "toggle_feedlist");
+               exception_error("toggle_feedlist", e);
        }
 }
 
@@ -877,7 +881,7 @@ function adjustArticleScore(id, score) {
 
                }
        } catch (e) {
-               exception_error(e, "adjustArticleScore");
+               exception_error("adjustArticleScore", e);
        }
 }      
 
@@ -931,6 +935,8 @@ function hotkey_handler(e) {
                        keycode = e.which;
                }
 
+               var keychar = String.fromCharCode(keycode);
+
                if (keycode == 27) { // escape
                        if (Element.visible("hotkey_help_overlay")) {
                                Element.hide("hotkey_help_overlay");
@@ -948,7 +954,7 @@ function hotkey_handler(e) {
 
                if ((keycode == 70 || keycode == 67 || keycode == 71) && !hotkey_prefix) {
                        hotkey_prefix = keycode;
-                       debug("KP: PREFIX=" + keycode);
+                       debug("KP: PREFIX=" + keycode + " CHAR=" + keychar);
                        return;
                }
 
@@ -972,27 +978,30 @@ function hotkey_handler(e) {
                                return;
                        }
        
-                       if (keycode == 191 && shift_key) { // ?
+                       if ((keycode == 191 || keychar == '?') && shift_key) { // ?
                                if (!Element.visible("hotkey_help_overlay")) {
                                        //Element.show("hotkey_help_overlay");
                                        Effect.Appear("hotkey_help_overlay", {duration : 0.3});
                                } else {
                                        Element.hide("hotkey_help_overlay");
                                }
-                               return;
+                               return false;
                        }
        
-                       if (keycode == 191) { // /
-                               return displayDlg("search", getActiveFeedId() + ":" + activeFeedIsCat());
+                       if (keycode == 191 || keychar == '/') { // /
+                               displayDlg("search", getActiveFeedId() + ":" + activeFeedIsCat());
+                               return false;
                        }
 
                        if (keycode == 82 && shift_key) { // R
-                               return scheduleFeedUpdate(true);
+                               scheduleFeedUpdate(true);
+                               return false;
                        }
 
                        if (keycode == 82) { // r
                                if (getActiveFeedId()) {
-                                       return viewfeed(getActiveFeedId(), "ForceUpdate");
+                                       viewfeed(getActiveFeedId(), "ForceUpdate", activeFeedIsCat());
+                                       return;
                                }
                        }
 
@@ -1000,14 +1009,24 @@ function hotkey_handler(e) {
                                var feed = getActiveFeedId();
                                var new_feed = getRelativeFeedId(feedlist, feed, 'prev');
                                if (new_feed) viewfeed(new_feed, '');
-                               return;
+                               return false;
                        }
        
                        if (keycode == 75) { // k
                                var feed = getActiveFeedId();
                                var new_feed = getRelativeFeedId(feedlist, feed, 'next');
                                if (new_feed) viewfeed(new_feed, '');
-                               return;
+                               return false;
+                       }
+
+                       if (shift_key && (keycode == 78 || keycode == 40)) { // shift - n, down
+                               catchupRelativeToArticle(1);
+                               return false;
+                       }
+
+                       if (shift_key && (keycode == 80 || keycode == 38)) { // shift - p, up
+                               catchupRelativeToArticle(0);
+                               return false;
                        }
 
                        if (keycode == 78 || keycode == 40) { // n, down
@@ -1029,7 +1048,7 @@ function hotkey_handler(e) {
                                if (id) {                               
                                        togglePub(id);
                                }
-                               return;
+                               return false;
                        }
 
                        if (keycode == 83) { // s
@@ -1037,7 +1056,7 @@ function hotkey_handler(e) {
                                if (id) {                               
                                        toggleMark(id);
                                }
-                               return;
+                               return false;
                        }
 
 
@@ -1046,13 +1065,14 @@ function hotkey_handler(e) {
                                if (id) {                               
                                        toggleUnread(id);
                                }
-                               return;
+                               return false;
                        }
 
                        if (keycode == 84 && shift_key) { // T
                                var id = getActiveArticleId();
                                if (id) {
                                        editArticleTags(id, getActiveFeedId(), isCdmMode());
+                                       return false;
                                }
                        }
 
@@ -1064,18 +1084,44 @@ function hotkey_handler(e) {
                                        if (cb) {
                                                cb.checked = !cb.checked;
                                                toggleSelectRowById(cb, "RROW-" + id);
+                                               return false;
                                        }
-
-                                       return false;
                                }
                        }
 
                        if (keycode == 79) { // o
                                if (getActiveArticleId()) {
                                        openArticleInNewWindow(getActiveArticleId());
+                                       return false;
                                }
                        }
 
+                       if (keycode == 81 && shift_key) { // Q
+                               if (typeof catchupAllFeeds != 'undefined') {
+                                       catchupAllFeeds();
+                                       return;
+                               }
+                       }
+
+                       if (keycode == 81) { // q
+                               if (getActiveFeedId()) {
+                                       catchupCurrentFeed();
+                                       return;
+                               }
+                       }
+
+                       if (keycode == 220 && shift_key) { // shift + |
+                               if (document.getElementById("subtoolbar_search")) {
+                                       if (Element.visible("subtoolbar_search")) {
+                                               Element.hide("subtoolbar_search");
+                                               Element.show("subtoolbar_ftitle");
+                                               setTimeout("Element.focus('subtoolbar_search_box')", 100);
+                                       } else {
+                                                       Element.show("subtoolbar_search");
+                                               Element.hide("subtoolbar_ftitle");
+                                       }
+                               }
+                       }
                }
 
                /* Prefix f */
@@ -1085,36 +1131,43 @@ function hotkey_handler(e) {
                        hotkey_prefix = false;
 
                        if (keycode == 65) { // a
-                               return toggleDispRead();
+                               toggleDispRead();
+                               return false;
                        }
 
                        if (keycode == 85 && shift_key) { // U
-                               return scheduleFeedUpdate(true);
+                               scheduleFeedUpdate(true);
+                               return false;
                        }
 
                        if (keycode == 85) { // u
                                if (getActiveFeedId()) {
-                                       return viewfeed(getActiveFeedId(), "ForceUpdate");
+                                       viewfeed(getActiveFeedId(), "ForceUpdate");
+                                       return false;
                                }
                        }
 
                        if (keycode == 69) { // e
-                               return editFeedDlg(getActiveFeedId());
+                               editFeedDlg(getActiveFeedId());
+                               return false;
                        }
 
                        if (keycode == 83) { // s
-                               return displayDlg("quickAddFeed");
+                               displayDlg("quickAddFeed");
+                               return false;
                        }
 
                        if (keycode == 67 && shift_key) { // C
                                if (typeof catchupAllFeeds != 'undefined') {
-                                       return catchupAllFeeds();
+                                       catchupAllFeeds();
+                                       return false;
                                }
                        }
 
                        if (keycode == 67) { // c
                                if (getActiveFeedId()) {
-                                       return catchupCurrentFeed();
+                                       catchupCurrentFeed();
+                                       return false;
                                }
                        }
 
@@ -1126,12 +1179,14 @@ function hotkey_handler(e) {
                        hotkey_prefix = false;
 
                        if (keycode == 70) { // f
-                               return displayDlg("quickAddFilter", getActiveFeedId()); 
+                               displayDlg("quickAddFilter", getActiveFeedId());
+                               return false;
                        }
 
                        if (keycode == 83) { // s
                                if (typeof collapse_feedlist != 'undefined') {
-                                       return collapse_feedlist();
+                                       collapse_feedlist();
+                                       return false;
                                }
                        }
 
@@ -1144,23 +1199,28 @@ function hotkey_handler(e) {
                        hotkey_prefix = false;
 
                        if (keycode == 83) { // s
-                               return viewfeed(-1);
+                               viewfeed(-1);
+                               return false;
                        }
 
                        if (keycode == 80 && shift_key) { // P
-                               return gotoPreferences();
+                               gotoPreferences();
+                               return false;
                        }
 
                        if (keycode == 80) { // p
-                               return viewfeed(-2);
+                               viewfeed(-2);
+                               return false;
                        }
 
                        if (keycode == 70) { // f
-                               return viewfeed(-3);
+                               viewfeed(-3);
+                               return false;
                        }
 
                        if (keycode == 84 && shift_key) { // T
                                toggleTags();
+                               return false;
                        }
 
                }
@@ -1338,10 +1398,9 @@ function hotkey_handler(e) {
                } */
 
                if (hotkey_prefix) {
-                       debug("KP: PREFIX=" + hotkey_prefix + " CODE=" + keycode);
-
+                       debug("KP: PREFIX=" + hotkey_prefix + " CODE=" + keycode + " CHAR=" + keychar);
                } else {
-                       debug("KP: CODE=" + keycode);
+                       debug("KP: CODE=" + keycode + " CHAR=" + keychar);
                }