summaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
authorRichard Beales <[email protected]>2013-03-20 07:26:49 +0000
committerRichard Beales <[email protected]>2013-03-20 07:26:49 +0000
commit04ed8b423abd9046ac4ee6813cf5e98b37aad2a3 (patch)
tree5c00a04297478b8b6550c677d8799c404a0fddd7 /js
parent598a8f37a2ce94186166d1c3b22cc65efdebe4a4 (diff)
parent54bc5594ab26ae961bb92c113a1d2815044e450f (diff)
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'js')
-rw-r--r--js/tt-rss.js10
-rw-r--r--js/viewfeed.js48
2 files changed, 54 insertions, 4 deletions
diff --git a/js/tt-rss.js b/js/tt-rss.js
index 3b96566f9..c80e8737d 100644
--- a/js/tt-rss.js
+++ b/js/tt-rss.js
@@ -673,7 +673,15 @@ function hotkey_handler(e) {
scrollArticle(-ctr.offsetHeight/3);
return false;
case "close_article":
- closeArticlePanel();
+ if (isCdmMode()) {
+ if (!getInitParam("cdm_expanded")) {
+ cdmCollapseArticle(false, getActiveArticleId());
+ } else {
+ dismissArticle(getActiveArticleId());
+ }
+ } else {
+ closeArticlePanel();
+ }
return false;
case "email_article":
if (typeof emailArticle != "undefined") {
diff --git a/js/viewfeed.js b/js/viewfeed.js
index 9a16befff..2555215ce 100644
--- a/js/viewfeed.js
+++ b/js/viewfeed.js
@@ -1312,9 +1312,38 @@ function catchupRelativeToArticle(below, id) {
}
}
+function cdmCollapseArticle(event, id) {
+ try {
+ var row = $("RROW-" + id);
+ var elem = $("CICD-" + id);
+
+ if (elem && row) {
+ var collapse = $$("div#RROW-" + id +
+ " span[class='collapseBtn']")[0];
+
+ Element.hide(elem);
+ Element.show("CEXC-" + id);
+ Element.hide(collapse);
+
+ markHeadline(id, false);
+
+ if (id == getActiveArticleId()) {
+ setActiveArticleId(0);
+ }
+
+ if (event) Event.stop(event);
+ }
+
+ } catch (e) {
+ exception_error("cdmCollapseArticle", e);
+ }
+}
+
function cdmExpandArticle(id) {
try {
+ console.log("cdmExpandArticle " + id);
+
hideAuxDlg();
var elem = $("CICD-" + getActiveArticleId());
@@ -1327,17 +1356,25 @@ function cdmExpandArticle(id) {
var old_offset = $("RROW-" + id).offsetTop;
if (getActiveArticleId() && elem && !getInitParam("cdm_expanded")) {
+ var collapse = $$("div#RROW-" + getActiveArticleId() +
+ " span[class='collapseBtn']")[0];
+
Element.hide(elem);
Element.show("CEXC-" + getActiveArticleId());
+ Element.hide(collapse);
}
setActiveArticleId(id);
elem = $("CICD-" + id);
+ var collapse = $$("div#RROW-" + id +
+ " span[class='collapseBtn']")[0];
+
if (!Element.visible(elem)) {
Element.show(elem);
Element.hide("CEXC-" + id);
+ Element.show(collapse);
}
/* var new_offset = $("RROW-" + id).offsetTop;
@@ -1609,16 +1646,21 @@ function isCdmMode() {
return getInitParam("combined_display_mode");
}
-function markHeadline(id) {
+function markHeadline(id, marked) {
+ if (marked == undefined) marked = true;
+
var row = $("RROW-" + id);
if (row) {
var check = dijit.byId("RCHK-" + id);
if (check) {
- check.attr("checked", true);
+ check.attr("checked", marked);
}
- row.addClassName("Selected");
+ if (marked)
+ row.addClassName("Selected");
+ else
+ row.removeClassName("Selected");
}
}