$OpenBSD: patch-gtk_c,v 1.6 2019/07/04 15:58:53 landry Exp $
Add 'online help' menu entry to open help in browser
Index: gtk.c
--- gtk.c.orig
+++ gtk.c
@@ -2383,6 +2383,13 @@ static void menu_config_event(GtkMenuItem *menuitem, g
     midend_redraw(fe->me);
 }
 
+static void menu_help_event(GtkMenuItem *menuitem, gpointer data)
+{
+    gchar *cmd = g_strconcat("xdg-open http://www.chiark.greenend.org.uk/~sgtatham/puzzles/doc/" ,thegame.htmlhelp_topic, ".html" , NULL);
+    g_spawn_command_line_async(cmd, NULL);
+    g_free(cmd);
+}
+
 static void menu_about_event(GtkMenuItem *menuitem, gpointer data)
 {
     frontend *fe = (frontend *)data;
@@ -2751,6 +2758,12 @@ static frontend *new_window(
                      G_CALLBACK(menu_about_event), fe);
     gtk_widget_show(menuitem);
 
+    menuitem = gtk_menu_item_new_with_label("Online Help");
+    gtk_container_add(GTK_CONTAINER(menu), menuitem);
+    g_signal_connect(G_OBJECT(menuitem), "activate",
+		       G_CALLBACK(menu_help_event), fe);
+    gtk_widget_show(menuitem);
+
 #ifdef STYLUS_BASED
     menuitem=gtk_button_new_with_mnemonic("_Redo");
     g_object_set_data(G_OBJECT(menuitem), "user-data",
@@ -2937,7 +2950,7 @@ static void list_presets_from_menu(struct preset_menu 
 int main(int argc, char **argv)
 {
     char *pname = argv[0];
-    char *error;
+    char *error = "";
     int ngenerate = 0, px = 1, py = 1;
     bool print = false;
     bool time_generation = false, test_solve = false, list_presets = false;
