penguinrob
penguinrob

Reputation: 1459

Disable rubber-band scrolling for webview in lion

I have a Cocoa webview, with a web application in it. The web application has a fixed toolbar itself, and with the elastic scrolling, and the toolbar coming below the top, it looks bad. Is there a way to disable the elastic/rubber-band scrolling, or at least keep the toolbar from moving with the rest of the content? I can modify the web app as much as neede.

Upvotes: 7

Views: 5038

Answers (3)

briangonzalez
briangonzalez

Reputation: 1616

I know this comment likely won't be accepted, since there's already an answer.

However, there's an actual method you can call on your NSView (docs here):

[[[webView mainFrame] frameView] setAllowsScrolling:NO]; 

Upvotes: 3

Vervious
Vervious

Reputation: 5569

If you're interested in doing it from the WebView and Cocoa perspective, you can also implement the finish load delegate, grab the scroll view, and disable elasticity:

- (void)webView:(WebView *)sender didFinishLoadForFrame:(WebFrame *)frame {
    NSScrollView *mainScrollView = sender.mainFrame.frameView.documentView.enclosingScrollView;
    [mainScrollView setVerticalScrollElasticity:NSScrollElasticityNone]; 
    [mainScrollView setHorizontalScrollElasticity:NSScrollElasticityNone];
}

Upvotes: 23

kizu
kizu

Reputation: 43234

Maybe this article would help you.

In short: disable overflow on HTML and BODY, add a wrapper with overflow:auto around all the page contents

Upvotes: 5

Related Questions