Skip to content

Instantly share code, notes, and snippets.

@moyashi
Created June 21, 2010 05:05
Show Gist options
  • Save moyashi/446419 to your computer and use it in GitHub Desktop.
Save moyashi/446419 to your computer and use it in GitHub Desktop.
#!/usr/bin/cycript -p TweetParakeet
var postViewDidAppear = TPPostViewController.messages['postViewDidAppear'];
TPPostViewController.messages['postViewDidAppear'] = function () {
postViewDidAppear.call(this);
var defaults = [NSUserDefaults standardUserDefaults];
var draft = [defaults stringForKey:@"Draft"];
if (draft && draft != "") {
if (![defaults boolForKey:@"PostStatusDidFinish"]) {
[[[[UIApp.delegate _splitViewController] _detailViewController]
_postViewController] insertTextToViewText:draft];
}
[defaults setObject:NO forKey:@"PostStatusDidFinish"];
[defaults synchronize];
}
return;
}
var postViewHideAnimationDidStop = TPDetailViewController.messages['_postViewHideAnimationDidStop:finished:context:'];
TPDetailViewController.messages['_postViewHideAnimationDidStop:finished:context:'] = function(arg1, arg2, arg3) {
var modified = [[[[UIApp.delegate _splitViewController] _detailViewController] _postViewController] isTextModified];
if (modified) {
var defaults = [NSUserDefaults standardUserDefaults];
var draft = [[[[[[UIApp.delegate _splitViewController] _detailViewController]
_postViewController] _postView] postTextView] text];
[defaults setObject:draft forKey:@"Draft"];
[defaults synchronize];
}
postViewHideAnimationDidStop.call(this, arg1, arg2, arg3);
return;
}
var postStatusDidFinish = TPDetailViewController.messages['_postStatusDidFinish:'];
TPDetailViewController.messages['_postStatusDidFinish:'] = function(arg1) {
var defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:YES forKey:@"PostStatusDidFinish"];
[defaults synchronize];
postStatusDidFinish.call(this, arg1);
return;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment