Using SHIFT and UP/DOWN or HOME/END correctly extends selection but not with PAGE_UP/PAGE_DOWN. There's no bug, just no implementation. I'm attaching a trivial patch which is basically an adaptation of the code for up/down which is written just before.
Created attachment 22374 [details] Trivial patch changing call to frame->selection()->modify instead of frame->editor()->command A fairly simple patch which is basically a copy of what was written for the handling of up/down. I'm not sure the proper granularity is ParagraphGranularity though.
Based on GEdit's behavior, ParagraphGranularity isn't ok. But considering that Firefox doesn't implement this, it might be ok.
Created attachment 22431 [details] new version with the proper granularity (simpler btw) The granulariy is now correct. The proper thing was already available but I was not aware of its existence. The patch is also simpler. Basically this patch changes "MovePageUp" to kevent->shiftKey() ? "MovePageUpAndModifySelection" : "MovePageUp"
Comment on attachment 22431 [details] new version with the proper granularity (simpler btw) This looks ok, but it needs a changelog, and depending on the state of DRT for the GTK port a regression test as well.
The new lines are indentend with tabs, but you should only use spaces in WebCore. When you address Sam's comments, please fix that as well. Otherwise the patch works as expected from a little testing.
Created attachment 22942 [details] Same as before plus the changelog entry Finally updated the patch with a changelog and spaces (damn default configuration !).
Comment on attachment 22942 [details] Same as before plus the changelog entry I'm assuming that it's impossible to test this with DumpRenderTreeGtk. Looks sane enough.
Looked sane and landed in r35958.