diff options
-rw-r--r-- | configure.in | 10 | ||||
-rw-r--r-- | distro/archlinux/PKGBUILD | 3 | ||||
-rw-r--r-- | libmate-desktop/libmate/mate-desktop-item.h | 4 | ||||
-rw-r--r-- | libmate-desktop/libmate/mate-desktop-utils.h | 4 | ||||
-rw-r--r-- | libmate-desktop/libmateui/mate-bg.h | 4 | ||||
-rw-r--r-- | libmate-desktop/libmateui/mate-desktop-thumbnail.h | 4 | ||||
-rw-r--r-- | libmate-desktop/libmateui/mate-rr-config.h | 4 | ||||
-rw-r--r-- | libmate-desktop/libmateui/mate-rr-labeler.h | 4 | ||||
-rw-r--r-- | libmate-desktop/libmateui/mate-rr.h | 4 | ||||
-rw-r--r-- | mate-about/Makefile.am | 3 | ||||
-rw-r--r-- | mate-about/gnu-cat.gif | bin | 0 -> 7385 bytes | |||
-rw-r--r-- | mate-about/gnu-cat_navideno_v3.png | bin | 0 -> 1354 bytes | |||
-rw-r--r-- | mate-about/mate-about.c | 85 |
13 files changed, 112 insertions, 17 deletions
diff --git a/configure.in b/configure.in index 8dfb4dd..30c2991 100644 --- a/configure.in +++ b/configure.in @@ -230,6 +230,14 @@ AC_SUBST(GETTEXT_PACKAGE) AM_GLIB_GNU_GETTEXT +AC_ARG_ENABLE([gnucat], + [AS_HELP_STRING([--disable-gnucat], [disable the use of gnu cat as logo])], + [], [enable_gnucat=yes]) + +if test "x$enable_gnucat" = "xno"; then + MATE_ABOUT_CFLAGS="$MATE_ABOUT_CFLAGS -DDISABLE_GNUCAT=1" +fi + dnl ============================================================================ dnl | se comprueba unique dnl | de lo contrario, se intenta utilizar libunique @@ -276,6 +284,8 @@ if test "x$enable_rebuilds" = "xyes" && \ fi AC_SUBST(REBUILD) +AC_SEARCH_LIBS([sqrt], [m]) + # check for gtk-doc GTK_DOC_CHECK([1.4]) diff --git a/distro/archlinux/PKGBUILD b/distro/archlinux/PKGBUILD index 3978481..fd7a1ba 100644 --- a/distro/archlinux/PKGBUILD +++ b/distro/archlinux/PKGBUILD @@ -22,7 +22,8 @@ build() { --disable-static \ --disable-scrollkeeper \ --disable-startup-notification \ - --enable-unique || return 1 + --enable-unique \ + --disable-gnucat || return 1 # --with-gtk=3.0 make || return 1 } diff --git a/libmate-desktop/libmate/mate-desktop-item.h b/libmate-desktop/libmate/mate-desktop-item.h index 683db13..2f9ff9b 100644 --- a/libmate-desktop/libmate/mate-desktop-item.h +++ b/libmate-desktop/libmate/mate-desktop-item.h @@ -19,8 +19,8 @@ You should have received a copy of the GNU Library General Public License along with the Mate Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + Boston, MA 02110-1301, USA. */ /* @NOTATION@ */ diff --git a/libmate-desktop/libmate/mate-desktop-utils.h b/libmate-desktop/libmate/mate-desktop-utils.h index f3904ba..f2e659f 100644 --- a/libmate-desktop/libmate/mate-desktop-utils.h +++ b/libmate-desktop/libmate/mate-desktop-utils.h @@ -18,8 +18,8 @@ You should have received a copy of the GNU Library General Public License along with the Mate Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + Boston, MA 02110-1301, USA. */ /* @NOTATION@ */ diff --git a/libmate-desktop/libmateui/mate-bg.h b/libmate-desktop/libmateui/mate-bg.h index 6b7539e..279842c 100644 --- a/libmate-desktop/libmateui/mate-bg.h +++ b/libmate-desktop/libmateui/mate-bg.h @@ -16,8 +16,8 @@ You should have received a copy of the GNU Library General Public License along with the Mate Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. + write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + Boston, MA 02110-1301, USA. Author: Soren Sandmann <[email protected]> */ diff --git a/libmate-desktop/libmateui/mate-desktop-thumbnail.h b/libmate-desktop/libmateui/mate-desktop-thumbnail.h index cc59a10..775348b 100644 --- a/libmate-desktop/libmateui/mate-desktop-thumbnail.h +++ b/libmate-desktop/libmateui/mate-desktop-thumbnail.h @@ -17,8 +17,8 @@ * * You should have received a copy of the GNU Library General Public * License along with the Mate Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. * * Author: Alexander Larsson <[email protected]> */ diff --git a/libmate-desktop/libmateui/mate-rr-config.h b/libmate-desktop/libmateui/mate-rr-config.h index 1ed31c8..039da01 100644 --- a/libmate-desktop/libmateui/mate-rr-config.h +++ b/libmate-desktop/libmateui/mate-rr-config.h @@ -16,8 +16,8 @@ * * You should have received a copy of the GNU Library General Public * License along with the Mate Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. * * Author: Soren Sandmann <[email protected]> */ diff --git a/libmate-desktop/libmateui/mate-rr-labeler.h b/libmate-desktop/libmateui/mate-rr-labeler.h index 0bcbe71..1b18ae7 100644 --- a/libmate-desktop/libmateui/mate-rr-labeler.h +++ b/libmate-desktop/libmateui/mate-rr-labeler.h @@ -17,8 +17,8 @@ * * You should have received a copy of the GNU Library General Public * License along with the Mate Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. * * Author: Federico Mena-Quintero <[email protected]> */ diff --git a/libmate-desktop/libmateui/mate-rr.h b/libmate-desktop/libmateui/mate-rr.h index ab780e0..3559560 100644 --- a/libmate-desktop/libmateui/mate-rr.h +++ b/libmate-desktop/libmateui/mate-rr.h @@ -16,8 +16,8 @@ * * You should have received a copy of the GNU Library General Public * License along with the Mate Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. * * Author: Soren Sandmann <[email protected]> */ diff --git a/mate-about/Makefile.am b/mate-about/Makefile.am index e6aae48..314b870 100644 --- a/mate-about/Makefile.am +++ b/mate-about/Makefile.am @@ -11,6 +11,9 @@ INCLUDES = \ @INTLTOOL_DESKTOP_RULE@ +pixmapdir = $(datadir)/pixmaps +pixmap_DATA = gnu-cat_navideno_v3.png gnu-cat.gif + desktopdir = $(datadir)/applications desktop_in_files = mate-about.desktop.in desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) diff --git a/mate-about/gnu-cat.gif b/mate-about/gnu-cat.gif Binary files differnew file mode 100644 index 0000000..e2af35f --- /dev/null +++ b/mate-about/gnu-cat.gif diff --git a/mate-about/gnu-cat_navideno_v3.png b/mate-about/gnu-cat_navideno_v3.png Binary files differnew file mode 100644 index 0000000..802f89f --- /dev/null +++ b/mate-about/gnu-cat_navideno_v3.png diff --git a/mate-about/mate-about.c b/mate-about/mate-about.c index 9dea770..9626542 100644 --- a/mate-about/mate-about.c +++ b/mate-about/mate-about.c @@ -34,6 +34,37 @@ //class mate_about //{ + // what a mess! + #ifndef DISABLE_GNUCAT + + // Thanks! http://www.gtkforums.com/viewtopic.php?t=1639 + typedef struct _iter_arg { + GtkWidget* widget; + GdkPixbufAnimation* animation; + GdkPixbufAnimationIter* iter; + } iter_arg_t; + + gboolean on_animation_frame(iter_arg_t* object) + { + if (object->widget == NULL) + { + return FALSE; + } + + static gint frame = 1; + + if (gdk_pixbuf_animation_iter_advance(object->iter, NULL)) + { + frame++; + + gtk_about_dialog_set_logo((GtkAboutDialog*) object->widget, gdk_pixbuf_animation_iter_get_pixbuf(object->iter)); + } + + return TRUE; + } + + #endif + #if GTK_CHECK_VERSION(3, 0, 0) && !defined(UNIQUE) static void mate_about_on_activate(GtkApplication* app) @@ -76,8 +107,58 @@ gtk_window_set_default_icon_name(icon); - /* logo */ - #if GTK_CHECK_VERSION(3, 0, 0) || GTK_CHECK_VERSION(2, 6, 0) + #ifndef DISABLE_GNUCAT + + /* hacemos una comprovacion de la fecha, para mostrar el gnucat + * version navideƱa. */ + gboolean christmas_is = FALSE; + + GDate* d = g_date_new(); + g_date_set_time_t(d, (time_t) time(NULL)); + + if (g_date_get_month(d) == G_DATE_DECEMBER) + { + GDateDay day = g_date_get_day(d); + + if (day >= 24 && day <=25) + { + christmas_is = TRUE; + } + } + + g_date_free(d); + + + if (christmas_is == TRUE) + { + GdkPixbuf* pixbuf = gdk_pixbuf_new_from_file(PIXMAPS_DIR "gnu-cat_navideno_v3.png", NULL); + gtk_about_dialog_set_logo(mate_about_dialog, pixbuf); + g_object_unref(pixbuf); + } + else + { + iter_arg_t animation_object; + GdkPixbufAnimation* animation; + GdkPixbufAnimationIter *iter; + GtkWidget* image; + + animation = gdk_pixbuf_animation_new_from_file(PIXMAPS_DIR "gnu-cat.gif", NULL); + + if (animation != NULL) + { + iter = gdk_pixbuf_animation_get_iter(animation, NULL); + + animation_object.animation = animation; + animation_object.iter = iter; + animation_object.widget = (GtkWidget*) mate_about_dialog; + + gtk_about_dialog_set_logo(mate_about_dialog, gdk_pixbuf_animation_iter_get_pixbuf(iter)); + + g_timeout_add(gdk_pixbuf_animation_iter_get_delay_time(iter), (GSourceFunc) on_animation_frame, (gpointer) &animation_object); + } + } + + #elif GTK_CHECK_VERSION(3, 0, 0) || GTK_CHECK_VERSION(2, 6, 0) gtk_about_dialog_set_logo_icon_name(mate_about_dialog, icon); |