diff options
Diffstat (limited to 'x11-wm/ion3/files')
31 files changed, 3 insertions, 3648 deletions
diff --git a/x11-wm/ion3/files/20061223/201_all_fix-paths.patch b/x11-wm/ion3/files/20061223/201_all_fix-paths.patch deleted file mode 100644 index 7f8f228..0000000 --- a/x11-wm/ion3/files/20061223/201_all_fix-paths.patch +++ /dev/null @@ -1,90 +0,0 @@ -diff -Nur ion-3ds-20060519.orig/system.mk ion-3ds-20060519/system.mk ---- ion-3ds-20060519.orig/system.mk 2006-05-18 18:06:53.000000000 -0500 -+++ ion-3ds-20060519/system.mk 2006-05-18 23:51:23.000000000 -0500 -@@ -7,7 +7,7 @@ - ## Installation paths - ## - --PREFIX=/usr/local -+PREFIX=/usr - - # Unless you are creating a package conforming to some OS's standards, you - # probably do not want to modify the following directories: -@@ -15,7 +15,7 @@ - # Main binaries - BINDIR=$(PREFIX)/bin - # Configuration .lua files --ETCDIR=$(PREFIX)/etc/ion3 -+ETCDIR=/etc/X11/ion3 - # Some .lua files and ion-* shell scripts - SHAREDIR=$(PREFIX)/share/ion3 - # Manual pages -@@ -27,11 +27,11 @@ - # Nothing at the moment - LIBDIR=$(PREFIX)/lib - # Modules --MODULEDIR=$(LIBDIR)/ion3/mod -+MODULEDIR=$(LIBDIR)/ion3/mod - # Compiled Lua source code - LCDIR=$(LIBDIR)/ion3/lc - # ion-completefile (does not belong in SHAREDIR being a binary file) --EXTRABINDIR=$(LIBDIR)/ion3/bin -+EXTRABINDIR=$(LIBDIR)/ion3/bin - # For ion-completeman system-wide cache - VARDIR=/var/cache/ion3 - # Message catalogs -@@ -56,18 +56,18 @@ - - # If you have installed Lua 5.1 from the official tarball without changing - # paths, this should do it. --LUA_DIR=/usr/local --LUA_LIBS = -L$(LUA_DIR)/lib -llua --LUA_INCLUDES = -I$(LUA_DIR)/include --LUA=$(LUA_DIR)/bin/lua --LUAC=$(LUA_DIR)/bin/luac -+#LUA_DIR=/usr/local -+#LUA_LIBS = -L$(LUA_DIR)/lib -llua -+#LUA_INCLUDES = -I$(LUA_DIR)/include -+#LUA=$(LUA_DIR)/bin/lua -+#LUAC=$(LUA_DIR)/bin/luac - - # If you are using the Debian packages, the following settings should be - # what you want. --#LUA_LIBS=`pkg-config --libs lua5.1` --#LUA_INCLUDES=`pkg-config --cflags lua5.1` --#LUA=`which lua5.1` --#LUAC=`which luac5.1` -+LUA_LIBS=`pkg-config --libs lua` -+LUA_INCLUDES=`pkg-config --cflags lua` -+LUA=`which lua` -+LUAC=`which luac` - - - ## -@@ -107,7 +107,7 @@ - # asprintf and vasprintf in the c library. (gnu libc has.) - # If HAS_SYSTEM_ASPRINTF is not defined, an implementation - # in sprintf_2.2/ is used. --#HAS_SYSTEM_ASPRINTF=1 -+HAS_SYSTEM_ASPRINTF=1 - - - # If you're on an archaic system (such as relatively recent *BSD releases) -@@ -144,14 +144,14 @@ - - #C89_SOURCE=-ansi - --#POSIX_SOURCE=-D_POSIX_SOURCE -+POSIX_SOURCE=-D_POSIX_SOURCE - - # Most systems --#XOPEN_SOURCE=-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -+XOPEN_SOURCE=-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED - # SunOS, (Irix) - #XOPEN_SOURCE=-D__EXTENSIONS__ - --#C99_SOURCE=-std=c99 -DCF_HAS_VA_COPY -+C99_SOURCE=-std=c99 -DCF_HAS_VA_COPY - - # The -DCF_HAS_VA_COPY option should allow for some optimisations, and - # in some cases simply defining diff --git a/x11-wm/ion3/files/20061223/202_all_fix-menus.patch b/x11-wm/ion3/files/20061223/202_all_fix-menus.patch deleted file mode 100644 index f218a33..0000000 --- a/x11-wm/ion3/files/20061223/202_all_fix-menus.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Naur ../work/ion-3ds-20061223/etc/cfg_ioncore.lua ion-3ds-20061223/etc/cfg_ioncore.lua ---- ../work/ion-3ds-20061223/etc/cfg_ioncore.lua 2006-12-23 17:59:43.000000000 +0300 -+++ ion-3ds-20061223/etc/cfg_ioncore.lua 2006-12-31 15:35:59.000000000 +0300 -@@ -324,7 +324,8 @@ - -- Main menu - defmenu("mainmenu", { - submenu("Programs", "appmenu"), -- menuentry("Lock screen", "ioncore.exec_on(_, 'xlock')"), -+ menuentry("Lock screen", -+ "ioncore.exec_on(_, ioncore.lookup_script('ion-lock'))"), - menuentry("Help", "mod_query.query_man(_)"), - menuentry("About Ion", "mod_query.show_about_ion(_)"), - submenu("Styles", "stylemenu"), diff --git a/x11-wm/ion3/files/20061223/207_all_bindings-manpage.patch b/x11-wm/ion3/files/20061223/207_all_bindings-manpage.patch deleted file mode 100644 index 5fac548..0000000 --- a/x11-wm/ion3/files/20061223/207_all_bindings-manpage.patch +++ /dev/null @@ -1,117 +0,0 @@ -diff -Nur ion3-20061020.orig/man/ion3.cs.in ion3-20061020/man/ion3.cs.in ---- ion3-20061020.orig/man/ion3.cs.in 2006-10-20 17:43:37.000000000 +0200 -+++ ion3-20061020/man/ion3.cs.in 2006-10-23 20:42:12.000000000 +0200 -@@ -81,6 +81,10 @@ - - .SS Globální přiřazení - -+BINDINGS:WFrame -+ -+.SS Přiřazení pro přesun/změnu velikosti -+ - BINDINGS:WScreen - - .SS Přiřazení pro práci s nejvyššími rámy a obrazovkami a jejich potomky -diff -Nur ion3-20061020.orig/man/ion3.fi.in ion3-20061020/man/ion3.fi.in ---- ion3-20061020.orig/man/ion3.fi.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/ion3.fi.in 2006-10-23 20:42:12.000000000 +0200 -@@ -84,6 +84,10 @@ - - .SS Yleisesti saatavilla olevat sidonnat - -+BINDINGS:WFrame -+ -+.SS Siirto ja koonmuutostilan sidonnat -+ - BINDINGS:WScreen - - .SS Näytöillä tai ylimmän tason kehyksissä toimivat sidonnat -diff -Nur ion3-20061020.orig/man/ion3.in ion3-20061020/man/ion3.in ---- ion3-20061020.orig/man/ion3.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/ion3.in 2006-10-23 20:42:12.000000000 +0200 -@@ -82,6 +82,10 @@ - - .SS Globally available bindings - -+BINDINGS:WFrame -+ -+.SS Move/resize mode bindings -+ - BINDINGS:WScreen - - .SS Bindings operating on top-level frames and screens and their children -diff -Nur ion3-20061020.orig/man/pwm3.cs.in ion3-20061020/man/pwm3.cs.in ---- ion3-20061020.orig/man/pwm3.cs.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/pwm3.cs.in 2006-10-23 20:42:12.000000000 +0200 -@@ -56,6 +56,10 @@ - - .SS Globální přiřazení - -+BINDINGS:WFrame -+ -+.SS Přiřazení pro přesun/změnu velikosti -+ - BINDINGS:WScreen - - .".SS Přiřazení pro práci s rámy, obrazovkami a jejich potomky -@@ -64,10 +68,6 @@ - - .SS Přiřazení pro práci s rámy a jejich potomky - --BINDINGS:WFrame -- --.SS Přiřazení pro přesun/změnu velikosti -- - BINDINGS:WMoveresMode - - .SS Přiřazení pro plovoucí pracovní plochy [mod_floatws] -diff -Nur ion3-20061020.orig/man/pwm3.fi.in ion3-20061020/man/pwm3.fi.in ---- ion3-20061020.orig/man/pwm3.fi.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/pwm3.fi.in 2006-10-23 20:42:12.000000000 +0200 -@@ -57,6 +57,10 @@ - - .SS Yleisesti saatavilla olevat sidonnat - -+BINDINGS:WFrame -+ -+.SS Siirto ja koonmuutostilan sidonnat -+ - BINDINGS:WScreen - - .\".SS Kehyksiä ja näyttöjä, sekä niiden lapsia käsittelevät sidonnat -@@ -65,10 +69,6 @@ - - .SS Kehyksiä, sekä niiden lapsia käsittelevät sidonnat - --BINDINGS:WFrame -- --.SS Siirto ja koonmuutostilan sidonnat -- - BINDINGS:WMoveresMode - - .SS Kelluvien työpöytien ja kehyksien sidonnat [mod_floatws] -diff -Nur ion3-20061020.orig/man/pwm3.in ion3-20061020/man/pwm3.in ---- ion3-20061020.orig/man/pwm3.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/pwm3.in 2006-10-23 20:42:12.000000000 +0200 -@@ -57,6 +57,10 @@ - - .SS Globally available bindings - -+BINDINGS:WFrame -+ -+.SS Move/resize mode bindings -+ - BINDINGS:WScreen - - .".SS Bindings operating on both frames and screens and their children -@@ -65,10 +69,6 @@ - - .SS Bindings operating on frames and their children - --BINDINGS:WFrame -- --.SS Move/resize mode bindings -- - BINDINGS:WMoveresMode - - .SS Bindings for floating workspaces and frames [mod_floatws] diff --git a/x11-wm/ion3/files/20070203/201_all_fix-paths.patch b/x11-wm/ion3/files/20070203/201_all_fix-paths.patch deleted file mode 100644 index 7f8f228..0000000 --- a/x11-wm/ion3/files/20070203/201_all_fix-paths.patch +++ /dev/null @@ -1,90 +0,0 @@ -diff -Nur ion-3ds-20060519.orig/system.mk ion-3ds-20060519/system.mk ---- ion-3ds-20060519.orig/system.mk 2006-05-18 18:06:53.000000000 -0500 -+++ ion-3ds-20060519/system.mk 2006-05-18 23:51:23.000000000 -0500 -@@ -7,7 +7,7 @@ - ## Installation paths - ## - --PREFIX=/usr/local -+PREFIX=/usr - - # Unless you are creating a package conforming to some OS's standards, you - # probably do not want to modify the following directories: -@@ -15,7 +15,7 @@ - # Main binaries - BINDIR=$(PREFIX)/bin - # Configuration .lua files --ETCDIR=$(PREFIX)/etc/ion3 -+ETCDIR=/etc/X11/ion3 - # Some .lua files and ion-* shell scripts - SHAREDIR=$(PREFIX)/share/ion3 - # Manual pages -@@ -27,11 +27,11 @@ - # Nothing at the moment - LIBDIR=$(PREFIX)/lib - # Modules --MODULEDIR=$(LIBDIR)/ion3/mod -+MODULEDIR=$(LIBDIR)/ion3/mod - # Compiled Lua source code - LCDIR=$(LIBDIR)/ion3/lc - # ion-completefile (does not belong in SHAREDIR being a binary file) --EXTRABINDIR=$(LIBDIR)/ion3/bin -+EXTRABINDIR=$(LIBDIR)/ion3/bin - # For ion-completeman system-wide cache - VARDIR=/var/cache/ion3 - # Message catalogs -@@ -56,18 +56,18 @@ - - # If you have installed Lua 5.1 from the official tarball without changing - # paths, this should do it. --LUA_DIR=/usr/local --LUA_LIBS = -L$(LUA_DIR)/lib -llua --LUA_INCLUDES = -I$(LUA_DIR)/include --LUA=$(LUA_DIR)/bin/lua --LUAC=$(LUA_DIR)/bin/luac -+#LUA_DIR=/usr/local -+#LUA_LIBS = -L$(LUA_DIR)/lib -llua -+#LUA_INCLUDES = -I$(LUA_DIR)/include -+#LUA=$(LUA_DIR)/bin/lua -+#LUAC=$(LUA_DIR)/bin/luac - - # If you are using the Debian packages, the following settings should be - # what you want. --#LUA_LIBS=`pkg-config --libs lua5.1` --#LUA_INCLUDES=`pkg-config --cflags lua5.1` --#LUA=`which lua5.1` --#LUAC=`which luac5.1` -+LUA_LIBS=`pkg-config --libs lua` -+LUA_INCLUDES=`pkg-config --cflags lua` -+LUA=`which lua` -+LUAC=`which luac` - - - ## -@@ -107,7 +107,7 @@ - # asprintf and vasprintf in the c library. (gnu libc has.) - # If HAS_SYSTEM_ASPRINTF is not defined, an implementation - # in sprintf_2.2/ is used. --#HAS_SYSTEM_ASPRINTF=1 -+HAS_SYSTEM_ASPRINTF=1 - - - # If you're on an archaic system (such as relatively recent *BSD releases) -@@ -144,14 +144,14 @@ - - #C89_SOURCE=-ansi - --#POSIX_SOURCE=-D_POSIX_SOURCE -+POSIX_SOURCE=-D_POSIX_SOURCE - - # Most systems --#XOPEN_SOURCE=-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -+XOPEN_SOURCE=-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED - # SunOS, (Irix) - #XOPEN_SOURCE=-D__EXTENSIONS__ - --#C99_SOURCE=-std=c99 -DCF_HAS_VA_COPY -+C99_SOURCE=-std=c99 -DCF_HAS_VA_COPY - - # The -DCF_HAS_VA_COPY option should allow for some optimisations, and - # in some cases simply defining diff --git a/x11-wm/ion3/files/20070203/202_all_fix-menus.patch b/x11-wm/ion3/files/20070203/202_all_fix-menus.patch deleted file mode 100644 index f218a33..0000000 --- a/x11-wm/ion3/files/20070203/202_all_fix-menus.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Naur ../work/ion-3ds-20061223/etc/cfg_ioncore.lua ion-3ds-20061223/etc/cfg_ioncore.lua ---- ../work/ion-3ds-20061223/etc/cfg_ioncore.lua 2006-12-23 17:59:43.000000000 +0300 -+++ ion-3ds-20061223/etc/cfg_ioncore.lua 2006-12-31 15:35:59.000000000 +0300 -@@ -324,7 +324,8 @@ - -- Main menu - defmenu("mainmenu", { - submenu("Programs", "appmenu"), -- menuentry("Lock screen", "ioncore.exec_on(_, 'xlock')"), -+ menuentry("Lock screen", -+ "ioncore.exec_on(_, ioncore.lookup_script('ion-lock'))"), - menuentry("Help", "mod_query.query_man(_)"), - menuentry("About Ion", "mod_query.show_about_ion(_)"), - submenu("Styles", "stylemenu"), diff --git a/x11-wm/ion3/files/20070203/205_all_ion-lock.patch b/x11-wm/ion3/files/20070203/205_all_ion-lock.patch deleted file mode 100644 index dda2016..0000000 --- a/x11-wm/ion3/files/20070203/205_all_ion-lock.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -Nur ion3-20050322.orig/utils/Makefile ion3-20050322/utils/Makefile ---- ion3-20050322.orig/utils/Makefile 2005-03-22 14:31:06.000000000 +0000 -+++ ion3-20050322/utils/Makefile 2005-03-22 16:29:37.197355881 +0000 -@@ -11,7 +11,7 @@ - SUBDIRS=ion-completefile - INSTALL_SUBDIRS=$(SUBDIRS) - --SHELLSCRIPTS = ion-runinxterm ion-completeman -+SHELLSCRIPTS = ion-runinxterm ion-completeman ion-lock - - TARGETS = ion-completeman - -diff -Nur ion3-20050322.orig/utils/ion-lock ion3-20050322/utils/ion-lock ---- ion3-20050322.orig/utils/ion-lock 1970-01-01 00:00:00.000000000 +0000 -+++ ion3-20050322/utils/ion-lock 2005-03-22 16:29:19.550092305 +0000 -@@ -0,0 +1,6 @@ -+#!/bin/sh -+if xscreensaver-command -version >/dev/null 2>&1; then -+ exec xscreensaver-command -lock -+else -+ exec xlock -+fi diff --git a/x11-wm/ion3/files/20070203/207_all_bindings-manpage.patch b/x11-wm/ion3/files/20070203/207_all_bindings-manpage.patch deleted file mode 100644 index 5fac548..0000000 --- a/x11-wm/ion3/files/20070203/207_all_bindings-manpage.patch +++ /dev/null @@ -1,117 +0,0 @@ -diff -Nur ion3-20061020.orig/man/ion3.cs.in ion3-20061020/man/ion3.cs.in ---- ion3-20061020.orig/man/ion3.cs.in 2006-10-20 17:43:37.000000000 +0200 -+++ ion3-20061020/man/ion3.cs.in 2006-10-23 20:42:12.000000000 +0200 -@@ -81,6 +81,10 @@ - - .SS Globální přiřazení - -+BINDINGS:WFrame -+ -+.SS Přiřazení pro přesun/změnu velikosti -+ - BINDINGS:WScreen - - .SS Přiřazení pro práci s nejvyššími rámy a obrazovkami a jejich potomky -diff -Nur ion3-20061020.orig/man/ion3.fi.in ion3-20061020/man/ion3.fi.in ---- ion3-20061020.orig/man/ion3.fi.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/ion3.fi.in 2006-10-23 20:42:12.000000000 +0200 -@@ -84,6 +84,10 @@ - - .SS Yleisesti saatavilla olevat sidonnat - -+BINDINGS:WFrame -+ -+.SS Siirto ja koonmuutostilan sidonnat -+ - BINDINGS:WScreen - - .SS Näytöillä tai ylimmän tason kehyksissä toimivat sidonnat -diff -Nur ion3-20061020.orig/man/ion3.in ion3-20061020/man/ion3.in ---- ion3-20061020.orig/man/ion3.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/ion3.in 2006-10-23 20:42:12.000000000 +0200 -@@ -82,6 +82,10 @@ - - .SS Globally available bindings - -+BINDINGS:WFrame -+ -+.SS Move/resize mode bindings -+ - BINDINGS:WScreen - - .SS Bindings operating on top-level frames and screens and their children -diff -Nur ion3-20061020.orig/man/pwm3.cs.in ion3-20061020/man/pwm3.cs.in ---- ion3-20061020.orig/man/pwm3.cs.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/pwm3.cs.in 2006-10-23 20:42:12.000000000 +0200 -@@ -56,6 +56,10 @@ - - .SS Globální přiřazení - -+BINDINGS:WFrame -+ -+.SS Přiřazení pro přesun/změnu velikosti -+ - BINDINGS:WScreen - - .".SS Přiřazení pro práci s rámy, obrazovkami a jejich potomky -@@ -64,10 +68,6 @@ - - .SS Přiřazení pro práci s rámy a jejich potomky - --BINDINGS:WFrame -- --.SS Přiřazení pro přesun/změnu velikosti -- - BINDINGS:WMoveresMode - - .SS Přiřazení pro plovoucí pracovní plochy [mod_floatws] -diff -Nur ion3-20061020.orig/man/pwm3.fi.in ion3-20061020/man/pwm3.fi.in ---- ion3-20061020.orig/man/pwm3.fi.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/pwm3.fi.in 2006-10-23 20:42:12.000000000 +0200 -@@ -57,6 +57,10 @@ - - .SS Yleisesti saatavilla olevat sidonnat - -+BINDINGS:WFrame -+ -+.SS Siirto ja koonmuutostilan sidonnat -+ - BINDINGS:WScreen - - .\".SS Kehyksiä ja näyttöjä, sekä niiden lapsia käsittelevät sidonnat -@@ -65,10 +69,6 @@ - - .SS Kehyksiä, sekä niiden lapsia käsittelevät sidonnat - --BINDINGS:WFrame -- --.SS Siirto ja koonmuutostilan sidonnat -- - BINDINGS:WMoveresMode - - .SS Kelluvien työpöytien ja kehyksien sidonnat [mod_floatws] -diff -Nur ion3-20061020.orig/man/pwm3.in ion3-20061020/man/pwm3.in ---- ion3-20061020.orig/man/pwm3.in 2006-10-20 17:43:36.000000000 +0200 -+++ ion3-20061020/man/pwm3.in 2006-10-23 20:42:12.000000000 +0200 -@@ -57,6 +57,10 @@ - - .SS Globally available bindings - -+BINDINGS:WFrame -+ -+.SS Move/resize mode bindings -+ - BINDINGS:WScreen - - .".SS Bindings operating on both frames and screens and their children -@@ -65,10 +69,6 @@ - - .SS Bindings operating on frames and their children - --BINDINGS:WFrame -- --.SS Move/resize mode bindings -- - BINDINGS:WMoveresMode - - .SS Bindings for floating workspaces and frames [mod_floatws] diff --git a/x11-wm/ion3/files/20070506/200_all_fix_includes.patch b/x11-wm/ion3/files/20070506/200_all_fix_includes.patch deleted file mode 100644 index 19f7edc..0000000 --- a/x11-wm/ion3/files/20070506/200_all_fix_includes.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -uNr ion-3rc-20070506.orig/ioncore/ioncore.c ion-3rc-20070506/ioncore/ioncore.c ---- ion-3rc-20070506.orig/ioncore/ioncore.c 2007-05-12 22:04:33.000000000 +0200 -+++ ion-3rc-20070506/ioncore/ioncore.c 2007-05-12 22:23:30.000000000 +0200 -@@ -11,6 +11,7 @@ - #include <unistd.h> - #include <fcntl.h> - #include <string.h> -+#include <strings.h> - #include <errno.h> - #include <sys/types.h> - #include <ctype.h> -diff -uNr ion-3rc-20070506.orig/utils/ion-completefile/ion-completefile.c ion-3rc-20070506/utils/ion-completefile/ion-completefile.c ---- ion-3rc-20070506.orig/utils/ion-completefile/ion-completefile.c 2007-05-12 22:04:33.000000000 +0200 -+++ ion-3rc-20070506/utils/ion-completefile/ion-completefile.c 2007-05-12 22:05:13.000000000 +0200 -@@ -54,6 +54,7 @@ - - #include <sys/param.h> - #include <sys/types.h> -+#include <stdio.h> - #include <stdlib.h> - #include <dirent.h> - #include <string.h> diff --git a/x11-wm/ion3/files/20070506/201_all_fix-paths.patch b/x11-wm/ion3/files/20070506/201_all_fix-paths.patch deleted file mode 100644 index 7f8f228..0000000 --- a/x11-wm/ion3/files/20070506/201_all_fix-paths.patch +++ /dev/null @@ -1,90 +0,0 @@ -diff -Nur ion-3ds-20060519.orig/system.mk ion-3ds-20060519/system.mk ---- ion-3ds-20060519.orig/system.mk 2006-05-18 18:06:53.000000000 -0500 -+++ ion-3ds-20060519/system.mk 2006-05-18 23:51:23.000000000 -0500 -@@ -7,7 +7,7 @@ - ## Installation paths - ## - --PREFIX=/usr/local -+PREFIX=/usr - - # Unless you are creating a package conforming to some OS's standards, you - # probably do not want to modify the following directories: -@@ -15,7 +15,7 @@ - # Main binaries - BINDIR=$(PREFIX)/bin - # Configuration .lua files --ETCDIR=$(PREFIX)/etc/ion3 -+ETCDIR=/etc/X11/ion3 - # Some .lua files and ion-* shell scripts - SHAREDIR=$(PREFIX)/share/ion3 - # Manual pages -@@ -27,11 +27,11 @@ - # Nothing at the moment - LIBDIR=$(PREFIX)/lib - # Modules --MODULEDIR=$(LIBDIR)/ion3/mod -+MODULEDIR=$(LIBDIR)/ion3/mod - # Compiled Lua source code - LCDIR=$(LIBDIR)/ion3/lc - # ion-completefile (does not belong in SHAREDIR being a binary file) --EXTRABINDIR=$(LIBDIR)/ion3/bin -+EXTRABINDIR=$(LIBDIR)/ion3/bin - # For ion-completeman system-wide cache - VARDIR=/var/cache/ion3 - # Message catalogs -@@ -56,18 +56,18 @@ - - # If you have installed Lua 5.1 from the official tarball without changing - # paths, this should do it. --LUA_DIR=/usr/local --LUA_LIBS = -L$(LUA_DIR)/lib -llua --LUA_INCLUDES = -I$(LUA_DIR)/include --LUA=$(LUA_DIR)/bin/lua --LUAC=$(LUA_DIR)/bin/luac -+#LUA_DIR=/usr/local -+#LUA_LIBS = -L$(LUA_DIR)/lib -llua -+#LUA_INCLUDES = -I$(LUA_DIR)/include -+#LUA=$(LUA_DIR)/bin/lua -+#LUAC=$(LUA_DIR)/bin/luac - - # If you are using the Debian packages, the following settings should be - # what you want. --#LUA_LIBS=`pkg-config --libs lua5.1` --#LUA_INCLUDES=`pkg-config --cflags lua5.1` --#LUA=`which lua5.1` --#LUAC=`which luac5.1` -+LUA_LIBS=`pkg-config --libs lua` -+LUA_INCLUDES=`pkg-config --cflags lua` -+LUA=`which lua` -+LUAC=`which luac` - - - ## -@@ -107,7 +107,7 @@ - # asprintf and vasprintf in the c library. (gnu libc has.) - # If HAS_SYSTEM_ASPRINTF is not defined, an implementation - # in sprintf_2.2/ is used. --#HAS_SYSTEM_ASPRINTF=1 -+HAS_SYSTEM_ASPRINTF=1 - - - # If you're on an archaic system (such as relatively recent *BSD releases) -@@ -144,14 +144,14 @@ - - #C89_SOURCE=-ansi - --#POSIX_SOURCE=-D_POSIX_SOURCE -+POSIX_SOURCE=-D_POSIX_SOURCE - - # Most systems --#XOPEN_SOURCE=-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -+XOPEN_SOURCE=-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED - # SunOS, (Irix) - #XOPEN_SOURCE=-D__EXTENSIONS__ - --#C99_SOURCE=-std=c99 -DCF_HAS_VA_COPY -+C99_SOURCE=-std=c99 -DCF_HAS_VA_COPY - - # The -DCF_HAS_VA_COPY option should allow for some optimisations, and - # in some cases simply defining diff --git a/x11-wm/ion3/files/20070506/205_all_ion-lock.patch b/x11-wm/ion3/files/20070506/205_all_ion-lock.patch deleted file mode 100644 index dda2016..0000000 --- a/x11-wm/ion3/files/20070506/205_all_ion-lock.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -Nur ion3-20050322.orig/utils/Makefile ion3-20050322/utils/Makefile ---- ion3-20050322.orig/utils/Makefile 2005-03-22 14:31:06.000000000 +0000 -+++ ion3-20050322/utils/Makefile 2005-03-22 16:29:37.197355881 +0000 -@@ -11,7 +11,7 @@ - SUBDIRS=ion-completefile - INSTALL_SUBDIRS=$(SUBDIRS) - --SHELLSCRIPTS = ion-runinxterm ion-completeman -+SHELLSCRIPTS = ion-runinxterm ion-completeman ion-lock - - TARGETS = ion-completeman - -diff -Nur ion3-20050322.orig/utils/ion-lock ion3-20050322/utils/ion-lock ---- ion3-20050322.orig/utils/ion-lock 1970-01-01 00:00:00.000000000 +0000 -+++ ion3-20050322/utils/ion-lock 2005-03-22 16:29:19.550092305 +0000 -@@ -0,0 +1,6 @@ -+#!/bin/sh -+if xscreensaver-command -version >/dev/null 2>&1; then -+ exec xscreensaver-command -lock -+else -+ exec xlock -+fi diff --git a/x11-wm/ion3/files/20070608/201_all_fix-paths.patch b/x11-wm/ion3/files/20070608/201_all_fix-paths.patch deleted file mode 100644 index a9cb080..0000000 --- a/x11-wm/ion3/files/20070608/201_all_fix-paths.patch +++ /dev/null @@ -1,76 +0,0 @@ -diff -uNr ion-3rc-20070608.orig/system.mk ion-3rc-20070608/system.mk ---- ion-3rc-20070608.orig/system.mk 2007-06-08 20:42:05.000000000 +0200 -+++ ion-3rc-20070608/system.mk 2007-06-08 20:47:39.000000000 +0200 -@@ -7,7 +7,7 @@ - ## Installation paths - ## - --PREFIX=/usr/local -+PREFIX=/usr - - # Unless you are creating a package conforming to some OS's standards, you - # probably do not want to modify the following directories: -@@ -15,7 +15,7 @@ - # Main binaries - BINDIR=$(PREFIX)/bin - # Configuration .lua files --ETCDIR=$(PREFIX)/etc/ion3 -+ETCDIR=/etc/X11/ion3 - # Some .lua files and ion-* shell scripts - SHAREDIR=$(PREFIX)/share/ion3 - # Manual pages -@@ -56,18 +56,18 @@ - - # If you have installed Lua 5.1 from the official tarball without changing - # paths, this should do it. --LUA_DIR=/usr/local --LUA_LIBS = -L$(LUA_DIR)/lib -llua --LUA_INCLUDES = -I$(LUA_DIR)/include --LUA=$(LUA_DIR)/bin/lua --LUAC=$(LUA_DIR)/bin/luac -+#LUA_DIR=/usr/local -+#LUA_LIBS = -L$(LUA_DIR)/lib -llua -+#LUA_INCLUDES = -I$(LUA_DIR)/include -+#LUA=$(LUA_DIR)/bin/lua -+#LUAC=$(LUA_DIR)/bin/luac - - # If you are using the Debian packages, the following settings should be - # what you want. --#LUA_LIBS=`pkg-config --libs lua5.1` --#LUA_INCLUDES=`pkg-config --cflags lua5.1` --#LUA=/usr/bin/lua5.1 --#LUAC=/usr/bin/luac5.1 -+LUA_LIBS=`pkg-config --libs lua` -+LUA_INCLUDES=`pkg-config --cflags lua` -+LUA=/usr/bin/lua -+LUAC=/usr/bin/luac - - - ## -@@ -104,7 +104,7 @@ - # asprintf and vasprintf in the c library. (gnu libc has.) - # If HAS_SYSTEM_ASPRINTF is not defined, an implementation - # in sprintf_2.2/ is used. --#HAS_SYSTEM_ASPRINTF=1 -+HAS_SYSTEM_ASPRINTF=1 - - # If you're on an archaic system (such as relatively recent *BSD releases) - # without even dummy multibyte/widechar and localisation support, you may -@@ -143,14 +143,14 @@ - - #C89_SOURCE=-ansi - --#POSIX_SOURCE=-D_POSIX_SOURCE -+POSIX_SOURCE=-D_POSIX_C_SOURCE=200112L - - # Most systems --#XOPEN_SOURCE=-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -+XOPEN_SOURCE=-D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED - # SunOS, (Irix) - #XOPEN_SOURCE=-D__EXTENSIONS__ - --#C99_SOURCE=-std=c99 -DCF_HAS_VA_COPY -+C99_SOURCE=-std=c99 -DCF_HAS_VA_COPY - - # The -DCF_HAS_VA_COPY option should allow for some optimisations, and - # in some cases simply defining diff --git a/x11-wm/ion3/files/20070608/202_all_fix-menus.patch b/x11-wm/ion3/files/20070608/202_all_fix-menus.patch deleted file mode 100644 index c2d77c8..0000000 --- a/x11-wm/ion3/files/20070608/202_all_fix-menus.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Naur ../work/ion-3ds-20061223/etc/cfg_ioncore.lua ion-3ds-20061223/etc/cfg_ioncore.lua ---- ../work/ion-3ds-20061223/etc/cfg_ioncore.lua 2006-12-23 17:59:43.000000000 +0300 -+++ ion-3ds-20061223/etc/cfg_ioncore.lua 2006-12-31 15:35:59.000000000 +0300 -@@ -331,7 +331,8 @@ - defmenu("mainmenu", { - menuentry("Run...", "mod_query.query_exec(_)"), - menuentry("Terminal", "ioncore.exec_on(_, XTERM or 'xterm')"), -- menuentry("Lock screen", "ioncore.exec_on(_, 'xlock')"), -+ menuentry("Lock screen", -+ "ioncore.exec_on(_, ioncore.lookup_script('ion-lock'))"), - menuentry("Help", "mod_query.query_man(_)"), - menuentry("About Ion", "mod_query.show_about_ion(_)"), - submenu("Styles", "stylemenu"), diff --git a/x11-wm/ion3/files/20070608/205_all_ion-lock.patch b/x11-wm/ion3/files/20070608/205_all_ion-lock.patch deleted file mode 100644 index dda2016..0000000 --- a/x11-wm/ion3/files/20070608/205_all_ion-lock.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -Nur ion3-20050322.orig/utils/Makefile ion3-20050322/utils/Makefile ---- ion3-20050322.orig/utils/Makefile 2005-03-22 14:31:06.000000000 +0000 -+++ ion3-20050322/utils/Makefile 2005-03-22 16:29:37.197355881 +0000 -@@ -11,7 +11,7 @@ - SUBDIRS=ion-completefile - INSTALL_SUBDIRS=$(SUBDIRS) - --SHELLSCRIPTS = ion-runinxterm ion-completeman -+SHELLSCRIPTS = ion-runinxterm ion-completeman ion-lock - - TARGETS = ion-completeman - -diff -Nur ion3-20050322.orig/utils/ion-lock ion3-20050322/utils/ion-lock ---- ion3-20050322.orig/utils/ion-lock 1970-01-01 00:00:00.000000000 +0000 -+++ ion3-20050322/utils/ion-lock 2005-03-22 16:29:19.550092305 +0000 -@@ -0,0 +1,6 @@ -+#!/bin/sh -+if xscreensaver-command -version >/dev/null 2>&1; then -+ exec xscreensaver-command -lock -+else -+ exec xlock -+fi diff --git a/x11-wm/ion3/files/20070608/208_all_as-needed.patch b/x11-wm/ion3/files/20070608/208_all_as-needed.patch deleted file mode 100644 index 662a078..0000000 --- a/x11-wm/ion3/files/20070608/208_all_as-needed.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -uNr ion-3ds-20070318.orig/de/Makefile ion-3ds-20070318/de/Makefile ---- ion-3ds-20070318.orig/de/Makefile 2007-03-18 21:31:37.000000000 +0100 -+++ ion-3ds-20070318/de/Makefile 2007-04-30 17:30:23.000000000 +0200 -@@ -17,6 +17,8 @@ - - MAKE_EXPORTS=de - -+LDFLAGS+=-lXext -+ - ###################################### - - include $(TOPDIR)/build/rules.mk diff --git a/x11-wm/ion3/files/20070708/202_all_fix-menus.patch b/x11-wm/ion3/files/20070708/202_all_fix-menus.patch deleted file mode 100644 index c2d77c8..0000000 --- a/x11-wm/ion3/files/20070708/202_all_fix-menus.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Naur ../work/ion-3ds-20061223/etc/cfg_ioncore.lua ion-3ds-20061223/etc/cfg_ioncore.lua ---- ../work/ion-3ds-20061223/etc/cfg_ioncore.lua 2006-12-23 17:59:43.000000000 +0300 -+++ ion-3ds-20061223/etc/cfg_ioncore.lua 2006-12-31 15:35:59.000000000 +0300 -@@ -331,7 +331,8 @@ - defmenu("mainmenu", { - menuentry("Run...", "mod_query.query_exec(_)"), - menuentry("Terminal", "ioncore.exec_on(_, XTERM or 'xterm')"), -- menuentry("Lock screen", "ioncore.exec_on(_, 'xlock')"), -+ menuentry("Lock screen", -+ "ioncore.exec_on(_, ioncore.lookup_script('ion-lock'))"), - menuentry("Help", "mod_query.query_man(_)"), - menuentry("About Ion", "mod_query.show_about_ion(_)"), - submenu("Styles", "stylemenu"), diff --git a/x11-wm/ion3/files/20070708/205_all_ion-lock.patch b/x11-wm/ion3/files/20070708/205_all_ion-lock.patch deleted file mode 100644 index dda2016..0000000 --- a/x11-wm/ion3/files/20070708/205_all_ion-lock.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -Nur ion3-20050322.orig/utils/Makefile ion3-20050322/utils/Makefile ---- ion3-20050322.orig/utils/Makefile 2005-03-22 14:31:06.000000000 +0000 -+++ ion3-20050322/utils/Makefile 2005-03-22 16:29:37.197355881 +0000 -@@ -11,7 +11,7 @@ - SUBDIRS=ion-completefile - INSTALL_SUBDIRS=$(SUBDIRS) - --SHELLSCRIPTS = ion-runinxterm ion-completeman -+SHELLSCRIPTS = ion-runinxterm ion-completeman ion-lock - - TARGETS = ion-completeman - -diff -Nur ion3-20050322.orig/utils/ion-lock ion3-20050322/utils/ion-lock ---- ion3-20050322.orig/utils/ion-lock 1970-01-01 00:00:00.000000000 +0000 -+++ ion3-20050322/utils/ion-lock 2005-03-22 16:29:19.550092305 +0000 -@@ -0,0 +1,6 @@ -+#!/bin/sh -+if xscreensaver-command -version >/dev/null 2>&1; then -+ exec xscreensaver-command -lock -+else -+ exec xlock -+fi diff --git a/x11-wm/ion3/files/20070708/208_all_as-needed.patch b/x11-wm/ion3/files/20070708/208_all_as-needed.patch deleted file mode 100644 index 662a078..0000000 --- a/x11-wm/ion3/files/20070708/208_all_as-needed.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -uNr ion-3ds-20070318.orig/de/Makefile ion-3ds-20070318/de/Makefile ---- ion-3ds-20070318.orig/de/Makefile 2007-03-18 21:31:37.000000000 +0100 -+++ ion-3ds-20070318/de/Makefile 2007-04-30 17:30:23.000000000 +0200 -@@ -17,6 +17,8 @@ - - MAKE_EXPORTS=de - -+LDFLAGS+=-lXext -+ - ###################################### - - include $(TOPDIR)/build/rules.mk diff --git a/x11-wm/ion3/files/20070708/201_all_fix-paths.patch b/x11-wm/ion3/files/20070720/201_all_fix-paths.patch index cb27bfc..cb27bfc 100644 --- a/x11-wm/ion3/files/20070708/201_all_fix-paths.patch +++ b/x11-wm/ion3/files/20070720/201_all_fix-paths.patch diff --git a/x11-wm/ion3/files/20070506/202_all_fix-menus.patch b/x11-wm/ion3/files/20070720/202_all_fix-menus.patch index c2d77c8..c2d77c8 100644 --- a/x11-wm/ion3/files/20070506/202_all_fix-menus.patch +++ b/x11-wm/ion3/files/20070720/202_all_fix-menus.patch diff --git a/x11-wm/ion3/files/20061223/205_all_ion-lock.patch b/x11-wm/ion3/files/20070720/205_all_ion-lock.patch index dda2016..dda2016 100644 --- a/x11-wm/ion3/files/20061223/205_all_ion-lock.patch +++ b/x11-wm/ion3/files/20070720/205_all_ion-lock.patch diff --git a/x11-wm/ion3/files/20070506/208_all_as-needed.patch b/x11-wm/ion3/files/20070720/208_all_as-needed.patch index 662a078..662a078 100644 --- a/x11-wm/ion3/files/20070506/208_all_as-needed.patch +++ b/x11-wm/ion3/files/20070720/208_all_as-needed.patch diff --git a/x11-wm/ion3/files/digest-ion3-20060326 b/x11-wm/ion3/files/digest-ion3-20060326 deleted file mode 100644 index 1b1ac52..0000000 --- a/x11-wm/ion3/files/digest-ion3-20060326 +++ /dev/null @@ -1,3 +0,0 @@ -MD5 3d5628d4efe93f2de804cf5b01abc743 ion-3ds-20060326.tar.gz 617533 -RMD160 147e6ad20c69ca8fe5a80dcd57ce6002a2b3cde1 ion-3ds-20060326.tar.gz 617533 -SHA256 9f3c96c961e47c61e9c10b57de820b608b9d9fdaa43a893e63499b3f17231124 ion-3ds-20060326.tar.gz 617533 diff --git a/x11-wm/ion3/files/digest-ion3-20061223 b/x11-wm/ion3/files/digest-ion3-20061223 deleted file mode 100644 index 1de1302..0000000 --- a/x11-wm/ion3/files/digest-ion3-20061223 +++ /dev/null @@ -1,15 +0,0 @@ -MD5 861887705546ddb5f240f10dbdab5098 ion-3ds-20061223.tar.gz 649463 -RMD160 dc61a012354a30f1a83b8b0970b8c09724ea4c9c ion-3ds-20061223.tar.gz 649463 -SHA256 0970fef74de659de45813471560ebe2f97b893de7a238ea00755fcaeb9b7d89e ion-3ds-20061223.tar.gz 649463 -MD5 3133bab28e984dd568e03e4e3fd0cdd7 ion3-mod-ionflux_20061022.orig.tar.gz 14847 -RMD160 86bcc2a260f3e37d613bcebd66f37616e56d3926 ion3-mod-ionflux_20061022.orig.tar.gz 14847 -SHA256 f9fd872d2d5b35f882d9a9161dee52fd5b2bb346c46f9e6cc30922dcda99c935 ion3-mod-ionflux_20061022.orig.tar.gz 14847 -MD5 454d6eb52c2c7c3622582a97e8e89184 ion3-mod-xrandr-20061021.tar.bz2 10762 -RMD160 cca3f472e32b8aff1ce8af123c24e17574c1b197 ion3-mod-xrandr-20061021.tar.bz2 10762 -SHA256 cd2225a356ddfc6f02062bf23c1e90fa573661347ff185316aeae0e18eee72ef ion3-mod-xrandr-20061021.tar.bz2 10762 -MD5 fd5c13cd038464cab15134e3aaa68617 ion3-scripts_20061214.orig.tar.gz 129181 -RMD160 b22827c490f23252c1953582d24a19a5aa0aaed0 ion3-scripts_20061214.orig.tar.gz 129181 -SHA256 82e25973fcfdd282bdb3734191f8a5b0d711b2bf0cb64196d3b42351185fdbcf ion3-scripts_20061214.orig.tar.gz 129181 -MD5 83a2a2a19cb3faed66b5517e31bee17f xft-ion3-for-darcs-20061202.diff 20126 -RMD160 054efa097492531d800bca85582d5b6836567408 xft-ion3-for-darcs-20061202.diff 20126 -SHA256 6af98c329395acb46ddbdac4f0ba023c6e5344914cc06cdfa82339526ce25b3c xft-ion3-for-darcs-20061202.diff 20126 diff --git a/x11-wm/ion3/files/digest-ion3-20070506-r1 b/x11-wm/ion3/files/digest-ion3-20070506-r1 deleted file mode 100644 index bfefeec..0000000 --- a/x11-wm/ion3/files/digest-ion3-20070506-r1 +++ /dev/null @@ -1,15 +0,0 @@ -MD5 c005ebeb89894eefbb414897d874cee6 ion-3rc-20070506.tar.gz 640482 -RMD160 b5dda6a7a48c1f3d433b2a2b1c37294ece79a259 ion-3rc-20070506.tar.gz 640482 -SHA256 850dce3bd1be5d200fda5ba3e6085f397b35c720f7758dc5481bf503fe5d2f56 ion-3rc-20070506.tar.gz 640482 -MD5 45dc4b83f2badbade8389953b3c49da7 ion-doc-3rc-20070506.tar.gz 669471 -RMD160 aa9e75b60c121d3cd62f60afed4592fe1bc0da87 ion-doc-3rc-20070506.tar.gz 669471 -SHA256 9dac4f5e69121b98cf6e5da455d6185f00605cf237f14fc4f8578446f622476e ion-doc-3rc-20070506.tar.gz 669471 -MD5 c8c2d7b039f751db017275f5f977702e ion3-mod-ionflux-20070512.tar.bz2 12770 -RMD160 8e834de0c3048b676bc5c5d5454aedac09129eb3 ion3-mod-ionflux-20070512.tar.bz2 12770 -SHA256 63c4902159923aa02921e39aa7746ca8819ba1c216efa8fa6384fd093f60d18c ion3-mod-ionflux-20070512.tar.bz2 12770 -MD5 dcb17665b215d0891be40392f57197c1 ion3-mod-xrandr-20070410.tar.bz2 10833 -RMD160 8542c0dfebfd1536e6a1ad89a3b791609ca8f16e ion3-mod-xrandr-20070410.tar.bz2 10833 -SHA256 80f23a435b21f8691fc63b78394fa29b25b5304f46895dd961ac905bcc76c82f ion3-mod-xrandr-20070410.tar.bz2 10833 -MD5 33495ed87edd9c5734a1c413847a3b3d ion3-scripts-20070510.tar.bz2 100952 -RMD160 4ac0fff86a039d5890bd934d80c33bb5a78fb02d ion3-scripts-20070510.tar.bz2 100952 -SHA256 53c4705ab6f880404aae92cef3018a956ee1b55d0e22ef93c12d30527a419a61 ion3-scripts-20070510.tar.bz2 100952 diff --git a/x11-wm/ion3/files/digest-ion3-20070608 b/x11-wm/ion3/files/digest-ion3-20070608 deleted file mode 100644 index 0afc069..0000000 --- a/x11-wm/ion3/files/digest-ion3-20070608 +++ /dev/null @@ -1,6 +0,0 @@ -MD5 ba02edff5d4726104f98fa70b6cd96d8 ion-3rc-20070608.tar.gz 655442 -RMD160 41fd6d581e27770e63f7bc66122684d8c11667f2 ion-3rc-20070608.tar.gz 655442 -SHA256 1ebad89f61c3ac58bd583cfe3a0cb71c5254679a9f35f46d954d6e72eada86e8 ion-3rc-20070608.tar.gz 655442 -MD5 45dc4b83f2badbade8389953b3c49da7 ion-doc-3rc-20070506.tar.gz 669471 -RMD160 aa9e75b60c121d3cd62f60afed4592fe1bc0da87 ion-doc-3rc-20070506.tar.gz 669471 -SHA256 9dac4f5e69121b98cf6e5da455d6185f00605cf237f14fc4f8578446f622476e ion-doc-3rc-20070506.tar.gz 669471 diff --git a/x11-wm/ion3/files/digest-ion3-20070708 b/x11-wm/ion3/files/digest-ion3-20070720 index 0f91241..fccc717 100644 --- a/x11-wm/ion3/files/digest-ion3-20070708 +++ b/x11-wm/ion3/files/digest-ion3-20070720 @@ -1,6 +1,6 @@ -MD5 c9782f343d0c50bef81573644eb7e176 ion-3rc-20070708.tar.gz 655000 -RMD160 85947dc1b1dd7abd4304a42e2e946a7641cda8c4 ion-3rc-20070708.tar.gz 655000 -SHA256 f59eafbda1f13d5d21129c222a4c64b9ce7a4e7b3f9fd93bb739dfd5af1fca0f ion-3rc-20070708.tar.gz 655000 +MD5 cef18d7a4aa476b400ecf722c57f6e6a ion-3rc-20070720.tar.gz 655409 +RMD160 a97944850d88b81dd20d234f3f114e9f3038d0b3 ion-3rc-20070720.tar.gz 655409 +SHA256 c1d412444bbcbb541adab4efd9fecb131065f3c8c908b2fe9dd17707ac03df61 ion-3rc-20070720.tar.gz 655409 MD5 42db17925e8e745c2385f1b42fa26f78 ion-doc-3rc-20070708.tar.gz 669854 RMD160 ba3bdb7b4ca4331738faa0aa2501d662644d0a39 ion-doc-3rc-20070708.tar.gz 669854 SHA256 d1651f219a43f413de618a7bf158ddbc42c2c3025807965271c97214bba10ef3 ion-doc-3rc-20070708.tar.gz 669854 diff --git a/x11-wm/ion3/files/ion3-20060317-truetype.patch b/x11-wm/ion3/files/ion3-20060317-truetype.patch deleted file mode 100644 index 2675dfd..0000000 --- a/x11-wm/ion3/files/ion3-20060317-truetype.patch +++ /dev/null @@ -1,741 +0,0 @@ -diff -Naur ion-3ds-20060317/configure.ac ion-3ds/configure.ac ---- ion-3ds-20060317/configure.ac 2006-03-17 20:43:29.000000000 +0100 -+++ ion-3ds/configure.ac 2006-03-17 23:17:45.000000000 +0100 -@@ -420,6 +420,18 @@ - - dnl }}} - -+AC_ARG_ENABLE([xft], -+ [AS_HELP_STRING([--disable-xft], -+ [Disable XFT Support])]) -+ -+if test "x$enable_xft" != xno; then -+ XFT_CFLAGS=`xft-config --cflags` -+ XFT_CFLAGS="${XFT_CFLAGS} -DXFT" -+ XFT_LIBS=`xft-config --libs` -+fi -+ -+AC_SUBST([XFT_CFLAGS]) -+AC_SUBST([XFT_LIBS]) - - AC_OUTPUT([system-ac.mk]) - -diff -Naur ion-3ds-20060317/de/brush.c ion-3ds/de/brush.c ---- ion-3ds-20060317/de/brush.c 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/brush.c 2006-03-17 23:17:45.000000000 +0100 -@@ -37,7 +37,9 @@ - brush->indicator_w=0; - brush->win=win; - brush->clip_set=FALSE; -- -+#ifdef XFT -+ brush->draw=NULL; -+#endif /* XFT */ - style->usecount++; - - if(!grbrush_init(&(brush->grbrush))){ -@@ -65,7 +67,6 @@ - CREATEOBJ_IMPL(DEBrush, debrush, (p, win, stylename, style)); - } - -- - static DEBrush *do_get_brush(Window win, WRootWin *rootwin, - const char *stylename, bool slave) - { -@@ -104,6 +105,10 @@ - { - destyle_unref(brush->d); - brush->d=NULL; -+#ifdef XFT -+ if(brush->draw!=NULL) -+ XftDrawDestroy(brush->draw); -+#endif /* XFT */ - grbrush_deinit(&(brush->grbrush)); - } - -@@ -114,6 +119,21 @@ - } - - -+#ifdef XFT -+XftDraw *debrush_get_draw(DEBrush *brush, Drawable d) -+{ -+ if(brush->draw==NULL) -+ brush->draw=XftDrawCreate(ioncore_g.dpy, d, -+ XftDEDefaultVisual(), -+ DefaultColormap(ioncore_g.dpy, -+ 0)); -+ else -+ XftDrawChange(brush->draw, d); -+ -+ return brush->draw; -+} -+#endif -+ - /*}}}*/ - - -diff -Naur ion-3ds-20060317/de/brush.h ion-3ds/de/brush.h ---- ion-3ds-20060317/de/brush.h 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/brush.h 2006-03-17 23:17:45.000000000 +0100 -@@ -17,6 +17,9 @@ - #include <ioncore/common.h> - #include <ioncore/gr.h> - #include <ioncore/rectangle.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - INTRCLASS(DEBrush); - -@@ -34,6 +37,9 @@ - DECLCLASS(DEBrush){ - GrBrush grbrush; - DEStyle *d; -+#ifdef XFT -+ XftDraw *draw; -+#endif - DEBrushExtrasFn *extras_fn; - int indicator_w; - Window win; -@@ -104,5 +110,8 @@ - const char *attr); - extern void debrush_clear_area(DEBrush *brush, const WRectangle *geom); - -+#ifdef XFT -+XftDraw *debrush_get_draw(DEBrush *brush, Drawable d); -+#endif - - #endif /* ION_DE_BRUSH_H */ -diff -Naur ion-3ds-20060317/de/colour.c ion-3ds/de/colour.c ---- ion-3ds-20060317/de/colour.c 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/colour.c 2006-03-17 23:17:45.000000000 +0100 -@@ -12,12 +12,23 @@ - #include <ioncore/common.h> - #include "colour.h" - -- - bool de_alloc_colour(WRootWin *rootwin, DEColour *ret, const char *name) - { -+#ifndef XFT - XColor c; - bool ok=FALSE; -+#else /* XFT */ -+ if(name==NULL) -+ return FALSE; -+ return XftColorAllocName( -+ ioncore_g.dpy, -+ XftDEDefaultVisual(), -+ rootwin->default_cmap, -+ name, -+ ret); -+#endif /* XFT */ - -+#ifndef XFT - if(name==NULL) - return FALSE; - -@@ -28,11 +39,13 @@ - } - - return ok; -+#endif /* ! XFT */ - } - - - bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out) - { -+#ifndef XFT - XColor c; - c.pixel=in; - XQueryColor(ioncore_g.dpy, rootwin->default_cmap, &c); -@@ -41,11 +54,20 @@ - return TRUE; - } - return FALSE; -+#else /* XFT */ -+ return XftColorAllocName( -+ ioncore_g.dpy, -+ XftDEDefaultVisual(), -+ rootwin->default_cmap, -+ &(in.color), -+ out); -+#endif /* XFT */ - } - - - void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg) - { -+#ifndef XFT - DEColour pixels[5]; - - pixels[0]=cg->bg; -@@ -60,15 +82,26 @@ - free(cg->spec); - cg->spec=NULL; - } -+#else /* XFT */ -+ de_free_colour(rootwin, cg->bg); -+ de_free_colour(rootwin, cg->fg); -+ de_free_colour(rootwin, cg->hl); -+ de_free_colour(rootwin, cg->sh); -+ de_free_colour(rootwin, cg->pad); -+#endif /* XFT */ - } - - - void de_free_colour(WRootWin *rootwin, DEColour col) - { -+#ifndef XFT - DEColour pixels[1]; - - pixels[0]=col; - - XFreeColors(ioncore_g.dpy, rootwin->default_cmap, pixels, 1, 0); -+#else /* XFT */ -+ XftColorFree(ioncore_g.dpy, XftDEDefaultVisual(), rootwin->default_cmap, &col); -+#endif /* XFT */ - } - -diff -Naur ion-3ds-20060317/de/colour.h ion-3ds/de/colour.h ---- ion-3ds-20060317/de/colour.h 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/colour.h 2006-03-17 23:17:45.000000000 +0100 -@@ -15,12 +15,19 @@ - #include <ioncore/common.h> - #include <ioncore/global.h> - #include <ioncore/rootwin.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - - INTRSTRUCT(DEColourGroup); - - -+#ifndef XFT - typedef unsigned long DEColour; -+#else /* XFT */ -+typedef XftColor DEColour; -+#endif /* XFT */ - - - DECLSTRUCT(DEColourGroup){ -@@ -37,5 +44,6 @@ - bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out); - void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg); - void de_free_colour(WRootWin *rootwin, DEColour col); -+#define XftDEDefaultVisual() DefaultVisual(ioncore_g.dpy, 0) - - #endif /* ION_DE_COLOUR_H */ -diff -Naur ion-3ds-20060317/de/draw.c ion-3ds/de/draw.c ---- ion-3ds-20060317/de/draw.c 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/draw.c 2006-03-17 23:17:45.000000000 +0100 -@@ -79,7 +79,11 @@ - w--; - h--; - -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, tlc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, tlc.pixel); -+#endif /* XFT */ - - - a=(br!=0); -@@ -99,7 +103,11 @@ - } - - -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, brc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, brc.pixel); -+#endif /* XFT */ - - a=(tl!=0); - b=0; -@@ -174,19 +182,35 @@ - GrBorderLine line) - { - if(line==GR_BORDERLINE_LEFT && geom->h>0){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, tlc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, tlc.pixel); -+#endif /* XFT */ - XDrawRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, tl, geom->h); - geom->x+=tl; - }else if(line==GR_BORDERLINE_TOP && geom->w>0){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, tlc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, tlc.pixel); -+#endif /* XFT */ - XDrawRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, geom->w, tl); - geom->y+=tl; - }else if(line==GR_BORDERLINE_RIGHT && geom->h>0){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, brc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, brc.pixel); -+#endif /* XFT */ - XDrawRectangle(ioncore_g.dpy, win, gc, geom->x+geom->w-1-br, geom->y, br, geom->h); - geom->w-=br; - }else if(line==GR_BORDERLINE_BOTTOM && geom->w>0){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, brc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, brc.pixel); -+#endif /* XFT */ - XDrawRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y+geom->h-1-br, geom->w, br); - geom->h-=br; - } -@@ -276,7 +300,11 @@ - } - - if(MATCHES2("*-*-tagged", a1, a2)){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, d->copy_gc, cg->fg); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, d->copy_gc, cg->fg.pixel); -+#endif /* XFT */ - - copy_masked(brush, d->tag_pixmap, brush->win, 0, 0, - d->tag_pixmap_w, d->tag_pixmap_h, -@@ -326,7 +354,11 @@ - GC gc=brush->d->normal_gc; - - if(TRUE/*needfill*/){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, cg->bg); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, cg->bg.pixel); -+#endif /* XFT */ - XFillRectangle(ioncore_g.dpy, brush->win, gc, geom->x, geom->y, - geom->w, geom->h); - } -@@ -468,7 +500,11 @@ - attr.background_pixmap=ParentRelative; - }else{ - attrflags=CWBackPixel; -+#ifndef XFT - attr.background_pixel=brush->d->cgrp.bg; -+#else /* XFT */ -+ attr.background_pixel=brush->d->cgrp.bg.pixel; -+#endif /* XFT */ - } - - XChangeWindowAttributes(ioncore_g.dpy, brush->win, attrflags, &attr); -@@ -484,7 +520,11 @@ - if(cg==NULL) - return; - -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, cg->bg); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, cg->bg.pixel); -+#endif /* XFT */ - XFillRectangle(ioncore_g.dpy, brush->win, gc, - geom->x, geom->y, geom->w, geom->h); - } -diff -Naur ion-3ds-20060317/de/font.c ion-3ds/de/font.c ---- ion-3ds-20060317/de/font.c 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/font.c 2006-03-17 23:17:45.000000000 +0100 -@@ -14,7 +14,9 @@ - #include <libtu/objp.h> - #include <ioncore/common.h> - #include "font.h" -+#ifndef XFT - #include "fontset.h" -+#endif /* ! XFT */ - #include "brush.h" - - -@@ -26,10 +28,13 @@ - - DEFont *de_load_font(const char *fontname) - { -+#ifdef XFT -+ XftFont *font; -+#endif - DEFont *fnt; - XFontSet fontset=NULL; - XFontStruct *fontstruct=NULL; -- -+ - assert(fontname!=NULL); - - /* There shouldn't be that many fonts... */ -@@ -40,6 +45,7 @@ - } - } - -+#ifndef XFT - if(ioncore_g.use_mb){ - fontset=de_create_font_set(fontname); - if(fontset!=NULL){ -@@ -66,13 +72,34 @@ - return NULL; - } - -+#else /* XFT */ -+ if(strncmp(fontname, "xft:", 4)==0){ -+ font=XftFontOpenName(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy), -+ fontname+4); -+ }else{ -+ font=XftFontOpenXlfd(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy), fontname); -+ } -+ -+ if(font==NULL){ -+ if(strcmp(fontname, CF_FALLBACK_FONT_NAME)!=0){ -+ warn(TR("Could not load font \"%s\", trying \"%s\""), -+ fontname, CF_FALLBACK_FONT_NAME); -+ return de_load_font(CF_FALLBACK_FONT_NAME); -+ } -+ return NULL; -+ } -+#endif /* XFT */ - fnt=ALLOC(DEFont); - - if(fnt==NULL) -- return NULL; -+ return NULL; - -+#ifndef XFT - fnt->fontset=fontset; - fnt->fontstruct=fontstruct; -+#else -+ fnt->font=font; -+#endif - fnt->pattern=scopy(fontname); - fnt->next=NULL; - fnt->prev=NULL; -@@ -92,11 +119,13 @@ - style->font=font; - font->refcount++; - -+#ifndef XFT - if(style->font->fontstruct!=NULL){ - XSetFont(ioncore_g.dpy, style->normal_gc, - style->font->fontstruct->fid); - } - -+#endif /* ! XFT */ - return TRUE; - } - -@@ -111,11 +140,13 @@ - if(style->font==NULL) - return FALSE; - -+#ifndef XFT - if(style->font->fontstruct!=NULL){ - XSetFont(ioncore_g.dpy, style->normal_gc, - style->font->fontstruct->fid); - } - -+#endif /* ! XFT */ - return TRUE; - } - -@@ -125,13 +156,17 @@ - if(--font->refcount!=0) - return; - -+#ifndef XFT - if(font->fontset!=NULL) - XFreeFontSet(ioncore_g.dpy, font->fontset); - if(font->fontstruct!=NULL) - XFreeFont(ioncore_g.dpy, font->fontstruct); -+#else /* XFT */ -+ if(font->font!=NULL) -+ XftFontClose(ioncore_g.dpy, font->font); -+#endif /* XFT */ - if(font->pattern!=NULL) -- free(font->pattern); -- -+ free(font->pattern); - UNLINK_ITEM(fonts, font, next, prev); - free(font); - } -@@ -156,6 +191,7 @@ - - void defont_get_font_extents(DEFont *font, GrFontExtents *fnte) - { -+#ifndef XFT - if(font->fontset!=NULL){ - XFontSetExtents *ext=XExtentsOfFontSet(font->fontset); - if(ext==NULL) -@@ -171,7 +207,14 @@ - fnte->baseline=fnt->ascent; - return; - } -- -+#else /* XFT */ -+ if(font->font!=NULL){ -+ fnte->max_height=font->font->ascent+font->font->descent; -+ fnte->max_width=font->font->max_advance_width; -+ fnte->baseline=font->font->ascent; -+ return; -+ } -+#endif /* XFT */ - fail: - DE_RESET_FONT_EXTENTS(fnte); - } -@@ -188,20 +231,35 @@ - - uint defont_get_text_width(DEFont *font, const char *text, uint len) - { -+#ifndef XFT - if(font->fontset!=NULL){ - XRectangle lext; - #ifdef CF_DE_USE_XUTF8 -- if(ioncore_g.enc_utf8) -- Xutf8TextExtents(font->fontset, text, len, NULL, &lext); -- else -+ if(ioncore_g.enc_utf8) -+ Xutf8TextExtents(font->fontset, text, len, NULL, &lext); -+ else - #endif -- XmbTextExtents(font->fontset, text, len, NULL, &lext); -- return lext.width; -+ XmbTextExtents(font->fontset, text, len, NULL, &lext); -+ return lext.width; - }else if(font->fontstruct!=NULL){ - return XTextWidth(font->fontstruct, text, len); - }else{ - return 0; - } -+#else /* XFT */ -+ if(font->font!=NULL){ -+ XGlyphInfo extents; -+ if(ioncore_g.enc_utf8) -+ XftTextExtentsUtf8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, -+ &extents); -+ else -+ XftTextExtents8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, -+ &extents); -+ return extents.xOff; -+ }else{ -+ return 0; -+ } -+#endif /* XFT */ - } - - -@@ -211,6 +269,7 @@ - /*{{{ String drawing */ - - -+#ifndef XFT - void debrush_do_draw_string_default(DEBrush *brush, int x, int y, - const char *str, int len, bool needfill, - DEColourGroup *colours) -@@ -256,6 +315,41 @@ - } - } - -+#else /* XFT */ -+void debrush_do_draw_string_default(DEBrush *brush, -+ int x, int y, const char *str, -+ int len, bool needfill, -+ DEColourGroup *colours) -+{ -+ Window win = brush->win; -+ GC gc=brush->d->normal_gc; -+ XftDraw *draw; -+ XftFont *font; -+ -+ if(brush->d->font==NULL) -+ return; -+ -+ font=brush->d->font->font; -+ draw=debrush_get_draw(brush, win); -+ -+ if(TRUE/*needfill*/){ -+ XGlyphInfo extents; -+ if(ioncore_g.enc_utf8) -+ XftTextExtentsUtf8(ioncore_g.dpy, font, (XftChar8 *)str, len, -+ &extents); -+ else -+ XftTextExtents8(ioncore_g.dpy, font, (XftChar8 *)str, len, &extents); -+ XftDrawRect(draw, &(colours->bg), x-extents.x, y-extents.y, -+ extents.width, extents.height); -+ } -+ -+ if(ioncore_g.enc_utf8) -+ XftDrawStringUtf8(draw, &(colours->fg), font, x, y, (XftChar8 *)str, -+ len); -+ else -+ XftDrawString8(draw, &(colours->fg), font, x, y, (XftChar8 *)str, len); -+} -+#endif /* XFT */ - - void debrush_do_draw_string(DEBrush *brush, int x, int y, - const char *str, int len, bool needfill, -diff -Naur ion-3ds-20060317/de/font.h ion-3ds/de/font.h ---- ion-3ds-20060317/de/font.h 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/font.h 2006-03-17 23:17:45.000000000 +0100 -@@ -14,6 +14,9 @@ - - #include <ioncore/common.h> - #include <ioncore/gr.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - INTRSTRUCT(DEFont); - -@@ -29,6 +32,9 @@ - int refcount; - XFontSet fontset; - XFontStruct *fontstruct; -+#ifdef XFT /* XFT */ -+ XftFont *font; -+#endif /* XFT */ - DEFont *next, *prev; - }; - -diff -Naur ion-3ds-20060317/de/init.c ion-3ds/de/init.c ---- ion-3ds-20060317/de/init.c 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/init.c 2006-03-17 23:17:45.000000000 +0100 -@@ -113,16 +113,19 @@ - void de_get_colour_group(WRootWin *rootwin, DEColourGroup *cg, - ExtlTab tab, DEStyle *based_on) - { -- de_get_colour(rootwin, &(cg->hl), tab, based_on, "highlight_colour", -- DE_WHITE(rootwin)); -- de_get_colour(rootwin, &(cg->sh), tab, based_on, "shadow_colour", -- DE_WHITE(rootwin)); -- de_get_colour(rootwin, &(cg->bg), tab, based_on, "background_colour", -- DE_BLACK(rootwin)); -- de_get_colour(rootwin, &(cg->fg), tab, based_on, "foreground_colour", -- DE_WHITE(rootwin)); -- de_get_colour(rootwin, &(cg->pad), tab, based_on, "padding_colour", -- cg->bg); -+ DEColour black, white; -+#ifdef XFT -+ de_alloc_colour(rootwin, &black, "black"); -+ de_alloc_colour(rootwin, &white, "white"); -+#else -+ black=DE_BLACK(rootwin); -+ white=DE_WHITE(rootwin); -+#endif -+ de_get_colour(rootwin, &(cg->hl), tab, based_on, "highlight_colour", white); -+ de_get_colour(rootwin, &(cg->sh), tab, based_on, "shadow_colour", white); -+ de_get_colour(rootwin, &(cg->bg), tab, based_on, "background_colour", black); -+ de_get_colour(rootwin, &(cg->fg), tab, based_on, "foreground_colour", white); -+ de_get_colour(rootwin, &(cg->pad), tab, based_on, "padding_colour", cg->bg); - } - - -@@ -329,7 +332,6 @@ - - char de_ion_api_version[]=ION_API_VERSION; - -- - bool de_init() - { - WRootWin *rootwin; -diff -Naur ion-3ds-20060317/de/Makefile ion-3ds/de/Makefile ---- ion-3ds-20060317/de/Makefile 2006-03-17 20:43:01.000000000 +0100 -+++ ion-3ds/de/Makefile 2006-03-17 23:17:45.000000000 +0100 -@@ -8,13 +8,12 @@ - - ###################################### - -+ - INCLUDES += $(X11_INCLUDES) $(LIBTU_INCLUDES) $(LIBEXTL_INCLUDES) -I.. - CFLAGS += $(XOPEN_SOURCE) $(C99_SOURCE) - - SOURCES=init.c draw.c font.c colour.c brush.c fontset.c style.c -- - MODULE=de -- - MAKE_EXPORTS=de - - ###################################### -diff -Naur ion-3ds-20060317/de/style.c ion-3ds/de/style.c ---- ion-3ds-20060317/de/style.c 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/style.c 2006-03-17 23:17:45.000000000 +0100 -@@ -74,10 +74,17 @@ - /*gcv.function=GXclear;*/ - gcv.stipple=stipple_pixmap; - gcvmask=GCFillStyle|GCStipple/*|GCFunction*/; -+#ifndef XFT - if(style->font!=NULL && style->font->fontstruct!=NULL){ - gcv.font=style->font->fontstruct->fid; - gcvmask|=GCFont; - } -+#else /* XFT */ -+// if(style->font!=NULL){ -+// gcv.font=style->font; -+// gcvmask|=GCFont; -+// } -+#endif /* XFT */ - - style->stipple_gc=XCreateGC(dpy, root, gcvmask, &gcv); - XCopyGC(dpy, style->normal_gc, -@@ -206,6 +213,14 @@ - - bool destyle_init(DEStyle *style, WRootWin *rootwin, const char *name) - { -+ DEColour black, white; -+#ifdef XFT -+ de_alloc_colour(rootwin, &black, "black"); -+ de_alloc_colour(rootwin, &white, "white"); -+#else -+ black=DE_BLACK(rootwin); -+ white=DE_WHITE(rootwin); -+#endif /* XFT */ - style->style=scopy(name); - if(style->style==NULL) - return FALSE; -@@ -229,11 +244,11 @@ - - style->cgrp_alloced=FALSE; - style->cgrp.spec=NULL; -- style->cgrp.bg=DE_BLACK(rootwin); -- style->cgrp.pad=DE_BLACK(rootwin); -- style->cgrp.fg=DE_WHITE(rootwin); -- style->cgrp.hl=DE_WHITE(rootwin); -- style->cgrp.sh=DE_WHITE(rootwin); -+ style->cgrp.bg=black; -+ style->cgrp.pad=black; -+ style->cgrp.fg=white; -+ style->cgrp.hl=white; -+ style->cgrp.sh=white; - - style->font=NULL; - -@@ -255,7 +270,7 @@ - static DEStyle *do_create_style(WRootWin *rootwin, const char *name) - { - DEStyle *style=ALLOC(DEStyle); -- if(style!=NULL){ -+ if(style!=NULL) { - if(!destyle_init(style, rootwin, name)){ - free(style); - return NULL; -diff -Naur ion-3ds-20060317/de/style.h ion-3ds/de/style.h ---- ion-3ds-20060317/de/style.h 2006-03-17 20:43:04.000000000 +0100 -+++ ion-3ds/de/style.h 2006-03-17 23:17:45.000000000 +0100 -@@ -76,6 +76,7 @@ - Pixmap tag_pixmap; - int tag_pixmap_w; - int tag_pixmap_h; -+ int xft_style; - - DEStyle *next, *prev; - }; -diff -Naur ion-3ds-20060317/system-ac.mk.in ion-3ds/system-ac.mk.in ---- ion-3ds-20060317/system-ac.mk.in 2006-03-17 20:43:03.000000000 +0100 -+++ ion-3ds/system-ac.mk.in 2006-03-17 23:17:45.000000000 +0100 -@@ -188,3 +188,7 @@ - STRIP=@STRIP@ - - RM=rm -+ -+### XFT Support -+CFLAGS+=@XFT_CFLAGS@ -+LIBS+=@XFT_LIBS@ diff --git a/x11-wm/ion3/files/ion3-20060326-truetype.patch b/x11-wm/ion3/files/ion3-20060326-truetype.patch deleted file mode 100644 index ea94577..0000000 --- a/x11-wm/ion3/files/ion3-20060326-truetype.patch +++ /dev/null @@ -1,741 +0,0 @@ -diff -Naur ion-3ds-20060326/configure.ac ion-3ds/configure.ac ---- ion-3ds-20060326/configure.ac 2006-03-26 11:37:58.000000000 +0200 -+++ ion-3ds/configure.ac 2006-04-06 10:08:37.000000000 +0200 -@@ -420,6 +420,18 @@ - - dnl }}} - -+AC_ARG_ENABLE([xft], -+ [AS_HELP_STRING([--disable-xft], -+ [Disable XFT Support])]) -+ -+if test "x$enable_xft" != xno; then -+ XFT_CFLAGS=`xft-config --cflags` -+ XFT_CFLAGS="${XFT_CFLAGS} -DXFT" -+ XFT_LIBS=`xft-config --libs` -+fi -+ -+AC_SUBST([XFT_CFLAGS]) -+AC_SUBST([XFT_LIBS]) - - AC_OUTPUT([system-ac.mk]) - -diff -Naur ion-3ds-20060326/de/brush.c ion-3ds/de/brush.c ---- ion-3ds-20060326/de/brush.c 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/brush.c 2006-04-06 10:08:37.000000000 +0200 -@@ -37,7 +37,9 @@ - brush->indicator_w=0; - brush->win=win; - brush->clip_set=FALSE; -- -+#ifdef XFT -+ brush->draw=NULL; -+#endif /* XFT */ - style->usecount++; - - if(!grbrush_init(&(brush->grbrush))){ -@@ -65,7 +67,6 @@ - CREATEOBJ_IMPL(DEBrush, debrush, (p, win, stylename, style)); - } - -- - static DEBrush *do_get_brush(Window win, WRootWin *rootwin, - const char *stylename, bool slave) - { -@@ -104,6 +105,10 @@ - { - destyle_unref(brush->d); - brush->d=NULL; -+#ifdef XFT -+ if(brush->draw!=NULL) -+ XftDrawDestroy(brush->draw); -+#endif /* XFT */ - grbrush_deinit(&(brush->grbrush)); - } - -@@ -114,6 +119,21 @@ - } - - -+#ifdef XFT -+XftDraw *debrush_get_draw(DEBrush *brush, Drawable d) -+{ -+ if(brush->draw==NULL) -+ brush->draw=XftDrawCreate(ioncore_g.dpy, d, -+ XftDEDefaultVisual(), -+ DefaultColormap(ioncore_g.dpy, -+ 0)); -+ else -+ XftDrawChange(brush->draw, d); -+ -+ return brush->draw; -+} -+#endif -+ - /*}}}*/ - - -diff -Naur ion-3ds-20060326/de/brush.h ion-3ds/de/brush.h ---- ion-3ds-20060326/de/brush.h 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/brush.h 2006-04-06 10:08:37.000000000 +0200 -@@ -17,6 +17,9 @@ - #include <ioncore/common.h> - #include <ioncore/gr.h> - #include <ioncore/rectangle.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - INTRCLASS(DEBrush); - -@@ -34,6 +37,9 @@ - DECLCLASS(DEBrush){ - GrBrush grbrush; - DEStyle *d; -+#ifdef XFT -+ XftDraw *draw; -+#endif - DEBrushExtrasFn *extras_fn; - int indicator_w; - Window win; -@@ -104,5 +110,8 @@ - const char *attr); - extern void debrush_clear_area(DEBrush *brush, const WRectangle *geom); - -+#ifdef XFT -+XftDraw *debrush_get_draw(DEBrush *brush, Drawable d); -+#endif - - #endif /* ION_DE_BRUSH_H */ -diff -Naur ion-3ds-20060326/de/colour.c ion-3ds/de/colour.c ---- ion-3ds-20060326/de/colour.c 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/colour.c 2006-04-06 10:08:37.000000000 +0200 -@@ -12,12 +12,23 @@ - #include <ioncore/common.h> - #include "colour.h" - -- - bool de_alloc_colour(WRootWin *rootwin, DEColour *ret, const char *name) - { -+#ifndef XFT - XColor c; - bool ok=FALSE; -+#else /* XFT */ -+ if(name==NULL) -+ return FALSE; -+ return XftColorAllocName( -+ ioncore_g.dpy, -+ XftDEDefaultVisual(), -+ rootwin->default_cmap, -+ name, -+ ret); -+#endif /* XFT */ - -+#ifndef XFT - if(name==NULL) - return FALSE; - -@@ -28,11 +39,13 @@ - } - - return ok; -+#endif /* ! XFT */ - } - - - bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out) - { -+#ifndef XFT - XColor c; - c.pixel=in; - XQueryColor(ioncore_g.dpy, rootwin->default_cmap, &c); -@@ -41,11 +54,20 @@ - return TRUE; - } - return FALSE; -+#else /* XFT */ -+ return XftColorAllocName( -+ ioncore_g.dpy, -+ XftDEDefaultVisual(), -+ rootwin->default_cmap, -+ &(in.color), -+ out); -+#endif /* XFT */ - } - - - void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg) - { -+#ifndef XFT - DEColour pixels[5]; - - pixels[0]=cg->bg; -@@ -60,15 +82,26 @@ - free(cg->spec); - cg->spec=NULL; - } -+#else /* XFT */ -+ de_free_colour(rootwin, cg->bg); -+ de_free_colour(rootwin, cg->fg); -+ de_free_colour(rootwin, cg->hl); -+ de_free_colour(rootwin, cg->sh); -+ de_free_colour(rootwin, cg->pad); -+#endif /* XFT */ - } - - - void de_free_colour(WRootWin *rootwin, DEColour col) - { -+#ifndef XFT - DEColour pixels[1]; - - pixels[0]=col; - - XFreeColors(ioncore_g.dpy, rootwin->default_cmap, pixels, 1, 0); -+#else /* XFT */ -+ XftColorFree(ioncore_g.dpy, XftDEDefaultVisual(), rootwin->default_cmap, &col); -+#endif /* XFT */ - } - -diff -Naur ion-3ds-20060326/de/colour.h ion-3ds/de/colour.h ---- ion-3ds-20060326/de/colour.h 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/colour.h 2006-04-06 10:08:37.000000000 +0200 -@@ -15,12 +15,19 @@ - #include <ioncore/common.h> - #include <ioncore/global.h> - #include <ioncore/rootwin.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - - INTRSTRUCT(DEColourGroup); - - -+#ifndef XFT - typedef unsigned long DEColour; -+#else /* XFT */ -+typedef XftColor DEColour; -+#endif /* XFT */ - - - DECLSTRUCT(DEColourGroup){ -@@ -37,5 +44,6 @@ - bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out); - void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg); - void de_free_colour(WRootWin *rootwin, DEColour col); -+#define XftDEDefaultVisual() DefaultVisual(ioncore_g.dpy, 0) - - #endif /* ION_DE_COLOUR_H */ -diff -Naur ion-3ds-20060326/de/draw.c ion-3ds/de/draw.c ---- ion-3ds-20060326/de/draw.c 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/draw.c 2006-04-06 10:08:37.000000000 +0200 -@@ -79,7 +79,11 @@ - w--; - h--; - -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, tlc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, tlc.pixel); -+#endif /* XFT */ - - - a=(br!=0); -@@ -99,7 +103,11 @@ - } - - -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, brc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, brc.pixel); -+#endif /* XFT */ - - a=(tl!=0); - b=0; -@@ -174,19 +182,35 @@ - GrBorderLine line) - { - if(line==GR_BORDERLINE_LEFT && geom->h>0){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, tlc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, tlc.pixel); -+#endif /* XFT */ - XDrawRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, tl, geom->h); - geom->x+=tl; - }else if(line==GR_BORDERLINE_TOP && geom->w>0){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, tlc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, tlc.pixel); -+#endif /* XFT */ - XDrawRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, geom->w, tl); - geom->y+=tl; - }else if(line==GR_BORDERLINE_RIGHT && geom->h>0){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, brc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, brc.pixel); -+#endif /* XFT */ - XDrawRectangle(ioncore_g.dpy, win, gc, geom->x+geom->w-1-br, geom->y, br, geom->h); - geom->w-=br; - }else if(line==GR_BORDERLINE_BOTTOM && geom->w>0){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, brc); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, brc.pixel); -+#endif /* XFT */ - XDrawRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y+geom->h-1-br, geom->w, br); - geom->h-=br; - } -@@ -276,7 +300,11 @@ - } - - if(MATCHES2("*-*-tagged", a1, a2)){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, d->copy_gc, cg->fg); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, d->copy_gc, cg->fg.pixel); -+#endif /* XFT */ - - copy_masked(brush, d->tag_pixmap, brush->win, 0, 0, - d->tag_pixmap_w, d->tag_pixmap_h, -@@ -326,7 +354,11 @@ - GC gc=brush->d->normal_gc; - - if(TRUE/*needfill*/){ -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, cg->bg); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, cg->bg.pixel); -+#endif /* XFT */ - XFillRectangle(ioncore_g.dpy, brush->win, gc, geom->x, geom->y, - geom->w, geom->h); - } -@@ -468,7 +500,11 @@ - attr.background_pixmap=ParentRelative; - }else{ - attrflags=CWBackPixel; -+#ifndef XFT - attr.background_pixel=brush->d->cgrp.bg; -+#else /* XFT */ -+ attr.background_pixel=brush->d->cgrp.bg.pixel; -+#endif /* XFT */ - } - - XChangeWindowAttributes(ioncore_g.dpy, brush->win, attrflags, &attr); -@@ -484,7 +520,11 @@ - if(cg==NULL) - return; - -+#ifndef XFT - XSetForeground(ioncore_g.dpy, gc, cg->bg); -+#else /* XFT */ -+ XSetForeground(ioncore_g.dpy, gc, cg->bg.pixel); -+#endif /* XFT */ - XFillRectangle(ioncore_g.dpy, brush->win, gc, - geom->x, geom->y, geom->w, geom->h); - } -diff -Naur ion-3ds-20060326/de/font.c ion-3ds/de/font.c ---- ion-3ds-20060326/de/font.c 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/font.c 2006-04-06 10:08:37.000000000 +0200 -@@ -14,7 +14,9 @@ - #include <libtu/objp.h> - #include <ioncore/common.h> - #include "font.h" -+#ifndef XFT - #include "fontset.h" -+#endif /* ! XFT */ - #include "brush.h" - - -@@ -26,10 +28,13 @@ - - DEFont *de_load_font(const char *fontname) - { -+#ifdef XFT -+ XftFont *font; -+#endif - DEFont *fnt; - XFontSet fontset=NULL; - XFontStruct *fontstruct=NULL; -- -+ - assert(fontname!=NULL); - - /* There shouldn't be that many fonts... */ -@@ -40,6 +45,7 @@ - } - } - -+#ifndef XFT - if(ioncore_g.use_mb){ - fontset=de_create_font_set(fontname); - if(fontset!=NULL){ -@@ -66,13 +72,34 @@ - return NULL; - } - -+#else /* XFT */ -+ if(strncmp(fontname, "xft:", 4)==0){ -+ font=XftFontOpenName(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy), -+ fontname+4); -+ }else{ -+ font=XftFontOpenXlfd(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy), fontname); -+ } -+ -+ if(font==NULL){ -+ if(strcmp(fontname, CF_FALLBACK_FONT_NAME)!=0){ -+ warn(TR("Could not load font \"%s\", trying \"%s\""), -+ fontname, CF_FALLBACK_FONT_NAME); -+ return de_load_font(CF_FALLBACK_FONT_NAME); -+ } -+ return NULL; -+ } -+#endif /* XFT */ - fnt=ALLOC(DEFont); - - if(fnt==NULL) -- return NULL; -+ return NULL; - -+#ifndef XFT - fnt->fontset=fontset; - fnt->fontstruct=fontstruct; -+#else -+ fnt->font=font; -+#endif - fnt->pattern=scopy(fontname); - fnt->next=NULL; - fnt->prev=NULL; -@@ -92,11 +119,13 @@ - style->font=font; - font->refcount++; - -+#ifndef XFT - if(style->font->fontstruct!=NULL){ - XSetFont(ioncore_g.dpy, style->normal_gc, - style->font->fontstruct->fid); - } - -+#endif /* ! XFT */ - return TRUE; - } - -@@ -111,11 +140,13 @@ - if(style->font==NULL) - return FALSE; - -+#ifndef XFT - if(style->font->fontstruct!=NULL){ - XSetFont(ioncore_g.dpy, style->normal_gc, - style->font->fontstruct->fid); - } - -+#endif /* ! XFT */ - return TRUE; - } - -@@ -125,13 +156,17 @@ - if(--font->refcount!=0) - return; - -+#ifndef XFT - if(font->fontset!=NULL) - XFreeFontSet(ioncore_g.dpy, font->fontset); - if(font->fontstruct!=NULL) - XFreeFont(ioncore_g.dpy, font->fontstruct); -+#else /* XFT */ -+ if(font->font!=NULL) -+ XftFontClose(ioncore_g.dpy, font->font); -+#endif /* XFT */ - if(font->pattern!=NULL) -- free(font->pattern); -- -+ free(font->pattern); - UNLINK_ITEM(fonts, font, next, prev); - free(font); - } -@@ -156,6 +191,7 @@ - - void defont_get_font_extents(DEFont *font, GrFontExtents *fnte) - { -+#ifndef XFT - if(font->fontset!=NULL){ - XFontSetExtents *ext=XExtentsOfFontSet(font->fontset); - if(ext==NULL) -@@ -171,7 +207,14 @@ - fnte->baseline=fnt->ascent; - return; - } -- -+#else /* XFT */ -+ if(font->font!=NULL){ -+ fnte->max_height=font->font->ascent+font->font->descent; -+ fnte->max_width=font->font->max_advance_width; -+ fnte->baseline=font->font->ascent; -+ return; -+ } -+#endif /* XFT */ - fail: - DE_RESET_FONT_EXTENTS(fnte); - } -@@ -188,20 +231,35 @@ - - uint defont_get_text_width(DEFont *font, const char *text, uint len) - { -+#ifndef XFT - if(font->fontset!=NULL){ - XRectangle lext; - #ifdef CF_DE_USE_XUTF8 -- if(ioncore_g.enc_utf8) -- Xutf8TextExtents(font->fontset, text, len, NULL, &lext); -- else -+ if(ioncore_g.enc_utf8) -+ Xutf8TextExtents(font->fontset, text, len, NULL, &lext); -+ else - #endif -- XmbTextExtents(font->fontset, text, len, NULL, &lext); -- return lext.width; -+ XmbTextExtents(font->fontset, text, len, NULL, &lext); -+ return lext.width; - }else if(font->fontstruct!=NULL){ - return XTextWidth(font->fontstruct, text, len); - }else{ - return 0; - } -+#else /* XFT */ -+ if(font->font!=NULL){ -+ XGlyphInfo extents; -+ if(ioncore_g.enc_utf8) -+ XftTextExtentsUtf8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, -+ &extents); -+ else -+ XftTextExtents8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, -+ &extents); -+ return extents.xOff; -+ }else{ -+ return 0; -+ } -+#endif /* XFT */ - } - - -@@ -211,6 +269,7 @@ - /*{{{ String drawing */ - - -+#ifndef XFT - void debrush_do_draw_string_default(DEBrush *brush, int x, int y, - const char *str, int len, bool needfill, - DEColourGroup *colours) -@@ -256,6 +315,41 @@ - } - } - -+#else /* XFT */ -+void debrush_do_draw_string_default(DEBrush *brush, -+ int x, int y, const char *str, -+ int len, bool needfill, -+ DEColourGroup *colours) -+{ -+ Window win = brush->win; -+ GC gc=brush->d->normal_gc; -+ XftDraw *draw; -+ XftFont *font; -+ -+ if(brush->d->font==NULL) -+ return; -+ -+ font=brush->d->font->font; -+ draw=debrush_get_draw(brush, win); -+ -+ if(TRUE/*needfill*/){ -+ XGlyphInfo extents; -+ if(ioncore_g.enc_utf8) -+ XftTextExtentsUtf8(ioncore_g.dpy, font, (XftChar8 *)str, len, -+ &extents); -+ else -+ XftTextExtents8(ioncore_g.dpy, font, (XftChar8 *)str, len, &extents); -+ XftDrawRect(draw, &(colours->bg), x-extents.x, y-extents.y, -+ extents.width, extents.height); -+ } -+ -+ if(ioncore_g.enc_utf8) -+ XftDrawStringUtf8(draw, &(colours->fg), font, x, y, (XftChar8 *)str, -+ len); -+ else -+ XftDrawString8(draw, &(colours->fg), font, x, y, (XftChar8 *)str, len); -+} -+#endif /* XFT */ - - void debrush_do_draw_string(DEBrush *brush, int x, int y, - const char *str, int len, bool needfill, -diff -Naur ion-3ds-20060326/de/font.h ion-3ds/de/font.h ---- ion-3ds-20060326/de/font.h 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/font.h 2006-04-06 10:08:37.000000000 +0200 -@@ -14,6 +14,9 @@ - - #include <ioncore/common.h> - #include <ioncore/gr.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - INTRSTRUCT(DEFont); - -@@ -29,6 +32,9 @@ - int refcount; - XFontSet fontset; - XFontStruct *fontstruct; -+#ifdef XFT /* XFT */ -+ XftFont *font; -+#endif /* XFT */ - DEFont *next, *prev; - }; - -diff -Naur ion-3ds-20060326/de/init.c ion-3ds/de/init.c ---- ion-3ds-20060326/de/init.c 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/init.c 2006-04-06 10:08:37.000000000 +0200 -@@ -113,16 +113,19 @@ - void de_get_colour_group(WRootWin *rootwin, DEColourGroup *cg, - ExtlTab tab, DEStyle *based_on) - { -- de_get_colour(rootwin, &(cg->hl), tab, based_on, "highlight_colour", -- DE_WHITE(rootwin)); -- de_get_colour(rootwin, &(cg->sh), tab, based_on, "shadow_colour", -- DE_WHITE(rootwin)); -- de_get_colour(rootwin, &(cg->bg), tab, based_on, "background_colour", -- DE_BLACK(rootwin)); -- de_get_colour(rootwin, &(cg->fg), tab, based_on, "foreground_colour", -- DE_WHITE(rootwin)); -- de_get_colour(rootwin, &(cg->pad), tab, based_on, "padding_colour", -- cg->bg); -+ DEColour black, white; -+#ifdef XFT -+ de_alloc_colour(rootwin, &black, "black"); -+ de_alloc_colour(rootwin, &white, "white"); -+#else -+ black=DE_BLACK(rootwin); -+ white=DE_WHITE(rootwin); -+#endif -+ de_get_colour(rootwin, &(cg->hl), tab, based_on, "highlight_colour", white); -+ de_get_colour(rootwin, &(cg->sh), tab, based_on, "shadow_colour", white); -+ de_get_colour(rootwin, &(cg->bg), tab, based_on, "background_colour", black); -+ de_get_colour(rootwin, &(cg->fg), tab, based_on, "foreground_colour", white); -+ de_get_colour(rootwin, &(cg->pad), tab, based_on, "padding_colour", cg->bg); - } - - -@@ -329,7 +332,6 @@ - - char de_ion_api_version[]=ION_API_VERSION; - -- - bool de_init() - { - WRootWin *rootwin; -diff -Naur ion-3ds-20060326/de/Makefile ion-3ds/de/Makefile ---- ion-3ds-20060326/de/Makefile 2006-03-26 11:37:32.000000000 +0200 -+++ ion-3ds/de/Makefile 2006-04-06 10:08:37.000000000 +0200 -@@ -8,13 +8,12 @@ - - ###################################### - -+ - INCLUDES += $(X11_INCLUDES) $(LIBTU_INCLUDES) $(LIBEXTL_INCLUDES) -I.. - CFLAGS += $(XOPEN_SOURCE) $(C99_SOURCE) - - SOURCES=init.c draw.c font.c colour.c brush.c fontset.c style.c -- - MODULE=de -- - MAKE_EXPORTS=de - - ###################################### -diff -Naur ion-3ds-20060326/de/style.c ion-3ds/de/style.c ---- ion-3ds-20060326/de/style.c 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/style.c 2006-04-06 10:08:37.000000000 +0200 -@@ -74,10 +74,17 @@ - /*gcv.function=GXclear;*/ - gcv.stipple=stipple_pixmap; - gcvmask=GCFillStyle|GCStipple/*|GCFunction*/; -+#ifndef XFT - if(style->font!=NULL && style->font->fontstruct!=NULL){ - gcv.font=style->font->fontstruct->fid; - gcvmask|=GCFont; - } -+#else /* XFT */ -+// if(style->font!=NULL){ -+// gcv.font=style->font; -+// gcvmask|=GCFont; -+// } -+#endif /* XFT */ - - style->stipple_gc=XCreateGC(dpy, root, gcvmask, &gcv); - XCopyGC(dpy, style->normal_gc, -@@ -206,6 +213,14 @@ - - bool destyle_init(DEStyle *style, WRootWin *rootwin, const char *name) - { -+ DEColour black, white; -+#ifdef XFT -+ de_alloc_colour(rootwin, &black, "black"); -+ de_alloc_colour(rootwin, &white, "white"); -+#else -+ black=DE_BLACK(rootwin); -+ white=DE_WHITE(rootwin); -+#endif /* XFT */ - style->style=scopy(name); - if(style->style==NULL) - return FALSE; -@@ -229,11 +244,11 @@ - - style->cgrp_alloced=FALSE; - style->cgrp.spec=NULL; -- style->cgrp.bg=DE_BLACK(rootwin); -- style->cgrp.pad=DE_BLACK(rootwin); -- style->cgrp.fg=DE_WHITE(rootwin); -- style->cgrp.hl=DE_WHITE(rootwin); -- style->cgrp.sh=DE_WHITE(rootwin); -+ style->cgrp.bg=black; -+ style->cgrp.pad=black; -+ style->cgrp.fg=white; -+ style->cgrp.hl=white; -+ style->cgrp.sh=white; - - style->font=NULL; - -@@ -255,7 +270,7 @@ - static DEStyle *do_create_style(WRootWin *rootwin, const char *name) - { - DEStyle *style=ALLOC(DEStyle); -- if(style!=NULL){ -+ if(style!=NULL) { - if(!destyle_init(style, rootwin, name)){ - free(style); - return NULL; -diff -Naur ion-3ds-20060326/de/style.h ion-3ds/de/style.h ---- ion-3ds-20060326/de/style.h 2006-03-26 11:37:34.000000000 +0200 -+++ ion-3ds/de/style.h 2006-04-06 10:08:37.000000000 +0200 -@@ -76,6 +76,7 @@ - Pixmap tag_pixmap; - int tag_pixmap_w; - int tag_pixmap_h; -+ int xft_style; - - DEStyle *next, *prev; - }; -diff -Naur ion-3ds-20060326/system-ac.mk.in ion-3ds/system-ac.mk.in ---- ion-3ds-20060326/system-ac.mk.in 2006-03-26 11:37:33.000000000 +0200 -+++ ion-3ds/system-ac.mk.in 2006-04-06 10:08:37.000000000 +0200 -@@ -188,3 +188,7 @@ - STRIP=@STRIP@ - - RM=rm -+ -+### XFT Support -+CFLAGS+=@XFT_CFLAGS@ -+LIBS+=@XFT_LIBS@ diff --git a/x11-wm/ion3/files/ion3-scripts-20070608.tar.bz2 b/x11-wm/ion3/files/ion3-scripts-20070608.tar.bz2 Binary files differdeleted file mode 100644 index 949a24d..0000000 --- a/x11-wm/ion3/files/ion3-scripts-20070608.tar.bz2 +++ /dev/null diff --git a/x11-wm/ion3/files/xft-ion3-20070318.patch b/x11-wm/ion3/files/xft-ion3-20070318.patch deleted file mode 100644 index f2d9658..0000000 --- a/x11-wm/ion3/files/xft-ion3-20070318.patch +++ /dev/null @@ -1,689 +0,0 @@ -diff -Naur ../work/ion-3/build/ac/configure.ac ion-3ds-20070203/build/ac/configure.ac ---- ../work/ion-3/build/ac/configure.ac 2007-02-21 13:11:28.000000000 +0300 -+++ ion-3ds-20070203/build/ac/configure.ac 2007-02-21 13:11:56.000000000 +0300 -@@ -65,6 +65,8 @@ - - if test "x$enable_xinerama" = xno; then - _DCF_NO_XINERAMA="-DCF_NO_XINERAMA" -+else -+ _DCF_NO_XINERAMA="-DCF_XINERAMA" - fi - - dnl }}} -@@ -427,6 +429,18 @@ - - dnl }}} - -+AC_ARG_ENABLE([xft], -+ [AS_HELP_STRING([--disable-xft], -+ [Disable XFT Support])]) -+ -+if test "x$enable_xft" != xno; then -+ XFT_CFLAGS=`xft-config --cflags` -+ XFT_CFLAGS="${XFT_CFLAGS} -DXFT" -+ XFT_LIBS=`xft-config --libs` -+fi -+ -+AC_SUBST([XFT_CFLAGS]) -+AC_SUBST([XFT_LIBS]) - - AC_OUTPUT([system-ac.mk]) - -diff -Naur ../work/ion-3/build/ac/system-ac.mk.in ion-3ds-20070203/build/ac/system-ac.mk.in ---- ../work/ion-3/build/ac/system-ac.mk.in 2007-02-21 13:11:28.000000000 +0300 -+++ ion-3ds-20070203/build/ac/system-ac.mk.in 2007-02-21 13:11:56.000000000 +0300 -@@ -188,3 +188,7 @@ - STRIP=@STRIP@ - - RM=rm -+ -+### XFT Support -+CFLAGS+=@XFT_CFLAGS@ -+LIBS+=@XFT_LIBS@ -diff -Naur ../work/ion-3/de/brush.c ion-3ds-20070203/de/brush.c ---- ../work/ion-3/de/brush.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/brush.c 2007-02-21 13:11:57.000000000 +0300 -@@ -47,6 +47,9 @@ - - gr_stylespec_init(&brush->current_attr); - -+#ifdef XFT -+ brush->draw=NULL; -+#endif /* XFT */ - style->usecount++; - - if(!grbrush_init(&(brush->grbrush))){ -@@ -127,6 +130,10 @@ - { - destyle_unref(brush->d); - brush->d=NULL; -+#ifdef XFT -+ if(brush->draw!=NULL) -+ XftDrawDestroy(brush->draw); -+#endif /* XFT */ - gr_stylespec_unalloc(&brush->current_attr); - grbrush_deinit(&(brush->grbrush)); - } -@@ -138,6 +145,21 @@ - } - - -+#ifdef XFT -+XftDraw *debrush_get_draw(DEBrush *brush, Drawable d) -+{ -+ if(brush->draw==NULL) -+ brush->draw=XftDrawCreate(ioncore_g.dpy, d, -+ XftDEDefaultVisual(), -+ DefaultColormap(ioncore_g.dpy, -+ 0)); -+ else -+ XftDrawChange(brush->draw, d); -+ -+ return brush->draw; -+} -+#endif -+ - /*}}}*/ - - -diff -Naur ../work/ion-3/de/brush.h ion-3ds-20070203/de/brush.h ---- ../work/ion-3/de/brush.h 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/brush.h 2007-02-21 13:11:57.000000000 +0300 -@@ -17,6 +17,9 @@ - #include <ioncore/common.h> - #include <ioncore/gr.h> - #include <ioncore/rectangle.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - INTRCLASS(DEBrush); - -@@ -36,6 +39,9 @@ - DECLCLASS(DEBrush){ - GrBrush grbrush; - DEStyle *d; -+#ifdef XFT -+ XftDraw *draw; -+#endif - DEBrushExtrasFn *extras_fn; - int indicator_w; - Window win; -@@ -111,5 +117,8 @@ - extern void debrush_fill_area(DEBrush *brush, const WRectangle *geom); - extern void debrush_clear_area(DEBrush *brush, const WRectangle *geom); - -+#ifdef XFT -+XftDraw *debrush_get_draw(DEBrush *brush, Drawable d); -+#endif - - #endif /* ION_DE_BRUSH_H */ -diff -Naur ../work/ion-3/de/colour.c ion-3ds-20070203/de/colour.c ---- ../work/ion-3/de/colour.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/colour.c 2007-02-21 13:11:57.000000000 +0300 -@@ -15,9 +15,21 @@ - - bool de_alloc_colour(WRootWin *rootwin, DEColour *ret, const char *name) - { -+#ifndef XFT - XColor c; - bool ok=FALSE; -+#else /* XFT */ -+ if(name==NULL) -+ return FALSE; -+ return XftColorAllocName( -+ ioncore_g.dpy, -+ XftDEDefaultVisual(), -+ rootwin->default_cmap, -+ name, -+ ret); -+#endif /* XFT */ - -+#ifndef XFT - if(name==NULL) - return FALSE; - -@@ -28,11 +40,13 @@ - } - - return ok; -+#endif /* ! XFT */ - } - - - bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out) - { -+#ifndef XFT - XColor c; - c.pixel=in; - XQueryColor(ioncore_g.dpy, rootwin->default_cmap, &c); -@@ -41,11 +55,20 @@ - return TRUE; - } - return FALSE; -+#else /* XFT */ -+ return XftColorAllocName( -+ ioncore_g.dpy, -+ XftDEDefaultVisual(), -+ rootwin->default_cmap, -+ &(in.color), -+ out); -+#endif /* XFT */ - } - - - void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg) - { -+#ifndef XFT - DEColour pixels[5]; - - pixels[0]=cg->bg; -@@ -57,15 +80,26 @@ - XFreeColors(ioncore_g.dpy, rootwin->default_cmap, pixels, 5, 0); - - gr_stylespec_unalloc(&cg->spec); -+#else /* XFT */ -+ de_free_colour(rootwin, cg->bg); -+ de_free_colour(rootwin, cg->fg); -+ de_free_colour(rootwin, cg->hl); -+ de_free_colour(rootwin, cg->sh); -+ de_free_colour(rootwin, cg->pad); -+#endif /* XFT */ - } - - - void de_free_colour(WRootWin *rootwin, DEColour col) - { -+#ifndef XFT - DEColour pixels[1]; - - pixels[0]=col; - - XFreeColors(ioncore_g.dpy, rootwin->default_cmap, pixels, 1, 0); -+#else /* XFT */ -+ XftColorFree(ioncore_g.dpy, XftDEDefaultVisual(), rootwin->default_cmap, &col); -+#endif /* XFT */ - } - -diff -Naur ../work/ion-3/de/colour.h ion-3ds-20070203/de/colour.h ---- ../work/ion-3/de/colour.h 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/colour.h 2007-02-21 13:11:57.000000000 +0300 -@@ -15,12 +15,19 @@ - #include <ioncore/common.h> - #include <ioncore/global.h> - #include <ioncore/rootwin.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - - INTRSTRUCT(DEColourGroup); - - -+#ifndef XFT - typedef unsigned long DEColour; -+#else /* XFT */ -+typedef XftColor DEColour; -+#endif /* XFT */ - - - DECLSTRUCT(DEColourGroup){ -@@ -37,5 +44,6 @@ - bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out); - void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg); - void de_free_colour(WRootWin *rootwin, DEColour col); -+#define XftDEDefaultVisual() DefaultVisual(ioncore_g.dpy, 0) - - #endif /* ION_DE_COLOUR_H */ -diff -Naur ../work/ion-3/de/draw.c ion-3ds-20070203/de/draw.c ---- ../work/ion-3/de/draw.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/draw.c 2007-02-21 13:11:57.000000000 +0300 -@@ -22,6 +22,14 @@ - #include <X11/extensions/shape.h> - - -+#ifndef XFT -+#define PIXEL(x) x -+#else /* XFT */ -+#define PIXEL(x) x.pixel -+#endif /* XFT */ -+ -+ -+ - /*{{{ Colour group lookup */ - - -@@ -86,8 +94,7 @@ - w--; - h--; - -- XSetForeground(ioncore_g.dpy, gc, tlc); -- -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(tlc)); - - a=(br!=0); - b=0; -@@ -104,9 +111,8 @@ - - XDrawLines(ioncore_g.dpy, win, gc, points, 3, CoordModeOrigin); - } -- - -- XSetForeground(ioncore_g.dpy, gc, brc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(brc)); - - a=(tl!=0); - b=0; -@@ -143,23 +143,23 @@ - GrBorderLine line) - { - if(line==GR_BORDERLINE_LEFT && geom->h>0 && tl>0){ -- XSetForeground(ioncore_g.dpy, gc, tlc); -- XSetBackground(ioncore_g.dpy, gc, tlc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(tlc)); -+ XSetBackground(ioncore_g.dpy, gc, PIXEL(tlc)); - XFillRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, tl, geom->h); - geom->x+=tl; - }else if(line==GR_BORDERLINE_TOP && geom->w>0 && tl>0){ -- XSetForeground(ioncore_g.dpy, gc, tlc); -- XSetBackground(ioncore_g.dpy, gc, tlc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(tlc)); -+ XSetBackground(ioncore_g.dpy, gc, PIXEL(tlc)); - XFillRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, geom->w, tl); - geom->y+=tl; - }else if(line==GR_BORDERLINE_RIGHT && geom->h>0 && br>0){ -- XSetForeground(ioncore_g.dpy, gc, brc); -- XSetBackground(ioncore_g.dpy, gc, brc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(brc)); -+ XSetBackground(ioncore_g.dpy, gc, PIXEL(brc)); - XFillRectangle(ioncore_g.dpy, win, gc, geom->x+geom->w-br, geom->y, br, geom->h); - geom->w-=br; - }else if(line==GR_BORDERLINE_BOTTOM && geom->w>0 && br>0){ -- XSetForeground(ioncore_g.dpy, gc, brc); -- XSetBackground(ioncore_g.dpy, gc, brc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(brc)); -+ XSetBackground(ioncore_g.dpy, gc, PIXEL(brc)); - XFillRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y+geom->h-br, geom->w, br); - geom->h-=br; - } -@@ -293,7 +299,7 @@ - } - - if(MATCHES2(tagged_spec, a1, a2)){ -- XSetForeground(ioncore_g.dpy, d->copy_gc, cg->fg); -+ XSetForeground(ioncore_g.dpy, d->copy_gc, PIXEL(cg->fg)); - - copy_masked(brush, d->tag_pixmap, brush->win, 0, 0, - d->tag_pixmap_w, d->tag_pixmap_h, -@@ -348,7 +354,7 @@ - GC gc=brush->d->normal_gc; - - if(TRUE/*needfill*/){ -- XSetForeground(ioncore_g.dpy, gc, cg->bg); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(cg->bg)); - XFillRectangle(ioncore_g.dpy, brush->win, gc, geom->x, geom->y, - geom->w, geom->h); - } -@@ -513,7 +519,7 @@ - attr.background_pixmap=ParentRelative; - }else{ - attrflags=CWBackPixel; -- attr.background_pixel=brush->d->cgrp.bg; -+ attr.background_pixel=brush->d->PIXEL(cgrp.bg); - } - - XChangeWindowAttributes(ioncore_g.dpy, brush->win, attrflags, &attr); -@@ -529,7 +535,7 @@ - if(cg==NULL) - return; - -- XSetForeground(ioncore_g.dpy, gc, cg->bg); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(cg->bg)); - XFillRectangle(ioncore_g.dpy, brush->win, gc, - geom->x, geom->y, geom->w, geom->h); - } -diff -Naur ../work/ion-3/de/font.c ion-3ds-20070203/de/font.c ---- ../work/ion-3/de/font.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/font.c 2007-02-21 13:11:57.000000000 +0300 -@@ -14,7 +14,9 @@ - #include <libtu/objp.h> - #include <ioncore/common.h> - #include "font.h" -+#ifndef XFT - #include "fontset.h" -+#endif /* ! XFT */ - #include "brush.h" - - -@@ -26,6 +28,9 @@ - - DEFont *de_load_font(const char *fontname) - { -+#ifdef XFT -+ XftFont *font; -+#endif - DEFont *fnt; - XFontSet fontset=NULL; - XFontStruct *fontstruct=NULL; -@@ -40,6 +45,7 @@ - } - } - -+#ifndef XFT - if(ioncore_g.use_mb){ - fontset=de_create_font_set(fontname); - if(fontset!=NULL){ -@@ -66,13 +72,34 @@ - return NULL; - } - -+#else /* XFT */ -+ if(strncmp(fontname, "xft:", 4)==0){ -+ font=XftFontOpenName(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy), -+ fontname+4); -+ }else{ -+ font=XftFontOpenXlfd(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy), fontname); -+ } -+ -+ if(font==NULL){ -+ if(strcmp(fontname, CF_FALLBACK_FONT_NAME)!=0){ -+ warn(TR("Could not load font \"%s\", trying \"%s\""), -+ fontname, CF_FALLBACK_FONT_NAME); -+ return de_load_font(CF_FALLBACK_FONT_NAME); -+ } -+ return NULL; -+ } -+#endif /* XFT */ - fnt=ALLOC(DEFont); - - if(fnt==NULL) - return NULL; - -+#ifndef XFT - fnt->fontset=fontset; - fnt->fontstruct=fontstruct; -+#else -+ fnt->font=font; -+#endif - fnt->pattern=scopy(fontname); - fnt->next=NULL; - fnt->prev=NULL; -@@ -92,11 +119,13 @@ - style->font=font; - font->refcount++; - -+#ifndef XFT - if(style->font->fontstruct!=NULL){ - XSetFont(ioncore_g.dpy, style->normal_gc, - style->font->fontstruct->fid); - } - -+#endif /* ! XFT */ - return TRUE; - } - -@@ -111,11 +140,13 @@ - if(style->font==NULL) - return FALSE; - -+#ifndef XFT - if(style->font->fontstruct!=NULL){ - XSetFont(ioncore_g.dpy, style->normal_gc, - style->font->fontstruct->fid); - } - -+#endif /* ! XFT */ - return TRUE; - } - -@@ -125,10 +156,15 @@ - if(--font->refcount!=0) - return; - -+#ifndef XFT - if(font->fontset!=NULL) - XFreeFontSet(ioncore_g.dpy, font->fontset); - if(font->fontstruct!=NULL) - XFreeFont(ioncore_g.dpy, font->fontstruct); -+#else /* XFT */ -+ if(font->font!=NULL) -+ XftFontClose(ioncore_g.dpy, font->font); -+#endif /* XFT */ - if(font->pattern!=NULL) - free(font->pattern); - -@@ -156,6 +192,7 @@ - - void defont_get_font_extents(DEFont *font, GrFontExtents *fnte) - { -+#ifndef XFT - if(font->fontset!=NULL){ - XFontSetExtents *ext=XExtentsOfFontSet(font->fontset); - if(ext==NULL) -@@ -171,7 +208,14 @@ - fnte->baseline=fnt->ascent; - return; - } -- -+#else /* XFT */ -+ if(font->font!=NULL){ -+ fnte->max_height=font->font->ascent+font->font->descent; -+ fnte->max_width=font->font->max_advance_width; -+ fnte->baseline=font->font->ascent; -+ return; -+ } -+#endif /* XFT */ - fail: - DE_RESET_FONT_EXTENTS(fnte); - } -@@ -188,20 +232,35 @@ - - uint defont_get_text_width(DEFont *font, const char *text, uint len) - { -+#ifndef XFT - if(font->fontset!=NULL){ - XRectangle lext; - #ifdef CF_DE_USE_XUTF8 -- if(ioncore_g.enc_utf8) -- Xutf8TextExtents(font->fontset, text, len, NULL, &lext); -- else -+ if(ioncore_g.enc_utf8) -+ Xutf8TextExtents(font->fontset, text, len, NULL, &lext); -+ else - #endif -- XmbTextExtents(font->fontset, text, len, NULL, &lext); -- return lext.width; -+ XmbTextExtents(font->fontset, text, len, NULL, &lext); -+ return lext.width; - }else if(font->fontstruct!=NULL){ - return XTextWidth(font->fontstruct, text, len); - }else{ - return 0; - } -+#else /* XFT */ -+ if(font->font!=NULL){ -+ XGlyphInfo extents; -+ if(ioncore_g.enc_utf8) -+ XftTextExtentsUtf8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, -+ &extents); -+ else -+ XftTextExtents8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, -+ &extents); -+ return extents.xOff; -+ }else{ -+ return 0; -+ } -+#endif /* XFT */ - } - - -@@ -211,6 +270,7 @@ - /*{{{ String drawing */ - - -+#ifndef XFT - void debrush_do_draw_string_default(DEBrush *brush, int x, int y, - const char *str, int len, bool needfill, - DEColourGroup *colours) -@@ -256,6 +316,41 @@ - } - } - -+#else /* XFT */ -+void debrush_do_draw_string_default(DEBrush *brush, -+ int x, int y, const char *str, -+ int len, bool needfill, -+ DEColourGroup *colours) -+{ -+ Window win = brush->win; -+ GC gc=brush->d->normal_gc; -+ XftDraw *draw; -+ XftFont *font; -+ -+ if(brush->d->font==NULL) -+ return; -+ -+ font=brush->d->font->font; -+ draw=debrush_get_draw(brush, win); -+ -+ if(needfill){ -+ XGlyphInfo extents; -+ if(ioncore_g.enc_utf8) -+ XftTextExtentsUtf8(ioncore_g.dpy, font, (XftChar8 *)str, len, -+ &extents); -+ else -+ XftTextExtents8(ioncore_g.dpy, font, (XftChar8 *)str, len, &extents); -+ XftDrawRect(draw, &(colours->bg), x-extents.x, y-extents.y, -+ extents.width+10, extents.height); -+ } -+ -+ if(ioncore_g.enc_utf8) -+ XftDrawStringUtf8(draw, &(colours->fg), font, x, y, (XftChar8 *)str, -+ len); -+ else -+ XftDrawString8(draw, &(colours->fg), font, x, y, (XftChar8 *)str, len); -+} -+#endif /* XFT */ - - void debrush_do_draw_string(DEBrush *brush, int x, int y, - const char *str, int len, bool needfill, -diff -Naur ../work/ion-3/de/font.h ion-3ds-20070203/de/font.h ---- ../work/ion-3/de/font.h 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/font.h 2007-02-21 13:11:57.000000000 +0300 -@@ -14,6 +14,9 @@ - - #include <ioncore/common.h> - #include <ioncore/gr.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - INTRSTRUCT(DEFont); - -@@ -29,6 +32,9 @@ - int refcount; - XFontSet fontset; - XFontStruct *fontstruct; -+#ifdef XFT /* XFT */ -+ XftFont *font; -+#endif /* XFT */ - DEFont *next, *prev; - }; - -diff -Naur ../work/ion-3/de/init.c ion-3ds-20070203/de/init.c ---- ../work/ion-3/de/init.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/init.c 2007-02-21 13:11:57.000000000 +0300 -@@ -138,16 +138,19 @@ - void de_get_colour_group(WRootWin *rootwin, DEColourGroup *cg, - ExtlTab tab, DEStyle *based_on) - { -- de_get_colour(rootwin, &(cg->hl), tab, based_on, "highlight_colour", -- DE_WHITE(rootwin)); -- de_get_colour(rootwin, &(cg->sh), tab, based_on, "shadow_colour", -- DE_WHITE(rootwin)); -- de_get_colour(rootwin, &(cg->bg), tab, based_on, "background_colour", -- DE_BLACK(rootwin)); -- de_get_colour(rootwin, &(cg->fg), tab, based_on, "foreground_colour", -- DE_WHITE(rootwin)); -- de_get_colour(rootwin, &(cg->pad), tab, based_on, "padding_colour", -- cg->bg); -+ DEColour black, white; -+#ifdef XFT -+ de_alloc_colour(rootwin, &black, "black"); -+ de_alloc_colour(rootwin, &white, "white"); -+#else -+ black=DE_BLACK(rootwin); -+ white=DE_WHITE(rootwin); -+#endif -+ de_get_colour(rootwin, &(cg->hl), tab, based_on, "highlight_colour", white); -+ de_get_colour(rootwin, &(cg->sh), tab, based_on, "shadow_colour", white); -+ de_get_colour(rootwin, &(cg->bg), tab, based_on, "background_colour", black); -+ de_get_colour(rootwin, &(cg->fg), tab, based_on, "foreground_colour", white); -+ de_get_colour(rootwin, &(cg->pad), tab, based_on, "padding_colour", cg->bg); - } - - -diff -Naur ../work/ion-3/de/style.c ion-3ds-20070203/de/style.c ---- ../work/ion-3/de/style.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/style.c 2007-02-21 13:11:57.000000000 +0300 -@@ -74,10 +74,17 @@ - /*gcv.function=GXclear;*/ - gcv.stipple=stipple_pixmap; - gcvmask=GCFillStyle|GCStipple/*|GCFunction*/; -+#ifndef XFT - if(style->font!=NULL && style->font->fontstruct!=NULL){ - gcv.font=style->font->fontstruct->fid; - gcvmask|=GCFont; - } -+#else /* XFT */ -+// if(style->font!=NULL){ -+// gcv.font=style->font; -+// gcvmask|=GCFont; -+// } -+#endif /* XFT */ - - style->stipple_gc=XCreateGC(dpy, root, gcvmask, &gcv); - XCopyGC(dpy, style->normal_gc, -@@ -205,6 +212,14 @@ - - bool destyle_init(DEStyle *style, WRootWin *rootwin, const char *name) - { -+ DEColour black, white; -+#ifdef XFT -+ de_alloc_colour(rootwin, &black, "black"); -+ de_alloc_colour(rootwin, &white, "white"); -+#else -+ black=DE_BLACK(rootwin); -+ white=DE_WHITE(rootwin); -+#endif /* XFT */ - if(!gr_stylespec_load(&style->spec, name)) - return FALSE; - -@@ -226,11 +241,11 @@ - style->textalign=DEALIGN_CENTER; - - style->cgrp_alloced=FALSE; -- style->cgrp.bg=DE_BLACK(rootwin); -- style->cgrp.pad=DE_BLACK(rootwin); -- style->cgrp.fg=DE_WHITE(rootwin); -- style->cgrp.hl=DE_WHITE(rootwin); -- style->cgrp.sh=DE_WHITE(rootwin); -+ style->cgrp.bg=black; -+ style->cgrp.pad=black; -+ style->cgrp.fg=white; -+ style->cgrp.hl=white; -+ style->cgrp.sh=white; - gr_stylespec_init(&style->cgrp.spec); - - style->font=NULL; -diff -Naur ../work/ion-3/de/style.h ion-3ds-20070203/de/style.h ---- ../work/ion-3/de/style.h 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/style.h 2007-02-21 13:11:57.000000000 +0300 -@@ -76,6 +76,7 @@ - Pixmap tag_pixmap; - int tag_pixmap_w; - int tag_pixmap_h; -+ int xft_style; - - DEStyle *next, *prev; - }; diff --git a/x11-wm/ion3/files/xft-ion3-20070506.patch b/x11-wm/ion3/files/xft-ion3-20070506.patch deleted file mode 100644 index 0cff558..0000000 --- a/x11-wm/ion3/files/xft-ion3-20070506.patch +++ /dev/null @@ -1,669 +0,0 @@ -diff -Naur ../work/ion-3/de/brush.c ion-3ds-20070203/de/brush.c ---- ../work/ion-3/de/brush.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/brush.c 2007-02-21 13:11:57.000000000 +0300 -@@ -47,6 +47,9 @@ - - gr_stylespec_init(&brush->current_attr); - -+#ifdef XFT -+ brush->draw=NULL; -+#endif /* XFT */ - style->usecount++; - - if(!grbrush_init(&(brush->grbrush))){ -@@ -127,6 +130,10 @@ - { - destyle_unref(brush->d); - brush->d=NULL; -+#ifdef XFT -+ if(brush->draw!=NULL) -+ XftDrawDestroy(brush->draw); -+#endif /* XFT */ - gr_stylespec_unalloc(&brush->current_attr); - grbrush_deinit(&(brush->grbrush)); - } -@@ -138,6 +145,21 @@ - } - - -+#ifdef XFT -+XftDraw *debrush_get_draw(DEBrush *brush, Drawable d) -+{ -+ if(brush->draw==NULL) -+ brush->draw=XftDrawCreate(ioncore_g.dpy, d, -+ XftDEDefaultVisual(), -+ DefaultColormap(ioncore_g.dpy, -+ 0)); -+ else -+ XftDrawChange(brush->draw, d); -+ -+ return brush->draw; -+} -+#endif -+ - /*}}}*/ - - -diff -Naur ../work/ion-3/de/brush.h ion-3ds-20070203/de/brush.h ---- ../work/ion-3/de/brush.h 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/brush.h 2007-02-21 13:11:57.000000000 +0300 -@@ -17,6 +17,9 @@ - #include <ioncore/common.h> - #include <ioncore/gr.h> - #include <ioncore/rectangle.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - INTRCLASS(DEBrush); - -@@ -36,6 +39,9 @@ - DECLCLASS(DEBrush){ - GrBrush grbrush; - DEStyle *d; -+#ifdef XFT -+ XftDraw *draw; -+#endif - DEBrushExtrasFn *extras_fn; - int indicator_w; - Window win; -@@ -111,5 +117,8 @@ - extern void debrush_fill_area(DEBrush *brush, const WRectangle *geom); - extern void debrush_clear_area(DEBrush *brush, const WRectangle *geom); - -+#ifdef XFT -+XftDraw *debrush_get_draw(DEBrush *brush, Drawable d); -+#endif - - #endif /* ION_DE_BRUSH_H */ -diff -Naur ../work/ion-3/de/colour.c ion-3ds-20070203/de/colour.c ---- ../work/ion-3/de/colour.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/colour.c 2007-02-21 13:11:57.000000000 +0300 -@@ -15,9 +15,21 @@ - - bool de_alloc_colour(WRootWin *rootwin, DEColour *ret, const char *name) - { -+#ifndef XFT - XColor c; - bool ok=FALSE; -+#else /* XFT */ -+ if(name==NULL) -+ return FALSE; -+ return XftColorAllocName( -+ ioncore_g.dpy, -+ XftDEDefaultVisual(), -+ rootwin->default_cmap, -+ name, -+ ret); -+#endif /* XFT */ - -+#ifndef XFT - if(name==NULL) - return FALSE; - -@@ -28,11 +40,13 @@ - } - - return ok; -+#endif /* ! XFT */ - } - - - bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out) - { -+#ifndef XFT - XColor c; - c.pixel=in; - XQueryColor(ioncore_g.dpy, rootwin->default_cmap, &c); -@@ -41,11 +55,20 @@ - return TRUE; - } - return FALSE; -+#else /* XFT */ -+ return XftColorAllocName( -+ ioncore_g.dpy, -+ XftDEDefaultVisual(), -+ rootwin->default_cmap, -+ &(in.color), -+ out); -+#endif /* XFT */ - } - - - void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg) - { -+#ifndef XFT - DEColour pixels[5]; - - pixels[0]=cg->bg; -@@ -57,15 +80,26 @@ - XFreeColors(ioncore_g.dpy, rootwin->default_cmap, pixels, 5, 0); - - gr_stylespec_unalloc(&cg->spec); -+#else /* XFT */ -+ de_free_colour(rootwin, cg->bg); -+ de_free_colour(rootwin, cg->fg); -+ de_free_colour(rootwin, cg->hl); -+ de_free_colour(rootwin, cg->sh); -+ de_free_colour(rootwin, cg->pad); -+#endif /* XFT */ - } - - - void de_free_colour(WRootWin *rootwin, DEColour col) - { -+#ifndef XFT - DEColour pixels[1]; - - pixels[0]=col; - - XFreeColors(ioncore_g.dpy, rootwin->default_cmap, pixels, 1, 0); -+#else /* XFT */ -+ XftColorFree(ioncore_g.dpy, XftDEDefaultVisual(), rootwin->default_cmap, &col); -+#endif /* XFT */ - } - -diff -Naur ../work/ion-3/de/colour.h ion-3ds-20070203/de/colour.h ---- ../work/ion-3/de/colour.h 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/colour.h 2007-02-21 13:11:57.000000000 +0300 -@@ -15,12 +15,19 @@ - #include <ioncore/common.h> - #include <ioncore/global.h> - #include <ioncore/rootwin.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - - INTRSTRUCT(DEColourGroup); - - -+#ifndef XFT - typedef unsigned long DEColour; -+#else /* XFT */ -+typedef XftColor DEColour; -+#endif /* XFT */ - - - DECLSTRUCT(DEColourGroup){ -@@ -37,5 +44,6 @@ - bool de_duplicate_colour(WRootWin *rootwin, DEColour in, DEColour *out); - void de_free_colour_group(WRootWin *rootwin, DEColourGroup *cg); - void de_free_colour(WRootWin *rootwin, DEColour col); -+#define XftDEDefaultVisual() DefaultVisual(ioncore_g.dpy, 0) - - #endif /* ION_DE_COLOUR_H */ -diff -Naur ../work/ion-3/de/draw.c ion-3ds-20070203/de/draw.c ---- ../work/ion-3/de/draw.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/draw.c 2007-02-21 13:11:57.000000000 +0300 -@@ -22,6 +22,14 @@ - #include <X11/extensions/shape.h> - - -+#ifndef XFT -+#define PIXEL(x) x -+#else /* XFT */ -+#define PIXEL(x) x.pixel -+#endif /* XFT */ -+ -+ -+ - /*{{{ Colour group lookup */ - - -@@ -86,8 +94,7 @@ - w--; - h--; - -- XSetForeground(ioncore_g.dpy, gc, tlc); -- -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(tlc)); - - a=(br!=0); - b=0; -@@ -104,9 +111,8 @@ - - XDrawLines(ioncore_g.dpy, win, gc, points, 3, CoordModeOrigin); - } -- - -- XSetForeground(ioncore_g.dpy, gc, brc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(brc)); - - a=(tl!=0); - b=0; -@@ -143,23 +143,23 @@ - GrBorderLine line) - { - if(line==GR_BORDERLINE_LEFT && geom->h>0 && tl>0){ -- XSetForeground(ioncore_g.dpy, gc, tlc); -- XSetBackground(ioncore_g.dpy, gc, tlc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(tlc)); -+ XSetBackground(ioncore_g.dpy, gc, PIXEL(tlc)); - XFillRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, tl, geom->h); - geom->x+=tl; - }else if(line==GR_BORDERLINE_TOP && geom->w>0 && tl>0){ -- XSetForeground(ioncore_g.dpy, gc, tlc); -- XSetBackground(ioncore_g.dpy, gc, tlc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(tlc)); -+ XSetBackground(ioncore_g.dpy, gc, PIXEL(tlc)); - XFillRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y, geom->w, tl); - geom->y+=tl; - }else if(line==GR_BORDERLINE_RIGHT && geom->h>0 && br>0){ -- XSetForeground(ioncore_g.dpy, gc, brc); -- XSetBackground(ioncore_g.dpy, gc, brc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(brc)); -+ XSetBackground(ioncore_g.dpy, gc, PIXEL(brc)); - XFillRectangle(ioncore_g.dpy, win, gc, geom->x+geom->w-br, geom->y, br, geom->h); - geom->w-=br; - }else if(line==GR_BORDERLINE_BOTTOM && geom->w>0 && br>0){ -- XSetForeground(ioncore_g.dpy, gc, brc); -- XSetBackground(ioncore_g.dpy, gc, brc); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(brc)); -+ XSetBackground(ioncore_g.dpy, gc, PIXEL(brc)); - XFillRectangle(ioncore_g.dpy, win, gc, geom->x, geom->y+geom->h-br, geom->w, br); - geom->h-=br; - } -@@ -293,7 +299,7 @@ - } - - if(ISSET(a2, GR_ATTR(tagged)) || ISSET(a1, GR_ATTR(tagged))){ -- XSetForeground(ioncore_g.dpy, d->copy_gc, cg->fg); -+ XSetForeground(ioncore_g.dpy, d->copy_gc, PIXEL(cg->fg)); - - copy_masked(brush, d->tag_pixmap, brush->win, 0, 0, - d->tag_pixmap_w, d->tag_pixmap_h, -@@ -348,7 +354,7 @@ - GC gc=brush->d->normal_gc; - - if(TRUE/*needfill*/){ -- XSetForeground(ioncore_g.dpy, gc, cg->bg); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(cg->bg)); - XFillRectangle(ioncore_g.dpy, brush->win, gc, geom->x, geom->y, - geom->w, geom->h); - } -@@ -513,7 +519,7 @@ - attr.background_pixmap=ParentRelative; - }else{ - attrflags=CWBackPixel; -- attr.background_pixel=brush->d->cgrp.bg; -+ attr.background_pixel=brush->d->PIXEL(cgrp.bg); - } - - XChangeWindowAttributes(ioncore_g.dpy, brush->win, attrflags, &attr); -@@ -529,7 +535,7 @@ - if(cg==NULL) - return; - -- XSetForeground(ioncore_g.dpy, gc, cg->bg); -+ XSetForeground(ioncore_g.dpy, gc, PIXEL(cg->bg)); - XFillRectangle(ioncore_g.dpy, brush->win, gc, - geom->x, geom->y, geom->w, geom->h); - } -diff -Naur ../work/ion-3/de/font.c ion-3ds-20070203/de/font.c ---- ../work/ion-3/de/font.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/font.c 2007-02-21 13:11:57.000000000 +0300 -@@ -14,7 +14,9 @@ - #include <libtu/objp.h> - #include <ioncore/common.h> - #include "font.h" -+#ifndef XFT - #include "fontset.h" -+#endif /* ! XFT */ - #include "brush.h" - - -@@ -26,6 +28,9 @@ - - DEFont *de_load_font(const char *fontname) - { -+#ifdef XFT -+ XftFont *font; -+#endif - DEFont *fnt; - XFontSet fontset=NULL; - XFontStruct *fontstruct=NULL; -@@ -40,6 +45,7 @@ - } - } - -+#ifndef XFT - if(ioncore_g.use_mb){ - fontset=de_create_font_set(fontname); - if(fontset!=NULL){ -@@ -66,13 +72,34 @@ - return NULL; - } - -+#else /* XFT */ -+ if(strncmp(fontname, "xft:", 4)==0){ -+ font=XftFontOpenName(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy), -+ fontname+4); -+ }else{ -+ font=XftFontOpenXlfd(ioncore_g.dpy, DefaultScreen(ioncore_g.dpy), fontname); -+ } -+ -+ if(font==NULL){ -+ if(strcmp(fontname, CF_FALLBACK_FONT_NAME)!=0){ -+ warn(TR("Could not load font \"%s\", trying \"%s\""), -+ fontname, CF_FALLBACK_FONT_NAME); -+ return de_load_font(CF_FALLBACK_FONT_NAME); -+ } -+ return NULL; -+ } -+#endif /* XFT */ - fnt=ALLOC(DEFont); - - if(fnt==NULL) - return NULL; - -+#ifndef XFT - fnt->fontset=fontset; - fnt->fontstruct=fontstruct; -+#else -+ fnt->font=font; -+#endif - fnt->pattern=scopy(fontname); - fnt->next=NULL; - fnt->prev=NULL; -@@ -92,11 +119,13 @@ - style->font=font; - font->refcount++; - -+#ifndef XFT - if(style->font->fontstruct!=NULL){ - XSetFont(ioncore_g.dpy, style->normal_gc, - style->font->fontstruct->fid); - } - -+#endif /* ! XFT */ - return TRUE; - } - -@@ -111,11 +140,13 @@ - if(style->font==NULL) - return FALSE; - -+#ifndef XFT - if(style->font->fontstruct!=NULL){ - XSetFont(ioncore_g.dpy, style->normal_gc, - style->font->fontstruct->fid); - } - -+#endif /* ! XFT */ - return TRUE; - } - -@@ -125,10 +156,15 @@ - if(--font->refcount!=0) - return; - -+#ifndef XFT - if(font->fontset!=NULL) - XFreeFontSet(ioncore_g.dpy, font->fontset); - if(font->fontstruct!=NULL) - XFreeFont(ioncore_g.dpy, font->fontstruct); -+#else /* XFT */ -+ if(font->font!=NULL) -+ XftFontClose(ioncore_g.dpy, font->font); -+#endif /* XFT */ - if(font->pattern!=NULL) - free(font->pattern); - -@@ -156,6 +192,7 @@ - - void defont_get_font_extents(DEFont *font, GrFontExtents *fnte) - { -+#ifndef XFT - if(font->fontset!=NULL){ - XFontSetExtents *ext=XExtentsOfFontSet(font->fontset); - if(ext==NULL) -@@ -171,7 +208,14 @@ - fnte->baseline=fnt->ascent; - return; - } -- -+#else /* XFT */ -+ if(font->font!=NULL){ -+ fnte->max_height=font->font->ascent+font->font->descent; -+ fnte->max_width=font->font->max_advance_width; -+ fnte->baseline=font->font->ascent; -+ return; -+ } -+#endif /* XFT */ - fail: - DE_RESET_FONT_EXTENTS(fnte); - } -@@ -188,20 +232,35 @@ - - uint defont_get_text_width(DEFont *font, const char *text, uint len) - { -+#ifndef XFT - if(font->fontset!=NULL){ - XRectangle lext; - #ifdef CF_DE_USE_XUTF8 -- if(ioncore_g.enc_utf8) -- Xutf8TextExtents(font->fontset, text, len, NULL, &lext); -- else -+ if(ioncore_g.enc_utf8) -+ Xutf8TextExtents(font->fontset, text, len, NULL, &lext); -+ else - #endif -- XmbTextExtents(font->fontset, text, len, NULL, &lext); -- return lext.width; -+ XmbTextExtents(font->fontset, text, len, NULL, &lext); -+ return lext.width; - }else if(font->fontstruct!=NULL){ - return XTextWidth(font->fontstruct, text, len); - }else{ - return 0; - } -+#else /* XFT */ -+ if(font->font!=NULL){ -+ XGlyphInfo extents; -+ if(ioncore_g.enc_utf8) -+ XftTextExtentsUtf8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, -+ &extents); -+ else -+ XftTextExtents8(ioncore_g.dpy, font->font, (XftChar8 *)text, len, -+ &extents); -+ return extents.xOff; -+ }else{ -+ return 0; -+ } -+#endif /* XFT */ - } - - -@@ -211,6 +270,7 @@ - /*{{{ String drawing */ - - -+#ifndef XFT - void debrush_do_draw_string_default(DEBrush *brush, int x, int y, - const char *str, int len, bool needfill, - DEColourGroup *colours) -@@ -256,6 +316,41 @@ - } - } - -+#else /* XFT */ -+void debrush_do_draw_string_default(DEBrush *brush, -+ int x, int y, const char *str, -+ int len, bool needfill, -+ DEColourGroup *colours) -+{ -+ Window win = brush->win; -+ GC gc=brush->d->normal_gc; -+ XftDraw *draw; -+ XftFont *font; -+ -+ if(brush->d->font==NULL) -+ return; -+ -+ font=brush->d->font->font; -+ draw=debrush_get_draw(brush, win); -+ -+ if(needfill){ -+ XGlyphInfo extents; -+ if(ioncore_g.enc_utf8) -+ XftTextExtentsUtf8(ioncore_g.dpy, font, (XftChar8 *)str, len, -+ &extents); -+ else -+ XftTextExtents8(ioncore_g.dpy, font, (XftChar8 *)str, len, &extents); -+ XftDrawRect(draw, &(colours->bg), x-extents.x, y-extents.y, -+ extents.width+10, extents.height); -+ } -+ -+ if(ioncore_g.enc_utf8) -+ XftDrawStringUtf8(draw, &(colours->fg), font, x, y, (XftChar8 *)str, -+ len); -+ else -+ XftDrawString8(draw, &(colours->fg), font, x, y, (XftChar8 *)str, len); -+} -+#endif /* XFT */ - - void debrush_do_draw_string(DEBrush *brush, int x, int y, - const char *str, int len, bool needfill, -diff -Naur ../work/ion-3/de/font.h ion-3ds-20070203/de/font.h ---- ../work/ion-3/de/font.h 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/font.h 2007-02-21 13:11:57.000000000 +0300 -@@ -14,6 +14,9 @@ - - #include <ioncore/common.h> - #include <ioncore/gr.h> -+#ifdef XFT -+#include <X11/Xft/Xft.h> -+#endif /* XFT */ - - INTRSTRUCT(DEFont); - -@@ -29,6 +32,9 @@ - int refcount; - XFontSet fontset; - XFontStruct *fontstruct; -+#ifdef XFT /* XFT */ -+ XftFont *font; -+#endif /* XFT */ - DEFont *next, *prev; - }; - -diff -Naur ../work/ion-3/de/init.c ion-3ds-20070203/de/init.c ---- ../work/ion-3/de/init.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/init.c 2007-02-21 13:11:57.000000000 +0300 -@@ -165,17 +165,26 @@ - { - bool bgset; - DEColour padinh; -- -+ DEColour black, white; -+ -+#ifdef XFT -+ de_alloc_colour(rootwin, &black, "black"); -+ de_alloc_colour(rootwin, &white, "white"); -+#else -+ black=DE_BLACK(rootwin); -+ white=DE_WHITE(rootwin); -+#endif -+ - de_get_colour(rootwin, &(cg->hl), tab, "highlight_colour", -- (based_on ? based_on->cgrp.hl : DE_WHITE(rootwin))); -+ (based_on ? based_on->cgrp.hl : white)); - de_get_colour(rootwin, &(cg->sh), tab, "shadow_colour", -- (based_on ? based_on->cgrp.sh : DE_WHITE(rootwin))); -+ (based_on ? based_on->cgrp.sh : white)); - de_get_colour(rootwin, &(cg->fg), tab, "foreground_colour", -- (based_on ? based_on->cgrp.fg : DE_WHITE(rootwin))); -+ (based_on ? based_on->cgrp.fg : white)); - bgset=de_get_colour(rootwin, &(cg->bg), tab, "background_colour", -- (based_on ? based_on->cgrp.bg : DE_BLACK(rootwin))); -+ (based_on ? based_on->cgrp.bg : black)); - -- padinh=(based_on ? based_on->cgrp.pad : DE_WHITE(rootwin)); -+ padinh=(based_on ? based_on->cgrp.pad : white); - - de_get_colour_(rootwin, &(cg->pad), tab, "padding_colour", - (bgset ? cg->bg : padinh), padinh); -diff -Naur ../work/ion-3/de/style.c ion-3ds-20070203/de/style.c ---- ../work/ion-3/de/style.c 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/style.c 2007-02-21 13:11:57.000000000 +0300 -@@ -74,10 +74,17 @@ - /*gcv.function=GXclear;*/ - gcv.stipple=stipple_pixmap; - gcvmask=GCFillStyle|GCStipple/*|GCFunction*/; -+#ifndef XFT - if(style->font!=NULL && style->font->fontstruct!=NULL){ - gcv.font=style->font->fontstruct->fid; - gcvmask|=GCFont; - } -+#else /* XFT */ -+// if(style->font!=NULL){ -+// gcv.font=style->font; -+// gcvmask|=GCFont; -+// } -+#endif /* XFT */ - - style->stipple_gc=XCreateGC(dpy, root, gcvmask, &gcv); - XCopyGC(dpy, style->normal_gc, -@@ -205,6 +212,14 @@ - - bool destyle_init(DEStyle *style, WRootWin *rootwin, const char *name) - { -+ DEColour black, white; -+#ifdef XFT -+ de_alloc_colour(rootwin, &black, "black"); -+ de_alloc_colour(rootwin, &white, "white"); -+#else -+ black=DE_BLACK(rootwin); -+ white=DE_WHITE(rootwin); -+#endif /* XFT */ - if(!gr_stylespec_load(&style->spec, name)) - return FALSE; - -@@ -226,11 +241,11 @@ - style->textalign=DEALIGN_CENTER; - - style->cgrp_alloced=FALSE; -- style->cgrp.bg=DE_BLACK(rootwin); -- style->cgrp.pad=DE_BLACK(rootwin); -- style->cgrp.fg=DE_WHITE(rootwin); -- style->cgrp.hl=DE_WHITE(rootwin); -- style->cgrp.sh=DE_WHITE(rootwin); -+ style->cgrp.bg=black; -+ style->cgrp.pad=black; -+ style->cgrp.fg=white; -+ style->cgrp.hl=white; -+ style->cgrp.sh=white; - gr_stylespec_init(&style->cgrp.spec); - - style->font=NULL; -diff -Naur ../work/ion-3/de/style.h ion-3ds-20070203/de/style.h ---- ../work/ion-3/de/style.h 2007-02-03 17:50:52.000000000 +0300 -+++ ion-3ds-20070203/de/style.h 2007-02-21 13:11:57.000000000 +0300 -@@ -76,6 +76,7 @@ - Pixmap tag_pixmap; - int tag_pixmap_w; - int tag_pixmap_h; -+ int xft_style; - - DEStyle *next, *prev; - }; ---- ../work/ion-3/system.mk 2007-05-10 22:45:16.000000000 +0400 -+++ ion-3ds-20070203/system.mk 2007-05-10 22:45:07.000000000 +0400 -@@ -115,6 +115,16 @@ - #EXTRA_LIBS += -lintl - #EXTRA_INCLUDES += - -+## -+## Xft support -+## -+ -+#USE_XFT=1 -+ -+ifeq ($(USE_XFT),1) -+EXTRA_INCLUDES += `xft-config --cflags` -DXFT -+EXTRA_LIBS += `xft-config --libs` -+endif - - ## - ## C compiler |