Hello community,
here is the log from the commit of package vte for openSUSE:Factory
checked in at Fri May 14 00:25:13 CEST 2010.
--------
--- GNOME/vte/vte.changes 2010-04-26 17:32:13.000000000 +0200
+++ /mounts/work_src_done/STABLE/vte/vte.changes 2010-05-06 23:43:52.000000000 +0200
@@ -1,0 +2,11 @@
+Thu Apr 29 20:34:42 CEST 2010 - dimstar@opensuse.org
+
+- Update to version 0.24.1:
+ + bgo#613525: current git head does not build (undefined
+ reference to XGetGeometry)
+ + bgo#614469: Does no longer compile with -DX_DISPLAY_MISSING
+ + bgo#615417: Reversed and one error saturation level in 0.24.0
+- Drop vte-0.24.0-no-transparent-background-bnc594590.patch,
+ merged a more complete patch.
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
vte-0.24.0-no-transparent-background-bnc594590.patch
vte-0.24.0.tar.bz2
New:
----
vte-0.24.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ vte.spec ++++++
--- /var/tmp/diff_new_pack.ECEl9f/_old 2010-05-14 00:25:00.000000000 +0200
+++ /var/tmp/diff_new_pack.ECEl9f/_new 2010-05-14 00:25:00.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package vte (Version 0.24.0)
+# spec file for package vte (Version 0.24.1)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -31,13 +31,10 @@
License: GPLv2+
Group: Development/Libraries/GNOME
AutoReqProv: on
-Version: 0.24.0
-Release: 2
+Version: 0.24.1
+Release: 1
Summary: Terminal Emulator
Source: ftp://ftp.gnome.org/pub/gnome/sources/vte/0.16/%{name}-%{version}.tar.bz2
-# PATCH-FIX-UPSTREAM vte-0.24.0-no-transparent-background-bnc594590.patch bnc594590 bgo#615232
-# tetralet@gmail.com -- Fix segfaults if transparent background is not set
-Patch0: %name-0.24.0-no-transparent-background-bnc594590.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: permissions
Requires: %{name}-lang = %{version}
@@ -64,7 +61,6 @@
%lang_package
%prep
%setup -q
-%patch0 -p1
translation-update-upstream
%build
++++++ vte-0.24.0.tar.bz2 -> vte-0.24.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/ChangeLog new/vte-0.24.1/ChangeLog
--- old/vte-0.24.0/ChangeLog 2010-03-29 15:15:26.000000000 +0200
+++ new/vte-0.24.1/ChangeLog 2010-04-26 13:27:04.000000000 +0200
@@ -1,3 +1,63 @@
+commit 10430cbf79306a3f7dc11798e5146b33c0c05448
+Author: Christian Persch
+Date: Mon Apr 26 13:16:16 2010 +0200
+
+ Version 0.24.1
+
+ NEWS | 5 +++++
+ configure.in | 4 ++--
+ 2 files changed, 7 insertions(+), 2 deletions(-)
+
+commit d86f723c76212eabd22c0622072f6f0cb9b733d1
+Author: Christian Persch
+Date: Sat Apr 10 01:42:24 2010 +0200
+
+ We also depend on cairo-xlib on gdk-x11
+ (cherry picked from commit 39b7a1f74dc7044d1fd6cd9df7abceffa7e99349)
+
+ configure.in | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+commit ac9813af66c110fae31db02114a7904cdf9547e5
+Author: Christian Persch
+Date: Tue Apr 20 11:59:28 2010 +0200
+
+ Backport VteBg fixes from master
+
+ Fixes bug #615417, bug #614469.
+
+ src/debug.c | 3 +-
+ src/debug.h | 3 +-
+ src/vtebg.c | 320 +++++++++++++++++++++++++++++----------------------------
+ src/vtebg.h | 35 +++----
+ src/vtedraw.c | 2 +-
+ src/vtedraw.h | 2 +-
+ 6 files changed, 187 insertions(+), 178 deletions(-)
+
+commit a784d8d2dd79f7f4eba24aea4ea5f129a095ce0f
+Author: Christian Persch
+Date: Thu Apr 8 13:15:00 2010 +0200
+
+ Print the GDK target during configure
+
+ For checking purposes.
+ (cherry picked from commit b72c2a7df25e5fdfefbd437505f9f71b7d675da8)
+
+ configure.in | 2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+commit 0ed604d8a8f83e6fdb5444be0305abeb7b0d1f7f
+Author: Christian Persch
+Date: Sun Apr 4 17:03:24 2010 +0200
+
+ Add x11 to pkg-config dep list on gdk-x11
+
+ Bug #613525.
+ (cherry picked from commit be41faea3651c2a90012648490ebf346eac82d04)
+
+ configure.in | 10 +++++++++-
+ 1 files changed, 9 insertions(+), 1 deletions(-)
+
commit 4c8cd732f506d529f15dc07cb1b9be8f5886057f
Author: Christian Persch
Date: Mon Mar 29 15:11:44 2010 +0200
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/NEWS new/vte-0.24.1/NEWS
--- old/vte-0.24.0/NEWS 2010-03-29 15:06:52.000000000 +0200
+++ new/vte-0.24.1/NEWS 2010-04-26 13:26:29.000000000 +0200
@@ -1,3 +1,8 @@
+0.24.1
+======
+- Bugs fixed: https://bugzilla.gnome.org/buglist.cgi?status_whiteboard_type=substring;chfi...
+- Translation updates
+
0.24.0
======
- Updated API docs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/configure new/vte-0.24.1/configure
--- old/vte-0.24.0/configure 2010-03-29 15:07:28.000000000 +0200
+++ new/vte-0.24.1/configure 2010-04-26 13:09:06.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.64 for vte 0.24.0.
+# Generated by GNU Autoconf 2.64 for vte 0.24.1.
#
# Report bugs to http://bugzilla.gnome.org/enter_bug.cgi?product=vte.
#
@@ -699,8 +699,8 @@
# Identity of this package.
PACKAGE_NAME='vte'
PACKAGE_TARNAME='vte'
-PACKAGE_VERSION='0.24.0'
-PACKAGE_STRING='vte 0.24.0'
+PACKAGE_VERSION='0.24.1'
+PACKAGE_STRING='vte 0.24.1'
PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=vte'
PACKAGE_URL=''
@@ -1549,7 +1549,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures vte 0.24.0 to adapt to many kinds of systems.
+\`configure' configures vte 0.24.1 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1619,7 +1619,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of vte 0.24.0:";;
+ short | recursive ) echo "Configuration of vte 0.24.1:";;
esac
cat <<\_ACEOF
@@ -1744,7 +1744,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-vte configure 0.24.0
+vte configure 0.24.1
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@@ -2208,7 +2208,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by vte $as_me 0.24.0, which was
+It was created by vte $as_me 0.24.1, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@@ -3020,7 +3020,7 @@
# Define the identity of the package.
PACKAGE='vte'
- VERSION='0.24.0'
+ VERSION='0.24.1'
cat >>confdefs.h <<_ACEOF
@@ -3105,7 +3105,7 @@
# Libtool shared library versioning stuffs.
# REVISION gets incremented whenever the source code changes without adding
# an API or ABI change.
-LTVERSION_REVISION=0
+LTVERSION_REVISION=1
# CURRENT must be incremented when an API or ABI change (addition or removal)
# is made, and REVISION must be reset to 0 when this happens.
LTVERSION_CURRENT=22
@@ -14619,7 +14619,19 @@
esac
# Search for the required modules.
-VTE_PKGS="glib-2.0 >= $GLIB_REQUIRED gobject-2.0 pango >= $PANGO_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gobject-2.0 gio-2.0 gio-unix-2.0"
+
+# We have a direct dependency on X11 on gdk-x11, see bug #613525
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GDK target" >&5
+$as_echo_n "checking for GDK target... " >&6; }
+GDK_TARGET="$($PKG_CONFIG --variable target gdk-2.0)"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $GDK_TARGET" >&5
+$as_echo "$GDK_TARGET" >&6; }
+case "$GDK_TARGET" in
+ x11) PLATFORM_PKGS="x11 cairo-xlib" ;;
+ *) PLATFORM_PKGS="" ;;
+esac
+
+VTE_PKGS="glib-2.0 >= $GLIB_REQUIRED gobject-2.0 pango >= $PANGO_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gobject-2.0 gio-2.0 gio-unix-2.0 $PLATFORM_PKGS"
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for VTE" >&5
@@ -15541,7 +15553,7 @@
VTE_MINOR_VERSION=24
-VTE_MICRO_VERSION=0
+VTE_MICRO_VERSION=1
VTE_API_VERSION=0
@@ -16131,7 +16143,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by vte $as_me 0.24.0, which was
+This file was extended by vte $as_me 0.24.1, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -16195,7 +16207,7 @@
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
-vte config.status 0.24.0
+vte config.status 0.24.1
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/configure.in new/vte-0.24.1/configure.in
--- old/vte-0.24.0/configure.in 2010-03-29 15:06:52.000000000 +0200
+++ new/vte-0.24.1/configure.in 2010-04-26 13:07:45.000000000 +0200
@@ -1,6 +1,6 @@
m4_define([vte_version_major],[0])
m4_define([vte_version_minor],[24])
-m4_define([vte_version_micro],[0])
+m4_define([vte_version_micro],[1])
m4_define([vte_version],[vte_version_major.vte_version_minor.vte_version_micro])
m4_define([vte_api_version],[0])
@@ -24,7 +24,7 @@
# Libtool shared library versioning stuffs.
# REVISION gets incremented whenever the source code changes without adding
# an API or ABI change.
-LTVERSION_REVISION=0
+LTVERSION_REVISION=1
# CURRENT must be incremented when an API or ABI change (addition or removal)
# is made, and REVISION must be reset to 0 when this happens.
LTVERSION_CURRENT=22
@@ -336,7 +336,17 @@
esac
# Search for the required modules.
-VTE_PKGS="glib-2.0 >= $GLIB_REQUIRED gobject-2.0 pango >= $PANGO_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gobject-2.0 gio-2.0 gio-unix-2.0"
+
+# We have a direct dependency on X11 on gdk-x11, see bug #613525
+AC_MSG_CHECKING([for GDK target])
+GDK_TARGET="$($PKG_CONFIG --variable target gdk-2.0)"
+AC_MSG_RESULT([$GDK_TARGET])
+case "$GDK_TARGET" in
+ x11) PLATFORM_PKGS="x11 cairo-xlib" ;;
+ *) PLATFORM_PKGS="" ;;
+esac
+
+VTE_PKGS="glib-2.0 >= $GLIB_REQUIRED gobject-2.0 pango >= $PANGO_REQUIRED gtk+-2.0 >= $GTK_REQUIRED gobject-2.0 gio-2.0 gio-unix-2.0 $PLATFORM_PKGS"
PKG_CHECK_MODULES([VTE],[$VTE_PKGS])
AC_SUBST([VTE_PKGS])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/VteReaper.html new/vte-0.24.1/doc/reference/html/VteReaper.html
--- old/vte-0.24.0/doc/reference/html/VteReaper.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/VteReaper.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="deprecated-objects.html" title="Deprecated">
<link rel="prev" href="deprecated-objects.html" title="Deprecated">
<link rel="next" href="object-hierarchy.html" title="Object Hierarchy">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -181,6 +181,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/VteTerminal.html new/vte-0.24.1/doc/reference/html/VteTerminal.html
--- old/vte-0.24.0/doc/reference/html/VteTerminal.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/VteTerminal.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="ch01.html" title="">
<link rel="prev" href="ch01.html" title="">
<link rel="next" href="ch02.html" title="">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -4426,6 +4426,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/VteTerminalAccessible.html new/vte-0.24.1/doc/reference/html/VteTerminalAccessible.html
--- old/vte-0.24.0/doc/reference/html/VteTerminalAccessible.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/VteTerminalAccessible.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="internal-objects.html" title="Interna">
<link rel="prev" href="internal-objects.html" title="Interna">
<link rel="next" href="deprecated-objects.html" title="Deprecated">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -103,6 +103,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/api-index-0-20.html new/vte-0.24.1/doc/reference/html/api-index-0-20.html
--- old/vte-0.24.0/doc/reference/html/api-index-0-20.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/api-index-0-20.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="index.html" title="VTE Reference Manual">
<link rel="prev" href="api-index-deprecated.html" title="Index of deprecated symbols">
<link rel="next" href="api-index-0-24.html" title="Index of new symbols in 0.24">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -113,6 +113,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/api-index-0-24.html new/vte-0.24.1/doc/reference/html/api-index-0-24.html
--- old/vte-0.24.0/doc/reference/html/api-index-0-24.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/api-index-0-24.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="index.html" title="VTE Reference Manual">
<link rel="prev" href="api-index-0-20.html" title="Index of new symbols in 0.20">
<link rel="next" href="licence.html" title="Appendix A. Licence">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -35,6 +35,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/api-index-deprecated.html new/vte-0.24.1/doc/reference/html/api-index-deprecated.html
--- old/vte-0.24.0/doc/reference/html/api-index-deprecated.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/api-index-deprecated.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="index.html" title="VTE Reference Manual">
<link rel="prev" href="api-index-full.html" title="Index">
<link rel="next" href="api-index-0-20.html" title="Index of new symbols in 0.20">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -70,6 +70,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/api-index-full.html new/vte-0.24.1/doc/reference/html/api-index-full.html
--- old/vte-0.24.0/doc/reference/html/api-index-full.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/api-index-full.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="index.html" title="VTE Reference Manual">
<link rel="prev" href="object-hierarchy.html" title="Object Hierarchy">
<link rel="next" href="api-index-deprecated.html" title="Index of deprecated symbols">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -532,6 +532,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/ch01.html new/vte-0.24.1/doc/reference/html/ch01.html
--- old/vte-0.24.0/doc/reference/html/ch01.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/ch01.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="pt01.html" title="Part I. API Reference">
<link rel="prev" href="pt01.html" title="Part I. API Reference">
<link rel="next" href="VteTerminal.html" title="VteTerminal">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -27,6 +27,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/ch02.html new/vte-0.24.1/doc/reference/html/ch02.html
--- old/vte-0.24.0/doc/reference/html/ch02.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/ch02.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="pt01.html" title="Part I. API Reference">
<link rel="prev" href="VteTerminal.html" title="VteTerminal">
<link rel="next" href="vte-Version-Information.html" title="Version Information">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -27,6 +27,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/deprecated-objects.html new/vte-0.24.1/doc/reference/html/deprecated-objects.html
--- old/vte-0.24.0/doc/reference/html/deprecated-objects.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/deprecated-objects.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="pt01.html" title="Part I. API Reference">
<link rel="prev" href="VteTerminalAccessible.html" title="VteTerminalAccessible">
<link rel="next" href="VteReaper.html" title="VteReaper">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -29,6 +29,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/index.html new/vte-0.24.1/doc/reference/html/index.html
--- old/vte-0.24.0/doc/reference/html/index.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/index.html 2010-04-26 13:27:13.000000000 +0200
@@ -6,7 +6,7 @@
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
<link rel="start" href="index.html" title="VTE Reference Manual">
<link rel="next" href="pt01.html" title="Part I. API Reference">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -15,14 +15,14 @@
<div>
<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">VTE Reference Manual</p></th></tr></table></div>
<div><p class="releaseinfo">
- Documentation for VTE version 0.24.0
+ Documentation for VTE version 0.24.1
.
The latest version of this documentation can be found on-line at the
<a class="ulink" href="http://library.gnome.org/devel/vte/" target="_top">GNOME Library</a>.
</p></div>
<div><p class="copyright">Copyright © 2009, 2010 Christian Persch</p></div>
<div><div class="legalnotice">
-<a name="id3054453"></a><p>
+<a name="id3100874"></a><p>
Permission is granted to copy, distribute and/or modify this document
under the terms of the <em class="citetitle">GNU Lesser General Public Licence</em>, Version 2.1
or (at your option) any later version published by the Free Software Foundation.
@@ -76,6 +76,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/internal-objects.html new/vte-0.24.1/doc/reference/html/internal-objects.html
--- old/vte-0.24.0/doc/reference/html/internal-objects.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/internal-objects.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="pt01.html" title="Part I. API Reference">
<link rel="prev" href="vte-Version-Information.html" title="Version Information">
<link rel="next" href="VteTerminalAccessible.html" title="VteTerminalAccessible">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -28,6 +28,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/licence.html new/vte-0.24.1/doc/reference/html/licence.html
--- old/vte-0.24.0/doc/reference/html/licence.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/licence.html 2010-04-26 13:27:13.000000000 +0200
@@ -7,7 +7,7 @@
<link rel="start" href="index.html" title="VTE Reference Manual">
<link rel="up" href="index.html" title="VTE Reference Manual">
<link rel="prev" href="api-index-0-24.html" title="Index of new symbols in 0.24">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -52,6 +52,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/object-hierarchy.html new/vte-0.24.1/doc/reference/html/object-hierarchy.html
--- old/vte-0.24.0/doc/reference/html/object-hierarchy.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/object-hierarchy.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="index.html" title="VTE Reference Manual">
<link rel="prev" href="VteReaper.html" title="VteReaper">
<link rel="next" href="api-index-full.html" title="Index">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -36,6 +36,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/pt01.html new/vte-0.24.1/doc/reference/html/pt01.html
--- old/vte-0.24.0/doc/reference/html/pt01.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/pt01.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="index.html" title="VTE Reference Manual">
<link rel="prev" href="index.html" title="VTE Reference Manual">
<link rel="next" href="ch01.html" title="">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -21,7 +21,7 @@
</tr></table>
<div class="part" lang="en">
<div class="titlepage"><div><div><h1 class="title">
-<a name="id3019946"></a>Part I. API Reference</h1></div></div></div>
+<a name="id3066367"></a>Part I. API Reference</h1></div></div></div>
<div class="toc">
<p><b>Table of Contents</b></p>
<dl>
@@ -47,6 +47,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/html/vte-Version-Information.html new/vte-0.24.1/doc/reference/html/vte-Version-Information.html
--- old/vte-0.24.0/doc/reference/html/vte-Version-Information.html 2010-03-29 15:15:31.000000000 +0200
+++ new/vte-0.24.1/doc/reference/html/vte-Version-Information.html 2010-04-26 13:27:13.000000000 +0200
@@ -8,7 +8,7 @@
<link rel="up" href="ch02.html" title="">
<link rel="prev" href="ch02.html" title="">
<link rel="next" href="internal-objects.html" title="Interna">
-<meta name="generator" content="GTK-Doc V1.14 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.14.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -78,7 +78,7 @@
<hr>
<div class="refsect2" lang="en">
<a name="VTE-MICRO-VERSION:CAPS"></a><h3>VTE_MICRO_VERSION</h3>
-<pre class="programlisting">#define VTE_MICRO_VERSION (0)
+<pre class="programlisting">#define VTE_MICRO_VERSION (1)
</pre>
<p>
The micro version number of the VTE library
@@ -121,6 +121,6 @@
</div>
<div class="footer">
<hr>
- Generated by GTK-Doc V1.14</div>
+ Generated by GTK-Doc V1.14.1</div>
</body>
</html>
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/doc/reference/version.xml new/vte-0.24.1/doc/reference/version.xml
--- old/vte-0.24.0/doc/reference/version.xml 2010-03-29 15:08:03.000000000 +0200
+++ new/vte-0.24.1/doc/reference/version.xml 2010-04-26 13:09:28.000000000 +0200
@@ -1 +1 @@
-0.24.0
+0.24.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/src/debug.c new/vte-0.24.1/src/debug.c
--- old/vte-0.24.0/src/debug.c 2010-01-13 21:49:47.000000000 +0100
+++ new/vte-0.24.1/src/debug.c 2010-04-20 11:31:27.000000000 +0200
@@ -49,7 +49,8 @@
{ "draw", VTE_DEBUG_DRAW },
{ "ally", VTE_DEBUG_ALLY },
{ "pangocairo", VTE_DEBUG_PANGOCAIRO },
- { "widget-size", VTE_DEBUG_WIDGET_SIZE }
+ { "widget-size", VTE_DEBUG_WIDGET_SIZE },
+ { "bg", VTE_DEBUG_BG }
};
_vte_debug_flags = g_parse_debug_string (g_getenv("VTE_DEBUG"),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/src/debug.h new/vte-0.24.1/src/debug.h
--- old/vte-0.24.0/src/debug.h 2010-01-13 21:49:47.000000000 +0100
+++ new/vte-0.24.1/src/debug.h 2010-04-26 13:07:08.000000000 +0200
@@ -49,7 +49,8 @@
VTE_DEBUG_ALLY = 1 << 18,
VTE_DEBUG_ADJ = 1 << 19,
VTE_DEBUG_PANGOCAIRO = 1 << 20,
- VTE_DEBUG_WIDGET_SIZE = 1 << 21
+ VTE_DEBUG_WIDGET_SIZE = 1 << 21,
+ VTE_DEBUG_BG = 1 << 22
} VteDebugFlags;
void _vte_debug_init(void);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/src/vtebg.c new/vte-0.24.1/src/vtebg.c
--- old/vte-0.24.0/src/vtebg.c 2010-01-21 16:42:23.000000000 +0100
+++ new/vte-0.24.1/src/vtebg.c 2010-04-20 11:28:08.000000000 +0200
@@ -17,89 +17,58 @@
*/
#include
+
#include
#include
#include
-#include
#include "debug.h"
#include "marshal.h"
#include "vtebg.h"
-#include
+#ifdef GDK_WINDOWING_X11
+#include
+#include
+#endif
G_DEFINE_TYPE(VteBg, vte_bg, G_TYPE_OBJECT)
-struct VteBgPrivate {
+struct _VteBgPrivate {
GList *cache;
+ GdkScreen *screen;
+#ifdef GDK_WINDOWING_X11
+ cairo_surface_t *root_surface;
+ struct {
+ GdkDisplay *display;
+ GdkWindow *window;
+ XID native_window;
+ GdkAtom atom;
+ Atom native_atom;
+ } native;
+#endif
};
-struct VteBgCacheItem {
- enum VteBgSourceType source_type;
+typedef struct {
+ VteBgSourceType source_type;
GdkPixbuf *source_pixbuf;
char *source_file;
PangoColor tint_color;
double saturation;
cairo_surface_t *surface;
-};
+} VteBgCacheItem;
-
-static void vte_bg_cache_item_free(struct VteBgCacheItem *item);
+static void vte_bg_cache_item_free(VteBgCacheItem *item);
static void vte_bg_cache_prune_int(VteBg *bg, gboolean root);
static const cairo_user_data_key_t item_surface_key;
-
-#if 0
-static const char *
-vte_bg_source_name(enum VteBgSourceType type)
-{
- switch (type) {
- case VTE_BG_SOURCE_NONE:
- return "none";
- break;
- case VTE_BG_SOURCE_ROOT:
- return "root";
- break;
- case VTE_BG_SOURCE_PIXBUF:
- return "pixbuf";
- break;
- case VTE_BG_SOURCE_FILE:
- return "file";
- break;
- }
- return "unknown";
-}
-#endif
-
-#ifndef X_DISPLAY_MISSING
-
-#include
-
-struct VteBgNative {
- GdkDisplay *display;
- GdkWindow *window;
- XID native_window;
- GdkAtom atom;
- Atom native_atom;
-};
-
-static struct VteBgNative *
-vte_bg_native_new(GdkWindow *window)
-{
- struct VteBgNative *pvt;
- pvt = g_slice_new(struct VteBgNative);
- pvt->window = window;
- pvt->native_window = gdk_x11_drawable_get_xid(window);
- pvt->display = gdk_drawable_get_display(GDK_DRAWABLE(window));
- pvt->native_atom = gdk_x11_get_xatom_by_name_for_display(pvt->display, "_XROOTPMAP_ID");
- pvt->atom = gdk_x11_xatom_to_atom_for_display(pvt->display, pvt->native_atom);
- return pvt;
-}
+#ifdef GDK_WINDOWING_X11
static void
_vte_bg_display_sync(VteBg *bg)
{
- gdk_display_sync(bg->native->display);
+ VteBgPrivate *pvt = bg->pvt;
+
+ gdk_display_sync(pvt->native.display);
}
static gboolean
@@ -117,6 +86,7 @@
static cairo_surface_t *
vte_bg_root_surface(VteBg *bg)
{
+ VteBgPrivate *pvt = bg->pvt;
GdkPixmap *pixmap;
GdkAtom prop_type;
int prop_size;
@@ -131,9 +101,9 @@
pixmap = NULL;
pixmaps = NULL;
gdk_error_trap_push();
- if (!_vte_property_get_pixmaps(bg->native->window, bg->native->atom,
- &prop_type, &prop_size,
- &pixmaps))
+ if (!_vte_property_get_pixmaps(pvt->native.window, pvt->native.atom,
+ &prop_type, &prop_size,
+ &pixmaps))
goto out;
if ((prop_type != GDK_TARGET_PIXMAP) ||
@@ -141,21 +111,20 @@
(pixmaps == NULL)))
goto out_pixmaps;
- if (!XGetGeometry (GDK_DISPLAY_XDISPLAY (bg->native->display),
+ if (!XGetGeometry (GDK_DISPLAY_XDISPLAY (pvt->native.display),
pixmaps[0], &root,
&x, &y, &width, &height, &border_width, &depth))
goto out_pixmaps;
- display = gdk_x11_display_get_xdisplay (bg->native->display);
- screen = gdk_x11_screen_get_xscreen (bg->screen);
+ display = gdk_x11_display_get_xdisplay (pvt->native.display);
+ screen = gdk_x11_screen_get_xscreen (pvt->screen);
surface = cairo_xlib_surface_create (display,
pixmaps[0],
DefaultVisualOfScreen(screen),
width, height);
- _VTE_DEBUG_IF(VTE_DEBUG_MISC|VTE_DEBUG_EVENTS) {
- g_printerr("New background image %dx%d\n", width, height);
- }
+ _vte_debug_print(VTE_DEBUG_BG|VTE_DEBUG_EVENTS,
+ "VteBg new background image %dx%d\n", width, height);
out_pixmaps:
g_free(pixmaps);
@@ -169,27 +138,30 @@
static void
vte_bg_set_root_surface(VteBg *bg, cairo_surface_t *surface)
{
- if (bg->root_surface != NULL) {
- cairo_surface_destroy (bg->root_surface);
+ VteBgPrivate *pvt = bg->pvt;
+
+ if (pvt->root_surface != NULL) {
+ cairo_surface_destroy (pvt->root_surface);
}
- bg->root_surface = surface;
+ pvt->root_surface = surface;
vte_bg_cache_prune_int (bg, TRUE);
g_signal_emit_by_name(bg, "root-pixmap-changed");
}
-
static GdkFilterReturn
vte_bg_root_filter(GdkXEvent *native, GdkEvent *event, gpointer data)
{
XEvent *xevent = (XEvent*) native;
VteBg *bg;
+ VteBgPrivate *pvt;
cairo_surface_t *surface;
switch (xevent->type) {
case PropertyNotify:
bg = VTE_BG(data);
- if ((xevent->xproperty.window == bg->native->native_window) &&
- (xevent->xproperty.atom == bg->native->native_atom)) {
+ pvt = bg->pvt;
+ if ((xevent->xproperty.window == pvt->native.native_window) &&
+ (xevent->xproperty.atom == pvt->native.native_atom)) {
surface = vte_bg_root_surface(bg);
vte_bg_set_root_surface(bg, surface);
}
@@ -200,45 +172,16 @@
return GDK_FILTER_CONTINUE;
}
-#else
-
-struct VteBgNative {
- guchar filler;
-};
-static struct VteBgNative *
-vte_bg_native_new(GdkWindow *window)
-{
- return NULL;
-}
-static GdkFilterReturn
-vte_bg_root_filter(GdkXEvent *xevent, GdkEvent *event, gpointer data)
-{
- return GDK_FILTER_CONTINUE;
-}
-static void
-_vte_bg_display_sync(VteBg *bg)
-{
-}
-
-static GdkPixmap *
-vte_bg_root_pixmap(VteBg *bg)
-{
- return NULL;
-}
-#endif
-
+#endif /* GDK_WINDOWING_X11 */
static void
vte_bg_finalize (GObject *obj)
{
- VteBg *bg;
-
- bg = VTE_BG (obj);
+ VteBg *bg = VTE_BG (obj);
+ VteBgPrivate *pvt = bg->pvt;
- if (bg->pvt->cache) {
- g_list_foreach (bg->pvt->cache, (GFunc)vte_bg_cache_item_free, NULL);
- g_list_free (bg->pvt->cache);
- }
+ g_list_foreach (pvt->cache, (GFunc)vte_bg_cache_item_free, NULL);
+ g_list_free (pvt->cache);
G_OBJECT_CLASS(vte_bg_parent_class)->finalize (obj);
}
@@ -248,61 +191,67 @@
{
GObjectClass *gobject_class = G_OBJECT_CLASS(klass);
- bindtextdomain(GETTEXT_PACKAGE, LOCALEDIR);
-#ifdef HAVE_DECL_BIND_TEXTDOMAIN_CODESET
- bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
-#endif
-
gobject_class->finalize = vte_bg_finalize;
- klass->root_pixmap_changed = g_signal_new("root-pixmap-changed",
- G_OBJECT_CLASS_TYPE(klass),
- G_SIGNAL_RUN_LAST,
- 0,
- NULL,
- NULL,
- g_cclosure_marshal_VOID__VOID,
- G_TYPE_NONE, 0);
- g_type_class_add_private(klass, sizeof (struct VteBgPrivate));
+ g_signal_new("root-pixmap-changed",
+ G_OBJECT_CLASS_TYPE(klass),
+ G_SIGNAL_RUN_LAST,
+ 0,
+ NULL,
+ NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0);
+ g_type_class_add_private(klass, sizeof (VteBgPrivate));
}
static void
vte_bg_init(VteBg *bg)
{
- bg->pvt = G_TYPE_INSTANCE_GET_PRIVATE (bg, VTE_TYPE_BG, struct VteBgPrivate);
+ bg->pvt = G_TYPE_INSTANCE_GET_PRIVATE (bg, VTE_TYPE_BG, VteBgPrivate);
}
/**
* vte_bg_get:
- * @screen : A #GdkScreen.
+ * @screen: a #GdkScreen
*
- * Finds the address of the global #VteBg object, creating the object if
- * necessary.
+ * Returns the global #VteBg object for @screen, creating it if necessary.
*
- * Returns: the global #VteBg object
+ * Returns: (transfer none): a #VteBg
*/
VteBg *
vte_bg_get_for_screen(GdkScreen *screen)
{
- GdkEventMask events;
- GdkWindow *window;
VteBg *bg;
bg = g_object_get_data(G_OBJECT(screen), "vte-bg");
if (G_UNLIKELY(bg == NULL)) {
+ VteBgPrivate *pvt;
+
bg = g_object_new(VTE_TYPE_BG, NULL);
g_object_set_data_full(G_OBJECT(screen),
"vte-bg", bg, (GDestroyNotify)g_object_unref);
/* connect bg to screen */
- bg->screen = screen;
+ pvt = bg->pvt;
+ pvt->screen = screen;
+#ifdef GDK_WINDOWING_X11
+ {
+ GdkEventMask events;
+ GdkWindow *window;
+
window = gdk_screen_get_root_window(screen);
- bg->native = vte_bg_native_new(window);
- bg->root_surface = vte_bg_root_surface(bg);
+ pvt->native.window = window;
+ pvt->native.native_window = gdk_x11_drawable_get_xid(window);
+ pvt->native.display = gdk_drawable_get_display(GDK_DRAWABLE(window));
+ pvt->native.native_atom = gdk_x11_get_xatom_by_name_for_display(pvt->native.display, "_XROOTPMAP_ID");
+ pvt->native.atom = gdk_x11_xatom_to_atom_for_display(pvt->native.display, pvt->native.native_atom);
+ pvt->root_surface = vte_bg_root_surface(bg);
events = gdk_window_get_events(window);
events |= GDK_PROPERTY_CHANGE_MASK;
gdk_window_set_events(window, events);
gdk_window_add_filter(window, vte_bg_root_filter, bg);
+ }
+#endif /* GDK_WINDOWING_X11 */
}
return bg;
@@ -317,8 +266,11 @@
}
static void
-vte_bg_cache_item_free(struct VteBgCacheItem *item)
+vte_bg_cache_item_free(VteBgCacheItem *item)
{
+ _vte_debug_print(VTE_DEBUG_BG,
+ "VteBgCacheItem %p freed\n", item);
+
/* Clean up whatever is left in the structure. */
if (item->source_pixbuf != NULL) {
g_object_remove_weak_pointer(G_OBJECT(item->source_pixbuf),
@@ -330,7 +282,7 @@
cairo_surface_set_user_data (item->surface,
&item_surface_key, NULL, NULL);
- g_slice_free(struct VteBgCacheItem, item);
+ g_slice_free(VteBgCacheItem, item);
}
static void
@@ -338,7 +290,7 @@
{
GList *i, *next;
for (i = bg->pvt->cache; i != NULL; i = next) {
- struct VteBgCacheItem *item = i->data;
+ VteBgCacheItem *item = i->data;
next = g_list_next (i);
/* Prune the item if either it is a "root pixmap" item and
* we want to prune them, or its surface is NULL because
@@ -359,15 +311,24 @@
static void item_surface_destroy_func(void *data)
{
- struct VteBgCacheItem *item = data;
+ VteBgCacheItem *item = data;
+
+ _vte_debug_print(VTE_DEBUG_BG,
+ "VteBgCacheItem %p surface destroyed\n", item);
item->surface = NULL;
}
-/* Add an item to the cache, instructing all of the objects therein to clear
- the field which holds a pointer to the object upon its destruction. */
+/*
+ * vte_bg_cache_add:
+ * @bg: a #VteBg
+ * @item: a #VteBgCacheItem
+ *
+ * Adds @item to @bg's cache, instructing all of the objects therein to
+ * clear the field which holds a pointer to the object upon its destruction.
+ */
static void
-vte_bg_cache_add(VteBg *bg, struct VteBgCacheItem *item)
+vte_bg_cache_add(VteBg *bg, VteBgCacheItem *item)
{
vte_bg_cache_prune(bg);
bg->pvt->cache = g_list_prepend(bg->pvt->cache, item);
@@ -376,15 +337,26 @@
(gpointer*)(void*)&item->source_pixbuf);
}
- cairo_surface_set_user_data (item->surface, &item_surface_key, item,
- item_surface_destroy_func);
+ if (item->surface != NULL)
+ cairo_surface_set_user_data (item->surface, &item_surface_key, item,
+ item_surface_destroy_func);
}
-/* Search for a match in the cache, and if found, return an object with an
- additional ref. */
+/*
+ * vte_bg_cache_search:
+ * @bg: a #VteBg
+ * @source_type: a #VteBgSourceType
+ * @source_pixbuf: a #GdkPixbuf, or %NULL
+ * @source_file: path of an image file, or %NULL
+ * @tint: a #PangoColor to use as tint color
+ * @saturation: the saturation as a value between 0.0 and 1.0
+ *
+ * Returns: a reference to a #cairo_surface_t, or %NULL on if
+ * there is no matching item in the cache
+ */
static cairo_surface_t *
vte_bg_cache_search(VteBg *bg,
- enum VteBgSourceType source_type,
+ VteBgSourceType source_type,
const GdkPixbuf *source_pixbuf,
const char *source_file,
const PangoColor *tint,
@@ -394,7 +366,7 @@
vte_bg_cache_prune(bg);
for (i = bg->pvt->cache; i != NULL; i = g_list_next(i)) {
- struct VteBgCacheItem *item = i->data;
+ VteBgCacheItem *item = i->data;
if (vte_bg_colors_equal(&item->tint_color, tint) &&
(saturation == item->saturation) &&
(source_type == item->source_type)) {
@@ -422,24 +394,45 @@
return NULL;
}
+/*< private >
+ * vte_bg_get_surface:
+ * @bg: a #VteBg
+ * @source_type: a #VteBgSourceType
+ * @source_pixbuf: (allow-none): a #GdkPixbuf, or %NULL
+ * @source_file: (allow-none): path of an image file, or %NULL
+ * @tint: a #PangoColor to use as tint color
+ * @saturation: the saturation as a value between 0.0 and 1.0
+ * @other: a #cairo_surface_t
+ *
+ * Returns: a reference to a #cairo_surface_t, or %NULL on failure
+ */
cairo_surface_t *
vte_bg_get_surface(VteBg *bg,
- enum VteBgSourceType source_type,
+ VteBgSourceType source_type,
GdkPixbuf *source_pixbuf,
const char *source_file,
const PangoColor *tint,
double saturation,
cairo_surface_t *other)
{
- struct VteBgCacheItem *item;
+ VteBgPrivate *pvt;
+ VteBgCacheItem *item;
GdkPixbuf *pixbuf;
- cairo_surface_t *cached, *source;
+ cairo_surface_t *cached;
cairo_t *cr;
int width, height;
+ g_return_val_if_fail(VTE_IS_BG(bg), NULL);
+ pvt = bg->pvt;
+
if (source_type == VTE_BG_SOURCE_NONE) {
return NULL;
}
+#ifndef GDK_WINDOWING_X11
+ if (source_type == VTE_BG_SOURCE_ROOT) {
+ return NULL;
+ }
+#endif
cached = vte_bg_cache_search(bg, source_type,
source_pixbuf, source_file,
@@ -448,13 +441,21 @@
return cached;
}
- item = g_slice_new(struct VteBgCacheItem);
+ /* FIXME: The above only returned a hit when the source *and*
+ * tint and saturation matched. This means that for VTE_BG_SOURCE_FILE,
+ * we will create below *another* #GdkPixbuf for the same source file,
+ * wasting memory. We should instead look up the source pixbuf regardless
+ * of tint and saturation, and just create a new #VteBgCacheItem
+ * with a new surface for it.
+ */
+
+ item = g_slice_new(VteBgCacheItem);
item->source_type = source_type;
item->source_pixbuf = NULL;
item->source_file = NULL;
item->tint_color = *tint;
item->saturation = saturation;
- source = NULL;
+ item->surface = NULL;
pixbuf = NULL;
switch (source_type) {
@@ -465,7 +466,7 @@
pixbuf = g_object_ref (source_pixbuf);
break;
case VTE_BG_SOURCE_FILE:
- if ((source_file != NULL) && (strlen(source_file) > 0)) {
+ if (source_file != NULL && source_file[0] != '\0') {
item->source_file = g_strdup(source_file);
pixbuf = gdk_pixbuf_new_from_file(source_file, NULL);
}
@@ -478,10 +479,16 @@
if (pixbuf) {
width = gdk_pixbuf_get_width(pixbuf);
height = gdk_pixbuf_get_height(pixbuf);
- } else {
- width = cairo_xlib_surface_get_width(bg->root_surface);
- height = cairo_xlib_surface_get_height(bg->root_surface);
}
+#ifdef GDK_WINDOWING_X11
+ else if (source_type == VTE_BG_SOURCE_ROOT &&
+ pvt->root_surface != NULL) {
+ width = cairo_xlib_surface_get_width(pvt->root_surface);
+ height = cairo_xlib_surface_get_height(pvt->root_surface);
+ }
+#endif
+ else
+ goto out;
item->surface =
cairo_surface_create_similar(other, CAIRO_CONTENT_COLOR_ALPHA,
@@ -491,21 +498,24 @@
cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
if (pixbuf)
gdk_cairo_set_source_pixbuf (cr, pixbuf, 0, 0);
- else
- cairo_set_source_surface (cr, bg->root_surface, 0, 0);
+#ifdef GDK_WINDOWING_X11
+ else if (source_type == VTE_BG_SOURCE_ROOT)
+ cairo_set_source_surface (cr, pvt->root_surface, 0, 0);
+#endif
cairo_paint (cr);
- if (saturation != 1.0) {
+ if (saturation < 1.0) {
cairo_set_source_rgba (cr,
tint->red / 65535.,
tint->green / 65535.,
tint->blue / 65535.,
- saturation);
+ 1 - saturation);
cairo_set_operator (cr, CAIRO_OPERATOR_OVER);
cairo_paint (cr);
}
cairo_destroy (cr);
+ out:
vte_bg_cache_add(bg, item);
if (pixbuf)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/src/vtebg.h new/vte-0.24.1/src/vtebg.h
--- old/vte-0.24.0/src/vtebg.h 2010-01-21 16:42:23.000000000 +0100
+++ new/vte-0.24.1/src/vtebg.h 2010-04-20 11:28:09.000000000 +0200
@@ -16,7 +16,6 @@
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-
#ifndef vte_vtebg_included
#define vte_vtebg_included
@@ -24,44 +23,42 @@
G_BEGIN_DECLS
-struct VteBgPrivate;
+#define VTE_TYPE_BG (vte_bg_get_type())
+#define VTE_BG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), VTE_TYPE_BG, VteBg))
+#define VTE_BG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), VTE_TYPE_BG, VteBgClass))
+#define VTE_IS_BG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VTE_TYPE_BG))
+#define VTE_IS_BG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VTE_TYPE_BG))
+#define VTE_BG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), VTE_TYPE_BG, VteBgClass))
+
+typedef struct _VteBg VteBg;
+typedef struct _VteBgPrivate VteBgPrivate;
+typedef struct _VteBgClass VteBgClass;
-typedef struct _VteBg VteBg;
struct _VteBg {
GObject parent;
- GdkScreen *screen;
- cairo_surface_t *root_surface;
- struct VteBgNative *native;
- struct VteBgPrivate *pvt;
+
+ /*< private >*/
+ VteBgPrivate *pvt;
};
-typedef struct _VteBgClass VteBgClass;
struct _VteBgClass {
GObjectClass parent_class;
- guint root_pixmap_changed;
};
-#define VTE_TYPE_BG vte_bg_get_type()
-#define VTE_BG(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), VTE_TYPE_BG, VteBg))
-#define VTE_BG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), VTE_TYPE_BG, VteBgClass)
-#define VTE_IS_BG(obj) G_TYPE_CHECK_INSTANCE_TYPE((obj), VTE_TYPE_BG)
-#define VTE_IS_BG_CLASS(klass) G_TYPE_CHECK_CLASS_TYPE((klass), VTE_TYPE_BG)
-#define VTE_BG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), VTE_TYPE_BG, VteBgClass))
-
GType vte_bg_get_type(void);
VteBg *vte_bg_get_for_screen(GdkScreen *screen);
-enum VteBgSourceType {
+typedef enum {
VTE_BG_SOURCE_NONE,
VTE_BG_SOURCE_ROOT,
VTE_BG_SOURCE_PIXBUF,
VTE_BG_SOURCE_FILE
-};
+} VteBgSourceType;
cairo_surface_t *
vte_bg_get_surface(VteBg *bg,
- enum VteBgSourceType source_type,
+ VteBgSourceType source_type,
GdkPixbuf *source_pixbuf,
const char *source_file,
const PangoColor *tint,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/src/vtedraw.c new/vte-0.24.1/src/vtedraw.c
--- old/vte-0.24.0/src/vtedraw.c 2010-01-21 16:42:23.000000000 +0100
+++ new/vte-0.24.1/src/vtedraw.c 2010-04-26 13:07:09.000000000 +0200
@@ -881,7 +881,7 @@
void
_vte_draw_set_background_image (struct _vte_draw *draw,
- enum VteBgSourceType type,
+ VteBgSourceType type,
GdkPixbuf *pixbuf,
const char *filename,
const PangoColor *color,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/src/vtedraw.h new/vte-0.24.1/src/vtedraw.h
--- old/vte-0.24.0/src/vtedraw.h 2010-01-21 16:42:23.000000000 +0100
+++ new/vte-0.24.1/src/vtedraw.h 2010-04-20 11:30:34.000000000 +0200
@@ -74,7 +74,7 @@
double blue,
double opacity);
void _vte_draw_set_background_image(struct _vte_draw *draw,
- enum VteBgSourceType type,
+ VteBgSourceType type,
GdkPixbuf *pixbuf,
const char *file,
const PangoColor *color,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/vte-0.24.0/src/vteversion.h new/vte-0.24.1/src/vteversion.h
--- old/vte-0.24.0/src/vteversion.h 2010-03-29 15:08:02.000000000 +0200
+++ new/vte-0.24.1/src/vteversion.h 2010-04-26 13:09:28.000000000 +0200
@@ -60,7 +60,7 @@
*
* Since: 0.16.15
*/
-#define VTE_MICRO_VERSION (0)
+#define VTE_MICRO_VERSION (1)
/**
* VTE_CHECK_VERSION:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org