forked from migueldeicaza/TweetStation
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TODO
296 lines (195 loc) · 7.95 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
Fixing TweetStation
TweetStation has not been maintained in over a year, and many
things are either broken, or have not aged properly. Here is
a list of things that need to be done:
* Fixing Favorites: the old url/mechanism for favorites has
changed, and now we get a 403 Forbidden.
* Update TweetStation to flag the documents in tweets.db to
not be backed up
* Split the databases in configuration settings, and tweets,
so the configuration settings are backed up.
* Store configuration in iCloud, so we can log in once, and
work everywhere, without having to re-authenticate.
* Favorites is not as useful as it once was, take away that
tab item and use it for a control center, like the official
"Me", where we link to profile, private messages, drafts,
lists, saved searches.
* Profile view looks old, perhaps take the Instagram design
for the status of tweets/followers/followed.
* Selection looks aging, when a cell is selected, the color
is too dark.
* Instead of Foo -> Bar for retweets, add to the bottom of
the tweet "Retweeted by XXXX" in gray.
* Add transparency detector, to render icons with a white
background, without the border in those profiles cases.
* Twitter API changes: these days, Twitter blocks third-party
apps from Messages, so we need to authentica twice when using
OAuth, once with our xAuth token, and once with the web-view
based authenticator for messages.
* Add support for follow-ups in conversations
Ideas for Updating TweetStation
Photo icon should be more like Twitter for iPhone,
hides the keyboard, offers options and in the remaining
area shows the current attached pictures, with an option
to remove.
Add support for auto-selecting all but the first nick name
of a tweet.
Collapse saved searches by default.
Make bios clickable, and extract @foo and urls from it
Use Twitter's hint API to use server-delimited hot words
* Password:
On unauthorized show a message
Do not reload the same timeline if this is the same user
* Feedback:
Instapaper support, deal breaker for @dssstrkl
Probably use icons for "Retweet" instead of a label?
Drop shadow on text in the detail view seems off, there is a
white outline surrounding it instead of just the bottom.
* Bugs
On user searches, the icon for the user, for the same user
takes a while to load
Reduce the audio quality, currently it is too slow to load
Settings are not loaded on startup, change all the convoluted
logic on the settings page to be straightforward instead of being
made of double negatives everywhere
Add account a second time does not work with the cheap-o authentication
system. Perhaps we are still logged in with WebKit?
* Must do
Upgrade Sqlite-net, so we can:
Add new column for "retweet-count"
Add column for geo location
Add mechanism to re-authenticate on Net Failure, due to my
two sets of keys.
* Perf
Measure time between will-update and did-update on our main view
Chicken noises should be started on a background thread?
Maybe use shorter noises to make the UI more responsive.
Shrink the audio file, too large, takes too long to load, and
is too big
* Features
On network failures, add fail whale artwork
Group conversations in private messages
Offer to "Load Stored Tweets"
Kill the database, and just keep a circular buffer of the last
n-thousand tweets?
Show Number of times the tweet has been retweeted
Show Geo icon
*iPhone4
Download the large version of the image for the ShortProfile
and show at 146x146 instead of the _bigger version which is only
73x73
Perhaps it is time to abandon the idea of ImageStore tied to the
ID, this optimization makes it hard to support all 3 image formats
and prevents the code from being reusable
Option: what if I keep a list of all ID->PicUrl IDs visible, and
invalidate any cached images as we load new data.
* Probelms:
Add support for using the OAuth + XAauth keys. Currently
installign the product vs installing the final build breaks the
authentication
Missing Features:
Show "Verified" accounts
Show "User has tweets protected"
Report Spam
Show posting lcoation if available
Location is available in the tweet as <places>
But requires an upgrade to the tweets.db
* Usage Observations
Do not show border on detail tweets if we have alpha channel?
needs to save draft
needs to remembrr last position (after phone call, everything is cancelled)
(http://foo) is not highlighted
* Optimizations
TwitterAccount.Download by default will make a copy into a MemoryStream of
the results. This is fine for small downloads, but for larger downloads it
is best to stream directly (for example timeliens), btu then we need to be
careful to decouple the stream reading from UI code.
* Would be nice
Upload images in background, like "POSTs" do.
Compress image in background, without blocking with the HUD display
Add an option to cancel the upload.
* Missing Stuff
Refresh user pictures when they change.
Currently, once we download a pic, we never update it
TweetCell - Main Display
geo info, and pic info?
Replace foo -> bar in retweet with a bottom "Retweeted by"
Turning a search into a saved search
Lists:
Instead of managing lists, be able to "add user to list" in the UI in the profile view.
Delete from list.
Edit, Delete, Info
Special List timeline controller that lets edit
User profile:
Red Color for Blocking users
Merge friends + followers in a single cell to save space?
Showing a map for the user profile
Show if the tweet is protected/user protected
Remember last tab
FullProfileView
Needs an animating element while loading data from the network,
* Some settings that could be added
display name
date format
Font size
Image quality
Image service configurator
Most image uploaders require API keys and disable
commercial use, not worth the hassle
Video service
Read Later
User svcs:
tweet blocker
follow cost
favstar.fm
overlapr
favrd
tweetorites
Manual
Advanced
* Post 1.0:
If the picture has been posted, do not bother trying to post it again
The search API now has a feature that allows the result to show whether
it is a popular tweet; Include this feature ("100+ recent tweets");
Add editing capability to searches to trim down the search list
Nearby tweets on a map
Themed cell renderers
Retweet rendering style
Support Foo -> Bar at top (now)
Support [Retweeted by Foo] at bottom
Direct messages style (grouped by recipient, by time)
Direct Messages special view
Grouped per user, blend conversation together
Cell "themes"
Group user names by letter, and show the letter selector on right
Queue system: would be nice if the delayed POSTs can insert
data back into the main system. Or alternatively make
POST synchronous and only put in queue if it fails?
Showing User Pictures
Needs a custom image loader for user profiles and urls that we detect as pictures
Add support to remove a saved search.
Add support to add a search to the saved searches.
Show attachments, this way we can calculate the actual number
of characters left before we post
Add "Attachment" rendering to support showing various bits of information
pictures, forsquare, amazon links,
* Wanted
ActivityElement to support a message in addition to the activity
* Http Stack
Since all calls to the twitter API are to the same server,
we should have an API that serializes all calls, maybe even
reuses the WebClient instance.
Should support high-priority vs low-priority requests. Some
operations like trend fetching do not have to be a top
priority.
* Idea: Memory management
Modify the TImelineController to reload data on demand,
since CocoaTouch does not really kill leaf instances
of view controllers so we can end up carrying a lot of
data around.
Problem: we can only do this if a child is not currently
visible.
* TweetDetail
Put a border around the image loaded.
* Application
Remember where we are (drilled down on a tweet? or search)