diff --git a/src/Views/AppInfoView.vala b/src/Views/AppInfoView.vala index 8b676ea76..8d53208fa 100644 --- a/src/Views/AppInfoView.vala +++ b/src/Views/AppInfoView.vala @@ -942,7 +942,21 @@ public class AppCenter.Views.AppInfoView : Adw.NavigationPage { var scale = get_scale_factor (); var min_screenshot_width = MAX_WIDTH * scale; + var prefer_dark_theme = Gtk.Settings.get_default ().gtk_application_prefer_dark_theme; screenshots.foreach ((screenshot) => { + var environment_id = screenshot.get_environment (); + if (prefer_dark_theme && environment_id != null) { + var environment_split = environment_id.split (":", 2); + if (environment_split.length != 2) { + return; + } + + var color_scheme = AppStream.ColorSchemeKind.from_string (environment_split[1]); + if (color_scheme != AppStream.ColorSchemeKind.DARK) { + return; + } + } + AppStream.Image? best_image = null; screenshot.get_images ().foreach ((image) => { // Image is better than no image