static void render_headword(GtkCellRenderer *cell,
cairo_t *cr,
GtkWidget *widget,
- GdkRectangle *background_area,
+ const GdkRectangle *background_area,
const GdkRectangle *cell_area,
GtkCellRendererState flags);
static void render_headword(GtkCellRenderer *cell,
cairo_t *cr,
GtkWidget *widget,
- GdkRectangle *background_area,
+ const GdkRectangle *background_area,
const GdkRectangle *cell_area,
GtkCellRendererState flags)
{
self->tag = textview_get_link_under_cursor(self, (gint)(event->x), (gint)(event->y));
cursor = gdk_cursor_new(self->tag ? GDK_HAND2 : GDK_LEFT_PTR);
gdk_window_set_cursor(gtk_text_view_get_window(GTK_TEXT_VIEW(self), GTK_TEXT_WINDOW_TEXT), cursor);
- gdk_cursor_unref(cursor);
+ g_object_unref(cursor);
if(self->tag)
g_object_set(G_OBJECT(self->tag), "underline", PANGO_UNDERLINE_SINGLE, NULL);
}
GdkCursor *cursor = gdk_cursor_new(GDK_LEFT_PTR);
TextView *view = TEXTVIEW(widget);
gdk_window_set_cursor(gtk_text_view_get_window(GTK_TEXT_VIEW(widget), GTK_TEXT_WINDOW_TEXT), cursor);
- gdk_cursor_unref(cursor);
+ g_object_unref(cursor);
textview_underline_link(view, NULL);
view->tag = NULL;
return FALSE;
static void video_play_pause(Video *self, gboolean play)
{
- if(self->output->window && self->pipeline)
+ GdkWindow *window = gtk_widget_get_window(self->output);
+ if(window && self->pipeline)
{
- gst_x_overlay_set_xwindow_id(GST_X_OVERLAY(self->sink), GDK_WINDOW_XID(self->output->window));
+ gst_x_overlay_set_xwindow_id(GST_X_OVERLAY(self->sink), GDK_WINDOW_XID(window));
gst_element_set_state(self->pipeline, play ? GST_STATE_PLAYING : GST_STATE_PAUSED);
video_play_pause_set_icon(self, play);
}
GtkWidget *hbox = NULL;
#ifdef ENABLE_GSTREAMER
self->play_btn = NULL;
- GtkWidget *vbox = gtk_vbox_new(FALSE, 0);
+ GtkWidget *vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add(GTK_CONTAINER(self), vbox);
self->output = gtk_drawing_area_new();