After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 123008 - Provide caret movement/navigation within the GNOME help application
Provide caret movement/navigation within the GNOME help application
Status: RESOLVED FIXED
Product: gtkhtml2
Classification: Deprecated
Component: General
unspecified
Other Solaris
: Normal enhancement
: ---
Assigned To: padraig.obriain
padraig.obriain
AP2
Depends on:
Blocks: 120730
 
 
Reported: 2003-09-23 08:41 UTC by padraig.obriain
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement


Attachments
Interim patch (40.62 KB, patch)
2003-12-16 17:46 UTC, padraig.obriain
none Details | Review
Updated patch (43.05 KB, patch)
2004-01-06 16:58 UTC, padraig.obriain
none Details | Review
Patch actually committed (43.94 KB, patch)
2004-01-08 08:52 UTC, padraig.obriain
none Details | Review
New patch (14.38 KB, patch)
2004-01-12 09:28 UTC, padraig.obriain
none Details | Review

Description padraig.obriain 2003-09-23 08:41:16 UTC
This is done in Mozilla (press F7 to turn it on). Providing this
functionality in the help tool also enables something else very inportant:
the ability to copy text without using the mouse. Mouseless operation of
all functionality is a core accessibiloity requirement.
Comment 1 bill.haneman 2003-11-18 19:17:13 UTC
since this is a feature, can we expedite discussion?

Padraig, can you provide a patch?  It's marked 'AP2' so we aim to fix
by 2.6, which means I guess in the next coupld of weeks before feature
freeze.
Comment 2 padraig.obriain 2003-11-19 09:40:41 UTC
I would welcome a discussion on what is required here. I do not have a
clear view of what is required here and whether it is feasible.
Comment 3 bill.haneman 2003-12-05 13:23:50 UTC
Padraig:

What is required is a (visible) text caret which is toggled on and off
by F7, which thereafter responds to arrow key navigation in the
'usual' way for text widgets.  Also required is some keybinding for
toggling selection on and off (possibly shift-arrow, etc. - ideally
the same as for other text widgets) so that text displayed in yelp can
be selected without the use of the mouse.  The gtkhtml2 widget should,
under these conditions, then emit caret-moved events and
text-selection events. 
Comment 4 padraig.obriain 2003-12-12 17:41:21 UTC
I have started looking at what I can do for this.
Comment 5 padraig.obriain 2003-12-16 17:46:03 UTC
Created attachment 22486 [details] [review]
Interim patch
Comment 6 padraig.obriain 2004-01-06 16:58:16 UTC
Created attachment 23022 [details] [review]
Updated patch
Comment 7 padraig.obriain 2004-01-06 17:02:14 UTC
The updated patch implements the following:

It uses F7 to toggle whether cursor should be visible. It adds support
for Left, Right, Ctrl+Left and Ctrl+Right keybindings to navigate or
select the text in a HtmlView; the text is selected by also using the
Shift key.

I propose to commit this patch before next week's freeze.

Among the things remaining to be donew are:

1) Clicking the mouse should move the cursor to the specified
position.

2) Add more move key bindings. e.g. PageUp, PageDown, Home, End.

3) Add accessibility support.

Comment 8 padraig.obriain 2004-01-08 08:52:42 UTC
Created attachment 23105 [details] [review]
Patch actually committed
Comment 9 padraig.obriain 2004-01-12 09:28:02 UTC
Created attachment 23253 [details] [review]
New patch
Comment 10 padraig.obriain 2004-01-12 09:30:51 UTC
The new patch implements PageUp, PageDown, Home, End, Up and DownArrow
to move the cursor. To complete this aspect, virtual cursor position
needs to be implemented.
Comment 11 padraig.obriain 2004-01-14 17:22:09 UTC
I have completed the implementation of cursor movement.

I have logged bugs #131463 (Implementing FLOWS_FROM and FLOW_TO
relations), 131365 (Emit text-caret-moved signal when cursor moves)
and 131466 (Update cursor position when mouse button is clicked).

I am therefore marking this bug as fixed.
Comment 12 korn 2004-02-23 23:28:52 UTC
Padraig, bug #131365 is "DataSourceSelector crashes if data source
doesn't exist".  Gnopernicus is not reading text in response to caret
movement in yelp (after pressing F7).  Perhaps that bug never got
logged?  I see that at-poke indicates the new caret position when
moved, so I'm not clear where things are going wrong.  Could you
please investigate, and either file a Gnopernicus bug or address the
missing functionality in yelp in a bug?
Comment 13 padraig.obriain 2004-03-11 11:14:48 UTC
Peter,

Is this still a live issue?
Comment 14 korn 2004-03-11 16:01:37 UTC
Kind of.  The fixes in Gnopernicus introduced some nasty side effects
that haven't been fully addressed (or if recent patches do fully
address them, they haven't been thoroughly tested).