gopher.ui: open non-gopher urls using webbrowser vocab.

factor-shell
John Benediktsson 2017-11-19 14:04:45 -08:00
parent 2a2aa7f915
commit da4550348e
1 changed files with 9 additions and 7 deletions

View File

@ -6,7 +6,7 @@ kernel math.vectors models present sequences ui ui.commands ui.gadgets
ui.gadgets.editors ui.gadgets.panes ui.gadgets.scrollers ui.gadgets.editors ui.gadgets.panes ui.gadgets.scrollers
ui.gadgets.status-bar ui.gadgets.toolbar ui.gadgets.tracks ui.gadgets.status-bar ui.gadgets.toolbar ui.gadgets.tracks
ui.gadgets.viewports ui.gestures ui.operations ui.tools.browser ui.gadgets.viewports ui.gestures ui.operations ui.tools.browser
ui.tools.browser.history ui.tools.common urls ; ui.tools.browser.history ui.tools.common urls webbrowser ;
IN: gopher.ui IN: gopher.ui
@ -29,12 +29,14 @@ M: gopher-gadget model-changed
: show-gopher ( url gopher-gadget -- ) : show-gopher ( url gopher-gadget -- )
[ [ >url ] [ f ] if* ] dip [ [ >url ] [ f ] if* ] dip
[ over [ protocol>> "gopher" = ] [ t ] if* [
2dup control-value = [
[ 2drop ] [ nip history>> add-history ] if 2dup control-value =
] [ 2drop ] [ nip history>> add-history ] if
[ set-control-value ] ]
2bi ; [ set-control-value ]
2bi
] [ drop open-url ] if ;
: <url-field> ( gopher-gadget -- field ) : <url-field> ( gopher-gadget -- field )
'[ >url _ show-gopher ] <action-field> '[ >url _ show-gopher ] <action-field>