A native feed list and item list #3
Notifications
Due Date
No due date set.
Blocks
Depends on
#4 A native item pane, with the show notes still rendered as HTML
rays/ipodderx-app
#5 Open settings, admin, the directory and OPML in the page
rays/ipodderx-app
#1 An API client for ipx, and its event stream
rays/ipodderx-app
#2 A native player bar, and the Glass look it sits in
rays/ipodderx-app
Reference: rays/ipodderx-app#3
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The part where native actually beats the page. A real library is ten thousand items and a hundred and thirty-five feeds, and a list view with cell reuse handles that in a way a DOM table does not.
Blocked by #1 for the data and #2 for the material and palette it draws in.
The feed list is the sidebar: places first (Directory, Popular, Currently Listening, All Subscriptions), then feeds with their art, counts and unread badges, and OPML folders as groups. The item list is the table: title, feed, kind, size and date, sortable by any of them, filtered by all, unread, downloaded or pinned, and searchable.
GET /api/entriestakessort,dir,filterandqand pages fifty at a time, so the sorting and searching stay the server's work.Read and pinned are written through the flags route and should be optimistic, the way the page's
readWritesmap is: a list asked for before the write lands answers with the old state, which put the dot back on an item just read.This is the step that decides whether the rest is worth it. If the native list does not feel better than the page at ten thousand rows, stop here and keep the web view.
Done in
01d8bd9.LibraryStoreholds a page and asks for the next — sorting, filtering and searching stay the server's work, and eleven thousand items have no business being in memory to be sorted here. Read and pinned are set locally and sent after, as the page'sreadWritesmap does and for the same reason.FeedListViewis the sidebar: places first, then feeds with art, counts and unread badges, OPML subscriptions as folders.ItemListViewis the table with the filter tabs, sort menu, search and paging by the last row. Swipe to mark read or pin.Tested against the real library — 135 feeds, eleven thousand items — and it scrolls the way a list view does rather than the way a DOM table does. The playback test now drives the native row instead of the page's button. Thirteen pass.
Two things worth recording:
theme.tsdoes. Following the system put a light list in front of a dark page.preferredColorSchemewas not enough inside a hosting controller;overrideUserInterfaceStyleon the controller is, and it carries to the page presented over it.