Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
a8c98868
Commit
a8c98868
authored
Jan 22, 2009
by
Ulf Jasper
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
newsticker: fixed bug#1569
parent
537ab246
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
102 additions
and
52 deletions
+102
-52
lisp/ChangeLog
lisp/ChangeLog
+11
-0
lisp/net/newst-treeview.el
lisp/net/newst-treeview.el
+91
-52
No files found.
lisp/ChangeLog
View file @
a8c98868
2009-01-19 Ulf Jasper <ulf.jasper@web.de>
* net/newst-treeview.el
(newsticker-treeview-next-new-or-immortal-item): New optional arg
current-item-counts. Move to next feed if necessary. (Bug#1569)
(newsticker-treeview-prev-new-or-immortal-item): Move to previous
feed if necessary. (Bug#1569)
(newsticker-treeview-next-feed)
(newsticker-treeview-prev-feed): New optional arg
stay-in-tree. Don't activate node nil. (Bug#1569)
2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
* term/ns-win.el (ns-show-manual): Fix node name.
...
...
lisp/net/newst-treeview.el
View file @
a8c98868
...
...
@@ -7,7 +7,7 @@
;; URL: http://www.nongnu.org/newsticker
;; Created: 2007
;; Keywords: News, RSS, Atom
;; Time-stamp: "
18. Dezembe
r 200
8
,
11:26:54
(ulf)"
;; Time-stamp: "
22. Janua
r 200
9
,
20:41:31
(ulf)"
;; ======================================================================
...
...
@@ -1313,42 +1313,57 @@ Note: does not update the layout."
(
forward-line
-1
))
(
newsticker-treeview-show-item
))
(
defun
newsticker-treeview-next-new-or-immortal-item
()
"Move to next new or immortal item."
(
defun
newsticker-treeview-next-new-or-immortal-item
(
&optional
current-item-counts
)
"Move to next new or immortal item.
Will move to next feed until an item is found. Will not move if
optional argument CURRENT-ITEM-COUNTS is t and current item is
new or immortal."
(
interactive
)
(
newsticker--treeview-restore-layout
)
(
newsticker--treeview-list-clear-highlight
)
(
catch
'found
(
let
((
index
(
newsticker-treeview-next-item
)))
(
unless
(
catch
'found
(
let
((
move
(
not
current-item-counts
)))
(
while
t
(
save-current-buffer
(
set-buffer
(
newsticker--treeview-list-buffer
))
(
forward-line
1
)
(
when
move
(
forward-line
1
)
(
when
(
eobp
)
(
forward-line
-1
)
(
throw
'found
nil
)))
(
throw
'found
nil
)))
)
(
when
(
memq
(
newsticker--age
(
newsticker--treeview-get-selected-item
))
'
(
new
immortal
))
(
newsticker--treeview-get-selected-item
))
'
(
new
immortal
))
(
newsticker-treeview-show-item
)
(
throw
'found
t
))))))
(
throw
'found
t
))
(
setq
move
t
))))
(
when
(
newsticker-treeview-next-feed
t
)
(
newsticker-treeview-next-new-or-immortal-item
t
))))
(
defun
newsticker-treeview-prev-new-or-immortal-item
()
"Move to previous new or immortal item."
"Move to previous new or immortal item.
Will move to previous feed until an item is found."
(
interactive
)
(
newsticker--treeview-restore-layout
)
(
newsticker--treeview-list-clear-highlight
)
(
catch
'found
(
let
((
index
(
newsticker-treeview-next-item
)))
(
unless
(
catch
'found
(
while
t
(
save-current-buffer
(
set-buffer
(
newsticker--treeview-list-buffer
))
(
forward-line
-1
)
(
when
(
bobp
)
(
throw
'found
nil
)))
(
throw
'found
nil
))
(
forward-line
-1
))
(
when
(
memq
(
newsticker--age
(
newsticker--treeview-get-selected-item
))
'
(
new
immortal
))
(
newsticker--treeview-get-selected-item
))
'
(
new
immortal
))
(
newsticker-treeview-show-item
)
(
throw
'found
t
))))))
(
throw
'found
t
))
(
when
(
bobp
)
(
throw
'found
nil
))))
(
when
(
newsticker-treeview-prev-feed
t
)
(
set-buffer
(
newsticker--treeview-list-buffer
))
(
goto-char
(
point-max
))
(
newsticker-treeview-prev-new-or-immortal-item
))))
(
defun
newsticker--treeview-get-selected-item
()
"Return item that is currently selected in list buffer."
...
...
@@ -1527,37 +1542,61 @@ is activated."
(
node
(
widget-apply-action
node
)))))
(
defun
newsticker-treeview-next-feed
()
"Move to next feed."
(
defun
newsticker-treeview-next-feed
(
&optional
stay-in-tree
)
"Move to next feed.
Optional argument STAY-IN-TREE prevents moving from real feed
tree to virtual feed tree or vice versa.
Return t if a new feed was activated, nil otherwise."
(
interactive
)
(
newsticker--treeview-restore-layout
)
(
let
((
cur
(
newsticker--treeview-get-current-node
)))
;;(message "newsticker-treeview-next-feed from %s"
;; (widget-get cur :tag))
(
let
((
cur
(
newsticker--treeview-get-current-node
))
(
new
nil
))
(
message
"newsticker-treeview-next-feed from %s"
(
widget-get
cur
:tag
))
(
if
cur
(
let
((
new
(
or
(
newsticker--treeview-get-next-sibling
cur
)
(
progn
(
setq
new
(
if
cur
(
or
(
newsticker--treeview-get-next-sibling
cur
)
(
newsticker--treeview-get-next-uncle
cur
)
(
newsticker--treeview-get-other-tree
))))
(
newsticker--treeview-activate-node
new
))
(
newsticker--treeview-activate-node
(
car
(
widget-get
newsticker--treeview-feed-tree
:children
)))))
(
newsticker--treeview-tree-update-highlight
))
(
and
(
not
stay-in-tree
)
(
newsticker--treeview-get-other-tree
)))
(
car
(
widget-get
newsticker--treeview-feed-tree
:children
))))
(
if
new
(
progn
(
newsticker--treeview-activate-node
new
)
(
newsticker--treeview-tree-update-highlight
)
(
not
(
eq
new
cur
)))
nil
))
nil
)))
(
defun
newsticker-treeview-prev-feed
()
"Move to previous feed."
(
defun
newsticker-treeview-prev-feed
(
&optional
stay-in-tree
)
"Move to previous feed.
Optional argument STAY-IN-TREE prevents moving from real feed
tree to virtual feed tree or vice versa.
Return t if a new feed was activated, nil otherwise."
(
interactive
)
(
newsticker--treeview-restore-layout
)
(
let
((
cur
(
newsticker--treeview-get-current-node
)))
(
let
((
cur
(
newsticker--treeview-get-current-node
))
(
new
nil
))
(
message
"newsticker-treeview-prev-feed from %s"
(
widget-get
cur
:tag
))
(
if
cur
(
let
((
new
(
or
(
newsticker--treeview-get-prev-sibling
cur
)
(
progn
(
setq
new
(
if
cur
(
or
(
newsticker--treeview-get-prev-sibling
cur
)
(
newsticker--treeview-get-prev-uncle
cur
)
(
newsticker--treeview-get-other-tree
))))
(
newsticker--treeview-activate-node
new
t
))
(
newsticker--treeview-activate-node
(
car
(
widget-get
newsticker--treeview-feed-tree
:children
))
t
)))
(
newsticker--treeview-tree-update-highlight
))
(
and
(
not
stay-in-tree
)
(
newsticker--treeview-get-other-tree
)))
(
car
(
widget-get
newsticker--treeview-feed-tree
:children
))))
(
if
new
(
progn
(
newsticker--treeview-activate-node
new
t
)
(
newsticker--treeview-tree-update-highlight
)
(
not
(
eq
new
cur
)))
nil
))
nil
)))
(
defun
newsticker-treeview-next-page
()
"Scroll item buffer."
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment