* gnoemoe/widgets/gm-app-view.c:
Only store window size when the window isn't maximized (so restoring to original size after maximizing actually works). Set default size when no size has been stored yet (fixes #7)
This commit is contained in:
parent
49e8351958
commit
169f98af57
|
@ -254,11 +254,17 @@ gm_app_view_focus_out_event(GtkWidget *widget, GdkEventFocus *event) {
|
|||
static void
|
||||
gm_app_view_size_allocate(GtkWidget *widget, GtkAllocation *allocation) {
|
||||
GmAppView *view = GM_APP_VIEW(widget);
|
||||
GdkWindowState state = 0;
|
||||
|
||||
gm_options_set_int(gm_app_options(view->priv->application), "width",
|
||||
allocation->width);
|
||||
gm_options_set_int(gm_app_options(view->priv->application), "height",
|
||||
allocation->height);
|
||||
if (GDK_IS_WINDOW(widget->window))
|
||||
state = gdk_window_get_state(widget->window);
|
||||
|
||||
if (!(state & (GDK_WINDOW_STATE_MAXIMIZED | GDK_WINDOW_STATE_ICONIFIED))) {
|
||||
gm_options_set_int(gm_app_options(view->priv->application), "width",
|
||||
allocation->width);
|
||||
gm_options_set_int(gm_app_options(view->priv->application), "height",
|
||||
allocation->height);
|
||||
}
|
||||
|
||||
if (GTK_WIDGET_CLASS(gm_app_view_parent_class)->size_allocate) {
|
||||
GTK_WIDGET_CLASS(gm_app_view_parent_class)->size_allocate(widget,
|
||||
|
@ -709,9 +715,10 @@ gm_app_view_restore_size(GmAppView *view) {
|
|||
height = gm_options_get_int(gm_app_options(view->priv->application),
|
||||
"height");
|
||||
|
||||
if (height > 10 && width > 10) {
|
||||
if (height > 10 && width > 10)
|
||||
gtk_window_set_default_size(GTK_WINDOW(view), width, height);
|
||||
}
|
||||
else
|
||||
gtk_window_set_default_size(GTK_WINDOW(view), 400, 300);
|
||||
|
||||
if (gm_options_get_int(gm_app_options(view->priv->application),
|
||||
"maximized")) {
|
||||
|
|
Reference in New Issue