Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package faugus-launcher for openSUSE:Factory
checked in at 2026-05-20 15:25:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/faugus-launcher (Old)
and /work/SRC/openSUSE:Factory/.faugus-launcher.new.1966 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "faugus-launcher"
Wed May 20 15:25:52 2026 rev:28 rq:1354165 version:1.19.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/faugus-launcher/faugus-launcher.changes
2026-05-15 23:59:02.654777325 +0200
+++
/work/SRC/openSUSE:Factory/.faugus-launcher.new.1966/faugus-launcher.changes
2026-05-20 15:27:01.748339549 +0200
@@ -1,0 +2,14 @@
+Wed May 20 06:54:21 UTC 2026 - Jehu Marcos Herrera Puentes
<[email protected]>
+
+- Bump to version 1.19.5
+- Upstream changes:
+ * Updated UI and added animation
+ * Fixed splash window missing when running Steam game
+ * Attempt to fix gamepad interacting with the app when a game is running
+ * Revert "Print message for debug"
+ * Print message for debug
+ * Banner border shadow
+ * Updated Debian instructions
+ * Some visual changes
+
+-------------------------------------------------------------------
Old:
----
faugus-launcher-1.19.4.tar.xz
New:
----
faugus-launcher-1.19.5.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ faugus-launcher.spec ++++++
--- /var/tmp/diff_new_pack.9aEGrk/_old 2026-05-20 15:27:02.328363442 +0200
+++ /var/tmp/diff_new_pack.9aEGrk/_new 2026-05-20 15:27:02.332363607 +0200
@@ -19,7 +19,7 @@
%{?single_pythons_311plus}
Name: faugus-launcher
-Version: 1.19.4
+Version: 1.19.5
Release: 0
Summary: A simple and lightweight app for running Windows games using
UMU-Launcher
License: MIT and CC-BY-4.0
++++++ _service ++++++
--- /var/tmp/diff_new_pack.9aEGrk/_old 2026-05-20 15:27:02.364364925 +0200
+++ /var/tmp/diff_new_pack.9aEGrk/_new 2026-05-20 15:27:02.368365090 +0200
@@ -3,7 +3,7 @@
<service name="tar_scm" mode="manual">
<param name="scm">git</param>
<param name="url">https://github.com/Faugus/faugus-launcher.git</param>
- <param name="revision">1.19.4</param>
+ <param name="revision">1.19.5</param>
<param name="changesgenerate">enable</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">v?([0-9]+(\.[0-9])*)(\+0)?</param>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.9aEGrk/_old 2026-05-20 15:27:02.388365914 +0200
+++ /var/tmp/diff_new_pack.9aEGrk/_new 2026-05-20 15:27:02.392366078 +0200
@@ -1,6 +1,6 @@
<servicedata>
<service name="tar_scm">
<param
name="url">https://github.com/Faugus/faugus-launcher.git</param>
- <param
name="changesrevision">6dae347a117c07a03dd2009f83579b753e7897c4</param></service></servicedata>
+ <param
name="changesrevision">eba4c157d5c36284c12aeb3bc77a276234d04dad</param></service></servicedata>
(No newline at EOF)
++++++ faugus-launcher-1.19.4.tar.xz -> faugus-launcher-1.19.5.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/faugus-launcher-1.19.4/README.md
new/faugus-launcher-1.19.5/README.md
--- old/faugus-launcher-1.19.4/README.md 2026-05-13 23:19:29.000000000
+0200
+++ new/faugus-launcher-1.19.5/README.md 2026-05-18 15:29:17.000000000
+0200
@@ -38,7 +38,7 @@
sudo apt update
sudo apt install -y wget
mkdir -p ~/faugus-launcher
-wget -P ~/faugus-launcher
https://github.com/Faugus/faugus-launcher/releases/download/1.19.4/faugus-launcher_1.19.4-1_all.deb
+wget -P ~/faugus-launcher
https://github.com/Faugus/faugus-launcher/releases/download/1.19.5/faugus-launcher_1.19.5-1_all.deb
sudo apt install -y ~/faugus-launcher/*.deb
sudo rm -r ~/faugus-launcher
```
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/faugus-launcher-1.19.4/data/faugus-launcher.metainfo.xml
new/faugus-launcher-1.19.5/data/faugus-launcher.metainfo.xml
--- old/faugus-launcher-1.19.4/data/faugus-launcher.metainfo.xml
2026-05-13 23:19:29.000000000 +0200
+++ new/faugus-launcher-1.19.5/data/faugus-launcher.metainfo.xml
2026-05-18 15:29:17.000000000 +0200
@@ -82,15 +82,12 @@
</screenshot>
</screenshots>
<releases>
- <release version="1.19.4-1" date="2026-05-13">
+ <release version="1.19.5-1" date="2026-05-18">
<description>
<ul>
- <li>Fixed blurry icon/banner on high DPI display.</li>
- <li>Fixed context menu not showing properly sometimes.</li>
- <li>Fixed Desktop path for other languages.</li>
- <li>Updated Italian translation.</li>
- <li>Updated Dutch translation.</li>
- <li>Updated Spanish translation.</li>
+ <li>Some changes have been made to the UI.</li>
+ <li>Fixed splash window missing when running a Steam game.</li>
+ <li>With gamepad navigation, the gamepad now only works in the app
if no game is running.</li>
</ul>
</description>
</release>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/faugus-launcher-1.19.4/data/io.github.Faugus.faugus-launcher.metainfo.xml
new/faugus-launcher-1.19.5/data/io.github.Faugus.faugus-launcher.metainfo.xml
---
old/faugus-launcher-1.19.4/data/io.github.Faugus.faugus-launcher.metainfo.xml
2026-05-13 23:19:29.000000000 +0200
+++
new/faugus-launcher-1.19.5/data/io.github.Faugus.faugus-launcher.metainfo.xml
2026-05-18 15:29:17.000000000 +0200
@@ -88,15 +88,12 @@
</screenshot>
</screenshots>
<releases>
- <release version="1.19.4-1" date="2026-05-13">
+ <release version="1.19.5-1" date="2026-05-18">
<description>
<ul>
- <li>Fixed blurry icon/banner on high DPI display.</li>
- <li>Fixed context menu not showing properly sometimes.</li>
- <li>Fixed Desktop path for other languages.</li>
- <li>Updated Italian translation.</li>
- <li>Updated Dutch translation.</li>
- <li>Updated Spanish translation.</li>
+ <li>Some changes have been made to the UI.</li>
+ <li>Fixed splash window missing when running a Steam game.</li>
+ <li>With gamepad navigation, the gamepad now only works in the app
if no game is running.</li>
</ul>
</description>
</release>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/faugus-launcher-1.19.4/faugus/gamepad.py
new/faugus-launcher-1.19.5/faugus/gamepad.py
--- old/faugus-launcher-1.19.4/faugus/gamepad.py 2026-05-13
23:19:29.000000000 +0200
+++ new/faugus-launcher-1.19.5/faugus/gamepad.py 2026-05-18
15:29:17.000000000 +0200
@@ -1,3 +1,4 @@
+import os
import time
import pygame
from gi.repository import Gdk, GLib, Gtk
@@ -12,6 +13,9 @@
return {"confirm": 0, "back": 1, "square": 2, "triangle": 3, "lb": 4,
"rb": 5, "start": 7, "start_alt": 6}
def init_gamepad(self):
+ os.environ["SDL_VIDEODRIVER"] = "dummy"
+ os.environ["SDL_AUDIODRIVER"] = "dummy"
+
pygame.init()
pygame.joystick.init()
@@ -36,6 +40,10 @@
def poll_gamepad(self):
active_win = get_active_window()
is_focused = active_win is not None
+ is_running = hasattr(self, "running") and bool(self.running)
+
+ if is_running:
+ self.held_direction = None
for event in pygame.event.get():
if event.type == pygame.JOYDEVICEADDED:
@@ -54,7 +62,7 @@
if not self.joystick or not self.button_map:
continue
- if not is_focused:
+ if is_running or not is_focused:
self.held_direction = None
continue
@@ -78,7 +86,7 @@
else:
_handle_button_down(self, event.button)
- if not is_focused:
+ if not is_focused or is_running:
self.held_direction = None
elif getattr(self, "held_direction", None) is not None:
now = time.time()
@@ -655,6 +663,6 @@
def get_active_window():
for window in Gtk.Window.list_toplevels():
- if window.is_active():
+ if window.is_active() and window.get_property("has-toplevel-focus"):
return window
return None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/faugus-launcher-1.19.4/faugus/launcher.py
new/faugus-launcher-1.19.5/faugus/launcher.py
--- old/faugus-launcher-1.19.4/faugus/launcher.py 2026-05-13
23:19:29.000000000 +0200
+++ new/faugus-launcher-1.19.5/faugus/launcher.py 2026-05-18
15:29:17.000000000 +0200
@@ -22,7 +22,7 @@
from faugus.steam_setup import *
from faugus.ea_fix import *
-VERSION = "1.19.4"
+VERSION = "1.19.5"
IS_FLATPAK = 'FLATPAK_ID' in os.environ or os.path.exists('/.flatpak-info')
faugus_banner = PathManager.system_data('faugus-launcher/faugus-banner.png')
@@ -208,24 +208,39 @@
self.provider = Gtk.CssProvider()
self.provider.load_from_data(b"""
- flowboxchild:selected {
- background: transparent;
- }
.game {
background-color: alpha(@theme_base_color, 0.5);
- border: 4px solid transparent;
color: @theme_text_color;
}
+ flowboxchild:selected {
+ background: transparent;
+ }
flowboxchild:selected .game {
- background-color: alpha(@theme_base_color, 0.5);
- border-color: @theme_selected_bg_color;
+ background-color: alpha(@theme_selected_bg_color, 0.5);
}
flowboxchild:selected:focus .game {
background-color: @theme_selected_bg_color;
- border-color: transparent;
+ color: @theme_bg_color;
}
- .banner-border {
- border: 4px solid @theme_bg_color;
+ .banner-container {
+ border: 8px solid transparent;
+ padding: 0px;
+ }
+ flowboxchild.banner-container:selected {
+ border-color: alpha(@theme_selected_bg_color, 0.5);
+ }
+ flowboxchild.banner-container:selected:focus {
+ border-color: @theme_selected_bg_color;
+ box-shadow: 0 0 5px 0 @theme_selected_bg_color;
+ }
+ .launch-overlay {
+ background-color: @theme_text_color;
+ opacity: 0;
+ transition: opacity 0.8s ease-out;
+ }
+ .launch-overlay.playing {
+ opacity: 0.5;
+ transition: opacity 0.05s ease-in;
}
.category-list {
background-color: alpha(@theme_base_color, 0.5);
@@ -233,14 +248,13 @@
.category-list row {
background-color: transparent;
color: @theme_text_color;
- border: 4px solid transparent;
}
.category-list row:selected {
- background-color: transparent;
- border: 4px solid @theme_selected_bg_color;
+ background-color: alpha(@theme_selected_bg_color, 0.5);
}
.category-list row:selected:focus {
background-color: @theme_selected_bg_color;
+ color: @theme_bg_color;
outline: none;
}
""")
@@ -352,9 +366,14 @@
return None
child = selected[0]
- box = child.get_child()
- label = box.get_children()[1]
+ root_widget = child.get_child()
+ if isinstance(root_widget, Gtk.Overlay):
+ box = root_widget.get_child()
+ else:
+ box = root_widget
+
+ label = box.get_children()[1]
title = label.get_text()
for game in self.games:
@@ -494,10 +513,7 @@
def select_game_by_title(self, title):
for child in self.flowbox.get_children():
- hbox = child.get_children()[0]
- game_label = hbox.get_children()[1]
-
- if game_label.get_text() == title:
+ if hasattr(child, 'game') and child.game and child.game.title ==
title:
self.flowbox.grab_focus()
self.flowbox.select_child(child)
child.grab_focus()
@@ -1922,6 +1938,12 @@
self.flowbox_child = Gtk.FlowBoxChild()
self.flowbox_child.game = game
+ anim_box = Gtk.Box()
+ anim_box.get_style_context().add_class("launch-overlay")
+ anim_box.set_hexpand(True)
+ anim_box.set_vexpand(True)
+ self.flowbox_child.anim_box = anim_box
+
if self.interface_mode == "List":
surface = self.get_game_artwork(game_icon, game, 40, 40)
image = Gtk.Image.new_from_surface(surface)
@@ -1968,7 +1990,6 @@
self.flowbox_child.set_halign(Gtk.Align.FILL)
if self.interface_mode == "Banners":
- hbox.get_style_context().add_class("banner-border")
self.flowbox_child.set_hexpand(True)
self.flowbox_child.set_vexpand(True)
@@ -2000,12 +2021,23 @@
image2.set_from_surface(surface)
hbox.pack_start(image2, False, False, 0)
- hbox.pack_start(game_label, True, False, 0)
+
+
self.flowbox_child.get_style_context().add_class("banner-container")
if not self.show_labels:
game_label.set_no_show_all(True)
- self.flowbox_child.add(hbox)
+ hbox.pack_start(game_label, True, False, 0)
+
+ overlay = Gtk.Overlay()
+ overlay.add(hbox)
+ overlay.add_overlay(anim_box)
+ try:
+ overlay.set_overlay_pass_through(anim_box, True)
+ except AttributeError:
+ pass
+ self.flowbox_child.add(overlay)
+
self.flowbox.add(self.flowbox_child)
def update_game_visual(self, flowbox_child):
@@ -2045,7 +2077,7 @@
if not self.is_game_installed(game):
pixbuf.saturate_and_pixelate(pixbuf, 0.0, False)
-
+
surface = Gdk.cairo_surface_create_from_pixbuf(pixbuf, scale, None)
return surface
@@ -2202,8 +2234,17 @@
return
selected = self.flowbox.get_selected_children()
- child = selected[0]
- self.update_game_visual(child)
+ if selected:
+ child = selected[0]
+ self.update_game_visual(child)
+
+ if hasattr(child, 'anim_box') and child.anim_box:
+ child.anim_box.get_style_context().add_class("playing")
+
+ def remove_anim():
+ child.anim_box.get_style_context().remove_class("playing")
+ return False
+ GLib.timeout_add(150, remove_anim)
button = widget or self.button_play
gameid = game.gameid
@@ -2223,7 +2264,6 @@
)
return
- # STOP
if gameid in self.running:
try:
os.kill(self.running[gameid], signal.SIGUSR1)
@@ -2236,7 +2276,6 @@
self.update_icon()
return
- # PLAY
self.update_latest_games_file(game.gameid)
cmd = (sys.executable, "-m", "faugus.runner", "--game", gameid)
proc = subprocess.Popen(cmd, cwd=cwd if cwd else None)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/faugus-launcher-1.19.4/faugus/runner.py
new/faugus-launcher-1.19.5/faugus/runner.py
--- old/faugus-launcher-1.19.4/faugus/runner.py 2026-05-13 23:19:29.000000000
+0200
+++ new/faugus-launcher-1.19.5/faugus/runner.py 2026-05-18 15:29:17.000000000
+0200
@@ -128,11 +128,21 @@
if os.environ.get("PROTONPATH") == "Steam":
subprocess.Popen(self.message, shell=True)
- if self.splash_window:
- self.label.set_text(_("Starting Steam game..."))
- time.sleep(5)
- Gtk.main_quit()
- sys.exit()
+
+ def update_ui():
+ if self.splash_window:
+ self.label.set_text(_("Starting Steam game..."))
+ return False
+
+ GLib.idle_add(update_ui)
+
+ def close_app():
+ Gtk.main_quit()
+ sys.exit()
+ return False
+
+ GLib.timeout_add(5000, close_app)
+ return
self.start_time = time.time()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/faugus-launcher-1.19.4/meson.build
new/faugus-launcher-1.19.5/meson.build
--- old/faugus-launcher-1.19.4/meson.build 2026-05-13 23:19:29.000000000
+0200
+++ new/faugus-launcher-1.19.5/meson.build 2026-05-18 15:29:17.000000000
+0200
@@ -1,6 +1,6 @@
project(
'faugus-launcher',
- version: '1.19.4',
+ version: '1.19.5',
meson_version: '>=1.2.0',
license: 'MIT',
license_files: 'LICENSE',