1 |
commit: 095d2892cd9c6ce86f653a0368949c2dc78859e8 |
2 |
Author: Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org> |
3 |
AuthorDate: Fri Sep 30 19:44:15 2011 +0000 |
4 |
Commit: Nirbheek Chauhan <nirbheek <AT> gentoo <DOT> org> |
5 |
CommitDate: Fri Sep 30 19:44:15 2011 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/gnome.git;a=commit;h=095d2892 |
7 |
|
8 |
libgda, evolution, mutter, gnome-shell: moved to the tree |
9 |
|
10 |
--- |
11 |
dev-cpp/libgdamm/libgdamm-4.99.3.1.ebuild | 29 - |
12 |
.../gnome-shell-3.0.2-unbreak-extension-css.patch | 93 --- |
13 |
.../gnome-shell-3.0.2-user-removed-signals.patch | 33 - |
14 |
gnome-base/gnome-shell/gnome-shell-3.0.2-r1.ebuild | 132 ---- |
15 |
gnome-extra/libgda/libgda-4.99.4.ebuild | 174 ----- |
16 |
mail-client/evolution/evolution-3.0.3.ebuild | 184 ----- |
17 |
mail-client/evolution/evolution-9999.ebuild | 22 +- |
18 |
...Always-update-signature-in-composer-on-ac.patch | 25 - |
19 |
...refresh_folders_exec-reports-progress-inc.patch | 41 - |
20 |
...Crash-using-saved-search-with-an-empty-ex.patch | 37 - |
21 |
.../evolution-2.32.0-wrong-lafile-usage.patch | 13 - |
22 |
.../files/mutter-3.0.2-argb-windows-shadow.patch | 764 -------------------- |
23 |
x11-wm/mutter/files/mutter-3.0.2-fix-xshape.patch | 30 - |
24 |
.../mutter-3.0.2-frame-region-cairo-region.patch | 234 ------ |
25 |
x11-wm/mutter/mutter-3.0.2.1.ebuild | 89 --- |
26 |
15 files changed, 7 insertions(+), 1893 deletions(-) |
27 |
|
28 |
diff --git a/dev-cpp/libgdamm/libgdamm-4.99.3.1.ebuild b/dev-cpp/libgdamm/libgdamm-4.99.3.1.ebuild |
29 |
deleted file mode 100644 |
30 |
index 4dbcda1..0000000 |
31 |
--- a/dev-cpp/libgdamm/libgdamm-4.99.3.1.ebuild |
32 |
+++ /dev/null |
33 |
@@ -1,29 +0,0 @@ |
34 |
-# Copyright 1999-2011 Gentoo Foundation |
35 |
-# Distributed under the terms of the GNU General Public License v2 |
36 |
-# $Header: /var/cvsroot/gentoo-x86/dev-cpp/libgdamm/libgdamm-4.1.1.ebuild,v 1.2 2011/02/17 10:15:01 pacho Exp $ |
37 |
- |
38 |
-EAPI="4" |
39 |
-GNOME2_LA_PUNT="yes" |
40 |
-GCONF_DEBUG="no" |
41 |
- |
42 |
-inherit gnome2 |
43 |
- |
44 |
-DESCRIPTION="C++ bindings for libgda" |
45 |
-HOMEPAGE="http://www.gtkmm.org" |
46 |
- |
47 |
-LICENSE="LGPL-2.1" |
48 |
-SLOT="5" |
49 |
-KEYWORDS="~amd64 ~ppc ~sparc ~x86" |
50 |
-IUSE="berkdb doc" |
51 |
- |
52 |
-RDEPEND=">=dev-cpp/glibmm-2.27.93:2 |
53 |
- >=gnome-extra/libgda-4.99.3:5[berkdb=]" |
54 |
-DEPEND="${RDEPEND} |
55 |
- dev-util/pkgconfig |
56 |
- doc? ( app-doc/doxygen )" |
57 |
- |
58 |
-pkg_setup() { |
59 |
- # Automagic libgda-berkdb support |
60 |
- DOCS="AUTHORS ChangeLog NEWS README TODO" |
61 |
- G2CONF="${G2CONF} $(use_enable doc documentation)" |
62 |
-} |
63 |
|
64 |
diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.0.2-unbreak-extension-css.patch b/gnome-base/gnome-shell/files/gnome-shell-3.0.2-unbreak-extension-css.patch |
65 |
deleted file mode 100644 |
66 |
index 75c6aee..0000000 |
67 |
--- a/gnome-base/gnome-shell/files/gnome-shell-3.0.2-unbreak-extension-css.patch |
68 |
+++ /dev/null |
69 |
@@ -1,93 +0,0 @@ |
70 |
-From 2674d96e547b27ed5c377804c1059bdfd926086e Mon Sep 17 00:00:00 2001 |
71 |
-From: Giovanni Campagna <gcampagna@×××××××××.org> |
72 |
-Date: Thu, 02 Jun 2011 15:05:08 +0000 |
73 |
-Subject: StTheme: retrive the list of custom stylesheets and use it in loadTheme() |
74 |
- |
75 |
-Using the list of stylesheets loaded with st_theme_load_stylesheet(), |
76 |
-one can build an StTheme that is completely identical to the previous |
77 |
-one, except for one property (application-stylesheet). |
78 |
-This allows rt and the user-theme extension to work while respecting |
79 |
-the theming of other extensions. |
80 |
- |
81 |
-https://bugzilla.gnome.org/show_bug.cgi?id=650971 |
82 |
---- |
83 |
-diff --git a/js/ui/main.js b/js/ui/main.js |
84 |
-index 1d27b4c..c0f4845 100644 |
85 |
---- a/js/ui/main.js |
86 |
-+++ b/js/ui/main.js |
87 |
-@@ -393,12 +393,21 @@ function setThemeStylesheet(cssStylesheet) |
88 |
- */ |
89 |
- function loadTheme() { |
90 |
- let themeContext = St.ThemeContext.get_for_stage (global.stage); |
91 |
-+ let previousTheme = themeContext.get_theme(); |
92 |
- |
93 |
- let cssStylesheet = _defaultCssStylesheet; |
94 |
- if (_cssStylesheet != null) |
95 |
- cssStylesheet = _cssStylesheet; |
96 |
- |
97 |
- let theme = new St.Theme ({ application_stylesheet: cssStylesheet }); |
98 |
-+ |
99 |
-+ if (previousTheme) { |
100 |
-+ let customStylesheets = previousTheme.get_custom_stylesheets(); |
101 |
-+ |
102 |
-+ for (let i = 0; i < customStylesheets.length; i++) |
103 |
-+ theme.load_stylesheet(customStylesheets[i]); |
104 |
-+ } |
105 |
-+ |
106 |
- themeContext.set_theme (theme); |
107 |
- } |
108 |
- |
109 |
-diff --git a/src/st/st-theme.c b/src/st/st-theme.c |
110 |
-index 326d9de..2058e32 100644 |
111 |
---- a/src/st/st-theme.c |
112 |
-+++ b/src/st/st-theme.c |
113 |
-@@ -256,6 +256,30 @@ st_theme_unload_stylesheet (StTheme *theme, |
114 |
- cr_stylesheet_unref (stylesheet); |
115 |
- } |
116 |
- |
117 |
-+/** |
118 |
-+ * st_theme_get_custom_stylesheets: |
119 |
-+ * @theme: an #StTheme |
120 |
-+ * |
121 |
-+ * Returns: (transfer full) (element-type utf8): the list of stylesheet filenames |
122 |
-+ * that were loaded with st_theme_load_stylesheet() |
123 |
-+ */ |
124 |
-+GSList* |
125 |
-+st_theme_get_custom_stylesheets (StTheme *theme) |
126 |
-+{ |
127 |
-+ GSList *result = NULL; |
128 |
-+ GSList *iter; |
129 |
-+ |
130 |
-+ for (iter = theme->custom_stylesheets; iter; iter = iter->next) |
131 |
-+ { |
132 |
-+ CRStyleSheet *stylesheet = iter->data; |
133 |
-+ gchar *filename = g_hash_table_lookup (theme->filenames_by_stylesheet, stylesheet); |
134 |
-+ |
135 |
-+ result = g_slist_prepend (result, g_strdup (filename)); |
136 |
-+ } |
137 |
-+ |
138 |
-+ return result; |
139 |
-+} |
140 |
-+ |
141 |
- static GObject * |
142 |
- st_theme_constructor (GType type, |
143 |
- guint n_construct_properties, |
144 |
-diff --git a/src/st/st-theme.h b/src/st/st-theme.h |
145 |
-index 003c2a7..0a044bf 100644 |
146 |
---- a/src/st/st-theme.h |
147 |
-+++ b/src/st/st-theme.h |
148 |
-@@ -51,9 +51,9 @@ StTheme *st_theme_new (const char *application_stylesheet, |
149 |
- const char *theme_stylesheet, |
150 |
- const char *default_stylesheet); |
151 |
- |
152 |
--gboolean st_theme_load_stylesheet (StTheme *theme, const char *path, GError **error); |
153 |
-- |
154 |
--void st_theme_unload_stylesheet (StTheme *theme, const char *path); |
155 |
-+gboolean st_theme_load_stylesheet (StTheme *theme, const char *path, GError **error); |
156 |
-+void st_theme_unload_stylesheet (StTheme *theme, const char *path); |
157 |
-+GSList *st_theme_get_custom_stylesheets (StTheme *theme); |
158 |
- |
159 |
- G_END_DECLS |
160 |
- |
161 |
--- |
162 |
-cgit v0.9.0.2 |
163 |
|
164 |
diff --git a/gnome-base/gnome-shell/files/gnome-shell-3.0.2-user-removed-signals.patch b/gnome-base/gnome-shell/files/gnome-shell-3.0.2-user-removed-signals.patch |
165 |
deleted file mode 100644 |
166 |
index adae1f0..0000000 |
167 |
--- a/gnome-base/gnome-shell/files/gnome-shell-3.0.2-user-removed-signals.patch |
168 |
+++ /dev/null |
169 |
@@ -1,33 +0,0 @@ |
170 |
-From 9a7f3dbd2030a5e1b54297f1aa7cf228eccafb27 Mon Sep 17 00:00:00 2001 |
171 |
-From: Ray Strode <rstrode@××××××.com> |
172 |
-Date: Tue, 24 May 2011 22:15:10 -0400 |
173 |
-Subject: [PATCH] gdm: ignore user-removed signals for untracked users |
174 |
- |
175 |
-If we don't know about a user, we don't care if it goes away, |
176 |
-and we shouldn't try to remove it from the book keeping. |
177 |
- |
178 |
-https://bugzilla.gnome.org/show_bug.cgi?id=647893 |
179 |
---- |
180 |
- src/gdmuser/gdm-user-manager.c | 7 +++++++ |
181 |
- 1 files changed, 7 insertions(+), 0 deletions(-) |
182 |
- |
183 |
-diff --git a/src/gdmuser/gdm-user-manager.c b/src/gdmuser/gdm-user-manager.c |
184 |
-index e7ca833..561be32 100644 |
185 |
---- a/src/gdmuser/gdm-user-manager.c |
186 |
-+++ b/src/gdmuser/gdm-user-manager.c |
187 |
-@@ -887,6 +887,13 @@ on_user_removed_in_accounts_service (DBusGProxy *proxy, |
188 |
- |
189 |
- user = g_hash_table_lookup (manager->priv->users_by_object_path, object_path); |
190 |
- |
191 |
-+ if (user == NULL) { |
192 |
-+ g_debug ("GdmUserManager: ignoring untracked user %s", object_path); |
193 |
-+ return; |
194 |
-+ } else { |
195 |
-+ g_debug ("GdmUserManager: tracked user %s removed from accounts service", object_path); |
196 |
-+ } |
197 |
-+ |
198 |
- manager->priv->new_users = g_slist_remove (manager->priv->new_users, user); |
199 |
- |
200 |
- remove_user (manager, user); |
201 |
--- |
202 |
-1.7.5.1 |
203 |
\ No newline at end of file |
204 |
|
205 |
diff --git a/gnome-base/gnome-shell/gnome-shell-3.0.2-r1.ebuild b/gnome-base/gnome-shell/gnome-shell-3.0.2-r1.ebuild |
206 |
deleted file mode 100644 |
207 |
index d14bd64..0000000 |
208 |
--- a/gnome-base/gnome-shell/gnome-shell-3.0.2-r1.ebuild |
209 |
+++ /dev/null |
210 |
@@ -1,132 +0,0 @@ |
211 |
-# Copyright 1999-2011 Gentoo Foundation |
212 |
-# Distributed under the terms of the GNU General Public License v2 |
213 |
-# $Header: $ |
214 |
- |
215 |
-EAPI="3" |
216 |
-GCONF_DEBUG="no" |
217 |
-GNOME2_LA_PUNT="yes" |
218 |
-PYTHON_DEPEND="2:2.5" |
219 |
- |
220 |
-inherit eutils gnome2 python |
221 |
-if [[ ${PV} = 9999 ]]; then |
222 |
- inherit gnome2-live |
223 |
-fi |
224 |
- |
225 |
-DESCRIPTION="Provides core UI functions for the GNOME 3 desktop" |
226 |
-HOMEPAGE="http://live.gnome.org/GnomeShell" |
227 |
- |
228 |
-LICENSE="GPL-2" |
229 |
-SLOT="0" |
230 |
-IUSE="+nm-applet" |
231 |
-if [[ ${PV} = 9999 ]]; then |
232 |
- KEYWORDS="" |
233 |
-else |
234 |
- KEYWORDS="~amd64 ~x86" |
235 |
-fi |
236 |
- |
237 |
-# gnome-desktop-2.91.2 is needed due to header changes, db82a33 in gnome-desktop |
238 |
-# FIXME: Automagic gnome-bluetooth[introspection] support. |
239 |
-# latest gsettings-desktop-schemas is needed due to commit 602fa1c6 |
240 |
-# latest g-c-c is needed due to https://bugs.gentoo.org/show_bug.cgi?id=360057 |
241 |
-# libXfixes-5.0 needed for pointer barriers |
242 |
-COMMON_DEPEND=">=dev-libs/glib-2.25.9:2 |
243 |
- >=dev-libs/gjs-0.7.11 |
244 |
- >=dev-libs/gobject-introspection-0.10.1 |
245 |
- x11-libs/gdk-pixbuf:2[introspection] |
246 |
- >=x11-libs/gtk+-3.0.0:3[introspection] |
247 |
- >=media-libs/clutter-1.5.15:1.0[introspection] |
248 |
- >=gnome-base/gnome-desktop-2.91.2:3 |
249 |
- >=gnome-base/gsettings-desktop-schemas-2.91.91 |
250 |
- >=gnome-extra/evolution-data-server-2.32.0 |
251 |
- >=media-libs/gstreamer-0.10.16:0.10 |
252 |
- >=media-libs/gst-plugins-base-0.10.16:0.10 |
253 |
- >=net-im/telepathy-logger-0.2.4[introspection] |
254 |
- >=net-libs/telepathy-glib-0.13.12[introspection] |
255 |
- >=net-wireless/gnome-bluetooth-2.90.0[introspection] |
256 |
- >=sys-auth/polkit-0.100[introspection] |
257 |
- >=x11-wm/mutter-3.0.0[introspection] |
258 |
- |
259 |
- dev-libs/dbus-glib |
260 |
- dev-libs/libxml2:2 |
261 |
- x11-libs/pango[introspection] |
262 |
- dev-libs/libcroco:0.6 |
263 |
- |
264 |
- gnome-base/gconf:2[introspection] |
265 |
- gnome-base/gnome-menus |
266 |
- gnome-base/librsvg |
267 |
- media-libs/libcanberra |
268 |
- media-sound/pulseaudio |
269 |
- |
270 |
- x11-libs/startup-notification |
271 |
- x11-libs/libX11 |
272 |
- >=x11-libs/libXfixes-5.0 |
273 |
- x11-apps/mesa-progs" |
274 |
-# Runtime-only deps are probably incomplete and approximate. |
275 |
-# Each block: |
276 |
-# 1. Pull in polkit-0.101 for pretty authorization dialogs |
277 |
-# 2. Introspection stuff + dconf needed via imports.gi.* |
278 |
-# 3. gnome-session is needed for gnome-session-quit |
279 |
-# 4. Control shell settings |
280 |
-# 5. accountsservice is needed for GdmUserManager |
281 |
-# 6. nm-applet is needed for auth prompting and the wireless connection dialog |
282 |
-RDEPEND="${COMMON_DEPEND} |
283 |
- >=sys-auth/polkit-0.101[introspection] |
284 |
- |
285 |
- >=gnome-base/dconf-0.4.1 |
286 |
- >=gnome-base/libgnomekbd-2.91.4[introspection] |
287 |
- sys-power/upower[introspection] |
288 |
- |
289 |
- >=gnome-base/gnome-session-2.91.91 |
290 |
- |
291 |
- >=gnome-base/gnome-settings-daemon-2.91 |
292 |
- >=gnome-base/gnome-control-center-2.91.92-r1 |
293 |
- |
294 |
- >=sys-apps/accountsservice-0.6.12 |
295 |
- |
296 |
- nm-applet? ( |
297 |
- >=gnome-extra/nm-applet-0.8.999 |
298 |
- >=net-misc/networkmanager-0.8.999[introspection] )" |
299 |
-DEPEND="${COMMON_DEPEND} |
300 |
- sys-devel/gettext |
301 |
- >=dev-util/pkgconfig-0.22 |
302 |
- >=dev-util/intltool-0.26 |
303 |
- gnome-base/gnome-common |
304 |
- !!=dev-lang/spidermonkey-1.8.2*" |
305 |
-# libmozjs.so is picked up from /usr/lib while compiling, so block at build-time |
306 |
-# https://bugs.gentoo.org/show_bug.cgi?id=360413 |
307 |
- |
308 |
-pkg_setup() { |
309 |
- DOCS="AUTHORS README" |
310 |
- # Don't error out on warnings |
311 |
- G2CONF="${G2CONF} |
312 |
- --enable-compile-warnings=maximum |
313 |
- --disable-schemas-compile |
314 |
- --disable-jhbuild-wrapper-script" |
315 |
-} |
316 |
- |
317 |
-src_prepare() { |
318 |
- # https://bugzilla.gnome.org/show_bug.cgi?id=647893 |
319 |
- # can trigger the crash even with accountsservice-0.6.12 |
320 |
- epatch "${FILESDIR}/${PN}-3.0.2-user-removed-signals.patch" |
321 |
- |
322 |
- # https://bugzilla.gnome.org/show_bug.cgi?id=650971 |
323 |
- # Don't clobber extensions' styles |
324 |
- epatch "${FILESDIR}/${PN}-3.0.2-unbreak-extension-css.patch" |
325 |
- gnome2_src_prepare |
326 |
-} |
327 |
- |
328 |
-src_install() { |
329 |
- gnome2_src_install |
330 |
- python_convert_shebangs 2 "${D}"/usr/bin/gnome-shell-extension-tool |
331 |
-} |
332 |
- |
333 |
-pkg_postinst() { |
334 |
- gnome2_pkg_postinst |
335 |
- if ! has_version '>=media-libs/gst-plugins-good-0.10.23' || \ |
336 |
- ! has_version 'media-plugins/gst-plugins-vp8'; then |
337 |
- ewarn "To make use of GNOME Shell's built-in screen recording utility," |
338 |
- ewarn "you need to either install >=media-libs/gst-plugins-good-0.10.23" |
339 |
- ewarn "and media-plugins/gst-plugins-vp8, or use dconf-editor to change" |
340 |
- ewarn "apps.gnome-shell.recorder/pipeline to what you want to use." |
341 |
- fi |
342 |
-} |
343 |
|
344 |
diff --git a/gnome-extra/libgda/libgda-4.99.4.ebuild b/gnome-extra/libgda/libgda-4.99.4.ebuild |
345 |
deleted file mode 100644 |
346 |
index 7a4d659..0000000 |
347 |
--- a/gnome-extra/libgda/libgda-4.99.4.ebuild |
348 |
+++ /dev/null |
349 |
@@ -1,174 +0,0 @@ |
350 |
-# Copyright 1999-2011 Gentoo Foundation |
351 |
-# Distributed under the terms of the GNU General Public License v2 |
352 |
-# $Header: /var/cvsroot/gentoo-x86/gnome-extra/libgda/libgda-4.2.0.ebuild,v 1.3 2010/11/01 12:18:13 eva Exp $ |
353 |
- |
354 |
-EAPI="3" |
355 |
-GNOME2_LA_PUNT="yes" |
356 |
-GCONF_DEBUG="yes" |
357 |
-GNOME_TARBALL_SUFFIX="xz" # remove when python eclass supports EAPI 4 |
358 |
-PYTHON_DEPEND="2" |
359 |
- |
360 |
-inherit autotools db-use eutils flag-o-matic gnome2 java-pkg-opt-2 python |
361 |
-if [[ ${PV} = 9999 ]]; then |
362 |
- inherit gnome2-live |
363 |
-fi |
364 |
- |
365 |
-DESCRIPTION="Gnome Database Access Library" |
366 |
-HOMEPAGE="http://www.gnome-db.org/" |
367 |
-LICENSE="GPL-2 LGPL-2" |
368 |
- |
369 |
-IUSE="berkdb bindist canvas doc firebird gnome-keyring gtk graphviz http +introspection json ldap mdb mysql oci8 postgres sourceview ssl" |
370 |
-SLOT="5" |
371 |
-if [[ ${PV} = 9999 ]]; then |
372 |
- KEYWORDS="" |
373 |
-else |
374 |
- KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" |
375 |
-fi |
376 |
- |
377 |
-# FIXME: sqlite is automagic, but maybe it is a hard-dep |
378 |
-# FIXME: autoconf is a hell of inconsistencies |
379 |
-RDEPEND=" |
380 |
- app-text/iso-codes |
381 |
- >=dev-libs/glib-2.16:2 |
382 |
- >=dev-libs/libxml2-2 |
383 |
- dev-libs/libxslt |
384 |
- dev-libs/libunique:3 |
385 |
- sys-libs/readline |
386 |
- sys-libs/ncurses |
387 |
- berkdb? ( sys-libs/db ) |
388 |
- !bindist? ( firebird? ( dev-db/firebird ) ) |
389 |
- gtk? ( |
390 |
- >=x11-libs/gtk+-3.0.0:3 |
391 |
- canvas? ( x11-libs/goocanvas:2.0 ) |
392 |
- sourceview? ( x11-libs/gtksourceview:3.0 ) |
393 |
- graphviz? ( media-gfx/graphviz ) |
394 |
- ) |
395 |
- gnome-keyring? ( || ( gnome-base/libgnome-keyring <gnome-base/gnome-keyring-2.29.4 ) ) |
396 |
- http? ( >=net-libs/libsoup-2.24:2.4 ) |
397 |
- introspection? ( >=dev-libs/gobject-introspection-0.6.5 ) |
398 |
- json? ( dev-libs/json-glib ) |
399 |
- ldap? ( net-nds/openldap ) |
400 |
- mdb? ( >app-office/mdbtools-0.5 ) |
401 |
- mysql? ( virtual/mysql ) |
402 |
- postgres? ( dev-db/postgresql-base ) |
403 |
- ssl? ( dev-libs/openssl ) |
404 |
- >=dev-db/sqlite-3.6.22:3" |
405 |
- |
406 |
-DEPEND="${RDEPEND} |
407 |
- >=dev-util/pkgconfig-0.18 |
408 |
- >=dev-util/intltool-0.35.5 |
409 |
- >=app-text/gnome-doc-utils-0.9 |
410 |
- doc? ( >=dev-util/gtk-doc-1 )" |
411 |
- |
412 |
-# XXX: some tests fail when run from portage (but pass when building by hand) |
413 |
-RESTRICT="test" |
414 |
- |
415 |
-pkg_setup() { |
416 |
- DOCS="AUTHORS ChangeLog NEWS README" |
417 |
- |
418 |
- if use canvas || use graphviz || use sourceview; then |
419 |
- if ! use gtk; then |
420 |
- ewarn "You must enable USE=gtk to make use of canvas, graphivz or sourceview USE flag." |
421 |
- ewarn "Disabling for now." |
422 |
- G2CONF="${G2CONF} --without-goocanvas --without-graphivz --without-gtksourceview" |
423 |
- else |
424 |
- G2CONF="${G2CONF} |
425 |
- $(use_with canvas goocanvas) |
426 |
- $(use_with graphviz) |
427 |
- $(use_with sourceview gtksourceview)" |
428 |
- fi |
429 |
- fi |
430 |
- |
431 |
- G2CONF="${G2CONF} |
432 |
- --with-unique |
433 |
- --disable-scrollkeeper |
434 |
- --disable-static |
435 |
- --enable-system-sqlite |
436 |
- $(use_with berkdb bdb /usr) |
437 |
- $(use_with gnome-keyring) |
438 |
- $(use_with gtk ui) |
439 |
- $(use_with http libsoup) |
440 |
- $(use_enable introspection) |
441 |
- $(use_with java java $JAVA_HOME) |
442 |
- $(use_enable json) |
443 |
- $(use_with ldap) |
444 |
- $(use_with mdb mdb /usr) |
445 |
- $(use_with mysql mysql /usr) |
446 |
- $(use_with postgres postgres /usr) |
447 |
- $(use_enable ssl crypto)" |
448 |
- |
449 |
- if use bindist; then |
450 |
- # firebird license is not GPL compatible |
451 |
- G2CONF="${G2CONF} --without-firebird" |
452 |
- else |
453 |
- G2CONF="${G2CONF} $(use_with firebird firebird /usr)" |
454 |
- fi |
455 |
- |
456 |
- use berkdb && append-cppflags "-I$(db_includedir)" |
457 |
- use oci8 || G2CONF="${G2CONF} --without-oracle" |
458 |
- |
459 |
- # Not in portage |
460 |
- G2CONF="${G2CONF} |
461 |
- --disable-default-binary" |
462 |
-} |
463 |
- |
464 |
-src_prepare() { |
465 |
- # Fix build order for generated content, upstream #630958 |
466 |
- #epatch "${FILESDIR}/${PN}-9999-fix-build-order.patch" |
467 |
- |
468 |
- # Fix compilation failure of keyword_hash.c, upstream #630959 |
469 |
- #epatch "${FILESDIR}/${PN}-4.2.0-missing-include-in-keyword_hash-generator.patch" |
470 |
- |
471 |
- # Upstream patch to fix a serious statement rewriting bug, in next release |
472 |
- epatch "${FILESDIR}/${P}-statement-rewriting-fix.patch" |
473 |
- |
474 |
- # Disable broken tests so we can check the others |
475 |
- epatch "${FILESDIR}/${PN}-9999-disable-broken-tests.patch" |
476 |
- |
477 |
- # Prevent file collisions with libgda:4 |
478 |
- epatch "${FILESDIR}/${PN}-4.99.1-gda-browser-help-collision.patch" |
479 |
- epatch "${FILESDIR}/${PN}-4.99.1-gda-browser-doc-collision.patch" |
480 |
- epatch "${FILESDIR}/${PN}-4.99.1-control-center-icon-collision.patch" |
481 |
- # Move files with mv (since epatch can't handle rename diffs) and |
482 |
- # update pre-generated gtk-doc files (for non-git versions of libgda) |
483 |
- local f |
484 |
- for f in tools/browser/doc/gda-browser* ; do |
485 |
- mv ${f} ${f/gda-browser/gda-browser-5.0} || die "mv ${f} failed" |
486 |
- done |
487 |
- if [[ ${PV} != 9999 ]] ; then |
488 |
- for f in tools/browser/doc/html/gda-browser.devhelp* ; do |
489 |
- sed -e 's:name="gda-browser":name="gda-browser-5.0":' \ |
490 |
- -i ${f} || die "sed ${f} failed" |
491 |
- mv ${f} ${f/gda-browser/gda-browser-5.0} || die "mv ${f} failed" |
492 |
- done |
493 |
- fi |
494 |
- for f in control-center/data/*_gda-control-center.png ; do |
495 |
- mv ${f} ${f/_gda-control-center.png/_gda-control-center-5.0.png} || |
496 |
- die "mv ${f} failed" |
497 |
- done |
498 |
- |
499 |
- python_convert_shebangs -r 2 libgda-report/RML/trml2{html,pdf} |
500 |
- |
501 |
- eautoreconf |
502 |
- gnome2_src_prepare |
503 |
-} |
504 |
- |
505 |
-src_test() { |
506 |
- emake check XDG_DATA_HOME="${T}/.local" || die "tests failed" |
507 |
-} |
508 |
- |
509 |
-pkg_postinst() { |
510 |
- gnome2_pkg_postinst |
511 |
- local d |
512 |
- for d in /usr/share/libgda-5.0/gda_trml2{html,pdf} ; do |
513 |
- python_mod_optimize ${d} |
514 |
- done |
515 |
-} |
516 |
- |
517 |
-pkg_postrm() { |
518 |
- gnome2_pkg_postrm |
519 |
- local d |
520 |
- for d in /usr/share/libgda-5.0/gda_trml2{html,pdf} ; do |
521 |
- python_mod_cleanup ${d} |
522 |
- done |
523 |
-} |
524 |
|
525 |
diff --git a/mail-client/evolution/evolution-3.0.3.ebuild b/mail-client/evolution/evolution-3.0.3.ebuild |
526 |
deleted file mode 100644 |
527 |
index a501b84..0000000 |
528 |
--- a/mail-client/evolution/evolution-3.0.3.ebuild |
529 |
+++ /dev/null |
530 |
@@ -1,184 +0,0 @@ |
531 |
-# Copyright 1999-2011 Gentoo Foundation |
532 |
-# Distributed under the terms of the GNU General Public License v2 |
533 |
-# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/evolution-2.32.1-r1.ebuild,v 1.3 2011/01/15 19:56:39 nirbheek Exp $ |
534 |
- |
535 |
-EAPI="3" |
536 |
-GCONF_DEBUG="no" |
537 |
-GNOME2_LA_PUNT="yes" |
538 |
-PYTHON_DEPEND="python? 2:2.4" |
539 |
- |
540 |
-inherit autotools eutils flag-o-matic gnome2 python |
541 |
-if [[ ${PV} = 9999 ]]; then |
542 |
- inherit gnome2-live |
543 |
-fi |
544 |
- |
545 |
-DESCRIPTION="Integrated mail, addressbook and calendaring functionality" |
546 |
-HOMEPAGE="http://www.gnome.org/projects/evolution/" |
547 |
- |
548 |
-LICENSE="GPL-2 LGPL-2 OPENLDAP" |
549 |
-SLOT="2.0" |
550 |
-if [[ ${PV} = 9999 ]]; then |
551 |
- KEYWORDS="" |
552 |
-else |
553 |
- KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" |
554 |
-fi |
555 |
-IUSE="clutter connman crypt doc gstreamer kerberos ldap map networkmanager python ssl" |
556 |
- |
557 |
-# We need a graphical pinentry frontend to be able to ask for the GPG |
558 |
-# password from inside evolution, bug 160302 |
559 |
-PINENTRY_DEPEND="|| ( app-crypt/pinentry[gtk] app-crypt/pinentry-qt app-crypt/pinentry[qt4] )" |
560 |
- |
561 |
-# contacts-map plugin requires libchaimplain and geoclue |
562 |
-# glade-3 support is for maintainers only per configure.ac |
563 |
-# mono plugin disabled as it's incompatible with 2.8 and lacks maintainance (see bgo#634571) |
564 |
-# pst is not mature enough and changes API/ABI frequently |
565 |
-COMMON_DEPEND=">=dev-libs/glib-2.28:2 |
566 |
- >=x11-libs/cairo-1.9.15[glib] |
567 |
- >=x11-libs/gtk+-3.0.2:3 |
568 |
- >=dev-libs/libunique-2.91.4:3 |
569 |
- >=gnome-base/gnome-desktop-2.91.3:3 |
570 |
- >=dev-libs/libgweather-2.90.0:2 |
571 |
- >=media-libs/libcanberra-0.25[gtk3] |
572 |
- >=x11-libs/libnotify-0.7 |
573 |
- >=gnome-extra/evolution-data-server-${PV}[weather] |
574 |
- >=gnome-extra/gtkhtml-3.31.3:4.0 |
575 |
- >=gnome-base/gconf-2:2 |
576 |
- dev-libs/atk |
577 |
- >=dev-libs/libxml2-2.7.3:2 |
578 |
- >=net-libs/libsoup-gnome-2.31.2:2.4 |
579 |
- >=x11-misc/shared-mime-info-0.22 |
580 |
- >=x11-themes/gnome-icon-theme-2.30.2.1 |
581 |
- >=dev-libs/libgdata-0.4 |
582 |
- |
583 |
- x11-libs/libSM |
584 |
- x11-libs/libICE |
585 |
- |
586 |
- clutter? ( |
587 |
- >=media-libs/clutter-1.0.0:1.0 |
588 |
- >=media-libs/clutter-gtk-0.90:1.0 |
589 |
- x11-libs/mx ) |
590 |
- connman? ( net-misc/connman ) |
591 |
- crypt? ( || ( |
592 |
- ( >=app-crypt/gnupg-2.0.1-r2 ${PINENTRY_DEPEND} ) |
593 |
- =app-crypt/gnupg-1.4* ) ) |
594 |
- gstreamer? ( |
595 |
- >=media-libs/gstreamer-0.10:0.10 |
596 |
- >=media-libs/gst-plugins-base-0.10:0.10 ) |
597 |
- kerberos? ( virtual/krb5 ) |
598 |
- ldap? ( >=net-nds/openldap-2 ) |
599 |
- map? ( |
600 |
- >=app-misc/geoclue-0.11.1 |
601 |
- media-libs/libchamplain:0.8 ) |
602 |
- networkmanager? ( >=net-misc/networkmanager-0.7 ) |
603 |
- ssl? ( |
604 |
- >=dev-libs/nspr-4.6.1 |
605 |
- >=dev-libs/nss-3.11 )" |
606 |
-DEPEND="${COMMON_DEPEND} |
607 |
- >=dev-util/pkgconfig-0.16 |
608 |
- >=dev-util/intltool-0.40.0 |
609 |
- >=sys-devel/gettext-0.17 |
610 |
- sys-devel/bison |
611 |
- app-text/scrollkeeper |
612 |
- >=app-text/gnome-doc-utils-0.9.1 |
613 |
- app-text/docbook-xml-dtd:4.1.2 |
614 |
- >=gnome-base/gnome-common-2.12 |
615 |
- >=dev-util/gtk-doc-am-1.9 |
616 |
- doc? ( >=dev-util/gtk-doc-1.9 )" |
617 |
-# eautoreconf needs: |
618 |
-# >=gnome-base/gnome-common-2.12 |
619 |
-# >=dev-util/gtk-doc-am-1.9 |
620 |
-RDEPEND="${COMMON_DEPEND} |
621 |
- !<gnome-extra/evolution-exchange-2.32" |
622 |
- |
623 |
-# Need EAPI=4 support in python eclass |
624 |
-#REQUIRED_USE="map? ( clutter )" |
625 |
- |
626 |
-pkg_setup() { |
627 |
- ELTCONF="--reverse-deps" |
628 |
- DOCS="AUTHORS ChangeLog* HACKING MAINTAINERS NEWS* README" |
629 |
- # image-inline plugin needs a gtk+:3 gtkimageview, which does not exist yet |
630 |
- G2CONF="${G2CONF} |
631 |
- --without-glade-catalog |
632 |
- --without-kde-applnk-path |
633 |
- --enable-plugins=experimental |
634 |
- --disable-image-inline |
635 |
- --disable-mono |
636 |
- --disable-profiling |
637 |
- --disable-pst-import |
638 |
- --enable-canberra |
639 |
- --enable-weather |
640 |
- $(use_enable ssl nss) |
641 |
- $(use_enable ssl smime) |
642 |
- $(use_enable networkmanager nm) |
643 |
- $(use_enable connman) |
644 |
- $(use_enable gstreamer audio-inline) |
645 |
- $(use_enable map contacts-map) |
646 |
- $(use_enable python) |
647 |
- $(use_with clutter) |
648 |
- $(use_with ldap openldap) |
649 |
- $(use_with kerberos krb5 /usr)" |
650 |
- |
651 |
- # dang - I've changed this to do --enable-plugins=experimental. This will |
652 |
- # autodetect new-mail-notify and exchange, but that cannot be helped for the |
653 |
- # moment. They should be changed to depend on a --enable-<foo> like mono |
654 |
- # is. This cleans up a ton of crap from this ebuild. |
655 |
- |
656 |
- # Use NSS/NSPR only if 'ssl' is enabled. |
657 |
- if use ssl ; then |
658 |
- G2CONF="${G2CONF} --enable-nss=yes" |
659 |
- else |
660 |
- G2CONF="${G2CONF} |
661 |
- --without-nspr-libs |
662 |
- --without-nspr-includes |
663 |
- --without-nss-libs |
664 |
- --without-nss-includes" |
665 |
- fi |
666 |
- |
667 |
- # NM and connman support cannot coexist |
668 |
- if use networkmanager && use connman ; then |
669 |
- ewarn "It is not possible to enable both ConnMan and NetworkManager, disabling connman..." |
670 |
- G2CONF="${G2CONF} --disable-connman" |
671 |
- fi |
672 |
- |
673 |
- python_set_active_version 2 |
674 |
-} |
675 |
- |
676 |
-src_prepare() { |
677 |
- # Use NSS/NSPR only if 'ssl' is enabled. |
678 |
- if use ssl ; then |
679 |
- sed -e 's|mozilla-nss|nss|' \ |
680 |
- -e 's|mozilla-nspr|nspr|' \ |
681 |
- -i configure.ac || die "sed 2 failed" |
682 |
- fi |
683 |
- |
684 |
- # Fix compilation flags crazyness |
685 |
- sed -e 's/\(AM_CPPFLAGS="\)$WARNING_FLAGS"/\1/' \ |
686 |
- -i configure.ac || die "sed 1 failed" |
687 |
- |
688 |
- if [[ ${PV} != 9999 ]]; then |
689 |
- intltoolize --force --copy --automake || die "intltoolize failed" |
690 |
- eautoreconf |
691 |
- fi |
692 |
- |
693 |
- gnome2_src_prepare |
694 |
-} |
695 |
- |
696 |
-pkg_postinst() { |
697 |
- gnome2_pkg_postinst |
698 |
- |
699 |
- elog "To change the default browser if you are not using GNOME, edit" |
700 |
- elog "~/.local/share/applications/mimeapps.list so it includes the" |
701 |
- elog "following content:" |
702 |
- elog "" |
703 |
- elog "[Default Applications]" |
704 |
- elog "x-scheme-handler/http=firefox.desktop" |
705 |
- elog "x-scheme-handler/https=firefox.desktop" |
706 |
- elog "" |
707 |
- elog "(replace firefox.desktop with the name of the appropriate .desktop" |
708 |
- elog "file from /usr/share/applications if you use a different browser)." |
709 |
- elog "" |
710 |
- elog "Junk filters are now a run-time choice. You will get a choice of" |
711 |
- elog "bogofilter or spamassassin based on which you have installed" |
712 |
- elog "" |
713 |
- elog "You have to install one of these for the spam filtering to actually work" |
714 |
-} |
715 |
|
716 |
diff --git a/mail-client/evolution/evolution-9999.ebuild b/mail-client/evolution/evolution-9999.ebuild |
717 |
index 04f6f5e..80c1fce 100644 |
718 |
--- a/mail-client/evolution/evolution-9999.ebuild |
719 |
+++ b/mail-client/evolution/evolution-9999.ebuild |
720 |
@@ -5,6 +5,7 @@ |
721 |
EAPI="3" |
722 |
GCONF_DEBUG="no" |
723 |
GNOME2_LA_PUNT="yes" |
724 |
+GNOME_TARBALL_SUFFIX="xz" |
725 |
PYTHON_DEPEND="python? 2:2.4" |
726 |
|
727 |
inherit autotools flag-o-matic gnome2 python |
728 |
@@ -91,7 +92,8 @@ RDEPEND="${COMMON_DEPEND} |
729 |
!<gnome-extra/evolution-exchange-2.32" |
730 |
|
731 |
# Need EAPI=4 support in python eclass |
732 |
-#REQUIRED_USE="map? ( clutter )" |
733 |
+#REQUIRED_USE="map? ( clutter ) |
734 |
+# ^^ ( connman networkmanager )" |
735 |
|
736 |
pkg_setup() { |
737 |
ELTCONF="--reverse-deps" |
738 |
@@ -135,6 +137,7 @@ pkg_setup() { |
739 |
fi |
740 |
|
741 |
# NM and connman support cannot coexist |
742 |
+ # XXX: remove with EAPI 4 |
743 |
if use networkmanager && use connman ; then |
744 |
ewarn "It is not possible to enable both ConnMan and NetworkManager, disabling connman..." |
745 |
G2CONF="${G2CONF} --disable-connman" |
746 |
@@ -144,23 +147,12 @@ pkg_setup() { |
747 |
} |
748 |
|
749 |
src_prepare() { |
750 |
- # Use NSS/NSPR only if 'ssl' is enabled. |
751 |
- if use ssl ; then |
752 |
- sed -e 's|mozilla-nss|nss|' \ |
753 |
- -e 's|mozilla-nspr|nspr|' \ |
754 |
- -i configure.ac || die "sed 2 failed" |
755 |
- fi |
756 |
+ gnome2_src_prepare |
757 |
|
758 |
# Fix compilation flags crazyness |
759 |
+ # Note: sed configure.ac if eautoreconf, conditional on [[ 9999 ]] |
760 |
sed -e 's/\(AM_CPPFLAGS="\)$WARNING_FLAGS"/\1/' \ |
761 |
- -i configure.ac || die "sed 1 failed" |
762 |
- |
763 |
- if [[ ${PV} != 9999 ]]; then |
764 |
- intltoolize --force --copy --automake || die "intltoolize failed" |
765 |
- eautoreconf |
766 |
- fi |
767 |
- |
768 |
- gnome2_src_prepare |
769 |
+ -i configure || die "CPPFLAGS sed failed" |
770 |
} |
771 |
|
772 |
pkg_postinst() { |
773 |
|
774 |
diff --git a/mail-client/evolution/files/0001-Bug-651039-Always-update-signature-in-composer-on-ac.patch b/mail-client/evolution/files/0001-Bug-651039-Always-update-signature-in-composer-on-ac.patch |
775 |
deleted file mode 100644 |
776 |
index 7f80812..0000000 |
777 |
--- a/mail-client/evolution/files/0001-Bug-651039-Always-update-signature-in-composer-on-ac.patch |
778 |
+++ /dev/null |
779 |
@@ -1,25 +0,0 @@ |
780 |
-From 843e35c48ada910eb1fefb202bcb849d1047c359 Mon Sep 17 00:00:00 2001 |
781 |
-From: Milan Crha <mcrha@××××××.com> |
782 |
-Date: Wed, 25 May 2011 11:20:26 +0200 |
783 |
-Subject: [PATCH 1/3] Bug #651039 - Always update signature in composer on |
784 |
- account change |
785 |
- |
786 |
---- |
787 |
- composer/e-msg-composer.c | 1 + |
788 |
- 1 files changed, 1 insertions(+), 0 deletions(-) |
789 |
- |
790 |
-diff --git a/composer/e-msg-composer.c b/composer/e-msg-composer.c |
791 |
-index 0bc9ca9..c8f1993 100644 |
792 |
---- a/composer/e-msg-composer.c |
793 |
-+++ b/composer/e-msg-composer.c |
794 |
-@@ -1714,6 +1714,7 @@ msg_composer_account_changed_cb (EMsgComposer *composer) |
795 |
- uid = account->id->sig_uid; |
796 |
- signature = uid ? e_get_signature_by_uid (uid) : NULL; |
797 |
- e_composer_header_table_set_signature (table, signature); |
798 |
-+ e_msg_composer_show_sig_file (composer); |
799 |
- } |
800 |
- |
801 |
- static void |
802 |
--- |
803 |
-1.7.5.rc3 |
804 |
- |
805 |
|
806 |
diff --git a/mail-client/evolution/files/0002-Bug-651062-refresh_folders_exec-reports-progress-inc.patch b/mail-client/evolution/files/0002-Bug-651062-refresh_folders_exec-reports-progress-inc.patch |
807 |
deleted file mode 100644 |
808 |
index 4579cda..0000000 |
809 |
--- a/mail-client/evolution/files/0002-Bug-651062-refresh_folders_exec-reports-progress-inc.patch |
810 |
+++ /dev/null |
811 |
@@ -1,41 +0,0 @@ |
812 |
-From fbd3aca29cc12c8a58d15237e3e44f83fe1b8229 Mon Sep 17 00:00:00 2001 |
813 |
-From: Matthew Barnes <mbarnes@××××××.com> |
814 |
-Date: Thu, 26 May 2011 07:03:15 -0400 |
815 |
-Subject: [PATCH 2/3] Bug 651062 - refresh_folders_exec() reports progress |
816 |
- incorrectly. |
817 |
- |
818 |
-(cherry picked from commit 6ddc2340d03b6fe3745e97ca10336408833c7294) |
819 |
---- |
820 |
- mail/mail-send-recv.c | 7 ++++++- |
821 |
- 1 files changed, 6 insertions(+), 1 deletions(-) |
822 |
- |
823 |
-diff --git a/mail/mail-send-recv.c b/mail/mail-send-recv.c |
824 |
-index a4e2e2e..79018f3 100644 |
825 |
---- a/mail/mail-send-recv.c |
826 |
-+++ b/mail/mail-send-recv.c |
827 |
-@@ -924,6 +924,8 @@ refresh_folders_exec (struct _refresh_folders_msg *m, |
828 |
- |
829 |
- get_folders (m->store, m->folders, m->finfo); |
830 |
- |
831 |
-+ camel_operation_push_message (cancellable, _("Updating...")); |
832 |
-+ |
833 |
- for (i=0;i<m->folders->len;i++) { |
834 |
- folder = e_mail_session_uri_to_folder_sync ( |
835 |
- m->info->session, |
836 |
-@@ -944,9 +946,12 @@ refresh_folders_exec (struct _refresh_folders_msg *m, |
837 |
- break; |
838 |
- |
839 |
- if (m->info->state != SEND_CANCELLED) |
840 |
-- g_signal_emit_by_name (m->info->cancellable, "status", _("Updating..."), 100 * i / m->folders->len); |
841 |
-+ camel_operation_progress ( |
842 |
-+ cancellable, 100 * i / m->folders->len); |
843 |
- } |
844 |
- |
845 |
-+ camel_operation_pop_message (cancellable); |
846 |
-+ |
847 |
- if (cancellable) |
848 |
- g_signal_handler_disconnect (m->info->cancellable, handler_id); |
849 |
- } |
850 |
--- |
851 |
-1.7.5.rc3 |
852 |
- |
853 |
|
854 |
diff --git a/mail-client/evolution/files/0003-Bug-651135-Crash-using-saved-search-with-an-empty-ex.patch b/mail-client/evolution/files/0003-Bug-651135-Crash-using-saved-search-with-an-empty-ex.patch |
855 |
deleted file mode 100644 |
856 |
index bcec4dd..0000000 |
857 |
--- a/mail-client/evolution/files/0003-Bug-651135-Crash-using-saved-search-with-an-empty-ex.patch |
858 |
+++ /dev/null |
859 |
@@ -1,37 +0,0 @@ |
860 |
-From af08ff1bebc895b4de15d1822d96c64d092f2bb5 Mon Sep 17 00:00:00 2001 |
861 |
-From: Milan Crha <mcrha@××××××.com> |
862 |
-Date: Thu, 26 May 2011 13:48:22 +0200 |
863 |
-Subject: [PATCH 3/3] Bug #651135 - Crash using saved search with an empty |
864 |
- expression |
865 |
- |
866 |
---- |
867 |
- addressbook/gui/widgets/e-addressbook-model.c | 6 ++++++ |
868 |
- 1 files changed, 6 insertions(+), 0 deletions(-) |
869 |
- |
870 |
-diff --git a/addressbook/gui/widgets/e-addressbook-model.c b/addressbook/gui/widgets/e-addressbook-model.c |
871 |
-index 8e62e40..17eb2d3 100644 |
872 |
---- a/addressbook/gui/widgets/e-addressbook-model.c |
873 |
-+++ b/addressbook/gui/widgets/e-addressbook-model.c |
874 |
-@@ -904,6 +904,9 @@ e_addressbook_model_get_query (EAddressbookModel *model) |
875 |
- { |
876 |
- g_return_val_if_fail (E_IS_ADDRESSBOOK_MODEL (model), NULL); |
877 |
- |
878 |
-+ if (!model->priv->query) |
879 |
-+ return NULL; |
880 |
-+ |
881 |
- return e_book_query_to_string (model->priv->query); |
882 |
- } |
883 |
- |
884 |
-@@ -920,6 +923,9 @@ e_addressbook_model_set_query (EAddressbookModel *model, |
885 |
- else |
886 |
- book_query = e_book_query_from_string (query); |
887 |
- |
888 |
-+ if (!book_query) |
889 |
-+ return; |
890 |
-+ |
891 |
- if (model->priv->query != NULL) { |
892 |
- gchar *old_query, *new_query; |
893 |
- |
894 |
--- |
895 |
-1.7.5.rc3 |
896 |
- |
897 |
|
898 |
diff --git a/mail-client/evolution/files/evolution-2.32.0-wrong-lafile-usage.patch b/mail-client/evolution/files/evolution-2.32.0-wrong-lafile-usage.patch |
899 |
deleted file mode 100644 |
900 |
index 9f0993d..0000000 |
901 |
--- a/mail-client/evolution/files/evolution-2.32.0-wrong-lafile-usage.patch |
902 |
+++ /dev/null |
903 |
@@ -1,13 +0,0 @@ |
904 |
-diff --git a/addressbook/gui/contact-editor/Makefile.am b/addressbook/gui/contact-editor/Makefile.am |
905 |
-index 486d71e..763808b 100644 |
906 |
---- a/addressbook/gui/contact-editor/Makefile.am |
907 |
-+++ b/addressbook/gui/contact-editor/Makefile.am |
908 |
-@@ -33,7 +33,7 @@ libecontacteditor_la_LIBADD = \ |
909 |
- $(top_builddir)/addressbook/gui/widgets/libeabwidgets.la \ |
910 |
- $(top_builddir)/addressbook/gui/merging/libeabbookmerging.la \ |
911 |
- $(top_builddir)/addressbook/printing/libecontactprint.la \ |
912 |
-- $(top_builddir)/widgets/menus/.libs/libmenus.la \ |
913 |
-+ $(top_builddir)/widgets/menus/libmenus.la \ |
914 |
- $(EVOLUTION_ADDRESSBOOK_LIBS) \ |
915 |
- $(GNOME_PLATFORM_LIBS) |
916 |
- |
917 |
|
918 |
diff --git a/x11-wm/mutter/files/mutter-3.0.2-argb-windows-shadow.patch b/x11-wm/mutter/files/mutter-3.0.2-argb-windows-shadow.patch |
919 |
deleted file mode 100644 |
920 |
index 2ae376d..0000000 |
921 |
--- a/x11-wm/mutter/files/mutter-3.0.2-argb-windows-shadow.patch |
922 |
+++ /dev/null |
923 |
@@ -1,764 +0,0 @@ |
924 |
-From 67c3c93b8fd1e11716e72142ca43deb978e15c98 Mon Sep 17 00:00:00 2001 |
925 |
-From: Owen W. Taylor <otaylor@××××××××.net> |
926 |
-Date: Tue, 22 Mar 2011 19:36:12 +0000 |
927 |
-Subject: Only shadow ARGB windows with a frame outside the frame |
928 |
- |
929 |
-An ARGB window with a frame is likely something like a transparent |
930 |
-terminal. It looks awful (and breaks transparency) to draw a big |
931 |
-opaque black shadow under the window, so clip out the region under |
932 |
-the terminal from the shadow we draw. |
933 |
- |
934 |
-Add meta_window_get_frame_bounds() to get a cairo region for the |
935 |
-outer bounds of the frame of a window, and modify the frame handling |
936 |
-code to notice changes to the frame shape and discard a cached |
937 |
-region. meta_frames_apply_shapes() is refactored so we can extract |
938 |
-meta_frames_get_frame_bounds() from it. |
939 |
- |
940 |
-https://bugzilla.gnome.org/show_bug.cgi?id=635268 |
941 |
---- |
942 |
-diff --git a/src/compositor/meta-shadow-factory-private.h b/src/compositor/meta-shadow-factory-private.h |
943 |
-index 3d51cbb..e6b033e 100644 |
944 |
---- a/src/compositor/meta-shadow-factory-private.h |
945 |
-+++ b/src/compositor/meta-shadow-factory-private.h |
946 |
-@@ -47,7 +47,8 @@ void meta_shadow_paint (MetaShadow *shadow, |
947 |
- int window_width, |
948 |
- int window_height, |
949 |
- guint8 opacity, |
950 |
-- cairo_region_t *clip); |
951 |
-+ cairo_region_t *clip, |
952 |
-+ gboolean clip_strictly); |
953 |
- void meta_shadow_get_bounds (MetaShadow *shadow, |
954 |
- int window_x, |
955 |
- int window_y, |
956 |
-diff --git a/src/compositor/meta-shadow-factory.c b/src/compositor/meta-shadow-factory.c |
957 |
-index 1a9a447..f8bb1a8 100644 |
958 |
---- a/src/compositor/meta-shadow-factory.c |
959 |
-+++ b/src/compositor/meta-shadow-factory.c |
960 |
-@@ -189,8 +189,10 @@ meta_shadow_unref (MetaShadow *shadow) |
961 |
- * @window_width: actual width of the region to paint a shadow for |
962 |
- * @window_height: actual height of the region to paint a shadow for |
963 |
- * @clip: (allow-none): if non-%NULL specifies the visible portion |
964 |
-- * of the shadow. Drawing won't be strictly clipped to this region |
965 |
-- * but it will be used to optimize what is drawn. |
966 |
-+ * of the shadow. |
967 |
-+ * @clip_strictly: if %TRUE, drawing will be clipped strictly |
968 |
-+ * to @clip, otherwise, it will be only used to optimize |
969 |
-+ * drawing. |
970 |
- * |
971 |
- * Paints the shadow at the given position, for the specified actual |
972 |
- * size of the region. (Since a #MetaShadow can be shared between |
973 |
-@@ -204,7 +206,8 @@ meta_shadow_paint (MetaShadow *shadow, |
974 |
- int window_width, |
975 |
- int window_height, |
976 |
- guint8 opacity, |
977 |
-- cairo_region_t *clip) |
978 |
-+ cairo_region_t *clip, |
979 |
-+ gboolean clip_strictly) |
980 |
- { |
981 |
- float texture_width = cogl_texture_get_width (shadow->texture); |
982 |
- float texture_height = cogl_texture_get_height (shadow->texture); |
983 |
-@@ -276,6 +279,9 @@ meta_shadow_paint (MetaShadow *shadow, |
984 |
- dest_rect.y = dest_y[j]; |
985 |
- dest_rect.height = dest_y[j + 1] - dest_y[j]; |
986 |
- |
987 |
-+ if (dest_rect.height == 0) |
988 |
-+ continue; |
989 |
-+ |
990 |
- for (i = 0; i < n_x; i++) |
991 |
- { |
992 |
- cairo_region_overlap_t overlap; |
993 |
-@@ -283,16 +289,64 @@ meta_shadow_paint (MetaShadow *shadow, |
994 |
- dest_rect.x = dest_x[i]; |
995 |
- dest_rect.width = dest_x[i + 1] - dest_x[i]; |
996 |
- |
997 |
-+ if (dest_rect.width == 0) |
998 |
-+ continue; |
999 |
-+ |
1000 |
- if (clip) |
1001 |
- overlap = cairo_region_contains_rectangle (clip, &dest_rect); |
1002 |
- else |
1003 |
-- overlap = CAIRO_REGION_OVERLAP_PART; |
1004 |
-+ overlap = CAIRO_REGION_OVERLAP_IN; |
1005 |
- |
1006 |
-- if (overlap != CAIRO_REGION_OVERLAP_OUT) |
1007 |
-- cogl_rectangle_with_texture_coords (dest_x[i], dest_y[j], |
1008 |
-- dest_x[i + 1], dest_y[j + 1], |
1009 |
-- src_x[i], src_y[j], |
1010 |
-- src_x[i + 1], src_y[j + 1]); |
1011 |
-+ /* There's quite a bit of overhead from allocating a new |
1012 |
-+ * region in order to find an exact intersection and |
1013 |
-+ * generating more geometry - we make the assumption that |
1014 |
-+ * unless we have to clip strictly it will be cheaper to |
1015 |
-+ * just draw the entire rectangle. |
1016 |
-+ */ |
1017 |
-+ if (overlap == CAIRO_REGION_OVERLAP_IN || |
1018 |
-+ (overlap == CAIRO_REGION_OVERLAP_PART && !clip_strictly)) |
1019 |
-+ { |
1020 |
-+ cogl_rectangle_with_texture_coords (dest_x[i], dest_y[j], |
1021 |
-+ dest_x[i + 1], dest_y[j + 1], |
1022 |
-+ src_x[i], src_y[j], |
1023 |
-+ src_x[i + 1], src_y[j + 1]); |
1024 |
-+ } |
1025 |
-+ else if (overlap == CAIRO_REGION_OVERLAP_PART) |
1026 |
-+ { |
1027 |
-+ cairo_region_t *intersection; |
1028 |
-+ int n_rectangles, k; |
1029 |
-+ |
1030 |
-+ intersection = cairo_region_create_rectangle (&dest_rect); |
1031 |
-+ cairo_region_intersect (intersection, clip); |
1032 |
-+ |
1033 |
-+ n_rectangles = cairo_region_num_rectangles (intersection); |
1034 |
-+ for (k = 0; k < n_rectangles; k++) |
1035 |
-+ { |
1036 |
-+ cairo_rectangle_int_t rect; |
1037 |
-+ float src_x1, src_x2, src_y1, src_y2; |
1038 |
-+ |
1039 |
-+ cairo_region_get_rectangle (intersection, k, &rect); |
1040 |
-+ |
1041 |
-+ /* Separately linear interpolate X and Y coordinates in the source |
1042 |
-+ * based on the destination X and Y coordinates */ |
1043 |
-+ |
1044 |
-+ src_x1 = (src_x[i] * (dest_rect.x + dest_rect.width - rect.x) + |
1045 |
-+ src_x[i + 1] * (rect.x - dest_rect.x)) / dest_rect.width; |
1046 |
-+ src_x2 = (src_x[i] * (dest_rect.x + dest_rect.width - (rect.x + rect.width)) + |
1047 |
-+ src_x[i + 1] * (rect.x + rect.width - dest_rect.x)) / dest_rect.width; |
1048 |
-+ |
1049 |
-+ src_y1 = (src_y[j] * (dest_rect.y + dest_rect.height - rect.y) + |
1050 |
-+ src_y[j + 1] * (rect.y - dest_rect.y)) / dest_rect.height; |
1051 |
-+ src_y2 = (src_y[j] * (dest_rect.y + dest_rect.height - (rect.y + rect.height)) + |
1052 |
-+ src_y[j + 1] * (rect.y + rect.height - dest_rect.y)) / dest_rect.height; |
1053 |
-+ |
1054 |
-+ cogl_rectangle_with_texture_coords (rect.x, rect.y, |
1055 |
-+ rect.x + rect.width, rect.y + rect.height, |
1056 |
-+ src_x1, src_y1, src_x2, src_y2); |
1057 |
-+ } |
1058 |
-+ |
1059 |
-+ cairo_region_destroy (intersection); |
1060 |
-+ } |
1061 |
- } |
1062 |
- } |
1063 |
- } |
1064 |
-diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c |
1065 |
-index 3be0363..4aab5c9 100644 |
1066 |
---- a/src/compositor/meta-window-actor.c |
1067 |
-+++ b/src/compositor/meta-window-actor.c |
1068 |
-@@ -702,6 +702,26 @@ meta_window_actor_get_shadow_bounds (MetaWindowActor *self, |
1069 |
- } |
1070 |
- #endif |
1071 |
- |
1072 |
-+/* If we have an ARGB32 window that we decorate with a frame, it's |
1073 |
-+ * probably something like a translucent terminal - something where |
1074 |
-+ * the alpha channel represents transparency rather than a shape. We |
1075 |
-+ * don't want to show the shadow through the translucent areas since |
1076 |
-+ * the shadow is wrong for translucent windows (it should be |
1077 |
-+ * translucent itself and colored), and not only that, will /look/ |
1078 |
-+ * horribly wrong - a misplaced big black blob. As a hack, what we |
1079 |
-+ * want to do is just draw the shadow as normal outside the frame, and |
1080 |
-+ * inside the frame draw no shadow. This is also not even close to |
1081 |
-+ * the right result, but looks OK. We also apply this approach to |
1082 |
-+ * windows set to be partially translucent with _NET_WM_WINDOW_OPACITY. |
1083 |
-+ */ |
1084 |
-+static gboolean |
1085 |
-+clip_shadow_under_window (MetaWindowActor *self) |
1086 |
-+{ |
1087 |
-+ MetaWindowActorPrivate *priv = self->priv; |
1088 |
-+ |
1089 |
-+ return (priv->argb32 || priv->opacity != 0xff) && priv->window->frame; |
1090 |
-+} |
1091 |
-+ |
1092 |
- static void |
1093 |
- meta_window_actor_paint (ClutterActor *actor) |
1094 |
- { |
1095 |
-@@ -714,17 +734,36 @@ meta_window_actor_paint (ClutterActor *actor) |
1096 |
- { |
1097 |
- MetaShadowParams params; |
1098 |
- cairo_rectangle_int_t shape_bounds; |
1099 |
-+ cairo_region_t *clip = priv->shadow_clip; |
1100 |
- |
1101 |
- meta_window_actor_get_shape_bounds (self, &shape_bounds); |
1102 |
- meta_window_actor_get_shadow_params (self, appears_focused, ¶ms); |
1103 |
- |
1104 |
-+ /* The frame bounds are already subtracted from priv->shadow_clip |
1105 |
-+ * if that exists. |
1106 |
-+ */ |
1107 |
-+ if (!clip && clip_shadow_under_window (self)) |
1108 |
-+ { |
1109 |
-+ cairo_region_t *frame_bounds = meta_window_get_frame_bounds (priv->window); |
1110 |
-+ cairo_rectangle_int_t bounds; |
1111 |
-+ |
1112 |
-+ meta_window_actor_get_shadow_bounds (self, appears_focused, &bounds); |
1113 |
-+ clip = cairo_region_create_rectangle (&bounds); |
1114 |
-+ |
1115 |
-+ cairo_region_subtract (clip, frame_bounds); |
1116 |
-+ } |
1117 |
-+ |
1118 |
- meta_shadow_paint (shadow, |
1119 |
- params.x_offset + shape_bounds.x, |
1120 |
- params.y_offset + shape_bounds.y, |
1121 |
- shape_bounds.width, |
1122 |
- shape_bounds.height, |
1123 |
- (clutter_actor_get_paint_opacity (actor) * params.opacity * priv->opacity) / (255 * 255), |
1124 |
-- priv->shadow_clip); |
1125 |
-+ clip, |
1126 |
-+ clip_shadow_under_window (self)); /* clip_strictly - not just as an optimization */ |
1127 |
-+ |
1128 |
-+ if (clip && clip != priv->shadow_clip) |
1129 |
-+ cairo_region_destroy (clip); |
1130 |
- } |
1131 |
- |
1132 |
- CLUTTER_ACTOR_CLASS (meta_window_actor_parent_class)->paint (actor); |
1133 |
-@@ -1787,6 +1826,12 @@ meta_window_actor_set_visible_region_beneath (MetaWindowActor *self, |
1134 |
- { |
1135 |
- meta_window_actor_clear_shadow_clip (self); |
1136 |
- priv->shadow_clip = cairo_region_copy (beneath_region); |
1137 |
-+ |
1138 |
-+ if (clip_shadow_under_window (self)) |
1139 |
-+ { |
1140 |
-+ cairo_region_t *frame_bounds = meta_window_get_frame_bounds (priv->window); |
1141 |
-+ cairo_region_subtract (priv->shadow_clip, frame_bounds); |
1142 |
-+ } |
1143 |
- } |
1144 |
- } |
1145 |
- |
1146 |
-diff --git a/src/core/frame.c b/src/core/frame.c |
1147 |
-index 4db0002..155a0b8 100644 |
1148 |
---- a/src/core/frame.c |
1149 |
-+++ b/src/core/frame.c |
1150 |
-@@ -328,7 +328,7 @@ meta_frame_calc_geometry (MetaFrame *frame, |
1151 |
- *geomp = geom; |
1152 |
- } |
1153 |
- |
1154 |
--static void |
1155 |
-+static gboolean |
1156 |
- update_shape (MetaFrame *frame) |
1157 |
- { |
1158 |
- if (frame->need_reapply_frame_shape) |
1159 |
-@@ -339,10 +339,14 @@ update_shape (MetaFrame *frame) |
1160 |
- frame->rect.height, |
1161 |
- frame->window->has_shape); |
1162 |
- frame->need_reapply_frame_shape = FALSE; |
1163 |
-+ |
1164 |
-+ return TRUE; |
1165 |
- } |
1166 |
-+ else |
1167 |
-+ return FALSE; |
1168 |
- } |
1169 |
- |
1170 |
--void |
1171 |
-+gboolean |
1172 |
- meta_frame_sync_to_window (MetaFrame *frame, |
1173 |
- int resize_gravity, |
1174 |
- gboolean need_move, |
1175 |
-@@ -350,8 +354,7 @@ meta_frame_sync_to_window (MetaFrame *frame, |
1176 |
- { |
1177 |
- if (!(need_move || need_resize)) |
1178 |
- { |
1179 |
-- update_shape (frame); |
1180 |
-- return; |
1181 |
-+ return update_shape (frame); |
1182 |
- } |
1183 |
- |
1184 |
- meta_topic (META_DEBUG_GEOMETRY, |
1185 |
-@@ -401,6 +404,17 @@ meta_frame_sync_to_window (MetaFrame *frame, |
1186 |
- meta_ui_repaint_frame (frame->window->screen->ui, |
1187 |
- frame->xwindow); |
1188 |
- } |
1189 |
-+ |
1190 |
-+ return need_resize; |
1191 |
-+} |
1192 |
-+ |
1193 |
-+cairo_region_t * |
1194 |
-+meta_frame_get_frame_bounds (MetaFrame *frame) |
1195 |
-+{ |
1196 |
-+ return meta_ui_get_frame_bounds (frame->window->screen->ui, |
1197 |
-+ frame->xwindow, |
1198 |
-+ frame->rect.width, |
1199 |
-+ frame->rect.height); |
1200 |
- } |
1201 |
- |
1202 |
- void |
1203 |
-diff --git a/src/core/frame.h b/src/core/frame.h |
1204 |
-index 019d6b3..7a637e8 100644 |
1205 |
---- a/src/core/frame.h |
1206 |
-+++ b/src/core/frame.h |
1207 |
-@@ -73,11 +73,13 @@ Window meta_frame_get_xwindow (MetaFrame *frame); |
1208 |
- /* These should ONLY be called from meta_window_move_resize_internal */ |
1209 |
- void meta_frame_calc_geometry (MetaFrame *frame, |
1210 |
- MetaFrameGeometry *geomp); |
1211 |
--void meta_frame_sync_to_window (MetaFrame *frame, |
1212 |
-+gboolean meta_frame_sync_to_window (MetaFrame *frame, |
1213 |
- int gravity, |
1214 |
- gboolean need_move, |
1215 |
- gboolean need_resize); |
1216 |
- |
1217 |
-+cairo_region_t *meta_frame_get_frame_bounds (MetaFrame *frame); |
1218 |
-+ |
1219 |
- void meta_frame_set_screen_cursor (MetaFrame *frame, |
1220 |
- MetaCursor cursor); |
1221 |
- |
1222 |
-diff --git a/src/core/window-private.h b/src/core/window-private.h |
1223 |
-index cbac91d..7909943 100644 |
1224 |
---- a/src/core/window-private.h |
1225 |
-+++ b/src/core/window-private.h |
1226 |
-@@ -42,6 +42,7 @@ |
1227 |
- #include "stack.h" |
1228 |
- #include "iconcache.h" |
1229 |
- #include <X11/Xutil.h> |
1230 |
-+#include <cairo.h> |
1231 |
- #include <gdk-pixbuf/gdk-pixbuf.h> |
1232 |
- |
1233 |
- typedef struct _MetaWindowQueue MetaWindowQueue; |
1234 |
-@@ -316,6 +317,9 @@ struct _MetaWindow |
1235 |
- /* if TRUE, application is buggy and SYNC resizing is turned off */ |
1236 |
- guint disable_sync : 1; |
1237 |
- |
1238 |
-+ /* if non-NULL, the bounds of the window frame */ |
1239 |
-+ cairo_region_t *frame_bounds; |
1240 |
-+ |
1241 |
- /* Note: can be NULL */ |
1242 |
- GSList *struts; |
1243 |
- |
1244 |
-diff --git a/src/core/window.c b/src/core/window.c |
1245 |
-index d442932..aa6d75c 100644 |
1246 |
---- a/src/core/window.c |
1247 |
-+++ b/src/core/window.c |
1248 |
-@@ -181,6 +181,9 @@ meta_window_finalize (GObject *object) |
1249 |
- if (window->mini_icon) |
1250 |
- g_object_unref (G_OBJECT (window->mini_icon)); |
1251 |
- |
1252 |
-+ if (window->frame_bounds) |
1253 |
-+ cairo_region_destroy (window->frame_bounds); |
1254 |
-+ |
1255 |
- meta_icon_cache_free (&window->icon_cache); |
1256 |
- |
1257 |
- g_free (window->sm_client_id); |
1258 |
-@@ -4295,6 +4298,7 @@ meta_window_move_resize_internal (MetaWindow *window, |
1259 |
- int frame_size_dy; |
1260 |
- int size_dx; |
1261 |
- int size_dy; |
1262 |
-+ gboolean frame_shape_changed = FALSE; |
1263 |
- gboolean is_configure_request; |
1264 |
- gboolean do_gravity_adjust; |
1265 |
- gboolean is_user_action; |
1266 |
-@@ -4598,9 +4602,9 @@ meta_window_move_resize_internal (MetaWindow *window, |
1267 |
- meta_window_set_gravity (window, StaticGravity); |
1268 |
- |
1269 |
- if (configure_frame_first && window->frame) |
1270 |
-- meta_frame_sync_to_window (window->frame, |
1271 |
-- gravity, |
1272 |
-- need_move_frame, need_resize_frame); |
1273 |
-+ frame_shape_changed = meta_frame_sync_to_window (window->frame, |
1274 |
-+ gravity, |
1275 |
-+ need_move_frame, need_resize_frame); |
1276 |
- |
1277 |
- values.border_width = 0; |
1278 |
- values.x = client_move_x; |
1279 |
-@@ -4655,9 +4659,9 @@ meta_window_move_resize_internal (MetaWindow *window, |
1280 |
- } |
1281 |
- |
1282 |
- if (!configure_frame_first && window->frame) |
1283 |
-- meta_frame_sync_to_window (window->frame, |
1284 |
-- gravity, |
1285 |
-- need_move_frame, need_resize_frame); |
1286 |
-+ frame_shape_changed = meta_frame_sync_to_window (window->frame, |
1287 |
-+ gravity, |
1288 |
-+ need_move_frame, need_resize_frame); |
1289 |
- |
1290 |
- /* Put gravity back to be nice to lesser window managers */ |
1291 |
- if (use_static_gravity) |
1292 |
-@@ -4700,6 +4704,12 @@ meta_window_move_resize_internal (MetaWindow *window, |
1293 |
- * b) all constraints are obeyed by window->rect and frame->rect |
1294 |
- */ |
1295 |
- |
1296 |
-+ if (frame_shape_changed && window->frame_bounds) |
1297 |
-+ { |
1298 |
-+ cairo_region_destroy (window->frame_bounds); |
1299 |
-+ window->frame_bounds = NULL; |
1300 |
-+ } |
1301 |
-+ |
1302 |
- if (meta_prefs_get_attach_modal_dialogs ()) |
1303 |
- meta_window_foreach_transient (window, move_attached_dialog, NULL); |
1304 |
- } |
1305 |
-@@ -10204,3 +10214,24 @@ meta_window_get_frame_type (MetaWindow *window) |
1306 |
- return base_type; |
1307 |
- } |
1308 |
- } |
1309 |
-+ |
1310 |
-+/** |
1311 |
-+ * meta_window_get_frame_bounds: |
1312 |
-+ * |
1313 |
-+ * Gets a region representing the outer bounds of the window's frame. |
1314 |
-+ * |
1315 |
-+ * Return value: (transfer none) (allow-none): a #cairo_region_t |
1316 |
-+ * holding the outer bounds of the window, or %NULL if the window |
1317 |
-+ * doesn't have a frame. |
1318 |
-+ */ |
1319 |
-+cairo_region_t * |
1320 |
-+meta_window_get_frame_bounds (MetaWindow *window) |
1321 |
-+{ |
1322 |
-+ if (!window->frame_bounds) |
1323 |
-+ { |
1324 |
-+ if (window->frame) |
1325 |
-+ window->frame_bounds = meta_frame_get_frame_bounds (window->frame); |
1326 |
-+ } |
1327 |
-+ |
1328 |
-+ return window->frame_bounds; |
1329 |
-+} |
1330 |
-diff --git a/src/meta/window.h b/src/meta/window.h |
1331 |
-index a1c4b75..985a146 100644 |
1332 |
---- a/src/meta/window.h |
1333 |
-+++ b/src/meta/window.h |
1334 |
-@@ -23,6 +23,7 @@ |
1335 |
- #define META_WINDOW_H |
1336 |
- |
1337 |
- #include <glib-object.h> |
1338 |
-+#include <cairo.h> |
1339 |
- #include <X11/Xlib.h> |
1340 |
- |
1341 |
- #include <meta/boxes.h> |
1342 |
-@@ -156,4 +157,6 @@ const char *meta_window_get_mutter_hints (MetaWindow *window); |
1343 |
- |
1344 |
- MetaFrameType meta_window_get_frame_type (MetaWindow *window); |
1345 |
- |
1346 |
-+cairo_region_t *meta_window_get_frame_bounds (MetaWindow *window); |
1347 |
-+ |
1348 |
- #endif |
1349 |
-diff --git a/src/ui/frames.c b/src/ui/frames.c |
1350 |
-index 7c62898..520f29d 100644 |
1351 |
---- a/src/ui/frames.c |
1352 |
-+++ b/src/ui/frames.c |
1353 |
-@@ -797,60 +797,22 @@ apply_cairo_region_to_window (Display *display, |
1354 |
- } |
1355 |
- #endif |
1356 |
- |
1357 |
--void |
1358 |
--meta_frames_apply_shapes (MetaFrames *frames, |
1359 |
-- Window xwindow, |
1360 |
-- int new_window_width, |
1361 |
-- int new_window_height, |
1362 |
-- gboolean window_has_shape) |
1363 |
-+static cairo_region_t * |
1364 |
-+get_bounds_region (MetaFrames *frames, |
1365 |
-+ MetaUIFrame *frame, |
1366 |
-+ MetaFrameGeometry *fgeom, |
1367 |
-+ int window_width, |
1368 |
-+ int window_height) |
1369 |
- { |
1370 |
--#ifdef HAVE_SHAPE |
1371 |
-- /* Apply shapes as if window had new_window_width, new_window_height */ |
1372 |
-- MetaUIFrame *frame; |
1373 |
-- MetaFrameGeometry fgeom; |
1374 |
-- cairo_rectangle_int_t rect; |
1375 |
- cairo_region_t *corners_region; |
1376 |
-- cairo_region_t *window_region; |
1377 |
-- Display *display; |
1378 |
-- |
1379 |
-- frame = meta_frames_lookup_window (frames, xwindow); |
1380 |
-- g_return_if_fail (frame != NULL); |
1381 |
-- |
1382 |
-- display = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()); |
1383 |
-- |
1384 |
-- meta_frames_calc_geometry (frames, frame, &fgeom); |
1385 |
-+ cairo_region_t *bounds_region; |
1386 |
-+ cairo_rectangle_int_t rect; |
1387 |
- |
1388 |
-- if (!(fgeom.top_left_corner_rounded_radius != 0 || |
1389 |
-- fgeom.top_right_corner_rounded_radius != 0 || |
1390 |
-- fgeom.bottom_left_corner_rounded_radius != 0 || |
1391 |
-- fgeom.bottom_right_corner_rounded_radius != 0 || |
1392 |
-- window_has_shape)) |
1393 |
-- { |
1394 |
-- if (frame->shape_applied) |
1395 |
-- { |
1396 |
-- meta_topic (META_DEBUG_SHAPES, |
1397 |
-- "Unsetting shape mask on frame 0x%lx\n", |
1398 |
-- frame->xwindow); |
1399 |
-- |
1400 |
-- XShapeCombineMask (display, frame->xwindow, |
1401 |
-- ShapeBounding, 0, 0, None, ShapeSet); |
1402 |
-- frame->shape_applied = FALSE; |
1403 |
-- } |
1404 |
-- else |
1405 |
-- { |
1406 |
-- meta_topic (META_DEBUG_SHAPES, |
1407 |
-- "Frame 0x%lx still doesn't need a shape mask\n", |
1408 |
-- frame->xwindow); |
1409 |
-- } |
1410 |
-- |
1411 |
-- return; /* nothing to do */ |
1412 |
-- } |
1413 |
-- |
1414 |
- corners_region = cairo_region_create (); |
1415 |
- |
1416 |
-- if (fgeom.top_left_corner_rounded_radius != 0) |
1417 |
-+ if (fgeom->top_left_corner_rounded_radius != 0) |
1418 |
- { |
1419 |
-- const int corner = fgeom.top_left_corner_rounded_radius; |
1420 |
-+ const int corner = fgeom->top_left_corner_rounded_radius; |
1421 |
- const float radius = sqrt(corner) + corner; |
1422 |
- int i; |
1423 |
- |
1424 |
-@@ -866,16 +828,16 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1425 |
- } |
1426 |
- } |
1427 |
- |
1428 |
-- if (fgeom.top_right_corner_rounded_radius != 0) |
1429 |
-+ if (fgeom->top_right_corner_rounded_radius != 0) |
1430 |
- { |
1431 |
-- const int corner = fgeom.top_right_corner_rounded_radius; |
1432 |
-+ const int corner = fgeom->top_right_corner_rounded_radius; |
1433 |
- const float radius = sqrt(corner) + corner; |
1434 |
- int i; |
1435 |
- |
1436 |
- for (i=0; i<corner; i++) |
1437 |
- { |
1438 |
- const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5)))); |
1439 |
-- rect.x = new_window_width - width; |
1440 |
-+ rect.x = window_width - width; |
1441 |
- rect.y = i; |
1442 |
- rect.width = width; |
1443 |
- rect.height = 1; |
1444 |
-@@ -884,9 +846,9 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1445 |
- } |
1446 |
- } |
1447 |
- |
1448 |
-- if (fgeom.bottom_left_corner_rounded_radius != 0) |
1449 |
-+ if (fgeom->bottom_left_corner_rounded_radius != 0) |
1450 |
- { |
1451 |
-- const int corner = fgeom.bottom_left_corner_rounded_radius; |
1452 |
-+ const int corner = fgeom->bottom_left_corner_rounded_radius; |
1453 |
- const float radius = sqrt(corner) + corner; |
1454 |
- int i; |
1455 |
- |
1456 |
-@@ -894,7 +856,7 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1457 |
- { |
1458 |
- const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5)))); |
1459 |
- rect.x = 0; |
1460 |
-- rect.y = new_window_height - i - 1; |
1461 |
-+ rect.y = window_height - i - 1; |
1462 |
- rect.width = width; |
1463 |
- rect.height = 1; |
1464 |
- |
1465 |
-@@ -902,17 +864,17 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1466 |
- } |
1467 |
- } |
1468 |
- |
1469 |
-- if (fgeom.bottom_right_corner_rounded_radius != 0) |
1470 |
-+ if (fgeom->bottom_right_corner_rounded_radius != 0) |
1471 |
- { |
1472 |
-- const int corner = fgeom.bottom_right_corner_rounded_radius; |
1473 |
-+ const int corner = fgeom->bottom_right_corner_rounded_radius; |
1474 |
- const float radius = sqrt(corner) + corner; |
1475 |
- int i; |
1476 |
- |
1477 |
- for (i=0; i<corner; i++) |
1478 |
- { |
1479 |
- const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5)))); |
1480 |
-- rect.x = new_window_width - width; |
1481 |
-- rect.y = new_window_height - i - 1; |
1482 |
-+ rect.x = window_width - width; |
1483 |
-+ rect.y = window_height - i - 1; |
1484 |
- rect.width = width; |
1485 |
- rect.height = 1; |
1486 |
- |
1487 |
-@@ -920,19 +882,88 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1488 |
- } |
1489 |
- } |
1490 |
- |
1491 |
-- window_region = cairo_region_create (); |
1492 |
-+ bounds_region = cairo_region_create (); |
1493 |
- |
1494 |
- rect.x = 0; |
1495 |
- rect.y = 0; |
1496 |
-- rect.width = new_window_width; |
1497 |
-- rect.height = new_window_height; |
1498 |
-+ rect.width = window_width; |
1499 |
-+ rect.height = window_height; |
1500 |
- |
1501 |
-- cairo_region_union_rectangle (window_region, &rect); |
1502 |
-+ cairo_region_union_rectangle (bounds_region, &rect); |
1503 |
- |
1504 |
-- cairo_region_subtract (window_region, corners_region); |
1505 |
-+ cairo_region_subtract (bounds_region, corners_region); |
1506 |
- |
1507 |
- cairo_region_destroy (corners_region); |
1508 |
-+ |
1509 |
-+ return bounds_region; |
1510 |
-+} |
1511 |
-+ |
1512 |
-+static cairo_region_t * |
1513 |
-+get_client_region (MetaFrameGeometry *fgeom, |
1514 |
-+ int window_width, |
1515 |
-+ int window_height) |
1516 |
-+{ |
1517 |
-+ cairo_rectangle_int_t rect; |
1518 |
-+ |
1519 |
-+ rect.x = fgeom->left_width; |
1520 |
-+ rect.y = fgeom->top_height; |
1521 |
-+ rect.width = window_width - fgeom->right_width - rect.x; |
1522 |
-+ rect.height = window_height - fgeom->bottom_height - rect.y; |
1523 |
-+ |
1524 |
-+ return cairo_region_create_rectangle (&rect); |
1525 |
-+} |
1526 |
-+ |
1527 |
-+void |
1528 |
-+meta_frames_apply_shapes (MetaFrames *frames, |
1529 |
-+ Window xwindow, |
1530 |
-+ int new_window_width, |
1531 |
-+ int new_window_height, |
1532 |
-+ gboolean window_has_shape) |
1533 |
-+{ |
1534 |
-+#ifdef HAVE_SHAPE |
1535 |
-+ /* Apply shapes as if window had new_window_width, new_window_height */ |
1536 |
-+ MetaUIFrame *frame; |
1537 |
-+ MetaFrameGeometry fgeom; |
1538 |
-+ cairo_region_t *window_region; |
1539 |
-+ Display *display; |
1540 |
- |
1541 |
-+ frame = meta_frames_lookup_window (frames, xwindow); |
1542 |
-+ g_return_if_fail (frame != NULL); |
1543 |
-+ |
1544 |
-+ display = GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()); |
1545 |
-+ |
1546 |
-+ meta_frames_calc_geometry (frames, frame, &fgeom); |
1547 |
-+ |
1548 |
-+ if (!(fgeom.top_left_corner_rounded_radius != 0 || |
1549 |
-+ fgeom.top_right_corner_rounded_radius != 0 || |
1550 |
-+ fgeom.bottom_left_corner_rounded_radius != 0 || |
1551 |
-+ fgeom.bottom_right_corner_rounded_radius != 0 || |
1552 |
-+ window_has_shape)) |
1553 |
-+ { |
1554 |
-+ if (frame->shape_applied) |
1555 |
-+ { |
1556 |
-+ meta_topic (META_DEBUG_SHAPES, |
1557 |
-+ "Unsetting shape mask on frame 0x%lx\n", |
1558 |
-+ frame->xwindow); |
1559 |
-+ |
1560 |
-+ XShapeCombineMask (display, frame->xwindow, |
1561 |
-+ ShapeBounding, 0, 0, None, ShapeSet); |
1562 |
-+ frame->shape_applied = FALSE; |
1563 |
-+ } |
1564 |
-+ else |
1565 |
-+ { |
1566 |
-+ meta_topic (META_DEBUG_SHAPES, |
1567 |
-+ "Frame 0x%lx still doesn't need a shape mask\n", |
1568 |
-+ frame->xwindow); |
1569 |
-+ } |
1570 |
-+ |
1571 |
-+ return; /* nothing to do */ |
1572 |
-+ } |
1573 |
-+ |
1574 |
-+ window_region = get_bounds_region (frames, frame, |
1575 |
-+ &fgeom, |
1576 |
-+ new_window_width, new_window_height); |
1577 |
-+ |
1578 |
- if (window_has_shape) |
1579 |
- { |
1580 |
- /* The client window is oclock or something and has a shape |
1581 |
-@@ -984,15 +1015,10 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1582 |
- /* Punch the client area out of the normal frame shape, |
1583 |
- * then union it with the shape_window's existing shape |
1584 |
- */ |
1585 |
-- client_region = cairo_region_create (); |
1586 |
-- |
1587 |
-- rect.x = fgeom.left_width; |
1588 |
-- rect.y = fgeom.top_height; |
1589 |
-- rect.width = new_window_width - fgeom.right_width - rect.x; |
1590 |
-- rect.height = new_window_height - fgeom.bottom_height - rect.y; |
1591 |
-+ client_region = get_client_region (&fgeom, |
1592 |
-+ new_window_width, |
1593 |
-+ new_window_height); |
1594 |
- |
1595 |
-- cairo_region_union_rectangle (client_region, &rect); |
1596 |
-- |
1597 |
- cairo_region_subtract (window_region, client_region); |
1598 |
- |
1599 |
- cairo_region_destroy (client_region); |
1600 |
-@@ -1027,6 +1053,25 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1601 |
- #endif /* HAVE_SHAPE */ |
1602 |
- } |
1603 |
- |
1604 |
-+cairo_region_t * |
1605 |
-+meta_frames_get_frame_bounds (MetaFrames *frames, |
1606 |
-+ Window xwindow, |
1607 |
-+ int window_width, |
1608 |
-+ int window_height) |
1609 |
-+{ |
1610 |
-+ MetaUIFrame *frame; |
1611 |
-+ MetaFrameGeometry fgeom; |
1612 |
-+ |
1613 |
-+ frame = meta_frames_lookup_window (frames, xwindow); |
1614 |
-+ g_return_val_if_fail (frame != NULL, NULL); |
1615 |
-+ |
1616 |
-+ meta_frames_calc_geometry (frames, frame, &fgeom); |
1617 |
-+ |
1618 |
-+ return get_bounds_region (frames, frame, |
1619 |
-+ &fgeom, |
1620 |
-+ window_width, window_height); |
1621 |
-+} |
1622 |
-+ |
1623 |
- void |
1624 |
- meta_frames_move_resize_frame (MetaFrames *frames, |
1625 |
- Window xwindow, |
1626 |
-diff --git a/src/ui/frames.h b/src/ui/frames.h |
1627 |
-index 5fdba63..d1807df 100644 |
1628 |
---- a/src/ui/frames.h |
1629 |
-+++ b/src/ui/frames.h |
1630 |
-@@ -144,6 +144,10 @@ void meta_frames_apply_shapes (MetaFrames *frames, |
1631 |
- int new_window_width, |
1632 |
- int new_window_height, |
1633 |
- gboolean window_has_shape); |
1634 |
-+cairo_region_t *meta_frames_get_frame_bounds (MetaFrames *frames, |
1635 |
-+ Window xwindow, |
1636 |
-+ int window_width, |
1637 |
-+ int window_height); |
1638 |
- void meta_frames_move_resize_frame (MetaFrames *frames, |
1639 |
- Window xwindow, |
1640 |
- int x, |
1641 |
-diff --git a/src/ui/ui.c b/src/ui/ui.c |
1642 |
-index 575f2ae..5381b8d 100644 |
1643 |
---- a/src/ui/ui.c |
1644 |
-+++ b/src/ui/ui.c |
1645 |
-@@ -470,6 +470,16 @@ meta_ui_apply_frame_shape (MetaUI *ui, |
1646 |
- window_has_shape); |
1647 |
- } |
1648 |
- |
1649 |
-+cairo_region_t * |
1650 |
-+meta_ui_get_frame_bounds (MetaUI *ui, |
1651 |
-+ Window xwindow, |
1652 |
-+ int window_width, |
1653 |
-+ int window_height) |
1654 |
-+{ |
1655 |
-+ return meta_frames_get_frame_bounds (ui->frames, xwindow, |
1656 |
-+ window_width, window_height); |
1657 |
-+} |
1658 |
-+ |
1659 |
- void |
1660 |
- meta_ui_queue_frame_draw (MetaUI *ui, |
1661 |
- Window xwindow) |
1662 |
-diff --git a/src/ui/ui.h b/src/ui/ui.h |
1663 |
-index cc449bd..9a33d9d 100644 |
1664 |
---- a/src/ui/ui.h |
1665 |
-+++ b/src/ui/ui.h |
1666 |
-@@ -28,6 +28,7 @@ |
1667 |
- #include <meta/common.h> |
1668 |
- #include <X11/Xlib.h> |
1669 |
- #include <X11/Xutil.h> |
1670 |
-+#include <cairo.h> |
1671 |
- #include <glib.h> |
1672 |
- #include <gdk-pixbuf/gdk-pixbuf.h> |
1673 |
- |
1674 |
-@@ -104,6 +105,11 @@ void meta_ui_apply_frame_shape (MetaUI *ui, |
1675 |
- int new_window_height, |
1676 |
- gboolean window_has_shape); |
1677 |
- |
1678 |
-+cairo_region_t *meta_ui_get_frame_bounds (MetaUI *ui, |
1679 |
-+ Window xwindow, |
1680 |
-+ int window_width, |
1681 |
-+ int window_height); |
1682 |
-+ |
1683 |
- void meta_ui_queue_frame_draw (MetaUI *ui, |
1684 |
- Window xwindow); |
1685 |
- |
1686 |
--- |
1687 |
-cgit v0.9 |
1688 |
|
1689 |
diff --git a/x11-wm/mutter/files/mutter-3.0.2-fix-xshape.patch b/x11-wm/mutter/files/mutter-3.0.2-fix-xshape.patch |
1690 |
deleted file mode 100644 |
1691 |
index bc65ab2..0000000 |
1692 |
--- a/x11-wm/mutter/files/mutter-3.0.2-fix-xshape.patch |
1693 |
+++ /dev/null |
1694 |
@@ -1,30 +0,0 @@ |
1695 |
-From 59efae8920ff919beffa3816874c2e7cc85f3f08 Mon Sep 17 00:00:00 2001 |
1696 |
-From: Jasper St. Pierre <jstpierre@×××××××.net> |
1697 |
-Date: Wed, 25 May 2011 20:47:53 -0400 |
1698 |
-Subject: [PATCH] Fix XShape |
1699 |
- |
1700 |
-Commit c3a04bf unintentionally broke XShape handling. By studying the code |
1701 |
-extremely carefully, I found this inconsistency with the code that was |
1702 |
-there before. |
1703 |
- |
1704 |
-https://bugzilla.gnome.org/show_bug.cgi?id=635268 |
1705 |
---- |
1706 |
- src/ui/frames.c | 2 +- |
1707 |
- 1 files changed, 1 insertions(+), 1 deletions(-) |
1708 |
- |
1709 |
-diff --git a/src/ui/frames.c b/src/ui/frames.c |
1710 |
-index 9f0126c..4352e38 100644 |
1711 |
---- a/src/ui/frames.c |
1712 |
-+++ b/src/ui/frames.c |
1713 |
-@@ -880,7 +880,7 @@ apply_cairo_region_to_window (Display *display, |
1714 |
- |
1715 |
- XShapeCombineRectangles (display, xwindow, |
1716 |
- ShapeBounding, 0, 0, rects, n_rects, |
1717 |
-- ShapeSet, YXBanded); |
1718 |
-+ op, YXBanded); |
1719 |
- |
1720 |
- g_free (rects); |
1721 |
- } |
1722 |
--- |
1723 |
-1.7.5.1 |
1724 |
- |
1725 |
|
1726 |
diff --git a/x11-wm/mutter/files/mutter-3.0.2-frame-region-cairo-region.patch b/x11-wm/mutter/files/mutter-3.0.2-frame-region-cairo-region.patch |
1727 |
deleted file mode 100644 |
1728 |
index 2a41fea..0000000 |
1729 |
--- a/x11-wm/mutter/files/mutter-3.0.2-frame-region-cairo-region.patch |
1730 |
+++ /dev/null |
1731 |
@@ -1,234 +0,0 @@ |
1732 |
-From c3a04bf3948dae31cbd64e637c290ddee7bcc73b Mon Sep 17 00:00:00 2001 |
1733 |
-From: Owen W. Taylor <otaylor@××××××××.net> |
1734 |
-Date: Sun, 20 Mar 2011 20:26:27 +0000 |
1735 |
-Subject: Convert frame region handling to cairo regions |
1736 |
- |
1737 |
-It's useful to get frame shapes and manipulate them within Mutter, for |
1738 |
-example so that the compositor can use them to clip drawing. |
1739 |
-For this, we'll need the regions as cairo regions not X regions, so |
1740 |
-convert frame shaping code to work in terms of cairo_region_t. |
1741 |
- |
1742 |
-https://bugzilla.gnome.org/show_bug.cgi?id=635268 |
1743 |
---- |
1744 |
-diff --git a/src/ui/frames.c b/src/ui/frames.c |
1745 |
-index 9c4782e..7c62898 100644 |
1746 |
---- a/src/ui/frames.c |
1747 |
-+++ b/src/ui/frames.c |
1748 |
-@@ -764,6 +764,39 @@ meta_frames_unflicker_bg (MetaFrames *frames, |
1749 |
- set_background_none (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame->xwindow); |
1750 |
- } |
1751 |
- |
1752 |
-+#ifdef HAVE_SHAPE |
1753 |
-+static void |
1754 |
-+apply_cairo_region_to_window (Display *display, |
1755 |
-+ Window xwindow, |
1756 |
-+ cairo_region_t *region, |
1757 |
-+ int op) |
1758 |
-+{ |
1759 |
-+ int n_rects, i; |
1760 |
-+ XRectangle *rects; |
1761 |
-+ |
1762 |
-+ n_rects = cairo_region_num_rectangles (region); |
1763 |
-+ rects = g_new (XRectangle, n_rects); |
1764 |
-+ |
1765 |
-+ for (i = 0; i < n_rects; i++) |
1766 |
-+ { |
1767 |
-+ cairo_rectangle_int_t rect; |
1768 |
-+ |
1769 |
-+ cairo_region_get_rectangle (region, i, &rect); |
1770 |
-+ |
1771 |
-+ rects[i].x = rect.x; |
1772 |
-+ rects[i].y = rect.y; |
1773 |
-+ rects[i].width = rect.width; |
1774 |
-+ rects[i].height = rect.height; |
1775 |
-+ } |
1776 |
-+ |
1777 |
-+ XShapeCombineRectangles (display, xwindow, |
1778 |
-+ ShapeBounding, 0, 0, rects, n_rects, |
1779 |
-+ ShapeSet, YXBanded); |
1780 |
-+ |
1781 |
-+ g_free (rects); |
1782 |
-+} |
1783 |
-+#endif |
1784 |
-+ |
1785 |
- void |
1786 |
- meta_frames_apply_shapes (MetaFrames *frames, |
1787 |
- Window xwindow, |
1788 |
-@@ -775,9 +808,9 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1789 |
- /* Apply shapes as if window had new_window_width, new_window_height */ |
1790 |
- MetaUIFrame *frame; |
1791 |
- MetaFrameGeometry fgeom; |
1792 |
-- XRectangle xrect; |
1793 |
-- Region corners_xregion; |
1794 |
-- Region window_xregion; |
1795 |
-+ cairo_rectangle_int_t rect; |
1796 |
-+ cairo_region_t *corners_region; |
1797 |
-+ cairo_region_t *window_region; |
1798 |
- Display *display; |
1799 |
- |
1800 |
- frame = meta_frames_lookup_window (frames, xwindow); |
1801 |
-@@ -813,7 +846,7 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1802 |
- return; /* nothing to do */ |
1803 |
- } |
1804 |
- |
1805 |
-- corners_xregion = XCreateRegion (); |
1806 |
-+ corners_region = cairo_region_create (); |
1807 |
- |
1808 |
- if (fgeom.top_left_corner_rounded_radius != 0) |
1809 |
- { |
1810 |
-@@ -824,12 +857,12 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1811 |
- for (i=0; i<corner; i++) |
1812 |
- { |
1813 |
- const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5)))); |
1814 |
-- xrect.x = 0; |
1815 |
-- xrect.y = i; |
1816 |
-- xrect.width = width; |
1817 |
-- xrect.height = 1; |
1818 |
-+ rect.x = 0; |
1819 |
-+ rect.y = i; |
1820 |
-+ rect.width = width; |
1821 |
-+ rect.height = 1; |
1822 |
- |
1823 |
-- XUnionRectWithRegion (&xrect, corners_xregion, corners_xregion); |
1824 |
-+ cairo_region_union_rectangle (corners_region, &rect); |
1825 |
- } |
1826 |
- } |
1827 |
- |
1828 |
-@@ -842,12 +875,12 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1829 |
- for (i=0; i<corner; i++) |
1830 |
- { |
1831 |
- const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5)))); |
1832 |
-- xrect.x = new_window_width - width; |
1833 |
-- xrect.y = i; |
1834 |
-- xrect.width = width; |
1835 |
-- xrect.height = 1; |
1836 |
-+ rect.x = new_window_width - width; |
1837 |
-+ rect.y = i; |
1838 |
-+ rect.width = width; |
1839 |
-+ rect.height = 1; |
1840 |
- |
1841 |
-- XUnionRectWithRegion (&xrect, corners_xregion, corners_xregion); |
1842 |
-+ cairo_region_union_rectangle (corners_region, &rect); |
1843 |
- } |
1844 |
- } |
1845 |
- |
1846 |
-@@ -860,12 +893,12 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1847 |
- for (i=0; i<corner; i++) |
1848 |
- { |
1849 |
- const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5)))); |
1850 |
-- xrect.x = 0; |
1851 |
-- xrect.y = new_window_height - i - 1; |
1852 |
-- xrect.width = width; |
1853 |
-- xrect.height = 1; |
1854 |
-+ rect.x = 0; |
1855 |
-+ rect.y = new_window_height - i - 1; |
1856 |
-+ rect.width = width; |
1857 |
-+ rect.height = 1; |
1858 |
- |
1859 |
-- XUnionRectWithRegion (&xrect, corners_xregion, corners_xregion); |
1860 |
-+ cairo_region_union_rectangle (corners_region, &rect); |
1861 |
- } |
1862 |
- } |
1863 |
- |
1864 |
-@@ -878,27 +911,27 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1865 |
- for (i=0; i<corner; i++) |
1866 |
- { |
1867 |
- const int width = floor(0.5 + radius - sqrt(radius*radius - (radius-(i+0.5))*(radius-(i+0.5)))); |
1868 |
-- xrect.x = new_window_width - width; |
1869 |
-- xrect.y = new_window_height - i - 1; |
1870 |
-- xrect.width = width; |
1871 |
-- xrect.height = 1; |
1872 |
-+ rect.x = new_window_width - width; |
1873 |
-+ rect.y = new_window_height - i - 1; |
1874 |
-+ rect.width = width; |
1875 |
-+ rect.height = 1; |
1876 |
- |
1877 |
-- XUnionRectWithRegion (&xrect, corners_xregion, corners_xregion); |
1878 |
-+ cairo_region_union_rectangle (corners_region, &rect); |
1879 |
- } |
1880 |
- } |
1881 |
- |
1882 |
-- window_xregion = XCreateRegion (); |
1883 |
-+ window_region = cairo_region_create (); |
1884 |
- |
1885 |
-- xrect.x = 0; |
1886 |
-- xrect.y = 0; |
1887 |
-- xrect.width = new_window_width; |
1888 |
-- xrect.height = new_window_height; |
1889 |
-+ rect.x = 0; |
1890 |
-+ rect.y = 0; |
1891 |
-+ rect.width = new_window_width; |
1892 |
-+ rect.height = new_window_height; |
1893 |
- |
1894 |
-- XUnionRectWithRegion (&xrect, window_xregion, window_xregion); |
1895 |
-+ cairo_region_union_rectangle (window_region, &rect); |
1896 |
- |
1897 |
-- XSubtractRegion (window_xregion, corners_xregion, window_xregion); |
1898 |
-+ cairo_region_subtract (window_region, corners_region); |
1899 |
- |
1900 |
-- XDestroyRegion (corners_xregion); |
1901 |
-+ cairo_region_destroy (corners_region); |
1902 |
- |
1903 |
- if (window_has_shape) |
1904 |
- { |
1905 |
-@@ -911,7 +944,7 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1906 |
- XSetWindowAttributes attrs; |
1907 |
- Window shape_window; |
1908 |
- Window client_window; |
1909 |
-- Region client_xregion; |
1910 |
-+ cairo_region_t *client_region; |
1911 |
- GdkScreen *screen; |
1912 |
- int screen_number; |
1913 |
- |
1914 |
-@@ -951,21 +984,21 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1915 |
- /* Punch the client area out of the normal frame shape, |
1916 |
- * then union it with the shape_window's existing shape |
1917 |
- */ |
1918 |
-- client_xregion = XCreateRegion (); |
1919 |
-+ client_region = cairo_region_create (); |
1920 |
- |
1921 |
-- xrect.x = fgeom.left_width; |
1922 |
-- xrect.y = fgeom.top_height; |
1923 |
-- xrect.width = new_window_width - fgeom.right_width - xrect.x; |
1924 |
-- xrect.height = new_window_height - fgeom.bottom_height - xrect.y; |
1925 |
-+ rect.x = fgeom.left_width; |
1926 |
-+ rect.y = fgeom.top_height; |
1927 |
-+ rect.width = new_window_width - fgeom.right_width - rect.x; |
1928 |
-+ rect.height = new_window_height - fgeom.bottom_height - rect.y; |
1929 |
- |
1930 |
-- XUnionRectWithRegion (&xrect, client_xregion, client_xregion); |
1931 |
-+ cairo_region_union_rectangle (client_region, &rect); |
1932 |
- |
1933 |
-- XSubtractRegion (window_xregion, client_xregion, window_xregion); |
1934 |
-+ cairo_region_subtract (window_region, client_region); |
1935 |
- |
1936 |
-- XDestroyRegion (client_xregion); |
1937 |
-- |
1938 |
-- XShapeCombineRegion (display, shape_window, |
1939 |
-- ShapeBounding, 0, 0, window_xregion, ShapeUnion); |
1940 |
-+ cairo_region_destroy (client_region); |
1941 |
-+ |
1942 |
-+ apply_cairo_region_to_window (display, shape_window, |
1943 |
-+ window_region, ShapeUnion); |
1944 |
- |
1945 |
- /* Now copy shape_window shape to the real frame */ |
1946 |
- XShapeCombineShape (display, frame->xwindow, ShapeBounding, |
1947 |
-@@ -984,13 +1017,13 @@ meta_frames_apply_shapes (MetaFrames *frames, |
1948 |
- "Frame 0x%lx has shaped corners\n", |
1949 |
- frame->xwindow); |
1950 |
- |
1951 |
-- XShapeCombineRegion (display, frame->xwindow, |
1952 |
-- ShapeBounding, 0, 0, window_xregion, ShapeSet); |
1953 |
-+ apply_cairo_region_to_window (display, frame->xwindow, |
1954 |
-+ window_region, ShapeSet); |
1955 |
- } |
1956 |
- |
1957 |
- frame->shape_applied = TRUE; |
1958 |
- |
1959 |
-- XDestroyRegion (window_xregion); |
1960 |
-+ cairo_region_destroy (window_region); |
1961 |
- #endif /* HAVE_SHAPE */ |
1962 |
- } |
1963 |
- |
1964 |
--- |
1965 |
-cgit v0.9 |
1966 |
|
1967 |
diff --git a/x11-wm/mutter/mutter-3.0.2.1.ebuild b/x11-wm/mutter/mutter-3.0.2.1.ebuild |
1968 |
deleted file mode 100644 |
1969 |
index c5f7d14..0000000 |
1970 |
--- a/x11-wm/mutter/mutter-3.0.2.1.ebuild |
1971 |
+++ /dev/null |
1972 |
@@ -1,89 +0,0 @@ |
1973 |
-# Copyright 1999-2011 Gentoo Foundation |
1974 |
-# Distributed under the terms of the GNU General Public License v2 |
1975 |
-# $Header: $ |
1976 |
- |
1977 |
-EAPI="3" |
1978 |
-GCONF_DEBUG="no" |
1979 |
-GNOME2_LA_PUNT="yes" |
1980 |
- |
1981 |
-inherit eutils gnome2 |
1982 |
-if [[ ${PV} = 9999 ]]; then |
1983 |
- inherit gnome2-live |
1984 |
-fi |
1985 |
- |
1986 |
-DESCRIPTION="Upcoming GNOME 3 window manager (derived from metacity)" |
1987 |
-HOMEPAGE="http://blogs.gnome.org/metacity/" |
1988 |
- |
1989 |
-LICENSE="GPL-2" |
1990 |
-SLOT="0" |
1991 |
-IUSE="+introspection test xinerama" |
1992 |
-if [[ ${PV} = 9999 ]]; then |
1993 |
- KEYWORDS="" |
1994 |
-else |
1995 |
- KEYWORDS="~amd64 ~x86" |
1996 |
-fi |
1997 |
- |
1998 |
-COMMON_DEPEND=">=x11-libs/pango-1.2[X,introspection?] |
1999 |
- >=x11-libs/cairo-1.10[X] |
2000 |
- x11-libs/gdk-pixbuf:2 |
2001 |
- >=x11-libs/gtk+-2.91.7:3[introspection?] |
2002 |
- >=gnome-base/gconf-2:2 |
2003 |
- >=dev-libs/glib-2.14:2 |
2004 |
- >=media-libs/clutter-1.2:1.0 |
2005 |
- >=media-libs/libcanberra-0.26[gtk3] |
2006 |
- >=x11-libs/startup-notification-0.7 |
2007 |
- >=x11-libs/libXcomposite-0.2 |
2008 |
- |
2009 |
- x11-libs/libICE |
2010 |
- x11-libs/libSM |
2011 |
- x11-libs/libX11 |
2012 |
- x11-libs/libXcursor |
2013 |
- x11-libs/libXdamage |
2014 |
- x11-libs/libXext |
2015 |
- x11-libs/libXfixes |
2016 |
- x11-libs/libXrandr |
2017 |
- x11-libs/libXrender |
2018 |
- |
2019 |
- gnome-extra/zenity |
2020 |
- |
2021 |
- introspection? ( >=dev-libs/gobject-introspection-0.9.5 ) |
2022 |
- xinerama? ( x11-libs/libXinerama ) |
2023 |
-" |
2024 |
-DEPEND="${COMMON_DEPEND} |
2025 |
- >=app-text/gnome-doc-utils-0.8 |
2026 |
- sys-devel/gettext |
2027 |
- >=dev-util/pkgconfig-0.9 |
2028 |
- >=dev-util/intltool-0.35 |
2029 |
- test? ( app-text/docbook-xml-dtd:4.5 ) |
2030 |
- xinerama? ( x11-proto/xineramaproto ) |
2031 |
- x11-proto/xextproto |
2032 |
- x11-proto/xproto" |
2033 |
-RDEPEND="${COMMON_DEPEND} |
2034 |
- !x11-misc/expocity" |
2035 |
- |
2036 |
-pkg_setup() { |
2037 |
- DOCS="AUTHORS ChangeLog HACKING MAINTAINERS NEWS README *.txt doc/*.txt" |
2038 |
- G2CONF="${G2CONF} |
2039 |
- --disable-static |
2040 |
- --enable-gconf |
2041 |
- --enable-shape |
2042 |
- --enable-sm |
2043 |
- --enable-startup-notification |
2044 |
- --enable-xsync |
2045 |
- --enable-verbose-mode |
2046 |
- --enable-compile-warnings=maximum |
2047 |
- --with-libcanberra |
2048 |
- $(use_enable introspection) |
2049 |
- $(use_enable xinerama)" |
2050 |
-} |
2051 |
- |
2052 |
-src_prepare() { |
2053 |
- # Fix argb window shadows: https://bugzilla.gnome.org/show_bug.cgi?id=635268 |
2054 |
- # The first two patches are from upstream git master branch: |
2055 |
- epatch "${FILESDIR}/${PN}-3.0.2-frame-region-cairo-region.patch" |
2056 |
- epatch "${FILESDIR}/${PN}-3.0.2-argb-windows-shadow.patch" |
2057 |
- # The third is from comment 33 in the gnome bug and unbreaks XShape handling |
2058 |
- epatch "${FILESDIR}/${PN}-3.0.2-fix-xshape.patch" |
2059 |
- |
2060 |
- gnome2_src_prepare |
2061 |
-} |