@@ -50,17 +50,25 @@ namespace Pebbles {
5050 );
5151 X . init_threads ();
5252 settings = Settings . get_default ();
53+
54+ Timeout . add_seconds (1 , () = > {
55+ if (this . get_active_window () != null ) {
56+ int height = this . get_active_window (). get_allocated_height ();
57+ if (((MainWindow ) (this . get_active_window ())). previous_height != height) {
58+ ((MainWindow ) (this . get_active_window ())). previous_height = height;
59+ adjust_font_responsive (height);
60+ }
61+ return true ;
62+ }
63+ return false ;
64+ });
5365 }
5466
5567 protected override void activate () {
5668 var mainwindow = new MainWindow ();
5769 mainwindow. application = this ;
5870
5971 mainwindow. present ();
60- mainwindow. configure_event. connect ((event) = > {
61- adjust_font_responsive (event);
62- return false ;
63- });
6472 }
6573
6674 public override int command_line (ApplicationCommandLine cmd ) {
@@ -122,11 +130,11 @@ namespace Pebbles {
122130 private double map_range (double input , double input_start , double input_end , double output_start , double output_end ) {
123131 return output_start + ((output_end - output_start) / (input_end - input_start)) * (input - input_start);
124132 }
125- private void adjust_font_responsive (Gdk . EventConfigure event ) {
133+ private void adjust_font_responsive (int height ) {
126134 try {
127- var target_size_h1 = (int )map_range (double . max((double ) event . height/ 600 , 1 ), 1 , 2 , 40 , 120 );
128- var target_size_h2 = (int )map_range (double . max((double ) event . height/ 600 , 1 ), 1 , 2 , 20 , 50 );
129- var target_size_h4 = (int )map_range (double . max((double ) event . height/ 600 , 1 ), 1 , 2 , 10 , 20 );
135+ var target_size_h1 = (int )map_range (double . max((double ) height/ 600 , 1 ), 1 , 2 , 40 , 120 );
136+ var target_size_h2 = (int )map_range (double . max((double ) height/ 600 , 1 ), 1 , 2 , 20 , 50 );
137+ var target_size_h4 = (int )map_range (double . max((double ) height/ 600 , 1 ), 1 , 2 , 10 , 20 );
130138 var css = DISPLAY_FONT_SIZE_TEMPLATE . printf(target_size_h1, target_size_h2, target_size_h4);
131139 font_size_provider. load_from_data (css, - 1 );
132140 } catch (Error e) {
0 commit comments