Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gnome-sudoku for openSUSE:Factory checked in at 2024-05-06 17:55:24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gnome-sudoku (Old) and /work/SRC/openSUSE:Factory/.gnome-sudoku.new.1880 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gnome-sudoku" Mon May 6 17:55:24 2024 rev:52 rq:1172170 version:46.1 Changes: -------- --- /work/SRC/openSUSE:Factory/gnome-sudoku/gnome-sudoku.changes 2024-03-20 21:19:39.621762005 +0100 +++ /work/SRC/openSUSE:Factory/.gnome-sudoku.new.1880/gnome-sudoku.changes 2024-05-06 17:56:39.838538184 +0200 @@ -1,0 +2,10 @@ +Mon May 6 10:05:03 UTC 2024 - Dominique Leuenberger <dims...@opensuse.org> + +- Update to version 46.1: + + Hide the board during pause. + + Add pause accelerator. + + Add single key accelerator for undo, redo, and fullscreen. + + Add accelerators for warnings (C-w) and highlighter (C-h). + + Save fullscreen state on exit and add unfullscreen button. + +------------------------------------------------------------------- Old: ---- gnome-sudoku-46.0.obscpio New: ---- gnome-sudoku-46.1.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gnome-sudoku.spec ++++++ --- /var/tmp/diff_new_pack.b5ACXF/_old 2024-05-06 17:56:40.342556532 +0200 +++ /var/tmp/diff_new_pack.b5ACXF/_new 2024-05-06 17:56:40.346556678 +0200 @@ -17,7 +17,7 @@ Name: gnome-sudoku -Version: 46.0 +Version: 46.1 Release: 0 Summary: Sudoku Game for GNOME License: GPL-3.0-or-later ++++++ _service ++++++ --- /var/tmp/diff_new_pack.b5ACXF/_old 2024-05-06 17:56:40.378557843 +0200 +++ /var/tmp/diff_new_pack.b5ACXF/_new 2024-05-06 17:56:40.382557988 +0200 @@ -3,7 +3,7 @@ <service name="obs_scm" mode="manual"> <param name="scm">git</param> <param name="url">https://gitlab.gnome.org/GNOME/gnome-sudoku.git</param> - <param name="revision">46.0</param> + <param name="revision">46.1</param> <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param> <param name="versionrewrite-pattern">v?(.*)\+0</param> <param name="versionrewrite-replacement">\1</param> ++++++ gnome-sudoku-46.0.obscpio -> gnome-sudoku-46.1.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/NEWS new/gnome-sudoku-46.1/NEWS --- old/gnome-sudoku-46.0/NEWS 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/NEWS 2024-05-06 06:29:03.000000000 +0200 @@ -1,3 +1,12 @@ +46.1 - May 5, 2024 +========================== + +- Hide the board during pause (!86, Tanmay) +- Add pause accelerator (p) (!86, Tanmay) +- Add single key accelerator for undo (u), redo (r), fullscreen (f) +- Add accelerators for warnings (C-w) and highlighter (C-h) +- Save fullscreen state on exit and add unfullscreen button + 46.0 - March 15, 2024 ========================== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/data/org.gnome.Sudoku.appdata.xml.in new/gnome-sudoku-46.1/data/org.gnome.Sudoku.appdata.xml.in --- old/gnome-sudoku-46.0/data/org.gnome.Sudoku.appdata.xml.in 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/data/org.gnome.Sudoku.appdata.xml.in 2024-05-06 06:29:03.000000000 +0200 @@ -43,6 +43,7 @@ <id>gnome-sudoku.desktop</id> </provides> <releases> + <release version="46.1" date="2024-05-05"/> <release version="46.0" date="2024-03-15"/> <release version="46~rc" date="2024-02-29"/> <release version="46~beta" date="2024-02-09"/> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/data/org.gnome.Sudoku.gschema.xml new/gnome-sudoku-46.1/data/org.gnome.Sudoku.gschema.xml --- old/gnome-sudoku-46.0/data/org.gnome.Sudoku.gschema.xml 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/data/org.gnome.Sudoku.gschema.xml 2024-05-06 06:29:03.000000000 +0200 @@ -61,5 +61,9 @@ <default>false</default> <summary>true if the window is maximized</summary> </key> + <key name="window-is-fullscreen" type="b"> + <default>false</default> + <summary>true if the window is fullscreen</summary> + </key> </schema> </schemalist> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/data/style-dark.css new/gnome-sudoku-46.1/data/style-dark.css --- old/gnome-sudoku-46.0/data/style-dark.css 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/data/style-dark.css 2024-05-06 06:29:03.000000000 +0200 @@ -31,6 +31,12 @@ sudokucell.selected > label { background: #4c5e79; } +sudokucell.paused { + background: #454545; +} +sudokucell.paused label { + color: transparent; +} sudokucell.highlight-label > label { background: #20324b; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/data/style.css new/gnome-sudoku-46.1/data/style.css --- old/gnome-sudoku-46.0/data/style.css 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/data/style.css 2024-05-06 06:29:03.000000000 +0200 @@ -30,6 +30,12 @@ sudokucell.selected > label { color: #333; } +sudokucell.paused { + background: #FFF; +} +sudokucell.paused label { + color: transparent; +} sudokucell.highlight-label > label { color: #3366E5; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/data/sudoku-window.ui new/gnome-sudoku-46.1/data/sudoku-window.ui --- old/gnome-sudoku-46.0/data/sudoku-window.ui 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/data/sudoku-window.ui 2024-05-06 06:29:03.000000000 +0200 @@ -104,6 +104,21 @@ </object> </child> <child type="end"> + <object class="GtkButton" id="unfullscreen_button"> + <property name="visible">False</property> + <property name="halign">center</property> + <property name="valign">center</property> + <property name="can-focus">True</property> + <property name="tooltip-text" translatable="yes">Leave Fullscreen</property> + <property name="focus-on-click">False</property> + <property name="action-name">app.fullscreen</property> + <property name="icon-name">view-fullscreen-symbolic</property> + <style> + <class name="circular"/> + </style> + </object> + </child> + <child type="end"> <object class="GtkMenuButton" id="main_menu"> <property name="icon-name">open-menu-symbolic</property> <property name="menu-model">primary-menu</property> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/help/C/keyboard-shortcuts.page new/gnome-sudoku-46.1/help/C/keyboard-shortcuts.page --- old/gnome-sudoku-46.0/help/C/keyboard-shortcuts.page 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/help/C/keyboard-shortcuts.page 2024-05-06 06:29:03.000000000 +0200 @@ -32,6 +32,10 @@ <td><p><keyseq><key>Ctrl</key><key>N</key></keyseq></p></td> </tr> <tr> + <td><p>Pause game</p></td> + <td><p><key>P</key></p></td> + </tr> + <tr> <td><p>Reset game</p></td> <td><p><keyseq><key>Ctrl</key><key>R</key></keyseq></p></td> </tr> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/meson.build new/gnome-sudoku-46.1/meson.build --- old/gnome-sudoku-46.0/meson.build 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/meson.build 2024-05-06 06:29:03.000000000 +0200 @@ -4,7 +4,7 @@ ], license: 'GPL3+', meson_version: '>= 0.59', - version: '46.0' + version: '46.1' ) application_id = 'org.gnome.Sudoku' add_project_arguments([ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/src/gnome-sudoku.vala new/gnome-sudoku-46.1/src/gnome-sudoku.vala --- old/gnome-sudoku-46.0/src/gnome-sudoku.vala 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/src/gnome-sudoku.vala 2024-05-06 06:29:03.000000000 +0200 @@ -69,6 +69,7 @@ {"print-multiple", print_multiple_cb }, {"help", help_cb }, {"about", about_cb }, + {"fullscreen", fullscreen_cb }, {"quit", quit }, {"show-timer", show_timer_cb, null, "true" } }; @@ -149,11 +150,15 @@ set_accels_for_action ("app.new-game", {"<Primary>n"}); set_accels_for_action ("app.print", {"<Primary>p"}); + set_accels_for_action ("app.pause", {"p"}); set_accels_for_action ("app.quit", {"<Primary>q"}); set_accels_for_action ("app.reset", {"<Primary>r"}); - set_accels_for_action ("app.undo", {"<Primary>z"}); - set_accels_for_action ("app.redo", {"<Primary><Shift>z"}); + set_accels_for_action ("app.undo", {"<Primary>z", "u"}); + set_accels_for_action ("app.redo", {"<Primary><Shift>z", "r"}); set_accels_for_action ("app.help", {"F1"}); + set_accels_for_action ("app.fullscreen", {"F11", "f"}); + set_accels_for_action ("app.highlighter", {"<Primary>h"}); + set_accels_for_action ("app.show-warnings", {"<Primary>w"}); undo_action = (SimpleAction) lookup_action ("undo"); redo_action = (SimpleAction) lookup_action ("redo"); @@ -284,17 +289,16 @@ private void toggle_pause_cb () { - if (game.paused) - { - game.resume_clock (); - game.paused = false; - show_timer_action.set_enabled (true); - } - else + if (game!= null && window.is_board_visible ()) { - game.stop_clock (); - game.paused = true; - show_timer_action.set_enabled (false); + game.paused = !game.paused; + + if (!game.paused) + game.resume_clock (); + else + game.stop_clock (); + + show_timer_action.set_enabled (!game.paused); } } @@ -542,6 +546,14 @@ about.present (); } + private void fullscreen_cb () + { + if (window.is_fullscreen ()) + window.unfullscreen (); + else + window.fullscreen (); + } + public static int main (string[] args) { return new Sudoku ().run (args); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/src/sudoku-cell.vala new/gnome-sudoku-46.1/src/sudoku-cell.vala --- old/gnome-sudoku-46.0/src/sudoku-cell.vala 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/src/sudoku-cell.vala 2024-05-06 06:29:03.000000000 +0200 @@ -140,6 +140,19 @@ } } + private bool _paused = false; + public bool paused { + get { return _paused; } + set + { + _paused = value; + if (value) + this.add_css_class ("paused"); + else + this.remove_css_class ("paused"); + } + } + public void set_earmark_highlight (int val, bool enabled) { if (!game.board.is_earmark_enabled (row, col, val)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/src/sudoku-view.vala new/gnome-sudoku-46.1/src/sudoku-view.vala --- old/gnome-sudoku-46.0/src/sudoku-view.vala 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/src/sudoku-view.vala 2024-05-06 06:29:03.000000000 +0200 @@ -102,9 +102,15 @@ paused.set_visible (this.game.paused); if (this.game.paused) + { + mask_view (); clear_all_warnings (); + } else + { + unmask_view (); update_warnings (); + } has_selection = !this.game.paused; }); @@ -359,6 +365,20 @@ cells[row_tmp, col_tmp].clear_warnings (); } + private void mask_view () + { + for (var col_tmp = 0; col_tmp < game.board.cols; col_tmp++) + for (var row_tmp = 0; row_tmp < game.board.rows; row_tmp++) + cells[row_tmp, col_tmp].paused = true; + } + + private void unmask_view () + { + for (var col_tmp = 0; col_tmp < game.board.cols; col_tmp++) + for (var row_tmp = 0; row_tmp < game.board.rows; row_tmp++) + cells[row_tmp, col_tmp].paused = false; + } + private bool _show_warnings; public bool show_warnings { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gnome-sudoku-46.0/src/sudoku-window.vala new/gnome-sudoku-46.1/src/sudoku-window.vala --- old/gnome-sudoku-46.0/src/sudoku-window.vala 2024-03-15 12:27:07.000000000 +0100 +++ new/gnome-sudoku-46.1/src/sudoku-window.vala 2024-05-06 06:29:03.000000000 +0200 @@ -41,6 +41,7 @@ [GtkChild] private unowned Button undo_button; [GtkChild] private unowned Button redo_button; [GtkChild] private unowned Button back_button; + [GtkChild] private unowned Button unfullscreen_button; [GtkChild] private unowned Box clock_box; [GtkChild] private unowned Label clock_label; @@ -74,8 +75,9 @@ this.show_timer = settings.get_boolean ("show-timer"); set_default_size (settings.get_int ("window-width"), settings.get_int ("window-height")); - if (settings.get_boolean ("window-is-maximized")) - maximize (); + + this.window_is_maximized = settings.get_boolean ("window-is-maximized"); + this.window_is_fullscreen = settings.get_boolean ("window-is-fullscreen"); this.notify["maximized"].connect(() => { this.window_is_maximized = !this.window_is_maximized; @@ -83,6 +85,21 @@ this.notify["fullscreened"].connect(() => { this.window_is_fullscreen = !this.window_is_fullscreen; + if (this.window_is_fullscreen) + { + headerbar.set_decoration_layout (":close"); + unfullscreen_button.visible = true; + } + else + { + headerbar.set_decoration_layout (null); + unfullscreen_button.visible = false; + if (window_is_maximized) + { + this.maximize (); + return; + } + } }); main_menu.notify["active"].connect(() => { @@ -90,6 +107,11 @@ view.has_selection = !main_menu.active; }); + if (this.window_is_fullscreen) + fullscreen (); + else if (this.window_is_maximized) + maximize (); + this.button_controller.set_button (0 /* all buttons */); this.button_controller.released.connect (button_released_cb); ((Widget)this).add_controller (this.button_controller); @@ -104,7 +126,8 @@ settings.delay (); settings.set_int ("window-width", window_width); settings.set_int ("window-height", window_height); - settings.set_boolean ("window-is-maximized", window_is_maximized || window_is_fullscreen); + settings.set_boolean ("window-is-maximized", window_is_maximized); + settings.set_boolean ("window-is-fullscreen", window_is_fullscreen); settings.set_boolean ("show-timer", show_timer); settings.apply (); } ++++++ gnome-sudoku.obsinfo ++++++ --- /var/tmp/diff_new_pack.b5ACXF/_old 2024-05-06 17:56:40.598565852 +0200 +++ /var/tmp/diff_new_pack.b5ACXF/_new 2024-05-06 17:56:40.602565997 +0200 @@ -1,5 +1,5 @@ name: gnome-sudoku -version: 46.0 -mtime: 1710502027 -commit: ca77a11feb3301adee5ccb1d45432bf4dc46badb +version: 46.1 +mtime: 1714969743 +commit: eacfbb5e59bb5e3e99e0c442792bf38b0b4809ad