Handling the CTRL+L keyboard shortcut to enter a new location

This commit is contained in:
Pierre Pronchery 2009-03-06 18:27:00 +00:00
parent 99a77b51f8
commit 5f0b1800dc
3 changed files with 18 additions and 2 deletions

View File

@ -82,6 +82,15 @@ void on_file_open(GtkWidget * widget, gpointer data)
}
/* on_file_open_url */
void on_file_open_url(GtkWidget * widget, gpointer data)
{
Surfer * surfer = data;
surfer_open(surfer, NULL);
}
/* edit menu */
/* on_edit_preferences */
void on_edit_preferences(GtkWidget * widget, gpointer data)

View File

@ -29,6 +29,7 @@ gboolean on_closex(GtkWidget * widget, GdkEvent * event, gpointer data);
void on_file_close(GtkWidget * widget, gpointer data);
void on_file_new_window(GtkWidget * widget, gpointer data);
void on_file_open(GtkWidget * widget, gpointer data);
void on_file_open_url(GtkWidget * widget, gpointer data);
/* edit menu */
void on_edit_preferences(GtkWidget * widget, gpointer data);

View File

@ -50,6 +50,7 @@ static struct _menu _menu_file[] =
GDK_N },
{ "_Open...", G_CALLBACK(on_file_open), GTK_STOCK_OPEN,
GDK_O },
{ "_Open URL...", G_CALLBACK(on_file_open_url), NULL, GDK_L },
{ "", NULL, NULL, 0 },
{ "_Close", G_CALLBACK(on_file_close), GTK_STOCK_CLOSE,
GDK_W },
@ -388,8 +389,13 @@ int surfer_error(Surfer * surfer, char const * message, int ret)
/* surfer_open */
void surfer_open(Surfer * surfer, char const * url)
{
ghtml_stop(surfer->view);
ghtml_load_url(surfer->view, url);
if(url != NULL)
{
ghtml_stop(surfer->view);
ghtml_load_url(surfer->view, url);
}
else
gtk_widget_grab_focus(surfer->tb_path);
}