At the moment we can attach a GtkAdjustment to a WebkitWebView which enables us to scroll by modifying our GtkAdjustment. This is a good way if we want to scroll more than one step (currently the GTK-Binding only supports one step scrolling). Unfortunately websites can contain frames and the GtkAdjustment only scrolls the outter WebView. In order scroll the inner frames there should be a way to attach GtkAdjustment to WebFrame, this way we could call webkit_web_view_get_focused_frame () and attach the Adjustment to it.
I think this sounds like a good idea. We probably want "hadjustment" and "vadjustment" properties on WebKitWebFrame like several Gtk widgets do.
The question is who would provide the scrollbar in this use case?
(In reply to comment #2) > The question is who would provide the scrollbar in this use case? The WebKitWebFrame should contain the two GtkAdjustment objects (vertical/horizontal) as properties in my opinion.
(In reply to comment #3) > (In reply to comment #2) > > The question is who would provide the scrollbar in this use case? > > The WebKitWebFrame should contain the two GtkAdjustment objects > (vertical/horizontal) as properties in my opinion. I think you misunderstood. Currently, the main frame scrolling is handled by whatever widget holds the webview; the actual scrollbars are drawn by that widget (say, a GtkScrollWindow). I think what zecke is asking is who would draw the scrollbars if we add adjustment objects to subframes? I don't think WebKitWebFrame is a widget, btw.
I would think it would work the same way it does currently, only that adjustments make it possible to scroll individual frames. And since frames are not widgets WebCore provides the scrollbars. As far as I realize the main use cases are a) being able to read the state, ie. to save scroll positions in a session, and b) to manipulate the scroll position by changing the adjustments. So there's no need to control the scrollbars.
This isn't a good idea. GtkAdjustment works asynchrnoously, but WebCore really expects scrollbars to work synchronously. Inserting GtkAdjustment into WebCore will only cause headaches and crashes. Additionally, this will be impossible with WebKit2. I hope you don't mind that I'm closing this issue. If anyone is interested in working on it, feel free to re-open, but be aware that I'm incredibly opposed to it. :)