ARC: Update HTMLOutput framework

This commit is contained in:
Allan Odgaard
2012-09-24 20:05:47 +02:00
parent 53bd39b636
commit d178263cca
15 changed files with 159 additions and 215 deletions

View File

@@ -8,26 +8,23 @@ extern NSString* const kCommandRunnerURLScheme; // from HTMLOutput.h
@interface OakHTMLOutputView ()
@property (nonatomic, assign) BOOL runningCommand;
@property (nonatomic, retain) HOAutoScroll* autoScrollHelper;
@end
@implementation OakHTMLOutputView
@synthesize runningCommand;
{
std::map<std::string, std::string> environment;
}
- (id)initWithFrame:(NSRect)frame
{
if(self = [super initWithFrame:frame])
{
autoScrollHelper = [HOAutoScroll new];
self.autoScrollHelper = [HOAutoScroll new];
}
return self;
}
- (void)dealloc
{
[autoScrollHelper release];
[super dealloc];
}
- (BOOL)isOpaque
{
return YES;
@@ -44,20 +41,20 @@ extern NSString* const kCommandRunnerURLScheme; // from HTMLOutput.h
- (void)loadRequest:(NSURLRequest*)aRequest autoScrolls:(BOOL)flag
{
autoScrollHelper.webFrame = flag ? webView.mainFrame.frameView : nil;
_autoScrollHelper.webFrame = flag ? self.webView.mainFrame.frameView : nil;
self.runningCommand = [[[aRequest URL] scheme] isEqualToString:kCommandRunnerURLScheme];
[webView.mainFrame loadRequest:aRequest];
[self.webView.mainFrame loadRequest:aRequest];
}
- (void)stopLoading
{
[webView.mainFrame stopLoading];
[self.webView.mainFrame stopLoading];
}
- (void)webView:(WebView*)sender didStartProvisionalLoadForFrame:(WebFrame*)frame
{
statusBar.isBusy = YES;
if(NSString* scheme = [[[[[webView mainFrame] provisionalDataSource] request] URL] scheme])
self.statusBar.isBusy = YES;
if(NSString* scheme = [[[[[self.webView mainFrame] provisionalDataSource] request] URL] scheme])
[self setUpdatesProgress:![scheme isEqualToString:kCommandRunnerURLScheme]];
}
@@ -67,11 +64,11 @@ extern NSString* const kCommandRunnerURLScheme; // from HTMLOutput.h
- (void)webView:(WebView*)sender didClearWindowObject:(WebScriptObject*)windowScriptObject forFrame:(WebFrame*)frame
{
NSString* scheme = [[[[[webView mainFrame] dataSource] request] URL] scheme];
NSString* scheme = [[[[[self.webView mainFrame] dataSource] request] URL] scheme];
if([@[ kCommandRunnerURLScheme, @"tm-file", @"file" ] containsObject:scheme])
{
HOJSBridge* bridge = [[HOJSBridge new] autorelease];
[bridge setDelegate:statusBar];
HOJSBridge* bridge = [HOJSBridge new];
[bridge setDelegate:self.statusBar];
[bridge setEnvironment:environment];
[windowScriptObject setValue:bridge forKey:@"TextMate"];
}