Skip to content

Unified timeline notes

funkatron edited this page May 14, 2011 · 1 revision

Kind models

  • entries (the displayed model for list)
  • home_entries
  • mentions
  • to_dms
  • from_dms

Initial load

  • first, get 200 from home
    • store in model
  • then, get 80 mentions
    • store in model
  • then, get 20 dms
    • store in model
  • then, get 20 SENT dms
    • store in model
  • filter out dupes
  • DISPLAY only messages up to the last of home timelines
    • >= published time of oldest from home timeline

Load NEWER messages

  • get from home timeline NEWER since_id of current newest home model
  • get from mentions NEWER since_id of current newest mention model
  • get from dms NEWER since_id of current newest dms model
  • get from SENT dms NEWER since_id of current newest SENT dms model
  • filter out dupes
  • DISPLAY anything new at the top of the timeline

Load OLDER messages

  • get from home timeline OLDER max_id of current OLDEST home model
  • get from mentions OLDER max_id of current OLDEST, DISPLAYED mention model
  • get from dms OLDER max_id of current OLDEST, DISPLAYED dms model
  • get from SENT dms OLDER max_id of current OLDEST, DISPLAYED SENT dms model
  • filter out dupes
  • DISPLAY only messages up to the last of home timeline
    • >= published time of oldest from home timeline

Filling holes

  • SCAN entries model to determine average time between messages, and look for significant deviation. This may indicate a hole.
  • insert some kind of UI element into last message before possible hole, like a button that says "FILL THE HOLE"
  • if FILL THE HOLE is tapped, get entries older than it using the Load older messages approach.
  • RESCAN when done