176 lines
8.8 KiB
Plaintext
176 lines
8.8 KiB
Plaintext
$OpenBSD: patch-src_gui_c,v 1.27 2012/05/09 14:19:37 dcoppa Exp $
|
|
|
|
Initialize a variable to NULL
|
|
(upstream svn revision r2243)
|
|
|
|
Fix a couple of keyboard shortcuts as they were in the wrong shift
|
|
state (upstream svn revision r2245)
|
|
|
|
Monitor subtitle visibility better
|
|
(upstream svn revision r2248)
|
|
|
|
Fix button sensitivity based on state
|
|
(upstream svn revision r2239)
|
|
|
|
Add mouse events to capture over the media window
|
|
(upstream svn revision r2247)
|
|
|
|
--- src/gui.c.orig Fri Apr 6 15:19:25 2012
|
|
+++ src/gui.c Wed May 9 15:40:09 2012
|
|
@@ -604,7 +604,7 @@ gboolean set_progress_value(void *data)
|
|
gchar *text;
|
|
struct stat buf = { 0 };
|
|
gchar *iterfilename;
|
|
- gchar *iteruri;
|
|
+ gchar *iteruri = NULL;
|
|
|
|
if (idle == NULL)
|
|
return FALSE;
|
|
@@ -1916,12 +1916,6 @@ gboolean window_key_callback(GtkWidget * widget, GdkEv
|
|
case GDK_bracketright:
|
|
gmtk_media_player_set_attribute_double(GMTK_MEDIA_PLAYER(media), ATTRIBUTE_SPEED_MULTIPLIER, 1.10);
|
|
return FALSE;
|
|
- case GDK_braceleft:
|
|
- gmtk_media_player_set_attribute_double(GMTK_MEDIA_PLAYER(media), ATTRIBUTE_SPEED_MULTIPLIER, 0.50);
|
|
- return FALSE;
|
|
- case GDK_braceright:
|
|
- gmtk_media_player_set_attribute_double(GMTK_MEDIA_PLAYER(media), ATTRIBUTE_SPEED_MULTIPLIER, 2.0);
|
|
- return FALSE;
|
|
case GDK_BackSpace:
|
|
gmtk_media_player_set_attribute_double(GMTK_MEDIA_PLAYER(media), ATTRIBUTE_SPEED_SET, 1.0);
|
|
return FALSE;
|
|
@@ -1941,9 +1935,6 @@ gboolean window_key_callback(GtkWidget * widget, GdkEv
|
|
gtk_range_set_value(GTK_RANGE(vol_slider), gtk_range_get_value(GTK_RANGE(vol_slider)) + 0.01);
|
|
#endif
|
|
return FALSE;
|
|
- case GDK_numbersign:
|
|
- gmtk_media_player_send_command(GMTK_MEDIA_PLAYER(media), COMMAND_SWITCH_AUDIO);
|
|
- return FALSE;
|
|
case GDK_period:
|
|
if (gmtk_media_player_get_state(GMTK_MEDIA_PLAYER(media)) == MEDIA_STATE_PAUSE)
|
|
gmtk_media_player_send_command(GMTK_MEDIA_PLAYER(media), COMMAND_FRAME_STEP);
|
|
@@ -1965,7 +1956,6 @@ gboolean window_key_callback(GtkWidget * widget, GdkEv
|
|
}
|
|
*/
|
|
return FALSE;
|
|
- case GDK_plus:
|
|
case GDK_KP_Add:
|
|
gmtk_media_player_set_attribute_double(GMTK_MEDIA_PLAYER(media), ATTRIBUTE_AUDIO_DELAY,
|
|
gmtk_media_player_get_attribute_double(GMTK_MEDIA_PLAYER(media),
|
|
@@ -2060,6 +2050,21 @@ gboolean window_key_callback(GtkWidget * widget, GdkEv
|
|
case GDK_S:
|
|
gmtk_media_player_send_command(GMTK_MEDIA_PLAYER(media), COMMAND_TAKE_SCREENSHOT);
|
|
return FALSE;
|
|
+ case GDK_numbersign:
|
|
+ gmtk_media_player_send_command(GMTK_MEDIA_PLAYER(media), COMMAND_SWITCH_AUDIO);
|
|
+ return FALSE;
|
|
+ case GDK_plus:
|
|
+ gmtk_media_player_set_attribute_double(GMTK_MEDIA_PLAYER(media), ATTRIBUTE_AUDIO_DELAY,
|
|
+ gmtk_media_player_get_attribute_double(GMTK_MEDIA_PLAYER(media),
|
|
+ ATTRIBUTE_AUDIO_DELAY) + 0.1);
|
|
+
|
|
+ return FALSE;
|
|
+ case GDK_braceleft:
|
|
+ gmtk_media_player_set_attribute_double(GMTK_MEDIA_PLAYER(media), ATTRIBUTE_SPEED_MULTIPLIER, 0.50);
|
|
+ return FALSE;
|
|
+ case GDK_braceright:
|
|
+ gmtk_media_player_set_attribute_double(GMTK_MEDIA_PLAYER(media), ATTRIBUTE_SPEED_MULTIPLIER, 2.0);
|
|
+ return FALSE;
|
|
default:
|
|
gmtk_media_player_send_key_press_event(GMTK_MEDIA_PLAYER(media), event, data);
|
|
return FALSE;
|
|
@@ -6136,6 +6141,9 @@ void player_attribute_changed_callback(GmtkMediaTracke
|
|
gtk_widget_set_sensitive(GTK_WIDGET(menuitem_view_subtitles),
|
|
gmtk_media_player_get_attribute_boolean(GMTK_MEDIA_PLAYER(media),
|
|
ATTRIBUTE_SUBS_EXIST));
|
|
+
|
|
+ break;
|
|
+ case ATTRIBUTE_SUB_VISIBLE:
|
|
gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem_view_subtitles),
|
|
gmtk_media_player_get_attribute_boolean(GMTK_MEDIA_PLAYER(media),
|
|
ATTRIBUTE_SUB_VISIBLE));
|
|
@@ -6358,6 +6366,10 @@ void player_media_state_changed_callback(GtkButton * b
|
|
#endif
|
|
gtk_widget_set_sensitive(ff_event_box, FALSE);
|
|
gtk_widget_set_sensitive(rew_event_box, FALSE);
|
|
+ gtk_widget_set_sensitive(prev_event_box, FALSE);
|
|
+ gtk_widget_set_sensitive(next_event_box, FALSE);
|
|
+ gtk_widget_set_sensitive(stop_event_box, FALSE);
|
|
+
|
|
if (GTK_WIDGET(gtk_widget_get_parent(GTK_WIDGET(menuitem_play))) == GTK_WIDGET(popup_menu))
|
|
gtk_container_remove(GTK_CONTAINER(popup_menu), GTK_WIDGET(menuitem_play));
|
|
menuitem_play = GTK_MENU_ITEM(gtk_image_menu_item_new_from_stock(GTK_STOCK_MEDIA_PLAY, NULL));
|
|
@@ -6381,6 +6393,10 @@ void player_media_state_changed_callback(GtkButton * b
|
|
#endif
|
|
gtk_widget_set_sensitive(ff_event_box, TRUE);
|
|
gtk_widget_set_sensitive(rew_event_box, TRUE);
|
|
+ gtk_widget_set_sensitive(prev_event_box, TRUE);
|
|
+ gtk_widget_set_sensitive(next_event_box, TRUE);
|
|
+ gtk_widget_set_sensitive(stop_event_box, TRUE);
|
|
+
|
|
if (GTK_WIDGET(gtk_widget_get_parent(GTK_WIDGET(menuitem_play))) == GTK_WIDGET(popup_menu))
|
|
gtk_container_remove(GTK_CONTAINER(popup_menu), GTK_WIDGET(menuitem_play));
|
|
menuitem_play = GTK_MENU_ITEM(gtk_image_menu_item_new_from_stock(GTK_STOCK_MEDIA_PAUSE, NULL));
|
|
@@ -6404,6 +6420,10 @@ void player_media_state_changed_callback(GtkButton * b
|
|
#endif
|
|
gtk_widget_set_sensitive(ff_event_box, FALSE);
|
|
gtk_widget_set_sensitive(rew_event_box, FALSE);
|
|
+ gtk_widget_set_sensitive(prev_event_box, FALSE);
|
|
+ gtk_widget_set_sensitive(next_event_box, FALSE);
|
|
+ gtk_widget_set_sensitive(stop_event_box, FALSE);
|
|
+
|
|
if (GTK_WIDGET(gtk_widget_get_parent(GTK_WIDGET(menuitem_play))) == GTK_WIDGET(popup_menu))
|
|
gtk_container_remove(GTK_CONTAINER(popup_menu), GTK_WIDGET(menuitem_play));
|
|
menuitem_play = GTK_MENU_ITEM(gtk_image_menu_item_new_from_stock(GTK_STOCK_MEDIA_PLAY, NULL));
|
|
@@ -7257,6 +7277,9 @@ GtkWidget *create_window(gint windowid)
|
|
hbox = gtk_hbox_new(FALSE, 0);
|
|
controls_box = gtk_vbox_new(FALSE, 0);
|
|
media = gmtk_media_player_new();
|
|
+ gtk_widget_set_events(media, GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK |
|
|
+ GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK |
|
|
+ GDK_POINTER_MOTION_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_ENTER_NOTIFY_MASK);
|
|
g_signal_connect_swapped(G_OBJECT(media), "media_state_changed",
|
|
G_CALLBACK(player_media_state_changed_callback), NULL);
|
|
g_signal_connect_swapped(G_OBJECT(media), "button_press_event", G_CALLBACK(popup_handler), G_OBJECT(popup_menu));
|
|
@@ -7407,6 +7430,7 @@ GtkWidget *create_window(gint windowid)
|
|
gtk_box_pack_start(GTK_BOX(hbox), prev_event_box, FALSE, FALSE, 0);
|
|
gtk_widget_show(image_prev);
|
|
gtk_widget_show(prev_event_box);
|
|
+ gtk_widget_set_sensitive (prev_event_box, FALSE);
|
|
|
|
rew_event_box = gtk_button_new();
|
|
gtk_button_set_image(GTK_BUTTON(rew_event_box), image_rew);
|
|
@@ -7427,6 +7451,7 @@ GtkWidget *create_window(gint windowid)
|
|
gtk_box_pack_start(GTK_BOX(hbox), rew_event_box, FALSE, FALSE, 0);
|
|
gtk_widget_show(image_rew);
|
|
gtk_widget_show(rew_event_box);
|
|
+ gtk_widget_set_sensitive (rew_event_box, FALSE);
|
|
|
|
play_event_box = gtk_button_new();
|
|
gtk_button_set_image(GTK_BUTTON(play_event_box), image_play);
|
|
@@ -7467,6 +7492,7 @@ GtkWidget *create_window(gint windowid)
|
|
gtk_box_pack_start(GTK_BOX(hbox), stop_event_box, FALSE, FALSE, 0);
|
|
gtk_widget_show(image_stop);
|
|
gtk_widget_show(stop_event_box);
|
|
+ gtk_widget_set_sensitive (stop_event_box, FALSE);
|
|
|
|
ff_event_box = gtk_button_new();
|
|
gtk_button_set_image(GTK_BUTTON(ff_event_box), image_ff);
|
|
@@ -7487,6 +7513,7 @@ GtkWidget *create_window(gint windowid)
|
|
gtk_box_pack_start(GTK_BOX(hbox), ff_event_box, FALSE, FALSE, 0);
|
|
gtk_widget_show(image_ff);
|
|
gtk_widget_show(ff_event_box);
|
|
+ gtk_widget_set_sensitive (ff_event_box, FALSE);
|
|
|
|
next_event_box = gtk_button_new();
|
|
gtk_button_set_image(GTK_BUTTON(next_event_box), image_next);
|
|
@@ -7507,6 +7534,8 @@ GtkWidget *create_window(gint windowid)
|
|
gtk_box_pack_start(GTK_BOX(hbox), next_event_box, FALSE, FALSE, 0);
|
|
gtk_widget_show(image_next);
|
|
gtk_widget_show(next_event_box);
|
|
+ gtk_widget_set_sensitive (next_event_box, FALSE);
|
|
+
|
|
// progress bar
|
|
tracker = GMTK_MEDIA_TRACKER(gmtk_media_tracker_new());
|
|
gtk_box_pack_start(GTK_BOX(hbox), GTK_WIDGET(tracker), TRUE, TRUE, 2);
|