From: root Date: Fri, 15 Jan 2010 07:50:00 +0000 (+0900) Subject: tsst X-Git-Url: http://git.maemo.org/git/?p=skippy-xd;a=commitdiff_plain;h=18dc514cab362f73c916a59f449a4134938e3f52;hp=c6e2f3a0576dfcb93d45328a40b3659aefc0473b tsst --- diff --git a/Makefile b/Makefile index 3a75faf..2066a21 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ PREFIX = /usr/ -BINDIR = ${PREFIX}/bin +BINDIR = ${PREFIX}/sbin X11PREFIX = /usr/X11R6 diff --git a/clientwin.c b/clientwin.c index 25eea4d..b0a890d 100644 --- a/clientwin.c +++ b/clientwin.c @@ -358,7 +358,7 @@ int clientwin_handle(ClientWin *cw, XEvent *ev) { if((ev->type == ButtonRelease && ev->xbutton.button == 1 && cw->mainwin->pressed == cw)) { - /*if((ev->xbutton.x >= 0 && ev->xbutton.y >= 0 && ev->xbutton.x < cw->mini.width && ev->xbutton.y < cw->mini.height))*/ + if((ev->xbutton.x >= 0 && ev->xbutton.y >= 0 && ev->xbutton.x < cw->mini.width && ev->xbutton.y < cw->mini.height)) childwin_focus(cw); cw->mainwin->pressed = 0; return 1; @@ -372,10 +372,8 @@ clientwin_handle(ClientWin *cw, XEvent *ev) else if(ev->xkey.keycode == cw->mainwin->key_right) focus_right(cw); else if(ev->xkey.keycode == cw->mainwin->key_f8) - client_msg(cw->mainwin->dpy, cw->client.window, "_NET_CLOSE_WINDOW", - 0, 0, 0, 0, 0); - /*client_msg(cw->mainwin->dpy, cw->client.window, "_NET_WM_STATE", - 1, XInternAtom(cw->mainwin->dpy, "_NET_WM_STATE_FULLSCREEN", False), 0, 0, 0);*/ + client_msg(cw->mainwin->dpy, cw->client.window, "_NET_CLOSE_WINDOW", + 0, 0, 0, 0, 0); else if(ev->xkey.keycode == cw->mainwin->key_enter || ev->xkey.keycode == cw->mainwin->key_space) { childwin_focus(cw); return 1; diff --git a/debian/changelog b/debian/changelog index 14d7f49..e604c74 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,11 +1,20 @@ -Skippy-XD changelog - -0.5.0 -- "Damage, Inc." - - 'Lazy transparency' mode: let xcompmgr take care of alpha-blending the - mini-windows. - - Tooltip can have drop-shadow text, and can be translucent - - Read config from ~/.skippy-xd.rc since the configuration options have - changed - - Branched from 'regular' skippy, switched from Imlib2 to XRender - rendering, removed the old window snapshot code and replaced it with - XComposite / XDamage stuff +skippy-xd (0.5.0-maemo3) unstable; urgency=low + + * Corrected ownership and permissions on /home/user/.skippy-xd.rc + + -- t_moyashi Tue, 12 Jan 2010 21:10:00 +0900 + + +skippy-xd (0.5.0-maemo2) unstable; urgency=low + + * Corrected ownership and permissions on /home/user/.skippy-xd.rc + + -- t_moyashi Tue, 12 Jan 2010 19:10:00 +0900 + + +skippy-xd (0.5.0-maemo1) unstable; urgency=low + + * Initial release + + -- t_moyashi Tue, 12 Jan 2010 15:12:19 +0900 + diff --git a/debian/compat b/debian/compat new file mode 100644 index 0000000..7ed6ff8 --- /dev/null +++ b/debian/compat @@ -0,0 +1 @@ +5 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..84fd1ec --- /dev/null +++ b/debian/control @@ -0,0 +1,18 @@ +Source: skippy-xd +Section: x11 +Priority: optional +Maintainer: tamanegimoyashi +Build-Depends: debhelper (>= 5), libxau-dev, libxext-dev, libx11-dev, libimlib2-dev, libxcomposite-dev, libxdamage-dev, libxft-dev, libxmu-dev, libxrender-dev +Standards-Version: 0.5.0 +Homepage: http://thegraveyard.org/skippy.php + +Package: skippy-xd +Architecture: any +Suggests: mcedit +Depends: libx11-6, libxau6, libxext6, libimlib2, libxcomposite1, libxdamage1, libxft2, libxmu6, libxrender1 +Description: full-screen X11 task/window switcher, similar to OSX Expose + Skippy provides an alternative to taskbars or regular task-switchers, + by showing full-screen view of all the open windows on the current + desktop. You can navigate among the windows and select using the + mouse or keyboard. Skippy will work with any NETWM or GNOME WM Specs + compliant window-manager. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..e9ee2fb --- /dev/null +++ b/debian/copyright @@ -0,0 +1,22 @@ +This package was debianized by TamanegiMoyashi on +Tue, 12 Jan 2010 15:12:19 +0900. + +It was downloaded from + +Upstream Author(s): + + + +Copyright: + + + +License: + + GPL + +The Debian packaging is (C) 2010, TamanegiMoyashi and +is licensed under the GPL, see `/usr/share/common-licenses/GPL'. + +# Please also look if there are files or directories which have a +# different copyright/license attached and list them here. diff --git a/debian/dirs b/debian/dirs new file mode 100644 index 0000000..cdf4a9d --- /dev/null +++ b/debian/dirs @@ -0,0 +1,3 @@ +usr/sbin +usr/share/skippy-xd +etc/init.d diff --git a/debian/docs b/debian/docs new file mode 100644 index 0000000..e69de29 diff --git a/debian/postinst b/debian/postinst new file mode 100755 index 0000000..d293f5a --- /dev/null +++ b/debian/postinst @@ -0,0 +1,7 @@ +#! /bin/sh +if [ -e /home/user/.skippy-xd.rc ] ; then + chown user:users /home/user/.skippy-xd.rc + chmod 664 /home/user/.skippy-xd.rc +fi +update-rc.d skippy-xd_maemo defaults 99 +/etc/init.d/skippy-xd_maemo start \ No newline at end of file diff --git a/debian/prerm b/debian/prerm new file mode 100755 index 0000000..7f55a23 --- /dev/null +++ b/debian/prerm @@ -0,0 +1,3 @@ +#! /bin/sh +/etc/init.d/skippy-xd_maemo stop +update-rc.d -f skippy-xd_maemo remove diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..cb5f602 --- /dev/null +++ b/debian/rules @@ -0,0 +1,114 @@ +#!/usr/bin/make -f +# -*- makefile -*- +# Sample debian/rules that uses debhelper. +# This file was originally written by Joey Hess and Craig Small. +# As a special exception, when this file is copied by dh-make into a +# dh-make output file, you may use that output file without restriction. +# This special exception was added by Craig Small in version 0.37 of dh-make. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + + +CFLAGS = -Wall -g + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + CFLAGS += -O0 +else + CFLAGS += -O2 +endif + +configure: configure-stamp +configure-stamp: + dh_testdir + # Add here commands to configure the package. + + touch configure-stamp + + +build: build-stamp + +build-stamp: configure-stamp + dh_testdir + + # Add here commands to compile the package. + $(MAKE) + #docbook-to-man debian/skippy-xd.sgml > skippy-xd.1 + + touch $@ + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + + # Add here commands to clean up after the build process. + $(MAKE) clean + + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/skippy-xd. + $(MAKE) DESTDIR=$(CURDIR)/debian/skippy-xd install + +# dh_installdirs + mkdir -p $(CURDIR)/debian/skippy-xd/usr/share/skippy-xd + mkdir -p $(CURDIR)/debian/skippy-xd/etc/init.d/ + mkdir -p $(CURDIR)/debian/skippy-xd/home/user + mkdir -p $(CURDIR)/debian/skippy-xd/DEBIAN + + cp -Ra $(CURDIR)/skippy-xd.rc-default \ + $(CURDIR)/debian/skippy-xd/home/user/.skippy-xd.rc + cp -a $(CURDIR)/skippy-bg* \ + $(CURDIR)/debian/skippy-xd/usr/share/skippy-xd/ + cp -a $(CURDIR)/skippy-xd_maemo.init.sh \ + $(CURDIR)/debian/skippy-xd/etc/init.d/skippy-xd_maemo + chown user:users $(CURDIR)/debian/skippy-xd/home/user/.skippy-xd.rc +# chmod 666 $(CURDIR)/debian/skippy-xd/home/user/.skippy-xd.rc + chmod +x $(CURDIR)/debian/skippy-xd/etc/init.d/skippy-xd_maemo + cp -a $(CURDIR)/debian/skippy-xd.control $(CURDIR)/debian/skippy-xd/DEBIAN/control + cp -a $(CURDIR)/debian/compat $(CURDIR)/debian/skippy-xd/DEBIAN/ + + +# Build architecture-independent files here. +binary-indep: build install +# We have nothing to do by default. + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot +# dh_installchangelogs CHANGELOG +# dh_installdocs +# dh_installexamples +# dh_install +# dh_installmenu +# dh_installdebconf +# dh_installlogrotate +# dh_installemacsen +# dh_installpam +# dh_installmime +# dh_python +# dh_installinit +# dh_installcron +# dh_installinfo +# dh_installman + dh_link + dh_strip +# dh_compress + dh_fixperms +# dh_perl +# dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install configure diff --git a/debian/skippy-xd.control b/debian/skippy-xd.control new file mode 100644 index 0000000..20a7ec4 --- /dev/null +++ b/debian/skippy-xd.control @@ -0,0 +1,20 @@ +Package: skippy-xd +Version: 0.5.0-maemo3 +Section: x11 +Priority: optional +Architecture: armel +Essential: no +Suggests: mcedit +Maintainer: TamanegiMoyashi +Conflicts: +Replaces: +Provides: +Source: +Description: full-screen X11 task/window switcher, similar to OSX Expose + Skippy provides an alternative to taskbars or regular task-switchers, + by showing full-screen view of all the open windows on the current + desktop. You can navigate among the windows and select using the + mouse or keyboard. Skippy will work with any NETWM or GNOME WM Specs + compliant window-manager. +Depends: libxau6, libxext6, libimlib2, libxcomposite1, libxdamage1, libxft2, libx11, libxmu6, libxrender1 + diff --git a/skippy-bg-l.jpg b/skippy-bg-l.jpg new file mode 100644 index 0000000..348ca17 Binary files /dev/null and b/skippy-bg-l.jpg differ diff --git a/skippy-bg-p.jpg b/skippy-bg-p.jpg new file mode 100644 index 0000000..c4eed5c Binary files /dev/null and b/skippy-bg-p.jpg differ diff --git a/skippy-debian.patch b/skippy-debian.patch deleted file mode 100644 index b91c75d..0000000 --- a/skippy-debian.patch +++ /dev/null @@ -1,475 +0,0 @@ ---- skippy-0.5.1rc1.orig/debian/docs -+++ skippy-0.5.1rc1/debian/docs -@@ -0,0 +1 @@ -+debian/README.Debian ---- skippy-0.5.1rc1.orig/debian/menu -+++ skippy-0.5.1rc1/debian/menu -@@ -0,0 +1,2 @@ -+?package(skippy):needs="X11" section="Apps/Tools"\ -+ title="skippy" command="/usr/bin/skippy" ---- skippy-0.5.1rc1.orig/debian/control -+++ skippy-0.5.1rc1/debian/control -@@ -0,0 +1,20 @@ -+Source: skippy -+Section: x11 -+Priority: optional -+Maintainer: Niv Altivanik (Debian Packages) -+Build-Depends: debhelper (>= 4.1.0), libxft-dev, libimlib2-dev, libxmu-dev, cdbs, libpcre3-dev -+Standards-Version: 3.6.1 -+ -+Package: skippy -+Architecture: any -+Depends: ${shlibs:Depends} -+Description: full-screen X11 task/window switcher, similar to OSX Expose -+ Skippy provides an alternative to taskbars or regular task-switchers, -+ by showing full-screen view of all the open windows on the current -+ desktop. You can navigate among the windows and select using the -+ mouse or keyboard. Skippy will work with any NETWM or GNOME WM Specs -+ compliant window-manager. -+ . -+ If you are using X.org's Xserver with the XDamage, Xcomposite, and -+ XFixes extensions, you probably want skippy-xd instead. -+ (they will be packaged in debian when X.org is available). ---- skippy-0.5.1rc1.orig/debian/rules -+++ skippy-0.5.1rc1/debian/rules -@@ -0,0 +1,22 @@ -+#!/usr/bin/make -f -+# -*- makefile -*- -+ -+include /usr/share/cdbs/1/rules/debhelper.mk -+include /usr/share/cdbs/1/class/makefile.mk -+include /usr/share/cdbs/1/rules/simple-patchsys.mk -+ -+DEB_MAKE_INVOKE := CFLAGS="$(CFLAGS)" make -+DEB_MAKE_CLEAN_TARGET := clean -+DEB_MAKE_BUILD_TARGET := all -+DEB_MAKE_INSTALL_TARGET := install DESTDIR=$(CURDIR)/debian/skippy/ PREFIX=/usr/ -+DEB_INSTALL_MANPAGES_skippy := debian/skippyrc.1 -+ -+install/skippy:: -+ mkdir -p $(CURDIR)/debian/skippy/etc/X11/skippy/ -+ mkdir -p $(CURDIR)/debian/skippy/usr/share/doc/skippy/ -+ -+ cp -a $(CURDIR)/skippyrc-default \ -+ $(CURDIR)/debian/skippy/etc/X11/skippy/skippyrc -+ cp -a $(CURDIR)/debian/examples \ -+ $(CURDIR)/debian/skippy/usr/share/doc/skippy -+ cat $(CURDIR)/skippyrc-default >> $(CURDIR)/debian/skippy/usr/share/doc/skippy/examples/skippyrc-default ---- skippy-0.5.1rc1.orig/debian/watch -+++ skippy-0.5.1rc1/debian/watch -@@ -0,0 +1,2 @@ -+version=2 -+http://thegraveyard.org/files/skippy-([0-9]+.*)\.tar\.bz2 ---- skippy-0.5.1rc1.orig/debian/changelog -+++ skippy-0.5.1rc1/debian/changelog -@@ -0,0 +1,53 @@ -+skippy (0.5.1rc1-1) unstable; urgency=low -+ -+ * The "All Bugs Free Release". -+ * New Upstream Release. -+ . ported debian/patches/10_config_file_overflow_fix.patch to the new code. -+ * Fixed the watch file. -+ * Bug fix: "skippy's postinst should not echo", thanks to Michael Urman -+ (Closes: #302091). -+ . removed the skippy.postinst notification, -+ ... let's hope the user will find the doc. -+ * Bug fix: "~/.skippyrc not loaded", thanks to Nick Hastings -+ (Closes: #302131). -+ . my patch was broken, this bug in fact was a missplaced printf. -+ -+ -- Niv Altivanik (Debian Packages) Wed, 30 Mar 2005 15:11:45 +0200 -+ -+skippy (0.5.0-3) unstable; urgency=low -+ -+ * The "Documentation Bugs Free Release". -+ * Bug fix: "README.Debian mistake: XSession.d instead of Xsession.d", -+ thanks to Adam Porter (Closes: #302055). -+ . fixed the (last ?) typo in README.Debian. -+ * Added a block to README.Debian about single user use -+ -+ -- Niv Altivanik (Debian Packages) Wed, 30 Mar 2005 01:03:56 +0200 -+ -+skippy (0.5.0-2) unstable; urgency=low -+ -+ * Added a note about auto-startup of skippy to Readme.Debian, skippy.postinst -+ and created the /usr/share/doc/skippy/examples directory. -+ (thanks to Steve Kemp). -+ * Added 11_find_skippyrc_in_etc.patch and copied the default skippyrc there. -+ (thanks to David Moreno Garza). -+ * Bug fix: "skippy: man page issues", thanks to Andre Lehovich and Zack Cerza -+ (Closes: #301581). -+ . the default skippyrc is now on the right place. -+ . fixed typo, removed useless SYNOPSYS field -+ * Bug fix: "Error:BadAccess (attempt to access private resource -+ denied); on startup", thanks to Wesley J. Landaker (Closes: #300991). -+ . Added a note on the README file. -+ -+ -- Niv Altivanik (Debian Packages) Sun, 27 Mar 2005 13:26:00 +0200 -+ -+skippy (0.5.0-1) unstable; urgency=low -+ -+ * Initial Release. -+ * Fixed typos and first packages stupidity, thanks to Steve Greenland. -+ . .skippyrc manpage. -+ . Description: field. -+ * Moved package to cdbs -+ * Uploaded to Debian (closes: #259096) -+ -+ -- Niv Altivanik (Debian Packages) Sun, 30 Jan 2005 01:42:41 +0100 ---- skippy-0.5.1rc1.orig/debian/manpages -+++ skippy-0.5.1rc1/debian/manpages -@@ -0,0 +1,2 @@ -+debian/skippy.1 -+debian/skippyrc.1 ---- skippy-0.5.1rc1.orig/debian/compat -+++ skippy-0.5.1rc1/debian/compat -@@ -0,0 +1 @@ -+4 ---- skippy-0.5.1rc1.orig/debian/skippy.1 -+++ skippy-0.5.1rc1/debian/skippy.1 -@@ -0,0 +1,75 @@ -+.\" Hey, EMACS: -*- nroff -*- -+.\" -+.\" -+.\" This manpage is free software; you can redistribute it and/or modify -+.\" it under the terms of the GNU General Public License as published by -+.\" the Free Software Foundation; version 2 dated June, 1991. -+.\" -+.\" This package is distributed in the hope that it will be useful, -+.\" but WITHOUT ANY WARRANTY; without even the implied warranty of -+.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+.\" GNU General Public License for more details. -+.\" -+.\" You should have received a copy of the GNU General Public License -+.\" along with this package; if not, write to the Free Software -+.\" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -+.\" 02111-1307, USA. -+.\" -+.\" On Debian systems, the complete text of the GNU General Public -+.\" License can be found in the file `/usr/share/common-licenses/GPL'. -+.\" -+.\" -+.\" First parameter, NAME, should be all caps -+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection -+.\" other parameters are allowed: see man(7), man(1) -+.TH SKIPPY 1 "December 6, 2004" -+.\" Please adjust this date whenever revising the manpage. -+.\" -+.\" Some roff macros, for reference: -+.\" .nh disable hyphenation -+.\" .hy enable hyphenation -+.\" .ad l left justify -+.\" .ad b justify to both left and right margins -+.\" .nf disable filling -+.\" .fi enable filling -+.\" .br insert line break -+.\" .sp insert n+1 empty lines -+.\" for manpage-specific macros, see man(7) -+.SH NAME -+skippy \- Full Screen Task Switcher for X11 -+.SH SYNOPSIS -+.B skippy -+.SH DESCRIPTION -+.\" TeX users may be more comfortable with the \fB\fP and -+.\" \fI\fP escape sequences to invode bold face and italics, -+.\" respectively. -+\fBskippy\fP is a program that allows you to manage your windows in an -+efficient way. It is highly inspired by Apple Expose. -+.SH NOTE -+If you are using the X.org X server, there is a version of skippy, -+called skippy-xd that makes use of the new XDamage, XComposite and -+XFixes extensions. I suggest you use the xd version instead. -+ -+Please note that skippy won't launch when another application is using -+X_GrabKey ( such as xbindkeys ), please see the README.Debian file for -+more informations. -+ -+.SH USAGE -+Press the hotkey (the default hotkey is F11). Then choose a window -+with either the keyboard (you can use up, down, left and right to -+navigate) or the mouse (just hover over a window) and activate it by -+pressing the left mouse button or the return or spacebar key. -+ -+.SH FILES -+.BR ~/.skippyrc -+.BR /etc/X11/skippy/skippyrc -+ -+.SH SEE ALSO -+.BR skippyrc (1), -+.BR skippy-xd (1) -+ -+.SH AUTHOR -+skippy was written by Hyriand . -+.PP -+This manual page was written by Niv ALTIVANIK , -+for the Debian project (but may be used by others). ---- skippy-0.5.1rc1.orig/debian/README.Debian -+++ skippy-0.5.1rc1/debian/README.Debian -@@ -0,0 +1,25 @@ -+If you wish to have skippy automatically launched at X startup for all -+your users please add the /usr/share/doc/skippy/examples/99Skippy file -+to your /etc/X11/Xsession.d/ -+ -+If you only wish to have skippy loaded for single users, please add -+skippy & -+to your ~/.xsession ( for *dm based logins ) and ~/.xinitrc ( for startx -+based X logins ) -+ -+-- -+ -+Warning: skippy won't work in conjunction of others x-key-grabbing application, -+such as xbindkeys for example -+ -+If you get this error: -+ -+X Error of failed request: BadAccess (attempt to access private resource denied) -+ Major opcode of failed request: 33 (X_GrabKey) -+ Serial number of failed request: 90 -+ Current serial number in output stream: 90 -+ -+look for key-grabbing applications, and please report me if some package -+auto-launches at X startup per default and breaks skippy. -+ -+ -- Niv Altivanik (Debian Packages) , Wed Mar 30 01:03:51 2005 ---- skippy-0.5.1rc1.orig/debian/patches/10_config_file_overflow_fix.patch -+++ skippy-0.5.1rc1/debian/patches/10_config_file_overflow_fix.patch -@@ -0,0 +1,70 @@ -+--- skippy-0.5.1rc1/config.c 2004-09-13 19:41:37.000000000 +0200 -++++ skippy-0.5.1rc1-fixed/config.c 2005-03-30 15:17:18.000000000 +0200 -+@@ -70,14 +70,16 @@ -+ } -+ -+ static dlist * -+-config_parse(char *config) -++config_parse(char *config, long flen) -+ { -+ regex_t re_section, re_empty, re_entry; -+ regmatch_t matches[5]; -+- char line[8192], *section = 0; -++ char *line, *section = 0; -+ int ix = 0, l_ix = 0; -+ dlist *new_config = 0; -+ -++ line = (char *) malloc(sizeof(char)*flen); -++ -+ regcomp(&re_section, "^[[:space:]]*\\[[[:space:]]*([[:alnum:]]*?)[[:space:]]*\\][[:space:]]*$", REG_EXTENDED); -+ regcomp(&re_empty, "^[[:space:]]*#|^[[:space:]]*$", REG_EXTENDED); -+ regcomp(&re_entry, "^[[:space:]]*([[:alnum:]]+)[[:space:]]*=[[:space:]]*(.*?)[[:space:]]*$", REG_EXTENDED); -+@@ -117,24 +119,28 @@ -+ regfree(&re_empty); -+ regfree(&re_entry); -+ -++ free(line); -++ -+ return new_config; -+ } -+ -+ #else /* Use PCRE regexps */ -+ -+ static dlist * -+-config_parse(char *config) -++config_parse(char *config, long flen) -+ { -+ pcre * re_section, * re_empty, * re_entry; -+ const char * pcre_err; -+ int pcre_err_pos; -+ int ovec[30], matches; -+ -+- char line[8192]; -++ char *line; -+ const char *section = 0; -+ int ix = 0, l_ix = 0; -+ -+ dlist * new_config = 0; -++ -++ line = (char *) malloc(sizeof(char)*flen); -+ -+ re_section = pcre_compile("^\\s*\\[\\s*(\\w*)\\s*\\]\\s*$", 0, &pcre_err, &pcre_err_pos, 0); -+ re_empty = pcre_compile("^\\s*#|^\\s*$", 0, &pcre_err, &pcre_err_pos, 0); -+@@ -180,6 +186,8 @@ -+ pcre_free(re_section); -+ pcre_free(re_empty); -+ pcre_free(re_entry); -++ -++ free(line); -+ -+ return new_config; -+ } -+@@ -223,7 +231,7 @@ -+ -+ fclose(fin); -+ -+- config = config_parse(data); -++ config = config_parse(data, flen); -+ -+ free(data); -+ ---- skippy-0.5.1rc1.orig/debian/patches/11_find_skippyrc_in_etc.patch -+++ skippy-0.5.1rc1/debian/patches/11_find_skippyrc_in_etc.patch -@@ -0,0 +1,17 @@ -+--- skippy-0.5.0/skippy.c 2005-03-22 12:45:43.000000000 +0100 -++++ skippy-0.5.0-fixed/skippy.c 2005-03-30 14:27:09.000000000 +0200 -+@@ -232,8 +232,13 @@ -+ snprintf(cfgpath, 8191, "%s/%s", homedir, ".skippyrc"); -+ config = config_load(cfgpath); -+ } -+- else -++ else -+ fprintf(stderr, "WARNING: $HOME not set, not loading config.\n"); -++ if(config == 0) { -++ fprintf(stderr, "WARNING: $HOME/.skippyrc not found " -++ "loading default config.\n"); -++ config = config_load("/etc/X11/skippy/skippyrc"); -++ } -+ -+ wm_use_netwm_fullscreen(strcasecmp("true", config_get(config, "general", "useNETWMFullscreen", "true")) == 0); -+ wm_ignore_skip_taskbar(strcasecmp("true", config_get(config, "general", "ignoreSkipTaskbar", "false")) == 0); ---- skippy-0.5.1rc1.orig/debian/copyright -+++ skippy-0.5.1rc1/debian/copyright -@@ -0,0 +1,28 @@ -+This package was debianized by Niv ALTIVANIK on -+Mon, 6 Dec 2004 02:50:40 +0100. -+ -+It was downloaded from http://thegraveyard.org/skippy.php -+ -+Copyright: 2004 2005 Hyriand, TheGraveyard.org Project. -+ -+Upstream Author: Hyriand hyriand@thegraveyard.org -+ -+License: -+ -+ This package is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; version 2 dated June, 1991. -+ -+ This package is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ GNU General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this package; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -+ 02111-1307, USA. -+ -+ On Debian systems, the complete text of the GNU General Public -+ License can be found in the file `/usr/share/common-licenses/GPL'. -+ ---- skippy-0.5.1rc1.orig/debian/skippyrc.1 -+++ skippy-0.5.1rc1/debian/skippyrc.1 -@@ -0,0 +1,101 @@ -+.\" Hey, EMACS: -*- nroff -*- -+.\" -+.\" This manpage is free software; you can redistribute it and/or modify -+.\" it under the terms of the GNU General Public License as published by -+.\" the Free Software Foundation; version 2 dated June, 1991. -+.\" -+.\" This package is distributed in the hope that it will be useful, -+.\" but WITHOUT ANY WARRANTY; without even the implied warranty of -+.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+.\" GNU General Public License for more details. -+.\" -+.\" You should have received a copy of the GNU General Public License -+.\" along with this package; if not, write to the Free Software -+.\" Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -+.\" 02111-1307, USA. -+.\" -+.\" On Debian systems, the complete text of the GNU General Public -+.\" License can be found in the file `/usr/share/common-licenses/GPL'. -+.\" -+.\" First parameter, NAME, should be all caps -+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection -+.\" other parameters are allowed: see man(7), man(1) -+.TH SKIPPYRC 5 "December 6, 2004" -+.\" Please adjust this date whenever revising the manpage. -+.\" -+.\" Some roff macros, for reference: -+.\" .nh disable hyphenation -+.\" .hy enable hyphenation -+.\" .ad l left justify -+.\" .ad b justify to both left and right margins -+.\" .nf disable filling -+.\" .fi enable filling -+.\" .br insert line break -+.\" .sp insert n+1 empty lines -+.\" for manpage-specific macros, see man(7) -+.SH NAME -+skippyrc \- Configuration file for skippy, a Full Screen Task Switcher for X11 -+.SH DESCRIPTION -+.\" TeX users may be more comfortable with the \fB\fP and -+.\" \fI\fP escape sequences to invode bold face and italics, -+.\" respectively. -+\fBskippy\fP is a program that allows you to manage your windows in an -+efficient way. It is highly inspired by Apple Expose. -+ -+\fB~/.skippyrc\fP is its configuration file. -+ -+.SH FORMAT -+for each SECTION (see below), you can define the following variables: -+ -+.BR keysym -+ can be anything XStringToKeysym can handle -+ (like F11, KP_Enter or implementation specific keysyms) -+ -+.BR colors -+ can be anything XAllocNamedColor can handle -+ (like "black" or "#000000") -+ -+.BR distance -+ a relative number, and is scaled according to the scale -+ factor applied to windows -+ -+.BR fonts -+ Xft font descriptions -+ -+.BR booleans -+ "true" or anything but "true" (-> false) -+ -+.BR opacity -+ integer in the range of 0-255 -+ -+.BR brightness -+ floating point number (with 0.0 as neutral) -+ -+.SH SECTIONS -+.BR [general] -+.BR [xinerama] -+.BR [normal] -+.BR [highlight] -+.BR [tooltip] -+ -+.SH NOTE -+In Debian you can find a copy of the default skippyrc in -+/usr/share/doc/skippy/examples -+If no ~/.skippyrc exist, skippy will use /etc/X11/skippy/skippyrc -+ -+If you are using the X.org X server, there is a version of skippy, -+called skippy-xd that makes use of the new XDamage, XComposite and -+XFixes extensions. I suggest you use the xd version instead. -+ -+.SH FILES -+/etc/X11/skippy/skippyrc -+~/.skippyrc -+ -+.SH SEE ALSO -+.BR skippy (1), -+.BR skippy-xd (1) -+.SH AUTHOR -+skippy was written by Hyriand . -+.PP -+This manual page was written by Niv ALTIVANIK , -+for the Debian project (but may be used by others). ---- skippy-0.5.1rc1.orig/debian/examples/99skippy -+++ skippy-0.5.1rc1/debian/examples/99skippy -@@ -0,0 +1,5 @@ -+#!/bin/sh -+# Add this file to /etc/X11/XSession.d/ if you wish the program to be -+# started at login time for all the users on your system. -+ -+/usr/bin/skippy & ---- skippy-0.5.1rc1.orig/debian/examples/skippyrc-default -+++ skippy-0.5.1rc1/debian/examples/skippyrc-default -@@ -0,0 +1,3 @@ -+# This is the Default Debian skippy configuration, it is copied to -+# /etc/X11/skippy/skippyrc. -+# Copy this to ~/.skippyrc and edit it to fit your needs diff --git a/skippy-xd.rc-default b/skippy-xd.rc-default index 45b88ab..51c0133 100644 --- a/skippy-xd.rc-default +++ b/skippy-xd.rc-default @@ -38,8 +38,8 @@ lazyTrans = false [maemo] #imgLandscape = /usr/share/skippy-xd/skippy-bg-l.jpg #imgPortrait = /usr/share/skippy-xd/skippy-bg-p.jpg -#f7prog = "/usr/bin/osso-xterm &" -#f6prog = "/usr/bin/dbus-send --system --type=method_call --dest=com.nokia.mce /com/nokia/mce/request com.nokia.mce.request.req_tklock_mode_change string:locked &" +#f7prog = /usr/bin/osso-xterm & +#f6prog = /usr/bin/dbus-send --system --type=method_call --dest=com.nokia.mce /com/nokia/mce/request com.nokia.mce.request.req_tklock_mode_change string:locked & ### Fast=0, Good=1, Best=2, Nearest=3, Bilinear=4, Convolution=5 gQuality = 0 diff --git a/skippy-xd_maemo.init.sh b/skippy-xd_maemo.init.sh new file mode 100755 index 0000000..e025572 --- /dev/null +++ b/skippy-xd_maemo.init.sh @@ -0,0 +1,50 @@ +#! /bin/sh +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON="/usr/sbin/skippy-xd" +NAME=skippy-xd +DESC="skippy-xd" + +RUNUSER="-c user" + +# abort if no executable exists + +test -x $DAEMON || exit 0 + +set -e + +if [ -e /etc/osso-af-init/af-defines.sh ] +then + source /etc/osso-af-init/af-defines.sh +else + echo "/etc/osso-af-init/af-defines.sh not found!" + exit 1 +fi + +case "$1" in +start) + echo -n "Starting $DESC: " + #start-stop-daemon --start --quiet $RUNUSER --exec $DAEMON & + su -c 'dsmetool -t /usr/sbin/skippy-xd' user + echo "$NAME" + ;; + +stop) + echo -n "Stopping $DESC: " + #start-stop-daemon --stop --quiet $RUNUSER --exec $DAEMON + dsmetool -k $DAEMON + echo "$NAME" + ;; + +restart|force-reload) + "$0" stop + "$0" start + ;; + +*) + N=/etc/init.d/$NAME + printf "Usage: $N {start|stop|restart|force-reload}\n" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/skippy.c b/skippy.c index 03581fe..083197c 100644 --- a/skippy.c +++ b/skippy.c @@ -20,7 +20,6 @@ #include "skippy.h" const char *f7prog; -const char *f6prog; static int DIE_NOW = 0; static int @@ -244,19 +243,12 @@ skippy_run(MainWin *mw, dlist *clients, Window focus, Window leader, Bool all_xi } } - else if(ev.type == KeyRelease && ev.xkey.keycode == mw->key_escape) + else if(ev.type == KeyRelease && (ev.xkey.keycode == mw->key_f6 || ev.xkey.keycode == mw->key_escape)) { refocus = True; die = 1; break; } - else if(ev.type == KeyRelease && ev.xkey.keycode == mw->key_f6) - { - system(f6prog); - refocus = True; - die = 1; - break; - } else if(ev.type == KeyRelease && ev.xkey.keycode == mw->key_f7) { system(f7prog); @@ -392,9 +384,7 @@ main(void) client_msg(dpy, focused, "_NET_ACTIVE_WINDOW", 0, 0, 0, 0, 0); XSetInputFocus(dpy, focused, RevertToParent, CurrentTime); - - - f6prog = config_get(config, "maemo", "f6prog", "/usr/bin/dbus-send --system --type=method_call --dest=com.nokia.mce /com/nokia/mce/request com.nokia.mce.request.req_tklock_mode_change string:locked &"); + f7prog = config_get(config, "maemo", "f7prog", "/usr/bin/osso-xterm &"); mw->gquality = atoi(config_get(config, "maemo", "gQuality", "0")); printf("Filter: %d\n", mw->gquality);