diff options
author | Rob Kendrick <rjek@netsurf-browser.org> | 2006-08-29 00:42:30 +0000 |
---|---|---|
committer | Rob Kendrick <rjek@netsurf-browser.org> | 2006-08-29 00:42:30 +0000 |
commit | 2fa6c3a7adef734caaed3494e9ac47b1eb9abb7a (patch) | |
tree | dfa12717e16497684db1806e39fed3083c1190ca /gtk | |
parent | 66d0d78be17e0314bbd631d28e1e8983c79f9b1a (diff) | |
download | netsurf-2fa6c3a7adef734caaed3494e9ac47b1eb9abb7a.tar.gz netsurf-2fa6c3a7adef734caaed3494e9ac47b1eb9abb7a.tar.bz2 |
Implement user-defined new window placement in nsgtk
svn path=/trunk/netsurf/; revision=2901
Diffstat (limited to 'gtk')
-rw-r--r-- | gtk/gtk_window.c | 36 | ||||
-rw-r--r-- | gtk/res/netsurf.glade | 50 |
2 files changed, 65 insertions, 21 deletions
diff --git a/gtk/gtk_window.c b/gtk/gtk_window.c index f70bac7e4..55c427a95 100644 --- a/gtk/gtk_window.c +++ b/gtk/gtk_window.c @@ -53,6 +53,7 @@ struct gui_window { GtkMenuItem *stop_menu; GtkMenuItem *reload_menu; GtkImage *throbber; + GtkPaned *status_pane; GladeXML *xml; @@ -147,6 +148,7 @@ MENUPROTO(reload); MENUPROTO(zoom_in); MENUPROTO(normal_size); MENUPROTO(zoom_out); +MENUPROTO(save_window_size); /* navigate menu */ MENUPROTO(back); @@ -176,6 +178,7 @@ static struct menu_events menu_events[] = { MENUEVENT(zoom_in), MENUEVENT(normal_size), MENUEVENT(zoom_out), + MENUEVENT(save_window_size), /* navigate menu */ MENUEVENT(back), @@ -595,6 +598,21 @@ MENUHANDLER(zoom_out) return TRUE; } +MENUHANDLER(save_window_size) +{ + struct gui_window *gw = g; + + option_toolbar_status_width = gtk_paned_get_position(gw->status_pane); + gtk_window_get_position(gw->window, &option_window_x, &option_window_y); + gtk_window_get_size(gw->window, &option_window_width, + &option_window_height); + + + options_write(options_file_location); + + return TRUE; +} + MENUHANDLER(stop) { return nsgtk_window_stop_button_clicked(GTK_WIDGET(widget), g); @@ -731,6 +749,21 @@ struct gui_window *gui_create_browser_window(struct browser_window *bw, g->reload_menu = GTK_MENU_ITEM(GET_WIDGET("reload")); g->throbber = GTK_IMAGE(GET_WIDGET("throbber")); g->viewport = GTK_VIEWPORT(GET_WIDGET("viewport1")); + g->status_pane = GTK_PANED(GET_WIDGET("hpaned1")); + + /* set this window's size and position to what's in the options, or + * or some sensible default if they're not set yet. + */ + if (option_window_width > 0) { + gtk_window_move(g->window, option_window_x, option_window_y); + gtk_window_resize(g->window, option_window_width, + option_window_height); + } else { + gtk_window_set_default_size(g->window, 600, 600); + } + + /* set the size of the hpane with status bar and h scrollbar */ + gtk_paned_set_position(g->status_pane, option_toolbar_status_width); /* connect our scrollbars to the viewport */ gtk_viewport_set_hadjustment(g->viewport, @@ -744,9 +777,6 @@ struct gui_window *gui_create_browser_window(struct browser_window *bw, */ gtk_tool_item_set_expand(GTK_TOOL_ITEM(GET_WIDGET("toolURLBar")), TRUE); - /* set the initial size of the browser window */ - gtk_window_set_default_size(g->window, 600, 600); - /* set the events we're interested in receiving from the browser's * drawing area. */ diff --git a/gtk/res/netsurf.glade b/gtk/res/netsurf.glade index 839d2350f..90ed9c357 100644 --- a/gtk/res/netsurf.glade +++ b/gtk/res/netsurf.glade @@ -48,7 +48,7 @@ <accelerator key="N" modifiers="GDK_CONTROL_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image382"> + <widget class="GtkImage" id="image449"> <property name="visible">True</property> <property name="stock">gtk-new</property> <property name="icon_size">1</property> @@ -82,7 +82,7 @@ <accelerator key="F" modifiers="GDK_CONTROL_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image383"> + <widget class="GtkImage" id="image450"> <property name="visible">True</property> <property name="stock">gtk-open</property> <property name="icon_size">1</property> @@ -104,7 +104,7 @@ <accelerator key="W" modifiers="GDK_CONTROL_MASK | GDK_SHIFT_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image384"> + <widget class="GtkImage" id="image451"> <property name="visible">True</property> <property name="stock">gtk-close</property> <property name="icon_size">1</property> @@ -133,7 +133,7 @@ <accelerator key="S" modifiers="GDK_CONTROL_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image385"> + <widget class="GtkImage" id="image452"> <property name="visible">True</property> <property name="stock">gtk-save-as</property> <property name="icon_size">1</property> @@ -203,7 +203,7 @@ <property name="use_underline">True</property> <child internal-child="image"> - <widget class="GtkImage" id="image386"> + <widget class="GtkImage" id="image453"> <property name="visible">True</property> <property name="stock">gtk-print-preview</property> <property name="icon_size">1</property> @@ -226,7 +226,7 @@ <accelerator key="P" modifiers="GDK_CONTROL_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image387"> + <widget class="GtkImage" id="image454"> <property name="visible">True</property> <property name="stock">gtk-print</property> <property name="icon_size">1</property> @@ -350,7 +350,7 @@ <property name="use_underline">True</property> <child internal-child="image"> - <widget class="GtkImage" id="image388"> + <widget class="GtkImage" id="image455"> <property name="visible">True</property> <property name="stock">gtk-preferences</property> <property name="icon_size">1</property> @@ -384,7 +384,7 @@ <accelerator key="Escape" modifiers="0" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image389"> + <widget class="GtkImage" id="image456"> <property name="visible">True</property> <property name="stock">gtk-stop</property> <property name="icon_size">1</property> @@ -405,7 +405,7 @@ <accelerator key="F5" modifiers="0" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image390"> + <widget class="GtkImage" id="image457"> <property name="visible">True</property> <property name="stock">gtk-refresh</property> <property name="icon_size">1</property> @@ -433,7 +433,7 @@ <accelerator key="F11" modifiers="0" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image391"> + <widget class="GtkImage" id="image458"> <property name="visible">True</property> <property name="stock">gtk-zoom-in</property> <property name="icon_size">1</property> @@ -455,7 +455,7 @@ <accelerator key="plus" modifiers="GDK_CONTROL_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image392"> + <widget class="GtkImage" id="image459"> <property name="visible">True</property> <property name="stock">gtk-zoom-in</property> <property name="icon_size">1</property> @@ -476,7 +476,7 @@ <accelerator key="0" modifiers="GDK_CONTROL_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image393"> + <widget class="GtkImage" id="image460"> <property name="visible">True</property> <property name="stock">gtk-zoom-100</property> <property name="icon_size">1</property> @@ -497,7 +497,7 @@ <accelerator key="minus" modifiers="GDK_CONTROL_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image394"> + <widget class="GtkImage" id="image461"> <property name="visible">True</property> <property name="stock">gtk-zoom-out</property> <property name="icon_size">1</property> @@ -566,7 +566,7 @@ <property name="sensitive">False</property> <property name="label" translatable="yes">Menu bar</property> <property name="use_underline">True</property> - <property name="active">False</property> + <property name="active">True</property> </widget> </child> @@ -613,6 +613,20 @@ </child> </widget> </child> + + <child> + <widget class="GtkSeparatorMenuItem" id="separator11"> + <property name="visible">True</property> + </widget> + </child> + + <child> + <widget class="GtkMenuItem" id="save_window_size"> + <property name="visible">True</property> + <property name="label" translatable="yes">Save window size</property> + <property name="use_underline">True</property> + </widget> + </child> </widget> </child> </widget> @@ -635,7 +649,7 @@ <accelerator key="Left" modifiers="GDK_MOD1_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image395"> + <widget class="GtkImage" id="image462"> <property name="visible">True</property> <property name="stock">gtk-go-back</property> <property name="icon_size">1</property> @@ -656,7 +670,7 @@ <accelerator key="Right" modifiers="GDK_MOD1_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image396"> + <widget class="GtkImage" id="image463"> <property name="visible">True</property> <property name="stock">gtk-go-forward</property> <property name="icon_size">1</property> @@ -677,7 +691,7 @@ <accelerator key="Home" modifiers="GDK_MOD1_MASK" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image397"> + <widget class="GtkImage" id="image464"> <property name="visible">True</property> <property name="stock">gtk-home</property> <property name="icon_size">1</property> @@ -766,7 +780,7 @@ <accelerator key="F1" modifiers="0" signal="activate"/> <child internal-child="image"> - <widget class="GtkImage" id="image398"> + <widget class="GtkImage" id="image465"> <property name="visible">True</property> <property name="stock">gtk-help</property> <property name="icon_size">1</property> |