def Key::delete
feed_win = NcursesInterface::get_win_id('feed')
item_win = NcursesInterface::get_win_id('item')
desc_win = NcursesInterface::get_win_id('desc')
if $a_win == feed_win and $config['feeds'].size > 0
resp = NcursesInterface::get_input('confirm_delete') if $config['confirm_delete']
if $config['confirm_delete'] and resp =~ /^y/i
win = $wins[feed_win]
$config['feeds'].delete(win.active_item)
win.delete_item
if $config['feeds'].size == 0
$wins[item_win].items.clear; $wins[item_win].draw_items
$wins[desc_win].items.clear; $wins[desc_win].draw_items
return
end
else
NcursesInterface::set_status('')
return
end
elsif $a_win == item_win and
$wins[item_win].items.size > 0
win = $wins[item_win]
selected = win.items[win.active_item]['item']
$config['feeds'].get($a_feed)['items'][selected]['visible'] = false
NcursesInterface::populate_item_win($a_feed)
NcursesInterface::populate_feed_win
else
return 1
end
win.active_item = (win.active_item > 0) ? win.active_item - 1 : 0
win.draw_items
win.select_win_item
win.activate(win.active_item)
end