From 3cd5511b320907c195508d26578869eeb728f1ed Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 26 Jun 2013 16:48:53 +0400 Subject: another counter node positioning hack --- css/tt-rss.css | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index e8382ff05..59143fae2 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1123,9 +1123,7 @@ body#ttrssMain #feedTree { border-radius : 4px; vertical-align : middle; float : right; - margin-right : 5px; - position : relative; - top : 2px; + margin : 5px 5px 5px 0px; min-width : 23px; } -- cgit v1.2.3-54-g00ecf From 72f133bb06a5812908a6718c86b0c856626df531 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 26 Jun 2013 16:52:22 +0400 Subject: add experimental counterNode text shadow --- css/tt-rss.css | 2 ++ 1 file changed, 2 insertions(+) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index 59143fae2..3e6b8cd38 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1110,6 +1110,7 @@ body#ttrssMain #feedTree { background : #f0f0f0; color : #999; border-color : #f0f0f0; + text-shadow : none; } #feedTree .counterNode { @@ -1125,6 +1126,7 @@ body#ttrssMain #feedTree { float : right; margin : 5px 5px 5px 0px; min-width : 23px; + text-shadow : 1px 1px rgba(0,0,0,0.2); } #feedTree .dijitTreeRow { -- cgit v1.2.3-54-g00ecf From 4b7ebe93a8a59a3bd2e7fb820795314be3db51ce Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Sat, 6 Jul 2013 12:34:58 +0400 Subject: fix broken highlighting of high-scored rows --- classes/feeds.php | 14 +++++++------- css/cdm.css | 19 +++++++++++++++++++ css/tt-rss.css | 17 ++++++----------- 3 files changed, 32 insertions(+), 18 deletions(-) (limited to 'css') diff --git a/classes/feeds.php b/classes/feeds.php index aeadcf257..b15875bd3 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -377,9 +377,9 @@ class Feeds extends Handler_Protected { title=\"$score\">"; if ($score > 500) { - $hlc_suffix = "H"; + $hlc_suffix = "high"; } else if ($score < -100) { - $hlc_suffix = "L"; + $hlc_suffix = "low"; } else { $hlc_suffix = ""; } @@ -448,8 +448,8 @@ class Feeds extends Handler_Protected { $reply['content'] .= ""; $reply['content'] .= "
"; - $reply['content'] .= ""; + $reply['content'] .= "" . truncate_string($line["title"], 200); @@ -539,7 +539,7 @@ class Feeds extends Handler_Protected { $expanded_class = $expand_cdm ? "expanded" : "expandable"; - $reply['content'] .= "
"; $reply['content'] .= "
"; @@ -556,8 +556,8 @@ class Feeds extends Handler_Protected { $reply['content'] .= " - + ". $line["title"] . diff --git a/css/cdm.css b/css/cdm.css index 18bedce01..7e85cbfff 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -265,3 +265,22 @@ div#floatingTitle span.author, div#floatingTitle img.tinyFeedIcon { display : none; } + +.cdm.high .cdmHeader a.title.high, .cdm.high .cdmHeader .cdmExcerpt, +.cdm.high .cdmHeader span.author { + color : #00aa00; +} + +.cdm.Unread.high .cdmHeader a.title.high, .cdm.Unread.high .cdmHeader .cdmExcerpt, +.cdm.Unread.high .cdmHeader span.author { + color : #00dd00; +} + +.cdm .cdmHeader a.title.low, .cdm.low .cdmHeader .cdmExcerpt, +.cdm.Unread .cdmHeader a.title.low, .cdm.Unread.low .cdmHeader .cdmExcerpt, +.cdm.low .cdmHeader span.author { + color : #909090; + text-decoration : line-through; +} + + diff --git a/css/tt-rss.css b/css/tt-rss.css index 3e6b8cd38..c5ab8d991 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -606,20 +606,15 @@ div#headlines-frame.wide .hlTitle { white-space : normal; } -.hlContentH a, .hlContentH span { - color : #00cc00; +.hl a.title.high, span.hlContent.high .contentPreview { + color : #00aa00; } - -.hlContentL a, .hlContentL span { - color : #909090; - text-decoration : line-through; -} - -span.titleWrapH, span.titleWrapH a { - color : #00cc00; +.hl.Unread a.title.high, .hl.Unread span.hlContent.high .contentPreview { + color : #00dd00; } -span.titleWrapL, span.titleWrapL a { +.hl a.title.low, span.hlContent.low .contentPreview, +.hl.Unread a.title.low, .hl.Unread span.hlContent.low .contentPreview { color : #909090; text-decoration : line-through; } -- cgit v1.2.3-54-g00ecf From cf1cd5a0e9fa1c4b9338414b4501ec21b55e2cea Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 9 Jul 2013 17:05:43 +0400 Subject: add some css hacks for feed tree --- css/tt-rss.css | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index c5ab8d991..bdf1bf72a 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1072,6 +1072,7 @@ div.hl.active { body#ttrssMain #feedTree .dijitTreeRow { padding : 2px 0px 2px; + height : 22px; border-width : 1px; border-color : transparent; color : #333; @@ -1090,6 +1091,11 @@ body#ttrssMain #feedTree .dijitTreeIsRoot > .dijitTreeRow > .dijitTreeExpando { margin-left : 5px; } +body#ttrssMain #feedTree .dijitTreeExpando { + margin-top : 0px; + opacity : 0.6; +} + body#ttrssMain #feedTree .dijitTreeNode { padding : 0px; border-width : 0px; @@ -1119,8 +1125,11 @@ body#ttrssMain #feedTree { border-radius : 4px; vertical-align : middle; float : right; - margin : 5px 5px 5px 0px; + line-height : 14px; + margin-right : 4px; + margin-top : 3px; min-width : 23px; + height : 14px; text-shadow : 1px 1px rgba(0,0,0,0.2); } -- cgit v1.2.3-54-g00ecf From 2f20dd58d277d0ec5e4898feed0f530479a0c831 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 10 Jul 2013 13:09:12 +0400 Subject: integrate silk icons by Mark James --- README.md | 2 + classes/feeds.php | 14 +-- classes/pref/prefs.php | 8 +- classes/pref/users.php | 2 +- css/prefs.css | 8 ++ css/tt-rss.css | 35 ++++---- css/utility.css | 2 +- images/alert.png | Bin 340 -> 701 bytes images/alert.svg | 87 ------------------- images/archive.png | Bin 213 -> 555 bytes images/close_notify.svg | 76 ----------------- images/collapse.png | Bin 186 -> 317 bytes images/cross.png | Bin 0 -> 655 bytes images/feed.png | Bin 0 -> 691 bytes images/filter.png | Bin 0 -> 586 bytes images/folder.png | Bin 0 -> 537 bytes images/fresh.png | Bin 251 -> 633 bytes images/information.png | Bin 0 -> 778 bytes images/label.png | Bin 387 -> 586 bytes images/mark_set.png | Bin 0 -> 670 bytes images/mark_set.svg | 73 ---------------- images/mark_unset.png | Bin 0 -> 610 bytes images/mark_unset.svg | 76 ----------------- images/new_version.png | Bin 141 -> 372 bytes images/plugin.png | Bin 0 -> 591 bytes images/plugin_disabled.png | Bin 0 -> 347 bytes images/pub_set.png | Bin 0 -> 691 bytes images/pub_set.svg | 184 ---------------------------------------- images/pub_unset.png | Bin 0 -> 718 bytes images/pub_unset.svg | 149 -------------------------------- images/recently_read.png | Bin 1281 -> 0 bytes images/score_half_high.png | Bin 205 -> 295 bytes images/score_half_low.png | Bin 181 -> 211 bytes images/score_high.png | Bin 190 -> 295 bytes images/score_low.png | Bin 168 -> 211 bytes images/score_neutral.png | Bin 172 -> 201 bytes images/sign_excl.svg | 80 ----------------- images/sign_info.svg | 83 ------------------ images/star.png | Bin 0 -> 670 bytes images/tag.png | Bin 372 -> 594 bytes images/time.png | Bin 0 -> 793 bytes images/user.png | Bin 0 -> 741 bytes include/functions.php | 14 +-- install/index.php | 4 +- js/PrefFilterTree.js | 8 ++ js/PrefLabelTree.js | 4 +- js/functions.js | 2 +- plugins/close_button/button.png | Bin 3643 -> 655 bytes plugins/mail/mail.png | Bin 192 -> 641 bytes plugins/mailto/mail.png | Bin 254 -> 821 bytes plugins/mark_button/init.php | 2 +- plugins/note/note.png | Bin 159 -> 500 bytes plugins/share/share.png | Bin 3639 -> 343 bytes 53 files changed, 61 insertions(+), 852 deletions(-) delete mode 100644 images/alert.svg delete mode 100644 images/close_notify.svg create mode 100644 images/cross.png create mode 100644 images/feed.png create mode 100644 images/filter.png create mode 100644 images/folder.png create mode 100644 images/information.png create mode 100644 images/mark_set.png delete mode 100644 images/mark_set.svg create mode 100644 images/mark_unset.png delete mode 100644 images/mark_unset.svg create mode 100644 images/plugin.png create mode 100644 images/plugin_disabled.png create mode 100644 images/pub_set.png delete mode 100644 images/pub_set.svg create mode 100644 images/pub_unset.png delete mode 100644 images/pub_unset.svg delete mode 100644 images/recently_read.png delete mode 100644 images/sign_excl.svg delete mode 100644 images/sign_info.svg create mode 100644 images/star.png create mode 100644 images/time.png create mode 100644 images/user.png (limited to 'css') diff --git a/README.md b/README.md index 3aeea3319..469184c87 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,8 @@ Licensed under GNU GPL version 2 Copyright (c) 2005 Andrew Dolgov (unless explicitly stated otherwise). +Uses Silk icons by Mark James: http://www.famfamfam.com/lab/icons/silk/ + ## Requirements * Compatible web browser (http://tt-rss.org/wiki/CompatibleBrowsers) diff --git a/classes/feeds.php b/classes/feeds.php index b15875bd3..89b2f7128 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -74,7 +74,7 @@ class Feeds extends Handler_Protected { - "; + "; $reply .= ""; @@ -323,24 +323,24 @@ class Feeds extends Handler_Protected { if (sql_bool_to_bool($line["marked"])) { $marked_pic = "\"Unstar"; $class .= " marked"; } else { $marked_pic = "\"Star"; } if (sql_bool_to_bool($line["published"])) { - $published_pic = "\"Unpublish"; $class .= " published"; } else { - $published_pic = "\"Publish"; } @@ -395,7 +395,7 @@ class Feeds extends Handler_Protected { if ($has_feed_icon) { $feed_icon_img = "\"\""; } else { - $feed_icon_img = "\"\""; + $feed_icon_img = "\"\""; } $entry_site_url = $line["site_url"]; @@ -638,7 +638,7 @@ class Feeds extends Handler_Protected { $reply['content'] .= " "; $reply['content'] .= ""; - $reply['content'] .= ""; + $reply['content'] .= ""; $reply['content'] .= "
"; } diff --git a/classes/pref/prefs.php b/classes/pref/prefs.php index 32071e3b3..3dfe95241 100644 --- a/classes/pref/prefs.php +++ b/classes/pref/prefs.php @@ -765,7 +765,9 @@ class Pref_Prefs extends Handler_Protected { dojoType=\"dijit.form.CheckBox\" $checked type=\"checkbox\">"; - print "$name"; + $plugin_icon = $checked ? "plugin.png" : "plugin_disabled.png"; + + print " $name"; print "" . htmlspecialchars($about[1]); if (@$about[4]) { print " — "; + $plugin_icon = $checked ? "plugin.png" : "plugin_disabled.png"; + print ""; - print ""; + print ""; print ""; if (@$about[4]) { print " — " . $line["login"] . ""; + print " " . $line["login"] . ""; if (!$line["email"]) $line["email"] = " "; diff --git a/css/prefs.css b/css/prefs.css index 1cc8b7b03..502a53be9 100644 --- a/css/prefs.css +++ b/css/prefs.css @@ -98,6 +98,14 @@ table.prefPluginsList td label, table.prefUserList td { cursor : pointer; } +table.prefPluginsList label { + white-space : nowrap; +} + +table.prefPluginsList label img { + vertical-align : middle; +} + table.prefErrorLog tr.errrow td { font-size : 10px; } diff --git a/css/tt-rss.css b/css/tt-rss.css index bdf1bf72a..94bc5826c 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -299,7 +299,7 @@ div.error { } div.warning img, div.notice img, div.error img { - margin-right : 4px; + margin : 4px; vertical-align : middle; } @@ -660,29 +660,18 @@ div.dlgButtons { } span.labelColorIndicator { - height : 14px; - width : 14px; + height : 16px; + width : 16px; + border-radius : 4px; line-height : 14px; + vertical-align : middle; font-size : 9px; display : inline-block; - border : 1px solid black; - background-color : #fff7d5; - color : #063064; - text-align : center; - margin-right : 2px; -} - -span.labelColorIndicator2 { - height : 14px; - width : 14px; - font-size : 9px; - display : inline-block; - border : 1px solid black; + border : 1px solid #ccc; background-color : #fff7d5; color : #063064; text-align : center; - margin-right : 2px; - vertical-align : bottom; + box-shadow : 0px 0px 1px 0px rgba(0,0,0,0.1); } div#cmdline { @@ -894,6 +883,7 @@ div.fatalError textarea { img.feedIcon, img.tinyFeedIcon { width : 16px; height : 16px; + line-height : 16px; vertical-align : middle; display : inline-block; } @@ -1070,6 +1060,11 @@ div.hl.active { margin-right : 25px; } +#feedTree img.feedIcon { + position : relative; + top : -2px; +} + body#ttrssMain #feedTree .dijitTreeRow { padding : 2px 0px 2px; height : 22px; @@ -1078,8 +1073,8 @@ body#ttrssMain #feedTree .dijitTreeRow { color : #333; } -.dijitFolderClosed, -.dijitFolderOpened { +body#ttrssMain #feedTree .dijitFolderClosed, +body#ttrssMain #feedTree .dijitFolderOpened { display : none; } diff --git a/css/utility.css b/css/utility.css index 029fa9cb3..f342223e3 100644 --- a/css/utility.css +++ b/css/utility.css @@ -86,7 +86,7 @@ div.error { } div.warning img, div.notice img, div.error img { - margin-right : 4px; + margin : 4px; vertical-align : middle; } diff --git a/images/alert.png b/images/alert.png index 9687c4cf1..c37bd062e 100644 Binary files a/images/alert.png and b/images/alert.png differ diff --git a/images/alert.svg b/images/alert.svg deleted file mode 100644 index 237f66caf..000000000 --- a/images/alert.svg +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - ! - - diff --git a/images/archive.png b/images/archive.png index 1afa254f7..8443c23eb 100644 Binary files a/images/archive.png and b/images/archive.png differ diff --git a/images/close_notify.svg b/images/close_notify.svg deleted file mode 100644 index b3a17e02e..000000000 --- a/images/close_notify.svg +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - diff --git a/images/collapse.png b/images/collapse.png index 5adbd5e1c..79b344645 100644 Binary files a/images/collapse.png and b/images/collapse.png differ diff --git a/images/cross.png b/images/cross.png new file mode 100644 index 000000000..1514d51a3 Binary files /dev/null and b/images/cross.png differ diff --git a/images/feed.png b/images/feed.png new file mode 100644 index 000000000..315c4f4fa Binary files /dev/null and b/images/feed.png differ diff --git a/images/filter.png b/images/filter.png new file mode 100644 index 000000000..9757fc6ed Binary files /dev/null and b/images/filter.png differ diff --git a/images/folder.png b/images/folder.png new file mode 100644 index 000000000..784e8fa48 Binary files /dev/null and b/images/folder.png differ diff --git a/images/fresh.png b/images/fresh.png index f5b741a19..b7bfcd15f 100644 Binary files a/images/fresh.png and b/images/fresh.png differ diff --git a/images/information.png b/images/information.png new file mode 100644 index 000000000..12cd1aef9 Binary files /dev/null and b/images/information.png differ diff --git a/images/label.png b/images/label.png index aea67c4fd..83d12924f 100644 Binary files a/images/label.png and b/images/label.png differ diff --git a/images/mark_set.png b/images/mark_set.png new file mode 100644 index 000000000..b88c85789 Binary files /dev/null and b/images/mark_set.png differ diff --git a/images/mark_set.svg b/images/mark_set.svg deleted file mode 100644 index 1942d14c2..000000000 --- a/images/mark_set.svg +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - - - - image/svg+xml - - - - - - - - diff --git a/images/mark_unset.png b/images/mark_unset.png new file mode 100644 index 000000000..537e2f0c0 Binary files /dev/null and b/images/mark_unset.png differ diff --git a/images/mark_unset.svg b/images/mark_unset.svg deleted file mode 100644 index 4b31d31c4..000000000 --- a/images/mark_unset.svg +++ /dev/null @@ -1,76 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - diff --git a/images/new_version.png b/images/new_version.png index 878f7a4fb..1ebb19324 100644 Binary files a/images/new_version.png and b/images/new_version.png differ diff --git a/images/plugin.png b/images/plugin.png new file mode 100644 index 000000000..6187b15ae Binary files /dev/null and b/images/plugin.png differ diff --git a/images/plugin_disabled.png b/images/plugin_disabled.png new file mode 100644 index 000000000..f4f6be59c Binary files /dev/null and b/images/plugin_disabled.png differ diff --git a/images/pub_set.png b/images/pub_set.png new file mode 100644 index 000000000..315c4f4fa Binary files /dev/null and b/images/pub_set.png differ diff --git a/images/pub_set.svg b/images/pub_set.svg deleted file mode 100644 index c13a5c31b..000000000 --- a/images/pub_set.svg +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/images/pub_unset.png b/images/pub_unset.png new file mode 100644 index 000000000..3629d4cb8 Binary files /dev/null and b/images/pub_unset.png differ diff --git a/images/pub_unset.svg b/images/pub_unset.svg deleted file mode 100644 index 7b823fc5e..000000000 --- a/images/pub_unset.svg +++ /dev/null @@ -1,149 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/images/recently_read.png b/images/recently_read.png deleted file mode 100644 index ac1bf1782..000000000 Binary files a/images/recently_read.png and /dev/null differ diff --git a/images/score_half_high.png b/images/score_half_high.png index 205429aba..058ad261f 100644 Binary files a/images/score_half_high.png and b/images/score_half_high.png differ diff --git a/images/score_half_low.png b/images/score_half_low.png index 62da70043..57619706d 100644 Binary files a/images/score_half_low.png and b/images/score_half_low.png differ diff --git a/images/score_high.png b/images/score_high.png index 0ab5c07cb..058ad261f 100644 Binary files a/images/score_high.png and b/images/score_high.png differ diff --git a/images/score_low.png b/images/score_low.png index 7a18affc9..57619706d 100644 Binary files a/images/score_low.png and b/images/score_low.png differ diff --git a/images/score_neutral.png b/images/score_neutral.png index 22d44f8ef..a9af8d44b 100644 Binary files a/images/score_neutral.png and b/images/score_neutral.png differ diff --git a/images/sign_excl.svg b/images/sign_excl.svg deleted file mode 100644 index eb5e6dd20..000000000 --- a/images/sign_excl.svg +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - ! - - diff --git a/images/sign_info.svg b/images/sign_info.svg deleted file mode 100644 index b5a3e9f4d..000000000 --- a/images/sign_info.svg +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - i - - diff --git a/images/star.png b/images/star.png new file mode 100644 index 000000000..b88c85789 Binary files /dev/null and b/images/star.png differ diff --git a/images/tag.png b/images/tag.png index 5fe6596ec..80547e927 100644 Binary files a/images/tag.png and b/images/tag.png differ diff --git a/images/time.png b/images/time.png new file mode 100644 index 000000000..911da3f1d Binary files /dev/null and b/images/time.png differ diff --git a/images/user.png b/images/user.png new file mode 100644 index 000000000..79f35ccbd Binary files /dev/null and b/images/user.png differ diff --git a/include/functions.php b/include/functions.php index bcded7e5f..603a865a1 100644 --- a/include/functions.php +++ b/include/functions.php @@ -1876,19 +1876,19 @@ return "images/archive.png"; break; case -1: - return "images/mark_set.svg"; + return "images/star.png"; break; case -2: - return "images/pub_set.svg"; + return "images/feed.png"; break; case -3: return "images/fresh.png"; break; case -4: - return "images/tag.png"; + return "images/folder.png"; break; case -6: - return "images/recently_read.png"; + return "images/time.png"; break; default: if ($id < LABEL_BASE_INDEX) { @@ -2996,19 +2996,19 @@ function format_warning($msg, $id = "") { global $link; return "
- $msg
"; + $msg
"; } function format_notice($msg, $id = "") { global $link; return "
- $msg
"; + $msg
"; } function format_error($msg, $id = "") { global $link; return "
- $msg
"; + $msg"; } function print_notice($msg) { diff --git a/install/index.php b/install/index.php index f71a779fa..440954537 100644 --- a/install/index.php +++ b/install/index.php @@ -80,13 +80,13 @@ } function print_error($msg) { - print "
+ print "
$msg
"; } function print_notice($msg) { print "
- $msg
"; + $msg
"; } function db_connect($host, $user, $pass, $db, $type, $port = false) { diff --git a/js/PrefFilterTree.js b/js/PrefFilterTree.js index 4e49075bd..d9391c135 100644 --- a/js/PrefFilterTree.js +++ b/js/PrefFilterTree.js @@ -32,6 +32,14 @@ dojo.declare("fox.PrefFilterTree", lib.CheckBoxTree, { dojo.place(param, tnode.rowNode, 'first'); } + if (this.model.store.getValue(args.item, 'id') != 'root') { + var img = dojo.doc.createElement('img'); + img.src ='images/filter.png'; + img.className = 'markedPic'; + tnode._filterIconNode = img; + dojo.place(tnode._filterIconNode, tnode.labelNode, 'before'); + } + return tnode; }, diff --git a/js/PrefLabelTree.js b/js/PrefLabelTree.js index 05a0c15b6..2f7dc0f53 100644 --- a/js/PrefLabelTree.js +++ b/js/PrefLabelTree.js @@ -22,7 +22,7 @@ dojo.declare("fox.PrefLabelTree", lib.CheckBoxTree, { if (type == 'label') { var span = dojo.doc.createElement('span'); span.innerHTML = 'α'; - span.className = 'labelColorIndicator2'; + span.className = 'labelColorIndicator'; span.id = 'LICID-' + bare_id; span.setStyle({ @@ -38,6 +38,6 @@ dojo.declare("fox.PrefLabelTree", lib.CheckBoxTree, { }, getIconClass: function (item, opened) { return (!item || this.model.mayHaveChildren(item)) ? (opened ? "dijitFolderOpened" : "dijitFolderClosed") : "invisible"; - }, + }, }); diff --git a/js/functions.js b/js/functions.js index 8691c1ee5..b9b3aa44e 100644 --- a/js/functions.js +++ b/js/functions.js @@ -232,7 +232,7 @@ function notify_real(msg, no_hide, n_type) { msg = "" + msg; } - msg += " "; // msg = " " + msg; diff --git a/plugins/close_button/button.png b/plugins/close_button/button.png index b04aed796..1514d51a3 100644 Binary files a/plugins/close_button/button.png and b/plugins/close_button/button.png differ diff --git a/plugins/mail/mail.png b/plugins/mail/mail.png index 4d3fe7751..7348aed77 100644 Binary files a/plugins/mail/mail.png and b/plugins/mail/mail.png differ diff --git a/plugins/mailto/mail.png b/plugins/mailto/mail.png index fcdcbd604..2c49f78a6 100644 Binary files a/plugins/mailto/mail.png and b/plugins/mailto/mail.png differ diff --git a/plugins/mark_button/init.php b/plugins/mark_button/init.php index 971b12932..103475251 100644 --- a/plugins/mark_button/init.php +++ b/plugins/mark_button/init.php @@ -21,7 +21,7 @@ class Mark_Button extends Plugin { if (get_pref("COMBINED_DISPLAY_MODE")) { if (sql_bool_to_bool($line["marked"])) { $marked_pic = "\"Unstar"; } else { diff --git a/plugins/note/note.png b/plugins/note/note.png index 7f9f3fc3f..244e6ca04 100644 Binary files a/plugins/note/note.png and b/plugins/note/note.png differ diff --git a/plugins/share/share.png b/plugins/share/share.png index 3b6398f4a..25eacb7c2 100644 Binary files a/plugins/share/share.png and b/plugins/share/share.png differ -- cgit v1.2.3-54-g00ecf From 8ee5e9e5e69e9a54dabad9abc580cc2391198464 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 10 Jul 2013 22:11:24 +0400 Subject: rework floatingtitle --- css/cdm.css | 72 ++++++++++++++++++++++++++++++++++------------- images/page_white_go.png | Bin 0 -> 612 bytes js/viewfeed.js | 51 +++++++++++++++++++++++++-------- 3 files changed, 91 insertions(+), 32 deletions(-) create mode 100644 images/page_white_go.png (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index 7e85cbfff..2d0797db3 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -230,39 +230,71 @@ div.cdmHeader span.author { div#floatingTitle { position : absolute; z-index : 5; - top : 30px; - right : 20px; - border : 1px solid #ccc; - background : white; - border-radius : 3px; - box-shadow : 0px 0px 3px 0px rgba(0,0,0,0.1); + top : 26px; + right : 0px; + left : 0px; + border-color : #ccc; + border-width : 0px 0px 1px 0px; + border-style : solid; + background : #fcfcfc; color : #555; - font-size : 10px; - padding : 3px; + box-shadow : 0px 1px 1px 0px rgba(0,0,0,0.1); } div#floatingTitle > * { display : table-cell; white-space : nowrap; vertical-align : middle; + padding : 9px 5px; } -div#floatingTitle span.titleWrap { - max-width : 200px; - overflow : hidden; - text-overflow : ellipsis; +div#floatingTitle img { + margin-right : 4px; + margin-left : 4px; } -div#floatingTitle img { - padding-right : 3px; +div#floatingTitle span.author { + color : #555; + font-size : 11px; + font-weight : normal; +} + +div#floatingTitle a.title { + font-size : 14px; + color : #999; + font-weight : bold; +} +div#floatingTitle img.anchor { + margin-right : 1px; + margin-left : 0px; +} + +div#floatingTitle div.hlFeed { + padding-right : 10px; + color : #555; + font-weight : normal; + font-style : italic; + font-size : 11px; + white-space : nowrap; +} + +div#floatingTitle span.updated { + padding-right : 10px; + white-space : nowrap; + color : #555; + font-size : 11px; +} + +div#floatingTitle div.hlFeed a { + color : #555; +} + +div#floatingTitle span.titleWrap { + width : 100%; } -div#floatingTitle .dijit, -div#floatingTitle span.updated, -div#floatingTitle div.scoreWrap, -div#floatingTitle div.hlFeed, -div#floatingTitle span.author, -div#floatingTitle img.tinyFeedIcon { +div#floatingTitle .dijit, +div#floatingTitle img.hlScorePic { display : none; } diff --git a/images/page_white_go.png b/images/page_white_go.png new file mode 100644 index 000000000..7e62a924b Binary files /dev/null and b/images/page_white_go.png differ diff --git a/js/viewfeed.js b/js/viewfeed.js index 0cdb09425..ec7706547 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -2215,27 +2215,54 @@ function openSelectedAttachment(elem) { } } +function scrollToRowId(id) { + try { + var row = $(id); + + if (row) + $("headlines-frame").scrollTop = row.offsetTop; + + } catch (e) { + exception_error("scrollToRowId", e); + } +} + function updateFloatingTitle() { try { var hf = $("headlines-frame"); var child = $("RROW-" + _active_article_id); - if (child && child.offsetTop + child.offsetHeight > hf.scrollTop) { + var elems; - var header = child.getElementsByClassName("cdmHeader")[0]; + if (getInitParam("cdm_auto_catchup")) + elems = [$$("RROW-" + _active_article_id)]; + else + elems = $$("#headlines-frame > div[id*=RROW]"); - if (child.id != $("floatingTitle").getAttribute("rowid")) { - $("floatingTitle").setAttribute("rowid", child.id); - $("floatingTitle").innerHTML = header.innerHTML; + for (var i = 0; i < elems.length; i++) { - PluginHost.run(PluginHost.HOOK_FLOATING_TITLE, child); - } + var child = elems[i]; - if (child.offsetTop < hf.scrollTop - header.offsetHeight - 100 && - child.offsetTop + child.offsetHeight - hf.scrollTop > 100) - Element.show("floatingTitle"); - else - Element.hide("floatingTitle"); + if (child && child.offsetTop + child.offsetHeight > hf.scrollTop) { + + var header = child.getElementsByClassName("cdmHeader")[0]; + + if (child.id != $("floatingTitle").getAttribute("rowid")) { + $("floatingTitle").setAttribute("rowid", child.id); + $("floatingTitle").innerHTML = header.innerHTML; + $("floatingTitle").firstChild.innerHTML = "" + $("floatingTitle").firstChild.innerHTML; + + PluginHost.run(PluginHost.HOOK_FLOATING_TITLE, child); + } + + if (child.offsetTop < hf.scrollTop - header.offsetHeight) + Element.show("floatingTitle"); + else + Element.hide("floatingTitle"); + + return; + + } } } catch (e) { -- cgit v1.2.3-54-g00ecf From b532ef24edb5b733a7717cebe68e5e95dc3bcffe Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 10 Jul 2013 22:17:27 +0400 Subject: floating title: fix feed styling --- css/cdm.css | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index 2d0797db3..475aac143 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -278,6 +278,12 @@ div#floatingTitle div.hlFeed { white-space : nowrap; } +div#floatingTitle div.hlFeed a { + border-radius : 4px; + display : inline-block; + padding : 1px 4px 1px 4px; +} + div#floatingTitle span.updated { padding-right : 10px; white-space : nowrap; -- cgit v1.2.3-54-g00ecf From 8043035b4213aeb197e431998efac1c5fbdf7003 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 10 Jul 2013 22:24:49 +0400 Subject: fix floating title whitespace wrapping in titlewrap --- css/cdm.css | 1 + 1 file changed, 1 insertion(+) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index 475aac143..65c5bf53f 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -297,6 +297,7 @@ div#floatingTitle div.hlFeed a { div#floatingTitle span.titleWrap { width : 100%; + white-space : normal; } div#floatingTitle .dijit, -- cgit v1.2.3-54-g00ecf From da0f023745730ef2330f458945629e5ceaea89a5 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 11 Jul 2013 08:39:09 +0400 Subject: fix floating title position --- css/cdm.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index 65c5bf53f..c16cf28f1 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -230,11 +230,11 @@ div.cdmHeader span.author { div#floatingTitle { position : absolute; z-index : 5; - top : 26px; + top : 25px; right : 0px; left : 0px; border-color : #ccc; - border-width : 0px 0px 1px 0px; + border-width : 1px 0px 1px 0px; border-style : solid; background : #fcfcfc; color : #555; -- cgit v1.2.3-54-g00ecf From 7415fcf2129c4ac0cfd814b0beb917e2372447f1 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 11 Jul 2013 12:28:24 +0400 Subject: enable floating title for expandable combined mode, minor expandable mode fixes --- css/cdm.css | 4 ++++ js/viewfeed.js | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index c16cf28f1..98fd4edf6 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -110,6 +110,10 @@ div.cdm.expandable div.cdmHeader span.titleWrap { max-width : 500px; } +div.cdm.expandable.active div.cdmHeader span.titleWrap { + white-space : normal; +} + div.cdm.expandable div.cdmHeader a.title { font-weight : bold; color : #555; diff --git a/js/viewfeed.js b/js/viewfeed.js index e23db86bd..1785fe3f5 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -1315,7 +1315,7 @@ function headlines_scroll_handler(e) { if (hsp) hsp.innerHTML = ""; } - if (getInitParam("cdm_expanded") && isCdmMode()) { + if (isCdmMode()) { updateFloatingTitle(); } @@ -1489,6 +1489,12 @@ function cdmCollapseArticle(event, id, unmark) { if (event) Event.stop(event); PluginHost.run(PluginHost.HOOK_ARTICLE_COLLAPSED, id); + + if (row.offsetTop < $("headlines-frame").scrollTop) + scrollToRowId(row.id); + + Element.hide("floatingTitle"); + $("floatingTitle").setAttribute("rowid", false); } } catch (e) { -- cgit v1.2.3-54-g00ecf From ab25a8064461a194d97dceaa014c68bfc395702b Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 11 Jul 2013 15:44:54 +0400 Subject: css: add feed loading indicator position hack --- css/tt-rss.css | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index 94bc5826c..6b3b310c8 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1147,3 +1147,7 @@ body#ttrssPrefs hr { text-shadow : 1px 1px 2px #fff; } +#feedTree img[src*='indicator_white.gif'] { + position : relative; + top : -2px; +} -- cgit v1.2.3-54-g00ecf From 1a545dcb44e492494b2f7c473d7534f72b7c5c1b Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 12 Jul 2013 12:38:50 +0400 Subject: mark feed with error in headlines toolbar, use error icon in feed editor --- classes/feeds.php | 4 +++- classes/pref/feeds.php | 5 +++-- css/tt-rss.css | 8 ++------ 3 files changed, 8 insertions(+), 9 deletions(-) (limited to 'css') diff --git a/classes/feeds.php b/classes/feeds.php index e71be4e55..5649da7ce 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -48,9 +48,11 @@ class Feeds extends Handler_Protected { // right part + $error_class = $error ? "error" : ""; + $reply .= ""; $reply .= ""; - $reply .= ""; + $reply .= ""; if ($feed_site_url) { $last_updated = T_sprintf("Last updated: %s", diff --git a/classes/pref/feeds.php b/classes/pref/feeds.php index 1f8c5e4a0..122d4b116 100644 --- a/classes/pref/feeds.php +++ b/classes/pref/feeds.php @@ -572,8 +572,9 @@ class Pref_Feeds extends Handler_Protected { $last_error = $this->dbh->fetch_result($result, 0, "last_error"); if ($last_error) { - print " (error)"; + print " \"(error)\""; } diff --git a/css/tt-rss.css b/css/tt-rss.css index 6b3b310c8..de2a92d59 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -320,10 +320,6 @@ div.prefHelp { padding : 5px; } -span.feed_error { - color : red; -} - .insensitive { color : #555; } @@ -356,9 +352,9 @@ div#headlines-toolbar span.r { text-align : right; } -div#headlines-toolbar span.r span.error { +#headlines-toolbar span.r .error a { color : red; -} +} div#headlines-toolbar span.r a { color : #555; -- cgit v1.2.3-54-g00ecf From e21ea11c50d889cfd8d0f09b0817b6260559d6af Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 12 Jul 2013 12:43:46 +0400 Subject: properly mark feeds with errors in the feedlist --- css/tt-rss.css | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index de2a92d59..af6b50abd 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -845,10 +845,14 @@ div.fatalError textarea { overflow : auto; } -.dijitTreeLabel.Unread { +#feedTree .dijitTreeRow .dijitTreeLabel.Unread { font-weight : bold; } +#feedTree .dijitTreeRow.Error .dijitTreeLabel { + color : red; +} + .dijitTreeLabel { outline : 0; } -- cgit v1.2.3-54-g00ecf From 39d61109e6a88930d8a70e8a8dd5bf1b115b0161 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 16 Jul 2013 09:33:51 +0400 Subject: fix counternode going behind feed title on gecko --- css/tt-rss.css | 1 + 1 file changed, 1 insertion(+) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index af6b50abd..2238c5452 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1120,6 +1120,7 @@ body#ttrssMain #feedTree { border-radius : 4px; vertical-align : middle; float : right; + position : relative; line-height : 14px; margin-right : 4px; margin-top : 3px; -- cgit v1.2.3-54-g00ecf From 41d37fb2c39b2b270981dac423e3d6c55293048d Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 16 Jul 2013 09:59:14 +0400 Subject: add experimental hack to show row unread status in floating title --- css/cdm.css | 5 +++++ js/viewfeed.js | 30 +++++++++++++++++++++--------- 2 files changed, 26 insertions(+), 9 deletions(-) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index 98fd4edf6..23b8c7767 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -268,6 +268,11 @@ div#floatingTitle a.title { color : #999; font-weight : bold; } + +div#floatingTitle.Unread a.title { + color : black; +} + div#floatingTitle img.anchor { margin-right : 1px; margin-left : 0px; diff --git a/js/viewfeed.js b/js/viewfeed.js index 9a13f8c05..0a20cabcf 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -835,6 +835,8 @@ function selectionToggleUnread(set_state, callback, no_error, ids) { } } + updateFloatingTitle(true); + if (rows.length > 0) { var cmode = ""; @@ -1742,6 +1744,7 @@ function cdmClicked(event, id) { if (article_is_unread) { decrementFeedCounter(getActiveFeedId(), activeFeedIsCat()); + updateFloatingTitle(true); } var query = "?op=rpc&method=catchupSelected" + @@ -2257,8 +2260,10 @@ function scrollToRowId(id) { } } -function updateFloatingTitle() { +function updateFloatingTitle(unread_only) { try { + if (!isCdmMode()) return; + var hf = $("headlines-frame"); var elems = $$("#headlines-frame > div[id*=RROW]"); @@ -2271,17 +2276,24 @@ function updateFloatingTitle() { var header = child.getElementsByClassName("cdmHeader")[0]; - if (child.id != $("floatingTitle").getAttribute("rowid")) { - $("floatingTitle").setAttribute("rowid", child.id); - $("floatingTitle").innerHTML = header.innerHTML; - $("floatingTitle").firstChild.innerHTML = "" + $("floatingTitle").firstChild.innerHTML; + if (unread_only || child.id != $("floatingTitle").getAttribute("rowid")) { + if (child.id != $("floatingTitle").getAttribute("rowid")) { + $("floatingTitle").setAttribute("rowid", child.id); + $("floatingTitle").innerHTML = header.innerHTML; + $("floatingTitle").firstChild.innerHTML = "" + $("floatingTitle").firstChild.innerHTML; - initFloatingMenu(); + initFloatingMenu(); - var cb = $$("#floatingTitle .dijitCheckBox")[0]; + var cb = $$("#floatingTitle .dijitCheckBox")[0]; + + if (cb) + cb.parentNode.removeChild(cb); + } - if (cb) - cb.parentNode.removeChild(cb); + if (child.hasClassName("Unread")) + $("floatingTitle").addClassName("Unread"); + else + $("floatingTitle").removeClassName("Unread"); PluginHost.run(PluginHost.HOOK_FLOATING_TITLE, child); } -- cgit v1.2.3-54-g00ecf From 898f86c0737835e7e24c50d45efa44a3d47c9ee6 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 16 Jul 2013 11:47:30 +0400 Subject: add some transitions for headline title color changes --- css/cdm.css | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index 23b8c7767..81c481eae 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -117,6 +117,8 @@ div.cdm.expandable.active div.cdmHeader span.titleWrap { div.cdm.expandable div.cdmHeader a.title { font-weight : bold; color : #555; + -webkit-transition : color 0.2s; + transition : color 0.2s; } div.cdm.expandable.Unread div.cdmHeader a.title { @@ -135,6 +137,8 @@ div.cdm.expanded div.cdmHeader a.title { font-size : 14px; color : #999; font-weight : bold; + -webkit-transition : color 0.2s; + transition : color 0.2s; } div.cdm.expanded.active { @@ -267,6 +271,8 @@ div#floatingTitle a.title { font-size : 14px; color : #999; font-weight : bold; + -webkit-transition : color 0.2s; + transition : color 0.2s; } div#floatingTitle.Unread a.title { -- cgit v1.2.3-54-g00ecf From 1bd46688d36ec5743c1a0246710bc6353d8fdc6f Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 17 Jul 2013 22:21:27 +0400 Subject: try justify text-alignment for content --- css/cdm.css | 1 + css/tt-rss.css | 1 + 2 files changed, 2 insertions(+) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index 81c481eae..2e1ffd2ab 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -222,6 +222,7 @@ div.cdm .hlFeed a { div.cdmContentInner p { max-width : 650px; + text-align : justify; } div.cdmContentInner iframe { diff --git a/css/tt-rss.css b/css/tt-rss.css index 2238c5452..5a721ea21 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -994,6 +994,7 @@ span.collapseBtn { div.postContent p { max-width : 650px; + text-align : justify; } div.postContent iframe { -- cgit v1.2.3-54-g00ecf From 60a1e7e795e834f174283acfca3ab82b072c1479 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 17 Jul 2013 22:22:50 +0400 Subject: same with ttrssZoom --- css/tt-rss.css | 1 + 1 file changed, 1 insertion(+) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index 5a721ea21..ce30167e0 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1017,6 +1017,7 @@ body#ttrssZoom { body#ttrssZoom div.postContent p { max-width : 650px; + text-align : justify; } body#ttrssZoom div.postHeader { -- cgit v1.2.3-54-g00ecf From 9fa8d652c2dc312e7af539e52b80436716e8dcc6 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 23 Jul 2013 07:49:32 +0400 Subject: atom-to-html: remove horribly scaled feed icon (refs #754) --- atom-to-html.xsl | 3 --- css/utility.css | 1 - 2 files changed, 4 deletions(-) (limited to 'css') diff --git a/atom-to-html.xsl b/atom-to-html.xsl index 0e6b2ac6e..1b827bb8f 100644 --- a/atom-to-html.xsl +++ b/atom-to-html.xsl @@ -21,9 +21,6 @@
- feed icon -

This feed has been exported from diff --git a/css/utility.css b/css/utility.css index f342223e3..c785cd82e 100644 --- a/css/utility.css +++ b/css/utility.css @@ -120,7 +120,6 @@ div.rss h1 { border-color : gray; border-style : dotted; color : gray; - margin-right : 90px; } div.rss h2 { -- cgit v1.2.3-54-g00ecf From ac57b9dd19333db9bed34bc70d945568292b77de Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 26 Jul 2013 18:26:28 +0400 Subject: add experimental css hyphens support for english language --- classes/feeds.php | 2 +- css/cdm.css | 3 +++ css/tt-rss.css | 6 ++++++ include/functions.php | 2 +- 4 files changed, 11 insertions(+), 2 deletions(-) (limited to 'css') diff --git a/classes/feeds.php b/classes/feeds.php index def24521a..adc86d21a 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -621,7 +621,7 @@ class Feeds extends Handler_Protected { } $reply['content'] .= "

"; - $reply['content'] .= "
"; + $reply['content'] .= "
"; if ($line["orig_feed_id"]) { diff --git a/css/cdm.css b/css/cdm.css index 2e1ffd2ab..234f53398 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -223,6 +223,9 @@ div.cdm .hlFeed a { div.cdmContentInner p { max-width : 650px; text-align : justify; + -webkit-hyphens: auto; + -moz-hyphens: auto; + hyphens: auto; } div.cdmContentInner iframe { diff --git a/css/tt-rss.css b/css/tt-rss.css index ce30167e0..f07154a3b 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -995,6 +995,9 @@ span.collapseBtn { div.postContent p { max-width : 650px; text-align : justify; + -webkit-hyphens: auto; + -moz-hyphens: auto; + hyphens: auto; } div.postContent iframe { @@ -1018,6 +1021,9 @@ body#ttrssZoom { body#ttrssZoom div.postContent p { max-width : 650px; text-align : justify; + -webkit-hyphens: auto; + -moz-hyphens: auto; + hyphens: auto; } body#ttrssZoom div.postHeader { diff --git a/include/functions.php b/include/functions.php index ef5905fe2..ccf530d17 100644 --- a/include/functions.php +++ b/include/functions.php @@ -3286,7 +3286,7 @@ } $rv['content'] .= "
"; - $rv['content'] .= "
"; + $rv['content'] .= "
"; $rv['content'] .= $line["content"]; $rv['content'] .= format_article_enclosures($id, -- cgit v1.2.3-54-g00ecf From f035e6dc822e3b8766d55689abff26a6bf52d404 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 31 Jul 2013 01:22:13 +0400 Subject: tweak the zoomed article a little bit --- css/tt-rss.css | 12 ++++++++++-- include/functions.php | 6 +++++- 2 files changed, 15 insertions(+), 3 deletions(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index f07154a3b..c79e28ad5 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -382,7 +382,7 @@ span.hlLabelRef { div.postHeader div.postDate { text-align : right; - color : #555; + color : #909090; float : right; } @@ -1014,10 +1014,18 @@ body#ttrssZoom { margin-left : auto; margin-right : auto; padding : 20px; - max-width : 800px; + max-width : 670px; background : #f9fbff; } +body#ttrssZoom div.postHeader div.postDate { + float : none; + text-align : left; + padding-left : 0px; + color : #777; + font-size : 10px; +} + body#ttrssZoom div.postContent p { max-width : 650px; text-align : justify; diff --git a/include/functions.php b/include/functions.php index ccf530d17..cef0ea9eb 100644 --- a/include/functions.php +++ b/include/functions.php @@ -3201,7 +3201,8 @@ $parsed_updated = make_local_datetime($line["updated"], true, $owner_uid, true); - $rv['content'] .= "
$parsed_updated
"; + if (!$zoom_mode) + $rv['content'] .= "
$parsed_updated
"; if ($line["link"]) { $rv['content'] .= "
"; } + if ($zoom_mode) + $rv['content'] .= "
$parsed_updated
"; + $tags_str = format_tags_string($line["tags"], $id); $tags_str_full = join(", ", $line["tags"]); -- cgit v1.2.3-54-g00ecf From dd90eb2c7a1164ed8924c83c13138d568db5ea4e Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 31 Jul 2013 14:53:34 +0400 Subject: search keyword highlighting (combined mode only) --- classes/feeds.php | 3 ++- css/tt-rss.css | 5 +++++ include/functions.php | 51 +++++++++++++++++++++++++++++++++++++++++++++++---- 3 files changed, 54 insertions(+), 5 deletions(-) (limited to 'css') diff --git a/classes/feeds.php b/classes/feeds.php index 0849a7a8a..874f76788 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -255,6 +255,7 @@ class Feeds extends Handler_Protected { $last_error = $qfh_ret[3]; $last_updated = strpos($qfh_ret[4], '1970-') === FALSE ? make_local_datetime($qfh_ret[4], false) : __("Never"); + $highlight_words = $qfh_ret[5]; $vgroup_last_feed = $vgr_last_feed; @@ -509,7 +510,7 @@ class Feeds extends Handler_Protected { $tags = false; $line["content"] = sanitize($line["content"], - sql_bool_to_bool($line['hide_images']), false, $entry_site_url); + sql_bool_to_bool($line['hide_images']), false, $entry_site_url, $highlight_words); foreach (PluginHost::getInstance()->get_hooks(PluginHost::HOOK_RENDER_ARTICLE_CDM) as $p) { $line = $p->hook_render_article_cdm($line); diff --git a/css/tt-rss.css b/css/tt-rss.css index c79e28ad5..e7514956f 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1168,3 +1168,8 @@ body#ttrssPrefs hr { position : relative; top : -2px; } + +span.highlight { + background-color : #ffff00; + color : #cc90cc; +} diff --git a/include/functions.php b/include/functions.php index deeb53bf1..6ceb20adc 100644 --- a/include/functions.php +++ b/include/functions.php @@ -2204,6 +2204,7 @@ $keywords = explode(" ", $search); $query_keywords = array(); + $search_words = array(); foreach ($keywords as $k) { if (strpos($k, "-") === 0) { @@ -2223,6 +2224,7 @@ } else { array_push($query_keywords, "(UPPER(ttrss_entries.title) $not LIKE UPPER('%$k%') OR UPPER(ttrss_entries.content) $not LIKE UPPER('%$k%'))"); + array_push($search_words, $k); } break; case "author": @@ -2232,6 +2234,7 @@ } else { array_push($query_keywords, "(UPPER(ttrss_entries.title) $not LIKE UPPER('%$k%') OR UPPER(ttrss_entries.content) $not LIKE UPPER('%$k%'))"); + array_push($search_words, $k); } break; case "note": @@ -2246,6 +2249,7 @@ } else { array_push($query_keywords, "(UPPER(ttrss_entries.title) $not LIKE UPPER('%$k%') OR UPPER(ttrss_entries.content) $not LIKE UPPER('%$k%'))"); + if (!$not) array_push($search_words, $k); } break; case "star": @@ -2258,6 +2262,7 @@ } else { array_push($query_keywords, "(UPPER(ttrss_entries.title) $not LIKE UPPER('%$k%') OR UPPER(ttrss_entries.content) $not LIKE UPPER('%$k%'))"); + if (!$not) array_push($search_words, $k); } break; case "pub": @@ -2270,6 +2275,7 @@ } else { array_push($query_keywords, "(UPPER(ttrss_entries.title) $not LIKE UPPER('%$k%') OR UPPER(ttrss_entries.content) $not LIKE UPPER('%$k%'))"); + if (!$not) array_push($search_words, $k); } break; default: @@ -2285,13 +2291,15 @@ } else { array_push($query_keywords, "(UPPER(ttrss_entries.title) $not LIKE UPPER('%$k%') OR UPPER(ttrss_entries.content) $not LIKE UPPER('%$k%'))"); + + if (!$not) array_push($search_words, $k); } } } $search_query_part = implode("AND", $query_keywords); - return $search_query_part; + return array($search_query_part, $search_words); } function getParentCategories($cat, $owner_uid) { @@ -2327,6 +2335,7 @@ if (!$owner_uid) $owner_uid = $_SESSION["uid"]; $ext_tables_part = ""; + $search_words = array(); if ($search) { @@ -2339,7 +2348,7 @@ $search_query_part = "ref_id = -1 AND "; } else { - $search_query_part = search_to_sql($search); + list($search_query_part, $search_words) = search_to_sql($search); $search_query_part .= " AND "; } @@ -2747,11 +2756,11 @@ $result = db_query($select_qpart . $from_qpart . $where_qpart); } - return array($result, $feed_title, $feed_site_url, $last_error, $last_updated); + return array($result, $feed_title, $feed_site_url, $last_error, $last_updated, $search_words); } - function sanitize($str, $force_remove_images = false, $owner = false, $site_url = false) { + function sanitize($str, $force_remove_images = false, $owner = false, $site_url = false, $highlight_words = false) { if (!$owner) $owner = $_SESSION["uid"]; $res = trim($str); if (!$res) return ''; @@ -2852,7 +2861,41 @@ $doc->removeChild($doc->firstChild); //remove doctype $doc = strip_harmful_tags($doc, $allowed_elements, $disallowed_attributes); + + if ($highlight_words) { + foreach ($highlight_words as $word) { + + $elements = $xpath->query('//*[contains(.,"'.$word.'")]'); + + foreach ($elements as $element) { + foreach ($element->childNodes as $child) { + + if (!$child instanceof DomText) continue; + + $fragment = $doc->createDocumentFragment(); + $text = $child->textContent; + $stubs = array(); + + while (($pos = stripos($text, $word)) !== false) { + $fragment->appendChild(new DomText(substr($text, 0, $pos))); + $word = substr($text, $pos, strlen($word)); + $highlight = $doc->createElement('span'); + $highlight->appendChild(new DomText($word)); + $highlight->setAttribute('class', 'highlight'); + $fragment->appendChild($highlight); + $text = substr($text, $pos + strlen($word)); + } + + if (!empty($text)) $fragment->appendChild(new DomText($text)); + + $element->replaceChild($fragment, $child); + } + } + } + } + $res = $doc->saveHTML(); + return $res; } -- cgit v1.2.3-54-g00ecf From 22e2ea41662d4880e1fdad8d4056b954cd3067bd Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 1 Aug 2013 09:35:38 +0400 Subject: show full article title in zoom mode --- css/tt-rss.css | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index e7514956f..3392c3c7a 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1026,6 +1026,10 @@ body#ttrssZoom div.postHeader div.postDate { font-size : 10px; } +body#ttrssZoom div.postHeader div.postTitle { + white-space : normal; +} + body#ttrssZoom div.postContent p { max-width : 650px; text-align : justify; -- cgit v1.2.3-54-g00ecf From 5c54e6838870498134bbfb2994c25d2140b43bad Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 5 Aug 2013 12:26:09 +0400 Subject: support media:description for media: enclosures --- classes/feedenclosure.php | 1 + classes/feeditem/atom.php | 3 +++ classes/feeditem/rss.php | 3 +++ css/tt-rss.css | 5 +++++ include/functions.php | 12 +++++++++++- include/rssfuncs.php | 8 ++++++-- 6 files changed, 29 insertions(+), 3 deletions(-) (limited to 'css') diff --git a/classes/feedenclosure.php b/classes/feedenclosure.php index d610dd7c8..b57100b06 100644 --- a/classes/feedenclosure.php +++ b/classes/feedenclosure.php @@ -3,5 +3,6 @@ class FeedEnclosure { public $link; public $type; public $length; + public $title; } ?> diff --git a/classes/feeditem/atom.php b/classes/feeditem/atom.php index b1251e6d3..b7a228aed 100644 --- a/classes/feeditem/atom.php +++ b/classes/feeditem/atom.php @@ -146,6 +146,9 @@ class FeedItem_Atom extends FeedItem_Common { $enc->link = $enclosure->getAttribute("url"); $enc->length = $enclosure->getAttribute("length"); + $desc = $this->xpath->query("media:description", $enclosure)->item(0); + if ($desc) $enc->title = strip_tags($desc->nodeValue); + array_push($encs, $enc); } diff --git a/classes/feeditem/rss.php b/classes/feeditem/rss.php index 095225a2a..1f59f0612 100644 --- a/classes/feeditem/rss.php +++ b/classes/feeditem/rss.php @@ -121,6 +121,9 @@ class FeedItem_RSS extends FeedItem_Common { $enc->link = $enclosure->getAttribute("url"); $enc->length = $enclosure->getAttribute("length"); + $desc = $this->xpath->query("media:description", $enclosure)->item(0); + if ($desc) $enc->title = strip_tags($desc->nodeValue); + array_push($encs, $enc); } diff --git a/css/tt-rss.css b/css/tt-rss.css index 3392c3c7a..9e500a759 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1177,3 +1177,8 @@ span.highlight { background-color : #ffff00; color : #cc90cc; } + +div.enclosure_title { + +} + diff --git a/include/functions.php b/include/functions.php index 56361472e..6bc52e9d9 100644 --- a/include/functions.php +++ b/include/functions.php @@ -3776,6 +3776,7 @@ $url = $line["content_url"]; $ctype = $line["content_type"]; + $title = $line["title"]; if (!$ctype) $ctype = __("unknown type"); @@ -3798,6 +3799,7 @@ $entry["type"] = $ctype; $entry["filename"] = $filename; $entry["url"] = $url; + $entry["title"] = $title; array_push($entries, $entry); } @@ -3819,7 +3821,10 @@ $rv .= "

" .htmlspecialchars($entry["url"]) . "

"; + } + if ($entry['title']) { + $rv.= "
${entry['title']}
"; } } } @@ -3836,7 +3841,12 @@ ""; foreach ($entries as $entry) { - $rv .= ""; + if ($entry["title"]) + $title = "— " . truncate_string($entry["title"], 30); + else + $title = ""; + + $rv .= ""; }; diff --git a/include/rssfuncs.php b/include/rssfuncs.php index 4b1b30c4b..dbe5c8bc9 100644 --- a/include/rssfuncs.php +++ b/include/rssfuncs.php @@ -954,7 +954,7 @@ if (is_array($encs)) { foreach ($encs as $e) { $e_item = array( - $e->link, $e->type, $e->length); + $e->link, $e->type, $e->length, $e->title); array_push($enclosures, $e_item); } } @@ -966,10 +966,14 @@ db_query("BEGIN"); +// debugging +// db_query("DELETE FROM ttrss_enclosures WHERE post_id = '$entry_ref_id'"); + foreach ($enclosures as $enc) { $enc_url = db_escape_string($enc[0]); $enc_type = db_escape_string($enc[1]); $enc_dur = db_escape_string($enc[2]); + $enc_title = db_escape_string($enc[3]); $result = db_query("SELECT id FROM ttrss_enclosures WHERE content_url = '$enc_url' AND post_id = '$entry_ref_id'"); @@ -977,7 +981,7 @@ if (db_num_rows($result) == 0) { db_query("INSERT INTO ttrss_enclosures (content_url, content_type, title, duration, post_id) VALUES - ('$enc_url', '$enc_type', '', '$enc_dur', '$entry_ref_id')"); + ('$enc_url', '$enc_type', '$enc_title', '$enc_dur', '$entry_ref_id')"); } } -- cgit v1.2.3-54-g00ecf From d2d6c8dbb28d48df1f6397e8ee6bc59c67be86da Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Tue, 27 Aug 2013 15:09:48 +0400 Subject: tweak zoomed display date/tags a bit --- css/tt-rss.css | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index 9e500a759..beba1d4b3 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1020,12 +1020,17 @@ body#ttrssZoom { body#ttrssZoom div.postHeader div.postDate { float : none; - text-align : left; + text-align : right; padding-left : 0px; color : #777; font-size : 10px; } +body#ttrssZoom div.postHeader div.postTags { + color : #777; + font-size : 10px; +} + body#ttrssZoom div.postHeader div.postTitle { white-space : normal; } -- cgit v1.2.3-54-g00ecf From ff04fe06250b7640b62379708b27ae31630150a0 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 2 Sep 2013 12:58:14 +0400 Subject: use plurals for comment/comments link in article, properly translate comments string, add feed title to article in zoom mode --- classes/feeds.php | 7 +++++-- css/tt-rss.css | 13 +++++++++++++ include/functions.php | 17 ++++++++++++++--- 3 files changed, 32 insertions(+), 5 deletions(-) (limited to 'css') diff --git a/classes/feeds.php b/classes/feeds.php index 3b765d6bd..394444345 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -701,10 +701,13 @@ class Feeds extends Handler_Protected { } else { $comments_url = htmlspecialchars($line["link"]); } - $entry_comments = "$num_comments comments"; + $entry_comments = "$num_comments ". + _ngettext("comment", "comments", $num_comments).""; + } else { if ($line["comments"] && $line["link"] != $line["comments"]) { - $entry_comments = "comments"; + $entry_comments = "".__("comments").""; } } diff --git a/css/tt-rss.css b/css/tt-rss.css index beba1d4b3..51b18ead6 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1018,6 +1018,19 @@ body#ttrssZoom { background : #f9fbff; } +body#ttrssZoom div.postHeader div.postFeedTitle { + float : left; + text-align : right; + padding-left : 0px; + font-size : 10px; +} + +body#ttrssZoom div.postHeader a.postComments { + text-align : right; + padding-left : 0px; + font-size : 10px; +} + body#ttrssZoom div.postHeader div.postDate { float : none; text-align : right; diff --git a/include/functions.php b/include/functions.php index 8ede14a0b..4917bca2e 100644 --- a/include/functions.php +++ b/include/functions.php @@ -3182,6 +3182,7 @@ $result = db_query("SELECT id,title,link,content,feed_id,comments,int_id,lang, ".SUBSTRING_FOR_DATE."(updated,1,16) as updated, (SELECT site_url FROM ttrss_feeds WHERE id = feed_id) as site_url, + (SELECT title FROM ttrss_feeds WHERE id = feed_id) as feed_title, (SELECT hide_images FROM ttrss_feeds WHERE id = feed_id) as hide_images, (SELECT always_display_enclosures FROM ttrss_feeds WHERE id = feed_id) as always_display_enclosures, num_comments, @@ -3218,10 +3219,13 @@ } else { $comments_url = htmlspecialchars($line["link"]); } - $entry_comments = "$num_comments comments"; + $entry_comments = "$num_comments ". + _ngettext("comment", "comments", $num_comments).""; + } else { if ($line["comments"] && $line["link"] != $line["comments"]) { - $entry_comments = "comments"; + $entry_comments = "".__("comments").""; } } @@ -3276,8 +3280,15 @@ $rv['content'] .= "
" . $line["title"] . "$entry_author
"; } - if ($zoom_mode) + if ($zoom_mode) { + $feed_title = "". + htmlspecialchars($line["feed_title"]).""; + + $rv['content'] .= "
$feed_title
"; + $rv['content'] .= "
$parsed_updated
"; + } $tags_str = format_tags_string($line["tags"], $id); $tags_str_full = join(", ", $line["tags"]); -- cgit v1.2.3-54-g00ecf From 0c0e5f3640ff6e857a978f9bdd4af35fb4716f5e Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 4 Sep 2013 17:57:04 +0400 Subject: fix wrong url() paths to toolbar.png in css --- css/cdm.css | 2 +- css/utility.css | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index 234f53398..c91f09927 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -182,7 +182,7 @@ div.cdmFeedTitle { border-width : 0px 0px 1px 0px; border-style : solid; padding : 5px 3px 5px 5px; - background : url("images/toolbar.png") bottom left; + background : url("../images/toolbar.png") bottom left; background-repeat : repeat-x; } diff --git a/css/utility.css b/css/utility.css index c785cd82e..b45e9a00f 100644 --- a/css/utility.css +++ b/css/utility.css @@ -159,7 +159,7 @@ div.rss hr { body#sharepopup { background-color : white; - background-image : url("images/toolbar.png"); + background-image : url("../images/toolbar.png"); background-repeat : repeat-x; background-position : bottom; margin : 10px; -- cgit v1.2.3-54-g00ecf From 811a81c6ded139d38512e6f7e4e012fa63816b75 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 12 Sep 2013 12:13:10 +0400 Subject: counter: remove text-shadow --- css/tt-rss.css | 2 -- 1 file changed, 2 deletions(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index 51b18ead6..f07ecd393 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1144,7 +1144,6 @@ body#ttrssMain #feedTree { background : #f0f0f0; color : #999; border-color : #f0f0f0; - text-shadow : none; } #feedTree .counterNode { @@ -1164,7 +1163,6 @@ body#ttrssMain #feedTree { margin-top : 3px; min-width : 23px; height : 14px; - text-shadow : 1px 1px rgba(0,0,0,0.2); } #feedTree .dijitTreeRow { -- cgit v1.2.3-54-g00ecf From 87065739cdc569bbcfe92ad6f0b6ebef3c72f3ec Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 17 Oct 2013 13:38:48 +0400 Subject: add context menu for cdmFeedTitle; change mark as read prompt for grouped headlines more clear --- classes/feeds.php | 18 +++++++------- css/cdm.css | 20 ++++++++++++++++ js/viewfeed.js | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 3 files changed, 98 insertions(+), 11 deletions(-) (limited to 'css') diff --git a/classes/feeds.php b/classes/feeds.php index e26318e7e..7f5fd10af 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -430,12 +430,12 @@ class Feeds extends Handler_Protected { $cur_feed_title = htmlspecialchars($cur_feed_title); - $vf_catchup_link = "(".__('Mark as read').")"; + $vf_catchup_link = "".__('mark feed as read').""; - $reply['content'] .= "
". - "
$feed_icon_img
". - "". - $line["feed_title"]." $vf_catchup_link
"; + $reply['content'] .= "
". + "
$feed_icon_img
". + "". $line["feed_title"]." + $vf_catchup_link
"; } } @@ -443,7 +443,7 @@ class Feeds extends Handler_Protected { $mouseover_attrs = "onmouseover='postMouseIn(event, $id)' onmouseout='postMouseOut($id)'"; - $reply['content'] .= "
"; + $reply['content'] .= "
"; $reply['content'] .= "
"; @@ -524,7 +524,7 @@ class Feeds extends Handler_Protected { $cur_feed_title = htmlspecialchars($cur_feed_title); - $vf_catchup_link = "(".__('mark as read').")"; + $vf_catchup_link = "".__('mark feed as read').""; $has_feed_icon = feed_has_icon($feed_id); @@ -534,7 +534,7 @@ class Feeds extends Handler_Protected { //$feed_icon_img = "\"\""; } - $reply['content'] .= "
". + $reply['content'] .= "
". "
$feed_icon_img
". "". $line["feed_title"]." $vf_catchup_link
"; @@ -547,7 +547,7 @@ class Feeds extends Handler_Protected { $expanded_class = $expand_cdm ? "expanded" : "expandable"; $reply['content'] .= "
"; + id=\"RROW-$id\" orig-feed-id='$feed_id' $mouseover_attrs>"; $reply['content'] .= "
"; $reply['content'] .= "
"; diff --git a/css/cdm.css b/css/cdm.css index c91f09927..dd4346e4c 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -341,4 +341,24 @@ div#floatingTitle img.hlScorePic { text-decoration : line-through; } +div.cdmFeedTitle > * { + display : table-cell; + vertical-align : middle; +} + +div.cdmFeedTitle a.title { + width : 100%; +} + +div.cdmFeedTitle a.catchup { + text-align : right; + color : #555; + padding-right : 10px; + font-size : 11px; + white-space : nowrap; +} + +div.cdmFeedTitle a.catchup:hover { + color : #4684ff; +} diff --git a/js/viewfeed.js b/js/viewfeed.js index cb9a3c646..3c02d4626 100644 --- a/js/viewfeed.js +++ b/js/viewfeed.js @@ -961,10 +961,12 @@ function getLoadedArticleIds() { } // mode = all,none,unread,invert,marked,published -function selectArticles(mode) { +function selectArticles(mode, query) { try { - var children = $$("#headlines-frame > div[id*=RROW]"); + if (!query) query = "#headlines-frame > div[id*=RROW]"; + + var children = $$(query); children.each(function(child) { var id = child.id.replace("RROW-", ""); @@ -2107,6 +2109,71 @@ function initHeadlinesMenu() { menu.startup(); + /* vgroup feed title menu */ + + var nodes = $$("#headlines-frame > div[class='cdmFeedTitle']"); + var ids = []; + + nodes.each(function(node) { + ids.push(node.id); + }); + + if (ids.length > 0) { + if (dijit.byId("headlinesFeedTitleMenu")) + dijit.byId("headlinesFeedTitleMenu").destroyRecursive(); + + var menu = new dijit.Menu({ + id: "headlinesFeedTitleMenu", + targetNodeIds: ids, + }); + + var tmph = dojo.connect(menu, '_openMyself', function (event) { + var callerNode = event.target, match = null, tries = 0; + + while (match == null && callerNode && tries <= 3) { + console.log(callerNode.id); + + match = callerNode.id.match("^[A-Z]+[-]([0-9]+)$"); + callerNode = callerNode.parentNode; + ++tries; + + console.log(match[1]); + } + + if (match) this.callerRowId = parseInt(match[1]); + + }); + + menu.addChild(new dijit.MenuItem({ + label: __("Select articles in group"), + onClick: function(event) { + selectArticles("all", + "#headlines-frame > div[id*=RROW]"+ + "[orig-feed-id='"+menu.callerRowId+"']"); + + }})); + + menu.addChild(new dijit.MenuItem({ + label: __("Mark group as read"), + onClick: function(event) { + selectArticles("all", + "#headlines-frame > div[id*=RROW]"+ + "[orig-feed-id='"+menu.callerRowId+"']"); + + catchupSelection(); + }})); + + + menu.addChild(new dijit.MenuItem({ + label: __("Mark feed as read"), + onClick: function(event) { + catchupFeedInGroup(menu.callerRowId); + }})); + + menu.startup(); + + } + } catch (e) { exception_error("initHeadlinesMenu", e); } -- cgit v1.2.3-54-g00ecf From 24432dd5b36ce11bfbba72e59c72ff39612bc1aa Mon Sep 17 00:00:00 2001 From: Veit Lehmann Date: Mon, 21 Oct 2013 04:51:43 +0200 Subject: enclose floating elements in public feeds http://tt-rss.org/forum/viewtopic.php?f=10&t=2670&p=15780#p15780 --- css/utility.css | 1 + 1 file changed, 1 insertion(+) (limited to 'css') diff --git a/css/utility.css b/css/utility.css index b45e9a00f..587061bcc 100644 --- a/css/utility.css +++ b/css/utility.css @@ -15,6 +15,7 @@ form { } div.content { + overflow : hidden; background : white; border : 1px solid #ccc; padding : 10px; -- cgit v1.2.3-54-g00ecf From 8d75f5b193f7a494d7f1dd698105d19db16489fa Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 26 Dec 2013 11:36:07 +0400 Subject: disable content text justification for the time being --- css/cdm.css | 1 - css/tt-rss.css | 2 -- 2 files changed, 3 deletions(-) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index dd4346e4c..70f7f6ad9 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -222,7 +222,6 @@ div.cdm .hlFeed a { div.cdmContentInner p { max-width : 650px; - text-align : justify; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; diff --git a/css/tt-rss.css b/css/tt-rss.css index f07ecd393..559b8f92b 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -994,7 +994,6 @@ span.collapseBtn { div.postContent p { max-width : 650px; - text-align : justify; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; @@ -1050,7 +1049,6 @@ body#ttrssZoom div.postHeader div.postTitle { body#ttrssZoom div.postContent p { max-width : 650px; - text-align : justify; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; -- cgit v1.2.3-54-g00ecf From ef8e54a16dc0888b6db886a132b10617e3f1c5bf Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Sat, 25 Jan 2014 11:28:32 +0400 Subject: increase headline title font sizes a bit --- css/cdm.css | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'css') diff --git a/css/cdm.css b/css/cdm.css index 70f7f6ad9..c6e309d27 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -117,6 +117,7 @@ div.cdm.expandable.active div.cdmHeader span.titleWrap { div.cdm.expandable div.cdmHeader a.title { font-weight : bold; color : #555; + font-size : 14px; -webkit-transition : color 0.2s; transition : color 0.2s; } @@ -127,6 +128,7 @@ div.cdm.expandable.Unread div.cdmHeader a.title { div.cdm.expandable.active div.cdmHeader a.title { color : #4684ff; + font-size : 16px; } div.cdm.expanded div.cdmHeader { @@ -134,7 +136,7 @@ div.cdm.expanded div.cdmHeader { } div.cdm.expanded div.cdmHeader a.title { - font-size : 14px; + font-size : 16px; color : #999; font-weight : bold; -webkit-transition : color 0.2s; @@ -271,7 +273,7 @@ div#floatingTitle span.author { } div#floatingTitle a.title { - font-size : 14px; + font-size : 16px; color : #999; font-weight : bold; -webkit-transition : color 0.2s; -- cgit v1.2.3-54-g00ecf From d44f3da4be8fc11543765b9dcc2743083bfd8be0 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 27 Jan 2014 19:03:35 +0400 Subject: default theme updates --- classes/feeds.php | 2 +- css/cdm.css | 14 +++-- css/tt-rss.css | 138 +++++++++++++++++++++++++++++--------------- images/treeExpandImages.png | Bin 0 -> 288 bytes js/tt-rss.js | 12 +--- 5 files changed, 105 insertions(+), 61 deletions(-) create mode 100644 images/treeExpandImages.png (limited to 'css') diff --git a/classes/feeds.php b/classes/feeds.php index 5fc75cb2f..536f1b793 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -725,7 +725,7 @@ class Feeds extends Handler_Protected { $reply['content'] .= "
"; $reply['content'] .= "
"; - $reply['content'] .= "

"; + $reply['content'] .= "
"; $reply['content'] .= "
"; diff --git a/css/cdm.css b/css/cdm.css index c6e309d27..5b004fccf 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -73,10 +73,16 @@ div.cdm.expanded { margin-bottom : 4px; } +div.cdm.expanded div.cdmFooter { + border-style : solid; + border-width : 0px 0px 1px 0px; + border-color : #f0f0f0; +} + div.cdm.expandable { background-color : #f0f0f0; border-width : 0px 0px 1px 0px; - border-color : #c0c0c0; + border-color : #ddd; border-style : solid; } @@ -98,8 +104,6 @@ div.cdm.expandable.Selected { } div.cdm.expandable.active { - box-shadow : inset 0px 0px 3px 0px rgba(0,0,0,0.1); - border-color : #88b0f0; background : white ! important; } @@ -247,9 +251,9 @@ div#floatingTitle { right : 0px; left : 0px; border-color : #ccc; - border-width : 1px 0px 1px 0px; + border-width : 0px 0px 1px 0px; border-style : solid; - background : #fcfcfc; + background : white; color : #555; box-shadow : 0px 1px 1px 0px rgba(0,0,0,0.1); } diff --git a/css/tt-rss.css b/css/tt-rss.css index 559b8f92b..41f163ccb 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -24,8 +24,8 @@ div.postReply { div.postReply div.postHeader { border-width : 0px 0px 1px 0px; border-style : solid; - border-color : #c0c0c0; - background : #fafafa; + border-color : #eee; + background : white; box-shadow : 0px 0px 3px 0px rgba(0,0,0,0.1); padding : 5px; color : #909090; @@ -66,12 +66,12 @@ div.postReply img.tagsPic { div.articleNote { background-color : #fff7d5; padding : 5px; - border-radius : 4px; + /* border-radius : 4px; */ margin : 5px; border-style : solid; border-color : #e7d796; border-width : 1px; - box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); + /* box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); */ background-color : #fff7d5; color : #9a8c59; } @@ -108,8 +108,7 @@ h3 { hr { border-width : 0px 0px 1px 0px; border-style : solid; - border-color : #c0c0c0; - max-width : 90%; + border-color : #ccc; } a { @@ -138,7 +137,7 @@ a:hover { min-width : 100px; padding : 5px; -width : 200px; - box-shadow : 0px 0px 2px rgba(0,0,0,0.2); + /* box-shadow : 0px 0px 2px rgba(0,0,0,0.2); */ } #notify img { @@ -190,7 +189,7 @@ a:hover { } .hl.active { - box-shadow : inset 0px 0px 3px 0px rgba(0,0,0,0.1); + /* box-shadow : inset 0px 0px 3px 0px rgba(0,0,0,0.1); */ } .hl.active div.hlTitle a { @@ -217,7 +216,7 @@ a:hover { .hl { border-width : 0px 0px 1px 0px; border-style : solid; - border-color : #c0c0c0; + border-color : #eee; } .hl.active { @@ -232,8 +231,8 @@ div.filterTestHolder { margin : 0px 0px 5px 0px; background-color : #ecf4ff; border-width : 1px; - border-radius : 4px; - box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); + /* border-radius : 4px; */ + /* box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); */ } @@ -274,9 +273,9 @@ div.notice, div.warning, div.error { font-size : 12px; border-style : solid; border-color : #ccc; - border-radius : 4px; + /* border-radius : 4px; */ border-width : 1px; - box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); + /* box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); */ } div.notice div.inner, div.warning div.inner, div.error div.inner { @@ -325,9 +324,7 @@ div.prefHelp { } div#headlines-toolbar { - border-width : 0px 0px 1px 0px; - background-color : #fcfcfc; - border-color : #c0c0c0; + border-width : 0px; font-size : 12px; font-family : "Segoe UI", Tahoma, sans-serif; color : #555; @@ -337,6 +334,7 @@ div#headlines-toolbar { height : 25px; line-height : 25px; padding-left : 4px; + background : #fafafa; } div#headlines-toolbar .dijitSelect { @@ -377,7 +375,7 @@ span.hlLabelRef { display : inline-block; vertical-align : middle; white-space: nowrap; - border-radius : 4px; + border-radius : 4px; } div.postHeader div.postDate { @@ -408,7 +406,7 @@ a.hlFeed { font-size : 9px; font-style : italic; font-weight : normal; - border-radius : 4px; + /* border-radius : 4px; */ display : inline-block; padding : 1px 2px 1px 2px; margin-bottom : 2px; @@ -431,8 +429,8 @@ div.tagCloudContainer { margin : 5px 0px 5px 0px; padding : 5px; text-align : center; - border-radius : 4px; - box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); + /* border-radius : 4px; */ + /* box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); */ } div.errorExplained { @@ -440,8 +438,8 @@ div.errorExplained { background-color : #ecf4ff; margin : 5px 0px 5px 0px; padding : 5px; - border-radius : 4px; - box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); + /* border-radius : 4px; */ + /* box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); */ } ul.feedErrorsList { @@ -452,8 +450,8 @@ ul.feedErrorsList { background-color : #ecf4ff; margin : 0px 0px 5px 0px; padding : 5px; - border-radius : 4px; - box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); + /* border-radius : 4px; */ + /* box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); */ } ul.feedErrorsList em { @@ -667,7 +665,7 @@ span.labelColorIndicator { background-color : #fff7d5; color : #063064; text-align : center; - box-shadow : 0px 0px 1px 0px rgba(0,0,0,0.1); + /* box-shadow : 0px 0px 1px 0px rgba(0,0,0,0.1); */ } div#cmdline { @@ -771,7 +769,7 @@ div.fatalError textarea { #content-wrap { padding : 0px; - border-width : 0px 0px 0px 1px; + border-width : 0px 0px 0px 0px; border-style : solid; border-color : #c0c0c0; margin : 0px; @@ -779,13 +777,12 @@ div.fatalError textarea { #feeds-holder { padding : 0px; - border-color : #c0c0c0; - border-left-width : 0px; - border-bottom-width : 0px; - border-top-width : 0px; + border-width : 0px 1px 0px 0px; + border-style : solid; + border-color : #eee; overflow : hidden; + background : #fafafa; box-shadow : inset 0px 0px 3px rgba(0,0,0,0.1); - background : #f9fbff; } #headlines-wrap-inner { @@ -800,7 +797,7 @@ div.fatalError textarea { border-style : solid; border-width : 0px; margin-top : 0px; - box-shadow : inset 0px 0px 3px rgba(0,0,0,0.1); + /* box-shadow : inset 0px 0px 3px rgba(0,0,0,0.1); */ } #headlines-toolbar_splitter, #toolbar_splitter { @@ -813,7 +810,13 @@ div.fatalError textarea { border-width : 0px; white-space: nowrap; font-size : 12px; - box-shadow : 0px 0px 2px rgba(0,0,0,0.1); + /* box-shadow : 0px 0px 2px rgba(0,0,0,0.1); */ +} + +#main-toolbar { + background : white; + border-width : 0px; + padding-left : 0px; } #header { @@ -837,7 +840,7 @@ div.fatalError textarea { #content-insert { padding : 0px; - border-color : #c0c0c0; + border-color : #eee; border-bottom-width : 0px; border-right-width : 0px; border-left-width : 0px; @@ -937,6 +940,7 @@ img.feedIcon, img.tinyFeedIcon { color : #555; } + ul#filterDlg_Matches, ul#filterDlg_Actions { max-height : 100px; overflow : auto; @@ -947,7 +951,7 @@ ul#filterDlg_Matches, ul#filterDlg_Actions { background-color : #ecf4ff; margin : 0px 0px 5px 0px; padding : 0px; - box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); + /* box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); */ } ul#filterDlg_Matches li, ul#filterDlg_Actions li { @@ -967,8 +971,8 @@ ul.helpKbList { background-color : #ecf4ff; margin : 0px 0px 5px 0px; padding : 5px; - border-radius : 4px; - box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); + /* border-radius : 4px; */ + /* box-shadow : inset 0px 0px 2px rgba(0,0,0,0.1); */ } ul.helpKbList span.hksequence { @@ -1057,14 +1061,14 @@ body#ttrssZoom div.postContent p { body#ttrssZoom div.postHeader { margin : 10px; border : 1px solid #ccc; - box-shadow : none; - border-radius : 4px; + /* box-shadow : none; */ + /* border-radius : 4px; */ } body#ttrssZoom div.postReply { border : 1px solid #ccc; - border-radius : 4px; - box-shadow : inset 0px 0px 3px rgba(0,0,0,0.1); + /* border-radius : 4px; + box-shadow : inset 0px 0px 3px rgba(0,0,0,0.1); */ background : white; } @@ -1088,10 +1092,6 @@ select.attachments { max-width : 120px; } -div.hl.active { - border-color : #88b0f0; -} - #selected_prompt { margin-right : 25px; } @@ -1157,7 +1157,7 @@ body#ttrssMain #feedTree { float : right; position : relative; line-height : 14px; - margin-right : 4px; + margin-right : 8px; margin-top : 3px; min-width : 23px; height : 14px; @@ -1178,6 +1178,41 @@ body#ttrssPrefs hr { font-size : 13px; } +body#ttrssMain #feedTree .dijitTreeRowSelected { + background : #ecf4ff; + /* box-shadow : inset 0px 0px 3px rgba(0,0,0,0.1); */ +} + +body#ttrssMain #feedTree .dijitTreeRowHover { + background : white; +} + +body#ttrssMain #feedTree .dijitTreeRowActive { + background-color : transparent; + background-image : none; + border-color : transparent; +} + +/* body#ttrssMain .dijitTreeRowHover, +body#ttrssPrefs .dijitTreeRowHover, +body#ttrssMain .dijitTreeRowActive, +body#ttrssPrefs .dijitTreeRowActive { + background-color : transparent; + background-image : none; + border-color : transparent; +} */ + +body#ttrssMain .dijitTreeRowSelected .dijitTreeLabel, +body#ttrssPrefs .dijitTreeRowSelected .dijitTreeLabel { + color : #4684ff; + font-weight : bold; +} + +body#ttrssMain .dijitTreeRowHover .dijitTreeLabel, +body#ttrssPrefs .dijitTreeRowHover .dijitTreeLabel { + color : #4684ff; +} + .dijitTreeRowSelected .dijitTreeLabel { text-shadow : 1px 1px 2px #fff; } @@ -1192,7 +1227,18 @@ span.highlight { color : #cc90cc; } +#feedTree .dijitTreeRow .dijitTreeExpando { + background-image: url("../images/treeExpandImages.png"); + position : relative; + top : -1px; +} + +#feedTree .dijitTreeRow .dijitTreeExpandoLeaf { + display : none; +} + div.enclosure_title { } + diff --git a/images/treeExpandImages.png b/images/treeExpandImages.png new file mode 100644 index 000000000..c92171ba5 Binary files /dev/null and b/images/treeExpandImages.png differ diff --git a/js/tt-rss.js b/js/tt-rss.js index 04aec0cca..97a70b434 100644 --- a/js/tt-rss.js +++ b/js/tt-rss.js @@ -550,9 +550,6 @@ function init_second_stage() { updateFeedList(); closeArticlePanel(); - _widescreen_mode = getInitParam("widescreen"); - switchPanelMode(_widescreen_mode); - if (parseInt(getCookie("ttrss_fh_width")) > 0) { dijit.byId("feeds-holder").domNode.setStyle( {width: getCookie("ttrss_fh_width") + "px" }); @@ -624,6 +621,9 @@ function init_second_stage() { hotkeys[1] = tmp; setInitParam("hotkeys", hotkeys); + _widescreen_mode = getInitParam("widescreen"); + switchPanelMode(_widescreen_mode); + console.log("second stage ok"); if (getInitParam("simple_update")) { @@ -1064,11 +1064,8 @@ function switchPanelMode(wide) { dijit.byId("content-insert").domNode.setStyle({width: '50%', height: 'auto', - borderLeftWidth: '1px', - borderLeftColor: '#c0c0c0', borderTopWidth: '0px' }); - $("headlines-toolbar").setStyle({ borderBottomWidth: '0px' }); $("headlines-frame").setStyle({ borderBottomWidth: '0px' }); $("headlines-frame").addClassName("wide"); @@ -1078,11 +1075,8 @@ function switchPanelMode(wide) { dijit.byId("content-insert").domNode.setStyle({width: 'auto', height: '50%', - borderLeftWidth: '0px', borderTopWidth: '1px'}); - $("headlines-toolbar").setStyle({ borderBottomWidth: '1px' }); - $("headlines-frame").setStyle({ borderBottomWidth: '1px' }); $("headlines-frame").removeClassName("wide"); -- cgit v1.2.3-54-g00ecf From 93015e27fd21a3b804045a0849298d1b9978a1aa Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 27 Jan 2014 19:05:00 +0400 Subject: default theme update (2) --- css/tt-rss.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index 41f163ccb..60baefc9e 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -1227,13 +1227,13 @@ span.highlight { color : #cc90cc; } -#feedTree .dijitTreeRow .dijitTreeExpando { +body#ttrssMain #feedTree .dijitTreeRow .dijitTreeExpando { background-image: url("../images/treeExpandImages.png"); position : relative; top : -1px; } -#feedTree .dijitTreeRow .dijitTreeExpandoLeaf { +body#ttrssMain #feedTree .dijitTreeRow .dijitTreeExpandoLeaf { display : none; } -- cgit v1.2.3-54-g00ecf From e48c486d24ac2e4a3a85b973466f6d36946d8d04 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 27 Jan 2014 19:37:33 +0400 Subject: remove feeds-holder shadow --- css/tt-rss.css | 1 - 1 file changed, 1 deletion(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index 60baefc9e..c7592e54c 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -782,7 +782,6 @@ div.fatalError textarea { border-color : #eee; overflow : hidden; background : #fafafa; - box-shadow : inset 0px 0px 3px rgba(0,0,0,0.1); } #headlines-wrap-inner { -- cgit v1.2.3-54-g00ecf From d728015d48e3150a9aa39c9db88781adb179182b Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 27 Jan 2014 19:48:16 +0400 Subject: minor css tweaks --- css/tt-rss.css | 12 +++++------- js/tt-rss.js | 2 +- 2 files changed, 6 insertions(+), 8 deletions(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index c7592e54c..722ad44e2 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -334,7 +334,7 @@ div#headlines-toolbar { height : 25px; line-height : 25px; padding-left : 4px; - background : #fafafa; + background : white; } div#headlines-toolbar .dijitSelect { @@ -792,7 +792,7 @@ div.fatalError textarea { #headlines-frame { padding : 0px; - border-color : #c0c0c0; + border-color : #eee; border-style : solid; border-width : 0px; margin-top : 0px; @@ -840,9 +840,7 @@ div.fatalError textarea { #content-insert { padding : 0px; border-color : #eee; - border-bottom-width : 0px; - border-right-width : 0px; - border-left-width : 0px; + border-width : 0px; line-height: 20px; overflow : auto; } @@ -1178,12 +1176,12 @@ body#ttrssPrefs hr { } body#ttrssMain #feedTree .dijitTreeRowSelected { - background : #ecf4ff; + background : white; /* box-shadow : inset 0px 0px 3px rgba(0,0,0,0.1); */ } body#ttrssMain #feedTree .dijitTreeRowHover { - background : white; + background : #ecf4ff; } body#ttrssMain #feedTree .dijitTreeRowActive { diff --git a/js/tt-rss.js b/js/tt-rss.js index 97a70b434..bb23169ec 100644 --- a/js/tt-rss.js +++ b/js/tt-rss.js @@ -1075,7 +1075,7 @@ function switchPanelMode(wide) { dijit.byId("content-insert").domNode.setStyle({width: 'auto', height: '50%', - borderTopWidth: '1px'}); + borderTopWidth: '0px'}); $("headlines-frame").setStyle({ borderBottomWidth: '1px' }); $("headlines-frame").removeClassName("wide"); -- cgit v1.2.3-54-g00ecf From a3c6695a8539c34fc1e29bd5083f4186134cc7ec Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 27 Jan 2014 19:51:31 +0400 Subject: minor css tweaks --- css/tt-rss.css | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index 722ad44e2..96e9fb00d 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -22,13 +22,11 @@ div.postReply { } div.postReply div.postHeader { - border-width : 0px 0px 1px 0px; - border-style : solid; - border-color : #eee; background : white; - box-shadow : 0px 0px 3px 0px rgba(0,0,0,0.1); + box-shadow : 0px 1px 1px 0px rgba(0,0,0,0.1); padding : 5px; color : #909090; + background : #fafafa; } div.postReply div.postTitle { -- cgit v1.2.3-54-g00ecf From 1bffd1068faee6c33ea86dcec188679d5f1ea4c8 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 27 Jan 2014 22:03:42 +0400 Subject: unify main and headlines toolbar --- classes/feeds.php | 31 ++++++++++++++---------- css/cdm.css | 2 +- css/tt-rss.css | 71 +++++++++++++++++++++---------------------------------- index.php | 7 +++--- js/viewfeed.js | 8 +++++-- 5 files changed, 57 insertions(+), 62 deletions(-) (limited to 'css') diff --git a/classes/feeds.php b/classes/feeds.php index 536f1b793..c0f5bcf93 100644 --- a/classes/feeds.php +++ b/classes/feeds.php @@ -43,6 +43,8 @@ class Feeds extends Handler_Protected { $search_q = ""; } + $reply .= ""; + $rss_link = htmlspecialchars(get_self_url_prefix() . "/public.php?op=rss&id=$feed_id$cat_q$search_q"); @@ -50,10 +52,18 @@ class Feeds extends Handler_Protected { $error_class = $error ? "error" : ""; - $reply .= ""; - $reply .= ""; + $reply .= " + + "; + + +# $reply .= ""; $reply .= ""; + $reply .= ""; + if ($feed_site_url) { $last_updated = T_sprintf("Last updated: %s", $feed_last_updated); @@ -72,18 +82,15 @@ class Feeds extends Handler_Protected { } $reply .= ""; + $reply .= ""; - $reply .= " - - "; - - $reply .= ""; +# $reply .= ""; // left part - $reply .= __('Select:')." + $reply .= ""; + + $reply .= " ".__('All').", ".__('Unread').", ".__('Invert').", @@ -132,14 +139,14 @@ class Feeds extends Handler_Protected { $reply .= ""; - //$reply .= "
"; - //$reply .= "get_hooks(PluginHost::HOOK_HEADLINE_TOOLBAR_BUTTON) as $p) { echo $p->hook_headline_toolbar_button($feed_id, $is_cat); } + $reply .= ""; + return $reply; } diff --git a/css/cdm.css b/css/cdm.css index 5b004fccf..ef3ef52d6 100644 --- a/css/cdm.css +++ b/css/cdm.css @@ -247,7 +247,7 @@ div.cdmHeader span.author { div#floatingTitle { position : absolute; z-index : 5; - top : 25px; + top : 0px; right : 0px; left : 0px; border-color : #ccc; diff --git a/css/tt-rss.css b/css/tt-rss.css index 96e9fb00d..ee921716a 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -203,14 +203,6 @@ a:hover { color : #909090; } -/* #headlines-frame div.hl:nth-child(even) { - background : #fafafa; -} */ - -#headlines-frame.normal { - -} - .hl { border-width : 0px 0px 1px 0px; border-style : solid; @@ -321,39 +313,44 @@ div.prefHelp { color : #555; } -div#headlines-toolbar { - border-width : 0px; - font-size : 12px; +#main-toolbar > * { + white-space : nowrap; + display : table-cell; + color : #999; font-family : "Segoe UI", Tahoma, sans-serif; - color : #555; - padding : 0px; - margin : 0px; - overflow : hidden; - height : 25px; - line-height : 25px; - padding-left : 4px; - background : white; } -div#headlines-toolbar .dijitSelect { - font-size : 11px; - position : relative; - top : -2px; +#main-toolbar #headlines-toolbar { + padding-right : 4px; + width : 100%; +} + +#main-toolbar #headlines-toolbar span.holder { + display : table; + width : 100%; } -div#headlines-toolbar span.r { - float: right; - position: relative; - padding : 0 4px 0px 4px; +#main-toolbar #headlines-toolbar span.holder > * { + display : table-cell; +} + +#main-toolbar #headlines-toolbar .main { text-align : right; -} +} + +#headlines-toolbar span.r img { + margin-right : 4px; + position : relative; + top : 3px; +} #headlines-toolbar span.r .error a { color : red; } -div#headlines-toolbar span.r a { - color : #555; +#main-toolbar #selected_prompt { + font-style : italic; + text-align : center; } span.contentPreview { @@ -524,14 +521,6 @@ form { padding : 0px; } -#main_toolbar_form { - margin : 0px; - padding : 0px; - display : table-cell; - white-space : nowrap; - width : 100%; -} - div.loadingPrompt { padding : 1em; text-align : center; @@ -551,12 +540,6 @@ div.whiteBox { margin: 0; } */ -#toolbar div.actionChooser { - display : table-cell; - text-align : right; - padding-right : 3px; -} - div.autocomplete { position : absolute; width : 250px; diff --git a/index.php b/index.php index d0369e808..303eacda0 100644 --- a/index.php +++ b/index.php @@ -153,6 +153,10 @@
+
+ +
+
-
"; diff --git a/css/dijit.css b/css/dijit.css index bd51929a7..eb4f767db 100644 --- a/css/dijit.css +++ b/css/dijit.css @@ -346,6 +346,10 @@ button[disabled], line-height : 20px; } +.claro .dijitButton.small .dijitButtonText { + font-size : 11px; +} + .claro .dijitMenu { border-color : #ccc; } -- cgit v1.2.3-54-g00ecf From d9c93ebfdb860878609c6a59ef4df99f8f93643f Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Sun, 2 Nov 2014 20:58:46 +0300 Subject: tweak notifications; use css animations for notifications --- css/tt-rss.css | 30 +++++++++++++++++++++--------- index.php | 2 +- js/functions.js | 28 +++++++++++----------------- prefs.php | 2 +- 4 files changed, 34 insertions(+), 28 deletions(-) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index d732c13ba..d5737989a 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -138,18 +138,30 @@ a:hover { position : absolute; } +#notify.visible { + transform: translate(0, -35px); + -webkit-transform: translate(0, -35px); + -o-transform: translate(0, -35px); + -moz-transform: translate(0, -35px); + + transition: all 0.5s ease-in-out; + -webkit-transition: all 0.5s ease-in-out; + -moz-transition: all 0.5s ease-in-out; + -o-transition: all 0.5s ease-in-out; +} + #notify { - bottom : 10px; - right : 20px; - border-width : 1px; + bottom : -35px; + right : 0px; + height : 20px; + left : 0px; + border-width : 1px 0px 0px 0px; border-style : solid; position : absolute; font-size : 12px; z-index : 99; - max-width : 200px; - min-width : 100px; padding : 5px; - -width : 200px; + box-shadow : 0px -2px 2px rgba(0,0,0,0.1); } #notify img { @@ -176,17 +188,17 @@ a:hover { background-color : #fff7d5; } -.notify.progress { +.notify.notify_progress { border-color : #d7c47a; background-color : #fff7d5; } -.notify.info { +.notify.notify_info { border-color : #88b0f0; background-color : #ecf4ff; } -.notify.error { +.notify.notify_error { background-color : #ffcccc; border-color : #ff0000; } diff --git a/index.php b/index.php index 79d4ad58d..74498b8f4 100644 --- a/index.php +++ b/index.php @@ -138,7 +138,7 @@
- +
diff --git a/js/functions.js b/js/functions.js index 9915e6808..720a5654a 100644 --- a/js/functions.js +++ b/js/functions.js @@ -182,11 +182,6 @@ function param_unescape(arg) { return unescape(arg); } - -function hide_notify() { - Element.hide('notify'); -} - function notify_real(msg, no_hide, n_type) { var n = $("notify"); @@ -198,13 +193,11 @@ function notify_real(msg, no_hide, n_type) { } if (msg == "") { - if (Element.visible(n)) { - notify_hide_timerid = window.setTimeout("hide_notify()", 0); + if (n.hasClassName("visible")) { + notify_hide_timerid = window.setTimeout(function() { + n.removeClassName("visible") }, 0); } return; - } else { - Element.show(n); - new Effect.Highlight(n); } /* types: @@ -218,18 +211,18 @@ function notify_real(msg, no_hide, n_type) { msg = " " + __(msg) + ""; - if (n_type == 1) { - n.className = "notify"; - } else if (n_type == 2) { - n.className = "notify progress"; + if (n_type == 2) { + n.className = "notify notify_progress visible"; msg = "" + msg; no_hide = true; } else if (n_type == 3) { - n.className = "notify error"; + n.className = "notify notify_error visible"; msg = "" + msg; } else if (n_type == 4) { - n.className = "notify info"; + n.className = "notify notify_info visible"; msg = "" + msg; + } else { + n.className = "notify visible"; } msg += " - +
-- cgit v1.2.3-54-g00ecf From 2f43089de1ead3f164b8b31967d1abbb784319fa Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 3 Nov 2014 10:54:54 +0300 Subject: body: disable overflow --- css/tt-rss.css | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'css') diff --git a/css/tt-rss.css b/css/tt-rss.css index d5737989a..8d692cfa5 100644 --- a/css/tt-rss.css +++ b/css/tt-rss.css @@ -7,6 +7,10 @@ body#ttrssMain, body#ttrssPrefs, body#ttrssLogin, body { font-size: 14px; } +body#ttrssMain { + overflow : hidden; +} + div.postReply { padding : 0px; } -- cgit v1.2.3-54-g00ecf