From 414191d4280d6884b575a82bc5b5452c6ddcb62b Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 20 Mar 2013 10:21:14 +0400 Subject: make a separate headline button to collapse current article in unexpanded cdm mode; modify a q hotkey to collapse article in unexpanded mode and dismiss article in expanded mode --- js/viewfeed.js | 44 ++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 42 insertions(+), 2 deletions(-) (limited to 'js/viewfeed.js') diff --git a/js/viewfeed.js b/js/viewfeed.js index 9a16befff..584fff574 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -1312,6 +1312,35 @@ function catchupRelativeToArticle(below, id) { } } +function cdmCollapseArticle(event, id) { + try { + var row = $("RROW-" + id); + var elem = $("CICD-" + id); + + if (elem && row) { + row.removeClassName("Selected"); + + 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 { @@ -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; @@ -1514,6 +1551,7 @@ function cdmClicked(event, id) { if (!event.ctrlKey) { if (!getInitParam("cdm_expanded")) { + if (event) Event.stop(event); return cdmExpandArticle(id); } else { @@ -1609,13 +1647,15 @@ 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"); -- cgit v1.2.3 From 4895f99b9a6e329494c050b5799542af8e7a3c02 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 20 Mar 2013 10:27:47 +0400 Subject: cdmExpandArticle: force-scroll to headline --- js/viewfeed.js | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'js/viewfeed.js') diff --git a/js/viewfeed.js b/js/viewfeed.js index 584fff574..da474a2c0 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -1365,6 +1365,7 @@ function cdmExpandArticle(id) { } setActiveArticleId(id); + cdmScrollToArticleId(id, true); elem = $("CICD-" + id); @@ -1377,13 +1378,6 @@ function cdmExpandArticle(id) { Element.show(collapse); } - /* var new_offset = $("RROW-" + id).offsetTop; - - $("headlines-frame").scrollTop += (new_offset-old_offset); - - if ($("RROW-" + id).offsetTop != old_offset) - $("headlines-frame").scrollTop = new_offset; */ - toggleUnread(id, 0, true); toggleSelected(id); -- cgit v1.2.3 From c582bf25dd31b4562929e9b7fefb5d6851171d8c Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 20 Mar 2013 10:43:55 +0400 Subject: Revert "cdmExpandArticle: force-scroll to headline" This reverts commit 4895f99b9a6e329494c050b5799542af8e7a3c02. --- js/viewfeed.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'js/viewfeed.js') diff --git a/js/viewfeed.js b/js/viewfeed.js index da474a2c0..584fff574 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -1365,7 +1365,6 @@ function cdmExpandArticle(id) { } setActiveArticleId(id); - cdmScrollToArticleId(id, true); elem = $("CICD-" + id); @@ -1378,6 +1377,13 @@ function cdmExpandArticle(id) { Element.show(collapse); } + /* var new_offset = $("RROW-" + id).offsetTop; + + $("headlines-frame").scrollTop += (new_offset-old_offset); + + if ($("RROW-" + id).offsetTop != old_offset) + $("headlines-frame").scrollTop = new_offset; */ + toggleUnread(id, 0, true); toggleSelected(id); -- cgit v1.2.3 From 3ac153f1b3db2baac92dd3e9499992f99f580782 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 20 Mar 2013 10:59:12 +0400 Subject: update styling for unexpanded cdm; misc fixes related to collapsing --- js/viewfeed.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'js/viewfeed.js') diff --git a/js/viewfeed.js b/js/viewfeed.js index 584fff574..2555215ce 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -1318,8 +1318,6 @@ function cdmCollapseArticle(event, id) { var elem = $("CICD-" + id); if (elem && row) { - row.removeClassName("Selected"); - var collapse = $$("div#RROW-" + id + " span[class='collapseBtn']")[0]; @@ -1344,6 +1342,8 @@ function cdmCollapseArticle(event, id) { function cdmExpandArticle(id) { try { + console.log("cdmExpandArticle " + id); + hideAuxDlg(); var elem = $("CICD-" + getActiveArticleId()); @@ -1551,7 +1551,6 @@ function cdmClicked(event, id) { if (!event.ctrlKey) { if (!getInitParam("cdm_expanded")) { - if (event) Event.stop(event); return cdmExpandArticle(id); } else { @@ -1658,7 +1657,10 @@ function markHeadline(id, marked) { check.attr("checked", marked); } - row.addClassName("Selected"); + if (marked) + row.addClassName("Selected"); + else + row.removeClassName("Selected"); } } -- cgit v1.2.3