Created
February 23, 2011 14:24
-
-
Save hyagni/840480 to your computer and use it in GitHub Desktop.
This patch makes brief gReader-like.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff -Naur old/content/brief-overlay.xul new/content/brief-overlay.xul | |
--- old/content/brief-overlay.xul 2010-12-19 04:37:16.000000000 +0900 | |
+++ new/content/brief-overlay.xul 2011-02-23 22:38:31.000000000 +0900 | |
@@ -12,21 +12,21 @@ | |
<key id="Brief_open" key="d" modifiers="accel alt" | |
oncommand="Brief.open()"/> | |
- <key id="Brief_selectNextEntry" key="j" | |
- oncommand="Brief.doCommand('selectNextEntry')"/> | |
- <key id="Brief_selectPreviousEntry" key="k" | |
- oncommand="Brief.doCommand('selectPrevEntry')"/> | |
+ <key id="Brief_scrollDown" key="j" | |
+ oncommand="Brief.doCommand('scrollDownByLine')"/> | |
+ <key id="Brief_scrollUp" key="k" | |
+ oncommand="Brief.doCommand('scrollUpByLine')"/> | |
<key id="Brief_skipDown" key="u" | |
oncommand="Brief.doCommand('skipDown')"/> | |
<key id="Brief_skipUp" key="i" | |
oncommand="Brief.doCommand('skipUp')"/> | |
- | |
+ <key id="Brief_selectNextFeed" key="n" | |
+ oncommand="Brief.doCommand('selectNextFeed')"/> | |
+ <key id="Brief_selectPrevFeed" key="p" | |
+ oncommand="Brief.doCommand('selectPrevFeed')"/> | |
+ | |
<key id="Brief_toggleSelectedEntryRead" key="m" | |
oncommand="Brief.doCommand('toggleSelectedEntryRead')"/> | |
- <key id="Brief_markVisibleEntriesRead" key="n" | |
- oncommand="Brief.doCommand('markVisibleEntriesRead')"/> | |
- <key id="Brief_markCurrentViewRead" key="n" modifiers="alt" | |
- oncommand="Brief.doCommand('markViewRead')"/> | |
<key id="Brief_deleteOrRestoreSelectedEntry" key="t" | |
oncommand="Brief.doCommand('deleteOrRestoreSelectedEntry')"/> | |
<key id="Brief_toggleSelectedEntryStarred" key="b" | |
diff -Naur old/content/brief.js new/content/brief.js | |
--- old/content/brief.js 2011-01-19 17:39:48.000000000 +0900 | |
+++ new/content/brief.js 2011-02-23 23:06:24.041695001 +0900 | |
@@ -89,6 +89,31 @@ | |
var Commands = { | |
+ scrollUpByLine: function cmd_scrollUpByLine(){ | |
+ gCurrentView.scrollUpByLine(); | |
+ }, | |
+ scrollDownByLine: function cmd_scrollDownByLine(){ | |
+ gCurrentView.scrollDownByLine(); | |
+ }, | |
+ | |
+ selectNextFeed: function cmd_selectNextFeed() { | |
+ var newEvent = document.createEvent('KeyboardEvent'); | |
+ newEvent.initKeyEvent('keypress', | |
+ true, true, null, | |
+ false, false, false, false, | |
+ KeyEvent.DOM_VK_DOWN, 0); | |
+ FeedList.tree.dispatchEvent(newEvent); | |
+ }, | |
+ | |
+ selectPrevFeed: function cmd_selectPrevFeed() { | |
+ var newEvent = document.createEvent('KeyboardEvent'); | |
+ newEvent.initKeyEvent('keypress', | |
+ true, true, null, | |
+ false, false, false, false, | |
+ KeyEvent.DOM_VK_UP, 0); | |
+ FeedList.tree.dispatchEvent(newEvent); | |
+ }, | |
+ | |
hideSidebar: function cmd_hideSidebar() { | |
getElement('sidebar').hidden = true; | |
getElement('sidebar-splitter').hidden = true; | |
@@ -414,6 +439,7 @@ | |
filterUnread: 'feedview.filterUnread', | |
filterStarred: 'feedview.filterStarred', | |
sortUnreadViewOldestFirst: 'feedview.sortUnreadViewOldestFirst', | |
+ hideReadFeed: 'feedlist.hideReadFeeds', | |
showFavicons: 'showFavicons', | |
homeFolder: 'homeFolder' | |
}, | |
@@ -463,6 +489,10 @@ | |
case 'feedview.showHeadlinesOnly': | |
gCurrentView.toggleHeadlinesView(); | |
break; | |
+ | |
+ case 'feedlist.hideReadFeeds': | |
+ FeedList.rebuild(); | |
+ break; | |
} | |
} | |
diff -Naur old/content/feedlist.js new/content/feedlist.js | |
--- old/content/feedlist.js 2011-01-19 17:39:48.000000000 +0900 | |
+++ new/content/feedlist.js 2011-02-23 23:01:52.785695001 +0900 | |
@@ -448,6 +448,8 @@ | |
else { | |
label = aFeed.title; | |
this.removeProperty(treecell, 'unread'); | |
+ if (PrefCache.hideReadFeed) | |
+ treecell.parentNode.parentNode.setAttribute('hidden',true); | |
} | |
treecell.setAttribute('label', label); | |
diff -Naur old/content/feedview.js new/content/feedview.js | |
--- old/content/feedview.js 2011-02-10 22:43:52.000000000 +0900 | |
+++ new/content/feedview.js 2011-02-23 23:11:44.789695000 +0900 | |
@@ -212,6 +212,9 @@ | |
if (entry) { | |
this.selectedElement.setAttribute('selected', true); | |
+ if (PrefCache.autoMarkRead){ | |
+ Commands.markEntryRead(entry, true); | |
+ } | |
if (aScroll) | |
this.scrollToEntry(entry, true, aScrollSmoothly); | |
@@ -316,6 +319,15 @@ | |
} | |
}, | |
+ scrollUpByLine: function cmd_scrollUpByLine(){ | |
+ var win = this.window; | |
+ win.scrollByLines(-4); | |
+ }, | |
+ scrollDownByLine: function cmd_scrollDownByLine(){ | |
+ var win = this.window; | |
+ win.scrollByLines(4); | |
+ }, | |
+ | |
_scrollSmoothly: function FeedView__scrollSmoothly(aTargetPosition) { | |
if (this._scrolling) | |
return; | |
@@ -381,7 +393,8 @@ | |
}, | |
_autoMarkRead: function FeedView__autoMarkRead() { | |
- if (PrefCache.autoMarkRead && !PrefCache.showHeadlinesOnly && this.query.read !== false) { | |
+ if (PrefCache.autoMarkRead && !PrefCache.showHeadlinesOnly && | |
+ this.query.read !== false && !PrefCache.entrySelectionEnabled) { | |
clearTimeout(this._markVisibleTimeout); | |
this._markVisibleTimeout = async(this.markVisibleEntriesRead, 1000, this); | |
} | |
@@ -644,13 +657,6 @@ | |
if (!this.active) | |
return; | |
- if (this.query.read === false) { | |
- if (aNewState) | |
- this._onEntriesRemoved(aEntryList.IDs, true, true); | |
- else | |
- this._onEntriesAdded(aEntryList.IDs); | |
- } | |
- | |
intersect(this._loadedEntries, aEntryList.IDs).forEach(function(entry) { | |
let entryElement = this.document.getElementById(entry); | |
let markReadButton = entryElement.getElementsByClassName('mark-read')[0]; | |
diff -Naur old/content/options/options.xul new/content/options/options.xul | |
--- old/content/options/options.xul 2010-12-20 23:28:38.000000000 +0900 | |
+++ new/content/options/options.xul 2011-02-23 22:57:35.377694999 +0900 | |
@@ -56,6 +56,9 @@ | |
<preference id="extensions.brief.feedview.autoMarkRead" | |
name="extensions.brief.feedview.autoMarkRead" | |
type="bool"/> | |
+ <preference id="extensions.brief.feedlist.hideReadFeeds" | |
+ name="extensions.brief.feedlist.hideReadFeeds" | |
+ type="bool"/> | |
<preference id="extensions.brief.showStatusbarIcon" | |
name="extensions.brief.showStatusbarIcon" | |
type="bool"/> | |
@@ -115,6 +118,9 @@ | |
label="&enableItemHightlight.label;" | |
accesskey="&enableItemHightlight.accesskey;" | |
preference="extensions.brief.feedview.entrySelectionEnabled"/> | |
+ <checkbox id="hide-read-feeds" | |
+ label="Hide read feeds" | |
+ preference="extensions.brief.feedlist.hideReadFeeds"/> | |
</groupbox> | |
<groupbox> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment