Author: kitone
Date: Fri Apr 17 17:59:49 2015
New Revision: 912

URL: http://svn.gna.org/viewcvs/subtitleeditor?rev=912&view=rev
Log:
Fix bug #23486 : Remember window size.

Modified:
    trunk/ChangeLog
    trunk/src/gui/application.cc

Modified: trunk/ChangeLog
URL: 
http://svn.gna.org/viewcvs/subtitleeditor/trunk/ChangeLog?rev=912&r1=911&r2=912&view=diff
==============================================================================
--- trunk/ChangeLog     (original)
+++ trunk/ChangeLog     Fri Apr 17 17:59:49 2015
@@ -1,3 +1,8 @@
+2015-04-17  kitone  <[email protected]>
+
+       * src/gui/application.cc:
+       Fix bug #23486 : Remember window size.
+
 2015-04-17  kitone  <[email protected]>
 
        * plugins/actions/timingfromplayer/Makefile.am:

Modified: trunk/src/gui/application.cc
URL: 
http://svn.gna.org/viewcvs/subtitleeditor/trunk/src/gui/application.cc?rev=912&r1=911&r2=912&view=diff
==============================================================================
--- trunk/src/gui/application.cc        (original)
+++ trunk/src/gui/application.cc        Fri Apr 17 17:59:49 2015
@@ -80,6 +80,7 @@
        Config::getInstance().signal_changed("interface").connect(
                        sigc::mem_fun(*this, 
&Application::on_config_interface_changed));
 
+       load_window_state();
        show();
 
        m_menubar.create(*this, *m_statusbar);
@@ -159,8 +160,6 @@
                cfg.set_value_string("encodings", "encodings", 
"ISO-8859-15;UTF-8");
                cfg.set_value_bool("encodings", "used-auto-detected", true);
        }
-
-       load_window_state();
 }
 
 /*
@@ -823,6 +822,20 @@
 {
        Config &cfg = Config::getInstance();
 
+       // window size,position
+       if(cfg.get_value_bool("interface", "window-maximized"))
+               maximize();
+       else
+       {
+               int window_x, window_y;
+               if(cfg.get_value_int("interface", "window-x", window_x) && 
cfg.get_value_int("interface", "window-y", window_y))
+                       move(window_x, window_y);
+
+               int window_width, window_height;
+               if(cfg.get_value_int("interface", "window-width", window_width) 
&& cfg.get_value_int("interface", "window-height", window_height))
+                       resize(window_width, window_height);
+       }
+       // paned position
        int panel_main_position = cfg.get_value_int("interface", 
"paned-main-position");
        if(panel_main_position > 0)
                m_paned_main->set_position(panel_main_position);
@@ -838,6 +851,23 @@
 {
        Config &cfg = Config::getInstance();
 
+       // position of window
+       int window_x = 0, window_y = 0;
+       get_position(window_x, window_y);
+       cfg.set_value_int("interface", "window-x", window_x);
+       cfg.set_value_int("interface", "window-y", window_y);
+
+       // size of window
+       if(is_maximized())
+               cfg.set_value_bool("interface", "maximize-window", true);
+       else
+       {
+               Gtk::Allocation allocation = get_allocation();
+               cfg.set_value_int("interface", "window-width", 
allocation.get_width());
+               cfg.set_value_int("interface", "window-height", 
allocation.get_height());
+       }
+
+       // paned position
        cfg.set_value_int("interface", "paned-main-position", 
m_paned_main->get_position());
        cfg.set_value_int("interface", "paned-multimedia-position", 
m_paned_multimedia->get_position());
 }


_______________________________________________
Subtitleeditor-commits mailing list
[email protected]
https://mail.gna.org/listinfo/subtitleeditor-commits

Reply via email to