Features/delayed scroll behaviour

Hi there,

I'm submitting some code changes to improve a scenario where the table is quite large (rows and columns) and user scrolling has become quite slow due to the numerous "data -> cell" updates.

My feeling is that it's due to the program trying to do a content update for every scroll event.
I implemented some changes to only activate the content update after scroll events when the scrolling has stopped for more than x (ms). (120ms for mouse scrolling, 500ms for wheel scrolling)

Please let me know if you find this useful or not.

Regards,

David

PS: sorry, it also contains the code changes of my other pull request. Maybe you could do some cherry-picking if needed, or let me know if you need me to try to rebase this otherwise.