Питон webbrowser
модуль представляет собой кросс-платформенный способ открытия окна браузера. Я не знаю о подобном кросс-платформенном модуле для Genie или Vala, поэтому вам придется использовать определенные для платформы команды.
На платформе, основанной на Linux xdg-open
- это команда, открывающая приложение стандартным способом на рабочих столах. Это должно работать на современных версиях Gnome, KDE, XFCE и других.
С GLib 2.40 предпочтительным способом открытия внешней команды в Genie является использование GSubprocess GLib GIO. В Genie это будет что-то вроде:
init
try
var command = new Subprocess(SubprocessFlags.NONE,
"xdg-open",
"http://stackoverflow.com/tags/genie/"
)
command.wait()
except error:Error
print error.message
Это должен быть скомпилирован с пакетом GIO:
valac --pkg gio-2.0 my_xdg_open_example.gs
В приведенном выше примере ждет завершения команды, GSubprocess могут быть использованы асинхронно. Вы также можете легко получить доступ к STDIN, STDOUT и STDERR. См. Subprocess - Valadoc и SubprocessFlags - Valadoc
Это также можно использовать для открытия локальных файлов в веб-браузере до тех пор, пока MIME-тип для этого файла был настроен для открытия в браузере. Файлы HTML должны быть в порядке.
Другой вариант - создать собственный браузер: https://wiki.gnome.org/Projects/Vala/WebKitSample – txasatonga