Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package gpu-screen-recorder-gtk for 
openSUSE:Factory checked in at 2026-08-21 17:01:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gpu-screen-recorder-gtk (Old)
 and      /work/SRC/openSUSE:Factory/.gpu-screen-recorder-gtk.new.1258 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gpu-screen-recorder-gtk"

Fri Aug 21 17:01:31 2026 rev:24 rq:1372821 version:20260805

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/gpu-screen-recorder-gtk/gpu-screen-recorder-gtk.changes
  2026-05-30 23:02:14.706402326 +0200
+++ 
/work/SRC/openSUSE:Factory/.gpu-screen-recorder-gtk.new.1258/gpu-screen-recorder-gtk.changes
        2026-08-21 17:02:59.028583993 +0200
@@ -1,0 +2,9 @@
+Fri Aug 21 11:16:04 UTC 2026 - Muhammad Akbar Yanuar Mantari <[email protected]>
+
+- Update to version 20260805:
+  * Added Apple GPU vendor check
+  * Added option to exclude metadata and sync to content
+  * Removed GPU overclocking option
+  * Updated application logos and fixed UI text phrasing
+
+-------------------------------------------------------------------

Old:
----
  gpu-screen-recorder-gtk-20260415.tar.zst

New:
----
  gpu-screen-recorder-gtk-20260805.tar.zst

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gpu-screen-recorder-gtk.spec ++++++
--- /var/tmp/diff_new_pack.XeEGKg/_old  2026-08-21 17:02:59.981617736 +0200
+++ /var/tmp/diff_new_pack.XeEGKg/_new  2026-08-21 17:02:59.984617842 +0200
@@ -19,7 +19,7 @@
 %bcond_with test
 %define appid   com.dec05eba.gpu_screen_recorder
 Name:           gpu-screen-recorder-gtk
-Version:        20260415
+Version:        20260805
 Release:        0
 Summary:        GTK frontend for GPU Screen Recorder
 License:        GPL-3.0-only

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.XeEGKg/_old  2026-08-21 17:03:00.092621666 +0200
+++ /var/tmp/diff_new_pack.XeEGKg/_new  2026-08-21 17:03:00.097621843 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://repo.dec05eba.com/gpu-screen-recorder-gtk.git</param>
-              <param 
name="changesrevision">d3e5d912fdd71e8d9262e3ae9ae96f38ac04f882</param></service></servicedata>
+              <param 
name="changesrevision">dade88d824e4cd52f995a98519a25bcce2cca1d0</param></service></servicedata>
 (No newline at EOF)
 

++++++ gpu-screen-recorder-gtk-20260415.tar.zst -> 
gpu-screen-recorder-gtk-20260805.tar.zst ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpu-screen-recorder-gtk-20260415/TODO 
new/gpu-screen-recorder-gtk-20260805/TODO
--- old/gpu-screen-recorder-gtk-20260415/TODO   2026-04-15 00:52:03.000000000 
+0200
+++ new/gpu-screen-recorder-gtk-20260805/TODO   2026-08-05 00:36:49.000000000 
+0200
@@ -1,7 +1,6 @@
 Capture stderr (ignore fps: 250) and show that in notification on error. Or 
redirect stderr to a temporary error file and save that file if recording 
failed and show where the error output was saved (~/gsr-error.log ?).
 Make sure the resolution is allowed for streaming.
 Add list of windows to select from. This makes it easier to select another 
window that is not in the view to be clickable.
-Disable overclocking and show some kind of sign that overclocking is not 
possible (if coolbits not set).
 Button (in the field) to remove hotkey.
 Error if polkit agent is not running (pkexec --help may work but the agent 
might not be running anyways).
 Re-enable wlroots based capture when it's fixed.
Binary files 
old/gpu-screen-recorder-gtk-20260415/icons/hicolor/128x128/apps/com.dec05eba.gpu_screen_recorder.png
 and 
new/gpu-screen-recorder-gtk-20260805/icons/hicolor/128x128/apps/com.dec05eba.gpu_screen_recorder.png
 differ
Binary files 
old/gpu-screen-recorder-gtk-20260415/icons/hicolor/32x32/apps/com.dec05eba.gpu_screen_recorder.png
 and 
new/gpu-screen-recorder-gtk-20260805/icons/hicolor/32x32/apps/com.dec05eba.gpu_screen_recorder.png
 differ
Binary files 
old/gpu-screen-recorder-gtk-20260415/icons/hicolor/64x64/apps/com.dec05eba.gpu_screen_recorder.png
 and 
new/gpu-screen-recorder-gtk-20260805/icons/hicolor/64x64/apps/com.dec05eba.gpu_screen_recorder.png
 differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpu-screen-recorder-gtk-20260415/meson.build 
new/gpu-screen-recorder-gtk-20260805/meson.build
--- old/gpu-screen-recorder-gtk-20260415/meson.build    2026-04-15 
00:52:03.000000000 +0200
+++ new/gpu-screen-recorder-gtk-20260805/meson.build    2026-08-05 
00:36:49.000000000 +0200
@@ -1,4 +1,4 @@
-project('gpu-screen-recorder-gtk', ['c', 'cpp'], version : '5.7.9', 
default_options : ['warning_level=2'])
+project('gpu-screen-recorder-gtk', ['c', 'cpp'], version : '5.8.0', 
default_options : ['warning_level=2'])
 
 add_project_arguments('-Wshadow', language : ['c', 'cpp'])
 if get_option('buildtype') == 'debug'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpu-screen-recorder-gtk-20260415/project.conf 
new/gpu-screen-recorder-gtk-20260805/project.conf
--- old/gpu-screen-recorder-gtk-20260415/project.conf   2026-04-15 
00:52:03.000000000 +0200
+++ new/gpu-screen-recorder-gtk-20260805/project.conf   2026-08-05 
00:36:49.000000000 +0200
@@ -1,7 +1,7 @@
 [package]
 name = "gpu-screen-recorder-gtk"
 type = "executable"
-version = "5.7.9"
+version = "5.8.0"
 platforms = ["posix"]
 
 [config]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpu-screen-recorder-gtk-20260415/src/config.hpp 
new/gpu-screen-recorder-gtk-20260805/src/config.hpp
--- old/gpu-screen-recorder-gtk-20260415/src/config.hpp 2026-04-15 
00:52:03.000000000 +0200
+++ new/gpu-screen-recorder-gtk-20260805/src/config.hpp 2026-08-05 
00:36:49.000000000 +0200
@@ -37,7 +37,6 @@
     std::string audio_codec;
     std::string framerate_mode;
     bool advanced_view = false;
-    bool overclock = false;
     bool show_recording_started_notifications = false;
     bool show_recording_stopped_notifications = false;
     bool show_recording_saved_notifications = true;
@@ -48,6 +47,7 @@
     bool av1_amd_bug_warning_shown = false;
     bool restore_portal_session = true;
     bool use_new_ui = false;
+    bool exclude_metadata = false;
     int32_t installed_gsr_global_hotkeys_version = 0;
 };
 
@@ -324,7 +324,6 @@
         {"main.audio_codec", {CONFIG_TYPE_STRING, 
&config.main_config.audio_codec}},
         {"main.framerate_mode", {CONFIG_TYPE_STRING, 
&config.main_config.framerate_mode}},
         {"main.advanced_view", {CONFIG_TYPE_BOOL, 
&config.main_config.advanced_view}},
-        {"main.overclock", {CONFIG_TYPE_BOOL, &config.main_config.overclock}},
         {"main.show_recording_started_notifications", {CONFIG_TYPE_BOOL, 
&config.main_config.show_recording_started_notifications}},
         {"main.show_recording_stopped_notifications", {CONFIG_TYPE_BOOL, 
&config.main_config.show_recording_stopped_notifications}},
         {"main.show_recording_saved_notifications", {CONFIG_TYPE_BOOL, 
&config.main_config.show_recording_saved_notifications}},
@@ -335,6 +334,7 @@
         {"main.av1_amd_bug_warning_shown", {CONFIG_TYPE_BOOL, 
&config.main_config.av1_amd_bug_warning_shown}},
         {"main.restore_portal_session", {CONFIG_TYPE_BOOL, 
&config.main_config.restore_portal_session}},
         {"main.use_new_ui", {CONFIG_TYPE_BOOL, 
&config.main_config.use_new_ui}},
+        {"main.exclude_metadata", {CONFIG_TYPE_BOOL, 
&config.main_config.exclude_metadata}},
         {"main.installed_gsr_global_hotkeys_version", {CONFIG_TYPE_I32, 
&config.main_config.installed_gsr_global_hotkeys_version}},
 
         {"streaming.service", {CONFIG_TYPE_STRING, 
&config.streaming_config.streaming_service}},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpu-screen-recorder-gtk-20260415/src/main.cpp 
new/gpu-screen-recorder-gtk-20260805/src/main.cpp
--- old/gpu-screen-recorder-gtk-20260415/src/main.cpp   2026-04-15 
00:52:03.000000000 +0200
+++ new/gpu-screen-recorder-gtk-20260805/src/main.cpp   2026-08-05 
00:36:49.000000000 +0200
@@ -101,9 +101,11 @@
 static GtkWidget *record_app_audio_inverted_button;
 static GtkWidget *split_audio_button;
 static GtkFrame *notifications_frame;
+static GtkFrame *general_frame;
 static GtkWidget *show_recording_started_notification_button;
 static GtkWidget *show_recording_stopped_notification_button;
 static GtkWidget *show_recording_saved_notification_button;
+static GtkWidget *exclude_metadata_button;
 static GtkWidget *record_cursor_button;
 static GtkWidget *restore_portal_session_button;
 static GtkGrid *audio_devices_grid;
@@ -115,8 +117,6 @@
 static GtkGrid *framerate_mode_grid;
 static GtkGrid *video_bitrate_grid;
 static GtkComboBoxText *view_combo_box;
-static GtkGrid *overclock_grid;
-static GtkWidget *overclock_button;
 static GtkGrid *recording_bottom_panel_grid;
 static GtkWidget *recording_record_time_label;
 static GtkWidget *recording_record_icon;
@@ -266,7 +266,8 @@
     AMD,
     INTEL,
     NVIDIA,
-    BROADCOM
+    BROADCOM,
+    APPLE
 };
 
 struct GpuInfo {
@@ -930,10 +931,10 @@
     config.main_config.audio_codec = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(audio_codec_input_menu));
     config.main_config.framerate_mode = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(framerate_mode_input_menu));
     config.main_config.advanced_view = 
strcmp(gtk_combo_box_get_active_id(GTK_COMBO_BOX(view_combo_box)), "advanced") 
== 0;
-    config.main_config.overclock = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(overclock_button));
     config.main_config.show_recording_started_notifications = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(show_recording_started_notification_button));
     config.main_config.show_recording_stopped_notifications = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(show_recording_stopped_notification_button));
     config.main_config.show_recording_saved_notifications = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(show_recording_saved_notification_button));
+    config.main_config.exclude_metadata = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(exclude_metadata_button));
     config.main_config.record_cursor = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(record_cursor_button));
     config.main_config.hide_window_when_recording = 
gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(hide_window_when_recording_menu_item));
     config.main_config.restore_portal_session = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(restore_portal_session_button));
@@ -1872,6 +1873,7 @@
     const gchar* quality_input_str = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(quality_input_menu));
     const gchar* audio_codec_input_str = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(audio_codec_input_menu));
     const gchar* framerate_mode_input_str = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(framerate_mode_input_menu));
+    const bool exclude_metadata = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(exclude_metadata_button));
     const bool record_cursor = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(record_cursor_button));
     const bool restore_portal_session = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(restore_portal_session_button));
     const std::string video_bitrate_str = 
std::to_string(gtk_spin_button_get_value_as_int(video_bitrate_entry));
@@ -1900,10 +1902,12 @@
         "gpu-screen-recorder", "-w", window_str.c_str(), "-c", container_str, 
"-k", video_codec_input_str.c_str(), "-ac", audio_codec_input_str, "-f", 
fps_str.c_str(), "-cursor", record_cursor ? "yes" : "no", 
"-restore-portal-session", restore_portal_session ? "yes" : "no", "-cr", 
color_range_input_str, "-r", replay_time_str.c_str(), "-encoder", encoder, 
"-o", dir
     };
 
-    add_quality_command_line_args(args, quality_input_str, 
video_bitrate_str.c_str());
+    if(exclude_metadata) {
+        args.push_back("-exclude-metadata");
+        args.push_back("yes");
+    }
 
-    if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(overclock_button)))
-        args.insert(args.end(), { "-oc", "yes" });
+    add_quality_command_line_args(args, quality_input_str, 
video_bitrate_str.c_str());
 
     if(strcmp(framerate_mode_input_str, "auto") != 0)
         args.insert(args.end(), { "-fm", framerate_mode_input_str });
@@ -2070,6 +2074,7 @@
     const gchar* quality_input_str = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(quality_input_menu));
     const gchar* audio_codec_input_str = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(audio_codec_input_menu));
     const gchar* framerate_mode_input_str = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(framerate_mode_input_menu));
+    const bool exclude_metadata = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(exclude_metadata_button));
     const bool record_cursor = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(record_cursor_button));
     const bool restore_portal_session = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(restore_portal_session_button));
     const std::string video_bitrate_str = 
std::to_string(gtk_spin_button_get_value_as_int(video_bitrate_entry));
@@ -2108,10 +2113,12 @@
         "gpu-screen-recorder", "-w", window_str.c_str(), "-c", container_str, 
"-k", video_codec_input_str.c_str(), "-ac", audio_codec_input_str, "-f", 
fps_str.c_str(), "-cursor", record_cursor ? "yes" : "no", 
"-restore-portal-session", restore_portal_session ? "yes" : "no", "-cr", 
color_range_input_str, "-encoder", encoder, "-o", 
record_file_current_filename.c_str()
     };
 
-    add_quality_command_line_args(args, quality_input_str, 
video_bitrate_str.c_str());
+    if(exclude_metadata) {
+        args.push_back("-exclude-metadata");
+        args.push_back("yes");
+    }
 
-    if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(overclock_button)))
-        args.insert(args.end(), { "-oc", "yes" });
+    add_quality_command_line_args(args, quality_input_str, 
video_bitrate_str.c_str());
 
     if(strcmp(framerate_mode_input_str, "auto") != 0)
         args.insert(args.end(), { "-fm", framerate_mode_input_str });
@@ -2262,6 +2269,7 @@
     const gchar* color_range_input_str = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(color_range_input_menu));
     const gchar* audio_codec_input_str = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(audio_codec_input_menu));
     const gchar* framerate_mode_input_str = 
gtk_combo_box_get_active_id(GTK_COMBO_BOX(framerate_mode_input_menu));
+    const bool exclude_metadata = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(exclude_metadata_button));
     const bool record_cursor = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(record_cursor_button));
     const bool restore_portal_session = 
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(restore_portal_session_button));
     const std::string video_bitrate_str = 
std::to_string(gtk_spin_button_get_value_as_int(video_bitrate_entry));
@@ -2290,10 +2298,12 @@
         "gpu-screen-recorder", "-w", window_str.c_str(), "-c", container_str, 
"-k", video_codec_input_str.c_str(), "-ac", audio_codec_input_str, "-f", 
fps_str.c_str(), "-cursor", record_cursor ? "yes" : "no", 
"-restore-portal-session", restore_portal_session ? "yes" : "no", "-cr", 
color_range_input_str, "-encoder", encoder, "-o", stream_url.c_str()
     };
 
-    add_quality_command_line_args(args, quality_input_str, 
video_bitrate_str.c_str());
+    if(exclude_metadata) {
+        args.push_back("-exclude-metadata");
+        args.push_back("yes");
+    }
 
-    if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(overclock_button)))
-        args.insert(args.end(), { "-oc", "yes" });
+    add_quality_command_line_args(args, quality_input_str, 
video_bitrate_str.c_str());
 
     if(strcmp(framerate_mode_input_str, "auto") != 0)
         args.insert(args.end(), { "-fm", framerate_mode_input_str });
@@ -2398,8 +2408,8 @@
     gtk_widget_set_visible(GTK_WIDGET(video_codec_grid), advanced_view);
     gtk_widget_set_visible(GTK_WIDGET(audio_codec_grid), advanced_view);
     gtk_widget_set_visible(GTK_WIDGET(framerate_mode_grid), advanced_view);
-    gtk_widget_set_visible(GTK_WIDGET(overclock_grid), advanced_view && 
gsr_info.gpu_info.vendor == GpuVendor::NVIDIA && 
gsr_info.system_info.display_server != DisplayServer::WAYLAND);
     gtk_widget_set_visible(GTK_WIDGET(notifications_frame), advanced_view);
+    gtk_widget_set_visible(GTK_WIDGET(general_frame), advanced_view);
     gtk_widget_set_visible(GTK_WIDGET(split_audio_button), advanced_view);
 }
 
@@ -2663,6 +2673,8 @@
             _gsr_info->gpu_info.vendor = GpuVendor::NVIDIA;
         else if(attribute_value == "broadcom")
             _gsr_info->gpu_info.vendor = GpuVendor::BROADCOM;
+        else if(attribute_value == "apple")
+            _gsr_info->gpu_info.vendor = GpuVendor::APPLE;
     }
 }
 
@@ -2953,6 +2965,7 @@
     int audio_input_area_row = 0;
     int video_input_area_row = 0;
     int notifications_area_row = 0;
+    int general_area_row = 0;
 
     GtkGrid *simple_advanced_grid = GTK_GRID(gtk_grid_new());
     gtk_grid_set_column_spacing(simple_advanced_grid, 10);
@@ -3070,7 +3083,7 @@
 
     if(gsr_info.system_info.display_server == DisplayServer::WAYLAND) {
         gtk_list_store_append(store, &iter);
-        gtk_list_store_set(store, &iter, 0, 
gsr_info.supported_capture_options.portal ? "Desktop portal (HDR not 
supported)" : "Desktop portal (Not available on your system)", -1);
+        gtk_list_store_set(store, &iter, 0, 
gsr_info.supported_capture_options.portal ? "Desktop portal" : "Desktop portal 
(Not available on your system)", -1);
         gtk_list_store_set(store, &iter, 1, "portal", -1);
     } else {
         gtk_list_store_append(store, &iter);
@@ -3382,38 +3395,11 @@
     gtk_combo_box_text_append(framerate_mode_input_menu, "auto", "Auto 
(Recommended)");
     gtk_combo_box_text_append(framerate_mode_input_menu, "cfr", "Constant");
     gtk_combo_box_text_append(framerate_mode_input_menu, "vfr", "Variable");
+    gtk_combo_box_text_append(framerate_mode_input_menu, "content", "Sync to 
content (Only X11 or desktop portal capture)");
     gtk_widget_set_hexpand(GTK_WIDGET(framerate_mode_input_menu), true);
     gtk_grid_attach(framerate_mode_grid, 
GTK_WIDGET(framerate_mode_input_menu), 1, 0, 1, 1);
     gtk_combo_box_set_active(GTK_COMBO_BOX(framerate_mode_input_menu), 0);
 
-    overclock_grid = GTK_GRID(gtk_grid_new());
-    gtk_grid_attach(video_grid, GTK_WIDGET(overclock_grid), 0, 
video_input_area_row++, 2, 1);
-    overclock_button = gtk_check_button_new_with_label("Overclock memory 
transfer rate to workaround NVIDIA driver performance bug");
-    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(overclock_button), false);
-    gtk_widget_set_halign(overclock_button, GTK_ALIGN_START);
-    gtk_grid_attach(overclock_grid, overclock_button, 0, 0, 1, 1);
-    GtkButton *overclock_info_button = 
GTK_BUTTON(gtk_button_new_with_label("?"));
-    gtk_grid_attach(overclock_grid, GTK_WIDGET(overclock_info_button), 1, 0, 
1, 1);
-
-    g_signal_connect(overclock_info_button, "clicked", 
G_CALLBACK(+[](GtkButton *button, gpointer userdata){
-        (void)button;
-        (void)userdata;
-        GtkWidget *dialog = 
gtk_message_dialog_new_with_markup(GTK_WINDOW(window), 
GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
-            "NVIDIA driver has a \"feature\" (read: bug) where it will 
downclock memory transfer rate when a program uses CUDA, such as GPU Screen 
Recorder.\n"
-            "To work around this bug, GPU Screen Recorder can overclock your 
GPU memory transfer rate to it's normal optimal level. To enable overclocking 
for optimal performance enable the \"Overclock memory transfer rate to 
workaround NVIDIA driver performance bug\" option.\n"
-            "You also need to have \"Coolbits\" NVIDIA X setting set to \"12\" 
to enable overclocking.\n"
-            "You can set coolbits by running \"sudo nvidia-xconfig 
--cool-bits=12\" and then rebooting.\n"
-            "\n"
-            "Note that this only works when Xorg server is running as root.\n"
-            "\n"
-            "Note! use at your own risk!");
-        set_dialog_selectable(dialog);
-        gtk_dialog_run(GTK_DIALOG(dialog));
-        gtk_widget_destroy(dialog);
-
-        return true;
-    }), nullptr);
-
     record_cursor_button = gtk_check_button_new_with_label("Record cursor");
     gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(record_cursor_button), 
true);
     gtk_widget_set_halign(record_cursor_button, GTK_ALIGN_START);
@@ -3445,6 +3431,22 @@
     gtk_widget_set_halign(show_recording_saved_notification_button, 
GTK_ALIGN_START);
     gtk_grid_attach(notifications_grid, 
show_recording_saved_notification_button, 0, notifications_area_row++, 2, 1);
 
+    general_frame = GTK_FRAME(gtk_frame_new("General"));
+    gtk_grid_attach(grid, GTK_WIDGET(general_frame), 0, grid_row++, 2, 1);
+
+    GtkGrid *general_grid = GTK_GRID(gtk_grid_new());
+    gtk_widget_set_vexpand(GTK_WIDGET(general_grid), false);
+    gtk_widget_set_hexpand(GTK_WIDGET(general_grid), true);
+    gtk_grid_set_row_spacing(general_grid, 10);
+    gtk_grid_set_column_spacing(general_grid, 10);
+    gtk_widget_set_margin(GTK_WIDGET(general_grid), 10, 10, 10, 10);
+    gtk_container_add(GTK_CONTAINER(general_frame), GTK_WIDGET(general_grid));
+
+    exclude_metadata_button = gtk_check_button_new_with_label("Exclude 
personal metadata from the video (such as audio track title)");
+    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(exclude_metadata_button), 
false);
+    gtk_widget_set_halign(exclude_metadata_button, GTK_ALIGN_START);
+    gtk_grid_attach(general_grid, exclude_metadata_button, 0, 
general_area_row++, 2, 1);
+
     GtkGrid *start_button_grid = GTK_GRID(gtk_grid_new());
     gtk_grid_attach(main_grid, GTK_WIDGET(start_button_grid), 0, 
main_grid_row++, 2, 1);
     gtk_grid_set_column_spacing(start_button_grid, 10);
@@ -4216,10 +4218,10 @@
     video_codec_selection_menu_set_active_id(config.main_config.codec.c_str());
     gtk_combo_box_set_active_id(GTK_COMBO_BOX(audio_codec_input_menu), 
config.main_config.audio_codec.c_str());
     gtk_combo_box_set_active_id(GTK_COMBO_BOX(framerate_mode_input_menu), 
config.main_config.framerate_mode.c_str());
-    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(overclock_button), 
config.main_config.overclock);
     
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(show_recording_started_notification_button),
 config.main_config.show_recording_started_notifications);
     
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(show_recording_stopped_notification_button),
 config.main_config.show_recording_stopped_notifications);
     
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(show_recording_saved_notification_button),
 config.main_config.show_recording_saved_notifications);
+    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(exclude_metadata_button), 
config.main_config.exclude_metadata);
     gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(record_cursor_button), 
config.main_config.record_cursor);
     
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(hide_window_when_recording_menu_item),
 config.main_config.hide_window_when_recording);
     
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(restore_portal_session_button), 
config.main_config.restore_portal_session);
@@ -4319,6 +4321,7 @@
         case GpuVendor::INTEL:    return "Intel";
         case GpuVendor::NVIDIA:   return "NVIDIA";
         case GpuVendor::BROADCOM: return "Broadcom";
+        case GpuVendor::APPLE:    return "Apple";
     }
     return "";
 }

Reply via email to