Hello community, here is the log from the commit of package qiv for openSUSE:Factory checked in at 2011-11-28 14:49:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qiv (Old) and /work/SRC/openSUSE:Factory/.qiv.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qiv", Maintainer is "lnus...@suse.com" Changes: -------- --- /work/SRC/openSUSE:Factory/qiv/qiv.changes 2011-09-23 12:43:42.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.qiv.new/qiv.changes 2011-11-28 14:49:39.000000000 +0100 @@ -1,0 +2,12 @@ +Mon Nov 28 10:36:20 CET 2011 - jsl...@suse.de + +- new version 2.2.4 + * qiv-command: more examples + * only center image upon reload when center option is active + * make gdk options work again (e.g. --display) + * Do not follow symlinked directories, when using recursivedir option + * Add option to change cycle behavior after last picture + * Images were displayed twice when using --browse option + * Fix inconsistent behavior when using -x/-y/-z option + +------------------------------------------------------------------- Old: ---- qiv-2.2.3.tgz New: ---- qiv-2.2.4.tgz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qiv.spec ++++++ --- /var/tmp/diff_new_pack.GbgIRr/_old 2011-11-28 14:49:41.000000000 +0100 +++ /var/tmp/diff_new_pack.GbgIRr/_new 2011-11-28 14:49:41.000000000 +0100 @@ -1,7 +1,7 @@ # -# spec file for package qiv (Version 2.2.3) +# spec file for package qiv # -# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,16 +15,14 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # - - Name: qiv -Version: 2.2.3 +Version: 2.2.4 Release: 1 Summary: Probably the fastest and simplest image viewer on the planet Group: Productivity/Graphics/Viewers License: GPLv2+ Url: http://spiegl.de/qiv/ -Source0: http://spiegl.de/qiv/download/qiv-2.2.3.tgz +Source0: http://spiegl.de/qiv/download/qiv-%{version}.tgz BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: file-devel BuildRequires: gtk2-devel ++++++ qiv-2.2.3.tgz -> qiv-2.2.4.tgz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/Changelog new/qiv-2.2.4/Changelog --- old/qiv-2.2.3/Changelog 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/Changelog 2011-05-13 15:11:24.000000000 +0200 @@ -34,6 +34,28 @@ pw: Peter deWachter <pdewa...@gmail.com> ap: Akos Pasztory <akos.paszt...@gmail.com> +2.2.4 +===== + 02.05.2011 + [as] README: added note about obsoleted GTK v1 + + 28.12.2010 + [as] qiv-command: more examples from Clint Pachl <pa...@ecentryx.com> + + 02.11.2010 + [tw] only center image upon reload when center + option is active + [tw] Do not break install if using a non existing + target location (clemens fischer) + [tw] make gdk options work again (e.g. --display) + [tw] Do not follow symlinked directories, when + using recursivedir option (Goswin v. Brederlow) + [tw] Add option to change cycle behavior after last + picture. (patch by Nicolas Pouillard) + [tw] Images were displayed twice when using --browse + option. (patch by Adam Lee) + [tw] Fix inconsistent behavior when using -x/-y/-z option. + 2.2.3 ===== 10.01.2010 @@ -41,14 +63,14 @@ [tw] bring back scrollwheel functionality (Based upon a patch sent by "Johnny") Zoom in/out with left/right scroll and - forward/back buttons + forward/back buttons [tw] change loading of images from imlib2_loader to pixbuf_loader. Adds support for additional file types, e.g. pcx, ico, svg, wmf and better handling of transparency. [tw] use gdk_pixbuf to autorotate with EXIF tags instead of libexif. Note: needs at least GDK 2.12 - [tw] Resetting the image (pressing return) no longer + [tw] Resetting the image (pressing return) no longer destroys "transparency checkboard" [tw] Fix compilation issues with unusual linker defaults. Update solaris Makefile. @@ -71,7 +93,7 @@ [tw] avoid crash calling qiv -x without argument [ap] fix behaviour of "recursivedir" switch [as] added note in README and qiv.h explaining a - problem of includes with imlib2 up to v1.2 + problem of includes with imlib2 up to v1.2 [as] migrated notes in README from imlib1 to imlib2 [tw] migrated gdk_draw_text() to gdk_draw_layout() fixing wrong display of utf-8 filenames @@ -165,12 +187,12 @@ 24.04.04 [pre10] [jk] fixed qiv_display_text_window 24.04.04 [pre9] [ak] added patch by Joachim Kuebart (kueb...@mathematik.uni-ulm.de) if images is < 5 and PgUp is pressed, image_index might become negative.. - [mc] small patch that remove a warning with gcc 3.4 + [mc] small patch that remove a warning with gcc 3.4 19.04.04 [pre8] [jk] qiv_display_text_window update (Push any key..) - its really cool! :-) [ak] cleaned up README, qiv-command.example, manpage.. 19.04.04 [pre7] [jk] Fixed Help-Screen remove. Added qiv-command-stdout support, now "metacam" (EXIF-Header) or other tools can be used within qiv and - the output is shown in a box in the pixture like the helpscreen. + the output is shown in a box in the pixture like the helpscreen. 18.04.04 [pre6] [ak] All arrow-keys = normal moving. All arrow-keys+Shift = faster moving. NumPad-arrow-keys+NumLock = faster moving. @@ -182,7 +204,7 @@ 23.02.04 [pre2] [ak] fixed manpage (ignore_path_sort was wrong) 08.01.04 [pre1] [ak] Added patch by HaJo Schatz (h...@hajo.net): "--disable_grab, -G" Disable pointer/kbd grab in fullscreen mode - for Remote-Display stuff. + for Remote-Display stuff. 1.9 @@ -195,8 +217,8 @@ and fixed bugs related to background repainting with --bg_color 23.09.03 [pre17] [ak] added patch by Johannes Stezenbach <j...@convergence.de> which hides the mouse cursor after one second and redisplays it when the mouse - is moved. I also cleaned up bugs with the delay adjustments (F11/F12), and made - sure the 'q' key comes through even when starting with delay 0. + is moved. I also cleaned up bugs with the delay adjustments (F11/F12), and made + sure the 'q' key comes through even when starting with delay 0. 13.09.03 [pre16] [ak] added patch / undelete (link) replaced by rename. Now also works on FAT. 09.09.03 [pre15] [ak] added patch / delete (link) replaced by rename. Now also works on FAT. http://bugs.debian.org/209079 @@ -208,7 +230,7 @@ Now -d can contain 0.5 seconds or so.. 16.02.03 [pre11] [ak] added patch by Drew Cohan <drewco...@drewcohan.com> Key F11/F12 now in-/decrease the Slideshow-Delay (+/- 1 sec). - Think its maybe time for QIV v2.0 ?! :-) + Think its maybe time for QIV v2.0 ?! :-) 13.01.03 [pre10] [ak] added patch by J'raxis 270145 <softw...@jraxis.com> --file=<file> (-F) option to qiv to allow it to read image/directory names from a text file @@ -225,11 +247,11 @@ great patch to reduce flicker while moving in fullscreen :-) 26.08.02 [pre3] [ak] added patch by Simon Budig <simon.bu...@unix-ag.org> removed "-u". qiv is now detecting directorys. - added "-R" (readonly option). + added "-R" (readonly option). 10.08.02 [ak] added jpeg ".jpe" support (just the extension). 05.08.02 [pre2] [ak] added patch by Qef Richards <q...@rosies-dumplings.co.uk>: changed the option handling slightly so that invalid arguments to - options which want numbers will be detected and a suitable error message printed. + options which want numbers will be detected and a suitable error message printed. 20.07.02 [pre1] [ak] now using qiv_load_image after qiv-command (no segfaults anymore) @@ -269,7 +291,7 @@ 10.06.01 [pre9] [ak] added qiv_command_patch from p...@volker-wysk.de 03.06.01 [pre8] [ak] image_moving now uses func update_m_image. no screen clean first anymore -> faster moving :) zoom now uses update_z_image -> a little bit faster zoom (+0.1s?) - added README.TODO + added README.TODO 11.05.01 [pre7] [wd] Fixed window-resizing in non-fullscreen mode. Fixed combining -x with -m or -t. 02.05.01 [pre6] [wd] Fixed mouse-hiding on button-push when fullscreen. @@ -390,7 +412,7 @@ 25.07.00 [1.4] [ak] added image moving with left/right/up/down-keys! :) tried to fix reset_display_settings (b/g/c) but it dont work.. hm added zoom_out limits (64x64). - changed keys: now K and L rotate the image. + changed keys: now K and L rotate the image. 1.4 @@ -440,38 +462,38 @@ 27.04.99 [ak] added #include <string.h> to image.c 21.04.99 [df] changed Makefile to use the system's getopt if it's - availible, took the getopt section back out of - README, updated install-xscreensaver to use -fitsd - style options, fixed -h typo. + availible, took the getopt section back out of + README, updated install-xscreensaver to use -fitsd + style options, fixed -h typo. 21.04.99 [pa] Included GNU getopt_long sources and deleted the - non-getopt code from options.c. + non-getopt code from options.c. 20.04.99 [ak] kicked make test ;) now its in make install again. 20.04.99 [df] added HAVE_GETOPT_LONG conditional compilation stuff - for Solaris/FreeBSD, rescued xscreensaver stuff from - install.sh into Makefile, shuffled INSTALL into README - and reformatted a bit. + for Solaris/FreeBSD, rescued xscreensaver stuff from + install.sh into Makefile, shuffled INSTALL into README + and reformatted a bit. 20.04.99 [ak] kicked user_settings from qiv.h (nw in Makefile) added --help. small changes in manpage. 19.04.99 [df] rewrote Makefile (replacing install.sh), fixed syntax - of -e, rewrote option-parsing code to use getopt, axed - really long usage message, header file reorg. + of -e, rewrote option-parsing code to use getopt, axed + really long usage message, header file reorg. 17.04.99 [ak] removed prefix from install.sh. don't ask me why, but this don't works here with my bash 2.01 :( 15.04.99 [de] Makefile changes/additions (test/debug targets) - Added prefix to install script + Added prefix to install script 13.04.99 [ak] man page update, many tests, new image <g>. 08.04.99 [pa] fixed the "-d 0" problem :-) 07.04.99 [pa] fixed the slideshow/key problems from pre4 with some - glib versions. + glib versions. 06.04.99 [pa] slideshow fixes. [ak] removed old language.h/stuff. 02.04.99 [pa] Reorganized everything to use events and not to eat up - 100% CPU time. Got rid of sleep() in slideshow, thus - making qiv react faster. Random now works not only in - slideshow. In random non-slideshow mode, terms "next - image" and "previous image" are essentially the same, - as they both are random. Image jumping uses main - event handler now. + 100% CPU time. Got rid of sleep() in slideshow, thus + making qiv react faster. Random now works not only in + slideshow. In random non-slideshow mode, terms "next + image" and "previous image" are essentially the same, + as they both are random. Image jumping uses main + event handler now. 01.04.99 [pa] added utils.c patch for FreeBSD. 22.02.99 [to/ak] added 8bpp patch for better to_root drawing. @@ -481,14 +503,14 @@ 27.01.99 [ak] kicked the language stuff. updated manpage. - tested with newest libraries (gtk/glib 1.1.13, Imlib 1.9.2). + tested with newest libraries (gtk/glib 1.1.13, Imlib 1.9.2). 19.11.98 [ak] addec --center, -e for disabling window_centering 13.11.98 [de] speed_ups 10.11.98 [ak] configure script, directiries for language files. added language-information to qiv -v 09.11.98 [de] incorporated Roland Trique's <rtri...@pratique.fr> french - documentation - minor bug-fix to pointer/keyboard grabbing/ungrabbing + documentation + minor bug-fix to pointer/keyboard grabbing/ungrabbing 1.0 @@ -496,48 +518,48 @@ 05.11.98 [ak] fixed --do_grab for wm=0 added --display and --wm to man-page - made qiv ready for releasing 1.0 :-) - added error_handler for set_background_image... - painted a new and also wonderful <g> intro.png (with the GIMP). + made qiv ready for releasing 1.0 :-) + added error_handler for set_background_image... + painted a new and also wonderful <g> intro.png (with the GIMP). 03.11.98 [ak] added gdk_beep(); for bad images (error handler). 03.11.98 [de] better WM_HANDLE= support. better command_line support for Solaris. 03.11.98 [ak] added window_manager_handling.. the damm center_stuff seems - to be a general GDK problem :-( no way to fix it (at the moment).. - so YOU must tell qiv which WM you are using.. see README selection - "Center Problem".. + to be a general GDK problem :-( no way to fix it (at the moment).. + so YOU must tell qiv which WM you are using.. see README selection + "Center Problem".. 02.11.98 [de] removed getopt stuff (now qiv manually checks commandline - options) + options) 30.10.98 [ak] small changes in main.c: now --display :1 or so works. 27.10.98 [ak] added tga support to main.h/Makefile played with the "first window centered" problem.. - it's not fixed 100%, but better then bevore :) + it's not fixed 100%, but better then bevore :) 25.10.98 [de] changed bg_color option to use 24 bits (6 numbers - like HTML) - cleaned up move2trash function + cleaned up move2trash function 24.10.98 [de] added more color names 22.10.98 [de] --no_filter option works again - added --bg_color (-o) option to change root background color - when setting root background image with --root (-x) + added --bg_color (-o) option to change root background color + when setting root background image with --root (-x) 20.10.98 [de] modification to bcg variable names to remove warning on Solaris - mouse grabbing is no longer the default (use --do_grab (-a) to - grab the pointer in windowed mode). + mouse grabbing is no longer the default (use --do_grab (-a) to + grab the pointer in windowed mode). 18.10.98 [ak] removed error_xpm. now we set only the background_color to blue. painted a wonderfull intro.jpg <g> and added to make install. 17.10.98 [de] grouped functions into separate files 16.10.98 [de] added imlib dithering for 8 bit displays 15.10.98 [de] fixed another solaris issue with stdlib.h and random/srandom - (see the Makefile if you're having problems compiling) + (see the Makefile if you're having problems compiling) 15.10.98 [ak] more comments, small changes in man-page... 14.10.98 [de] added --version, -v switch for version information 13.10.98 [ak] added --no_grab, -a for disabling keyboard/mouse grabbing in windowed mode. added -y/-x also for "no getopt.h"-users ;) 11.10.98 [de] cleaned up code for 1.0 release - added x/y/z keys for setting bg (center/tile/stretched) while - qiv is running - removed x key from exit sequence - added keyboard/mouse grabs to qiv (now fullscreen works right) - changed mouse events to work off release instead of press - --root_s, -z shows the image stretched on root. + added x/y/z keys for setting bg (center/tile/stretched) while + qiv is running + removed x key from exit sequence + added keyboard/mouse grabs to qiv (now fullscreen works right) + changed mouse events to work off release instead of press + --root_s, -z shows the image stretched on root. 11.10.98 [ak] --root. -x now center the image on root (can be used with -m or so..). --root_t, -y shows the image tiled on root. 08.10.98 [ak] added pnm support @@ -555,7 +577,7 @@ 04.10.98 [ak] added render_time (x.xs) to title- and statusbar. changed statusbar_color from white to orange. - small code-cleanup. + small code-cleanup. 04.10.98 [de] added more stuff to manpage. 03.10.98 [ak] removed doc/ and added qiv.1 to install.sh 03.10.98 [de] created manpage :) @@ -563,15 +585,15 @@ terminator of some strings (char xyz[x+1]). 01.10.98 [ak] added --no_statusbar (-i) and i/I keys for on/off. added doc/ + install of README file. - small changes in usage (its now smaller). - fixed statusbar => works! :-) - statusbar is now white - added black (1 pixel) border. - Changes is now installed to. + small changes in usage (its now smaller). + fixed statusbar => works! :-) + statusbar is now white - added black (1 pixel) border. + Changes is now installed to. 30.09.98 [ak] fixed error_xpm.. now w=500 and h=400 in windowed and w=screen_x, h=screen_y (fullscreen) in fullscreen mode. - collor is now BLUE :-) like "bluewin95" :)) - statusbar added for fullscreen mode.. but its alpha, black - text without a background color or so at the moment.. + collor is now BLUE :-) like "bluewin95" :)) + statusbar added for fullscreen mode.. but its alpha, black + text without a background color or so at the moment.. 30.09.98 [ak] happy birthday to me.. happy.. <g> yes, i'm 20 now :) 29.09.98 [de] extension filter can be disabled now: --no_filter (-n) 28.09.98 [jk] fullscreen_mode: instead of blanking the whole window, @@ -602,7 +624,7 @@ 16.09.98 [fc] bugfix (floating point exception). 16.09.98 [de] "jt15[enter]" - qiv should go to image 15, "jb5[enter]" - qiv should go back 5 images to image 10, - "jf7[enter]" - qiv should go forward 7 images to image 17 + "jf7[enter]" - qiv should go forward 7 images to image 17 15.09.98 [de] usage + b/c/g again. 15.09.98 [ak] small "--help" changes. sys/time.h :) 15.09.98 [de] b/c/g fix + delete (move to .qiv-trash) funktion :-) @@ -660,7 +682,7 @@ 31.08.98: [ak] using gdk_imlib_kill_image for disabling Imlib-Caching. the caching is a verry good feature, but when you view 100 - pictures or so then your system begins to swap.. + pictures or so then your system begins to swap.. 30.08.98: [hm/ak] loading of more than one pictures (*.jpg or so) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/Makefile new/qiv-2.2.4/Makefile --- old/qiv-2.2.3/Makefile 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/Makefile 2011-05-13 15:11:24.000000000 +0200 @@ -127,13 +127,21 @@ install: $(PROGRAM) @echo "Installing QIV..." + @if [ ! -e $(PREFIX)/bin ]; then \ + install -d -m 0755 $(PREFIX)/bin; \ + echo install -d -m 0755 $(PREFIX)/bin; \ + fi install -s -m 0755 $(PROGRAM) $(PREFIX)/bin + @if [ ! -e $(PREFIX)/man/man1 ]; then \ + echo install -d -m 0755 $(PREFIX)/man/man1; \ + install -d -m 0755 $(PREFIX)/man/man1; \ + fi install -m 0644 $(PROGRAM).1 $(PREFIX)/man/man1 $(COMPRESS_PROG) $(PREFIX)/man/man1/$(PROGRAM).1 @if ./qiv -f ./intro.jpg ; \ then echo "-- Test Passed --" ; \ else echo "-- Test Failed --" ; \ fi - @echo -ne "\nDont forget to look into the \"qiv-command\" file and install it!\n-> cp qiv-command.example /usr/local/bin/qiv-command\n\n" + @echo "\nDont forget to look into the \"qiv-command\" file and install it!\n-> cp qiv-command.example /usr/local/bin/qiv-command\n\n" # the end... ;-) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/Makefile.Solaris new/qiv-2.2.4/Makefile.Solaris --- old/qiv-2.2.3/Makefile.Solaris 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/Makefile.Solaris 2011-05-13 15:11:24.000000000 +0200 @@ -129,13 +129,21 @@ install: $(PROGRAM) @echo "Installing QIV..." + @if [ ! -d $(PREFIX)/bin ]; then \ + install -d -m 0755 $(PREFIX)/bin; \ + echo install -d -m 0755 $(PREFIX)/bin; \ + fi install -s -m 0755 $(PROGRAM) $(PREFIX)/bin + @if [ ! -d $(PREFIX)/man/man1 ]; then \ + echo install -d -m 0755 $(PREFIX)/man/man1; \ + install -d -m 0755 $(PREFIX)/man/man1; \ + fi install -m 0644 $(PROGRAM).1 $(PREFIX)/man/man1 $(COMPRESS_PROG) $(PREFIX)/man/man1/$(PROGRAM).1 @if ./qiv -f ./intro.jpg ; \ then echo "-- Test Passed --" ; \ else echo "-- Test Failed --" ; \ fi - @echo -ne "\nDont forget to look into the \"qiv-command\" file and install it!\n-> cp qiv-command.example /usr/local/bin/qiv-command\n\n" + @echo "\nDont forget to look into the \"qiv-command\" file and install it!\n-> cp qiv-command.example /usr/local/bin/qiv-command\n\n" # the end... ;-) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/README new/qiv-2.2.4/README --- old/qiv-2.2.3/README 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/README 2011-05-13 15:11:24.000000000 +0200 @@ -81,7 +81,9 @@ qiv is designed to work with ANY gtk/gdk, it also should work with ANY version of Imlib of Linux (Intel/Mac), Solaris (SunOS) and FreeBSD. - As of version 2.2 imlib2 is required, as imlib1 is basically obsolete. + As of version 2.2 imlib2 and gdk-2.0 are required, as imlib1 + and gtk-1.2 are basically obsolete. To use autorotation based + on exif information gdk >= 2.12 is required. Up to release 1.3 of imlib2 there is a problem with the includes. Imlib2.h does not load Xlib.h. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/README.TODO new/qiv-2.2.4/README.TODO --- old/qiv-2.2.3/README.TODO 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/README.TODO 2011-05-13 15:11:24.000000000 +0200 @@ -38,15 +38,11 @@ jf[n] shortcuts. But for the most common case, I think it would be a very nice performance optimization. -- option to exit slideshow after showing all images - Such an option would allow the following: - - | while true ; do - | qiv -s --exit-on-endofslideshow -u mypictures/ - | done - - This wrapper would recognize added images. - - use nifty new features of imlib2 (compared to imlib1) I am sure there are lots! :-) +- add --geometry option (suggestion by A. Purugganan) + Such an option is common to many X application, unfortunately not + natively supported by gdk. Also the handling is a little bit tricky, + as qiv resizes itself with each new image. How should this option + be handled when changing to the next image? diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/debian/changelog new/qiv-2.2.4/debian/changelog --- old/qiv-2.2.3/debian/changelog 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/debian/changelog 2011-05-13 15:11:24.000000000 +0200 @@ -1,3 +1,15 @@ +qiv (2.2.4) unstable; urgency=low + + * new upstream version; see Changelog for details + + -- Andy Spiegl <debian.a...@spiegl.de> Mon, 02 May 2011 16:26:51 +0200 + +qiv (2.2.4pre) unstable; urgency=low + + * new upstream version; see Changelog for details + + -- Andy Spiegl <debian.a...@spiegl.de> Wed, 14 Apr 2010 18:00:00 +0200 + qiv (2.2.3) unstable; urgency=low * new upstream version; see Changelog for details diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/image.c new/qiv-2.2.4/image.c --- old/qiv-2.2.3/image.c 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/image.c 2011-05-13 15:11:24.000000000 +0200 @@ -215,10 +215,7 @@ qiv_exit(1); } set_desktop_image(q); - if(slide) - return; - else - qiv_exit(0); + qiv_exit(0); } gdk_window_set_background(q->win, im ? &image_bg : &error_bg); @@ -323,7 +320,7 @@ GDK_HINT_MIN_SIZE | GDK_HINT_MAX_SIZE); gdk_window_resize(q->win, q->win_w, q->win_h); } - + if (!(to_root || to_root_t || to_root_s)) gdk_window_show(q->win); } else { /* fullscreen */ @@ -336,7 +333,8 @@ attr.height=screen_y; q->win = gdk_window_new(NULL, &attr, GDK_WA_X|GDK_WA_Y); gdk_window_set_cursor(q->win, cursor); - gdk_window_show(q->win); + if (!(to_root || to_root_t || to_root_s)) + gdk_window_show(q->win); } q->bg_gc = gdk_gc_new(q->win); @@ -555,7 +553,7 @@ q->win_w = (gint)(q->orig_w * (1 + zoom_factor * 0.1)); q->win_h = (gint)(q->orig_h * (1 + zoom_factor * 0.1)); reset_mod(q); - center_image(q); + if (center) center_image(q); } void check_size(qiv_image *q, gint reset) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/main.c new/qiv-2.2.4/main.c --- old/qiv-2.2.3/main.c 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/main.c 2011-05-13 15:11:24.000000000 +0200 @@ -59,15 +59,15 @@ gettimeofday(&tv,NULL); srand(tv.tv_usec*1000000+tv.tv_sec); + /* Initialize GDK */ + + gdk_init(&argc,&argv); + /* Set up our options, image list, etc */ strncpy(select_dir, SELECT_DIR, sizeof select_dir); reset_mod(&main_img); options_read(argc, argv, &main_img); - /* Initialize GDK */ - - gdk_init(&argc,&argv); - /* Load things from GDK/Imlib */ qiv_main_loop = g_main_new(TRUE); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/main.h new/qiv-2.2.4/main.h --- old/qiv-2.2.3/main.h 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/main.h 2011-05-13 15:11:24.000000000 +0200 @@ -28,6 +28,7 @@ int filter = FILTER; gint center = CENTER; +gint cycle = 0; /* TRUE if cycle between images */ gint default_brightness = DEFAULT_BRIGHTNESS; gint default_contrast = DEFAULT_CONTRAST; gint default_gamma = DEFAULT_GAMMA; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/options.c new/qiv-2.2.4/options.c --- old/qiv-2.2.3/options.c 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/options.c 2011-05-13 15:11:24.000000000 +0200 @@ -23,7 +23,7 @@ extern char *optarg; extern int optind, opterr, optopt; -static char *short_options = "ab:c:d:efg:hilmno:pq:rstuvw:xyzA:BDF:GIMNPRSTW:X:"; +static char *short_options = "ab:c:Cd:efg:hilmno:pq:rstuvw:xyzA:BDF:GIMNPRSTW:X:"; static struct option long_options[] = { {"do_grab", 0, NULL, 'a'}, @@ -54,6 +54,7 @@ {"root_s", 0, NULL, 'z'}, {"select_dir", 1, NULL, 'A'}, {"browse", 0, NULL, 'B'}, + {"cycle", 0, NULL, 'C'}, {"no_sort", 0, NULL, 'D'}, {"file", 1, NULL, 'F'}, {"disable_grab", 0, NULL, 'G'}, @@ -273,6 +274,8 @@ break; case 'B': browse=1; break; + case 'C': cycle=1; + break; case 'D': need_sort = 0; break; case 'F': if(rreadfile(optarg) < 0) { @@ -349,18 +352,17 @@ } } - if (need_sort) { - if (browse) { - char *tmp = (char *)xmalloc(strlen(image_names[0])+1); - strcpy(tmp,image_names[0]); - rreaddir(dirname(image_names[0]),0); - qsort(image_names, images, sizeof *image_names, my_strcmp); - image_idx = find_image(images,image_names,tmp); - free(tmp); - } else { + if (browse) { + images = 0; /* avoid displaying same filename twice */ + char *tmp = (char *)xmalloc(strlen(image_names[0])+1); + strcpy(tmp,image_names[0]); + rreaddir(dirname(image_names[0]),0); + if (need_sort) { qsort(image_names, images, sizeof *image_names, my_strcmp); } - } else if (browse) { - rreaddir(dirname(image_names[0]),0); + image_idx = find_image(images,image_names,tmp); + free(tmp); + } else if (need_sort) { + qsort(image_names, images, sizeof *image_names, my_strcmp); } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/qiv-command.example new/qiv-2.2.4/qiv-command.example --- old/qiv-2.2.3/qiv-command.example 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/qiv-command.example 2011-05-13 15:11:24.000000000 +0200 @@ -11,8 +11,6 @@ ### ### Just put it in a directory that is in your path ### -### Syntax: qiv-command [pushed_number] [image_filename_with_full_path] -### ### Note: ### If the first line of the output is like "NEWNAME=xxxxxxx" then qiv ### thinks that the filename of the currently displayed image has @@ -21,8 +19,10 @@ # # some examples by Andy Spiegl <qiv.a...@spiegl.de> -# Created: 12. Mai 2002 -# Last change: 23. April 2007 +# Created: 2002-05-12 +# Last change: 2010-12-28 +# +# more examples (renaming, jpg comments) by Clint Pachl <pa...@ecentryx.com> # # needs jhead to rotate JPEG without loss of Exif Jpeg headers # jhead is: @@ -30,8 +30,9 @@ # used by most Digital Cameras. v2.6 by Matthias Wandel, Dec 26 2006 # http://www.sentex.net/~mwandel/jhead mwan...@sentex.net -pressed_key=$1 -filename=$2 +# Syntax: qiv-command [pressed_key] [image_filename_with_full_path] +pressed_key=$1 # key(s) pressed in qiv +filename=$2 # image filename with full path echo "You pressed the $pressed_key key while watching $filename" @@ -55,47 +56,81 @@ ;; - 1|2|3|4|5|6|7) + 1|2|3|4|5) + echo -ne "$pressed_key was pushed.\nStart your own programs by editing the\n\"$0\" file!"; + ;; + + 6) + # Modify comment header. Fire up an xterm running EDITOR to edit comment. + #xterm -e jhead -ce $filename + jhead -ce $filename + ;; + + 7) echo -ne "$pressed_key was pushed.\nStart your own programs by editing the\n\"$0\" file!"; ;; 8) # lossless rotation of JPG, without losing EXIF tags echo 2>&1 "Rotating to the left." - jhead -cmd "jpegtran -perfect -rotate 270 -progressive -outfile &o &i" $filename >/dev/null - # set timestamp of file to Date/Time when the photo was taken - jhead -ft $filename >/dev/null + jhead -cmd "jpegtran -perfect -rotate 270 -outfile &o &i" $filename >/dev/null + jhead -ft $filename >/dev/null # reset timestamp ;; 9) # lossless rotation of JPG, without losing EXIF tags echo 2>&1 "Rotating to the right." - jhead -cmd "jpegtran -perfect -rotate 90 -progressive -outfile &o &i" $filename >/dev/null - # set timestamp of file to Date/Time when the photo was taken - jhead -ft $filename >/dev/null - ;; - -# # with "^"-prefix: forced (i.e. possibly NOT lossless) rotation -# ^8) # rotate JPG, but possibly losing quality -# echo 2>&1 "Forcing rotation to the left." -# jhead -cmd "jpegtran -rotate 270 -progressive -outfile &o &i" $filename >/dev/null -# # set timestamp of file to Date/Time when the photo was taken -# jhead -ft $filename >/dev/null -# ;; - -# ^9) # rotate JPG, but possibly losing quality -# echo 2>&1 "Forcing rotation to the right." -# jhead -cmd "jpegtran -rotate 90 -progressive -outfile &o &i" $filename >/dev/null -# # set timestamp of file to Date/Time when the photo was taken -# jhead -ft $filename >/dev/null -# ;; + jhead -cmd "jpegtran -perfect -rotate 90 -outfile &o &i" $filename >/dev/null + jhead -ft $filename >/dev/null # reset timestamp + ;; + + # with "^"-prefix: forced (i.e. possibly NOT lossless) rotation + ^8) # rotate JPG, but possibly losing quality + echo 2>&1 "Forcing rotation to the left." + jhead -cmd "jpegtran -rotate 270 -outfile &o &i" $filename >/dev/null + jhead -ft $filename >/dev/null # reset timestamp + ;; + + ^9) # rotate JPG, but possibly losing quality + echo 2>&1 "Forcing rotation to the right." + jhead -cmd "jpegtran -rotate 90 -outfile &o &i" $filename >/dev/null + jhead -ft $filename >/dev/null # reset timestamp + ;; + + ^*) + # Rename image directly from qiv. The timestamp of the current image will be + # automatically embedded in the new filename. This action is invoked by typing: + # + # ^<new_img_name><RETURN> + # + # Echoing the `NEWNAME=new_img_name` line signals qiv to update it's file list + # with the new filename. + img_timestamp=$(date -r `stat -f '%m' $filename` +'%y%m%d%H%M%S') + new_img_name=${pressed_key#^} + new_img_name=`echo "$new_img_name" | tr ' ' '_'` + new_img_name=${new_img_name%.[Jj][Pp][Gg]}-${img_timestamp}.jpg + + [[ -f $new_img_name ]] && exit 1 + mv $filename $new_img_name + echo "NEWNAME=$new_img_name" + ;; V) qiv -h ;; *) - echo "Usage: $0 [0-9] or any other free key..." - echo "Within qiv you simply press a key from 0-9 or any other free key!" - echo "$pressed_key not defined yet. Quitting." + cat <<-EOF + Commands: + 0 show EXIF header + 6 edit JPEG comment + 8 lossless rotate left + 9 lossless rotate right + ^8 non-perfect rotate left (use if '8' fails) + ^9 non-perfect rotate right (use if '9' fails) + ^STRING rename current file to STRING + + Within qiv you simply press a key from 0-9 or any other unused key! + "$pressed_key" not defined yet. Quitting. + EOF exit 1 esac diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/qiv.1 new/qiv-2.2.4/qiv.1 --- old/qiv-2.2.3/qiv.1 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/qiv.1 2011-05-13 15:11:24.000000000 +0200 @@ -16,7 +16,7 @@ .br .br -Version: 2.2.3, released on 2010-01-10 +Version: 2.2.4, released on 2011-05-02 .br by Andy Spiegl - http://qiv.spiegl.de/ - qiv.a...@spiegl.de .br @@ -111,6 +111,9 @@ Set root background color to named color \fIx\fR or 24 bit hex RGB triple in the format \fI#RRGGBB\fR. .TP +.B \-C, \-\-cycle +Change cycle behaviour. qiv will exit after last picture has been shown. +.TP .B \-s, \-\-slide Start slideshow immediately. This can also be used for the desktop background (x/y/z). @@ -154,7 +157,7 @@ Store the selected files in \fIdir\fR (default is .qiv-select). .TP .B \-q, \-\-rotate \fIx\fB -Rotate 90(x=1),180(x=2),270(x=3) degrees clockwise\n" +Rotate 90(x=1),180(x=2),270(x=3) degrees clockwise .TP .B \-l, \-\-autorotate Autorotate JPEGs according to EXIF rotation tag. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/qiv.h new/qiv-2.2.4/qiv.h --- old/qiv-2.2.3/qiv.h 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/qiv.h 2011-05-13 15:11:24.000000000 +0200 @@ -25,8 +25,8 @@ #include <X11/extensions/xf86vmode.h> // for XF86VidModeGetModeLine */ -#define VERSION "2.2.3" -#define VERSION_FULL "QIV - Quick Image Viewer v2.2.3 - http://qiv.spiegl.de/" +#define VERSION "2.2.4" +#define VERSION_FULL "QIV - Quick Image Viewer v2.2.4 - http://qiv.spiegl.de/" #define TRASH_DIR ".qiv-trash" #define SELECT_DIR ".qiv-select" #define SLIDE_DELAY 3000 /* milliseconds */ @@ -116,6 +116,7 @@ extern int filter; extern gint center; +extern gint cycle; extern gint default_brightness; extern gint default_contrast; extern gint default_gamma; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qiv-2.2.3/utils.c new/qiv-2.2.4/utils.c --- old/qiv-2.2.3/utils.c 2010-01-10 22:39:08.000000000 +0100 +++ new/qiv-2.2.4/utils.c 2011-05-13 15:11:24.000000000 +0200 @@ -429,8 +429,9 @@ image_idx = (image_idx + direction) % images; if (image_idx < 0) image_idx += images; + else if (cycle && image_idx == 0) + qiv_exit(0); } - } int checked_atoi (const char *s) @@ -472,6 +473,7 @@ " --browse, -B Scan directory of file for browsing\n" " --center, -e Disable window centering\n" " --contrast, -c x Set contrast to x (-32..32)\n" + " --cycle, -C do not cycle after last image\n" " --display x Open qiv window on display x\n" " --do_grab, -a Grab the pointer in windowed mode\n" " --disable_grab, -G Disable pointer/kbd grab in fullscreen mode\n" @@ -590,20 +592,22 @@ strcmp(entry->d_name,TRASH_DIR) == 0) continue; snprintf(name, sizeof name, "%s/%s", cdirname, entry->d_name); - if (stat(name, &sb) >= 0 && S_ISDIR(sb.st_mode)) { - if (!recursive) - continue; - rreaddir(name,1); - } - else { - if (images >= max_image_cnt) { - max_image_cnt += 8192; - if (!image_names) - image_names = (char**)xmalloc(max_image_cnt * sizeof(char*)); - else - image_names = (char**)xrealloc(image_names,max_image_cnt*sizeof(char*)); + if (lstat(name, &sb) >= 0) { + if (S_ISDIR(sb.st_mode)) { + if (!recursive) + continue; + rreaddir(name,1); + } + else { + if (images >= max_image_cnt) { + max_image_cnt += 8192; + if (!image_names) + image_names = (char**)xmalloc(max_image_cnt * sizeof(char*)); + else + image_names = (char**)xrealloc(image_names,max_image_cnt*sizeof(char*)); + } + image_names[images++] = strdup(name); } - image_names[images++] = strdup(name); } } closedir(d); -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org