X-Git-Url: https://www.fi.muni.cz/~kas/git//home/kas/public_html/git/?a=blobdiff_plain;ds=inline;f=libview%2Fev-loading-window.c;h=4d5eaaf1407f4ee129bc18940d7c906790dc67db;hb=d6a02d14c7ae7e3f3a01d2d025324889bedf2275;hp=6c60c344db920b6f35fb6222f65c8c504030fb10;hpb=cc49d17cb3597257bb0d8dc1038de835fe330aa0;p=evince.git diff --git a/libview/ev-loading-window.c b/libview/ev-loading-window.c index 6c60c344..4d5eaaf1 100644 --- a/libview/ev-loading-window.c +++ b/libview/ev-loading-window.c @@ -95,11 +95,9 @@ ev_loading_window_init (EvLoadingWindow *window) gtk_container_set_border_width (GTK_CONTAINER (window), 10); + gtk_window_set_type_hint (gtk_window, GDK_WINDOW_TYPE_HINT_NOTIFICATION); gtk_window_set_accept_focus (gtk_window, FALSE); - gtk_window_set_focus_on_map (gtk_window, FALSE); gtk_window_set_decorated (gtk_window, FALSE); - gtk_window_set_skip_taskbar_hint (gtk_window, TRUE); - gtk_window_set_skip_pager_hint (gtk_window, TRUE); gtk_window_set_resizable (gtk_window, FALSE); style = gtk_widget_get_style (widget); @@ -179,7 +177,8 @@ ev_loading_window_size_allocate (GtkWidget *widget, GtkAllocation *allocation) { EvLoadingWindow *window = EV_LOADING_WINDOW (widget); - GdkPixmap *mask; + cairo_surface_t *surface; + cairo_region_t *shape; cairo_t *cr; double r; @@ -191,8 +190,10 @@ ev_loading_window_size_allocate (GtkWidget *widget, window->width = allocation->width; window->height = allocation->height; - mask = gdk_pixmap_new (NULL, window->width, window->height, 1); - cr = gdk_cairo_create (GDK_DRAWABLE (mask)); + surface = cairo_image_surface_create (CAIRO_FORMAT_A8, + window->width, + window->height); + cr = cairo_create (surface); cairo_save (cr); cairo_rectangle (cr, 0, 0, window->width, window->height); @@ -207,8 +208,11 @@ ev_loading_window_size_allocate (GtkWidget *widget, cairo_destroy (cr); - gtk_widget_shape_combine_mask (widget, mask, 0, 0); - g_object_unref (mask); + shape = gdk_cairo_region_create_from_surface (surface); + cairo_surface_destroy (surface); + + gtk_widget_shape_combine_region (widget, shape); + cairo_region_destroy (shape); } static void