Merge lp:~noskcaj/ubuntu/utopic/cheese/3.12.2 into lp:ubuntu/utopic/cheese

Proposed by Jackson Doak
Status: Needs review
Proposed branch: lp:~noskcaj/ubuntu/utopic/cheese/3.12.2
Merge into: lp:ubuntu/utopic/cheese
Diff against target: 10803 lines (+2137/-4944)
70 files modified
.pc/0001-Use-avatar-chooser-headerbar-only-when-requested.patch/libcheese/cheese-avatar-chooser.c (+0/-180)
.pc/0002-Use-a-traditional-title-bar-when-requested.patch/Makefile.am (+0/-561)
.pc/0002-Use-a-traditional-title-bar-when-requested.patch/data/cheese-main-window.ui (+0/-236)
.pc/0002-Use-a-traditional-title-bar-when-requested.patch/data/cheese.gresource.xml (+0/-15)
.pc/0002-Use-a-traditional-title-bar-when-requested.patch/src/cheese-window.vala (+0/-1348)
.pc/applied-patches (+0/-3)
.pc/use-plugins-good/configure.ac (+0/-226)
ChangeLog (+91/-1)
INSTALL (+2/-2)
Makefile.in (+13/-4)
NEWS (+21/-0)
aclocal.m4 (+169/-68)
build-aux/config.guess (+97/-64)
build-aux/config.sub (+24/-21)
build-aux/missing (+2/-2)
build-aux/test-driver (+16/-4)
cheese-config.h.in (+0/-3)
configure (+162/-180)
configure.ac (+3/-3)
data/cheese.desktop.in (+1/-1)
data/headerbar.ui (+0/-10)
debian/changelog (+8/-0)
debian/patches/0001-Use-avatar-chooser-headerbar-only-when-requested.patch (+0/-52)
debian/patches/0002-Use-a-traditional-title-bar-when-requested.patch (+0/-155)
debian/patches/series (+0/-2)
docs/reference/Makefile.in (+2/-1)
docs/reference/html/index.html (+1/-1)
help/Makefile.in (+2/-1)
help/el/burst-mode.page (+20/-27)
help/el/effects-apply.page (+8/-12)
help/el/el.po (+543/-507)
help/el/index.page (+4/-4)
help/el/introduction.page (+9/-9)
help/el/legal.xml (+1/-1)
help/el/photo-delete.page (+14/-17)
help/el/photo-save.page (+9/-15)
help/el/photo-take.page (+16/-23)
help/el/photo-view.page (+6/-11)
help/el/pref-countdown.page (+5/-5)
help/el/pref-flash.page (+6/-9)
help/el/pref-fullscreen.page (+6/-8)
help/el/pref-image-properties.page (+11/-12)
help/el/pref-resolution.page (+7/-7)
help/el/video-record.page (+16/-23)
help/pt_BR/burst-mode.page (+11/-7)
help/pt_BR/effects-apply.page (+11/-9)
help/pt_BR/index.page (+6/-0)
help/pt_BR/introduction.page (+6/-0)
help/pt_BR/photo-delete.page (+8/-4)
help/pt_BR/photo-save.page (+12/-12)
help/pt_BR/photo-take.page (+12/-13)
help/pt_BR/photo-view.page (+8/-7)
help/pt_BR/pref-countdown.page (+9/-3)
help/pt_BR/pref-flash.page (+9/-6)
help/pt_BR/pref-fullscreen.page (+9/-4)
help/pt_BR/pref-image-properties.page (+8/-3)
help/pt_BR/pref-resolution.page (+6/-0)
help/pt_BR/pt_BR.po (+69/-177)
help/pt_BR/video-record.page (+11/-11)
po/POTFILES.in (+1/-0)
po/ca@valencia.po (+172/-133)
po/el.po (+78/-75)
po/id.po (+58/-60)
po/nl.po (+243/-531)
src/cheese-application.c (+1/-1)
src/cheese-countdown.c (+1/-1)
src/cheese-effects-manager.c (+1/-1)
src/cheese-main.c (+1/-1)
src/cheese-preferences.c (+1/-1)
src/cheese-window.c (+90/-50)
To merge this branch: bzr merge lp:~noskcaj/ubuntu/utopic/cheese/3.12.2
Reviewer Review Type Date Requested Status
Daniel Holbach (community) Approve
Review via email: mp+222884@code.launchpad.net

Description of the change

New upstream bugfix release. Drops our patches and updates translations

To post a comment you must log in.
Revision history for this message
Daniel Holbach (dholbach) wrote :

Conflict adding file data/headerbar.ui. Moved existing file to data/headerbar.ui.moved.

review: Needs Fixing
Revision history for this message
Jackson Doak (noskcaj) wrote :

Could this be uploaded manually please? I can't get the bzr branch to behave

Revision history for this message
Daniel Holbach (dholbach) wrote :

Thanks. Uploaded.

review: Approve

Unmerged revisions

107. By Jackson Doak

* New upstream release.
* Drop 0001-Use-avatar-chooser-headerbar-only-when-requested.patch,
  0002-Use-a-traditional-title-bar-when-requested.patch. Fixed upstream

106. By Jackson Doak

decommit patches

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== removed directory '.pc/0001-Use-avatar-chooser-headerbar-only-when-requested.patch'
2=== removed directory '.pc/0001-Use-avatar-chooser-headerbar-only-when-requested.patch/libcheese'
3=== removed file '.pc/0001-Use-avatar-chooser-headerbar-only-when-requested.patch/libcheese/cheese-avatar-chooser.c'
4--- .pc/0001-Use-avatar-chooser-headerbar-only-when-requested.patch/libcheese/cheese-avatar-chooser.c 2014-05-23 11:12:02 +0000
5+++ .pc/0001-Use-avatar-chooser-headerbar-only-when-requested.patch/libcheese/cheese-avatar-chooser.c 1970-01-01 00:00:00 +0000
6@@ -1,180 +0,0 @@
7-/*
8- * Copyright © 2009 Bastien Nocera <hadess@hadess.net>
9- *
10- * Licensed under the GNU General Public License Version 2
11- *
12- * This program is free software; you can redistribute it and/or modify
13- * it under the terms of the GNU General Public License as published by
14- * the Free Software Foundation; either version 2 of the License, or
15- * (at your option) any later version.
16- *
17- * This program is distributed in the hope that it will be useful,
18- * but WITHOUT ANY WARRANTY; without even the implied warranty of
19- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20- * GNU General Public License for more details.
21- *
22- * You should have received a copy of the GNU General Public License
23- * along with this program. If not, see <http://www.gnu.org/licenses/>.
24- */
25-
26-#include "cheese-config.h"
27-
28-#include <glib/gi18n-lib.h>
29-#include <canberra-gtk.h>
30-
31-#include "cheese-camera.h"
32-#include "cheese-widget-private.h"
33-#include "cheese-flash.h"
34-#include "cheese-avatar-chooser.h"
35-#include "cheese-avatar-widget.h"
36-#include "um-crop-area.h"
37-
38-/**
39- * SECTION:cheese-avatar-chooser
40- * @short_description: A photo capture dialog for avatars
41- * @stability: Unstable
42- * @include: cheese/cheese-avatar-chooser.h
43- *
44- * #CheeseAvatarChooser presents a simple window to the user for taking a photo
45- * for use as an avatar.
46- */
47-
48-enum
49-{
50- LAST_SIGNAL
51-};
52-
53-enum
54-{
55- PROP_0,
56- PROP_PIXBUF,
57- PROP_LAST
58-};
59-
60-enum
61-{
62- WIDGET_PAGE = 0,
63- IMAGE_PAGE = 1,
64-};
65-
66-struct _CheeseAvatarChooserPrivate
67-{
68- GtkWidget *widget;
69-};
70-
71-static GParamSpec *properties[PROP_LAST];
72-
73-G_DEFINE_TYPE_WITH_PRIVATE (CheeseAvatarChooser, cheese_avatar_chooser, GTK_TYPE_DIALOG);
74-
75-static void
76-update_select_button (CheeseAvatarWidget *widget,
77- GParamSpec *pspec,
78- CheeseAvatarChooser *chooser)
79-{
80- GdkPixbuf *pixbuf;
81-
82- g_object_get (G_OBJECT (widget), "pixbuf", &pixbuf, NULL);
83- gtk_dialog_set_response_sensitive (GTK_DIALOG (chooser),
84- GTK_RESPONSE_ACCEPT,
85- pixbuf != NULL);
86- if (pixbuf)
87- g_object_unref (pixbuf);
88-}
89-
90-static void
91-cheese_avatar_chooser_init (CheeseAvatarChooser *chooser)
92-{
93- CheeseAvatarChooserPrivate *priv = chooser->priv = cheese_avatar_chooser_get_instance_private (chooser);
94-
95- gtk_dialog_add_buttons (GTK_DIALOG (chooser),
96- _("_Cancel"),
97- GTK_RESPONSE_REJECT,
98- _("_Select"),
99- GTK_RESPONSE_ACCEPT,
100- NULL);
101- gtk_window_set_title (GTK_WINDOW (chooser), _("Take a Photo"));
102-
103- gtk_dialog_set_response_sensitive (GTK_DIALOG (chooser),
104- GTK_RESPONSE_ACCEPT,
105- FALSE);
106-
107- g_object_set (G_OBJECT (gtk_dialog_get_action_area (GTK_DIALOG (chooser))), "margin", 8, NULL);
108-
109- priv->widget = cheese_avatar_widget_new ();
110- gtk_widget_show (priv->widget);
111- gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (chooser))),
112- priv->widget,
113- TRUE, TRUE, 0);
114-
115- g_signal_connect (G_OBJECT (priv->widget), "notify::pixbuf",
116- G_CALLBACK (update_select_button), chooser);
117-
118-}
119-
120-static void
121-cheese_avatar_chooser_get_property (GObject *object, guint prop_id,
122- GValue *value, GParamSpec *pspec)
123-{
124- CheeseAvatarChooserPrivate *priv = ((CheeseAvatarChooser *) object)->priv;
125-
126- switch (prop_id)
127- {
128- case PROP_PIXBUF:
129- g_value_set_object (value, cheese_avatar_widget_get_picture (CHEESE_AVATAR_WIDGET (priv->widget)));
130- break;
131- default:
132- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
133- break;
134- }
135-}
136-
137-static void
138-cheese_avatar_chooser_class_init (CheeseAvatarChooserClass *klass)
139-{
140- GObjectClass *object_class = G_OBJECT_CLASS (klass);
141-
142- object_class->get_property = cheese_avatar_chooser_get_property;
143-
144- /**
145- * CheeseAvatarChooser:pixbuf:
146- *
147- * A #GdkPixbuf object representing the cropped area of the picture, or %NULL.
148- */
149- properties[PROP_PIXBUF] = g_param_spec_object ("pixbuf",
150- "Pixbuf",
151- "A #GdkPixbuf object representing the cropped area of the picture, or %NULL.",
152- GDK_TYPE_PIXBUF,
153- G_PARAM_READABLE);
154-
155- g_object_class_install_properties (object_class, PROP_LAST, properties);
156-}
157-
158-/**
159- * cheese_avatar_chooser_new:
160- *
161- * Creates a new #CheeseAvatarChooser dialogue.
162- *
163- * Returns: a #CheeseAvatarChooser
164- */
165-GtkWidget *
166-cheese_avatar_chooser_new (void)
167-{
168- return g_object_new (CHEESE_TYPE_AVATAR_CHOOSER, NULL);
169-}
170-
171-/**
172- * cheese_avatar_chooser_get_picture:
173- * @chooser: a #CheeseAvatarChooser dialogue
174- *
175- * Returns the portion of image selected through the builtin cropping tool,
176- * after a picture has been captured on the webcam.
177- *
178- * Return value: a #GdkPixbuf object, or %NULL if no picture has been taken yet
179- */
180-GdkPixbuf *
181-cheese_avatar_chooser_get_picture (CheeseAvatarChooser *chooser)
182-{
183- g_return_val_if_fail (CHEESE_IS_AVATAR_CHOOSER (chooser), NULL);
184-
185- return cheese_avatar_widget_get_picture (CHEESE_AVATAR_WIDGET (chooser->priv->widget));
186-}
187
188=== removed directory '.pc/0002-Use-a-traditional-title-bar-when-requested.patch'
189=== removed file '.pc/0002-Use-a-traditional-title-bar-when-requested.patch/Makefile.am'
190--- .pc/0002-Use-a-traditional-title-bar-when-requested.patch/Makefile.am 2014-05-23 11:12:02 +0000
191+++ .pc/0002-Use-a-traditional-title-bar-when-requested.patch/Makefile.am 1970-01-01 00:00:00 +0000
192@@ -1,561 +0,0 @@
193-ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
194-
195-SUBDIRS = po help
196-
197-enum_data = \
198- libcheese/cheese-enums.c \
199- libcheese/cheese-enums.h
200-
201-cheese_enum_headers = \
202- $(top_srcdir)/libcheese/cheese-widget.h
203-
204-libcheese/cheese-enums.c: $(cheese_enum_headers) libcheese/cheese-enums.h
205- $(AM_V_GEN)$(GLIB_MKENUMS) \
206- --fhead "#include \"cheese-enums.h\"\n\n" \
207- --fprod "/* enumerations from \"@filename@\" */\n" \
208- --fprod "#include \"@filename@\"\n" \
209- --vhead "GType\n@enum_name@_get_type (void)\n{\n" \
210- --vhead " static GType type = 0;\n\n" \
211- --vhead " if (!type)\n {\n" \
212- --vhead " static const G@Type@Value _@enum_name@_values[] = {" \
213- --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
214- --vtail " { 0, NULL, NULL }\n };\n\n" \
215- --vtail " type = g_@type@_register_static (\"@EnumName@\", _@enum_name@_values);\n }\n\n" \
216- --vtail " return type;\n}\n\n" \
217- $(cheese_enum_headers) > $@
218-
219-libcheese/cheese-enums.h: $(cheese_enum_headers)
220- $(AM_V_GEN)$(GLIB_MKENUMS) \
221- --fhead "#ifndef CHEESE_ENUMS_H_\n" \
222- --fhead "#define CHEESE_ENUMS_H_\n\n" \
223- --fhead "#include <glib-object.h>\n\n" \
224- --fhead "G_BEGIN_DECLS\n\n" \
225- --fprod "/* enumerations from @filename@ */\n" \
226- --vhead "GType @enum_name@_get_type (void) G_GNUC_CONST;\n" \
227- --vhead "#define CHEESE_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
228- --ftail "G_END_DECLS\n\n" \
229- --ftail "#endif /* CHEESE_ENUMS_H_ */" \
230- $(cheese_enum_headers) > $@
231-
232-AM_CPPFLAGS = \
233- -DDATADIR=\"$(datadir)\" \
234- -DPREFIX=\""$(prefix)"\" \
235- -DSYSCONFDIR=\""$(sysconfdir)"\" \
236- -DLIBDIR=\""$(libdir)"\" \
237- -DPACKAGE_DATADIR=\""$(pkgdatadir)"\" \
238- -DPACKAGE_LOCALEDIR=\""$(datadir)/locale"\" \
239- -DGNOME_DESKTOP_USE_UNSTABLE_API=1 \
240- -I$(top_builddir) \
241- $(CHEESE_CFLAGS) \
242- $(CHEESE_GTK_FLAGS) \
243- $(CHEESE_WFLAGS) \
244- $(WARN_CFLAGS)
245-
246-AM_VALAFLAGS = \
247- --target-glib=2.38 \
248- --thread \
249- --vapidir $(top_srcdir)/src/vapi \
250- --gresources $(top_srcdir)/data/cheese.gresource.xml \
251- --pkg config \
252- --pkg posix \
253- --pkg gtk+-3.0 \
254- --pkg gmodule-2.0 \
255- --pkg clutter-1.0 \
256- --pkg clutter-gtk-1.0 \
257- --pkg gstreamer-1.0 \
258- --pkg libcanberra-gtk \
259- --pkg libcanberra \
260- --pkg eogthumbnav \
261- --pkg cheese-thumbview \
262- --pkg cheese-common \
263- --pkg gdk-x11-3.0 \
264- --pkg gio-2.0
265-
266-lib_LTLIBRARIES = libcheese.la libcheese-gtk.la
267-
268-libcheese_gtk_la_CFLAGS = \
269- $(CHEESE_CFLAGS) \
270- $(CHEESE_GTK_CFLAGS) \
271- $(CHEESE_WFLAGS)
272-
273-libcheese_gtk_la_CPPFLAGS = \
274- $(AM_CPPFLAGS) \
275- -DG_LOG_DOMAIN=\"cheese-gtk\" \
276- -I$(top_builddir)/libcheese \
277- -I$(top_srcdir)/libcheese \
278- -I$(top_srcdir)/src
279-
280-libcheese_gtk_la_LIBADD = \
281- libcheese.la \
282- $(CHEESE_LIBS) \
283- $(CHEESE_GTK_LIBS)
284-
285-libcheese_gtk_la_LDFLAGS = \
286- -version-info $(LIBCHEESE_GTK_LT_VERSION) \
287- -export-symbols $(top_srcdir)/libcheese/cheese-gtk.symbols \
288- -no-undefined \
289- $(AM_LDFLAGS)
290-
291-libcheese_gtk_la_SOURCES = \
292- libcheese/cheese-avatar-chooser.c \
293- libcheese/cheese-avatar-widget.c \
294- libcheese/totem-aspect-frame.c \
295- libcheese/cheese-flash.c \
296- libcheese/cheese-gtk.c \
297- libcheese/cheese-widget.c \
298- libcheese/um-crop-area.c
299-
300-noinst_libcheese_gtk_headers = \
301- libcheese/totem-aspect-frame.h \
302- libcheese/cheese-avatar-chooser.h \
303- libcheese/cheese-avatar-widget.h \
304- libcheese/cheese-flash.h \
305- libcheese/cheese-widget.h \
306- libcheese/cheese-widget-private.h \
307- libcheese/um-crop-area.h
308-
309-libcheese_la_CFLAGS = \
310- $(CHEESE_CFLAGS) \
311- $(CHEESE_GTK_CFLAGS) \
312- $(CHEESE_WFLAGS)
313-
314-libcheese_la_CPPFLAGS = \
315- $(AM_CPPFLAGS) \
316- -DG_LOG_DOMAIN=\"cheese\" \
317- -I$(top_builddir)/libcheese \
318- -I$(top_srcdir)/libcheese
319-
320-libcheese_la_LIBADD = \
321- $(CHEESE_LIBS)
322-
323-libcheese_la_LDFLAGS = \
324- -version-info $(LIBCHEESE_LT_VERSION) \
325- $(AM_LDFLAGS)
326-
327-libcheese_la_SOURCES = \
328- libcheese/cheese-enums.c \
329- libcheese/cheese-camera.c \
330- libcheese/cheese-camera-device.c \
331- libcheese/cheese-camera-device-monitor.c \
332- libcheese/cheese-effect.c \
333- libcheese/cheese-fileutil.c \
334- libcheese/cheese.c
335-
336-noinst_libcheese_headers = \
337- libcheese/cheese-camera.h \
338- libcheese/cheese-camera-device.h \
339- libcheese/cheese-camera-device-monitor.h \
340- libcheese/cheese-effect.h \
341- libcheese/cheese-fileutil.h
342-
343-# FIXME when we have a .pc file, and sonames
344-cheesedir = $(includedir)/cheese
345-cheese_HEADERS = \
346- libcheese/cheese-avatar-widget.h \
347- libcheese/cheese-avatar-chooser.h \
348- libcheese/cheese-camera.h \
349- libcheese/cheese-camera-device.h \
350- libcheese/cheese-camera-device-monitor.h \
351- libcheese/cheese-effect.h \
352- libcheese/cheese-gtk.h \
353- libcheese/cheese.h \
354- libcheese/cheese-widget.h
355-
356-if HAVE_INTROSPECTION
357--include $(INTROSPECTION_MAKEFILE)
358-INTROSPECTION_COMPILER_ARGS = --includedir=$(top_srcdir)
359-INTROSPECTION_SCANNER_ARGS = --add-include-path=$(top_srcdir) --warn-all
360-
361-INTROSPECTION_GIRS = Cheese-3.0.gir
362-
363-Cheese-3.0.gir: libcheese.la
364-Cheese_3_0_gir_CFLAGS = \
365- -I$(top_srcdir)/libcheese \
366- -I$(top_builddir)/libcheese \
367- $(CHEESE_CFLAGS)
368-Cheese_3_0_gir_FILES = \
369- $(libcheese_la_SOURCES) \
370- $(noinst_libcheese_headers) \
371- libcheese/cheese-enums.h
372-Cheese_3_0_gir_INCLUDES = \
373- GObject-2.0 \
374- GLib-2.0 \
375- Gst-1.0 \
376- GstBase-1.0 \
377- cairo-1.0 \
378- Clutter-1.0 \
379- GdkPixbuf-2.0
380-Cheese_3_0_gir_LIBS = libcheese.la
381-Cheese_3_0_gir_SCANNERFLAGS = --verbose --warn-all --pkg-export cheese
382-
383-girdir = $(datadir)/gir-1.0
384-gir_DATA = $(INTROSPECTION_GIRS)
385-
386-typelibdir = $(libdir)/girepository-1.0
387-typelib_DATA = Cheese-3.0.typelib
388-endif
389-
390-noinst_resource_files = \
391- data/cheese.css \
392- data/cheese-viewport.json \
393- data/cheese-appmenu.ui \
394- data/cheese-main-window.ui \
395- data/cheese-prefs.ui \
396- data/pixmaps/cheese-1.svg \
397- data/pixmaps/cheese-2.svg \
398- data/pixmaps/cheese-3.svg \
399- data/pixmaps/thumbnail-frame.png
400-
401-src/cheese-resource.c src/cheese-resource.h: data/cheese.gresource.xml Makefile $(noinst_resource_files)
402- $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir)/data --generate --c-name cheese $<
403-
404-bin_PROGRAMS = cheese
405-
406-nodist_cheese_SOURCES = \
407- src/cheese-resource.c
408-
409-# cheese-main.vala must go at the end of the Vala sources.
410-cheese_SOURCES = \
411- src/cheese-application.vala \
412- src/cheese-countdown.vala \
413- src/cheese-effects-manager.vala \
414- src/cheese-preferences.vala \
415- src/cheese-window.vala \
416- src/cheese-main.vala \
417- src/thumbview/cheese-thumb-view.c \
418- src/thumbview/cheese-thumbnail.c \
419- src/thumbview/eog-thumb-nav.c
420-
421-nodist_cheese_HEADERS = \
422- src/cheese-resource.h
423-
424-noinst_HEADERS = \
425- src/thumbview/cheese-thumb-view.h \
426- src/thumbview/cheese-thumbnail.h \
427- src/thumbview/eog-thumb-nav.h
428-
429-cheese_CPPFLAGS = \
430- $(AM_CPPFLAGS) \
431- $(CHEESE_CFLAGS) \
432- $(CHEESE_GTK_CFLAGS) \
433- -include $(top_builddir)/$(CONFIG_HEADER) \
434- -I$(top_srcdir)/libcheese \
435- -I$(top_srcdir)/src
436-
437-cheese_CFLAGS = -export-dynamic -w
438-
439-cheese_LDADD = \
440- libcheese.la \
441- libcheese-gtk.la \
442- $(CHEESE_LIBS) \
443- $(CHEESE_GTK_LIBS)
444-
445-EXAMPLES = \
446- tests/cheese-test-camera \
447- tests/cheese-test-chooser \
448- tests/cheese-test-flash \
449- tests/cheese-test-monitor \
450- tests/cheese-test-widget
451-
452-if HAVE_XTEST
453-noinst_PROGRAMS = \
454- $(EXAMPLES) \
455- tests/test-webcam-button
456-else
457-noinst_PROGRAMS = $(EXAMPLES)
458-endif
459-
460-EXAMPLES_CPPFLAGS = \
461- $(AM_CPPFLAGS) \
462- $(CHEESE_GTK_CFLAGS) \
463- -I$(top_srcdir)/libcheese
464-
465-tests_cheese_test_camera_SOURCES = tests/cheese-test-camera.c
466-tests_cheese_test_chooser_SOURCES = tests/cheese-test-chooser.c
467-tests_cheese_test_flash_SOURCES = tests/cheese-test-flash.c
468-tests_cheese_test_monitor_SOURCES = tests/cheese-test-monitor.c
469-tests_cheese_test_widget_SOURCES = tests/cheese-test-widget.c
470-tests_test_webcam_button_SOURCES = tests/test-webcam-button.c
471-
472-tests_cheese_test_camera_CPPFLAGS = $(EXAMPLES_CPPFLAGS)
473-tests_cheese_test_chooser_CPPFLAGS = $(EXAMPLES_CPPFLAGS)
474-tests_cheese_test_flash_CPPFLAGS = $(EXAMPLES_CPPFLAGS)
475-tests_cheese_test_monitor_CPPFLAGS = $(EXAMPLES_CPPFLAGS)
476-tests_cheese_test_widget_CPPFLAGS = $(EXAMPLES_CPPFLAGS)
477-tests_test_webcam_button_CPPFLAGS = $(EXAMPLES_CPPFLAGS)
478-
479-tests_cheese_test_camera_LDADD = \
480- $(CHEESE_LIBS) \
481- $(CHEESE_GTK_LIBS) \
482- libcheese.la
483-tests_cheese_test_chooser_LDADD = \
484- $(CHEESE_LIBS) \
485- $(CHEESE_GTK_LIBS) \
486- libcheese.la \
487- libcheese-gtk.la
488-tests_cheese_test_flash_LDADD = \
489- $(CHEESE_LIBS) \
490- $(CHEESE_GTK_LIBS) \
491- libcheese.la \
492- libcheese-gtk.la
493-tests_cheese_test_monitor_LDADD = \
494- $(CHEESE_LIBS) \
495- $(CHEESE_GTK_LIBS) \
496- libcheese.la \
497- libcheese-gtk.la
498-tests_cheese_test_widget_LDADD = \
499- $(CHEESE_LIBS) \
500- $(CHEESE_GTK_LIBS) \
501- libcheese.la \
502- libcheese-gtk.la
503-tests_test_webcam_button_LDADD = $(XTEST_LIBS)
504-
505-@INTLTOOL_DESKTOP_RULE@
506-desktopdir = $(datadir)/applications
507-desktop_in_files = data/cheese.desktop.in
508-desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
509-
510-@APPDATA_XML_RULES@
511-@INTLTOOL_XML_RULE@
512-appdata_in_files = data/cheese.appdata.xml.in
513-appdata_XML = $(appdata_in_files:.appdata.xml.in=.appdata.xml)
514-
515-@GSETTINGS_RULES@
516-gsettings_SCHEMAS = data/org.gnome.Cheese.gschema.xml
517-
518-pkgconfigdir = $(libdir)/pkgconfig
519-pkgconfig_DATA = \
520- data/cheese.pc \
521- data/cheese-gtk.pc
522-
523-iconthemedir = $(datadir)/icons/hicolor
524-
525-appsicon16dir = $(iconthemedir)/16x16/apps
526-appsicon22dir = $(iconthemedir)/22x22/apps
527-appsicon24dir = $(iconthemedir)/24x24/apps
528-appsicon32dir = $(iconthemedir)/32x32/apps
529-appsicon48dir = $(iconthemedir)/48x48/apps
530-appsicon256dir = $(iconthemedir)/256x256/apps
531-
532-dist_appsicon16_DATA = data/icons/16x16/cheese.png
533-dist_appsicon22_DATA = data/icons/22x22/cheese.png
534-dist_appsicon24_DATA = data/icons/24x24/cheese.png
535-dist_appsicon32_DATA = data/icons/32x32/cheese.png
536-dist_appsicon48_DATA = data/icons/48x48/cheese.png
537-dist_appsicon256_DATA = data/icons/256x256/cheese.png
538-
539-update_icon_cache = gtk-update-icon-cache --ignore-theme-index --force
540-
541-install-data-hook: install-update-icon-cache
542-uninstall-hook: uninstall-update-icon-cache
543- touch libcheese_la_vala.stamp
544-
545-install-update-icon-cache:
546- $(AM_V_at)$(POST_INSTALL)
547- test -n "$(DESTDIR)" || $(update_icon_cache) "$(iconthemedir)"
548-
549-uninstall-update-icon-cache:
550- $(AM_V_at)$(POST_UNINSTALL)
551- test -n "$(DESTDIR)" || $(update_icon_cache) "$(iconthemedir)"
552-
553-# Tests.
554-check_PROGRAMS = \
555- tests/test-libcheese \
556- tests/test-libcheese-gtk
557-
558-tests_test_libcheese_gtk_SOURCES = \
559- libcheese/um-crop-area.c \
560- tests/test-libcheese-gtk.c
561-tests_test_libcheese_gtk_CPPFLAGS = $(EXAMPLES_CPPFLAGS)
562-tests_test_libcheese_gtk_LDADD = \
563- $(CHEESE_LIBS) \
564- $(CHEESE_GTK_LIBS) \
565- libcheese-gtk.la \
566- libcheese.la
567-
568-tests_test_libcheese_SOURCES = \
569- tests/test-libcheese.c
570-tests_test_libcheese_CPPFLAGS = $(EXAMPLES_CPPFLAGS)
571-tests_test_libcheese_LDADD = \
572- $(CHEESE_LIBS) \
573- libcheese.la
574-
575-if CHEESE_ENABLE_TESTS
576-# Not automake built-in TESTS_ENVIRONMENT!
577-TEST_ENVIRONMENT = MALLOC_CHECK_=2 MALLOC_PERTURB_=$$(($${RANDOM:-256} % 256))
578-
579-# test: run all tests.
580-test: $(check_PROGRAMS)
581- $(AM_V_at)$(TEST_ENVIRONMENT) $(GTESTER) --verbose $(check_PROGRAMS)
582-
583-# test-report: run tests and generate report.
584-# perf-report: run tests with -m perf and generate report.
585-# full-report: like test-report: with -m perf and -m slow.
586-test-report perf-report full-report: $(check_PROGRAMS)
587- $(AM_V_at)test -z "$(check_PROGRAMS)" || { \
588- case $@ in \
589- test-report) test_options="-k";; \
590- perf-report) test_options="-k -m=perf";; \
591- full-report) test_options="-k -m=perf -m=slow";; \
592- esac ; \
593- $(TEST_ENVIRONMENT) $(GTESTER) --verbose $$test_options -o test-log.xml $(check_PROGRAMS) ; \
594- if test -d "$(top_srcdir)/.git" ; then \
595- REVISION=`git describe` ; \
596- else \
597- REVISION=$(PACKAGE_VERSION) ; \
598- fi ; \
599- echo '<?xml version="1.0"?>' > $@.xml ; \
600- echo '<report-collection>' >> $@.xml ; \
601- echo '<info>' >> $@.xml ; \
602- echo ' <package>$(PACKAGE_NAME)</package>' >> $@.xml ; \
603- echo ' <version>$(PACKAGE_VERSION)</version>' >> $@.xml ; \
604- echo " <revision>$$REVISION</revision>" >> $@.xml ; \
605- echo '</info>' >> $@.xml ; \
606- sed '1,1s/^<?xml\b[^>?]*?>//' < test-log.xml >> $@.xml ; \
607- rm test-log.xml ; \
608- echo >> $@.xml ; \
609- echo '</report-collection>' >> $@.xml ; \
610- $(GTESTER_REPORT) --version 2>/dev/null 1>&2 ; test "$$?" != 0 || $(GTESTER_REPORT) $@.xml >$@.html ; \
611- }
612-else # !CHEESE_ENABLE_TESTS
613-test:
614- echo "Test run disabled due to the lack of GLib testing utilities"
615-endif
616-
617-# Code coverage reporting.
618-if CHEESE_ENABLE_LCOV
619-# Depend on full-report so that all the tests are run.
620-lcov: full-report
621- $(AM_V_at)$(LCOV) --base-directory $(top_builddir) \
622- --directory $(top_builddir)/libcheese --capture \
623- --output-file cheese-lcov.info --test-name CHEESE \
624- --no-checksum --compat-libtool
625- $(AM_V_at)LANG=C $(LCOV_GENHTML) --prefix $(top_builddir) \
626- --output-directory cheese-lcov --title "Cheese code coverage" \
627- --legend --show-details cheese-lcov.info
628-
629-lcov-clean:
630- $(AM_V_at)$(LCOV) --directory $(top_builddir) -z
631- $(AM_V_at)rm -rf cheese-lcov.info cheese-lcov
632- $(AM_V_at)find . -name '*.gcda' -exec rm -f {} +
633-else # !CHEESE_ENABLE_LCOV
634-lcov:
635- $(AM_V_at)echo "Code coverage reporting not available"
636-
637-lcov-clean:
638- $(AM_V_at)rm -rf cheese-lcov.info cheese-lcov
639- $(AM_V_at)find . -name '*.gcda' -exec rm -f {} +
640-endif
641-
642-# gtk-doc
643-gtkdoc_builddir = $(top_builddir)/docs/reference
644-gtkdoc_distdir = $(top_distdir)/docs/reference
645-gtkdoc_srcdir = $(top_srcdir)/docs/reference
646-
647-all-local: $(bin_PROGRAMS)
648- cd $(gtkdoc_builddir) && $(MAKE) $(AM_MAKEFLAGS) all
649-# run make test as part of make check.
650-check-local: test
651- cd $(gtkdoc_builddir) && $(MAKE) $(AM_MAKEFlAGS) check
652-clean-local: lcov-clean
653- cd $(gtkdoc_builddir) && if test -e Makefile ; then \
654- $(MAKE) $(AM_MAKEFLAGS) clean ; \
655- fi
656- find . -name '*.gcno' -exec rm -f {} +
657-distclean-local:
658- cd $(gtkdoc_builddir) && $(MAKE) $(AM_MAKEFLAGS) distclean
659-docs: $(lib_LTLIBRARIES)
660- cd $(gtkdoc_builddir) && $(MAKE) $(AM_MAKEFLAGS) docs
661-install-data-local:
662- cd $(gtkdoc_builddir) && $(MAKE) $(AM_MAKEFLAGS) install-data
663-uninstall-local:
664- cd $(gtkdoc_builddir) && $(MAKE) $(AM_MAKEFLAGS) uninstall
665-
666-dist-hook: git-changelog-hook
667- $(MKDIR_P) $(gtkdoc_distdir)
668- cp $(gtkdoc_srcdir)/Makefile.am $(gtkdoc_srcdir)/Makefile.in $(gtkdoc_distdir)
669- cd $(gtkdoc_builddir) && $(MAKE) $(AM_MAKEFLAGS) \
670- distdir="../../$(gtkdoc_distdir)" \
671- top_distdir="../../$(top_distdir)" \
672- dist-hook
673-
674-dist_noinst_DATA = \
675- ChangeLog.pre-git \
676- $(desktop_in_files) \
677- $(gsettings_SCHEMAS) \
678- $(noinst_resource_files) \
679- $(appdata_in_files) \
680- data/cheese.gresource.xml \
681- build-aux/test-driver \
682- $(gtkdoc_srcdir)/cheese-docs.xml \
683- $(gtkdoc_srcdir)/cheese-sections.txt \
684- $(gtkdoc_srcdir)/cheese.xml \
685- $(gtkdoc_srcdir)/version.xml.in \
686- gtk-doc.make \
687- intltool-extract.in \
688- intltool-merge.in \
689- intltool-update.in \
690- $(noinst_libcheese_headers) \
691- $(noinst_libcheese_gtk_headers) \
692- libcheese/cheese-gtk.symbols \
693- m4/introspection.m4 \
694- src/vapi/cheese-common.deps \
695- src/vapi/cheese-common.vapi \
696- src/vapi/cheese-thumbview.vapi \
697- src/vapi/config.vapi \
698- src/vapi/eogthumbnav.vapi
699-
700-dist_noinst_SCRIPTS = \
701- autogen.sh
702-
703-CLEANFILES = \
704- $(appdata_XML) \
705- $(desktop_DATA) \
706- $(pkgconfig_DATA) \
707- $(enum_data) \
708- $(gir_DATA) \
709- $(typelib_DATA) \
710- src/cheese-resource.c \
711- src/cheese-resource.h
712-
713-DISTCLEANFILES = \
714- libcheese_la_vala.stamp \
715- intltool-extract \
716- intltool-merge \
717- intltool-update \
718- po/.intltool-merge-cache
719-
720-MAINTAINERCLEANFILES = \
721- build-aux/compile \
722- build-aux/config.guess \
723- build-aux/config.sub \
724- build-aux/depcomp \
725- build-aux/install-sh \
726- build-aux/ltmain.sh \
727- build-aux/missing \
728- build-aux/test-driver \
729- aclocal.m4 \
730- config.h.n \
731- $(gsettings_SCHEMAS:.xml=.valid) \
732- mkinstalldirs \
733- omf.make \
734- xmldocs.make
735-
736-DISTCHECK_CONFIGURE_FLAGS = \
737- --enable-appdata-check \
738- --enable-gtk-doc \
739- --enable-introspection \
740- --enable-man
741-
742-CHANGELOG_START = 2.26.0
743-
744-git-changelog-hook:
745- $(AM_V_at)if $(top_srcdir)/build-aux/missing --run git \
746- --git-dir=$(top_srcdir)/.git --work-tree=$(top_srcdir) log \
747- --stat -M -C --name-status --no-color $(CHANGELOG_START).. \
748- | fmt --split-only >.ChangeLog.tmp; \
749- then mv -f .ChangeLog.tmp "$(top_distdir)/ChangeLog"; \
750- else rm -f .ChangeLog.tmp; exit 1; fi
751-
752-.PHONY: docs git-changelog-hook test test-report perf-report full-report
753-.PHONY: lcov lcov-clean
754
755=== removed directory '.pc/0002-Use-a-traditional-title-bar-when-requested.patch/data'
756=== removed file '.pc/0002-Use-a-traditional-title-bar-when-requested.patch/data/cheese-main-window.ui'
757--- .pc/0002-Use-a-traditional-title-bar-when-requested.patch/data/cheese-main-window.ui 2014-05-23 11:12:02 +0000
758+++ .pc/0002-Use-a-traditional-title-bar-when-requested.patch/data/cheese-main-window.ui 1970-01-01 00:00:00 +0000
759@@ -1,236 +0,0 @@
760-<?xml version="1.0"?>
761-<interface domain="cheese">
762- <requires lib="gtk+" version="3.10"/>
763- <template class="CheeseMainWindow" parent="GtkApplicationWindow">
764- <child type="titlebar">
765- <object class="GtkHeaderBar" id="header_bar">
766- <property name="visible">True</property>
767- <property name="can_focus">False</property>
768- <property name="title" translatable="yes">Take a Photo</property>
769- <property name="show-close-button">True</property>
770- <style>
771- <class name="titlebar"/>
772- </style>
773- </object>
774- </child>
775- <child>
776- <object class="GtkBox" id="main_vbox">
777- <property name="orientation">vertical</property>
778- <property name="events">GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
779- <property name="visible">True</property>
780- <child>
781- <object class="GtkBox" id="content_area">
782- <property name="vexpand">True</property>
783- <property name="hexpand">True</property>
784- <property name="orientation">horizontal</property>
785- <property name="visible">True</property>
786- <child>
787- <object class="GtkBox" id="view_area">
788- <property name="orientation">vertical</property>
789- <property name="visible">True</property>
790- <child>
791- <object class="GtkClutterEmbed" id="viewport_widget">
792- <property name="vexpand">True</property>
793- <property name="hexpand">True</property>
794- <property name="events">GDK_POINTER_MOTION_MASK</property>
795- <property name="height_request">450</property>
796- <property name="width_request">600</property>
797- <property name="visible">True</property>
798- </object>
799- </child>
800- <child>
801- <object class="GtkAlignment" id="action_area_alignment">
802- <property name="hexpand">True</property>
803- <property name="visible">True</property>
804- <child>
805- <object class="GtkBox" id="buttons_area">
806- <property name="border-width">6</property>
807- <property name="orientation">horizontal</property>
808- <property name="visible">True</property>
809- <child>
810- <object class="GtkBox" id="mode_toggle_buttons">
811- <property name="orientation">horizontal</property>
812- <property name="visible">True</property>
813- <style>
814- <class name="linked"/>
815- </style>
816- <child>
817- <object class="GtkToggleButton" id="photo_toggle_button">
818- <property name="action-name">app.mode</property>
819- <property name="action-target">"photo"</property>
820- <property name="tooltip_text" translatable="yes">Photo mode</property>
821- <property name="label" translatable="yes">Photo</property>
822- <property name="visible">True</property>
823- <property name="visible">True</property>
824- <style>
825- <class name="text-button"/>
826- </style>
827- </object>
828- </child>
829- <child>
830- <object class="GtkToggleButton" id="video_toggle_button">
831- <property name="action-name">app.mode</property>
832- <property name="action-target">"video"</property>
833- <property name="tooltip_text" translatable="yes">Video mode</property>
834- <property name="label" translatable="yes">Video</property>
835- <property name="visible">True</property>
836- <style>
837- <class name="text-button"/>
838- </style>
839- </object>
840- </child>
841- <child>
842- <object class="GtkToggleButton" id="burst_toggle_button">
843- <property name="action-name">app.mode</property>
844- <property name="action-target">"burst"</property>
845- <property name="tooltip_text" translatable="yes">Photo burst mode</property>
846- <property name="label" translatable="yes">Burst</property>
847- <property name="visible">True</property>
848- <style>
849- <class name="text-button"/>
850- </style>
851- </object>
852- </child>
853- </object>
854- <packing>
855- </packing>
856- </child>
857- <child>
858- <object class="GtkAlignment" id="action_button_alignment">
859- <property name="xscale">0</property>
860- <property name="yscale">0</property>
861- <property name="hexpand">True</property>
862- <property name="vexpand">False</property>
863- <property name="visible">True</property>
864- <child>
865- <object class="GtkButton" id="take_action_button">
866- <property name="action-name">app.shoot</property>
867- <property name="tooltip_text" translatable="yes">Take a photo using a webcam</property>
868- <property name="visible">True</property>
869- <style>
870- <class name="image-button"/>
871- </style>
872- <child>
873- <object class="GtkImage" id="take_action_button_image">
874- <property name="icon-name">camera-web-symbolic</property>
875- <property name="visible">True</property>
876- </object>
877- </child>
878- </object>
879- </child>
880- </object>
881- </child>
882- <child>
883- <object class="GtkBox" id="effects_actions_pack">
884- <property name="orientation">horizontal</property>
885- <property name="visible">True</property>
886- <style>
887- <class name="linked"/>
888- </style>
889- <child>
890- <object class="GtkButton" id="effects_prev_page_button">
891- <property name="action-name">win.effects-previous</property>
892- <property name="tooltip_text" translatable="yes">Navigate to the previous page of effects</property>
893- <property name="visible">True</property>
894- <child>
895- <object class="GtkImage" id="effects_prev_page_button_image">
896- <property name="visible">True</property>
897- </object>
898- </child>
899- </object>
900- </child>
901- <child>
902- <object class="GtkToggleButton" id="effects_toggle_button">
903- <property name="vexpand">False</property>
904- <property name="hexpand">False</property>
905- <property name="action-name">app.effects</property>
906- <property name="tooltip_text" translatable="yes">Effects</property>
907- <property name="visible">True</property>
908- <child>
909- <object class="GtkBox" id="effects_toggle_button_internal_hbox">
910- <property name="orientation">horizontal</property>
911- <property name="spacing">2</property>
912- <property name="visible">True</property>
913- <child>
914- <object class="GtkLabel" id="effects_toggle_button_internal_label">
915- <property name="label" translatable="yes">_Effects</property>
916- <property name="use_underline">True</property>
917- <property name="visible">True</property>
918- </object>
919- </child>
920- </object>
921- </child>
922- </object>
923- </child>
924- <child>
925- <object class="GtkButton" id="effects_next_page_button">
926- <property name="use-action-appearance">False</property>
927- <property name="action-name">win.effects-next</property>
928- <property name="tooltip_text" translatable="yes">Navigate to the next page of effects</property>
929- <property name="visible">True</property>
930- <child>
931- <object class="GtkImage" id="effects_next_page_button_image">
932- <property name="visible">True</property>
933- </object>
934- </child>
935- </object>
936- </child>
937- </object>
938- </child>
939- <child>
940- <object class="GtkBox" id="leave_fullscreen_button_box">
941- <property name="orientation">horizontal</property>
942- <property name="visible">False</property>
943- <property name="no-show-all">True</property>
944- <property name="hexpand">False</property>
945- <child>
946- <object class="GtkButton" id="leave_fullscreen_button">
947- <property name="use-action-appearance">False</property>
948- <property name="action-name">app.fullscreen</property>
949- <property name="tooltip_text" translatable="yes">Leave fullscreen mode and go back to windowed mode</property>
950- <child>
951- <object class="GtkImage" id="fullscreen_button_internal_image">
952- <property name="icon-name">view-restore-symbolic</property>
953- </object>
954- </child>
955- </object>
956- </child>
957- </object>
958- </child>
959- </object>
960- </child>
961- </object>
962- </child>
963- </object>
964- </child>
965- <child>
966- <object class="GtkAlignment" id="thumbnails_right">
967- <property name="visible">False</property>
968- <property name="vexpand">False</property>
969- <child>
970- <placeholder/>
971- </child>
972- </object>
973- </child>
974- </object>
975- </child>
976- <child>
977- <object class="GtkAlignment" id="thumbnails_bottom">
978- <property name="visible">False</property>
979- <property name="vexpand">False</property>
980- <child>
981- <placeholder/>
982- </child>
983- </object>
984- </child>
985- </object>
986- </child>
987- </template>
988- <object class="GtkSizeGroup" id="button_sizegroup">
989- <property name="mode">GTK_SIZE_GROUP_HORIZONTAL</property>
990- <widgets>
991- <widget name="take_action_button"/>
992- <widget name="effects_actions_pack"/>
993- </widgets>
994- </object>
995-</interface>
996
997=== removed file '.pc/0002-Use-a-traditional-title-bar-when-requested.patch/data/cheese.gresource.xml'
998--- .pc/0002-Use-a-traditional-title-bar-when-requested.patch/data/cheese.gresource.xml 2014-05-23 11:12:02 +0000
999+++ .pc/0002-Use-a-traditional-title-bar-when-requested.patch/data/cheese.gresource.xml 1970-01-01 00:00:00 +0000
1000@@ -1,15 +0,0 @@
1001-<?xml version="1.0" encoding="UTF-8"?>
1002-<gresources>
1003- <gresource prefix='/org/gnome/Cheese'>
1004- <file>cheese.css</file>
1005- <file>cheese-viewport.json</file>
1006- <file preprocess="xml-stripblanks">cheese-appmenu.ui</file>
1007- <file preprocess="xml-stripblanks">cheese-main-window.ui</file>
1008- <file preprocess="xml-stripblanks">cheese-prefs.ui</file>
1009- <file>pixmaps/cheese-1.svg</file>
1010- <file>pixmaps/cheese-2.svg</file>
1011- <file>pixmaps/cheese-3.svg</file>
1012- <file preprocess="to-pixdata">pixmaps/thumbnail-frame.png</file>
1013- </gresource>
1014-</gresources>
1015-
1016
1017=== removed file '.pc/0002-Use-a-traditional-title-bar-when-requested.patch/data/headerbar.ui'
1018=== removed directory '.pc/0002-Use-a-traditional-title-bar-when-requested.patch/src'
1019=== removed file '.pc/0002-Use-a-traditional-title-bar-when-requested.patch/src/cheese-window.vala'
1020--- .pc/0002-Use-a-traditional-title-bar-when-requested.patch/src/cheese-window.vala 2014-05-23 11:12:02 +0000
1021+++ .pc/0002-Use-a-traditional-title-bar-when-requested.patch/src/cheese-window.vala 1970-01-01 00:00:00 +0000
1022@@ -1,1348 +0,0 @@
1023-/*
1024- * Copyright © 2010 Yuvaraj Pandian T <yuvipanda@yuvi.in>
1025- * Copyright © 2010 daniel g. siegel <dgsiegel@gnome.org>
1026- * Copyright © 2008 Filippo Argiolas <filippo.argiolas@gmail.com>
1027- *
1028- * Licensed under the GNU General Public License Version 2
1029- *
1030- * This program is free software; you can redistribute it and/or modify
1031- * it under the terms of the GNU General Public License as published by
1032- * the Free Software Foundation; either version 2 of the License, or
1033- * (at your option) any later version.
1034- *
1035- * This program is distributed in the hope that it will be useful,
1036- * but WITHOUT ANY WARRANTY; without even the implied warranty of
1037- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1038- * GNU General Public License for more details.
1039- *
1040- * You should have received a copy of the GNU General Public License
1041- * along with this program. If not, see <http://www.gnu.org/licenses/>.
1042- */
1043-
1044-using Gtk;
1045-using Gdk;
1046-using GtkClutter;
1047-using Clutter;
1048-using Config;
1049-using Eog;
1050-using Gst;
1051-using CanberraGtk;
1052-
1053-const int FULLSCREEN_TIMEOUT_INTERVAL = 5 * 1000;
1054-const uint EFFECTS_PER_PAGE = 9;
1055-
1056-[GtkTemplate (ui = "/org/gnome/Cheese/cheese-main-window.ui")]
1057-public class Cheese.MainWindow : Gtk.ApplicationWindow
1058-{
1059- private const GLib.ActionEntry actions[] = {
1060- { "file-open", on_file_open },
1061- { "file-saveas", on_file_saveas },
1062- { "file-trash", on_file_trash },
1063- { "file-delete", on_file_delete },
1064- { "effects-next", on_effects_next },
1065- { "effects-previous", on_effects_previous }
1066- };
1067-
1068- private MediaMode current_mode;
1069-
1070- private Clutter.Script clutter_builder;
1071-
1072- [GtkChild]
1073- private Gtk.HeaderBar header_bar;
1074-
1075- private GLib.Settings settings;
1076-
1077- [GtkChild]
1078- private GtkClutter.Embed viewport_widget;
1079- [GtkChild]
1080- private Gtk.Widget main_vbox;
1081- private Eog.ThumbNav thumb_nav;
1082- private Cheese.ThumbView thumb_view;
1083- [GtkChild]
1084- private Gtk.Alignment thumbnails_right;
1085- [GtkChild]
1086- private Gtk.Alignment thumbnails_bottom;
1087- [GtkChild]
1088- private Gtk.Widget leave_fullscreen_button_box;
1089- [GtkChild]
1090- private Gtk.Button take_action_button;
1091- [GtkChild]
1092- private Gtk.Image take_action_button_image;
1093- [GtkChild]
1094- private Gtk.ToggleButton effects_toggle_button;
1095- [GtkChild]
1096- private Gtk.Image effects_prev_page_button_image;
1097- [GtkChild]
1098- private Gtk.Image effects_next_page_button_image;
1099- [GtkChild]
1100- private Gtk.Widget buttons_area;
1101- private Gtk.Menu thumbnail_popup;
1102-
1103- private Clutter.Stage viewport;
1104- private Clutter.Actor viewport_layout;
1105- private Clutter.Texture video_preview;
1106- private Clutter.BinLayout viewport_layout_manager;
1107- private Clutter.Text countdown_layer;
1108- private Clutter.Actor background_layer;
1109- private Clutter.Text error_layer;
1110- private Clutter.Text timeout_layer;
1111-
1112- private Clutter.Actor current_effects_grid;
1113- private uint current_effects_page = 0;
1114- private List<Clutter.Actor> effects_grids;
1115-
1116- private bool is_fullscreen;
1117- private bool is_wide_mode;
1118- private bool is_recording; /* Video Recording Flag */
1119- private bool is_bursting;
1120- private bool is_effects_selector_active;
1121- private bool action_cancelled;
1122- private bool was_maximized;
1123-
1124- private Cheese.Camera camera;
1125- private Cheese.FileUtil fileutil;
1126- private Cheese.Flash flash;
1127-
1128- private Cheese.EffectsManager effects_manager;
1129-
1130- private Cheese.Effect selected_effect;
1131-
1132- /**
1133- * Responses from the delete files confirmation dialog.
1134- *
1135- * @param SKIP skip a single file
1136- * @param SKIP_ALL skill all following files
1137- */
1138- enum DeleteResponse
1139- {
1140- SKIP = 1,
1141- SKIP_ALL = 2
1142- }
1143-
1144- public MainWindow (Gtk.Application application)
1145- {
1146- GLib.Object (application: application);
1147-
1148- if (get_direction () == Gtk.TextDirection.RTL)
1149- {
1150- effects_prev_page_button_image.icon_name = "go-previous-rtl-symbolic";
1151- effects_next_page_button_image.icon_name = "go-next-rtl-symbolic";
1152- }
1153- else
1154- {
1155- effects_prev_page_button_image.icon_name = "go-previous-symbolic";
1156- effects_next_page_button_image.icon_name = "go-next-symbolic";
1157- }
1158- }
1159-
1160- private bool on_window_state_change_event (Gtk.Widget widget,
1161- Gdk.EventWindowState event)
1162- {
1163- was_maximized = (((event.new_window_state - event.changed_mask)
1164- & Gdk.WindowState.MAXIMIZED) != 0);
1165-
1166- window_state_event.disconnect (on_window_state_change_event);
1167- return false;
1168- }
1169-
1170- /**
1171- * Popup a context menu when right-clicking on a thumbnail.
1172- *
1173- * @param iconview the thumbnail view that emitted the signal
1174- * @param event the event
1175- * @return false to allow further processing of the event, true to indicate
1176- * that the event was handled completely
1177- */
1178- public bool on_thumbnail_button_press_event (Gtk.Widget iconview,
1179- Gdk.EventButton event)
1180- {
1181- Gtk.TreePath path;
1182- path = thumb_view.get_path_at_pos ((int) event.x, (int) event.y);
1183-
1184- if (path == null)
1185- {
1186- return false;
1187- }
1188-
1189- if (!thumb_view.path_is_selected (path))
1190- {
1191- thumb_view.unselect_all ();
1192- thumb_view.select_path (path);
1193- thumb_view.set_cursor (path, null, false);
1194- }
1195-
1196- if (event.type == Gdk.EventType.BUTTON_PRESS)
1197- {
1198- Gdk.Event* button_press = (Gdk.Event*)(&event);
1199-
1200- if (button_press->triggers_context_menu ())
1201- {
1202- thumbnail_popup.popup (null, thumb_view, null, event.button,
1203- event.time);
1204- }
1205- else if (event.type == Gdk.EventType.2BUTTON_PRESS)
1206- {
1207- on_file_open ();
1208- }
1209-
1210- return true;
1211- }
1212-
1213- return false;
1214- }
1215-
1216- /**
1217- * Open an image associated with a thumbnail in the default application.
1218- */
1219- private void on_file_open ()
1220- {
1221- string filename, uri;
1222-
1223- Gdk.Screen screen;
1224- filename = thumb_view.get_selected_image ();
1225-
1226- if (filename == null)
1227- return; /* Nothing selected. */
1228-
1229- try
1230- {
1231- uri = GLib.Filename.to_uri (filename);
1232- screen = this.get_screen ();
1233- Gtk.show_uri (screen, uri, Gtk.get_current_event_time ());
1234- }
1235- catch (Error err)
1236- {
1237- MessageDialog error_dialog = new MessageDialog (this,
1238- Gtk.DialogFlags.MODAL |
1239- Gtk.DialogFlags.DESTROY_WITH_PARENT,
1240- Gtk.MessageType.ERROR,
1241- Gtk.ButtonsType.OK,
1242- _("Could not open %s"),
1243- filename);
1244-
1245- error_dialog.run ();
1246- error_dialog.destroy ();
1247- }
1248- }
1249-
1250- /**
1251- * Delete the requested image or images in the thumbview from storage.
1252- *
1253- * A confirmation dialog is shown to the user before deleting any files.
1254- */
1255- private void on_file_delete ()
1256- {
1257- int response;
1258- int error_response;
1259- bool skip_all_errors = false;
1260-
1261- var files = thumb_view.get_selected_images_list ();
1262- var files_length = files.length ();
1263-
1264- var confirmation_dialog = new MessageDialog.with_markup (this,
1265- Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT,
1266- Gtk.MessageType.WARNING, Gtk.ButtonsType.NONE,
1267- GLib.ngettext("Are you sure you want to permanently delete the file?",
1268- "Are you sure you want to permanently delete %d files?",
1269- files_length), files_length);
1270- confirmation_dialog.add_button (_("_Cancel"), Gtk.ResponseType.CANCEL);
1271- confirmation_dialog.add_button (_("_Delete"), Gtk.ResponseType.ACCEPT);
1272- confirmation_dialog.format_secondary_text ("%s",
1273- GLib.ngettext("If you delete an item, it will be permanently lost",
1274- "If you delete the items, they will be permanently lost",
1275- files_length));
1276-
1277- response = confirmation_dialog.run ();
1278- if (response == Gtk.ResponseType.ACCEPT)
1279- {
1280- foreach (var file in files)
1281- {
1282- if (file == null)
1283- return;
1284-
1285- try
1286- {
1287- file.delete (null);
1288- }
1289- catch (Error err)
1290- {
1291- warning ("Unable to delete file: %s", err.message);
1292-
1293- if (!skip_all_errors) {
1294- var error_dialog = new MessageDialog (this,
1295- Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT,
1296- Gtk.MessageType.ERROR, Gtk.ButtonsType.NONE,
1297- "Could not delete %s", file.get_path ());
1298-
1299- error_dialog.add_button (_("_Cancel"), Gtk.ResponseType.CANCEL);
1300- error_dialog.add_button ("Skip", DeleteResponse.SKIP);
1301- error_dialog.add_button ("Skip all", DeleteResponse.SKIP_ALL);
1302-
1303- error_response = error_dialog.run ();
1304- if (error_response == DeleteResponse.SKIP_ALL) {
1305- skip_all_errors = true;
1306- } else if (error_response == Gtk.ResponseType.CANCEL) {
1307- break;
1308- }
1309-
1310- error_dialog.destroy ();
1311- }
1312- }
1313- }
1314- }
1315- confirmation_dialog.destroy ();
1316- }
1317-
1318- /**
1319- * Move the requested image in the thumbview to the trash.
1320- *
1321- * A confirmation dialog is shown to the user before moving the file.
1322- */
1323- private void on_file_trash ()
1324- {
1325- File file;
1326-
1327- GLib.List<GLib.File> files = thumb_view.get_selected_images_list ();
1328-
1329- for (int i = 0; i < files.length (); i++)
1330- {
1331- file = files<GLib.File>.nth (i).data;
1332- if (file == null)
1333- return;
1334-
1335- try
1336- {
1337- file.trash (null);
1338- }
1339- catch (Error err)
1340- {
1341- MessageDialog error_dialog = new MessageDialog (this,
1342- Gtk.DialogFlags.MODAL |
1343- Gtk.DialogFlags.DESTROY_WITH_PARENT,
1344- Gtk.MessageType.ERROR,
1345- Gtk.ButtonsType.OK,
1346- _("Could not move %s to trash"),
1347- file.get_path ());
1348-
1349- error_dialog.run ();
1350- error_dialog.destroy ();
1351- }
1352- }
1353- }
1354-
1355- /**
1356- * Save the selected file in the thumbview to an alternate storage location.
1357- *
1358- * A file chooser dialog is shown to the user, asking where the file should
1359- * be saved and the filename.
1360- */
1361- private void on_file_saveas ()
1362- {
1363- string filename, basename;
1364- FileChooserDialog save_as_dialog;
1365- int response;
1366-
1367- filename = thumb_view.get_selected_image ();
1368- if (filename == null)
1369- return; /* Nothing selected. */
1370-
1371- save_as_dialog = new FileChooserDialog (_("Save File"),
1372- this,
1373- Gtk.FileChooserAction.SAVE,
1374- _("_Cancel"), Gtk.ResponseType.CANCEL,
1375- _("Save"), Gtk.ResponseType.ACCEPT,
1376- null);
1377-
1378- save_as_dialog.do_overwrite_confirmation = true;
1379- basename = GLib.Filename.display_basename (filename);
1380- save_as_dialog.set_current_name (basename);
1381- save_as_dialog.set_current_folder (GLib.Environment.get_home_dir ());
1382-
1383- response = save_as_dialog.run ();
1384-
1385- save_as_dialog.hide ();
1386- if (response == Gtk.ResponseType.ACCEPT)
1387- {
1388- string target_filename;
1389- target_filename = save_as_dialog.get_filename ();
1390-
1391- File src = File.new_for_path (filename);
1392- File dest = File.new_for_path (target_filename);
1393-
1394- try
1395- {
1396- src.copy (dest, FileCopyFlags.OVERWRITE, null, null);
1397- }
1398- catch (Error err)
1399- {
1400- MessageDialog error_dialog = new MessageDialog (this,
1401- Gtk.DialogFlags.MODAL |
1402- Gtk.DialogFlags.DESTROY_WITH_PARENT,
1403- Gtk.MessageType.ERROR,
1404- Gtk.ButtonsType.OK,
1405- _("Could not save %s"),
1406- target_filename);
1407-
1408- error_dialog.run ();
1409- error_dialog.destroy ();
1410- }
1411- }
1412- save_as_dialog.destroy ();
1413- }
1414-
1415- /**
1416- * Toggle fullscreen mode.
1417- *
1418- * @param fullscreen whether the window should be fullscreen
1419- */
1420- public void set_fullscreen (bool fullscreen)
1421- {
1422- set_fullscreen_mode (fullscreen);
1423- }
1424-
1425- /**
1426- * Make the media capture mode actions sensitive.
1427- */
1428- private void enable_mode_change ()
1429- {
1430- var mode = this.application.lookup_action ("mode") as SimpleAction;
1431- mode.set_enabled (true);
1432- var effects = this.application.lookup_action ("effects") as SimpleAction;
1433- effects.set_enabled (true);
1434- var preferences = this.application.lookup_action ("preferences") as SimpleAction;
1435- preferences.set_enabled (true);
1436- }
1437-
1438- /**
1439- * Make the media capture mode actions insensitive.
1440- */
1441- private void disable_mode_change ()
1442- {
1443- var mode = this.application.lookup_action ("mode") as SimpleAction;
1444- mode.set_enabled (false);
1445- var effects = this.application.lookup_action ("effects") as SimpleAction;
1446- effects.set_enabled (false);
1447- var preferences = this.application.lookup_action ("preferences") as SimpleAction;
1448- preferences.set_enabled (false);
1449- }
1450-
1451- /**
1452- * Set the capture resolution, based on the current capture mode.
1453- *
1454- * @param mode the current capture mode (photo, video or burst)
1455- */
1456- private void set_resolution(MediaMode mode)
1457- {
1458- if (camera == null)
1459- return;
1460-
1461- var formats = camera.get_video_formats ();
1462-
1463- if (formats == null)
1464- return;
1465-
1466- unowned Cheese.VideoFormat format;
1467- int width = 0;
1468- int height = 0;
1469-
1470- switch (mode)
1471- {
1472- case MediaMode.PHOTO:
1473- case MediaMode.BURST:
1474- width = settings.get_int ("photo-x-resolution");
1475- height = settings.get_int ("photo-y-resolution");
1476- break;
1477- case MediaMode.VIDEO:
1478- width = settings.get_int ("video-x-resolution");
1479- height = settings.get_int ("video-y-resolution");
1480- break;
1481- }
1482-
1483- for (int i = 0; i < formats.length (); i++)
1484- {
1485- format = formats<VideoFormat>.nth (i).data;
1486- if (width == format.width && height == format.height)
1487- {
1488- camera.set_video_format (format);
1489- break;
1490- }
1491- }
1492- }
1493-
1494- private TimeoutSource fullscreen_timeout;
1495- /**
1496- * Clear the fullscreen activity timeout.
1497- */
1498- private void clear_fullscreen_timeout ()
1499- {
1500- if (fullscreen_timeout != null)
1501- {
1502- fullscreen_timeout.destroy ();
1503- fullscreen_timeout = null;
1504- }
1505- }
1506-
1507- /**
1508- * Set the fullscreen timeout, for hiding the UI if there is no mouse
1509- * movement.
1510- */
1511- private void set_fullscreen_timeout ()
1512- {
1513- fullscreen_timeout = new TimeoutSource (FULLSCREEN_TIMEOUT_INTERVAL);
1514- fullscreen_timeout.attach (null);
1515- fullscreen_timeout.set_callback (() => {buttons_area.hide ();
1516- clear_fullscreen_timeout ();
1517- this.fullscreen ();
1518- return true; });
1519- }
1520-
1521- /**
1522- * Show the UI in fullscreen if there is any mouse activity.
1523- *
1524- * Start a new timeout at the end of every mouse pointer movement. All
1525- * timeouts will be cancelled, except one created during the last movement
1526- * event. Show() is called even if the button is not hidden.
1527- *
1528- * @param viewport the widget to check for mouse activity on
1529- * @param e the (unused) event
1530- */
1531- private bool fullscreen_motion_notify_callback (Gtk.Widget viewport,
1532- EventMotion e)
1533- {
1534- clear_fullscreen_timeout ();
1535- this.unfullscreen ();
1536- this.maximize ();
1537- buttons_area.show ();
1538- set_fullscreen_timeout ();
1539- return true;
1540- }
1541-
1542- /**
1543- * Enable or disable fullscreen mode to the requested state.
1544- *
1545- * @param fullscreen_mode whether to enable or disable fullscreen mode
1546- */
1547- private void set_fullscreen_mode (bool fullscreen)
1548- {
1549- /* After the first time the window has been shown using this.show_all (),
1550- * the value of leave_fullscreen_button_box.no_show_all should be set to false
1551- * So that the next time leave_fullscreen_button_box.show_all () is called, the button is actually shown
1552- * FIXME: If this code can be made cleaner/clearer, please do */
1553-
1554- is_fullscreen = fullscreen;
1555- if (fullscreen)
1556- {
1557- window_state_event.connect (on_window_state_change_event);
1558-
1559- if (is_wide_mode)
1560- {
1561- thumbnails_right.hide ();
1562- }
1563- else
1564- {
1565- thumbnails_bottom.hide ();
1566- }
1567- leave_fullscreen_button_box.no_show_all = false;
1568- leave_fullscreen_button_box.show_all ();
1569-
1570- this.fullscreen ();
1571- viewport_widget.motion_notify_event.connect (fullscreen_motion_notify_callback);
1572- set_fullscreen_timeout ();
1573- }
1574- else
1575- {
1576- if (is_wide_mode)
1577- {
1578- thumbnails_right.show_all ();
1579- }
1580- else
1581- {
1582- thumbnails_bottom.show_all ();
1583- }
1584- leave_fullscreen_button_box.hide ();
1585-
1586- /* Stop timer so buttons_area does not get hidden after returning from
1587- * fullscreen mode */
1588- clear_fullscreen_timeout ();
1589- /* Show the buttons area anyway - it might've been hidden in fullscreen mode */
1590- buttons_area.show ();
1591- viewport_widget.motion_notify_event.disconnect (fullscreen_motion_notify_callback);
1592- this.unfullscreen ();
1593-
1594- if (was_maximized)
1595- {
1596- this.maximize ();
1597- }
1598- else
1599- {
1600- this.unmaximize ();
1601- }
1602- }
1603- }
1604-
1605- /**
1606- * Enable or disable wide mode to the requested state.
1607- *
1608- * @param wide_mode whether to enable or disable wide mode
1609- */
1610- public void set_wide_mode (bool wide_mode)
1611- {
1612- is_wide_mode = wide_mode;
1613-
1614- /* keep the viewport to its current size while rearranging the ui,
1615- * so that thumbview moves from right to bottom and viceversa
1616- * while the rest of the window stays unchanged */
1617- Gtk.Allocation alloc;
1618- viewport_widget.get_allocation (out alloc);
1619- viewport_widget.set_size_request (alloc.width, alloc.height);
1620-
1621- if (is_wide_mode)
1622- {
1623- thumb_view.set_vertical (true);
1624- thumb_nav.set_vertical (true);
1625- if (thumbnails_bottom.get_child () != null)
1626- {
1627- thumbnails_bottom.remove (thumb_nav);
1628- }
1629- thumbnails_right.add (thumb_nav);
1630-
1631- if (!is_fullscreen)
1632- {
1633- thumbnails_right.show_all ();
1634- thumbnails_bottom.hide ();
1635- }
1636- }
1637- else
1638- {
1639- thumb_view.set_vertical (false);
1640- thumb_nav.set_vertical (false);
1641- if (thumbnails_right.get_child () != null)
1642- {
1643- thumbnails_right.remove (thumb_nav);
1644- }
1645- thumbnails_bottom.add (thumb_nav);
1646-
1647- if (!is_fullscreen)
1648- {
1649- thumbnails_bottom.show_all ();
1650- thumbnails_right.hide ();
1651- }
1652- }
1653-
1654- /* handy trick to keep the window to the desired size while not
1655- * requesting a fixed one. This way the window is resized to its
1656- * natural size (particularly with the constraints imposed by the
1657- * viewport, see above) but can still be shrinked down */
1658-
1659- Gtk.Requisition req;
1660- this.get_preferred_size(out req, out req);
1661- this.resize (req.width, req.height);
1662- viewport_widget.set_size_request (-1, -1);
1663- }
1664-
1665- /**
1666- * Make sure that the layout manager manages the entire stage.
1667- *
1668- * @param actor unused
1669- * @param box unused
1670- * @param flags unused
1671- */
1672- public void on_stage_resize (Clutter.Actor actor,
1673- Clutter.ActorBox box,
1674- Clutter.AllocationFlags flags)
1675- {
1676- this.viewport_layout.set_size (viewport.width, viewport.height);
1677- this.background_layer.set_size (viewport.width, viewport.height);
1678- this.timeout_layer.set_position (video_preview.width/3 + viewport.width/2,
1679- viewport.height-20);
1680- }
1681-
1682- /**
1683- * The method to call when the countdown is finished.
1684- */
1685- private void finish_countdown_callback ()
1686- {
1687- if (action_cancelled == false)
1688- {
1689- string file_name = fileutil.get_new_media_filename (this.current_mode);
1690-
1691- if (settings.get_boolean ("flash"))
1692- {
1693- this.flash.fire ();
1694- }
1695- CanberraGtk.play_for_widget (this.main_vbox, 0,
1696- Canberra.PROP_EVENT_ID, "camera-shutter",
1697- Canberra.PROP_MEDIA_ROLE, "event",
1698- Canberra.PROP_EVENT_DESCRIPTION, _("Shutter sound"),
1699- null);
1700- this.camera.take_photo (file_name);
1701- }
1702-
1703- if (current_mode == MediaMode.PHOTO)
1704- {
1705- enable_mode_change ();
1706- }
1707- }
1708-
1709- Countdown current_countdown;
1710- /**
1711- * Start to take a photo, starting a countdown if it is enabled.
1712- */
1713- public void take_photo ()
1714- {
1715- if (settings.get_boolean ("countdown"))
1716- {
1717- if (current_mode == MediaMode.PHOTO)
1718- {
1719- disable_mode_change ();
1720- }
1721-
1722- current_countdown = new Countdown (this.countdown_layer);
1723- current_countdown.start (finish_countdown_callback);
1724- }
1725- else
1726- {
1727- finish_countdown_callback ();
1728- }
1729- }
1730-
1731- private int burst_count;
1732- private uint burst_callback_id;
1733-
1734- /**
1735- * Take a photo during burst mode, and increment the burst count.
1736- *
1737- * @return true if there are more photos to be taken in the current burst,
1738- * false otherwise
1739- */
1740- private bool burst_take_photo ()
1741- {
1742- if (is_bursting && burst_count < settings.get_int ("burst-repeat"))
1743- {
1744- this.take_photo ();
1745- burst_count++;
1746- return true;
1747- }
1748- else
1749- {
1750- toggle_photo_bursting (false);
1751- return false;
1752- }
1753- }
1754-
1755- /**
1756- * Cancel the current activity if the escape key is pressed.
1757- *
1758- * @param event the key event, to check which key was pressed
1759- * @return false, to allow further processing of the event
1760- */
1761- private bool on_key_release (Gdk.EventKey event)
1762- {
1763- string key;
1764-
1765- key = Gdk.keyval_name (event.keyval);
1766- if (strcmp (key, "Escape") == 0)
1767- {
1768- if ((current_countdown != null && current_countdown.running) || is_bursting || is_recording)
1769- {
1770- action_cancelled = true;
1771- switch (current_mode)
1772- {
1773- case MediaMode.PHOTO:
1774- current_countdown.stop ();
1775- finish_countdown_callback ();
1776- break;
1777- case MediaMode.BURST:
1778- toggle_photo_bursting (false);
1779- break;
1780- case MediaMode.VIDEO:
1781- toggle_video_recording (false);
1782- break;
1783- }
1784- action_cancelled = false;
1785- }
1786- else if (is_effects_selector_active)
1787- {
1788- effects_toggle_button.set_active (false);
1789- }
1790- }
1791- return false;
1792- }
1793-
1794- /**
1795- * Toggle whether video recording is active.
1796- *
1797- * @param is_start whether to start video recording
1798- */
1799- public void toggle_video_recording (bool is_start)
1800- {
1801- if (is_start)
1802- {
1803- camera.start_video_recording (fileutil.get_new_media_filename (this.current_mode));
1804- /* Will be called every 1 second while
1805- * update_timeout_layer returns true.
1806- */
1807- Timeout.add_seconds (1, update_timeout_layer);
1808- take_action_button.tooltip_text = _("Stop recording");
1809- take_action_button_image.set_from_icon_name ("media-playback-stop-symbolic", Gtk.IconSize.BUTTON);
1810- this.is_recording = true;
1811- this.disable_mode_change ();
1812- }
1813- else
1814- {
1815- camera.stop_video_recording ();
1816- /* The timeout_layer always shows the "00:00:00"
1817- * string when not recording, in order to notify
1818- * the user about two things:
1819- * + The user is making use of the recording mode.
1820- * + The user is currently not recording.
1821- */
1822- timeout_layer.text = "00:00:00";
1823- take_action_button.tooltip_text = _("Record a video");
1824- take_action_button_image.set_from_icon_name ("camera-web-symbolic", Gtk.IconSize.BUTTON);
1825- this.is_recording = false;
1826- this.enable_mode_change ();
1827- }
1828- }
1829-
1830- /**
1831- * Update the timeout layer displayed timer.
1832- *
1833- * @return false, if the source, Timeout.add_seconds (used
1834- * in the toogle_video_recording method), should be removed.
1835- */
1836- private bool update_timeout_layer ()
1837- {
1838- if (is_recording) {
1839- timeout_layer.text = camera.get_recorded_time ();
1840- return true;
1841- }
1842- else
1843- return false;
1844- }
1845-
1846- /**
1847- * Toggle whether photo bursting is active.
1848- *
1849- * @param is_start whether to start capturing a photo burst
1850- */
1851- public void toggle_photo_bursting (bool is_start)
1852- {
1853- if (is_start)
1854- {
1855- is_bursting = true;
1856- this.disable_mode_change ();
1857- // FIXME: Set the effects action to be inactive.
1858- take_action_button.tooltip_text = _("Stop taking pictures");
1859- burst_take_photo ();
1860-
1861- /* Use the countdown duration if it is greater than the burst delay, plus
1862- * about 500 ms for taking the photo. */
1863- var burst_delay = settings.get_int ("burst-delay");
1864- var countdown_duration = 500 + settings.get_int ("countdown-duration") * 1000;
1865- if ((burst_delay - countdown_duration) < 1000 && settings.get_boolean ("countdown"))
1866- {
1867- burst_callback_id = GLib.Timeout.add (countdown_duration, burst_take_photo);
1868- }
1869- else
1870- {
1871- burst_callback_id = GLib.Timeout.add (burst_delay, burst_take_photo);
1872- }
1873- }
1874- else
1875- {
1876- if (current_countdown != null && current_countdown.running)
1877- current_countdown.stop ();
1878-
1879- is_bursting = false;
1880- this.enable_mode_change ();
1881- take_action_button.tooltip_text = _("Take multiple photos");
1882- burst_count = 0;
1883- fileutil.reset_burst ();
1884- GLib.Source.remove (burst_callback_id);
1885- }
1886- }
1887-
1888- /**
1889- * Take a photo or burst of photos, or record a video, based on the current
1890- * capture mode.
1891- */
1892- public void shoot ()
1893- {
1894- switch (current_mode)
1895- {
1896- case MediaMode.PHOTO:
1897- take_photo ();
1898- break;
1899- case MediaMode.VIDEO:
1900- toggle_video_recording (!is_recording);
1901- break;
1902- case MediaMode.BURST:
1903- toggle_photo_bursting (!is_bursting);
1904- break;
1905- default:
1906- assert_not_reached ();
1907- }
1908- }
1909-
1910- /**
1911- * Show an error.
1912- *
1913- * @param error the error to display, or null to hide the error layer
1914- */
1915- public void show_error (string? error)
1916- {
1917- if (error != null)
1918- {
1919- current_effects_grid.hide ();
1920- video_preview.hide ();
1921- error_layer.text = error;
1922- error_layer.show ();
1923- }
1924- else
1925- {
1926- error_layer.hide ();
1927-
1928- if (is_effects_selector_active)
1929- {
1930- current_effects_grid.show ();
1931- }
1932- else
1933- {
1934- video_preview.show ();
1935- }
1936- }
1937- }
1938-
1939- /**
1940- * Toggle the display of the effect selector.
1941- *
1942- * @param effects whether effects should be enabled
1943- */
1944- public void set_effects (bool effects)
1945- {
1946- toggle_effects_selector (effects);
1947- }
1948-
1949- /**
1950- * Change the selected effect, as a new one was selected.
1951- *
1952- * @param tap unused
1953- * @param source the actor (with associated effect) that was selected
1954- */
1955- public void on_selected_effect_change (Clutter.TapAction tap,
1956- Clutter.Actor source)
1957- {
1958- /* Disable the effects selector after selecting an effect. */
1959- effects_toggle_button.set_active (false);
1960-
1961- selected_effect = source.get_data ("effect");
1962- camera.set_effect (selected_effect);
1963- settings.set_string ("selected-effect", selected_effect.name);
1964- }
1965-
1966- /**
1967- * Navigate back one page of effects.
1968- */
1969- private void on_effects_previous ()
1970- {
1971- if (is_previous_effects_page ())
1972- {
1973- activate_effects_page ((int)current_effects_page - 1);
1974- }
1975- }
1976-
1977- /**
1978- * Navigate forward one page of effects.
1979- */
1980- private void on_effects_next ()
1981- {
1982- if (is_next_effects_page ())
1983- {
1984- activate_effects_page ((int)current_effects_page + 1);
1985- }
1986- }
1987-
1988- /**
1989- * Switch to the supplied page of effects.
1990- *
1991- * @param number the effects page to switch to
1992- */
1993- private void activate_effects_page (int number)
1994- {
1995- if (!is_effects_selector_active)
1996- return;
1997- current_effects_page = number;
1998- if (viewport_layout.get_children ().index (current_effects_grid) != -1)
1999- {
2000- viewport_layout.remove_child (current_effects_grid);
2001- }
2002- current_effects_grid = effects_grids.nth_data (number);
2003- current_effects_grid.opacity = 0;
2004- viewport_layout.add_child (current_effects_grid);
2005- current_effects_grid.save_easing_state ();
2006- current_effects_grid.set_easing_mode (Clutter.AnimationMode.LINEAR);
2007- current_effects_grid.set_easing_duration (500);
2008- current_effects_grid.opacity = 255;
2009- current_effects_grid.restore_easing_state ();
2010-
2011-
2012- uint i = 0;
2013- foreach (var effect in effects_manager.effects)
2014- {
2015- uint page_nr = i / EFFECTS_PER_PAGE;
2016- if (page_nr == number)
2017- {
2018- if (!effect.is_preview_connected ())
2019- {
2020- Clutter.Texture texture = effect.get_data<Clutter.Texture> ("texture");
2021- camera.connect_effect_texture (effect, texture);
2022- }
2023- effect.enable_preview ();
2024- }
2025- else
2026- {
2027- if (effect.is_preview_connected ())
2028- {
2029- effect.disable_preview ();
2030- }
2031- }
2032-
2033- i++;
2034- }
2035-
2036- setup_effects_page_switch_sensitivity ();
2037- }
2038-
2039- /**
2040- * Control the sensitivity of the effects page navigation buttons.
2041- */
2042- private void setup_effects_page_switch_sensitivity ()
2043- {
2044- var effects_next = this.lookup_action ("effects-next") as SimpleAction;
2045- var effects_previous = this.lookup_action ("effects-previous") as SimpleAction;
2046-
2047- effects_next.set_enabled (is_effects_selector_active
2048- && is_next_effects_page ());
2049- effects_previous.set_enabled (is_effects_selector_active
2050- && is_previous_effects_page ());
2051- }
2052-
2053- private bool is_next_effects_page ()
2054- {
2055- // Calculate the number of effects visible up to the current page.
2056- return (current_effects_page + 1) * EFFECTS_PER_PAGE < effects_manager.effects.length ();
2057- }
2058-
2059- private bool is_previous_effects_page ()
2060- {
2061- return current_effects_page != 0;
2062- }
2063-
2064- /**
2065- * Toggle the visibility of the effects selector.
2066- *
2067- * @param active whether the selector should be active
2068- */
2069- private void toggle_effects_selector (bool active)
2070- {
2071- is_effects_selector_active = active;
2072-
2073- if (effects_grids.length () == 0)
2074- {
2075- show_error (active ? _("No effects found") : null);
2076- }
2077- else if (active)
2078- {
2079- video_preview.hide ();
2080- current_effects_grid.show ();
2081- activate_effects_page ((int)current_effects_page);
2082- }
2083- else
2084- {
2085- current_effects_grid.hide ();
2086- video_preview.show ();
2087- }
2088-
2089- camera.toggle_effects_pipeline (active);
2090- setup_effects_page_switch_sensitivity ();
2091- update_header_bar_title ();
2092- }
2093-
2094- /**
2095- * Create the effects selector.
2096- */
2097- private void setup_effects_selector ()
2098- {
2099- if (current_effects_grid == null)
2100- {
2101- effects_manager = new EffectsManager ();
2102- effects_manager.load_effects ();
2103-
2104- /* Must initialize effects_grids before returning, as it is dereferenced later, bug 654671. */
2105- effects_grids = new List<Clutter.Actor> ();
2106-
2107- if (effects_manager.effects.length () == 0)
2108- {
2109- warning ("gnome-video-effects is not installed.");
2110- return;
2111- }
2112-
2113- foreach (var effect in effects_manager.effects)
2114- {
2115- Clutter.GridLayout grid_layout = new GridLayout ();
2116- var grid = new Clutter.Actor ();
2117- grid.set_layout_manager (grid_layout);
2118- effects_grids.append (grid);
2119- grid_layout.set_column_spacing (10);
2120- grid_layout.set_row_spacing (10);
2121- }
2122-
2123- uint i = 0;
2124- foreach (var effect in effects_manager.effects)
2125- {
2126- Clutter.Texture texture = new Clutter.Texture ();
2127- Clutter.BinLayout layout = new Clutter.BinLayout (Clutter.BinAlignment.CENTER,
2128- Clutter.BinAlignment.CENTER);
2129- var box = new Clutter.Actor ();
2130- box.set_layout_manager (layout);
2131- Clutter.Text text = new Clutter.Text ();
2132- var rect = new Clutter.Actor ();
2133-
2134- rect.opacity = 128;
2135- rect.background_color = Clutter.Color.from_string ("black");
2136-
2137- texture.keep_aspect_ratio = true;
2138- box.add_child (texture);
2139- box.reactive = true;
2140- var tap = new Clutter.TapAction ();
2141- box.add_action (tap);
2142- tap.tap.connect (on_selected_effect_change);
2143- box.set_data ("effect", effect);
2144- effect.set_data ("texture", texture);
2145-
2146- text.text = effect.name;
2147- text.color = Clutter.Color.from_string ("white");
2148-
2149- rect.height = text.height + 5;
2150- rect.x_align = Clutter.ActorAlign.FILL;
2151- rect.y_align = Clutter.ActorAlign.END;
2152- rect.x_expand = true;
2153- rect.y_expand = true;
2154- box.add_child (rect);
2155-
2156- text.x_align = Clutter.ActorAlign.CENTER;
2157- text.y_align = Clutter.ActorAlign.END;
2158- text.x_expand = true;
2159- text.y_expand = true;
2160- box.add_child (text);
2161-
2162- var grid_layout = effects_grids.nth_data (i / EFFECTS_PER_PAGE).layout_manager as GridLayout;
2163- grid_layout.attach (box, ((int)(i % EFFECTS_PER_PAGE)) % 3,
2164- ((int)(i % EFFECTS_PER_PAGE)) / 3, 1, 1);
2165-
2166- i++;
2167- }
2168-
2169- setup_effects_page_switch_sensitivity ();
2170- current_effects_grid = effects_grids.nth_data (0);
2171- }
2172- }
2173-
2174- /**
2175- * Update the UI when the camera starts playing.
2176- */
2177- public void camera_state_change_playing ()
2178- {
2179- show_error (null);
2180-
2181- Effect effect = effects_manager.get_effect (settings.get_string ("selected-effect"));
2182- if (effect != null)
2183- {
2184- camera.set_effect (effect);
2185- }
2186- }
2187-
2188- /**
2189- * Report an error as the camerabin switched to the NULL state.
2190- */
2191- public void camera_state_change_null ()
2192- {
2193- if (!error_layer.visible)
2194- {
2195- show_error (_("There was an error playing video from the webcam"));
2196- }
2197- }
2198-
2199- /**
2200- * Load the UI from the GtkBuilder description.
2201- */
2202- public void setup_ui ()
2203- {
2204- clutter_builder = new Clutter.Script ();
2205- fileutil = new FileUtil ();
2206- flash = new Flash (this);
2207- settings = new GLib.Settings ("org.gnome.Cheese");
2208-
2209- var menu = new GLib.Menu ();
2210- var section = new GLib.Menu ();
2211- menu.append_section (null, section);
2212- var item = new GLib.MenuItem (_("Open"), "win.file-open");
2213- item.set_attribute ("accel", "s", "<Primary>o");
2214- section.append_item (item);
2215- item = new GLib.MenuItem (_("Save _As…"), "win.file-saveas");
2216- item.set_attribute ("accel", "s", "<Primary>S");
2217- section.append_item (item);
2218- item = new GLib.MenuItem (_("Move to _Trash"), "win.file-trash");
2219- item.set_attribute ("accel", "s", "Delete");
2220- section.append_item (item);
2221- item = new GLib.MenuItem (_("Delete"), "win.file-delete");
2222- item.set_attribute ("accel", "s", "<Shift>Delete");
2223- section.append_item (item);
2224- thumbnail_popup = new Gtk.Menu.from_model (menu);
2225-
2226- this.add_action_entries (actions, this);
2227-
2228- try
2229- {
2230- clutter_builder.load_from_resource ("/org/gnome/Cheese/cheese-viewport.json");
2231- }
2232- catch (Error err)
2233- {
2234- error ("Error: %s", err.message);
2235- }
2236-
2237- viewport = viewport_widget.get_stage () as Clutter.Stage;
2238-
2239- video_preview = clutter_builder.get_object ("video_preview") as Clutter.Texture;
2240- viewport_layout = clutter_builder.get_object ("viewport_layout") as Clutter.Actor;
2241- viewport_layout_manager = clutter_builder.get_object ("viewport_layout_manager") as Clutter.BinLayout;
2242- countdown_layer = clutter_builder.get_object ("countdown_layer") as Clutter.Text;
2243- background_layer = clutter_builder.get_object ("background") as Clutter.Actor;
2244- error_layer = clutter_builder.get_object ("error_layer") as Clutter.Text;
2245- timeout_layer = clutter_builder.get_object ("timeout_layer") as Clutter.Text;
2246-
2247- video_preview.keep_aspect_ratio = true;
2248- video_preview.request_mode = Clutter.RequestMode.HEIGHT_FOR_WIDTH;
2249- viewport.add_child (background_layer);
2250- viewport_layout.set_layout_manager (viewport_layout_manager);
2251-
2252- viewport.add_child (viewport_layout);
2253- viewport.add_child (timeout_layer);
2254-
2255- viewport.allocation_changed.connect (on_stage_resize);
2256-
2257- thumb_view = new Cheese.ThumbView ();
2258- thumb_nav = new Eog.ThumbNav (thumb_view, false);
2259- thumbnail_popup.attach_to_widget (thumb_view, null);
2260-
2261- Gtk.CssProvider css;
2262- try
2263- {
2264- var file = File.new_for_uri ("resource:///org/gnome/Cheese/cheese.css");
2265- css = new Gtk.CssProvider ();
2266- css.load_from_file (file);
2267- }
2268- catch (Error e)
2269- {
2270- // TODO: Use parsing-error signal.
2271- error ("Error parsing CSS: %s\n", e.message);
2272- }
2273-
2274- Gtk.StyleContext.add_provider_for_screen (screen, css, STYLE_PROVIDER_PRIORITY_USER);
2275-
2276- thumb_view.button_press_event.connect (on_thumbnail_button_press_event);
2277-
2278- /* needed for the sizing tricks in set_wide_mode (allocation is 0
2279- * if the widget is not realized */
2280- viewport_widget.realize ();
2281-
2282- set_wide_mode (false);
2283-
2284- setup_effects_selector ();
2285-
2286- this.key_release_event.connect (on_key_release);
2287- }
2288-
2289- public Clutter.Texture get_video_preview ()
2290- {
2291- return video_preview;
2292- }
2293-
2294- /**
2295- * Setup the thumbview thumbnail monitors.
2296- */
2297- public void start_thumbview_monitors ()
2298- {
2299- thumb_view.start_monitoring_video_path (fileutil.get_video_path ());
2300- thumb_view.start_monitoring_photo_path (fileutil.get_photo_path ());
2301- }
2302-
2303- /**
2304- * Set the current media mode (photo, video or burst).
2305- *
2306- * @param mode the media mode to set
2307- */
2308- public void set_current_mode (MediaMode mode)
2309- {
2310- current_mode = mode;
2311-
2312- set_resolution (current_mode);
2313- update_header_bar_title ();
2314- timeout_layer.hide ();
2315-
2316- switch (current_mode)
2317- {
2318- case MediaMode.PHOTO:
2319- take_action_button.tooltip_text = _("Take a photo using a webcam");
2320- break;
2321-
2322- case MediaMode.VIDEO:
2323- take_action_button.tooltip_text = _("Record a video using a webcam");
2324- timeout_layer.text = "00:00:00";
2325- timeout_layer.show ();
2326- break;
2327-
2328- case MediaMode.BURST:
2329- take_action_button.tooltip_text = _("Take multiple photos using a webcam");
2330- break;
2331- }
2332- }
2333-
2334- /**
2335- * Set the header bar title.
2336- */
2337- private void update_header_bar_title ()
2338- {
2339- if (is_effects_selector_active)
2340- {
2341- header_bar.set_title (_("Choose an Effect"));
2342- }
2343- else
2344- {
2345- switch (current_mode)
2346- {
2347- case MediaMode.PHOTO:
2348- header_bar.set_title (_("Take a Photo"));
2349- break;
2350-
2351- case MediaMode.VIDEO:
2352- header_bar.set_title (_("Record a Video"));
2353- break;
2354-
2355- case MediaMode.BURST:
2356- header_bar.set_title (_("Take Multiple Photos"));
2357- break;
2358- }
2359- }
2360- }
2361- /**
2362- * Set the camera.
2363- *
2364- * @param camera the camera to set
2365- */
2366- public void set_camera (Camera camera)
2367- {
2368- this.camera = camera;
2369- }
2370-}
2371
2372=== added file '.pc/applied-patches'
2373--- .pc/applied-patches 1970-01-01 00:00:00 +0000
2374+++ .pc/applied-patches 2014-06-11 21:45:53 +0000
2375@@ -0,0 +1,1 @@
2376+use-plugins-good
2377
2378=== removed file '.pc/applied-patches'
2379--- .pc/applied-patches 2014-05-23 11:12:02 +0000
2380+++ .pc/applied-patches 1970-01-01 00:00:00 +0000
2381@@ -1,3 +0,0 @@
2382-use-plugins-good
2383-0001-Use-avatar-chooser-headerbar-only-when-requested.patch
2384-0002-Use-a-traditional-title-bar-when-requested.patch
2385
2386=== added directory '.pc/use-plugins-good'
2387=== removed directory '.pc/use-plugins-good'
2388=== added file '.pc/use-plugins-good/.timestamp'
2389=== added file '.pc/use-plugins-good/configure.ac'
2390--- .pc/use-plugins-good/configure.ac 1970-01-01 00:00:00 +0000
2391+++ .pc/use-plugins-good/configure.ac 2014-06-11 21:45:53 +0000
2392@@ -0,0 +1,226 @@
2393+# Process this file with autoconf to produce a configure script.
2394+AC_PREREQ([2.64])
2395+AC_INIT([Cheese],
2396+ [3.12.2],
2397+ [https://bugzilla.gnome.org/enter_bug.cgi?product=cheese],
2398+ [cheese],
2399+ [https://wiki.gnome.org/Apps/Cheese])
2400+
2401+AC_CONFIG_AUX_DIR([build-aux])
2402+AC_CONFIG_HEADERS([cheese-config.h])
2403+AC_CONFIG_SRCDIR([configure.ac])
2404+AC_CONFIG_MACRO_DIR([m4])
2405+
2406+AM_INIT_AUTOMAKE([1.11 -Wall -Wno-portability dist-xz no-define no-dist-gzip nostdinc subdir-objects])
2407+AM_MAINTAINER_MODE([enable])
2408+AM_SILENT_RULES([yes])
2409+
2410+# Check for programs
2411+AC_PROG_CC
2412+AM_PROG_CC_C_O
2413+AM_PROG_VALAC([0.23.3])
2414+
2415+# Initialize libtool
2416+LT_PREREQ([2.2])
2417+LT_INIT([disable-static])
2418+
2419+PKG_PROG_PKG_CONFIG([0.24])
2420+
2421+AC_SUBST([CHEESE_WFLAGS], ["-Wall -DGSEAL_ENABLE"])
2422+
2423+GNOME_MAINTAINER_MODE_DEFINES
2424+GNOME_COMPILE_WARNINGS([maximum])
2425+
2426+#*******************************************************************************
2427+# Libraries
2428+#*******************************************************************************
2429+# Before making a release, the CHEESE_LT_VERSION string should be modified.
2430+# The string is of the form C:R:A.
2431+# - If interfaces have been changed or added, but binary compatibility has
2432+# been preserved, change to C+1:0:A+1
2433+# - If binary compatibility has been broken (eg removed or changed interfaces)
2434+# change to C+1:0:0
2435+# - If the interface is the same as the previous version, change to C:R+1:A
2436+AC_SUBST([LIBCHEESE_LT_VERSION], [7:25:0])
2437+AC_SUBST([LIBCHEESE_GTK_LT_VERSION], [24:9:1])
2438+
2439+#*******************************************************************************
2440+# Internationalization
2441+#*******************************************************************************
2442+AC_SUBST([GETTEXT_PACKAGE], [$PACKAGE_TARNAME])
2443+AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], ["$GETTEXT_PACKAGE"], [GETTEXT package name])
2444+IT_PROG_INTLTOOL([0.50.0])
2445+
2446+#*******************************************************************************
2447+# Check required libraries
2448+#*******************************************************************************
2449+
2450+
2451+GLIB_REQUIRED="glib-2.0 >= 2.39.90"
2452+GTK_REQUIRED="gtk+-3.0 >= 3.10.0"
2453+GDK_PIXBUF_REQUIRED="gdk-pixbuf-2.0"
2454+LIBGNOMEDESKTOP_REQUIRED="gnome-desktop-3.0 >= 2.91.6"
2455+GSTREAMER_VERSION=0.11.0
2456+GSTREAMER_REQUIRED="gstreamer-plugins-base-1.0 >= $GSTREAMER_VERSION gstreamer-1.0 >= $GSTREAMER_VERSION gstreamer-pbutils-1.0 >= $GSTREAMER_VERSION"
2457+GSTREAMER_PLUGINS_BAD_VERSION=0.11.0
2458+GSTREAMER_PLUGINS_BAD_REQUIRED="gstreamer-plugins-bad-1.0 >= $GSTREAMER_PLUGINS_BAD_VERSION"
2459+CAIRO_REQUIRED="cairo >= 1.10.0"
2460+PANGOCAIRO_REQUIRED="pangocairo >= 1.28.0"
2461+LIBRSVG_REQUIRED="librsvg-2.0 >= 2.32.0"
2462+CLUTTER_REQUIRED="clutter-1.0 >= 1.13.2"
2463+CLUTTERGTK_REQUIRED="clutter-gtk-1.0 >= 0.91.8"
2464+CLUTTERGST_REQUIRED="clutter-gst-2.0 >= 1.9.0"
2465+LIBCANBERRA_REQUIRED="libcanberra-gtk3 >= 0.26"
2466+X11_REQUIRED="x11"
2467+GNOME_VIDEO_EFFECTS_REQUIRED="gnome-video-effects"
2468+
2469+# Libtool requires this, but it is only expanded once anyway.
2470+AC_CANONICAL_HOST
2471+
2472+AC_MSG_CHECKING([host operating system])
2473+AS_CASE([$host_os],
2474+ [*linux-*], [AC_MSG_RESULT([Linux])
2475+ UDEV_REQUIRED="gudev-1.0"],
2476+ [AC_MSG_RESULT([unsupported operating system])])
2477+
2478+AC_MSG_CHECKING([for gudev-1.0])
2479+AS_IF([test -n "$UDEV_REQUIRED"],
2480+ [PKG_CHECK_EXISTS([$UDEV_REQUIRED],
2481+ [AC_MSG_RESULT([found])
2482+ AC_DEFINE([HAVE_UDEV], [], [Enable gudev support])],
2483+ [AC_MSG_ERROR([$UDEV_REQUIRED not found])])],
2484+ [AC_MSG_RESULT([not needed])])
2485+
2486+AC_CHECK_HEADERS([sys/videoio.h])
2487+
2488+AC_CHECK_HEADER([X11/extensions/XTest.h],
2489+ [AC_CHECK_LIB([Xtst], [XTestFakeKeyEvent],
2490+ [AC_SUBST([XTEST_LIBS], ["-lX11 -lXtst"])])])
2491+AM_CONDITIONAL([HAVE_XTEST], test "x$ac_cv_lib_Xtst_XTestFakeKeyEvent" = "xyes")
2492+
2493+PKG_CHECK_MODULES([CHEESE],
2494+ [$GLIB_REQUIRED
2495+ $X11_REQUIRED
2496+ $GDK_PIXBUF_REQUIRED
2497+ $GSTREAMER_REQUIRED
2498+ $GSTREAMER_PLUGINS_BAD_REQUIRED
2499+ $LIBGNOMEDESKTOP_REQUIRED
2500+ $CAIRO_REQUIRED
2501+ $PANGOCAIRO_REQUIRED
2502+ $CLUTTER_REQUIRED
2503+ $CLUTTERGST_REQUIRED
2504+ $UDEV_REQUIRED])
2505+
2506+PKG_CHECK_MODULES([CHEESE_GTK],
2507+ [$GTK_REQUIRED
2508+ $LIBRSVG_REQUIRED
2509+ $CLUTTERGTK_REQUIRED
2510+ $LIBCANBERRA_REQUIRED
2511+ $UDEV_REQUIRED
2512+ $GNOME_VIDEO_EFFECTS_REQUIRED])
2513+
2514+# Resources.
2515+AC_SUBST([GLIB_COMPILE_RESOURCES], [`$PKG_CONFIG --variable glib_compile_resources gio-2.0`])
2516+
2517+# Recommend some runtime GStreamer plugins.
2518+AC_PATH_PROGS([GST_INSPECT], [gst-inspect-1.0], [notfound])
2519+AS_IF([test "x$GST_INSPECT" = "xnotfound"],
2520+ [AC_MSG_WARN([unable to check for runtime GStreamer plugin dependencies])],
2521+ [GST_RUNTIME_PLUGINS="camerabin vp8enc webmmux"
2522+ for gst_runtime_plugin in $GST_RUNTIME_PLUGINS
2523+ do
2524+ AC_MSG_CHECKING([for $gst_runtime_plugin GStreamer plugin])
2525+ AS_IF([$GST_INSPECT $gst_runtime_plugin >&AS_MESSAGE_LOG_FD],
2526+ [AC_MSG_RESULT([found])],
2527+ [AC_MSG_RESULT([not found])
2528+ AC_MSG_WARN([$gst_runtime_plugin was not found. It needs to be installed before Cheese is run])])
2529+ done])
2530+
2531+# Check for GLib testing utilities.
2532+AC_PATH_PROG([GTESTER], [gtester], [notfound])
2533+AC_PATH_PROG([GTESTER_REPORT], [gtester-report], [notfound])
2534+AS_IF([test "x$GTESTER" = "xnotfound" -o "x$GTESTER_REPORT" = "xnotfound"],
2535+ [AC_MSG_WARN([testing disabled as the required utilities were not found])],
2536+ [CHEESE_ENABLE_TESTS=true
2537+ AC_SUBST([GTESTER])
2538+ AC_SUBST([GTESTER_REPORT])])
2539+AM_CONDITIONAL([CHEESE_ENABLE_TESTS], [test "x$CHEESE_ENABLE_TESTS" = "xtrue"])
2540+
2541+# Check for lcov.
2542+AC_ARG_ENABLE([lcov],
2543+ [AS_HELP_STRING([--disable-lcov], [Disable lcov code coverage testing])])
2544+
2545+AS_IF([test "x$enable_lcov" != "xno"],
2546+ [AC_PATH_PROG([LCOV], [lcov], [notfound])
2547+ AC_PATH_PROG([LCOV_GENHTML], [genhtml], [notfound])
2548+ AS_IF([test "x$LCOV" = "xnotfound" -o "x$LCOV_GENHTML" = "xnotfound"],
2549+ [have_lcov=no],
2550+ [have_lcov=yes])],
2551+ [have_lcov=no])
2552+
2553+AS_IF([test "x$have_lcov" = "xyes"],
2554+ [AC_SUBST([LCOV])
2555+ AC_SUBST([LCOV_GENHTML])
2556+ CFLAGS="$CFLAGS -O0 -fprofile-arcs -ftest-coverage"
2557+ LDFLAGS="$LDFLAGS -lgcov"],
2558+ [AS_IF([test "x$enable_lcov" = "xyes"],
2559+ [AC_MSG_ERROR([lcov code coverage reporting requested but not found])])])
2560+
2561+AM_CONDITIONAL([CHEESE_ENABLE_LCOV], [test "x$have_lcov" = "xyes"])
2562+
2563+AC_MSG_CHECKING([for glib-mkenums script])
2564+GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
2565+AS_IF([test "x$GLIB_MKENUMS" = "x"],
2566+ [AC_MSG_ERROR([glib-mkenums not listed in glib-2.0 pkg-config file])],
2567+ [AC_SUBST([GLIB_MKENUMS])
2568+ AC_MSG_RESULT([$GLIB_MKENUMS])])
2569+
2570+GOBJECT_INTROSPECTION_CHECK([0.6.7])
2571+
2572+# API documentation
2573+GTK_DOC_CHECK([1.14], [--flavour no-tmpl])
2574+
2575+# Manpage, generated with gtk-doc and xsltproc from DocBook XML.
2576+AC_ARG_ENABLE([man],
2577+ [AS_HELP_STRING([--disable-man], [Disable building the man page])])
2578+
2579+AS_IF([test "x$enable_man" != "xno"],
2580+ [AC_CHECK_PROG([have_xsltproc], [xsltproc], [yes], [no])
2581+ JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.3//EN],
2582+ [DocBook XML DTD V4.3], [have_docbookdtd=yes], [have_docbookdtd=no])
2583+ JH_CHECK_XML_CATALOG(
2584+ [http://docbook.sourceforge.net/release/xsl/current/html/refentry.xsl],
2585+ [DocBook XSL Stylesheets], [have_docbookxsl=yes], [have_docbookxsl=no])
2586+ AS_IF([test "x$have_xsltproc" = "xyes" -a "x$have_docbookdtd" = "xyes" \
2587+ -a "x$have_docbookxsl" = "xyes"],
2588+ [have_manutils=yes],
2589+ [AS_IF([test "x$enable_man" = "xyes"],
2590+ [AC_MSG_ERROR(
2591+ [manpage generation requested but required utilities were not found])])
2592+ have_manutils=no])],
2593+ [have_manutils=no])
2594+
2595+AM_CONDITIONAL([ENABLE_MAN], [test "x$have_manutils" = "xyes"])
2596+
2597+# Mallard help
2598+YELP_HELP_INIT
2599+
2600+# AppData
2601+APPDATA_XML
2602+
2603+GLIB_GSETTINGS
2604+#*******************************************************************************
2605+
2606+AC_CONFIG_FILES([
2607+Makefile
2608+docs/reference/Makefile
2609+docs/reference/version.xml
2610+data/cheese.pc
2611+data/cheese-gtk.pc
2612+data/cheese.desktop.in
2613+help/Makefile
2614+po/Makefile.in
2615+])
2616+AC_OUTPUT
2617+
2618+#**************************************************************************
2619
2620=== removed file '.pc/use-plugins-good/configure.ac'
2621--- .pc/use-plugins-good/configure.ac 2014-05-23 11:12:02 +0000
2622+++ .pc/use-plugins-good/configure.ac 1970-01-01 00:00:00 +0000
2623@@ -1,226 +0,0 @@
2624-# Process this file with autoconf to produce a configure script.
2625-AC_PREREQ([2.64])
2626-AC_INIT([Cheese],
2627- [3.12.1],
2628- [https://bugzilla.gnome.org/enter_bug.cgi?product=cheese],
2629- [cheese],
2630- [https://wiki.gnome.org/Apps/Cheese])
2631-
2632-AC_CONFIG_AUX_DIR([build-aux])
2633-AC_CONFIG_HEADERS([cheese-config.h])
2634-AC_CONFIG_SRCDIR([configure.ac])
2635-AC_CONFIG_MACRO_DIR([m4])
2636-
2637-AM_INIT_AUTOMAKE([1.11 -Wall -Wno-portability dist-xz no-define no-dist-gzip nostdinc subdir-objects])
2638-AM_MAINTAINER_MODE([enable])
2639-AM_SILENT_RULES([yes])
2640-
2641-# Check for programs
2642-AC_PROG_CC
2643-AM_PROG_CC_C_O
2644-AM_PROG_VALAC([0.23.3])
2645-
2646-# Initialize libtool
2647-LT_PREREQ([2.2])
2648-LT_INIT([disable-static])
2649-
2650-PKG_PROG_PKG_CONFIG([0.24])
2651-
2652-AC_SUBST([CHEESE_WFLAGS], ["-Wall -DGSEAL_ENABLE"])
2653-
2654-GNOME_MAINTAINER_MODE_DEFINES
2655-GNOME_COMPILE_WARNINGS([maximum])
2656-
2657-#*******************************************************************************
2658-# Libraries
2659-#*******************************************************************************
2660-# Before making a release, the CHEESE_LT_VERSION string should be modified.
2661-# The string is of the form C:R:A.
2662-# - If interfaces have been changed or added, but binary compatibility has
2663-# been preserved, change to C+1:0:A+1
2664-# - If binary compatibility has been broken (eg removed or changed interfaces)
2665-# change to C+1:0:0
2666-# - If the interface is the same as the previous version, change to C:R+1:A
2667-AC_SUBST([LIBCHEESE_LT_VERSION], [7:24:0])
2668-AC_SUBST([LIBCHEESE_GTK_LT_VERSION], [24:8:1])
2669-
2670-#*******************************************************************************
2671-# Internationalization
2672-#*******************************************************************************
2673-AC_SUBST([GETTEXT_PACKAGE], [$PACKAGE_TARNAME])
2674-AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], ["$GETTEXT_PACKAGE"], [GETTEXT package name])
2675-IT_PROG_INTLTOOL([0.50.0])
2676-
2677-#*******************************************************************************
2678-# Check required libraries
2679-#*******************************************************************************
2680-
2681-
2682-GLIB_REQUIRED="glib-2.0 >= 2.39.90"
2683-GTK_REQUIRED="gtk+-3.0 >= 3.10.0"
2684-GDK_PIXBUF_REQUIRED="gdk-pixbuf-2.0"
2685-LIBGNOMEDESKTOP_REQUIRED="gnome-desktop-3.0 >= 2.91.6"
2686-GSTREAMER_VERSION=0.11.0
2687-GSTREAMER_REQUIRED="gstreamer-plugins-base-1.0 >= $GSTREAMER_VERSION gstreamer-1.0 >= $GSTREAMER_VERSION gstreamer-pbutils-1.0 >= $GSTREAMER_VERSION"
2688-GSTREAMER_PLUGINS_BAD_VERSION=0.11.0
2689-GSTREAMER_PLUGINS_BAD_REQUIRED="gstreamer-plugins-bad-1.0 >= $GSTREAMER_PLUGINS_BAD_VERSION"
2690-CAIRO_REQUIRED="cairo >= 1.10.0"
2691-PANGOCAIRO_REQUIRED="pangocairo >= 1.28.0"
2692-LIBRSVG_REQUIRED="librsvg-2.0 >= 2.32.0"
2693-CLUTTER_REQUIRED="clutter-1.0 >= 1.13.2"
2694-CLUTTERGTK_REQUIRED="clutter-gtk-1.0 >= 0.91.8"
2695-CLUTTERGST_REQUIRED="clutter-gst-2.0 >= 1.9.0"
2696-LIBCANBERRA_REQUIRED="libcanberra-gtk3 >= 0.26"
2697-X11_REQUIRED="x11"
2698-GNOME_VIDEO_EFFECTS_REQUIRED="gnome-video-effects"
2699-
2700-# Libtool requires this, but it is only expanded once anyway.
2701-AC_CANONICAL_HOST
2702-
2703-AC_MSG_CHECKING([host operating system])
2704-AS_CASE([$host_os],
2705- [*linux-*], [AC_MSG_RESULT([Linux])
2706- UDEV_REQUIRED="gudev-1.0"],
2707- [AC_MSG_RESULT([unsupported operating system])])
2708-
2709-AC_MSG_CHECKING([for gudev-1.0])
2710-AS_IF([test -n "$UDEV_REQUIRED"],
2711- [PKG_CHECK_EXISTS([$UDEV_REQUIRED],
2712- [AC_MSG_RESULT([found])
2713- AC_DEFINE([HAVE_UDEV], [], [Enable gudev support])],
2714- [AC_MSG_ERROR([$UDEV_REQUIRED not found])])],
2715- [AC_MSG_RESULT([not needed])])
2716-
2717-AC_CHECK_HEADERS([sys/videoio.h])
2718-
2719-AC_CHECK_HEADER([X11/extensions/XTest.h],
2720- [AC_CHECK_LIB([Xtst], [XTestFakeKeyEvent],
2721- [AC_SUBST([XTEST_LIBS], ["-lX11 -lXtst"])])])
2722-AM_CONDITIONAL([HAVE_XTEST], test "x$ac_cv_lib_Xtst_XTestFakeKeyEvent" = "xyes")
2723-
2724-PKG_CHECK_MODULES([CHEESE],
2725- [$GLIB_REQUIRED
2726- $X11_REQUIRED
2727- $GDK_PIXBUF_REQUIRED
2728- $GSTREAMER_REQUIRED
2729- $GSTREAMER_PLUGINS_BAD_REQUIRED
2730- $LIBGNOMEDESKTOP_REQUIRED
2731- $CAIRO_REQUIRED
2732- $PANGOCAIRO_REQUIRED
2733- $CLUTTER_REQUIRED
2734- $CLUTTERGST_REQUIRED
2735- $UDEV_REQUIRED])
2736-
2737-PKG_CHECK_MODULES([CHEESE_GTK],
2738- [$GTK_REQUIRED
2739- $LIBRSVG_REQUIRED
2740- $CLUTTERGTK_REQUIRED
2741- $LIBCANBERRA_REQUIRED
2742- $UDEV_REQUIRED
2743- $GNOME_VIDEO_EFFECTS_REQUIRED])
2744-
2745-# Resources.
2746-AC_SUBST([GLIB_COMPILE_RESOURCES], [`$PKG_CONFIG --variable glib_compile_resources gio-2.0`])
2747-
2748-# Recommend some runtime GStreamer plugins.
2749-AC_PATH_PROGS([GST_INSPECT], [gst-inspect-1.0], [notfound])
2750-AS_IF([test "x$GST_INSPECT" = "xnotfound"],
2751- [AC_MSG_WARN([unable to check for runtime GStreamer plugin dependencies])],
2752- [GST_RUNTIME_PLUGINS="camerabin vp8enc webmmux"
2753- for gst_runtime_plugin in $GST_RUNTIME_PLUGINS
2754- do
2755- AC_MSG_CHECKING([for $gst_runtime_plugin GStreamer plugin])
2756- AS_IF([$GST_INSPECT $gst_runtime_plugin >&AS_MESSAGE_LOG_FD],
2757- [AC_MSG_RESULT([found])],
2758- [AC_MSG_RESULT([not found])
2759- AC_MSG_WARN([$gst_runtime_plugin was not found. It needs to be installed before Cheese is run])])
2760- done])
2761-
2762-# Check for GLib testing utilities.
2763-AC_PATH_PROG([GTESTER], [gtester], [notfound])
2764-AC_PATH_PROG([GTESTER_REPORT], [gtester-report], [notfound])
2765-AS_IF([test "x$GTESTER" = "xnotfound" -o "x$GTESTER_REPORT" = "xnotfound"],
2766- [AC_MSG_WARN([testing disabled as the required utilities were not found])],
2767- [CHEESE_ENABLE_TESTS=true
2768- AC_SUBST([GTESTER])
2769- AC_SUBST([GTESTER_REPORT])])
2770-AM_CONDITIONAL([CHEESE_ENABLE_TESTS], [test "x$CHEESE_ENABLE_TESTS" = "xtrue"])
2771-
2772-# Check for lcov.
2773-AC_ARG_ENABLE([lcov],
2774- [AS_HELP_STRING([--disable-lcov], [Disable lcov code coverage testing])])
2775-
2776-AS_IF([test "x$enable_lcov" != "xno"],
2777- [AC_PATH_PROG([LCOV], [lcov], [notfound])
2778- AC_PATH_PROG([LCOV_GENHTML], [genhtml], [notfound])
2779- AS_IF([test "x$LCOV" = "xnotfound" -o "x$LCOV_GENHTML" = "xnotfound"],
2780- [have_lcov=no],
2781- [have_lcov=yes])],
2782- [have_lcov=no])
2783-
2784-AS_IF([test "x$have_lcov" = "xyes"],
2785- [AC_SUBST([LCOV])
2786- AC_SUBST([LCOV_GENHTML])
2787- CFLAGS="$CFLAGS -O0 -fprofile-arcs -ftest-coverage"
2788- LDFLAGS="$LDFLAGS -lgcov"],
2789- [AS_IF([test "x$enable_lcov" = "xyes"],
2790- [AC_MSG_ERROR([lcov code coverage reporting requested but not found])])])
2791-
2792-AM_CONDITIONAL([CHEESE_ENABLE_LCOV], [test "x$have_lcov" = "xyes"])
2793-
2794-AC_MSG_CHECKING([for glib-mkenums script])
2795-GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
2796-AS_IF([test "x$GLIB_MKENUMS" = "x"],
2797- [AC_MSG_ERROR([glib-mkenums not listed in glib-2.0 pkg-config file])],
2798- [AC_SUBST([GLIB_MKENUMS])
2799- AC_MSG_RESULT([$GLIB_MKENUMS])])
2800-
2801-GOBJECT_INTROSPECTION_CHECK([0.6.7])
2802-
2803-# API documentation
2804-GTK_DOC_CHECK([1.14], [--flavour no-tmpl])
2805-
2806-# Manpage, generated with gtk-doc and xsltproc from DocBook XML.
2807-AC_ARG_ENABLE([man],
2808- [AS_HELP_STRING([--disable-man], [Disable building the man page])])
2809-
2810-AS_IF([test "x$enable_man" != "xno"],
2811- [AC_CHECK_PROG([have_xsltproc], [xsltproc], [yes], [no])
2812- JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.3//EN],
2813- [DocBook XML DTD V4.3], [have_docbookdtd=yes], [have_docbookdtd=no])
2814- JH_CHECK_XML_CATALOG(
2815- [http://docbook.sourceforge.net/release/xsl/current/html/refentry.xsl],
2816- [DocBook XSL Stylesheets], [have_docbookxsl=yes], [have_docbookxsl=no])
2817- AS_IF([test "x$have_xsltproc" = "xyes" -a "x$have_docbookdtd" = "xyes" \
2818- -a "x$have_docbookxsl" = "xyes"],
2819- [have_manutils=yes],
2820- [AS_IF([test "x$enable_man" = "xyes"],
2821- [AC_MSG_ERROR(
2822- [manpage generation requested but required utilities were not found])])
2823- have_manutils=no])],
2824- [have_manutils=no])
2825-
2826-AM_CONDITIONAL([ENABLE_MAN], [test "x$have_manutils" = "xyes"])
2827-
2828-# Mallard help
2829-YELP_HELP_INIT
2830-
2831-# AppData
2832-APPDATA_XML
2833-
2834-GLIB_GSETTINGS
2835-#*******************************************************************************
2836-
2837-AC_CONFIG_FILES([
2838-Makefile
2839-docs/reference/Makefile
2840-docs/reference/version.xml
2841-data/cheese.pc
2842-data/cheese-gtk.pc
2843-data/cheese.desktop.in
2844-help/Makefile
2845-po/Makefile.in
2846-])
2847-AC_OUTPUT
2848-
2849-#**************************************************************************
2850
2851=== modified file 'ChangeLog'
2852--- ChangeLog 2014-05-23 11:12:02 +0000
2853+++ ChangeLog 2014-06-11 21:45:53 +0000
2854@@ -1,6 +1,96 @@
2855+commit fdb02a66fc5b131f0d5027d385e3d1bb9146e130
2856+Author: David King <amigadave@amigadave.com>
2857+Date: Mon May 12 21:05:24 2014 +0100
2858+
2859+ Update NEWS for 3.12.2 release
2860+
2861+M NEWS
2862+M configure.ac
2863+
2864+commit 682bf36c36feebabd4c8452b9731d42cf7930604
2865+Author: Carles Ferrando <carles.ferrando@gmail.com>
2866+Date: Fri May 9 01:05:41 2014 +0200
2867+
2868+ [l10n] Updated Catalan (Valencian) translation
2869+
2870+M po/ca@valencia.po
2871+
2872+commit 18c69f54cb1ba23d685193117e6437f6d0a4c30e
2873+Author: Piotr Drąg <piotrdrag@gmail.com>
2874+Date: Thu Apr 24 18:03:16 2014 +0200
2875+
2876+ Updated POTFILES.in
2877+
2878+M po/POTFILES.in
2879+
2880+commit 47fa1cea586a34395dd82f13bfb1a197beff11f5
2881+Author: Iain Lane <iain.lane@canonical.com>
2882+Date: Thu Apr 24 11:49:26 2014 +0100
2883+
2884+ Use a traditional title bar when requested
2885+
2886+ Not all environments desire header bars. We use the
2887+ 'gtk-shell-shows-menubar' setting to decide whether to use the header
2888+ bar.
2889+
2890+ https://bugzilla.gnome.org/show_bug.cgi?id=728866
2891+
2892+M Makefile.am
2893+M data/cheese-main-window.ui
2894+M data/cheese.gresource.xml
2895+A data/headerbar.ui
2896+M src/cheese-window.vala
2897+
2898+commit 23e8df7c35edfaee6363d66ab57de457b2f57e1e
2899+Author: Iain Lane <iain.lane@canonical.com>
2900+Date: Thu Apr 24 12:14:04 2014 +0100
2901+
2902+ Use avatar chooser headerbar only when requested
2903+
2904+ Use headerbar in the avatar chooser dialog only when necessary
2905+ according
2906+ to the "gtk-shell-shows-menubar" setting.
2907+
2908+ https://bugzilla.gnome.org/show_bug.cgi?id=728866
2909+
2910+M libcheese/cheese-avatar-chooser.c
2911+
2912+commit bf662f0750ab9ede4e4b862b143c1817cb9a934d
2913+Author: Tom Tryfonidis <tomtryf@gmail.com>
2914+Date: Wed Apr 23 14:14:37 2014 +0300
2915+
2916+ Updated Greek translations - UI and doc
2917+
2918+M help/el/el.po
2919+M po/el.po
2920+
2921+commit e13d545a452e290d6e230d41fa9dfcca626a1e14
2922+Author: Dirgita <dirgitadevina@gmail.com>
2923+Date: Wed Apr 23 09:34:46 2014 +0000
2924+
2925+ Updated Indonesian translation
2926+
2927+M po/id.po
2928+
2929+commit 8938a8c4d06a4c26146340206a50cb5483bca171
2930+Author: Reinout van Schouwen <reinouts@gnome.org>
2931+Date: Sun Apr 20 23:31:53 2014 +0200
2932+
2933+ Updated Dutch translation by Erwin Poeze
2934+
2935+M po/nl.po
2936+
2937+commit 7844ed8fb44143f66945541aad78eba896f3857c
2938+Author: RafaelFonseca <rafaelfonseca1005@gmail.com>
2939+Date: Tue Apr 15 02:54:47 2014 +0000
2940+
2941+ Updated Brazilian Portuguese translation
2942+
2943+M help/pt_BR/pt_BR.po
2944+
2945 commit bbe4cc0ba95fd0a22ae0010672fd7fdb3956f746
2946 Author: David King <amigadave@amigadave.com>
2947-Date: Mon Apr 14 20:22:14 2014 +0100
2948+Date: Mon Apr 14 20:22:14 2014 +0100
2949
2950 Update NEWS for 3.12.1 release
2951
2952
2953=== modified file 'INSTALL'
2954--- INSTALL 2013-12-15 04:02:52 +0000
2955+++ INSTALL 2014-06-11 21:45:53 +0000
2956@@ -12,8 +12,8 @@
2957 Basic Installation
2958 ==================
2959
2960- Briefly, the shell commands `./configure; make; make install' should
2961-configure, build, and install this package. The following
2962+ Briefly, the shell command `./configure && make && make install'
2963+should configure, build, and install this package. The following
2964 more-detailed instructions are generic; see the `README' file for
2965 instructions specific to this package. Some packages provide this
2966 `INSTALL' file but do not implement all of the features documented
2967
2968=== modified file 'Makefile.in'
2969--- Makefile.in 2014-05-02 17:49:55 +0000
2970+++ Makefile.in 2014-06-11 21:45:53 +0000
2971@@ -1,4 +1,4 @@
2972-# Makefile.in generated by automake 1.13.4 from Makefile.am.
2973+# Makefile.in generated by automake 1.14.1 from Makefile.am.
2974 # @configure_input@
2975
2976 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
2977@@ -536,6 +536,7 @@
2978 VALAC = @VALAC@
2979 VERSION = @VERSION@
2980 WARN_CFLAGS = @WARN_CFLAGS@
2981+WARN_CXXFLAGS = @WARN_CXXFLAGS@
2982 XGETTEXT = @XGETTEXT@
2983 XMLCATALOG = @XMLCATALOG@
2984 XMLLINT = @XMLLINT@
2985@@ -767,6 +768,7 @@
2986 data/cheese-appmenu.ui \
2987 data/cheese-main-window.ui \
2988 data/cheese-prefs.ui \
2989+ data/headerbar.ui \
2990 data/pixmaps/cheese-1.svg \
2991 data/pixmaps/cheese-2.svg \
2992 data/pixmaps/cheese-3.svg \
2993@@ -1027,8 +1029,8 @@
2994 $(am__aclocal_m4_deps):
2995
2996 cheese-config.h: stamp-h1
2997- @if test ! -f $@; then rm -f stamp-h1; else :; fi
2998- @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
2999+ @test -f $@ || rm -f stamp-h1
3000+ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
3001
3002 stamp-h1: $(srcdir)/cheese-config.h.in $(top_builddir)/config.status
3003 @rm -f stamp-h1
3004@@ -2203,10 +2205,16 @@
3005 $(am__post_remove_distdir)
3006
3007 dist-tarZ: distdir
3008+ @echo WARNING: "Support for shar distribution archives is" \
3009+ "deprecated." >&2
3010+ @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
3011 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
3012 $(am__post_remove_distdir)
3013
3014 dist-shar: distdir
3015+ @echo WARNING: "Support for distribution archives compressed with" \
3016+ "legacy program 'compress' is deprecated." >&2
3017+ @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
3018 shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
3019 $(am__post_remove_distdir)
3020
3021@@ -2248,9 +2256,10 @@
3022 && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
3023 && am__cwd=`pwd` \
3024 && $(am__cd) $(distdir)/_build \
3025- && ../configure --srcdir=.. --prefix="$$dc_install_base" \
3026+ && ../configure \
3027 $(AM_DISTCHECK_CONFIGURE_FLAGS) \
3028 $(DISTCHECK_CONFIGURE_FLAGS) \
3029+ --srcdir=.. --prefix="$$dc_install_base" \
3030 && $(MAKE) $(AM_MAKEFLAGS) \
3031 && $(MAKE) $(AM_MAKEFLAGS) dvi \
3032 && $(MAKE) $(AM_MAKEFLAGS) check \
3033
3034=== modified file 'NEWS'
3035--- NEWS 2014-05-23 11:12:02 +0000
3036+++ NEWS 2014-06-11 21:45:53 +0000
3037@@ -1,6 +1,27 @@
3038 ChangeLog for Cheese
3039 --------------------
3040
3041+version 3.12.2
3042+ - Use a traditional title bar when requested
3043+ Not all environments desire header bars. We use the
3044+ 'gtk-dialogs-use-header' setting to decide whether to use the header
3045+ bar.
3046+
3047+ https://bugzilla.gnome.org/show_bug.cgi?id=728866
3048+ - Use avatar chooser headerbar only when requested
3049+ Use headerbar in the avatar chooser dialog only when necessary according
3050+ to the "gtk-dialogs-use-header" setting.
3051+
3052+ https://bugzilla.gnome.org/show_bug.cgi?id=728866
3053+ - Added/Updated Translations
3054+ - ca@valencia, courtesy of Pau Iranzo
3055+ - el, courtesy of Tom Tryfonidis
3056+ - id, courtesy of Dirgita
3057+ - nl, courtesy of Erwin Poeze
3058+ - Added/Updated Documentation
3059+ - el, courtesy of Tom Tryfonidis
3060+ - pt_BR, courtesy of Rafael Fonseca
3061+
3062 version 3.12.1
3063 - Fix Brazilian Portuguese help translation
3064 - Fix untranslated strings in libcheese
3065
3066=== modified file 'aclocal.m4'
3067--- aclocal.m4 2014-05-02 17:49:55 +0000
3068+++ aclocal.m4 2014-06-11 21:45:53 +0000
3069@@ -1,4 +1,4 @@
3070-# generated automatically by aclocal 1.13.4 -*- Autoconf -*-
3071+# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
3072
3073 # Copyright (C) 1996-2013 Free Software Foundation, Inc.
3074
3075@@ -32,10 +32,10 @@
3076 # generated from the m4 files accompanying Automake X.Y.
3077 # (This private macro should not be called outside this file.)
3078 AC_DEFUN([AM_AUTOMAKE_VERSION],
3079-[am__api_version='1.13'
3080+[am__api_version='1.14'
3081 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
3082 dnl require some minimum version. Point them to the right macro.
3083-m4_if([$1], [1.13.4], [],
3084+m4_if([$1], [1.14.1], [],
3085 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
3086 ])
3087
3088@@ -51,7 +51,7 @@
3089 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
3090 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
3091 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
3092-[AM_AUTOMAKE_VERSION([1.13.4])dnl
3093+[AM_AUTOMAKE_VERSION([1.14.1])dnl
3094 m4_ifndef([AC_AUTOCONF_VERSION],
3095 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
3096 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
3097@@ -418,6 +418,12 @@
3098 # This macro actually does too much. Some checks are only needed if
3099 # your package does certain things. But this isn't really a big deal.
3100
3101+dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
3102+m4_define([AC_PROG_CC],
3103+m4_defn([AC_PROG_CC])
3104+[_AM_PROG_CC_C_O
3105+])
3106+
3107 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
3108 # AM_INIT_AUTOMAKE([OPTIONS])
3109 # -----------------------------------------------
3110@@ -526,7 +532,48 @@
3111 AC_CONFIG_COMMANDS_PRE(dnl
3112 [m4_provide_if([_AM_COMPILER_EXEEXT],
3113 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
3114-])
3115+
3116+# POSIX will say in a future version that running "rm -f" with no argument
3117+# is OK; and we want to be able to make that assumption in our Makefile
3118+# recipes. So use an aggressive probe to check that the usage we want is
3119+# actually supported "in the wild" to an acceptable degree.
3120+# See automake bug#10828.
3121+# To make any issue more visible, cause the running configure to be aborted
3122+# by default if the 'rm' program in use doesn't match our expectations; the
3123+# user can still override this though.
3124+if rm -f && rm -fr && rm -rf; then : OK; else
3125+ cat >&2 <<'END'
3126+Oops!
3127+
3128+Your 'rm' program seems unable to run without file operands specified
3129+on the command line, even when the '-f' option is present. This is contrary
3130+to the behaviour of most rm programs out there, and not conforming with
3131+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
3132+
3133+Please tell bug-automake@gnu.org about your system, including the value
3134+of your $PATH and any error possibly output before this message. This
3135+can help us improve future automake versions.
3136+
3137+END
3138+ if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
3139+ echo 'Configuration will proceed anyway, since you have set the' >&2
3140+ echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
3141+ echo >&2
3142+ else
3143+ cat >&2 <<'END'
3144+Aborting the configuration process, to ensure you take notice of the issue.
3145+
3146+You can download and install GNU coreutils to get an 'rm' implementation
3147+that behaves properly: <http://www.gnu.org/software/coreutils/>.
3148+
3149+If you want to complete the configuration process using your problematic
3150+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
3151+to "yes", and re-run configure.
3152+
3153+END
3154+ AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
3155+ fi
3156+fi])
3157
3158 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
3159 dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
3160@@ -534,7 +581,6 @@
3161 m4_define([_AC_COMPILER_EXEEXT],
3162 m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
3163
3164-
3165 # When config.status generates a header, we must update the stamp-h file.
3166 # This file resides in the same directory as the config header
3167 # that is generated. The stamp files are numbered to have different names.
3168@@ -682,38 +728,6 @@
3169 rm -f confinc confmf
3170 ])
3171
3172-# Copyright (C) 1999-2013 Free Software Foundation, Inc.
3173-#
3174-# This file is free software; the Free Software Foundation
3175-# gives unlimited permission to copy and/or distribute it,
3176-# with or without modifications, as long as this notice is preserved.
3177-
3178-# AM_PROG_CC_C_O
3179-# --------------
3180-# Like AC_PROG_CC_C_O, but changed for automake.
3181-AC_DEFUN([AM_PROG_CC_C_O],
3182-[AC_REQUIRE([AC_PROG_CC_C_O])dnl
3183-AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
3184-AC_REQUIRE_AUX_FILE([compile])dnl
3185-# FIXME: we rely on the cache variable name because
3186-# there is no other way.
3187-set dummy $CC
3188-am_cc=`echo $[2] | sed ['s/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/']`
3189-eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
3190-if test "$am_t" != yes; then
3191- # Losing compiler, so override with the script.
3192- # FIXME: It is wrong to rewrite CC.
3193- # But if we don't then we get into trouble of one sort or another.
3194- # A longer-term fix would be to have automake use am__CC in this case,
3195- # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
3196- CC="$am_aux_dir/compile $CC"
3197-fi
3198-dnl Make sure AC_PROG_CC is never called again, or it will override our
3199-dnl setting of CC.
3200-m4_define([AC_PROG_CC],
3201- [m4_fatal([AC_PROG_CC cannot be called after AM_PROG_CC_C_O])])
3202-])
3203-
3204 # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
3205
3206 # Copyright (C) 1997-2013 Free Software Foundation, Inc.
3207@@ -784,6 +798,70 @@
3208 AC_DEFUN([_AM_IF_OPTION],
3209 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
3210
3211+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
3212+#
3213+# This file is free software; the Free Software Foundation
3214+# gives unlimited permission to copy and/or distribute it,
3215+# with or without modifications, as long as this notice is preserved.
3216+
3217+# _AM_PROG_CC_C_O
3218+# ---------------
3219+# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
3220+# to automatically call this.
3221+AC_DEFUN([_AM_PROG_CC_C_O],
3222+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
3223+AC_REQUIRE_AUX_FILE([compile])dnl
3224+AC_LANG_PUSH([C])dnl
3225+AC_CACHE_CHECK(
3226+ [whether $CC understands -c and -o together],
3227+ [am_cv_prog_cc_c_o],
3228+ [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
3229+ # Make sure it works both with $CC and with simple cc.
3230+ # Following AC_PROG_CC_C_O, we do the test twice because some
3231+ # compilers refuse to overwrite an existing .o file with -o,
3232+ # though they will create one.
3233+ am_cv_prog_cc_c_o=yes
3234+ for am_i in 1 2; do
3235+ if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
3236+ && test -f conftest2.$ac_objext; then
3237+ : OK
3238+ else
3239+ am_cv_prog_cc_c_o=no
3240+ break
3241+ fi
3242+ done
3243+ rm -f core conftest*
3244+ unset am_i])
3245+if test "$am_cv_prog_cc_c_o" != yes; then
3246+ # Losing compiler, so override with the script.
3247+ # FIXME: It is wrong to rewrite CC.
3248+ # But if we don't then we get into trouble of one sort or another.
3249+ # A longer-term fix would be to have automake use am__CC in this case,
3250+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
3251+ CC="$am_aux_dir/compile $CC"
3252+fi
3253+AC_LANG_POP([C])])
3254+
3255+# For backward compatibility.
3256+AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
3257+
3258+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
3259+#
3260+# This file is free software; the Free Software Foundation
3261+# gives unlimited permission to copy and/or distribute it,
3262+# with or without modifications, as long as this notice is preserved.
3263+
3264+# AM_RUN_LOG(COMMAND)
3265+# -------------------
3266+# Run COMMAND, save the exit status in ac_status, and log it.
3267+# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
3268+AC_DEFUN([AM_RUN_LOG],
3269+[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
3270+ ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
3271+ ac_status=$?
3272+ echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
3273+ (exit $ac_status); }])
3274+
3275 # Check to make sure that the build environment is sane. -*- Autoconf -*-
3276
3277 # Copyright (C) 1996-2013 Free Software Foundation, Inc.
3278@@ -1536,31 +1614,45 @@
3279
3280 # gnome-compiler-flags.m4
3281 #
3282-# serial 2
3283+# serial 3
3284 #
3285
3286+dnl _GNOME_ARG_ENABLE_COMPILE_WARNINGS
3287+dnl
3288+dnl Helper macro of GNOME_COMPILE_WARNINGS(). Pulled in through AC_REQUIRE() so
3289+dnl that it is only expanded once.
3290+dnl
3291+m4_define([_GNOME_ARG_ENABLE_COMPILE_WARNINGS],
3292+[dnl
3293+AC_PROVIDE([$0])[]dnl
3294+AC_ARG_ENABLE([compile-warnings],
3295+ [AS_HELP_STRING([[--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@]],
3296+ [Turn on compiler warnings])],
3297+ [enable_compile_warnings=$enableval],
3298+ [enable_compile_warnings=yes])[]dnl
3299+])
3300+
3301 dnl GNOME_COMPILE_WARNINGS
3302 dnl Turn on many useful compiler warnings and substitute the result into
3303-dnl WARN_CFLAGS
3304-dnl For now, only works on GCC
3305+dnl WARN_CFLAGS for C and WARN_CXXFLAGS for C++.
3306+dnl Use AC_LANG_PUSH to set the language before calling this macro, or it will
3307+dnl use C as the default.
3308 dnl Pass the default value of the --enable-compile-warnings configure option as
3309 dnl the first argument to the macro, defaulting to 'yes'.
3310 dnl Additional warning/error flags can be passed as an optional second argument.
3311 dnl
3312 dnl For example: GNOME_COMPILE_WARNINGS([maximum],[-Werror=some-flag -Wfoobar])
3313 AC_DEFUN([GNOME_COMPILE_WARNINGS],[
3314+ AC_REQUIRE([_GNOME_ARG_ENABLE_COMPILE_WARNINGS])[]dnl
3315+
3316 dnl ******************************
3317 dnl More compiler warnings
3318 dnl ******************************
3319
3320- AC_ARG_ENABLE(compile-warnings,
3321- AS_HELP_STRING([--enable-compile-warnings=@<:@no/minimum/yes/maximum/error@:>@],
3322- [Turn on compiler warnings]),,
3323- [enable_compile_warnings="m4_default([$1],[yes])"])
3324-
3325- if test "x$GCC" != xyes; then
3326- enable_compile_warnings=no
3327- fi
3328+ AS_CASE([$ac_compile],
3329+ [[*'$CFLAGS '*]], [warn_lang=C warn_cc=$CC warn_conftest="conftest.[$]{ac_ext-c}"],
3330+ [[*'$CXXFLAGS '*]], [warn_lang='C++' warn_cc=$CXX warn_conftest="conftest.[$]{ac_ext-cc}"],
3331+ [AC_MSG_ERROR([[current language is neither C nor C++]])])
3332
3333 warning_flags=
3334 realsave_CFLAGS="$CFLAGS"
3335@@ -1611,26 +1703,33 @@
3336 warning_flags="$warning_flags -Werror"
3337 fi
3338
3339- dnl Check whether GCC supports the warning options
3340+ dnl Keep in mind that the dummy source must be devoid of any
3341+ dnl problems that might cause diagnostics.
3342+ AC_LANG_CONFTEST([AC_LANG_SOURCE([[
3343+int main(int argc, char** argv) { return (argv != 0) ? argc : 0; }
3344+]])])
3345+
3346+ dnl Check whether compile supports the warning options
3347 for option in $warning_flags; do
3348- save_CFLAGS="$CFLAGS"
3349- CFLAGS="$CFLAGS $option"
3350- AC_MSG_CHECKING([whether gcc understands $option])
3351- AC_TRY_COMPILE([], [],
3352- has_option=yes,
3353- has_option=no,)
3354- CFLAGS="$save_CFLAGS"
3355- AC_MSG_RESULT([$has_option])
3356- if test $has_option = yes; then
3357- tested_warning_flags="$tested_warning_flags $option"
3358- fi
3359- unset has_option
3360- unset save_CFLAGS
3361+ # Test whether the compiler accepts the flag. Look at standard output,
3362+ # since GCC only shows a warning message if an option is not supported.
3363+ warn_cc_out=`$warn_cc $tested_warning_flags $option -c "$warn_conftest" 2>&1 || echo failed`
3364+ rm -f "conftest.[$]{OBJEXT-o}"
3365+
3366+ AS_IF([test "x$warn_cc_out" = x],
3367+ [AS_IF([test "x$tested_warning_flags" = x],
3368+ [tested_warning_flags=$option],
3369+ [tested_warning_flags="$tested_warning_flags $option"])],
3370+[cat <<_WARNEOF >&AS_MESSAGE_LOG_FD
3371+$warn_cc: $warn_cc_out
3372+_WARNEOF
3373+])
3374 done
3375 unset option
3376- CFLAGS="$realsave_CFLAGS"
3377- AC_MSG_CHECKING(what warning flags to pass to the C compiler)
3378- AC_MSG_RESULT($tested_warning_flags)
3379+ rm -f "$mm_conftest"
3380+
3381+ AC_MSG_CHECKING([what warning flags to pass to the $warn_lang compiler])
3382+ AC_MSG_RESULT([$tested_warning_flags])
3383
3384 AC_ARG_ENABLE(iso-c,
3385 AS_HELP_STRING([--enable-iso-c],
3386@@ -1653,8 +1752,10 @@
3387 fi
3388 AC_MSG_RESULT($complCFLAGS)
3389
3390- WARN_CFLAGS="$tested_warning_flags $complCFLAGS"
3391- AC_SUBST(WARN_CFLAGS)
3392+dnl TODO subst to cxxflags with c++ and cflags with c
3393+ AS_IF([test "x$warn_lang" = "xC"],
3394+ [AC_SUBST([WARN_CFLAGS], [$tested_warning_flags $complCFLAGS])],
3395+ [AC_SUBST([WARN_CXXFLAGS], [$tested_warning_flags $complCFLAGS])])
3396 ])
3397
3398 dnl For C++, do basically the same thing.
3399
3400=== modified file 'build-aux/config.guess'
3401--- build-aux/config.guess 2013-12-15 04:02:52 +0000
3402+++ build-aux/config.guess 2014-06-11 21:45:53 +0000
3403@@ -1,10 +1,8 @@
3404 #! /bin/sh
3405 # Attempt to guess a canonical system name.
3406-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
3407-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
3408-# 2011, 2012, 2013 Free Software Foundation, Inc.
3409+# Copyright 1992-2013 Free Software Foundation, Inc.
3410
3411-timestamp='2012-12-29'
3412+timestamp='2013-11-29'
3413
3414 # This file is free software; you can redistribute it and/or modify it
3415 # under the terms of the GNU General Public License as published by
3416@@ -26,7 +24,7 @@
3417 # program. This Exception is an additional permission under section 7
3418 # of the GNU General Public License, version 3 ("GPLv3").
3419 #
3420-# Originally written by Per Bothner.
3421+# Originally written by Per Bothner.
3422 #
3423 # You can get the latest version of this script from:
3424 # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
3425@@ -52,9 +50,7 @@
3426 GNU config.guess ($timestamp)
3427
3428 Originally written by Per Bothner.
3429-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
3430-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
3431-2012, 2013 Free Software Foundation, Inc.
3432+Copyright 1992-2013 Free Software Foundation, Inc.
3433
3434 This is free software; see the source for copying conditions. There is NO
3435 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
3436@@ -136,6 +132,27 @@
3437 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
3438 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
3439
3440+case "${UNAME_SYSTEM}" in
3441+Linux|GNU|GNU/*)
3442+ # If the system lacks a compiler, then just pick glibc.
3443+ # We could probably try harder.
3444+ LIBC=gnu
3445+
3446+ eval $set_cc_for_build
3447+ cat <<-EOF > $dummy.c
3448+ #include <features.h>
3449+ #if defined(__UCLIBC__)
3450+ LIBC=uclibc
3451+ #elif defined(__dietlibc__)
3452+ LIBC=dietlibc
3453+ #else
3454+ LIBC=gnu
3455+ #endif
3456+ EOF
3457+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
3458+ ;;
3459+esac
3460+
3461 # Note: order is significant - the case branches are not exclusive.
3462
3463 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
3464@@ -857,21 +874,21 @@
3465 exit ;;
3466 *:GNU:*:*)
3467 # the GNU system
3468- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
3469+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
3470 exit ;;
3471 *:GNU/*:*:*)
3472 # other systems with GNU libc and userland
3473- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
3474+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
3475 exit ;;
3476 i*86:Minix:*:*)
3477 echo ${UNAME_MACHINE}-pc-minix
3478 exit ;;
3479 aarch64:Linux:*:*)
3480- echo ${UNAME_MACHINE}-unknown-linux-gnu
3481+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3482 exit ;;
3483 aarch64_be:Linux:*:*)
3484 UNAME_MACHINE=aarch64_be
3485- echo ${UNAME_MACHINE}-unknown-linux-gnu
3486+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3487 exit ;;
3488 alpha:Linux:*:*)
3489 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
3490@@ -884,59 +901,54 @@
3491 EV68*) UNAME_MACHINE=alphaev68 ;;
3492 esac
3493 objdump --private-headers /bin/sh | grep -q ld.so.1
3494- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
3495- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
3496+ if test "$?" = 0 ; then LIBC="gnulibc1" ; fi
3497+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3498+ exit ;;
3499+ arc:Linux:*:* | arceb:Linux:*:*)
3500+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3501 exit ;;
3502 arm*:Linux:*:*)
3503 eval $set_cc_for_build
3504 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
3505 | grep -q __ARM_EABI__
3506 then
3507- echo ${UNAME_MACHINE}-unknown-linux-gnu
3508+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3509 else
3510 if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
3511 | grep -q __ARM_PCS_VFP
3512 then
3513- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
3514+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
3515 else
3516- echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
3517+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
3518 fi
3519 fi
3520 exit ;;
3521 avr32*:Linux:*:*)
3522- echo ${UNAME_MACHINE}-unknown-linux-gnu
3523+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3524 exit ;;
3525 cris:Linux:*:*)
3526- echo ${UNAME_MACHINE}-axis-linux-gnu
3527+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
3528 exit ;;
3529 crisv32:Linux:*:*)
3530- echo ${UNAME_MACHINE}-axis-linux-gnu
3531+ echo ${UNAME_MACHINE}-axis-linux-${LIBC}
3532 exit ;;
3533 frv:Linux:*:*)
3534- echo ${UNAME_MACHINE}-unknown-linux-gnu
3535+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3536 exit ;;
3537 hexagon:Linux:*:*)
3538- echo ${UNAME_MACHINE}-unknown-linux-gnu
3539+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3540 exit ;;
3541 i*86:Linux:*:*)
3542- LIBC=gnu
3543- eval $set_cc_for_build
3544- sed 's/^ //' << EOF >$dummy.c
3545- #ifdef __dietlibc__
3546- LIBC=dietlibc
3547- #endif
3548-EOF
3549- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
3550- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
3551+ echo ${UNAME_MACHINE}-pc-linux-${LIBC}
3552 exit ;;
3553 ia64:Linux:*:*)
3554- echo ${UNAME_MACHINE}-unknown-linux-gnu
3555+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3556 exit ;;
3557 m32r*:Linux:*:*)
3558- echo ${UNAME_MACHINE}-unknown-linux-gnu
3559+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3560 exit ;;
3561 m68*:Linux:*:*)
3562- echo ${UNAME_MACHINE}-unknown-linux-gnu
3563+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3564 exit ;;
3565 mips:Linux:*:* | mips64:Linux:*:*)
3566 eval $set_cc_for_build
3567@@ -955,54 +967,63 @@
3568 #endif
3569 EOF
3570 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
3571- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
3572+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
3573 ;;
3574+ or1k:Linux:*:*)
3575+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3576+ exit ;;
3577 or32:Linux:*:*)
3578- echo ${UNAME_MACHINE}-unknown-linux-gnu
3579+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3580 exit ;;
3581 padre:Linux:*:*)
3582- echo sparc-unknown-linux-gnu
3583+ echo sparc-unknown-linux-${LIBC}
3584 exit ;;
3585 parisc64:Linux:*:* | hppa64:Linux:*:*)
3586- echo hppa64-unknown-linux-gnu
3587+ echo hppa64-unknown-linux-${LIBC}
3588 exit ;;
3589 parisc:Linux:*:* | hppa:Linux:*:*)
3590 # Look for CPU level
3591 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
3592- PA7*) echo hppa1.1-unknown-linux-gnu ;;
3593- PA8*) echo hppa2.0-unknown-linux-gnu ;;
3594- *) echo hppa-unknown-linux-gnu ;;
3595+ PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
3596+ PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
3597+ *) echo hppa-unknown-linux-${LIBC} ;;
3598 esac
3599 exit ;;
3600 ppc64:Linux:*:*)
3601- echo powerpc64-unknown-linux-gnu
3602+ echo powerpc64-unknown-linux-${LIBC}
3603 exit ;;
3604 ppc:Linux:*:*)
3605- echo powerpc-unknown-linux-gnu
3606+ echo powerpc-unknown-linux-${LIBC}
3607+ exit ;;
3608+ ppc64le:Linux:*:*)
3609+ echo powerpc64le-unknown-linux-${LIBC}
3610+ exit ;;
3611+ ppcle:Linux:*:*)
3612+ echo powerpcle-unknown-linux-${LIBC}
3613 exit ;;
3614 s390:Linux:*:* | s390x:Linux:*:*)
3615- echo ${UNAME_MACHINE}-ibm-linux
3616+ echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
3617 exit ;;
3618 sh64*:Linux:*:*)
3619- echo ${UNAME_MACHINE}-unknown-linux-gnu
3620+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3621 exit ;;
3622 sh*:Linux:*:*)
3623- echo ${UNAME_MACHINE}-unknown-linux-gnu
3624+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3625 exit ;;
3626 sparc:Linux:*:* | sparc64:Linux:*:*)
3627- echo ${UNAME_MACHINE}-unknown-linux-gnu
3628+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3629 exit ;;
3630 tile*:Linux:*:*)
3631- echo ${UNAME_MACHINE}-unknown-linux-gnu
3632+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3633 exit ;;
3634 vax:Linux:*:*)
3635- echo ${UNAME_MACHINE}-dec-linux-gnu
3636+ echo ${UNAME_MACHINE}-dec-linux-${LIBC}
3637 exit ;;
3638 x86_64:Linux:*:*)
3639- echo ${UNAME_MACHINE}-unknown-linux-gnu
3640+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3641 exit ;;
3642 xtensa*:Linux:*:*)
3643- echo ${UNAME_MACHINE}-unknown-linux-gnu
3644+ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
3645 exit ;;
3646 i*86:DYNIX/ptx:4*:*)
3647 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
3648@@ -1235,19 +1256,31 @@
3649 exit ;;
3650 *:Darwin:*:*)
3651 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
3652- case $UNAME_PROCESSOR in
3653- i386)
3654- eval $set_cc_for_build
3655- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
3656- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
3657- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
3658- grep IS_64BIT_ARCH >/dev/null
3659- then
3660- UNAME_PROCESSOR="x86_64"
3661- fi
3662- fi ;;
3663- unknown) UNAME_PROCESSOR=powerpc ;;
3664- esac
3665+ eval $set_cc_for_build
3666+ if test "$UNAME_PROCESSOR" = unknown ; then
3667+ UNAME_PROCESSOR=powerpc
3668+ fi
3669+ if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
3670+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
3671+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
3672+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
3673+ grep IS_64BIT_ARCH >/dev/null
3674+ then
3675+ case $UNAME_PROCESSOR in
3676+ i386) UNAME_PROCESSOR=x86_64 ;;
3677+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
3678+ esac
3679+ fi
3680+ fi
3681+ elif test "$UNAME_PROCESSOR" = i386 ; then
3682+ # Avoid executing cc on OS X 10.9, as it ships with a stub
3683+ # that puts up a graphical alert prompting to install
3684+ # developer tools. Any system running Mac OS X 10.7 or
3685+ # later (Darwin 11 and later) is required to have a 64-bit
3686+ # processor. This is not true of the ARM version of Darwin
3687+ # that Apple uses in portable devices.
3688+ UNAME_PROCESSOR=x86_64
3689+ fi
3690 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
3691 exit ;;
3692 *:procnto*:*:* | *:QNX:[0123456789]*:*)
3693
3694=== modified file 'build-aux/config.sub'
3695--- build-aux/config.sub 2013-12-15 04:02:52 +0000
3696+++ build-aux/config.sub 2014-06-11 21:45:53 +0000
3697@@ -1,10 +1,8 @@
3698 #! /bin/sh
3699 # Configuration validation subroutine script.
3700-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
3701-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
3702-# 2011, 2012, 2013 Free Software Foundation, Inc.
3703+# Copyright 1992-2013 Free Software Foundation, Inc.
3704
3705-timestamp='2012-12-29'
3706+timestamp='2013-10-01'
3707
3708 # This file is free software; you can redistribute it and/or modify it
3709 # under the terms of the GNU General Public License as published by
3710@@ -70,9 +68,7 @@
3711 version="\
3712 GNU config.sub ($timestamp)
3713
3714-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
3715-2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011,
3716-2012, 2013 Free Software Foundation, Inc.
3717+Copyright 1992-2013 Free Software Foundation, Inc.
3718
3719 This is free software; see the source for copying conditions. There is NO
3720 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
3721@@ -256,12 +252,12 @@
3722 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
3723 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
3724 | am33_2.0 \
3725- | arc \
3726+ | arc | arceb \
3727 | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
3728 | avr | avr32 \
3729 | be32 | be64 \
3730 | bfin \
3731- | c4x | clipper \
3732+ | c4x | c8051 | clipper \
3733 | d10v | d30v | dlx | dsp16xx \
3734 | epiphany \
3735 | fido | fr30 | frv \
3736@@ -269,6 +265,7 @@
3737 | hexagon \
3738 | i370 | i860 | i960 | ia64 \
3739 | ip2k | iq2000 \
3740+ | k1om \
3741 | le32 | le64 \
3742 | lm32 \
3743 | m32c | m32r | m32rle | m68000 | m68k | m88k \
3744@@ -290,16 +287,17 @@
3745 | mipsisa64r2 | mipsisa64r2el \
3746 | mipsisa64sb1 | mipsisa64sb1el \
3747 | mipsisa64sr71k | mipsisa64sr71kel \
3748+ | mipsr5900 | mipsr5900el \
3749 | mipstx39 | mipstx39el \
3750 | mn10200 | mn10300 \
3751 | moxie \
3752 | mt \
3753 | msp430 \
3754 | nds32 | nds32le | nds32be \
3755- | nios | nios2 \
3756+ | nios | nios2 | nios2eb | nios2el \
3757 | ns16k | ns32k \
3758 | open8 \
3759- | or32 \
3760+ | or1k | or32 \
3761 | pdp10 | pdp11 | pj | pjl \
3762 | powerpc | powerpc64 | powerpc64le | powerpcle \
3763 | pyramid \
3764@@ -327,7 +325,7 @@
3765 c6x)
3766 basic_machine=tic6x-unknown
3767 ;;
3768- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
3769+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
3770 basic_machine=$basic_machine-unknown
3771 os=-none
3772 ;;
3773@@ -369,13 +367,13 @@
3774 | aarch64-* | aarch64_be-* \
3775 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
3776 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
3777- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
3778+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
3779 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
3780 | avr-* | avr32-* \
3781 | be32-* | be64-* \
3782 | bfin-* | bs2000-* \
3783 | c[123]* | c30-* | [cjt]90-* | c4x-* \
3784- | clipper-* | craynv-* | cydra-* \
3785+ | c8051-* | clipper-* | craynv-* | cydra-* \
3786 | d10v-* | d30v-* | dlx-* \
3787 | elxsi-* \
3788 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
3789@@ -384,6 +382,7 @@
3790 | hexagon-* \
3791 | i*86-* | i860-* | i960-* | ia64-* \
3792 | ip2k-* | iq2000-* \
3793+ | k1om-* \
3794 | le32-* | le64-* \
3795 | lm32-* \
3796 | m32c-* | m32r-* | m32rle-* \
3797@@ -407,12 +406,13 @@
3798 | mipsisa64r2-* | mipsisa64r2el-* \
3799 | mipsisa64sb1-* | mipsisa64sb1el-* \
3800 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
3801+ | mipsr5900-* | mipsr5900el-* \
3802 | mipstx39-* | mipstx39el-* \
3803 | mmix-* \
3804 | mt-* \
3805 | msp430-* \
3806 | nds32-* | nds32le-* | nds32be-* \
3807- | nios-* | nios2-* \
3808+ | nios-* | nios2-* | nios2eb-* | nios2el-* \
3809 | none-* | np1-* | ns16k-* | ns32k-* \
3810 | open8-* \
3811 | orion-* \
3812@@ -796,7 +796,7 @@
3813 os=-mingw64
3814 ;;
3815 mingw32)
3816- basic_machine=i386-pc
3817+ basic_machine=i686-pc
3818 os=-mingw32
3819 ;;
3820 mingw32ce)
3821@@ -832,7 +832,7 @@
3822 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
3823 ;;
3824 msys)
3825- basic_machine=i386-pc
3826+ basic_machine=i686-pc
3827 os=-msys
3828 ;;
3829 mvs)
3830@@ -1354,7 +1354,7 @@
3831 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
3832 | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
3833 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
3834- | -sym* | -kopensolaris* \
3835+ | -sym* | -kopensolaris* | -plan9* \
3836 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
3837 | -aos* | -aros* \
3838 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
3839@@ -1500,9 +1500,6 @@
3840 -aros*)
3841 os=-aros
3842 ;;
3843- -kaos*)
3844- os=-kaos
3845- ;;
3846 -zvmoe)
3847 os=-zvmoe
3848 ;;
3849@@ -1551,6 +1548,9 @@
3850 c4x-* | tic4x-*)
3851 os=-coff
3852 ;;
3853+ c8051-*)
3854+ os=-elf
3855+ ;;
3856 hexagon-*)
3857 os=-elf
3858 ;;
3859@@ -1594,6 +1594,9 @@
3860 mips*-*)
3861 os=-elf
3862 ;;
3863+ or1k-*)
3864+ os=-elf
3865+ ;;
3866 or32-*)
3867 os=-coff
3868 ;;
3869
3870=== modified file 'build-aux/missing'
3871--- build-aux/missing 2013-12-15 04:02:52 +0000
3872+++ build-aux/missing 2014-06-11 21:45:53 +0000
3873@@ -1,7 +1,7 @@
3874 #! /bin/sh
3875 # Common wrapper for a few potentially missing GNU programs.
3876
3877-scriptversion=2012-06-26.16; # UTC
3878+scriptversion=2013-10-28.13; # UTC
3879
3880 # Copyright (C) 1996-2013 Free Software Foundation, Inc.
3881 # Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
3882@@ -160,7 +160,7 @@
3883 ;;
3884 autom4te*)
3885 echo "You might have modified some maintainer files that require"
3886- echo "the 'automa4te' program to be rebuilt."
3887+ echo "the 'autom4te' program to be rebuilt."
3888 program_details 'autom4te'
3889 ;;
3890 bison*|yacc*)
3891
3892=== modified file 'build-aux/test-driver'
3893--- build-aux/test-driver 2013-10-17 16:29:42 +0000
3894+++ build-aux/test-driver 2014-06-11 21:45:53 +0000
3895@@ -1,7 +1,7 @@
3896 #! /bin/sh
3897 # test-driver - basic testsuite driver script.
3898
3899-scriptversion=2012-06-27.10; # UTC
3900+scriptversion=2013-07-13.22; # UTC
3901
3902 # Copyright (C) 2011-2013 Free Software Foundation, Inc.
3903 #
3904@@ -44,13 +44,12 @@
3905 Usage:
3906 test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
3907 [--expect-failure={yes|no}] [--color-tests={yes|no}]
3908- [--enable-hard-errors={yes|no}] [--] TEST-SCRIPT
3909+ [--enable-hard-errors={yes|no}] [--]
3910+ TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
3911 The '--test-name', '--log-file' and '--trs-file' options are mandatory.
3912 END
3913 }
3914
3915-# TODO: better error handling in option parsing (in particular, ensure
3916-# TODO: $log_file, $trs_file and $test_name are defined).
3917 test_name= # Used for reporting.
3918 log_file= # Where to save the output of the test script.
3919 trs_file= # Where to save the metadata of the test run.
3920@@ -69,10 +68,23 @@
3921 --enable-hard-errors) enable_hard_errors=$2; shift;;
3922 --) shift; break;;
3923 -*) usage_error "invalid option: '$1'";;
3924+ *) break;;
3925 esac
3926 shift
3927 done
3928
3929+missing_opts=
3930+test x"$test_name" = x && missing_opts="$missing_opts --test-name"
3931+test x"$log_file" = x && missing_opts="$missing_opts --log-file"
3932+test x"$trs_file" = x && missing_opts="$missing_opts --trs-file"
3933+if test x"$missing_opts" != x; then
3934+ usage_error "the following mandatory options are missing:$missing_opts"
3935+fi
3936+
3937+if test $# -eq 0; then
3938+ usage_error "missing argument"
3939+fi
3940+
3941 if test $color_tests = yes; then
3942 # Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
3943 red='' # Red.
3944
3945=== modified file 'cheese-config.h.in'
3946--- cheese-config.h.in 2012-02-07 00:39:22 +0000
3947+++ cheese-config.h.in 2014-06-11 21:45:53 +0000
3948@@ -43,9 +43,6 @@
3949 */
3950 #undef LT_OBJDIR
3951
3952-/* Define to 1 if your C compiler doesn't accept -c and -o together. */
3953-#undef NO_MINUS_C_MINUS_O
3954-
3955 /* Define to the address where bug reports for this package should be sent. */
3956 #undef PACKAGE_BUGREPORT
3957
3958
3959=== modified file 'configure'
3960--- configure 2014-05-23 11:12:02 +0000
3961+++ configure 2014-06-11 21:45:53 +0000
3962@@ -1,6 +1,6 @@
3963 #! /bin/sh
3964 # Guess values for system-dependent variables and create Makefiles.
3965-# Generated by GNU Autoconf 2.69 for Cheese 3.12.1.
3966+# Generated by GNU Autoconf 2.69 for Cheese 3.12.2.
3967 #
3968 # Report bugs to <https://bugzilla.gnome.org/enter_bug.cgi?product=cheese>.
3969 #
3970@@ -651,8 +651,8 @@
3971 # Identity of this package.
3972 PACKAGE_NAME='Cheese'
3973 PACKAGE_TARNAME='cheese'
3974-PACKAGE_VERSION='3.12.1'
3975-PACKAGE_STRING='Cheese 3.12.1'
3976+PACKAGE_VERSION='3.12.2'
3977+PACKAGE_STRING='Cheese 3.12.2'
3978 PACKAGE_BUGREPORT='https://bugzilla.gnome.org/enter_bug.cgi?product=cheese'
3979 PACKAGE_URL='https://wiki.gnome.org/Apps/Cheese'
3980
3981@@ -801,6 +801,7 @@
3982 GETTEXT_PACKAGE
3983 LIBCHEESE_GTK_LT_VERSION
3984 LIBCHEESE_LT_VERSION
3985+WARN_CXXFLAGS
3986 WARN_CFLAGS
3987 DISABLE_DEPRECATED
3988 CHEESE_WFLAGS
3989@@ -1511,7 +1512,7 @@
3990 # Omit some internal or obsolete options to make the list less imposing.
3991 # This message is too long to be a string in the A/UX 3.1 sh.
3992 cat <<_ACEOF
3993-\`configure' configures Cheese 3.12.1 to adapt to many kinds of systems.
3994+\`configure' configures Cheese 3.12.2 to adapt to many kinds of systems.
3995
3996 Usage: $0 [OPTION]... [VAR=VALUE]...
3997
3998@@ -1581,7 +1582,7 @@
3999
4000 if test -n "$ac_init_help"; then
4001 case $ac_init_help in
4002- short | recursive ) echo "Configuration of Cheese 3.12.1:";;
4003+ short | recursive ) echo "Configuration of Cheese 3.12.2:";;
4004 esac
4005 cat <<\_ACEOF
4006
4007@@ -1728,7 +1729,7 @@
4008 test -n "$ac_init_help" && exit $ac_status
4009 if $ac_init_version; then
4010 cat <<\_ACEOF
4011-Cheese configure 3.12.1
4012+Cheese configure 3.12.2
4013 generated by GNU Autoconf 2.69
4014
4015 Copyright (C) 2012 Free Software Foundation, Inc.
4016@@ -2097,7 +2098,7 @@
4017 This file contains any messages produced by compilers while
4018 running configure, to aid debugging if configure makes a mistake.
4019
4020-It was created by Cheese $as_me 3.12.1, which was
4021+It was created by Cheese $as_me 3.12.2, which was
4022 generated by GNU Autoconf 2.69. Invocation command line was
4023
4024 $ $0 $@
4025@@ -2480,7 +2481,7 @@
4026
4027
4028
4029-am__api_version='1.13'
4030+am__api_version='1.14'
4031
4032 # Find a good install program. We prefer a C program (faster),
4033 # so one script is as good as another. But avoid the broken or
4034@@ -2966,7 +2967,7 @@
4035
4036 # Define the identity of the package.
4037 PACKAGE='cheese'
4038- VERSION='3.12.1'
4039+ VERSION='3.12.2'
4040
4041
4042 # Some tools Automake needs.
4043@@ -3008,6 +3009,47 @@
4044
4045
4046
4047+# POSIX will say in a future version that running "rm -f" with no argument
4048+# is OK; and we want to be able to make that assumption in our Makefile
4049+# recipes. So use an aggressive probe to check that the usage we want is
4050+# actually supported "in the wild" to an acceptable degree.
4051+# See automake bug#10828.
4052+# To make any issue more visible, cause the running configure to be aborted
4053+# by default if the 'rm' program in use doesn't match our expectations; the
4054+# user can still override this though.
4055+if rm -f && rm -fr && rm -rf; then : OK; else
4056+ cat >&2 <<'END'
4057+Oops!
4058+
4059+Your 'rm' program seems unable to run without file operands specified
4060+on the command line, even when the '-f' option is present. This is contrary
4061+to the behaviour of most rm programs out there, and not conforming with
4062+the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
4063+
4064+Please tell bug-automake@gnu.org about your system, including the value
4065+of your $PATH and any error possibly output before this message. This
4066+can help us improve future automake versions.
4067+
4068+END
4069+ if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
4070+ echo 'Configuration will proceed anyway, since you have set the' >&2
4071+ echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
4072+ echo >&2
4073+ else
4074+ cat >&2 <<'END'
4075+Aborting the configuration process, to ensure you take notice of the issue.
4076+
4077+You can download and install GNU coreutils to get an 'rm' implementation
4078+that behaves properly: <http://www.gnu.org/software/coreutils/>.
4079+
4080+If you want to complete the configuration process using your problematic
4081+'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
4082+to "yes", and re-run configure.
4083+
4084+END
4085+ as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
4086+ fi
4087+fi
4088
4089 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
4090 $as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
4091@@ -3860,6 +3902,65 @@
4092 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4093 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4094 ac_compiler_gnu=$ac_cv_c_compiler_gnu
4095+
4096+ac_ext=c
4097+ac_cpp='$CPP $CPPFLAGS'
4098+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4099+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4100+ac_compiler_gnu=$ac_cv_c_compiler_gnu
4101+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
4102+$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
4103+if ${am_cv_prog_cc_c_o+:} false; then :
4104+ $as_echo_n "(cached) " >&6
4105+else
4106+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4107+/* end confdefs.h. */
4108+
4109+int
4110+main ()
4111+{
4112+
4113+ ;
4114+ return 0;
4115+}
4116+_ACEOF
4117+ # Make sure it works both with $CC and with simple cc.
4118+ # Following AC_PROG_CC_C_O, we do the test twice because some
4119+ # compilers refuse to overwrite an existing .o file with -o,
4120+ # though they will create one.
4121+ am_cv_prog_cc_c_o=yes
4122+ for am_i in 1 2; do
4123+ if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
4124+ ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
4125+ ac_status=$?
4126+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
4127+ (exit $ac_status); } \
4128+ && test -f conftest2.$ac_objext; then
4129+ : OK
4130+ else
4131+ am_cv_prog_cc_c_o=no
4132+ break
4133+ fi
4134+ done
4135+ rm -f core conftest*
4136+ unset am_i
4137+fi
4138+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
4139+$as_echo "$am_cv_prog_cc_c_o" >&6; }
4140+if test "$am_cv_prog_cc_c_o" != yes; then
4141+ # Losing compiler, so override with the script.
4142+ # FIXME: It is wrong to rewrite CC.
4143+ # But if we don't then we get into trouble of one sort or another.
4144+ # A longer-term fix would be to have automake use am__CC in this case,
4145+ # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
4146+ CC="$am_aux_dir/compile $CC"
4147+fi
4148+ac_ext=c
4149+ac_cpp='$CPP $CPPFLAGS'
4150+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4151+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4152+ac_compiler_gnu=$ac_cv_c_compiler_gnu
4153+
4154 DEPDIR="${am__leading_dot}deps"
4155
4156 ac_config_commands="$ac_config_commands depfiles"
4157@@ -4052,131 +4153,6 @@
4158 fi
4159
4160
4161-if test "x$CC" != xcc; then
4162- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC and cc understand -c and -o together" >&5
4163-$as_echo_n "checking whether $CC and cc understand -c and -o together... " >&6; }
4164-else
4165- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether cc understands -c and -o together" >&5
4166-$as_echo_n "checking whether cc understands -c and -o together... " >&6; }
4167-fi
4168-set dummy $CC; ac_cc=`$as_echo "$2" |
4169- sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
4170-if eval \${ac_cv_prog_cc_${ac_cc}_c_o+:} false; then :
4171- $as_echo_n "(cached) " >&6
4172-else
4173- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4174-/* end confdefs.h. */
4175-
4176-int
4177-main ()
4178-{
4179-
4180- ;
4181- return 0;
4182-}
4183-_ACEOF
4184-# Make sure it works both with $CC and with simple cc.
4185-# We do the test twice because some compilers refuse to overwrite an
4186-# existing .o file with -o, though they will create one.
4187-ac_try='$CC -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
4188-rm -f conftest2.*
4189-if { { case "(($ac_try" in
4190- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4191- *) ac_try_echo=$ac_try;;
4192-esac
4193-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
4194-$as_echo "$ac_try_echo"; } >&5
4195- (eval "$ac_try") 2>&5
4196- ac_status=$?
4197- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
4198- test $ac_status = 0; } &&
4199- test -f conftest2.$ac_objext && { { case "(($ac_try" in
4200- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4201- *) ac_try_echo=$ac_try;;
4202-esac
4203-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
4204-$as_echo "$ac_try_echo"; } >&5
4205- (eval "$ac_try") 2>&5
4206- ac_status=$?
4207- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
4208- test $ac_status = 0; };
4209-then
4210- eval ac_cv_prog_cc_${ac_cc}_c_o=yes
4211- if test "x$CC" != xcc; then
4212- # Test first that cc exists at all.
4213- if { ac_try='cc -c conftest.$ac_ext >&5'
4214- { { case "(($ac_try" in
4215- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4216- *) ac_try_echo=$ac_try;;
4217-esac
4218-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
4219-$as_echo "$ac_try_echo"; } >&5
4220- (eval "$ac_try") 2>&5
4221- ac_status=$?
4222- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
4223- test $ac_status = 0; }; }; then
4224- ac_try='cc -c conftest.$ac_ext -o conftest2.$ac_objext >&5'
4225- rm -f conftest2.*
4226- if { { case "(($ac_try" in
4227- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4228- *) ac_try_echo=$ac_try;;
4229-esac
4230-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
4231-$as_echo "$ac_try_echo"; } >&5
4232- (eval "$ac_try") 2>&5
4233- ac_status=$?
4234- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
4235- test $ac_status = 0; } &&
4236- test -f conftest2.$ac_objext && { { case "(($ac_try" in
4237- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
4238- *) ac_try_echo=$ac_try;;
4239-esac
4240-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
4241-$as_echo "$ac_try_echo"; } >&5
4242- (eval "$ac_try") 2>&5
4243- ac_status=$?
4244- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
4245- test $ac_status = 0; };
4246- then
4247- # cc works too.
4248- :
4249- else
4250- # cc exists but doesn't like -o.
4251- eval ac_cv_prog_cc_${ac_cc}_c_o=no
4252- fi
4253- fi
4254- fi
4255-else
4256- eval ac_cv_prog_cc_${ac_cc}_c_o=no
4257-fi
4258-rm -f core conftest*
4259-
4260-fi
4261-if eval test \$ac_cv_prog_cc_${ac_cc}_c_o = yes; then
4262- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
4263-$as_echo "yes" >&6; }
4264-else
4265- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4266-$as_echo "no" >&6; }
4267-
4268-$as_echo "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h
4269-
4270-fi
4271-
4272-# FIXME: we rely on the cache variable name because
4273-# there is no other way.
4274-set dummy $CC
4275-am_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'`
4276-eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o
4277-if test "$am_t" != yes; then
4278- # Losing compiler, so override with the script.
4279- # FIXME: It is wrong to rewrite CC.
4280- # But if we don't then we get into trouble of one sort or another.
4281- # A longer-term fix would be to have automake use am__CC in this case,
4282- # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
4283- CC="$am_aux_dir/compile $CC"
4284-fi
4285-
4286
4287 # Extract the first word of "valac", so it can be a program name with args.
4288 set dummy valac; ac_word=$2
4289@@ -11981,19 +11957,24 @@
4290
4291
4292
4293-
4294-
4295- # Check whether --enable-compile-warnings was given.
4296+# Check whether --enable-compile-warnings was given.
4297 if test "${enable_compile_warnings+set}" = set; then :
4298- enableval=$enable_compile_warnings;
4299+ enableval=$enable_compile_warnings; enable_compile_warnings=$enableval
4300 else
4301- enable_compile_warnings="maximum"
4302+ enable_compile_warnings=yes
4303 fi
4304
4305
4306- if test "x$GCC" != xyes; then
4307- enable_compile_warnings=no
4308- fi
4309+
4310+
4311+ case $ac_compile in #(
4312+ *'$CFLAGS '*) :
4313+ warn_lang=C warn_cc=$CC warn_conftest="conftest.${ac_ext-c}" ;; #(
4314+ *'$CXXFLAGS '*) :
4315+ warn_lang='C++' warn_cc=$CXX warn_conftest="conftest.${ac_ext-cc}" ;; #(
4316+ *) :
4317+ as_fn_error $? "current language is neither C nor C++" "$LINENO" 5 ;;
4318+esac
4319
4320 warning_flags=
4321 realsave_CFLAGS="$CFLAGS"
4322@@ -12035,41 +12016,37 @@
4323 warning_flags="$warning_flags -Werror"
4324 fi
4325
4326+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4327+/* end confdefs.h. */
4328+
4329+int main(int argc, char** argv) { return (argv != 0) ? argc : 0; }
4330+
4331+_ACEOF
4332+
4333 for option in $warning_flags; do
4334- save_CFLAGS="$CFLAGS"
4335- CFLAGS="$CFLAGS $option"
4336- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether gcc understands $option" >&5
4337-$as_echo_n "checking whether gcc understands $option... " >&6; }
4338- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4339-/* end confdefs.h. */
4340-
4341-int
4342-main ()
4343-{
4344-
4345- ;
4346- return 0;
4347-}
4348-_ACEOF
4349-if ac_fn_c_try_compile "$LINENO"; then :
4350- has_option=yes
4351-else
4352- has_option=no
4353-fi
4354-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
4355- CFLAGS="$save_CFLAGS"
4356- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $has_option" >&5
4357-$as_echo "$has_option" >&6; }
4358- if test $has_option = yes; then
4359- tested_warning_flags="$tested_warning_flags $option"
4360- fi
4361- unset has_option
4362- unset save_CFLAGS
4363+ # Test whether the compiler accepts the flag. Look at standard output,
4364+ # since GCC only shows a warning message if an option is not supported.
4365+ warn_cc_out=`$warn_cc $tested_warning_flags $option -c "$warn_conftest" 2>&1 || echo failed`
4366+ rm -f "conftest.${OBJEXT-o}"
4367+
4368+ if test "x$warn_cc_out" = x; then :
4369+ if test "x$tested_warning_flags" = x; then :
4370+ tested_warning_flags=$option
4371+else
4372+ tested_warning_flags="$tested_warning_flags $option"
4373+fi
4374+else
4375+ cat <<_WARNEOF >&5
4376+$warn_cc: $warn_cc_out
4377+_WARNEOF
4378+
4379+fi
4380 done
4381 unset option
4382- CFLAGS="$realsave_CFLAGS"
4383- { $as_echo "$as_me:${as_lineno-$LINENO}: checking what warning flags to pass to the C compiler" >&5
4384-$as_echo_n "checking what warning flags to pass to the C compiler... " >&6; }
4385+ rm -f "$mm_conftest"
4386+
4387+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking what warning flags to pass to the $warn_lang compiler" >&5
4388+$as_echo_n "checking what warning flags to pass to the $warn_lang compiler... " >&6; }
4389 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tested_warning_flags" >&5
4390 $as_echo "$tested_warning_flags" >&6; }
4391
4392@@ -12099,8 +12076,13 @@
4393 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $complCFLAGS" >&5
4394 $as_echo "$complCFLAGS" >&6; }
4395
4396- WARN_CFLAGS="$tested_warning_flags $complCFLAGS"
4397-
4398+ if test "x$warn_lang" = "xC"; then :
4399+ WARN_CFLAGS=$tested_warning_flags $complCFLAGS
4400+
4401+else
4402+ WARN_CXXFLAGS=$tested_warning_flags $complCFLAGS
4403+
4404+fi
4405
4406
4407 #*******************************************************************************
4408@@ -12113,9 +12095,9 @@
4409 # - If binary compatibility has been broken (eg removed or changed interfaces)
4410 # change to C+1:0:0
4411 # - If the interface is the same as the previous version, change to C:R+1:A
4412-LIBCHEESE_LT_VERSION=7:24:0
4413+LIBCHEESE_LT_VERSION=7:25:0
4414
4415-LIBCHEESE_GTK_LT_VERSION=24:8:1
4416+LIBCHEESE_GTK_LT_VERSION=24:9:1
4417
4418
4419 #*******************************************************************************
4420@@ -15323,7 +15305,7 @@
4421 # report actual input values of CONFIG_FILES etc. instead of their
4422 # values after options handling.
4423 ac_log="
4424-This file was extended by Cheese $as_me 3.12.1, which was
4425+This file was extended by Cheese $as_me 3.12.2, which was
4426 generated by GNU Autoconf 2.69. Invocation command line was
4427
4428 CONFIG_FILES = $CONFIG_FILES
4429@@ -15390,7 +15372,7 @@
4430 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
4431 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
4432 ac_cs_version="\\
4433-Cheese config.status 3.12.1
4434+Cheese config.status 3.12.2
4435 configured by $0, generated by GNU Autoconf 2.69,
4436 with options \\"\$ac_cs_config\\"
4437
4438
4439=== modified file 'configure.ac'
4440--- configure.ac 2014-05-23 11:12:02 +0000
4441+++ configure.ac 2014-06-11 21:45:53 +0000
4442@@ -1,7 +1,7 @@
4443 # Process this file with autoconf to produce a configure script.
4444 AC_PREREQ([2.64])
4445 AC_INIT([Cheese],
4446- [3.12.1],
4447+ [3.12.2],
4448 [https://bugzilla.gnome.org/enter_bug.cgi?product=cheese],
4449 [cheese],
4450 [https://wiki.gnome.org/Apps/Cheese])
4451@@ -41,8 +41,8 @@
4452 # - If binary compatibility has been broken (eg removed or changed interfaces)
4453 # change to C+1:0:0
4454 # - If the interface is the same as the previous version, change to C:R+1:A
4455-AC_SUBST([LIBCHEESE_LT_VERSION], [7:24:0])
4456-AC_SUBST([LIBCHEESE_GTK_LT_VERSION], [24:8:1])
4457+AC_SUBST([LIBCHEESE_LT_VERSION], [7:25:0])
4458+AC_SUBST([LIBCHEESE_GTK_LT_VERSION], [24:9:1])
4459
4460 #*******************************************************************************
4461 # Internationalization
4462
4463=== modified file 'data/cheese.desktop.in'
4464--- data/cheese.desktop.in 2014-05-23 11:12:02 +0000
4465+++ data/cheese.desktop.in 2014-06-11 21:45:53 +0000
4466@@ -12,4 +12,4 @@
4467 X-GNOME-Bugzilla-Bugzilla=GNOME
4468 X-GNOME-Bugzilla-Product=cheese
4469 X-GNOME-Bugzilla-Component=general
4470-X-GNOME-Bugzilla-Version=3.12.1
4471+X-GNOME-Bugzilla-Version=3.12.2
4472
4473=== added file 'data/headerbar.ui'
4474--- data/headerbar.ui 1970-01-01 00:00:00 +0000
4475+++ data/headerbar.ui 2014-06-11 21:45:53 +0000
4476@@ -0,0 +1,10 @@
4477+<interface domain="cheese">
4478+ <object class="GtkHeaderBar" id="header_bar">
4479+ <property name="can_focus">False</property>
4480+ <property name="title" translatable="yes">Take a Photo</property>
4481+ <property name="show-close-button">True</property>
4482+ <style>
4483+ <class name="titlebar"/>
4484+ </style>
4485+ </object>
4486+</interface>
4487
4488=== removed file 'data/headerbar.ui'
4489--- data/headerbar.ui 2014-05-02 17:49:55 +0000
4490+++ data/headerbar.ui 1970-01-01 00:00:00 +0000
4491@@ -1,10 +0,0 @@
4492-<interface domain="cheese">
4493- <object class="GtkHeaderBar" id="header_bar">
4494- <property name="can_focus">False</property>
4495- <property name="title" translatable="yes">Take a Photo</property>
4496- <property name="show-close-button">True</property>
4497- <style>
4498- <class name="titlebar"/>
4499- </style>
4500- </object>
4501-</interface>
4502
4503=== modified file 'debian/changelog'
4504--- debian/changelog 2014-05-23 11:12:02 +0000
4505+++ debian/changelog 2014-06-11 21:45:53 +0000
4506@@ -1,3 +1,11 @@
4507+cheese (3.12.2-0ubuntu1) utopic; urgency=medium
4508+
4509+ * New upstream release.
4510+ * Drop 0001-Use-avatar-chooser-headerbar-only-when-requested.patch,
4511+ 0002-Use-a-traditional-title-bar-when-requested.patch. Fixed upstream
4512+
4513+ -- Jackson Doak <noskcaj@ubuntu.com> Thu, 12 Jun 2014 07:35:08 +1000
4514+
4515 cheese (3.12.1-1ubuntu1) utopic; urgency=medium
4516
4517 * Sync with Debian. Remaining changes:
4518
4519=== removed file 'debian/patches/0001-Use-avatar-chooser-headerbar-only-when-requested.patch'
4520--- debian/patches/0001-Use-avatar-chooser-headerbar-only-when-requested.patch 2014-05-23 11:12:02 +0000
4521+++ debian/patches/0001-Use-avatar-chooser-headerbar-only-when-requested.patch 1970-01-01 00:00:00 +0000
4522@@ -1,52 +0,0 @@
4523-From 23e8df7c35edfaee6363d66ab57de457b2f57e1e Mon Sep 17 00:00:00 2001
4524-From: Iain Lane <iain.lane@canonical.com>
4525-Date: Thu, 24 Apr 2014 12:14:04 +0100
4526-Subject: [PATCH 1/2] Use avatar chooser headerbar only when requested
4527-
4528-Use headerbar in the avatar chooser dialog only when necessary according
4529-to the "gtk-shell-shows-menubar" setting.
4530-
4531-https://bugzilla.gnome.org/show_bug.cgi?id=728866
4532----
4533- libcheese/cheese-avatar-chooser.c | 18 +++++++++++++++++-
4534- 1 file changed, 17 insertions(+), 1 deletion(-)
4535-
4536-diff --git a/libcheese/cheese-avatar-chooser.c b/libcheese/cheese-avatar-chooser.c
4537-index 6750016..a0053b0 100644
4538---- a/libcheese/cheese-avatar-chooser.c
4539-+++ b/libcheese/cheese-avatar-chooser.c
4540-@@ -149,6 +149,21 @@ cheese_avatar_chooser_class_init (CheeseAvatarChooserClass *klass)
4541- g_object_class_install_properties (object_class, PROP_LAST, properties);
4542- }
4543-
4544-+static gboolean
4545-+dialogs_use_header (void)
4546-+{
4547-+ GtkSettings *settings;
4548-+ gboolean use_header;
4549-+
4550-+ settings = gtk_settings_get_default ();
4551-+
4552-+ g_object_get (G_OBJECT (settings),
4553-+ "gtk-dialogs-use-header", &use_header,
4554-+ NULL);
4555-+
4556-+ return use_header;
4557-+}
4558-+
4559- /**
4560- * cheese_avatar_chooser_new:
4561- *
4562-@@ -159,7 +174,8 @@ cheese_avatar_chooser_class_init (CheeseAvatarChooserClass *klass)
4563- GtkWidget *
4564- cheese_avatar_chooser_new (void)
4565- {
4566-- return g_object_new (CHEESE_TYPE_AVATAR_CHOOSER, NULL);
4567-+ return g_object_new (CHEESE_TYPE_AVATAR_CHOOSER, "use-header-bar",
4568-+ dialogs_use_header (), NULL);
4569- }
4570-
4571- /**
4572---
4573-2.0.0.rc0
4574-
4575
4576=== removed file 'debian/patches/0002-Use-a-traditional-title-bar-when-requested.patch'
4577--- debian/patches/0002-Use-a-traditional-title-bar-when-requested.patch 2014-05-23 11:12:02 +0000
4578+++ debian/patches/0002-Use-a-traditional-title-bar-when-requested.patch 1970-01-01 00:00:00 +0000
4579@@ -1,155 +0,0 @@
4580-From 47fa1cea586a34395dd82f13bfb1a197beff11f5 Mon Sep 17 00:00:00 2001
4581-From: Iain Lane <iain.lane@canonical.com>
4582-Date: Thu, 24 Apr 2014 11:49:26 +0100
4583-Subject: [PATCH 2/2] Use a traditional title bar when requested
4584-
4585-Not all environments desire header bars. We use the
4586-'gtk-shell-shows-menubar' setting to decide whether to use the header
4587-bar.
4588-
4589-https://bugzilla.gnome.org/show_bug.cgi?id=728866
4590----
4591- Makefile.am | 1 +
4592- data/cheese-main-window.ui | 11 -----------
4593- data/cheese.gresource.xml | 1 +
4594- data/headerbar.ui | 10 ++++++++++
4595- src/cheese-window.vala | 27 ++++++++++++++++++++++-----
4596- 5 files changed, 34 insertions(+), 16 deletions(-)
4597- create mode 100644 data/headerbar.ui
4598-
4599-diff --git a/Makefile.am b/Makefile.am
4600-index c0bd8cd..350a673 100644
4601---- a/Makefile.am
4602-+++ b/Makefile.am
4603-@@ -201,6 +201,7 @@ noinst_resource_files = \
4604- data/cheese-appmenu.ui \
4605- data/cheese-main-window.ui \
4606- data/cheese-prefs.ui \
4607-+ data/headerbar.ui \
4608- data/pixmaps/cheese-1.svg \
4609- data/pixmaps/cheese-2.svg \
4610- data/pixmaps/cheese-3.svg \
4611-diff --git a/data/cheese-main-window.ui b/data/cheese-main-window.ui
4612-index 153edb8..05b1216 100644
4613---- a/data/cheese-main-window.ui
4614-+++ b/data/cheese-main-window.ui
4615-@@ -2,17 +2,6 @@
4616- <interface domain="cheese">
4617- <requires lib="gtk+" version="3.10"/>
4618- <template class="CheeseMainWindow" parent="GtkApplicationWindow">
4619-- <child type="titlebar">
4620-- <object class="GtkHeaderBar" id="header_bar">
4621-- <property name="visible">True</property>
4622-- <property name="can_focus">False</property>
4623-- <property name="title" translatable="yes">Take a Photo</property>
4624-- <property name="show-close-button">True</property>
4625-- <style>
4626-- <class name="titlebar"/>
4627-- </style>
4628-- </object>
4629-- </child>
4630- <child>
4631- <object class="GtkBox" id="main_vbox">
4632- <property name="orientation">vertical</property>
4633-diff --git a/data/cheese.gresource.xml b/data/cheese.gresource.xml
4634-index bf1bdaa..4d02eea 100644
4635---- a/data/cheese.gresource.xml
4636-+++ b/data/cheese.gresource.xml
4637-@@ -6,6 +6,7 @@
4638- <file preprocess="xml-stripblanks">cheese-appmenu.ui</file>
4639- <file preprocess="xml-stripblanks">cheese-main-window.ui</file>
4640- <file preprocess="xml-stripblanks">cheese-prefs.ui</file>
4641-+ <file preprocess="xml-stripblanks">headerbar.ui</file>
4642- <file>pixmaps/cheese-1.svg</file>
4643- <file>pixmaps/cheese-2.svg</file>
4644- <file>pixmaps/cheese-3.svg</file>
4645-diff --git a/data/headerbar.ui b/data/headerbar.ui
4646-new file mode 100644
4647-index 0000000..05be621
4648---- /dev/null
4649-+++ b/data/headerbar.ui
4650-@@ -0,0 +1,10 @@
4651-+<interface domain="cheese">
4652-+ <object class="GtkHeaderBar" id="header_bar">
4653-+ <property name="can_focus">False</property>
4654-+ <property name="title" translatable="yes">Take a Photo</property>
4655-+ <property name="show-close-button">True</property>
4656-+ <style>
4657-+ <class name="titlebar"/>
4658-+ </style>
4659-+ </object>
4660-+</interface>
4661-diff --git a/src/cheese-window.vala b/src/cheese-window.vala
4662-index ef4b412..eecd260 100644
4663---- a/src/cheese-window.vala
4664-+++ b/src/cheese-window.vala
4665-@@ -47,7 +47,8 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
4666-
4667- private Clutter.Script clutter_builder;
4668-
4669-- [GtkChild]
4670-+ private Gtk.Builder header_bar_ui = new Gtk.Builder.from_resource ("/org/gnome/Cheese/headerbar.ui");
4671-+
4672- private Gtk.HeaderBar header_bar;
4673-
4674- private GLib.Settings settings;
4675-@@ -123,6 +124,16 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
4676- {
4677- GLib.Object (application: application);
4678-
4679-+ header_bar = header_bar_ui.get_object ("header_bar") as Gtk.HeaderBar;
4680-+
4681-+ Gtk.Settings settings = Gtk.Settings.get_default ();
4682-+
4683-+ if (settings.gtk_dialogs_use_header)
4684-+ {
4685-+ header_bar.visible = true;
4686-+ this.set_titlebar (header_bar);
4687-+ }
4688-+
4689- if (get_direction () == Gtk.TextDirection.RTL)
4690- {
4691- effects_prev_page_button_image.icon_name = "go-previous-rtl-symbolic";
4692-@@ -135,6 +146,12 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
4693- }
4694- }
4695-
4696-+ private void set_window_title (string title)
4697-+ {
4698-+ header_bar.set_title (title);
4699-+ this.set_title (title);
4700-+ }
4701-+
4702- private bool on_window_state_change_event (Gtk.Widget widget,
4703- Gdk.EventWindowState event)
4704- {
4705-@@ -1316,22 +1333,22 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
4706- {
4707- if (is_effects_selector_active)
4708- {
4709-- header_bar.set_title (_("Choose an Effect"));
4710-+ set_window_title (_("Choose an Effect"));
4711- }
4712- else
4713- {
4714- switch (current_mode)
4715- {
4716- case MediaMode.PHOTO:
4717-- header_bar.set_title (_("Take a Photo"));
4718-+ set_window_title (_("Take a Photo"));
4719- break;
4720-
4721- case MediaMode.VIDEO:
4722-- header_bar.set_title (_("Record a Video"));
4723-+ set_window_title (_("Record a Video"));
4724- break;
4725-
4726- case MediaMode.BURST:
4727-- header_bar.set_title (_("Take Multiple Photos"));
4728-+ set_window_title (_("Take Multiple Photos"));
4729- break;
4730- }
4731- }
4732---
4733-2.0.0.rc0
4734-
4735
4736=== modified file 'debian/patches/series'
4737--- debian/patches/series 2014-05-23 11:12:02 +0000
4738+++ debian/patches/series 2014-06-11 21:45:53 +0000
4739@@ -1,3 +1,1 @@
4740 use-plugins-good
4741-0001-Use-avatar-chooser-headerbar-only-when-requested.patch
4742-0002-Use-a-traditional-title-bar-when-requested.patch
4743
4744=== modified file 'docs/reference/Makefile.in'
4745--- docs/reference/Makefile.in 2014-05-02 17:49:55 +0000
4746+++ docs/reference/Makefile.in 2014-06-11 21:45:53 +0000
4747@@ -1,4 +1,4 @@
4748-# Makefile.in generated by automake 1.13.4 from Makefile.am.
4749+# Makefile.in generated by automake 1.14.1 from Makefile.am.
4750 # @configure_input@
4751
4752 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
4753@@ -449,6 +449,7 @@
4754 VALAC = @VALAC@
4755 VERSION = @VERSION@
4756 WARN_CFLAGS = @WARN_CFLAGS@
4757+WARN_CXXFLAGS = @WARN_CXXFLAGS@
4758 XGETTEXT = @XGETTEXT@
4759 XMLCATALOG = @XMLCATALOG@
4760 XMLLINT = @XMLLINT@
4761
4762=== modified file 'docs/reference/html/index.html'
4763--- docs/reference/html/index.html 2014-05-23 11:12:02 +0000
4764+++ docs/reference/html/index.html 2014-06-11 21:45:53 +0000
4765@@ -15,7 +15,7 @@
4766 <div>
4767 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">Cheese Reference Manual</p></th></tr></table></div>
4768 <div><p class="releaseinfo">
4769- for cheese 3.12.1
4770+ for cheese 3.12.2
4771 .
4772 The latest version of this documentation can be found on-line at
4773 <a class="ulink" href="http://developer.gnome.org/cheese/unstable/" target="_top">http://developer.gnome.org/cheese/unstable/</a>.
4774
4775=== modified file 'help/Makefile.in'
4776--- help/Makefile.in 2014-05-02 17:49:55 +0000
4777+++ help/Makefile.in 2014-06-11 21:45:53 +0000
4778@@ -1,4 +1,4 @@
4779-# Makefile.in generated by automake 1.13.4 from Makefile.am.
4780+# Makefile.in generated by automake 1.14.1 from Makefile.am.
4781 # @configure_input@
4782
4783 # Copyright (C) 1994-2013 Free Software Foundation, Inc.
4784@@ -232,6 +232,7 @@
4785 VALAC = @VALAC@
4786 VERSION = @VERSION@
4787 WARN_CFLAGS = @WARN_CFLAGS@
4788+WARN_CXXFLAGS = @WARN_CXXFLAGS@
4789 XGETTEXT = @XGETTEXT@
4790 XMLCATALOG = @XMLCATALOG@
4791 XMLLINT = @XMLLINT@
4792
4793=== modified file 'help/el/burst-mode.page'
4794--- help/el/burst-mode.page 2014-05-02 17:49:55 +0000
4795+++ help/el/burst-mode.page 2014-06-11 21:45:53 +0000
4796@@ -21,53 +21,48 @@
4797
4798 <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
4799
4800- <desc>Capture several photos with one button press in <gui>Burst</gui> mode. Change your pose in between each shot!</desc>
4801+ <desc>Λήψη πολλών φωτογραφιών με πάτημα ενός κουμπιού, Πατήστε στη λειτουργία <gui>Πολλαπλή φωτογράφηση</gui> . Αλλάξτε πόζα ανάμεσα σε κάθε φωτογραφία!</desc>
4802
4803 <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
4804- <mal:name> Δημήτρης Σπίγγος</mal:name>
4805+ <mal:name> Δημήτρης Σπίγγος</mal:name>
4806 <mal:email>dmtrs32@gmail.com</mal:email>
4807 <mal:years>2013, 2014</mal:years>
4808 </mal:credit>
4809
4810 <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
4811- <mal:name> Ευστάθιος Ιωσηφίδης</mal:name>
4812+ <mal:name> Ευστάθιος Ιωσηφίδης</mal:name>
4813 <mal:email>diamond_gr@freemail.gr</mal:email>
4814 <mal:years>2011</mal:years>
4815 </mal:credit>
4816
4817 <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
4818- <mal:name> Θάνος Τρυφωνίδης</mal:name>
4819+ <mal:name> Θάνος Τρυφωνίδης</mal:name>
4820 <mal:email>tomtryf@gmail.com</mal:email>
4821 <mal:years>2012</mal:years>
4822 </mal:credit>
4823 </info>
4824
4825- <title>Take photos in quick succession</title>
4826+ <title>Λήψη φωτογραφιών με γρήγορη διαδοχή</title>
4827
4828- <p>Χρησιμοποιήσετε την λειτουργία <gui>Πολλαπλής φωτογράφησης</gui> για να τραβήξετε αυτόματα πολλές φωτογραφίες στη σειρά. Είναι διασκεδαστικό αν αλλάζετε πόζες ανάμεσα στις φωτογραφίες! Για να χρησιμοποιήσετε την λειτουργία <gui>Πολλαπλής φωτογράφησης</gui>:</p>
4829+ <p>Χρησιμοποιήσετε τη λειτουργία <gui>Πολλαπλή φωτογράφηση</gui> για να τραβήξετε αυτόματα πολλές φωτογραφίες στη σειρά. Είναι ιδιαίτερα διασκεδαστικό αν αλλάζετε πόζα ανάμεσα στις φωτογραφίες! Για να χρησιμοποιήσετε τη λειτουργία <gui>Πολλαπλή φωτογράφηση</gui>:</p>
4830
4831 <steps>
4832 <item>
4833- <p>Make sure that you are in <gui>Burst</gui> mode. If you are, the
4834- <gui style="button">Burst</gui> button will be selected on the left side
4835- of the screen.</p>
4836- </item>
4837- <item>
4838- <p>Click the <gui style="button">Take multiple photos using a
4839- webcam</gui> button in the middle of the bottom panel, or press the
4840- <key>Space</key> key, to start taking photos.</p>
4841- <p>Από προεπιλογή, τέσσερις φωτογραφίες θα τραβηχτούν, με καθυστέρηση ενός δευτερολέπτου και αντίστροφη μέτρηση ανάμεσα στις φωτογραφίες.</p>
4842- </item>
4843- <item>
4844- <p>To stop recording, press the same button again. You can also press the
4845- <key>Esc</key> or <key>Space</key> key to stop recording.</p>
4846+ <p>Βεβαιωθείτε πως βρίσκεσθε στη λειτουργία <gui>Πολλαπλή φωτογράφηση</gui> . Αν αυτό ισχύει, θα επιλεγεί το κουμπί <gui style="button">Πολλαπλή φωτογράφηση</gui> στην αριστερή πλευρά της οθόνης.</p>
4847+ </item>
4848+ <item>
4849+ <p>Πατήστε το κουμπί <gui style="button">Λήψη πολλαπλών φωτογραφιών με χρήση δικτυακής κάμερας</gui> στη μέση του κάτω πίνακα, ή πατήστε το πλήκτρο <key>Space</key>, για να αρχίσετε να βγάζετε φωτογραφίες.</p>
4850+ <p>Από προεπιλογή, θα λαμβάνονται τέσσερις φωτογραφίες, με καθυστέρηση ενός δευτερολέπτου και αντίστροφη μέτρηση ανάμεσα στις φωτογραφίες.</p>
4851+ </item>
4852+ <item>
4853+ <p>Για να διακοπεί η εγγραφή, πατήστε ξανά το ίδιο κουμπί. Μπορείτε επίσης να πατήσετε το πλήκτρο <key>Esc</key> ή το <key>Space</key> για να σταματήσει η εγγραφή.</p>
4854 </item>
4855 </steps>
4856
4857 <section id="burst-preferences">
4858- <title>Αλλαγή προτιμήσεων <gui>Πολλαπλής φωτογράφησης</gui></title>
4859+ <title>Αλλαγή προτιμήσεων για την <gui>Πολλαπλή φωτογράφηση</gui></title>
4860
4861- <p>Μπορείτε να αλλάξετε πόσες φωτογραφίες θα βγαίνουν σε κάθε πολλαπλή φωτογράφηση και την διάρκεια της καθυστέρησης ανάμεσα τους:</p>
4862+ <p>Μπορείτε να αλλάξετε το πόσες φωτογραφίες θα λαμβάνονται σε κάθε πολλαπλή φωτογράφηση, καθώς και τη διάρκεια της καθυστέρησης ανάμεσα στις φωτογραφίες:</p>
4863
4864 <steps>
4865 <item>
4866@@ -78,11 +73,11 @@
4867 <terms>
4868 <item>
4869 <title>Αντίστροφη μέτρηση</title>
4870- <p>Αντίστροφη μέτρηση από το τρία πριν να ληφθεί η φωτογραφία.</p>
4871+ <p>Αντίστροφη μέτρηση από το τρία, πριν τη λήψη της φωτογραφίας.</p>
4872 </item>
4873 <item>
4874- <title>Ενεργοποίηση αναλαμπής</title>
4875- <p>Η οθόνη σας θα λάμψει όταν λαμβάνεται η φωτογραφία.</p>
4876+ <title>Ενεργοποίηση φλας</title>
4877+ <p>Η οθόνη σας θα λάμψει κατά τη λήψη της φωτογραφίας.</p>
4878 </item>
4879 <item>
4880 <title>Αριθμός φωτογραφιών</title>
4881@@ -90,9 +85,7 @@
4882 </item>
4883 <item>
4884 <title>Καθυστέρηση μεταξύ φωτογραφιών (δευτερόλεπτα)</title>
4885- <p>The delay between two photos. If you have the <gui>Countdown</gui>
4886- enabled, then this delay needs to be set to over four seconds for it
4887- to have any effect.</p>
4888+ <p>Η καθυστέρηση ανάμεσα σε δύο φωτογραφίες. Αν έχετε ενεργοποιήσει την <gui>Αντίστροφη μέτρηση</gui>, τότε αυτή η καθυστέρηση πρέπει να ορισθεί σε πάνω από τέσσερα δευτερόλεπτα για να μπορεί να έχει οποιοδήποτε αποτέλεσμα.</p>
4889 <!--<p>The delay between the last photo and the start of the next
4890 countdown. If <gui>Countdown</gui> is disabled, this is the delay
4891 between photos.</p>-->
4892
4893=== modified file 'help/el/effects-apply.page'
4894--- help/el/effects-apply.page 2014-03-03 22:07:51 +0000
4895+++ help/el/effects-apply.page 2014-06-11 21:45:53 +0000
4896@@ -19,22 +19,22 @@
4897
4898 <include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
4899
4900- <desc>Προσθέστε διασκεδαστικά εφέ στις φωτογραφίες και βίντεο σας, όπως να κάνετε τον εαυτό σας πράσινο ή παραμορφώνοντας την εικόνα σαν καθρέφτες.</desc>
4901+ <desc>Προσθέστε διασκεδαστικά εφέ στις φωτογραφίες και βίντεο σας, όπως να μετατρέψετε τον εαυτό σας σε πράσινο, ή αλλοιώνοντας την εικόνα όπως σε έναν παραμορφωτικό καθρέφτη.</desc>
4902
4903 <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
4904- <mal:name> Δημήτρης Σπίγγος</mal:name>
4905+ <mal:name> Δημήτρης Σπίγγος</mal:name>
4906 <mal:email>dmtrs32@gmail.com</mal:email>
4907 <mal:years>2013, 2014</mal:years>
4908 </mal:credit>
4909
4910 <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
4911- <mal:name> Ευστάθιος Ιωσηφίδης</mal:name>
4912+ <mal:name> Ευστάθιος Ιωσηφίδης</mal:name>
4913 <mal:email>diamond_gr@freemail.gr</mal:email>
4914 <mal:years>2011</mal:years>
4915 </mal:credit>
4916
4917 <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
4918- <mal:name> Θάνος Τρυφωνίδης</mal:name>
4919+ <mal:name> Θάνος Τρυφωνίδης</mal:name>
4920 <mal:email>tomtryf@gmail.com</mal:email>
4921 <mal:years>2012</mal:years>
4922 </mal:credit>
4923@@ -46,21 +46,17 @@
4924
4925 <steps>
4926 <item>
4927- <p>Click <gui style="button">Effects</gui>.</p>
4928+ <p>Κάντε κλικ στα <gui style="button">Εφέ</gui>.</p>
4929 </item>
4930 <item>
4931- <p>Select the effect you want to use by clicking one of the options or
4932- select <gui>No Effect</gui> if you don't want to use one.</p>
4933+ <p>Επιλέξτε τα τα εφέ που θέλετε να χρησιμοποιήσετε, κάνοντας κλικ σε μια από τις επιλογές, ή επιλέξτε το <gui>Χωρίς εφέ</gui> αν δε θέλετε να χρησιμοποιήσετε κάτι τέτοιο.</p>
4934 </item>
4935 </steps>
4936
4937- <p><app>Cheese</app> offers 35 effects, of which only 9 are shown on the
4938- first page. Click the back and forward arrows next to
4939- <gui style="button">Effects</gui> to navigate to the other pages.</p>
4940+ <p>Το <app>Cheese</app> προσφέρει 35 εφέ,από τα οποία μόνο τα 9 εμφανίζονται στην πρώτη σελίδα. Κάντε κλικ στα βέλη προς τα εμπρός και προς τα πίσω, δίπλα στα <gui>Εφέ</gui> για να περιηγηθείτε στις άλλες σελίδες.</p>
4941
4942 <figure>
4943- <title>Some of the effects, from left to right: Sepia, Shagadelic, Sobel
4944- (first row), Waveform, X-Ray, Warp (second row)</title>
4945+ <title>Μερικά από τα εφέ, από τα αριστερά προς στα δεξιά: Sepia, Shagadelic, Sobel (first row), Κυμματομορφή, Ακτίνες X, Warp (second row), Διόγκωση, Άκρη και Καθρέφτες</title>
4946 <media its:translate="no" type="image" src="figures/effects.png" width="529" height="264"/>
4947 </figure>
4948
4949
4950=== modified file 'help/el/el.po'
4951--- help/el/el.po 2014-05-02 17:49:55 +0000
4952+++ help/el/el.po 2014-06-11 21:45:53 +0000
4953@@ -4,16 +4,16 @@
4954 msgid ""
4955 msgstr ""
4956 "Project-Id-Version: gnome-devel-docs master\n"
4957-"POT-Creation-Date: 2014-01-11 22:26+0000\n"
4958-"PO-Revision-Date: 2014-01-11 17:37+0300\n"
4959-"Last-Translator: Dimitris Spingos (Δημήτρης Σπίγγος) <dmtrs32@gmail.com>\n"
4960+"POT-Creation-Date: 2014-04-23 03:02+0000\n"
4961+"PO-Revision-Date: 2014-04-23 14:01+0200\n"
4962+"Last-Translator: Tom Tryfonidis <tomtryf@gmail.com>\n"
4963 "Language-Team: www.gnome.gr\n"
4964 "Language: el\n"
4965 "MIME-Version: 1.0\n"
4966 "Content-Type: text/plain; charset=UTF-8\n"
4967 "Content-Transfer-Encoding: 8bit\n"
4968 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
4969-"X-Generator: Virtaal 0.7.1\n"
4970+"X-Generator: Poedit 1.6.4\n"
4971 "X-Project-Style: gnome\n"
4972
4973 #. Put one translator per line, in the form NAME <EMAIL>, YEAR1, YEAR2
4974@@ -21,153 +21,128 @@
4975 msgid "translator-credits"
4976 msgstr ""
4977 "Ελληνική μεταφραστική ομάδα GNOME\n"
4978-" Δημήτρης Σπίγγος <dmtrs32@gmail.com>, 2013, 2014\n"
4979-" Ευστάθιος Ιωσηφίδης <diamond_gr@freemail.gr>, 2011\n"
4980-" Θάνος Τρυφωνίδης <tomtryf@gmail.com>, 2012\n"
4981+" Δημήτρης Σπίγγος <dmtrs32@gmail.com>, 2013, 2014\n"
4982+" Ευστάθιος Ιωσηφίδης <diamond_gr@freemail.gr>, 2011\n"
4983+" Θάνος Τρυφωνίδης <tomtryf@gmail.com>, 2012\n"
4984+" Μαρία Θουκυδίδου <marablack3@gmail.com>\n"
4985 "Για περισσότερα δείτε http://www.gnome.gr/."
4986
4987 #. (itstool) path: credit/name
4988-#: C/index.page:9 C/burst-mode.page:13 C/effects-apply.page:9
4989-#: C/introduction.page:14 C/photo-delete.page:10 C/photo-save.page:10
4990-#: C/photo-take.page:18 C/photo-view.page:10 C/pref-countdown.page:13
4991-#: C/pref-flash.page:13 C/pref-image-properties.page:14
4992-#: C/pref-resolution.page:12 C/video-record.page:13
4993+#: C/burst-mode.page:14 C/effects-apply.page:13 C/index.page:12
4994+#: C/introduction.page:15 C/photo-delete.page:13 C/photo-save.page:13
4995+#: C/photo-take.page:19 C/photo-view.page:13 C/pref-countdown.page:14
4996+#: C/pref-flash.page:14 C/pref-image-properties.page:15
4997+#: C/pref-resolution.page:13 C/video-record.page:14
4998 msgid "Julita Inca"
4999 msgstr "Julita Inca"
5000
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: