123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424 |
- --- wmctrl-1.07.orig/debian/control
- +++ wmctrl-1.07/debian/control
- @@ -0,0 +1,20 @@
- +Source: wmctrl
- +Section: x11
- +Priority: optional
- +Maintainer: Decklin Foster <decklin@red-bean.com>
- +Build-Depends: debhelper (>= 4.0.0), x11proto-core-dev, libx11-dev, libxmu-dev, libglib2.0-dev (>= 2.4.0)
- +Standards-Version: 3.6.2
- +
- +Package: wmctrl
- +Architecture: any
- +Depends: ${shlibs:Depends}
- +Description: control an EWMH/NetWM compatible X Window Manager
- + Wmctrl is a command line tool to interact with an
- + EWMH/NetWM compatible X Window Manager (examples include
- + Enlightenment, icewm, kwin, metacity, and sawfish).
- + .
- + Wmctrl provides command line access to almost all the features
- + defined in the EWMH specification. For example it can maximize
- + windows, make them sticky, set them to be always on top. It can
- + switch and resize desktops and perform many other useful
- + operations.
- --- wmctrl-1.07.orig/debian/wmctrl.docs
- +++ wmctrl-1.07/debian/wmctrl.docs
- @@ -0,0 +1 @@
- +README
- --- wmctrl-1.07.orig/debian/watch
- +++ wmctrl-1.07/debian/watch
- @@ -0,0 +1,2 @@
- +version=2
- +http://sweb.cz/tripie/utils/wmctrl/dist/ wmctrl-(.*)\.tar\.gz debian uupdate
- --- wmctrl-1.07.orig/debian/compat
- +++ wmctrl-1.07/debian/compat
- @@ -0,0 +1 @@
- +4
- --- wmctrl-1.07.orig/debian/changelog
- +++ wmctrl-1.07/debian/changelog
- @@ -0,0 +1,69 @@
- +wmctrl (1.07-6) unstable; urgency=low
- +
- + * Reverted CARD32 patch, which was broken on amd64; use fix from Chris
- + Donoghue instead. (Closes: #362068)
- + * Change x-dev -> x11proto-core-dev build-dep.
- +
- + -- Decklin Foster <decklin@red-bean.com> Tue, 18 Apr 2006 10:20:00 -0400
- +
- +wmctrl (1.07-5) unstable; urgency=low
- +
- + * Not all the new build-deps from -2 were actually added to debian/control.
- + (Closes: #345816)
- +
- + -- Decklin Foster <decklin@red-bean.com> Tue, 3 Jan 2006 14:26:57 -0500
- +
- +wmctrl (1.07-4) unstable; urgency=low
- +
- + * Get rid of huge mess in .diff.gz caused by vim's braindead folding.
- +
- + -- Decklin Foster <decklin@red-bean.com> Mon, 2 Jan 2006 23:27:14 -0500
- +
- +wmctrl (1.07-3) unstable; urgency=low
- +
- + * Fix typo in description (Closes: #345576)
- +
- + -- Decklin Foster <decklin@red-bean.com> Mon, 2 Jan 2006 22:53:30 -0500
- +
- +wmctrl (1.07-2) unstable; urgency=low
- +
- + * Patch main.c to use CARD32 for all EWMH properties instead of unsigned
- + long, which may be 64 bits on 64-bit archs. (Closes: #344080)
- + * Replace xlibs-dev build-dep with libx11-dev, x-dev, libxmu-dev.
- + * Update Standards-Version to 3.6.2.
- +
- + -- Decklin Foster <decklin@red-bean.com> Mon, 2 Jan 2006 22:34:27 -0500
- +
- +wmctrl (1.07-1) unstable; urgency=low
- +
- + * New upstream release
- +
- + -- Decklin Foster <decklin@red-bean.com> Sat, 29 Jan 2005 09:45:14 -0500
- +
- +wmctrl (1.06-1) unstable; urgency=low
- +
- + * New upstream release
- + - debian/wmctrl.1: merged upstream.
- + * debian/watch: added trailing / to directory (Thanks, Shyamal).
- + * debian/control: lowercase first letter of description.
- +
- + -- Decklin Foster <decklin@red-bean.com> Sat, 22 Jan 2005 14:04:09 -0500
- +
- +wmctrl (1.05-2) unstable; urgency=low
- +
- + * Adopting package created by Debian user Shyamal Prasad
- + <shyamal@member.fsf.org>.
- + * Removed debian/{pre,post}{inst,rm}.ex and config.{sub,guess}, and do not
- + generate config.{sub,guess} in clean.
- + * Removed example cruft in copyright and watch.
- + * Install ChangeLog as the upstream changelog, not a doc. Do not install
- + NEWS, since it is empty.
- +
- + -- Decklin Foster <decklin@red-bean.com> Mon, 13 Dec 2004 10:41:11 -0500
- +
- +wmctrl (1.05-1) unstable; urgency=low
- +
- + * Initial Release. Added man page wmctrl.1 (closes: #285397)
- +
- + -- Shyamal Prasad <shyamal@member.fsf.org> Thu, 12 Dec 2004 18:59:40 -0800
- +
- --- wmctrl-1.07.orig/debian/rules
- +++ wmctrl-1.07/debian/rules
- @@ -0,0 +1,91 @@
- +#!/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
- +
- +
- +# These are used for cross-compiling and for saving the configure script
- +# from having to guess our platform (since we know it already)
- +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
- +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
- +
- +
- +CFLAGS = -Wall -g
- +
- +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
- + CFLAGS += -O0
- +else
- + CFLAGS += -O2
- +endif
- +
- +config.status: configure
- + dh_testdir
- + # Add here commands to configure the package.
- + CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
- +
- +
- +build: build-stamp
- +
- +build-stamp: config.status
- + dh_testdir
- +
- + # Add here commands to compile the package.
- + $(MAKE)
- +
- + touch build-stamp
- +
- +clean:
- + dh_testdir
- + dh_testroot
- + rm -f build-stamp
- +
- + # Add here commands to clean up after the build process.
- + -$(MAKE) distclean
- +
- + dh_clean
- +
- +install: build
- + dh_testdir
- + dh_testroot
- + dh_clean -k
- + dh_installdirs
- +
- + # Add here commands to install the package into debian/wmctrl.
- + $(MAKE) install DESTDIR=$(CURDIR)/debian/wmctrl
- +
- +
- +# 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_installlogrotate
- +# dh_installinit
- +# dh_installinfo
- + dh_link
- + dh_strip
- + dh_compress
- + dh_fixperms
- +# 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
- --- wmctrl-1.07.orig/debian/copyright
- +++ wmctrl-1.07/debian/copyright
- @@ -0,0 +1,15 @@
- +This package was debianized by Shyamal Prasad <shyamal@member.fsf.org> on
- +Thu, 12 Dec 2004 18:59:40 -0800.
- +
- +It was downloaded from http://sweb.cz/tripie/utils/wmctrl/
- +
- +Upstream Author: Tomas Styblo <tripie@cpan.org>
- +
- +Copyright (C) 2003, Tomas Styblo <tripie@cpan.org>
- +
- +You are free to distribute this software under the terms of the GNU
- +General Public License.
- +
- +On Debian systems, the complete text of the GNU General Public License
- +can be found in the file `/usr/share/common-licenses/GPL'.
- +
- --- wmctrl-1.07.orig/BAH
- +++ wmctrl-1.07/BAH
- @@ -0,0 +1,172 @@
- +--- wmctrl-1.07.orig/main.c
- ++++ wmctrl-1.07/main.c
- +@@ -31,6 +31,7 @@
- + #include <string.h>
- + #include <locale.h>
- + #include <X11/Xlib.h>
- ++#include <X11/Xmd.h>
- + #include <X11/Xatom.h>
- + #include <X11/cursorfont.h>
- + #include <X11/Xmu/WinUtil.h>
- +@@ -477,8 +478,8 @@
- + Window *sup_window = NULL;
- + gchar *wm_name = NULL;
- + gchar *wm_class = NULL;
- +- unsigned long *wm_pid = NULL;
- +- unsigned long *showing_desktop = NULL;
- ++ CARD32 *wm_pid = NULL;
- ++ CARD32 *showing_desktop = NULL;
- + gboolean name_is_utf8 = TRUE;
- + gchar *name_out;
- + gchar *class_out;
- +@@ -517,13 +518,13 @@
- +
- +
- + /* WM_PID */
- +- if (! (wm_pid = (unsigned long *)get_property(disp, *sup_window,
- ++ if (! (wm_pid = (CARD32 *)get_property(disp, *sup_window,
- + XA_CARDINAL, "_NET_WM_PID", NULL))) {
- + p_verbose("Cannot get pid of the window manager (_NET_WM_PID).\n");
- + }
- +
- + /* _NET_SHOWING_DESKTOP */
- +- if (! (showing_desktop = (unsigned long *)get_property(disp, DefaultRootWindow(disp),
- ++ if (! (showing_desktop = (CARD32 *)get_property(disp, DefaultRootWindow(disp),
- + XA_CARDINAL, "_NET_SHOWING_DESKTOP", NULL))) {
- + p_verbose("Cannot get the _NET_SHOWING_DESKTOP property.\n");
- + }
- +@@ -678,13 +679,13 @@
- + }/*}}}*/
- +
- + static int window_to_desktop (Display *disp, Window win, int desktop) {/*{{{*/
- +- unsigned long *cur_desktop = NULL;
- ++ CARD32 *cur_desktop = NULL;
- + Window root = DefaultRootWindow(disp);
- +
- + if (desktop == -1) {
- +- if (! (cur_desktop = (unsigned long *)get_property(disp, root,
- ++ if (! (cur_desktop = (CARD32 *)get_property(disp, root,
- + XA_CARDINAL, "_NET_CURRENT_DESKTOP", NULL))) {
- +- if (! (cur_desktop = (unsigned long *)get_property(disp, root,
- ++ if (! (cur_desktop = (CARD32 *)get_property(disp, root,
- + XA_CARDINAL, "_WIN_WORKSPACE", NULL))) {
- + fputs("Cannot get current desktop properties. "
- + "(_NET_CURRENT_DESKTOP or _WIN_WORKSPACE property)"
- +@@ -702,12 +703,12 @@
- +
- + static int activate_window (Display *disp, Window win, /* {{{ */
- + gboolean switch_desktop) {
- +- unsigned long *desktop;
- ++ CARD32 *desktop;
- +
- + /* desktop ID */
- +- if ((desktop = (unsigned long *)get_property(disp, win,
- ++ if ((desktop = (CARD32 *)get_property(disp, win,
- + XA_CARDINAL, "_NET_WM_DESKTOP", NULL)) == NULL) {
- +- if ((desktop = (unsigned long *)get_property(disp, win,
- ++ if ((desktop = (CARD32 *)get_property(disp, win,
- + XA_CARDINAL, "_WIN_WORKSPACE", NULL)) == NULL) {
- + p_verbose("Cannot find desktop ID of the window.\n");
- + }
- +@@ -1016,16 +1017,16 @@
- + }/*}}}*/
- +
- + static int list_desktops (Display *disp) {/*{{{*/
- +- unsigned long *num_desktops = NULL;
- +- unsigned long *cur_desktop = NULL;
- ++ CARD32 *num_desktops = NULL;
- ++ CARD32 *cur_desktop = NULL;
- + unsigned long desktop_list_size = 0;
- +- unsigned long *desktop_geometry = NULL;
- ++ CARD32 *desktop_geometry = NULL;
- + unsigned long desktop_geometry_size = 0;
- + gchar **desktop_geometry_str = NULL;
- +- unsigned long *desktop_viewport = NULL;
- ++ CARD32 *desktop_viewport = NULL;
- + unsigned long desktop_viewport_size = 0;
- + gchar **desktop_viewport_str = NULL;
- +- unsigned long *desktop_workarea = NULL;
- ++ CARD32 *desktop_workarea = NULL;
- + unsigned long desktop_workarea_size = 0;
- + gchar **desktop_workarea_str = NULL;
- + gchar *list = NULL;
- +@@ -1036,9 +1037,9 @@
- + gchar **names = NULL;
- + gboolean names_are_utf8 = TRUE;
- +
- +- if (! (num_desktops = (unsigned long *)get_property(disp, root,
- ++ if (! (num_desktops = (CARD32 *)get_property(disp, root,
- + XA_CARDINAL, "_NET_NUMBER_OF_DESKTOPS", NULL))) {
- +- if (! (num_desktops = (unsigned long *)get_property(disp, root,
- ++ if (! (num_desktops = (CARD32 *)get_property(disp, root,
- + XA_CARDINAL, "_WIN_WORKSPACE_COUNT", NULL))) {
- + fputs("Cannot get number of desktops properties. "
- + "(_NET_NUMBER_OF_DESKTOPS or _WIN_WORKSPACE_COUNT)"
- +@@ -1047,9 +1048,9 @@
- + }
- + }
- +
- +- if (! (cur_desktop = (unsigned long *)get_property(disp, root,
- ++ if (! (cur_desktop = (CARD32 *)get_property(disp, root,
- + XA_CARDINAL, "_NET_CURRENT_DESKTOP", NULL))) {
- +- if (! (cur_desktop = (unsigned long *)get_property(disp, root,
- ++ if (! (cur_desktop = (CARD32 *)get_property(disp, root,
- + XA_CARDINAL, "_WIN_WORKSPACE", NULL))) {
- + fputs("Cannot get current desktop properties. "
- + "(_NET_CURRENT_DESKTOP or _WIN_WORKSPACE property)"
- +@@ -1074,21 +1075,21 @@
- + }
- +
- + /* common size of all desktops */
- +- if (! (desktop_geometry = (unsigned long *)get_property(disp, DefaultRootWindow(disp),
- ++ if (! (desktop_geometry = (CARD32 *)get_property(disp, DefaultRootWindow(disp),
- + XA_CARDINAL, "_NET_DESKTOP_GEOMETRY", &desktop_geometry_size))) {
- + p_verbose("Cannot get common size of all desktops (_NET_DESKTOP_GEOMETRY).\n");
- + }
- +
- + /* desktop viewport */
- +- if (! (desktop_viewport = (unsigned long *)get_property(disp, DefaultRootWindow(disp),
- ++ if (! (desktop_viewport = (CARD32 *)get_property(disp, DefaultRootWindow(disp),
- + XA_CARDINAL, "_NET_DESKTOP_VIEWPORT", &desktop_viewport_size))) {
- + p_verbose("Cannot get common size of all desktops (_NET_DESKTOP_VIEWPORT).\n");
- + }
- +
- + /* desktop workarea */
- +- if (! (desktop_workarea = (unsigned long *)get_property(disp, DefaultRootWindow(disp),
- ++ if (! (desktop_workarea = (CARD32 *)get_property(disp, DefaultRootWindow(disp),
- + XA_CARDINAL, "_NET_WORKAREA", &desktop_workarea_size))) {
- +- if (! (desktop_workarea = (unsigned long *)get_property(disp, DefaultRootWindow(disp),
- ++ if (! (desktop_workarea = (CARD32 *)get_property(disp, DefaultRootWindow(disp),
- + XA_CARDINAL, "_WIN_WORKAREA", &desktop_workarea_size))) {
- + p_verbose("Cannot get _NET_WORKAREA property.\n");
- + }
- +@@ -1301,16 +1302,16 @@
- + gchar *title_out = get_output_str(title_utf8, TRUE);
- + gchar *client_machine;
- + gchar *class_out = get_window_class(disp, client_list[i]); /* UTF8 */
- +- unsigned long *pid;
- +- unsigned long *desktop;
- ++ CARD32 *pid;
- ++ CARD32 *desktop;
- + int x, y, junkx, junky;
- + unsigned int wwidth, wheight, bw, depth;
- + Window junkroot;
- +
- + /* desktop ID */
- +- if ((desktop = (unsigned long *)get_property(disp, client_list[i],
- ++ if ((desktop = (CARD32 *)get_property(disp, client_list[i],
- + XA_CARDINAL, "_NET_WM_DESKTOP", NULL)) == NULL) {
- +- desktop = (unsigned long *)get_property(disp, client_list[i],
- ++ desktop = (CARD32 *)get_property(disp, client_list[i],
- + XA_CARDINAL, "_WIN_WORKSPACE", NULL);
- + }
- +
- +@@ -1319,7 +1320,7 @@
- + XA_STRING, "WM_CLIENT_MACHINE", NULL);
- +
- + /* pid */
- +- pid = (unsigned long *)get_property(disp, client_list[i],
- ++ pid = (CARD32 *)get_property(disp, client_list[i],
- + XA_CARDINAL, "_NET_WM_PID", NULL);
- +
- + /* geometry */
- --- wmctrl-1.07.orig/main.c
- +++ wmctrl-1.07/main.c
- @@ -1425,6 +1425,16 @@
- *
- * long_length = Specifies the length in 32-bit multiples of the
- * data to be retrieved.
- + *
- + * NOTE: see
- + * http://mail.gnome.org/archives/wm-spec-list/2003-March/msg00067.html
- + * In particular:
- + *
- + * When the X window system was ported to 64-bit architectures, a
- + * rather peculiar design decision was made. 32-bit quantities such
- + * as Window IDs, atoms, etc, were kept as longs in the client side
- + * APIs, even when long was changed to 64 bits.
- + *
- */
- if (XGetWindowProperty(disp, win, xa_prop_name, 0, MAX_PROPERTY_VALUE_LEN / 4, False,
- xa_prop_type, &xa_ret_type, &ret_format,
- @@ -1441,6 +1451,8 @@
-
- /* null terminate the result to make string handling easier */
- tmp_size = (ret_format / 8) * ret_nitems;
- + /* Correct 64 Architecture implementation of 32 bit data */
- + if(ret_format==32) tmp_size *= sizeof(long)/4;
- ret = g_malloc(tmp_size + 1);
- memcpy(ret, ret_prop, tmp_size);
- ret[tmp_size] = '\0';
|