Opened 6 years ago

Last modified 8 months ago

#2249 new enhancement

handling manual pages with external links within the GUI

Reported by: madi Owned by: grass-dev@…
Priority: normal Milestone: 7.6.2
Component: wxGUI Version: svn-trunk
Keywords: manual Cc:
CPU: All Platform: All

Description

In the manual pages, there are sometimes links to external pages, like wiki. See e.g. v.generalize has:

<a href="http://grasswiki.osgeo.org/wiki/V.generalize_tutorial">v.generalize Tutorial</a>

When the manual page is displayed within the GUI frame of the v.generalize module, and the user clicks on the link "v.generalize Tutorial", the user would expect the wiki page to be displayed in the system browser instead of the GUI. It currently displays in the GUI and it is quite inconvenient because for example images are not visible, and moreover you may want to keep the wiki page open while running the module. My suggestion would be, from the GUI, to call the browser whenever a link in the manual page starts with "http".

Change History (12)

comment:1 Changed 6 years ago by wenzeslaus

I'm not sure what user would expect. But you might be right. External links are special and the HTML rendering capabilities of the used widget are (currently) very limited. Perhaps, external links should be marked similarly to external links in wikis (e.g., with some special picture before or after). This is a topic for a special ticket since implementation is not trivial.

Alternative solution, is to have a button there "Open current page in web browser" (or something shorter). This is what I would use sometimes even for manual pages. This feature can be actually implemented regardless of the external links issue.

comment:2 in reply to:  1 ; Changed 6 years ago by neteler

Replying to wenzeslaus:

I'm not sure what user would expect. But you might be right. External links are special and the HTML rendering capabilities of the used widget are (currently) very limited.

An initial improvement could be as easy as this (if technically possible):

If the link contains "http", open it with an external browser (env var $GRASS_HTML_BROWSER), otherwise open page as currently in the wx-browser.

comment:3 in reply to:  2 Changed 6 years ago by wenzeslaus

Replying to neteler:

Replying to wenzeslaus:

I'm not sure what user would expect. But you might be right. External links are special and the HTML rendering capabilities of the used widget are (currently) very limited.

An initial improvement could be as easy as this (if technically possible):

If the link contains "http", open it with an external browser (env var $GRASS_HTML_BROWSER), otherwise open page as currently in the wx-browser.

As far as I know, we are currently using "system browser" not $GRASS_HTML_BROWSER in wxGUI and I'm not sure what is correct. However, the difference is just few lines.

Here is the solution Open a URL with the default browser from an HtmlWindow? for your suggestion.

They are using Python webbrowser, the alternative is wxLaunchDefaultBrowser.

The button I was talking about might be even more simple, just call the browser with current URL/file.

I would suggest to implement both.

comment:4 Changed 4 years ago by neteler

Milestone: 7.1.07.2.0

Milestone renamed

comment:5 Changed 3 years ago by neteler

Milestone: 7.2.07.2.1

Ticket retargeted after milestone closed

comment:6 Changed 3 years ago by martinl

Milestone: 7.2.17.2.2

comment:7 Changed 2 years ago by martinl

Milestone: 7.2.27.4.0

All enhancement tickets should be assigned to 7.4 milestone.

comment:8 Changed 22 months ago by neteler

Milestone: 7.4.07.4.1

Ticket retargeted after milestone closed

comment:9 Changed 17 months ago by neteler

Milestone: 7.4.17.4.2

comment:10 Changed 14 months ago by martinl

Milestone: 7.4.27.6.0

All enhancement tickets should be assigned to 7.6 milestone.

comment:11 Changed 10 months ago by martinl

Milestone: 7.6.07.6.1

Ticket retargeted after milestone closed

comment:12 Changed 8 months ago by martinl

Milestone: 7.6.17.6.2

Ticket retargeted after milestone closed

Note: See TracTickets for help on using tickets.