Since these part really are the same in all of the x or y direction and we don't blur in that direction we can just blur one line and repeat it during drawing. https://bugzilla.gnome.org/show_bug.cgi?id=746468
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * Copyright (C) 2012 Canonical Ltd
 | 
						|
 *
 | 
						|
 * This  library is free  software; you can  redistribute it and/or
 | 
						|
 * modify it  under  the terms  of the  GNU Lesser  General  Public
 | 
						|
 * License  as published  by the Free  Software  Foundation; either
 | 
						|
 * version 2 of the License, or (at your option) any later version.
 | 
						|
 *
 | 
						|
 * This library is distributed  in the hope that it will be useful,
 | 
						|
 * but  WITHOUT ANY WARRANTY; without even  the implied warranty of
 | 
						|
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 | 
						|
 * Lesser General Public License for more details.
 | 
						|
 *
 | 
						|
 * You should have received a copy of the GNU Lesser General Public
 | 
						|
 * License  along  with  this library;  if not,  write to  the Free
 | 
						|
 * Software Foundation, Inc., 51  Franklin St, Fifth Floor, Boston,
 | 
						|
 * MA 02110-1301, USA.
 | 
						|
 *
 | 
						|
 * Authored by Andrea Cimitan <andrea.cimitan@canonical.com>
 | 
						|
 * Original code from Mirco Mueller <mirco.mueller@canonical.com>
 | 
						|
 *
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef _GTK_CAIRO_BLUR_H
 | 
						|
#define _GTK_CAIRO_BLUR_H
 | 
						|
 | 
						|
#include <glib.h>
 | 
						|
#include <cairo.h>
 | 
						|
 | 
						|
G_BEGIN_DECLS
 | 
						|
 | 
						|
typedef enum {
 | 
						|
  GTK_BLUR_NONE = 0,
 | 
						|
  GTK_BLUR_X = 1<<0,
 | 
						|
  GTK_BLUR_Y = 1<<1,
 | 
						|
  GTK_BLUR_REPEAT = 1<<2
 | 
						|
} GtkBlurFlags;
 | 
						|
 | 
						|
void            _gtk_cairo_blur_surface         (cairo_surface_t *surface,
 | 
						|
                                                 double           radius,
 | 
						|
						 GtkBlurFlags     flags);;
 | 
						|
int             _gtk_cairo_blur_compute_pixels  (double           radius);
 | 
						|
 | 
						|
G_END_DECLS
 | 
						|
 | 
						|
#endif /* _GTK_CAIRO_BLUR_H */
 |