Age | Commit message (Collapse) | Author |
|
also un-escape html-encoded characters in DMs
also distinguish errors in auth commands
|
|
|
|
following
|
|
(turns out remove_item was wrong anyway, i wanted to remove all instances of a string, it only removed the first)
this sneaks in a big change on self-replies, now removes the @ mention of you if you reply to yourself
|
|
|
|
|
|
add tests to ensure muting works roughly as intentioned
|
|
references to UTC date rather than adjusted-to-local-TZ date meant that
calendar mismatch happens when UTC calendar day moves forward, rather
than local TZ calendar day
in reality, this means if you're PST, and it's 4:01pm, all tweet ids
turn into Bare :1235567 form, rather than changing over at midnight.
Additionally, found a similar issue with id presentation for reply ids
|
|
tweet retrieval was brittle, would fail if UTC calendar day != Local
TZ calendar day
display_id tests expose the bug in tweet ids being Bare id rather than
Today id due to timezone mismatch in looking up tweets
|
|
was incorrectly resetting ALL styling after underlining the word "locked", but instead just revert the underline only
|
|
also set current profile to first auth'd account, when starting from a
blank slate.
silence follower changes because it's not sanely displayed yet (and may
never be)
|
|
|
|
also clean up a bunch of TODOs
|
|
|
|
|
|
|
|
if a handle is the same color as the background it becomes invisible
counting ansi string lengths is not supported, so that would be work
|
|
tweets are now recorded with the date they are recieved at
dated id lookup is now supported
tweet ids, where displayed, are displayed in a convenient form:
if the tweet was recieved today, show the today id
if the tweet was recieved on a different day, show the bare id
many instances where display_info was passed for logging information,
the parameter has become unnecessary, so it's gone now
|
|
update todo
|
|
|
|
what a mess... threading this through to any point where printing happens is upsetting. probably should be a global mutable behind accessors.
|
|
also ... include profile command file, which i neglected to include in a prior commit
|
|
welcome message now handled correctly for whichever stream made the
connection
additionally, moved profile-specific operations to TwitterProfile
events, tweets, and DMs don't consider connection because they include a
target indicator which means we don't *need* connection_id at that point
|
|
open issues: something is wrong with loading settings - something gets
replayed from main account to alternate accounts.
auth'ing a new account doesn't set handle, name, etc.
i think most issue are because events aren't recorded with what
connection they came from - welcome event for any account gets replayed
onto curr_profile because we simply don't know which connection the
event was from.
the same will happen for twitter events, but those aren't logged.
|
|
|
|
add connection state tracked per-stream, add explicit TwitterProfile
mapped to names that can be used for accounts. default names are the
handle of the corresponding twitter account.
partition out user Credential to be per TwitterProfile, so fav, reply,
etc, all come from the selected account. Multiplex twitter connections
and message streams across chan (instead of earlier plan, which was to
have one chan per thread)
|
|
also disable rendering of delete events
|
|
this is, hopefully, the start of support for correctly wrapping lines
with ANSI control codes included. additionally, hopefully the start of
supporting coloring @'s in tweets.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
profile corruption was trailing json left by not truncating when profile shrinks in size
|
|
* show interface at startup
* report when stream is connected at startup
|
|
also fix bug where cached user info takes precedence over (possibly
updated) api json user info
|
|
|
|
move DisplayInfo into ... display
flush output, duh
|
|
|
|
|
|
|
|
kind of.
add DisplayInfo struct that eventually can be used for rendering to any
particular interface. I care primarily about rendering to a CLI, so.
to support this: many instances of rendering with println!() are moved
to at least be orchestrated by display::paint, which will eventually
become smart enough to handle a reserved area for state notifications
from the client, and buffer input nicely, ....
more code moved over to use TweetId instead of bare strings
because DisplayInfo is currently a member on TwitterCache, any cases of
writing to DisplayInfo also involve writing to TwitterCache, which means
TwitterCache is mut like... everywhere.
Also, invalid TweetId in IdConversions ends up logging, meaning anything
calling that conversion requires a mut TwitterCache, by the above
paragraph.
|
|
|
|
split included @, meaning no handle started with @, so get_mentions() returned empty vec
|
|
|
|
escape more stuff
avoid possible breakage if we dont have the fav of a retweet
|
|
|