summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2008-05-17 16:58:15 +0100
committerAndrew Dolgov <[email protected]>2008-05-17 16:58:15 +0100
commit314fcd2bfdc42bef86ff479d720d7e9352612ce8 (patch)
tree8d7a44bca800dfa2d85328314d8780587490574c
parentc771953ddfb1450989d7405d38aff81129c0182a (diff)
new shortcut: tab (selects article under cursor)
-rw-r--r--functions.php14
-rw-r--r--help/3.php2
-rw-r--r--tt-rss.js17
-rw-r--r--viewfeed.js20
4 files changed, 42 insertions, 11 deletions
diff --git a/functions.php b/functions.php
index 2696f9f22..fcbfe40fb 100644
--- a/functions.php
+++ b/functions.php
@@ -4945,8 +4945,11 @@
$line["feed_title"]."</a> $vf_catchup_link:</td></tr>";
}
}
-
- print "<tr class='$class' id='RROW-$id'>";
+
+ $mouseover_attrs = "onmouseover='postMouseIn($id)'
+ onmouseout='postMouseOut($id)'";
+
+ print "<tr class='$class' id='RROW-$id' $mouseover_attrs>";
print "<td class='hlUpdPic'>$update_pic</td>";
@@ -5033,10 +5036,13 @@
$cdm_cstyle = "style=\"display : none\"";
}
+ $mouseover_attrs = "onmouseover='postMouseIn($id)'
+ onmouseout='postMouseOut($id)'";
+
print "<div class=\"cdmArticle$add_class\"
- id=\"RROW-$id\" onmouseover='cdmMouseIn(this)'
+ id=\"RROW-$id\"
onclick='cdmClicked(this)'
- onmouseout='cdmMouseOut(this)'>";
+ $mouseover_attrs'>";
print "<div class=\"cdmHeader\">";
diff --git a/help/3.php b/help/3.php
index 320040568..97f91439c 100644
--- a/help/3.php
+++ b/help/3.php
@@ -23,6 +23,8 @@
<h2><?php echo __("Other actions") ?></h2>
<table>
+ <tr><td class='n'>[tab]</td><td><?php echo __("Select article under mouse cursor") ?></td></tr>
+
<tr><td class='n'>c f</td><td><?php echo __("Create filter") ?></td></tr>
<tr><td class='n'>c s</td><td><?php echo __("Collapse sidebar") ?></td></tr>
<tr><td class='n'>?</td><td><?php echo __("Display this help dialog") ?></td></tr>
diff --git a/tt-rss.js b/tt-rss.js
index c86045840..6dd342745 100644
--- a/tt-rss.js
+++ b/tt-rss.js
@@ -1012,13 +1012,15 @@ function hotkey_handler(e) {
if (keycode == 78 || keycode == 40) { // n, down
if (typeof moveToPost != 'undefined') {
- return moveToPost('next');
+ moveToPost('next');
+ return false;
}
}
if (keycode == 80 || keycode == 38) { // p, up
if (typeof moveToPost != 'undefined') {
- return moveToPost('prev');
+ moveToPost('prev');
+ return false;
}
}
@@ -1047,15 +1049,15 @@ function hotkey_handler(e) {
return;
}
- if (keycode == 84) { // t
+ if (keycode == 84 && shift_key) { // T
var id = getActiveArticleId();
if (id) {
editArticleTags(id, getActiveFeedId(), isCdmMode());
}
}
-/* if (keycode == 84) { // t
- var id = getActiveArticleId();
+ if (keycode == 9) { // tab
+ var id = getArticleUnderPointer();
if (id) {
var cb = document.getElementById("RCHK-" + id);
@@ -1063,8 +1065,10 @@ function hotkey_handler(e) {
cb.checked = !cb.checked;
toggleSelectRowById(cb, "RROW-" + id);
}
+
+ return false;
}
- } */
+ }
if (keycode == 79) { // o
if (getActiveArticleId()) {
@@ -1346,4 +1350,3 @@ function hotkey_handler(e) {
}
}
-
diff --git a/viewfeed.js b/viewfeed.js
index caaec2daa..3bb121e25 100644
--- a/viewfeed.js
+++ b/viewfeed.js
@@ -18,6 +18,7 @@ var _cdm_wd_vishist = new Array();
var article_cache = new Array();
var vgroup_last_feed = false;
+var post_under_pointer = false;
function catchup_callback() {
if (xmlhttp_rpc.readyState == 4) {
@@ -1603,6 +1604,22 @@ function cdmClicked(elem) {
}
}
+function postMouseIn(id) {
+ try {
+ post_under_pointer = id;
+ } catch (e) {
+ exception_error("postMouseIn", e);
+ }
+}
+
+function postMouseOut(id) {
+ try {
+ post_under_pointer = false;
+ } catch (e) {
+ exception_error("postMouseOut", e);
+ }
+}
+
function cdmMouseIn(elem) {
/* try {
if (elem.id && elem.id.match("RROW-")) {
@@ -1798,5 +1815,8 @@ function subtoolbarSearch() {
} catch (e) {
exception_error("subtoolbarSearch", e);
}
+}
+function getArticleUnderPointer() {
+ return post_under_pointer;
}