diff options
Diffstat (limited to 'community/xsensors')
-rw-r--r-- | community/xsensors/PKGBUILD | 14 | ||||
-rw-r--r-- | community/xsensors/remove-unused-variables.patch | 39 | ||||
-rw-r--r-- | community/xsensors/replace-deprecated-gtk.patch | 168 |
3 files changed, 216 insertions, 5 deletions
diff --git a/community/xsensors/PKGBUILD b/community/xsensors/PKGBUILD index 012474a55..16a329b5e 100644 --- a/community/xsensors/PKGBUILD +++ b/community/xsensors/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 21366 2010-07-16 09:09:09Z lcarlier $ +# $Id: PKGBUILD 59264 2011-11-22 07:31:16Z lcarlier $ # Maintainer : Laurent Carlier <lordheavym@gmail.com> # Contributor: Ray Rashif <schivmeister@gmail.com> # Contributor: Corrado Primier <bardo@aur.archlinux.org> @@ -6,7 +6,7 @@ pkgname=xsensors pkgver=0.70 -pkgrel=2 +pkgrel=3 pkgdesc="X11 interface to lm_sensors" arch=('i686' 'x86_64') url="http://www.linuxhardware.org/xsensors/" @@ -14,16 +14,20 @@ license=('GPL') depends=('gtk2' 'lm_sensors') changelog=$pkgname.changelog source=(http://www.linuxhardware.org/xsensors/$pkgname-$pkgver.tar.gz - fix-deprecated-GTK_WIDGET_STATE-call.diff + remove-unused-variables.patch + replace-deprecated-gtk.patch xsensors.desktop) md5sums=('4f8fb83cfd03c0cc34967a73c6021531' - 'e5ac8e58f0dd27501234692587c01b76' + '8ca558b7f7e4a5f83f63498668c4ad8f' + 'd9ee6799d45adc7c62273f32085bec5f' 'fe1369d2b61eed1a25002e2247617357') build() { cd ${srcdir}/$pkgname-$pkgver - patch -Np1 -i ${srcdir}/fix-deprecated-GTK_WIDGET_STATE-call.diff + # patches from debian + patch -Np1 -i ${srcdir}/remove-unused-variables.patch + patch -Np1 -i ${srcdir}/replace-deprecated-gtk.patch ./configure --prefix=/usr make diff --git a/community/xsensors/remove-unused-variables.patch b/community/xsensors/remove-unused-variables.patch new file mode 100644 index 000000000..7da97a0e5 --- /dev/null +++ b/community/xsensors/remove-unused-variables.patch @@ -0,0 +1,39 @@ +Author: Nanley Chery <nanleychery@gmail.com> +From: Jean Delvare <khali@linux-fr.org> +Subject: Remove declared, but unused variables +Bug-Debian: http://bugs.debian.org/625435 +--- +--- a/src/gui.c ++++ b/src/gui.c +@@ -257,10 +257,9 @@ + + /* Start the sensor info update timer. */ + gint start_timer( GtkWidget *widget, gpointer data ) { +- gint timer; + + /* Setup timer for updates. */ +- timer = g_timeout_add( update_time * 1000, ++ g_timeout_add( update_time * 1000, + (GtkFunction) update_sensor_data, + (gpointer) data ); + +@@ -287,7 +286,7 @@ + + /* feature data */ + updates *head = NULL; +- updates *current = NULL, *prev = NULL; ++ updates *current = NULL; + + const sensors_feature *feature; + +@@ -347,10 +346,8 @@ + new_node->pbar = featpbar; + + if ( head == NULL ) { +- prev = head; + head = current = new_node; + } else { +- prev = current; + current = current->next = new_node; + } + diff --git a/community/xsensors/replace-deprecated-gtk.patch b/community/xsensors/replace-deprecated-gtk.patch new file mode 100644 index 000000000..fed4c7dc4 --- /dev/null +++ b/community/xsensors/replace-deprecated-gtk.patch @@ -0,0 +1,168 @@ +Author: Nanley Chery <nanleychery@gmail.com> +Subject: Update deprecated gtk casts and replace deprecated function calls with their analogous cairo counterparts. +Bug-Debian: http://bugs.debian.org/622005 +Bug-Debian: http://bugs.debian.org/610321 +--- +--- a/src/gui.c ++++ b/src/gui.c +@@ -27,10 +27,10 @@ + GtkWidget *mainwindow = NULL; + + GdkColor colorWhite = { 0, 0xFFFF, 0xFFFF, 0xFFFF }; +- +-GdkColormap *cmap = NULL; + +-GdkPixmap *theme = NULL; ++GdkPixbuf *theme = NULL; ++ ++cairo_surface_t *surface = NULL; + + /* Destroy the main window. */ + gint destroy_gui( GtkWidget *widget, gpointer data ) { +@@ -76,17 +76,16 @@ + } + } + +-static void draw_digits( GtkWidget *widget, const gchar *digits, int highLow ) ++static void draw_digits( GtkWidget *widget, cairo_t *cr, const gchar *digits, int highLow ) + { + const gchar *digit = digits; + int pos = 0, x = 0, y = 0, w = 0; + + while ( *digit ) { + get_pm_location( *digit, &x, &y, &w ); +- gdk_draw_drawable( widget->window, +- widget->style->fg_gc[ GTK_WIDGET_STATE +- (widget) ], theme, x, y + highLow, +- pos, 0, w, 30 ); ++ cairo_set_source_surface (cr, surface, pos-x, 0-(y + highLow)); ++ cairo_rectangle(cr, pos, 0, w, 30); ++ cairo_fill(cr); + pos += w; + digit++; + } +@@ -102,6 +101,8 @@ + + gchar result[7]; + ++ cairo_t *cr = gdk_cairo_create(widget->window); ++ + #ifdef DEBUG_XSENSORS + printf( "area.width = %d, area.height = %d\n", event->area.width, + event->area.height ); +@@ -117,13 +118,11 @@ + + /* Display the digits */ + if ( g_snprintf( result, 6, "%5.0f", current->curvalue ) >= 0 ) +- draw_digits( widget, result, highLow ); ++ draw_digits( widget, cr, result, highLow ); + + /* Display RPM */ +- gdk_draw_drawable( widget->window, +- widget->style->fg_gc[ GTK_WIDGET_STATE +- (widget) ], theme, 0, 120 + highLow, +- 90, 0, 57, 30 ); ++ cairo_set_source_surface (cr, surface, 90-0, 0-(120 + highLow)); ++ cairo_rectangle(cr, 90, 0, 57, 30); + break; + case TEMP: + if ( current->curvalue > current->curmax ) +@@ -134,17 +133,15 @@ + + /* Display the digits */ + if ( g_snprintf( result, 7, "%6.1f", current->curvalue ) >= 0 ) +- draw_digits( widget, result, highLow ); ++ draw_digits( widget, cr, result, highLow ); + + /* Display degree symbol */ + if ( tf == FALSE ) + x = 0; + else + x = 57; +- gdk_draw_drawable( widget->window, +- widget->style->fg_gc[ GTK_WIDGET_STATE +- (widget) ], theme, x, 60 + highLow, +- 96, 0, 57, 30 ); ++ cairo_set_source_surface (cr, surface, 96-x, 0-(60 + highLow)); ++ cairo_rectangle(cr, 96, 0, 57, 30); + + break; + case VOLT: +@@ -154,20 +151,17 @@ + + /* Display the digits */ + if ( g_snprintf( result, 7, "%6.2f", current->curvalue ) >= 0 ) +- draw_digits( widget, result, highLow ); ++ draw_digits( widget, cr, result, highLow ); + + /* Display V */ +- gdk_draw_drawable( widget->window, +- widget->style->fg_gc[ GTK_WIDGET_STATE +- (widget) ], theme, 114, 60 + highLow, +- 96, 0, 57, 30 ); +- +- ++ cairo_set_source_surface (cr, surface, 96-114, 0-(60 + highLow)); ++ cairo_rectangle(cr, 96, 0, 57, 30); + break; + default: + break; + } +- ++ cairo_fill(cr); ++ cairo_destroy(cr); + return TRUE; + } + +@@ -260,7 +254,7 @@ + + /* Setup timer for updates. */ + g_timeout_add( update_time * 1000, +- (GtkFunction) update_sensor_data, ++ (GSourceFunc) update_sensor_data, + (gpointer) data ); + + return SUCCESS; +@@ -460,8 +454,6 @@ + g_signal_connect( G_OBJECT (mainwindow), "delete_event", + G_CALLBACK (destroy_gui), NULL ); + +- /* Graphics needed for drawing info. */ +- cmap = gtk_widget_get_colormap( mainwindow ); + + /* Set up the image file used for displaying characters. */ + if ( imagefile == NULL ) { +@@ -481,12 +473,10 @@ + "Image file not found in either location! Exiting!\n" ); + exit( 1 ); + } else { +- theme = gdk_pixmap_colormap_create_from_xpm( NULL, cmap, +- NULL, NULL, "./images/default.xpm" ); ++ theme = gdk_pixbuf_new_from_file("./images/default.xpm", NULL ); + } + } else { +- theme = gdk_pixmap_colormap_create_from_xpm( NULL, cmap, +- NULL, NULL, imagefile ); ++ theme = gdk_pixbuf_new_from_file(imagefile, NULL ); + } + } else { + if ( stat( imagefile, &sbuf ) != 0 ) { +@@ -495,11 +485,15 @@ + "Image file not found in specified location! Exiting!\n" ); + exit( 1 ); + } else { +- theme = gdk_pixmap_colormap_create_from_xpm( NULL, cmap, +- NULL, NULL, imagefile ); ++ theme = gdk_pixbuf_new_from_file(imagefile, NULL ); + } + } +- ++ surface = cairo_image_surface_create_for_data(gdk_pixbuf_get_pixels(theme), ++ CAIRO_FORMAT_RGB24, ++ gdk_pixbuf_get_width(theme), ++ gdk_pixbuf_get_height(theme), ++ gdk_pixbuf_get_rowstride(theme)); ++ + /* Create notebook for sensors. */ + notebook = gtk_notebook_new( ); + gtk_widget_modify_bg( notebook, GTK_STATE_NORMAL, &colorWhite ); |