Bug 246749 - Smooth Scrolling support
Summary: Smooth Scrolling support
Status: RESOLVED FIXED
Alias: None
Product: kwebkitpart
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: unspecified
Platform: Arch Linux Linux
: NOR wishlist
Target Milestone: ---
Assignee: webkit-devel
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-08-05 00:55 UTC by george panta
Modified: 2012-10-06 22:07 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description george panta 2010-08-05 00:55:45 UTC
Version:           unspecified (using KDE 4.4.95) 
OS:                Linux

I know smooth scrolling support is on the TODO list for kwebkitpart.

It seems that rekonq has a smooth scrolling implementation based on konq/khtml smooth scrolling.

Here is a link to the source on gitorious: 

http://gitorious.org/~yoann21/rekonq/yoann21-clone

Thought it could be helpful.

Reproducible: Didn't try
Comment 1 Emil Sedgh 2012-03-24 10:24:41 UTC
KWebkitpart in master supports this feature. Pressing shift+up/down starts smoth scrolling.

There's only a one minor annoyance:
When page is being scrolled automatically, pressing up/down should 'only' cancel the automatic scrolling. Currently, they cancel the automatic scrolling AND jump a bit up/down.

For example, Im reading a webpage using smooth scrolling. At some point I want it to stop (for example im falling behind). It stops the automatic scrolling, but also scrolls a bit due to up/down keypress: I lose the track.
Comment 2 Dawit Alemayehu 2012-03-26 07:39:51 UTC
Git commit fce833d98a643eea0174af2222ffb413b2ed33d5 by Dawit Alemayehu.
Committed on 26/03/2012 at 09:36.
Pushed by adawit into branch 'master'.

Do not jump when the up/down arrow key is pressed while automatic
scrolling is active.

M  +5    -3    src/webview.cpp

http://commits.kde.org/kwebkitpart/fce833d98a643eea0174af2222ffb413b2ed33d5
Comment 3 Emil Sedgh 2012-03-26 08:02:59 UTC
I just updated my kwebkitpart and its working flawlessly. Thanks Dawit.
Comment 4 george panta 2012-04-01 13:27:09 UTC
Hello, I have reopened this bug since it is not the same feature that is Requested in the Bug Report. Kudos for fixing that however :)

What Emil Sedgh is describing is Automatic Scrolling.

This Bug Report is about Smooth Scrolling. This is a feature of KHTML. To understand what I mean do the following:

Open a Site with Konqueror/KHTML and scroll with the mouse wheel.
Then enable the following combobox:
Settings -> Configure Konqueror... -> Web Browsing Category -> Appearance -> Smooth Scrolling -> Set to "Always".

Try scrolling with the mouse wheel again to see smooth scrolling in action.
Comment 5 Allan Sandfeld 2012-04-01 13:42:49 UTC
There are two different mechanics called smooth scroll. One is animated single-step scrolling. The other is animated continuous scrolling also called panning.

It should be noted both features are available on WebCore level, and can be activated by custom builds of webkit.
Comment 6 Emil Sedgh 2012-04-04 18:49:55 UTC
George is right. I confused this request with automatic scrolling.
Automatic scrolling works well now. But smooth scrolling is indeed missing.

Please note that Rekonq supports smooth scrolling. (And that's why I always felt webkit-part is a bit jerkier than it)

Btw, konqueror has become really solid (again?). Thanks for all the work, Dawit.
Comment 7 Allan Sandfeld 2012-08-22 14:07:26 UTC
I just committed a patch to webkit-trunk that exposes the webcore smooth-scrolling setting through QWebSettings. I will try to get it into the QtWebKit 2.3 branch, and then it should be easy to access for the kdewebkit.
Comment 8 Dawit Alemayehu 2012-08-22 21:05:06 UTC
(In reply to comment #7)
> I just committed a patch to webkit-trunk that exposes the webcore
> smooth-scrolling setting through QWebSettings. I will try to get it into the
> QtWebKit 2.3 branch, and then it should be easy to access for the kdewebkit.

Great. I can cross this off my TODO list. Thanks Allan.
Comment 9 Allan Sandfeld 2012-10-06 16:39:04 UTC
I pushed a commit today that means that if kwebkitpart is build using  QtWebKit2.3, see https://gitorious.org/+qtwebkit-developers/webkit/qtwebkit-23 . It will enable the animated scrolling feature. 

Note, you may need to reload the page if when going from disabled to enabled. Also It doesn't animate the scroll as responsive as in KHTML (but more like the slow smooth animations of Chromium), but I am still looking for the best way to configure the scrolling animation inside WebKit (and get it accepted), so we can also get better responsive animations later.
Comment 10 Dawit Alemayehu 2012-10-06 21:42:53 UTC
(In reply to comment #9)
> I pushed a commit today that means that if kwebkitpart is build using 
> QtWebKit2.3, see
> https://gitorious.org/+qtwebkit-developers/webkit/qtwebkit-23 . It will
> enable the animated scrolling feature. 
> 
> Note, you may need to reload the page if when going from disabled to
> enabled. Also It doesn't animate the scroll as responsive as in KHTML (but
> more like the slow smooth animations of Chromium), but I am still looking
> for the best way to configure the scrolling animation inside WebKit (and get
> it accepted), so we can also get better responsive animations later.

So the smooth scrolling is permanently on, right ? If that is the case, then this introduces another bug for us where people will surely complain they are not able to turn it off, especially if scrolling is not longer as responsive as it used to be.
Comment 11 Dawit Alemayehu 2012-10-06 22:07:09 UTC
(In reply to comment #10)
> (In reply to comment #9)
> > I pushed a commit today that means that if kwebkitpart is build using 
> > QtWebKit2.3, see
> > https://gitorious.org/+qtwebkit-developers/webkit/qtwebkit-23 . It will
> > enable the animated scrolling feature. 
> > 
> > Note, you may need to reload the page if when going from disabled to
> > enabled. Also It doesn't animate the scroll as responsive as in KHTML (but
> > more like the slow smooth animations of Chromium), but I am still looking
> > for the best way to configure the scrolling animation inside WebKit (and get
> > it accepted), so we can also get better responsive animations later.
> 
> So the smooth scrolling is permanently on, right ? If that is the case, then
> this introduces another bug for us where people will surely complain they
> are not able to turn it off, especially if scrolling is not longer as
> responsive as it used to be.

Never mind. I saw the configurartion option commit. I have updated the Last Commit field for future reference.