mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 03:35:21 +00:00
Added hacky check to make sure we have video to fullscreen, will be removed when the new libgstplay lands.
Original commit message from CVS: Added hacky check to make sure we have video to fullscreen, will be removed when the new libgstplay lands.
This commit is contained in:
parent
4361a3c166
commit
51af47b13a
3 changed files with 74 additions and 64 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
2001-08-15 Arik Devens <arik@gnome.org>
|
||||||
|
|
||||||
|
* gstmediaplay.c (gst_media_play_set_fullscreen): Added a hacky
|
||||||
|
check to determine if we are even playing a video. workaround till
|
||||||
|
the new libgstplay gets here and makes all of this hackishness
|
||||||
|
unnecessary and foolish. ;-)
|
||||||
|
|
||||||
2001-08-15 Arik Devens <arik@gnome.org>
|
2001-08-15 Arik Devens <arik@gnome.org>
|
||||||
|
|
||||||
* main.c (main): Disabled the showing of the playlist till it
|
* main.c (main): Disabled the showing of the playlist till it
|
||||||
|
|
|
@ -514,44 +514,47 @@ gst_media_play_set_fullscreen (GstMediaPlay *mplay)
|
||||||
source_width = gst_play_get_source_width (play);
|
source_width = gst_play_get_source_width (play);
|
||||||
source_height = gst_play_get_source_height (play);
|
source_height = gst_play_get_source_height (play);
|
||||||
|
|
||||||
if (!fullscreen_active) {
|
if (source_width || source_height)
|
||||||
gtk_widget_hide (glade_xml_get_widget (mplay->xml, "dockitem1"));
|
{
|
||||||
gtk_widget_hide (glade_xml_get_widget (mplay->xml, "dockitem2"));
|
if (!fullscreen_active) {
|
||||||
gtk_widget_hide (glade_xml_get_widget (mplay->xml, "dockitem3"));
|
gtk_widget_hide (glade_xml_get_widget (mplay->xml, "dockitem1"));
|
||||||
gtk_widget_hide (glade_xml_get_widget (mplay->xml, "dockitem4"));
|
gtk_widget_hide (glade_xml_get_widget (mplay->xml, "dockitem2"));
|
||||||
gtk_widget_hide (GTK_WIDGET (mplay->status));
|
gtk_widget_hide (glade_xml_get_widget (mplay->xml, "dockitem3"));
|
||||||
|
gtk_widget_hide (glade_xml_get_widget (mplay->xml, "dockitem4"));
|
||||||
|
gtk_widget_hide (GTK_WIDGET (mplay->status));
|
||||||
|
|
||||||
gdk_window_get_origin (gdk_window, &root_x, &root_y);
|
gdk_window_get_origin (gdk_window, &root_x, &root_y);
|
||||||
gdk_window_get_geometry (gdk_window, &client_x, &client_y,
|
gdk_window_get_geometry (gdk_window, &client_x, &client_y,
|
||||||
&width, &height, NULL);
|
&width, &height, NULL);
|
||||||
gdk_window_move (gdk_window, -client_x, -client_y);
|
gdk_window_move (gdk_window, -client_x, -client_y);
|
||||||
gtk_widget_set_usize (video_widget, gdk_screen_width () + 1,
|
gtk_widget_set_usize (video_widget, gdk_screen_width () + 1,
|
||||||
gdk_screen_height () + 1);
|
gdk_screen_height () + 1);
|
||||||
|
|
||||||
mplay->x = root_x - client_x;
|
mplay->x = root_x - client_x;
|
||||||
mplay->y = root_y - client_y;
|
mplay->y = root_y - client_y;
|
||||||
mplay->width = width;
|
mplay->width = width;
|
||||||
mplay->height = height;
|
mplay->height = height;
|
||||||
|
|
||||||
fullscreen_active = TRUE;
|
fullscreen_active = TRUE;
|
||||||
|
|
||||||
mplay->fullscreen_connection_id = gtk_signal_connect (GTK_OBJECT (mplay->window), "key_press_event",
|
mplay->fullscreen_connection_id = gtk_signal_connect (GTK_OBJECT (mplay->window), "key_press_event",
|
||||||
(GtkSignalFunc) fullscreen_key_press_event, mplay);
|
(GtkSignalFunc) fullscreen_key_press_event, mplay);
|
||||||
} else {
|
} else {
|
||||||
gtk_widget_show (glade_xml_get_widget (mplay->xml, "dockitem1"));
|
gtk_widget_show (glade_xml_get_widget (mplay->xml, "dockitem1"));
|
||||||
gtk_widget_show (glade_xml_get_widget (mplay->xml, "dockitem2"));
|
gtk_widget_show (glade_xml_get_widget (mplay->xml, "dockitem2"));
|
||||||
gtk_widget_show (glade_xml_get_widget (mplay->xml, "dockitem3"));
|
gtk_widget_show (glade_xml_get_widget (mplay->xml, "dockitem3"));
|
||||||
gtk_widget_show (glade_xml_get_widget (mplay->xml, "dockitem4"));
|
gtk_widget_show (glade_xml_get_widget (mplay->xml, "dockitem4"));
|
||||||
gtk_widget_show (GTK_WIDGET (mplay->status));
|
gtk_widget_show (GTK_WIDGET (mplay->status));
|
||||||
gtk_widget_queue_resize (glade_xml_get_widget (mplay->xml, "dock1"));
|
gtk_widget_queue_resize (glade_xml_get_widget (mplay->xml, "dock1"));
|
||||||
|
|
||||||
gdk_window_move (gdk_window, mplay->x, mplay->y);
|
gdk_window_move (gdk_window, mplay->x, mplay->y);
|
||||||
gtk_widget_set_usize (video_widget, source_width,
|
gtk_widget_set_usize (video_widget, source_width,
|
||||||
source_height);
|
source_height);
|
||||||
|
|
||||||
gtk_signal_disconnect (GTK_OBJECT (mplay->window), mplay->fullscreen_connection_id);
|
gtk_signal_disconnect (GTK_OBJECT (mplay->window), mplay->fullscreen_connection_id);
|
||||||
|
|
||||||
fullscreen_active = FALSE;
|
fullscreen_active = FALSE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -165,8 +165,8 @@ gst_play_init (GstPlay *play)
|
||||||
priv->bit_rate_element = NULL;
|
priv->bit_rate_element = NULL;
|
||||||
priv->media_time_element = NULL;
|
priv->media_time_element = NULL;
|
||||||
|
|
||||||
priv->source_width = 100;
|
priv->source_width = 0;
|
||||||
priv->source_height = 100;
|
priv->source_height = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
GstPlay *
|
GstPlay *
|
||||||
|
@ -390,19 +390,19 @@ gst_play_set_uri (GstPlay *play, const guchar *uri)
|
||||||
|
|
||||||
/* see if it looks like an URI */
|
/* see if it looks like an URI */
|
||||||
if ((uriloc = strstr (uri, ":/"))) {
|
if ((uriloc = strstr (uri, ":/"))) {
|
||||||
priv->src = gst_elementfactory_make ("gnomevfssrc", "srcelement");
|
priv->src = gst_elementfactory_make ("gnomevfssrc", "srcelement");
|
||||||
|
|
||||||
if (!priv->src) {
|
if (!priv->src) {
|
||||||
if (strstr (uri, "file:/")) {
|
if (strstr (uri, "file:/")) {
|
||||||
uri += strlen ("file:/");
|
uri += strlen ("file:/");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
return GST_PLAY_CANNOT_PLAY;
|
return GST_PLAY_CANNOT_PLAY;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (priv->src == NULL) {
|
if (priv->src == NULL) {
|
||||||
priv->src = gst_elementfactory_make ("disksrc", "srcelement");
|
priv->src = gst_elementfactory_make ("disksrc", "srcelement");
|
||||||
}
|
}
|
||||||
|
|
||||||
priv->uri = g_strdup (uri);
|
priv->uri = g_strdup (uri);
|
||||||
|
@ -417,12 +417,12 @@ gst_play_set_uri (GstPlay *play, const guchar *uri)
|
||||||
g_return_val_if_fail (priv->cache != NULL, GST_PLAY_CANNOT_PLAY);
|
g_return_val_if_fail (priv->cache != NULL, GST_PLAY_CANNOT_PLAY);
|
||||||
|
|
||||||
gtk_signal_connect (GTK_OBJECT (priv->cache), "cache_empty",
|
gtk_signal_connect (GTK_OBJECT (priv->cache), "cache_empty",
|
||||||
GTK_SIGNAL_FUNC (gst_play_cache_empty), play);
|
GTK_SIGNAL_FUNC (gst_play_cache_empty), play);
|
||||||
|
|
||||||
priv->typefind = gst_elementfactory_make ("typefind", "typefind");
|
priv->typefind = gst_elementfactory_make ("typefind", "typefind");
|
||||||
g_return_val_if_fail (priv->typefind != NULL, GST_PLAY_CANNOT_PLAY);
|
g_return_val_if_fail (priv->typefind != NULL, GST_PLAY_CANNOT_PLAY);
|
||||||
gtk_signal_connect (GTK_OBJECT (priv->typefind), "have_type",
|
gtk_signal_connect (GTK_OBJECT (priv->typefind), "have_type",
|
||||||
GTK_SIGNAL_FUNC (gst_play_have_type), play);
|
GTK_SIGNAL_FUNC (gst_play_have_type), play);
|
||||||
|
|
||||||
|
|
||||||
gst_bin_add (GST_BIN (priv->pipeline), priv->src);
|
gst_bin_add (GST_BIN (priv->pipeline), priv->src);
|
||||||
|
|
Loading…
Reference in a new issue