From bec0065e4a5a4d0c487bd47ec208b9d30a7b9399 Mon Sep 17 00:00:00 2001 From: fluxgen Date: Fri, 4 Jan 2002 21:21:43 +0000 Subject: pekdon patch --- ChangeLog | 12 +++ TODO | 6 +- configure | 281 +++++++++++++++++++++++++------------------------ configure.in | 2 +- doc/Makefile.in | 9 +- nls/C/Configmenu.m | 2 + nls/blackbox-nls.hh | 1 + nls/da_DK/Configmenu.m | 2 + nls/es_ES/Configmenu.m | 2 + nls/et_EE/Configmenu.m | 2 + nls/fr_FR/Configmenu.m | 2 + nls/it_IT/Configmenu.m | 2 + nls/pt_BR/Configmenu.m | 2 + nls/ru_RU/Configmenu.m | 2 + nls/sv_SE/Configmenu.m | 2 + nls/tr_TR/Configmenu.m | 2 + src/Configmenu.cc | 19 +++- src/IconBar.cc | 31 ++++-- src/IconBar.hh | 12 ++- src/Screen.hh | 9 +- src/Slit.cc | 2 +- src/Tab.cc | 120 +++++++++++---------- src/Tab.hh | 1 + src/Theme.cc | 17 ++- src/Toolbar.hh | 1 + src/Window.cc | 41 +++++--- src/Workspacemenu.hh | 1 - src/fluxbox.cc | 35 +++--- 28 files changed, 364 insertions(+), 256 deletions(-) diff --git a/ChangeLog b/ChangeLog index c7522e4..0815673 100644 --- a/ChangeLog +++ b/ChangeLog @@ -8,6 +8,18 @@ Changes for 0.1.6: * Changed Keygrabbing constants to uppercase * Changed Texture constants to uppercase and moved them into class BImage to clean up the global namespace +*01/12/27: + * Fixed grabVertMax and grabHorizMax + 1 pixel maximise bug. (Claes Nästén) + * Now relative and vertical tabs gets textures rendered ok, still + interlaced and gradients aren't rendered in right direction. (Claes Nästén) +*01/12/26: + * Fixed tab and iconbar uppdating so that tab and iconbar labels will have + the right text. (Claes Nästén) +*01/12/23: + * Fixed a bug in Tab::buttonReleaseEvent and added sloppyWindowGrouping + wich lets you release windows tabs on other windows and not only other + tabs to group them (Claes Nästén) + *01/12/19: * Moved some structs from file scope of BaseDisplay.hh in to class BaseDisplay * Fixed redraw bug when changing workspace diff --git a/TODO b/TODO index d64ddf2..4d12413 100644 --- a/TODO +++ b/TODO @@ -1,4 +1,7 @@ TODO for Fluxbox 0.2.0 +* "Dont use tab" doesnt save +* Remove the cylic dep between class Tab and class Window +* Remove the cylic dep between class Theme and class Fluxbox !* Fix "no font" crash * Remove cyclic dep on Basemenu with class Fluxbox * sloppy focus - auto-raise @@ -24,9 +27,6 @@ TODO for Fluxbox 0.2.0 * 0,0-pos fix * reconfigure tar upp nya dekorationer -* fluxbox wont currently build on linux-hppa, needs the config.{sub, - guess} updated from ftp://ftp.gnu.org/pub/gnu/config/ - * Create fbrun style app (* Add wheelscroll-workspace-change configuration (reversed order or regular)- Add "system menu" for minimized apps in the toolbar. diff --git a/configure b/configure index fea43df..650e9b1 100755 --- a/configure +++ b/configure @@ -807,10 +807,11 @@ fi test x$prefix = "xNONE" && prefix="$ac_default_prefix" + # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:814: checking for $ac_word" >&5 +echo "configure:815: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -840,7 +841,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:844: checking for $ac_word" >&5 +echo "configure:845: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -891,7 +892,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:895: checking for $ac_word" >&5 +echo "configure:896: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -923,7 +924,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:927: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:928: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -934,12 +935,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 938 "configure" +#line 939 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:944: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -965,12 +966,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:969: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:970: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:974: checking whether we are using GNU C" >&5 +echo "configure:975: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -979,7 +980,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:983: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:984: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -998,7 +999,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1002: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:1003: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1034,7 +1035,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1038: checking for $ac_word" >&5 +echo "configure:1039: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1066,7 +1067,7 @@ test -n "$CXX" || CXX="gcc" echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:1070: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 +echo "configure:1071: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5 ac_ext=C # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -1077,12 +1078,12 @@ cross_compiling=$ac_cv_prog_cxx_cross cat > conftest.$ac_ext << EOF -#line 1081 "configure" +#line 1082 "configure" #include "confdefs.h" int main(){return(0);} EOF -if { (eval echo configure:1086: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1087: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cxx_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -1108,12 +1109,12 @@ if test $ac_cv_prog_cxx_works = no; then { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:1112: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:1113: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6 cross_compiling=$ac_cv_prog_cxx_cross echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6 -echo "configure:1117: checking whether we are using GNU C++" >&5 +echo "configure:1118: checking whether we are using GNU C++" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1122,7 +1123,7 @@ else yes; #endif EOF -if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1126: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1127: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gxx=yes else ac_cv_prog_gxx=no @@ -1141,7 +1142,7 @@ ac_test_CXXFLAGS="${CXXFLAGS+set}" ac_save_CXXFLAGS="$CXXFLAGS" CXXFLAGS= echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6 -echo "configure:1145: checking whether ${CXX-g++} accepts -g" >&5 +echo "configure:1146: checking whether ${CXX-g++} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1184,7 +1185,7 @@ fi # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:1188: checking for a BSD compatible install" >&5 +echo "configure:1189: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1312,7 +1313,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } fi echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:1316: checking host system type" >&5 +echo "configure:1317: checking host system type" >&5 host_alias=$host case "$host_alias" in @@ -1333,7 +1334,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` echo "$ac_t""$host" 1>&6 echo $ac_n "checking build system type""... $ac_c" 1>&6 -echo "configure:1337: checking build system type" >&5 +echo "configure:1338: checking build system type" >&5 build_alias=$build case "$build_alias" in @@ -1353,7 +1354,7 @@ echo "$ac_t""$build" 1>&6 # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1357: checking for $ac_word" >&5 +echo "configure:1358: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1392,7 +1393,7 @@ ac_prog=ld if test "$ac_cv_prog_gcc" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 -echo "configure:1396: checking for ld used by GCC" >&5 +echo "configure:1397: checking for ld used by GCC" >&5 ac_prog=`($CC -print-prog-name=ld) 2>&5` case "$ac_prog" in # Accept absolute paths. @@ -1416,10 +1417,10 @@ echo "configure:1396: checking for ld used by GCC" >&5 esac elif test "$with_gnu_ld" = yes; then echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 -echo "configure:1420: checking for GNU ld" >&5 +echo "configure:1421: checking for GNU ld" >&5 else echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 -echo "configure:1423: checking for non-GNU ld" >&5 +echo "configure:1424: checking for non-GNU ld" >&5 fi if eval "test \"`echo '$''{'ac_cv_path_LD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1454,7 +1455,7 @@ else fi test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 -echo "configure:1458: checking if the linker ($LD) is GNU ld" >&5 +echo "configure:1459: checking if the linker ($LD) is GNU ld" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gnu_ld'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1470,7 +1471,7 @@ echo "$ac_t""$ac_cv_prog_gnu_ld" 1>&6 echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 -echo "configure:1474: checking for BSD-compatible nm" >&5 +echo "configure:1475: checking for BSD-compatible nm" >&5 if eval "test \"`echo '$''{'ac_cv_path_NM'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1506,7 +1507,7 @@ NM="$ac_cv_path_NM" echo "$ac_t""$NM" 1>&6 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 -echo "configure:1510: checking whether ln -s works" >&5 +echo "configure:1511: checking whether ln -s works" >&5 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1555,8 +1556,8 @@ test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" case "$lt_target" in *-*-irix6*) # Find out which ABI we are using. - echo '#line 1559 "configure"' > conftest.$ac_ext - if { (eval echo configure:1560: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + echo '#line 1560 "configure"' > conftest.$ac_ext + if { (eval echo configure:1561: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then case "`/usr/bin/file conftest.o`" in *32-bit*) LD="${LD-ld} -32" @@ -1577,19 +1578,19 @@ case "$lt_target" in SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 -echo "configure:1581: checking whether the C compiler needs -belf" >&5 +echo "configure:1582: checking whether the C compiler needs -belf" >&5 if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1594: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* lt_cv_cc_needs_belf=yes else @@ -1696,7 +1697,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1700: checking for $ac_word" >&5 +echo "configure:1701: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_regex_cmd'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1730,7 +1731,7 @@ if test x$regex_cmd = "x"; then fi echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:1734: checking how to run the C preprocessor" >&5 +echo "configure:1735: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -1745,13 +1746,13 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1755: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1756: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1762,13 +1763,13 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1772: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1773: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1779,13 +1780,13 @@ else rm -rf conftest* CPP="${CC-cc} -nologo -E" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1789: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1790: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1810,12 +1811,12 @@ fi echo "$ac_t""$CPP" 1>&6 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:1814: checking for ANSI C header files" >&5 +echo "configure:1815: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -1823,7 +1824,7 @@ else #include EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1827: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1840,7 +1841,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -1858,7 +1859,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -1879,7 +1880,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext < #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -1890,7 +1891,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:1894: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1895: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -1917,17 +1918,17 @@ for ac_hdr in errno.h ctype.h dirent.h fcntl.h libgen.h locale.h nl_types.h proc do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1921: checking for $ac_hdr" >&5 +echo "configure:1922: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1931: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1932: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1954,12 +1955,12 @@ fi done echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 -echo "configure:1958: checking whether time.h and sys/time.h may both be included" >&5 +echo "configure:1959: checking whether time.h and sys/time.h may both be included" >&5 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -1968,7 +1969,7 @@ int main() { struct tm *tp; ; return 0; } EOF -if { (eval echo configure:1972: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1973: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_time=yes else @@ -1992,12 +1993,12 @@ fi for ac_func in basename do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:1996: checking for $ac_func" >&5 +echo "configure:1997: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2025: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -2042,7 +2043,7 @@ EOF else echo "$ac_t""no" 1>&6 echo $ac_n "checking for basename in -lgen""... $ac_c" 1>&6 -echo "configure:2046: checking for basename in -lgen" >&5 +echo "configure:2047: checking for basename in -lgen" >&5 ac_lib_var=`echo gen'_'basename | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2050,7 +2051,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lgen $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2066: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2087,12 +2088,12 @@ done for ac_func in getpid setlocale sigaction strftime strcasestr snprintf vsnprintf catopen catgets catclose do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:2091: checking for $ac_func" >&5 +echo "configure:2092: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2120: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -2140,7 +2141,7 @@ fi done echo $ac_n "checking for t_open in -lnsl""... $ac_c" 1>&6 -echo "configure:2144: checking for t_open in -lnsl" >&5 +echo "configure:2145: checking for t_open in -lnsl" >&5 ac_lib_var=`echo nsl'_'t_open | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2148,7 +2149,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lnsl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2164: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2180,7 +2181,7 @@ else fi echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6 -echo "configure:2184: checking for socket in -lsocket" >&5 +echo "configure:2185: checking for socket in -lsocket" >&5 ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2188,7 +2189,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lsocket $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2204: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2225,7 +2226,7 @@ fi # Uses ac_ vars as temps to allow command line to override cache and checks. # --without-x overrides everything else, but does not touch the cache. echo $ac_n "checking for X""... $ac_c" 1>&6 -echo "configure:2229: checking for X" >&5 +echo "configure:2230: checking for X" >&5 # Check whether --with-x or --without-x was given. if test "${with_x+set}" = set; then @@ -2287,12 +2288,12 @@ if test "$ac_x_includes" = NO; then # First, try using that file with no special directory specified. cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2296: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2297: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2361,14 +2362,14 @@ if test "$ac_x_libraries" = NO; then ac_save_LIBS="$LIBS" LIBS="-l$x_direct_test_library $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2373: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* LIBS="$ac_save_LIBS" # We can link X programs with no special library path. @@ -2474,17 +2475,17 @@ else case "`(uname -sr) 2>/dev/null`" in "SunOS 5"*) echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6 -echo "configure:2478: checking whether -R must be followed by a space" >&5 +echo "configure:2479: checking whether -R must be followed by a space" >&5 ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2489: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_R_nospace=yes else @@ -2500,14 +2501,14 @@ rm -f conftest* else LIBS="$ac_xsave_LIBS -R $x_libraries" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2512: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_R_space=yes else @@ -2539,7 +2540,7 @@ rm -f conftest* # libraries were built with DECnet support. And karl@cs.umb.edu says # the Alpha needs dnet_stub (dnet does not exist). echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6 -echo "configure:2543: checking for dnet_ntoa in -ldnet" >&5 +echo "configure:2544: checking for dnet_ntoa in -ldnet" >&5 ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2547,7 +2548,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldnet $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2563: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2580,7 +2581,7 @@ fi if test $ac_cv_lib_dnet_dnet_ntoa = no; then echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6 -echo "configure:2584: checking for dnet_ntoa in -ldnet_stub" >&5 +echo "configure:2585: checking for dnet_ntoa in -ldnet_stub" >&5 ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2588,7 +2589,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldnet_stub $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2604: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2628,12 +2629,12 @@ fi # The nsl library prevents programs from opening the X display # on Irix 5.2, according to dickey@clark.net. echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6 -echo "configure:2632: checking for gethostbyname" >&5 +echo "configure:2633: checking for gethostbyname" >&5 if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2661: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_gethostbyname=yes" else @@ -2677,7 +2678,7 @@ fi if test $ac_cv_func_gethostbyname = no; then echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6 -echo "configure:2681: checking for gethostbyname in -lnsl" >&5 +echo "configure:2682: checking for gethostbyname in -lnsl" >&5 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2685,7 +2686,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lnsl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2701: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2726,12 +2727,12 @@ fi # -lsocket must be given before -lnsl if both are needed. # We assume that if connect needs -lnsl, so does gethostbyname. echo $ac_n "checking for connect""... $ac_c" 1>&6 -echo "configure:2730: checking for connect" >&5 +echo "configure:2731: checking for connect" >&5 if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2759: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_connect=yes" else @@ -2775,7 +2776,7 @@ fi if test $ac_cv_func_connect = no; then echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6 -echo "configure:2779: checking for connect in -lsocket" >&5 +echo "configure:2780: checking for connect in -lsocket" >&5 ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2783,7 +2784,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lsocket $X_EXTRA_LIBS $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2799: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2818,12 +2819,12 @@ fi # gomez@mi.uni-erlangen.de says -lposix is necessary on A/UX. echo $ac_n "checking for remove""... $ac_c" 1>&6 -echo "configure:2822: checking for remove" >&5 +echo "configure:2823: checking for remove" >&5 if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2851: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_remove=yes" else @@ -2867,7 +2868,7 @@ fi if test $ac_cv_func_remove = no; then echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6 -echo "configure:2871: checking for remove in -lposix" >&5 +echo "configure:2872: checking for remove in -lposix" >&5 ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2875,7 +2876,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lposix $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2891: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2910,12 +2911,12 @@ fi # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay. echo $ac_n "checking for shmat""... $ac_c" 1>&6 -echo "configure:2914: checking for shmat" >&5 +echo "configure:2915: checking for shmat" >&5 if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_shmat=yes" else @@ -2959,7 +2960,7 @@ fi if test $ac_cv_func_shmat = no; then echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6 -echo "configure:2963: checking for shmat in -lipc" >&5 +echo "configure:2964: checking for shmat in -lipc" >&5 ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2967,7 +2968,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lipc $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2983: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3011,7 +3012,7 @@ fi # libraries we check for below, so use a different variable. # --interran@uluru.Stanford.EDU, kb@cs.umb.edu. echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6 -echo "configure:3015: checking for IceConnectionNumber in -lICE" >&5 +echo "configure:3016: checking for IceConnectionNumber in -lICE" >&5 ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3019,7 +3020,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lICE $X_EXTRA_LIBS $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3066,7 +3067,7 @@ LIBS="$LIBS $X_LIBS" LDFLAGS="$LDFLAGS $LIBS $X_PRE_LIBS" echo $ac_n "checking for XOpenDisplay in -lX11""... $ac_c" 1>&6 -echo "configure:3070: checking for XOpenDisplay in -lX11" >&5 +echo "configure:3071: checking for XOpenDisplay in -lX11" >&5 ac_lib_var=`echo X11'_'XOpenDisplay | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3074,7 +3075,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lX11 $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3090: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3114,7 +3115,7 @@ Xext_lib="" SHAPE="" echo $ac_n "checking whether to build support for the XShape extension""... $ac_c" 1>&6 -echo "configure:3118: checking whether to build support for the XShape extension" >&5 +echo "configure:3119: checking whether to build support for the XShape extension" >&5 # Check whether --enable-shape or --disable-shape was given. if test "${enable_shape+set}" = set; then enableval="$enable_shape" @@ -3126,7 +3127,7 @@ fi if test x$enableval = "xyes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for XShapeCombineShape in -lXext""... $ac_c" 1>&6 -echo "configure:3130: checking for XShapeCombineShape in -lXext" >&5 +echo "configure:3131: checking for XShapeCombineShape in -lXext" >&5 ac_lib_var=`echo Xext'_'XShapeCombineShape | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3134,7 +3135,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lXext $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3150: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3161,9 +3162,9 @@ fi if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for X11/extensions/shape.h""... $ac_c" 1>&6 -echo "configure:3165: checking for X11/extensions/shape.h" >&5 +echo "configure:3166: checking for X11/extensions/shape.h" >&5 cat > conftest.$ac_ext < #include @@ -3173,7 +3174,7 @@ int main() { long foo = ShapeSet ; return 0; } EOF -if { (eval echo configure:3177: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3178: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* echo "$ac_t""yes" 1>&6 SHAPE="-DSHAPE"; Xext_lib="-lXext" @@ -3199,7 +3200,7 @@ LIBS="$LIBS $Xext_lib" SLIT="" echo $ac_n "checking whether to include the Slit""... $ac_c" 1>&6 -echo "configure:3203: checking whether to include the Slit" >&5 +echo "configure:3204: checking whether to include the Slit" >&5 # Check whether --enable-slit or --disable-slit was given. if test "${enable_slit+set}" = set; then enableval="$enable_slit" @@ -3219,7 +3220,7 @@ fi NEWWMSPEC="" echo $ac_n "checking whether to include the new WM Spec (DOES NOTHING)""... $ac_c" 1>&6 -echo "configure:3223: checking whether to include the new WM Spec (DOES NOTHING)" >&5 +echo "configure:3224: checking whether to include the new WM Spec (DOES NOTHING)" >&5 # Check whether --enable-newspec or --disable-newspec was given. if test "${enable_newspec+set}" = set; then enableval="$enable_newspec" @@ -3239,7 +3240,7 @@ fi INTERLACE="" echo $ac_n "checking whether to include interlacing image code""... $ac_c" 1>&6 -echo "configure:3243: checking whether to include interlacing image code" >&5 +echo "configure:3244: checking whether to include interlacing image code" >&5 # Check whether --enable-interlace or --disable-interlace was given. if test "${enable_interlace+set}" = set; then enableval="$enable_interlace" @@ -3259,7 +3260,7 @@ fi ORDEREDPSEUDO="" echo $ac_n "checking whether to include Pseudocolor ordered dithering code""... $ac_c" 1>&6 -echo "configure:3263: checking whether to include Pseudocolor ordered dithering code" >&5 +echo "configure:3264: checking whether to include Pseudocolor ordered dithering code" >&5 # Check whether --enable-ordered-pseudo or --disable-ordered-pseudo was given. if test "${enable_ordered_pseudo+set}" = set; then enableval="$enable_ordered_pseudo" @@ -3278,13 +3279,13 @@ fi DEBUG="" echo $ac_n "checking whether to include verbose debugging code""... $ac_c" 1>&6 -echo "configure:3282: checking whether to include verbose debugging code" >&5 +echo "configure:3283: checking whether to include verbose debugging code" >&5 # Check whether --enable-debug or --disable-debug was given. if test "${enable_debug+set}" = set; then enableval="$enable_debug" if test x$enableval = "xyes"; then echo "$ac_t""yes" 1>&6 - DEBUG="-DDEBUG" + DEBUG="-DDEBUG -fno-inline" else echo "$ac_t""no" 1>&6 fi @@ -3297,7 +3298,7 @@ fi NLS="" echo $ac_n "checking whether to include NLS support""... $ac_c" 1>&6 -echo "configure:3301: checking whether to include NLS support" >&5 +echo "configure:3302: checking whether to include NLS support" >&5 # Check whether --enable-nls or --disable-nls was given. if test "${enable_nls+set}" = set; then enableval="$enable_nls" @@ -3316,7 +3317,7 @@ fi echo $ac_n "checking for setlocale in -lxpg4""... $ac_c" 1>&6 -echo "configure:3320: checking for setlocale in -lxpg4" >&5 +echo "configure:3321: checking for setlocale in -lxpg4" >&5 ac_lib_var=`echo xpg4'_'setlocale | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3324,7 +3325,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lxpg4 $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3340: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3361,7 +3362,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3365: checking for $ac_word" >&5 +echo "configure:3366: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gencat_cmd'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3397,7 +3398,7 @@ fi TIMEDCACHE="" echo $ac_n "checking whether to use the new timed pixmap cache""... $ac_c" 1>&6 -echo "configure:3401: checking whether to use the new timed pixmap cache" >&5 +echo "configure:3402: checking whether to use the new timed pixmap cache" >&5 # Check whether --enable-timed-cache or --disable-timed-cache was given. if test "${enable_timed_cache+set}" = set; then enableval="$enable_timed_cache" @@ -3417,7 +3418,7 @@ fi KDE="" echo $ac_n "checking whether to have KDE slit support""... $ac_c" 1>&6 -echo "configure:3421: checking whether to have KDE slit support" >&5 +echo "configure:3422: checking whether to have KDE slit support" >&5 # Check whether --enable-kde or --disable-kde was given. if test "${enable_kde+set}" = set; then enableval="$enable_kde" @@ -3436,7 +3437,7 @@ fi GNOME="" echo $ac_n "checking whether to have GNOME support""... $ac_c" 1>&6 -echo "configure:3440: checking whether to have GNOME support" >&5 +echo "configure:3441: checking whether to have GNOME support" >&5 # Check whether --enable-gnome or --disable-gnome was given. if test "${enable_gnome+set}" = set; then enableval="$enable_gnome" @@ -3454,12 +3455,12 @@ fi echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 -echo "configure:3458: checking return type of signal handlers" >&5 +echo "configure:3459: checking return type of signal handlers" >&5 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -3476,7 +3477,7 @@ int main() { int i; ; return 0; } EOF -if { (eval echo configure:3480: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3481: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_type_signal=void else @@ -3496,7 +3497,7 @@ EOF echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 -echo "configure:3500: checking whether to enable maintainer-specific portions of Makefiles" >&5 +echo "configure:3501: checking whether to enable maintainer-specific portions of Makefiles" >&5 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then enableval="$enable_maintainer_mode" diff --git a/configure.in b/configure.in index 7b58aa0..f3f4a44 100644 --- a/configure.in +++ b/configure.in @@ -160,7 +160,7 @@ AC_ARG_ENABLE(debug, [ --enable-debug include verbose debugging code [default=no]], if test x$enableval = "xyes"; then AC_MSG_RESULT([yes]) - DEBUG="-DDEBUG" + DEBUG="-DDEBUG -fno-inline" else AC_MSG_RESULT([no]) fi, diff --git a/doc/Makefile.in b/doc/Makefile.in index 0fc570b..4853c2c 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -107,9 +107,9 @@ GZIP_ENV = --best all: all-redirect .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps doc/Makefile + cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status $(BUILT_SOURCES) cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status @@ -161,6 +161,11 @@ distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) subdir = doc distdir: $(DISTFILES) + here=`cd $(top_builddir) && pwd`; \ + top_distdir=`cd $(top_distdir) && pwd`; \ + distdir=`cd $(distdir) && pwd`; \ + cd $(top_srcdir) \ + && $(AUTOMAKE) --include-deps --build-dir=$$here --srcdir-name=$(top_srcdir) --output-dir=$$top_distdir --gnu doc/Makefile @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ diff --git a/nls/C/Configmenu.m b/nls/C/Configmenu.m index 7f64e97..a26cc2e 100644 --- a/nls/C/Configmenu.m +++ b/nls/C/Configmenu.m @@ -46,3 +46,5 @@ $ #TabRotateVertical # Rotate Vertical Tabs $ #SemiSloppyFocus # Semi Sloppy Focus +$ #SloppyWindowGrouping +# Sloppy Window Grouping diff --git a/nls/blackbox-nls.hh b/nls/blackbox-nls.hh index 6390e6a..e2975b3 100644 --- a/nls/blackbox-nls.hh +++ b/nls/blackbox-nls.hh @@ -34,6 +34,7 @@ #define ConfigmenuTabPlacement 0x15 #define ConfigmenuTabRotateVertical 0x16 #define ConfigmenuSemiSloppyFocus 0x17 +#define ConfigmenuSloppyWindowGrouping 0x18 #define IconSet 0x4 #define IconIcons 0x1 diff --git a/nls/da_DK/Configmenu.m b/nls/da_DK/Configmenu.m index 438af96..17f2b47 100644 --- a/nls/da_DK/Configmenu.m +++ b/nls/da_DK/Configmenu.m @@ -44,3 +44,5 @@ $ #TabRotateVertical # Rotate Vertical Tabs $ #SemiSloppyFocus # Semi Sloppy Focus +$ #SloppyWindowGrouping +# Sloppy Window Grouping diff --git a/nls/es_ES/Configmenu.m b/nls/es_ES/Configmenu.m index bc38ea7..8d16afb 100644 --- a/nls/es_ES/Configmenu.m +++ b/nls/es_ES/Configmenu.m @@ -46,3 +46,5 @@ $ #TabRotateVertical # Rotate Vertical Tabs $ #SemiSloppyFocus # Semi Sloppy Focus +$ #SloppyWindowGrouping +# Sloppy Window Grouping diff --git a/nls/et_EE/Configmenu.m b/nls/et_EE/Configmenu.m index 02857bc..4e54b5f 100644 --- a/nls/et_EE/Configmenu.m +++ b/nls/et_EE/Configmenu.m @@ -46,3 +46,5 @@ $ #TabRotateVertical # Rotate Vertical Tabs $ #SemiSloppyFocus # Semi Sloppy Focus +$ #SloppyWindowGrouping +# Sloppy Window Grouping diff --git a/nls/fr_FR/Configmenu.m b/nls/fr_FR/Configmenu.m index b9ee923..138d4e9 100644 --- a/nls/fr_FR/Configmenu.m +++ b/nls/fr_FR/Configmenu.m @@ -46,3 +46,5 @@ $ #TabRotateVertical # Rotate Vertical Tabs $ #SemiSloppyFocus # Semi Sloppy Focus +$ #SloppyWindowGrouping +# Sloppy Window Grouping diff --git a/nls/it_IT/Configmenu.m b/nls/it_IT/Configmenu.m index 6c4d03c..0ab3b1c 100644 --- a/nls/it_IT/Configmenu.m +++ b/nls/it_IT/Configmenu.m @@ -46,3 +46,5 @@ $ #TabRotateVertical # Routa Verticalmente I Tab $ #SemiSloppyFocus # Semi Sloppy Focus +$ #SloppyWindowGrouping +# Sloppy Window Grouping diff --git a/nls/pt_BR/Configmenu.m b/nls/pt_BR/Configmenu.m index 129d991..3226d13 100644 --- a/nls/pt_BR/Configmenu.m +++ b/nls/pt_BR/Configmenu.m @@ -46,3 +46,5 @@ $ #TabRotateVertical # Rotate Vertical Tabs $ #SemiSloppyFocus # Semi Sloppy Focus +$ #SloppyWindowGrouping +# Sloppy Window Grouping diff --git a/nls/ru_RU/Configmenu.m b/nls/ru_RU/Configmenu.m index 41034a6..8515b64 100644 --- a/nls/ru_RU/Configmenu.m +++ b/nls/ru_RU/Configmenu.m @@ -46,3 +46,5 @@ $ #TabRotateVertical # úÁËÌÁÄËÉ ×ÅÒÔÉËÁÌØÎÏ $ #SemiSloppyFocus # òÁÚÍÙÔÙÊ ÆÏËÕÓ +$ #SloppyWindowGrouping +# Sloppy Window Grouping diff --git a/nls/sv_SE/Configmenu.m b/nls/sv_SE/Configmenu.m index 2d2f4a2..73805e8 100644 --- a/nls/sv_SE/Configmenu.m +++ b/nls/sv_SE/Configmenu.m @@ -46,3 +46,5 @@ $ #TabRotateVertical # Rotera Vertikala Flikar $ #SemiSloppyFocus # Halv hafsig fokus +$ #SloppyWindowGrouping +# Hafsig Fönster Gruppering diff --git a/nls/tr_TR/Configmenu.m b/nls/tr_TR/Configmenu.m index cab451e..2e6e4de 100644 --- a/nls/tr_TR/Configmenu.m +++ b/nls/tr_TR/Configmenu.m @@ -46,3 +46,5 @@ $ #TabRotateVertical # Rotate Vertical Tabs $ #SemiSloppyFocus # Semi Sloppy Focus +$ #SloppyWindowGrouping +# Sloppy Window Grouping diff --git a/src/Configmenu.cc b/src/Configmenu.cc index 5eda254..4eba0d6 100644 --- a/src/Configmenu.cc +++ b/src/Configmenu.cc @@ -36,6 +36,7 @@ #define CMENU_USE_TABS 8 #define CMENU_USE_ICONS 9 +#define CMENU_SLOPPY_WIN_GROUP 10 #define CMENU_TAB_ROTATE 21 Configmenu::Configmenu(BScreen *scr) : Basemenu(scr) { @@ -128,8 +129,13 @@ Configmenu::Configmenu(BScreen *scr) : Basemenu(scr) { 0, 0, #endif // NLS "Use Icons"), CMENU_USE_ICONS); - - + insert(i18n->getMessage( +#ifdef NLS + ConfigmenuSet, ConfigmenuSloppyWindowGrouping, +#else // !NLS + 0, 0, +#endif // NLS + "Sloppy Window Grouping"), CMENU_SLOPPY_WIN_GROUP); update(); @@ -140,6 +146,7 @@ Configmenu::Configmenu(BScreen *scr) : Basemenu(scr) { setItemSelected(7, screen->doFocusLast()); setItemSelected(CMENU_USE_TABS, Fluxbox::instance()->useTabs()); setItemSelected(CMENU_USE_ICONS, Fluxbox::instance()->useIconBar()); + setItemSelected(CMENU_SLOPPY_WIN_GROUP, screen->isSloppyWindowGrouping()); } @@ -203,6 +210,14 @@ void Configmenu::itemSelected(int button, int index) { screen->reconfigure(); } break; + case CMENU_SLOPPY_WIN_GROUP: + { + screen->saveSloppyWindowGrouping(!screen->isSloppyWindowGrouping()); + setItemSelected(index, screen->isSloppyWindowGrouping()); + screen->reconfigure(); + } + break; + } } } diff --git a/src/IconBar.cc b/src/IconBar.cc index f5ec382..49050e0 100644 --- a/src/IconBar.cc +++ b/src/IconBar.cc @@ -152,14 +152,14 @@ void IconBar::exposeEvent(XExposeEvent *ee) { } if (obj) { - + Window root; unsigned int width, height; unsigned int border_width, depth; //not used int x, y; XGetGeometry(m_display, m_parent, &root, &x, &y, &width, &height, &border_width, &depth); - + //max width on every icon unsigned int icon_width = width / m_iconlist->count(); @@ -190,7 +190,7 @@ void IconBar::repositionIcons(void) { //load right size of theme loadTheme(icon_width, height); - + IconListIterator it(m_iconlist); for (x = 0; it.current(); it++, x+=icon_width) { @@ -271,8 +271,7 @@ void IconBar::draw(IconBarObj *obj, int width) { if (l < width) break; } - - + switch (m_screen->getWindowStyle()->tab.font.justify) { case Misc::Font::RIGHT: dx += width - l; @@ -284,7 +283,7 @@ void IconBar::draw(IconBarObj *obj, int width) { break; } - //Draw title to m_tabwin + //Draw title to m_iconwin XClearWindow(m_display, iconwin); @@ -328,6 +327,7 @@ FluxboxWindow *IconBar::findWindow(Window w) { // returns pointer to IconBarObj on success else // 0 on failure //------------------------------------ + IconBarObj *IconBar::findIcon(FluxboxWindow *fluxboxwin) { IconListIterator it(m_iconlist); @@ -341,3 +341,22 @@ IconBarObj *IconBar::findIcon(FluxboxWindow *fluxboxwin) { return 0; } + +//---------- getIconWidth ------------ +// will return the width of an icon +// window +//------------------------------------ +unsigned int IconBarObj::getWidth() { + Window root; + + unsigned int width, height; + unsigned int border_width, depth; //not used + int x, y; //not used + + Display *m_display = Fluxbox::instance()->getXDisplay(); + + XGetGeometry(m_display, m_iconwin, &root, &x, &y, + &width, &height, &border_width, &depth); + + return width; +} diff --git a/src/IconBar.hh b/src/IconBar.hh index 4bd0a8e..4da0d07 100644 --- a/src/IconBar.hh +++ b/src/IconBar.hh @@ -32,9 +32,10 @@ public: ~IconBarObj(); inline Window getIconWin(void) { return m_iconwin; } inline FluxboxWindow *getFluxboxWin(void) { return m_fluxboxwin; } + unsigned int getWidth(void); private: - Window m_iconwin; FluxboxWindow *m_fluxboxwin; + Window m_iconwin; }; class IconBar @@ -42,21 +43,24 @@ class IconBar public: IconBar(BScreen *scrn, Window parent); ~IconBar(); - void draw(); + void draw(); //TODO void reconfigure(); Window addIcon(FluxboxWindow *fluxboxwin); Window delIcon(FluxboxWindow *fluxboxwin); void buttonPressEvent(XButtonEvent *be); FluxboxWindow *findWindow(Window w); + IconBarObj *findIcon(FluxboxWindow *fluxboxwin); void exposeEvent(XExposeEvent *ee); + + void draw(IconBarObj *obj, int width); private: typedef LinkedList IconList; typedef LinkedListIterator IconListIterator; - void draw(IconBarObj *obj, int width); +// void draw(IconBarObj *obj, int width); void loadTheme(unsigned int width, unsigned int height); void decorate(Window win); - IconBarObj *findIcon(FluxboxWindow *fluxboxwin); +// IconBarObj *findIcon(FluxboxWindow *fluxboxwin); void repositionIcons(void); Window createIconWindow(FluxboxWindow *fluxboxwin, Window parent); BScreen *m_screen; diff --git a/src/Screen.hh b/src/Screen.hh index 91a824f..35fc271 100644 --- a/src/Screen.hh +++ b/src/Screen.hh @@ -27,6 +27,8 @@ #ifndef _SCREEN_HH_ #define _SCREEN_HH_ + + #include #include @@ -100,6 +102,8 @@ public: inline const Bool &isScreenManaged(void) const { return managed; } inline const Bool &isTabRotateVertical(void) const { return resource.tab_rotate_vertical; } + inline const Bool &isSloppyWindowGrouping(void) const + { return resource.sloppy_window_grouping; } inline const Bool &doAutoRaise(void) const { return resource.auto_raise; } inline const Bool &doImageDither(void) const { return resource.image_dither; } @@ -203,6 +207,8 @@ public: inline void saveTabAlignment(unsigned int a) { resource.tab_alignment = a; } inline void saveTabRotateVertical(Bool r) { resource.tab_rotate_vertical = r; } + inline void saveSloppyWindowGrouping(Bool s) + { resource.sloppy_window_grouping = s; } inline void iconUpdate(void) { iconmenu->update(); } inline Iconmenu *getIconmenu(void) { return iconmenu; } @@ -305,7 +311,8 @@ private: Bool toolbar_on_top, toolbar_auto_hide, sloppy_focus, auto_raise, auto_edge_balance, image_dither, ordered_dither, opaque_move, full_max, - focus_new, focus_last, tab_rotate_vertical, semi_sloppy_focus; + focus_new, focus_last, tab_rotate_vertical, semi_sloppy_focus, + sloppy_window_grouping; int workspaces, toolbar_placement, toolbar_width_percent, placement_policy, edge_snap_threshold, row_direction, col_direction; diff --git a/src/Slit.cc b/src/Slit.cc index 74eb8a1..a46ccba 100644 --- a/src/Slit.cc +++ b/src/Slit.cc @@ -187,7 +187,7 @@ void Slit::addClient(Window w) { XSelectInput(display, client->window, NoEventMask); XReparentWindow(display, client->window, frame.window, 0, 0); - XMapRaised(display, client->window); + XMapRaised(display, client->window); //TODO: bbkeys bug here? XChangeSaveSet(display, client->window, SetModeInsert); XSelectInput(display, frame.window, SubstructureRedirectMask | diff --git a/src/Tab.cc b/src/Tab.cc index f426c0e..f4f63e0 100644 --- a/src/Tab.cc +++ b/src/Tab.cc @@ -110,13 +110,12 @@ void Tab::createTabWindow() { XGrabButton(m_display, Button1, Mod1Mask, m_tabwin, True, ButtonReleaseMask | ButtonMotionMask, GrabModeAsync, GrabModeAsync, None, Fluxbox::instance()->getMoveCursor()); - - + //save to tabsearch Fluxbox::instance()->saveTabSearch(m_tabwin, this); XMapSubwindows(m_display, m_tabwin); - + XMapWindow(m_display, m_tabwin); decorate(); @@ -155,12 +154,13 @@ void Tab::raise() { m_win->getScreen()->raiseWindows(&first->m_tabwin, 1); } -//-------------- decorate -------------------- -// decorates the tab with current theme +//-------------- loadTheme ----------------- +// loads the texture with the correct +// width and height, this is necessary in +// vertical and relative tab modes // TODO optimize this -//-------------------------------------------- -void Tab::decorate() { - +//------------------------------------------ +void Tab::loadTheme() { BImageControl *image_ctrl = m_win->getScreen()->getImageControl(); Pixmap tmp = m_focus_pm; BTexture *texture = &(m_win->getScreen()->getWindowStyle()->tab.l_focus); @@ -206,18 +206,24 @@ void Tab::decorate() { } if (tmp) image_ctrl->removeImage(tmp); - +} + +//-------------- decorate -------------------- +// decorates the tab with current theme +//-------------------------------------------- +void Tab::decorate() { + loadTheme(); + XSetWindowBorderWidth(m_display, m_tabwin, m_win->getScreen()->getWindowStyle()->tab.border_width); XSetWindowBorder(m_display, m_tabwin, m_win->getScreen()->getWindowStyle()->tab.border_color.getPixel()); } - -//-------------- deiconify ------------------- +//-------------- deiconify ----------------- // Deiconifies the tab // Used from FluxboxWindow to deiconify the tab when the window is deiconfied -//-------------------------------------------- +//------------------------------------------ void Tab::deiconify() { XMapWindow(m_display, m_tabwin); } @@ -386,6 +392,7 @@ void Tab::setPosition() { if (m_win->isShaded()) pos_y = m_win->frame.y + m_win->getTitleHeight() + m_win->getScreen()->getBorderWidth2x(); + else pos_y = m_win->frame.y + m_win->getHeight() + m_win->getScreen()->getBorderWidth2x(); @@ -585,70 +592,63 @@ void Tab::buttonReleaseEvent(XButtonEvent *be) { be->x_root, be->y_root, &dest_x, &dest_y, &child)) { Tab *tab = 0; + FluxboxWindow *win = 0; //search tablist for a tabwindow - if ((tab = Fluxbox::instance()->searchTab(child))!=0) { + if (((tab = Fluxbox::instance()->searchTab(child))!=0) || + (m_win->getScreen()->isSloppyWindowGrouping() && + ((win = Fluxbox::instance()->searchWindow(child))!=0) && + (tab = win->getTab())!=0)) { + + if (tab == this) // inserting ourself to ourself causes a disconnect + return; + // do only attach a hole chain if we dropped the // first tab in the dropped chain... - if (m_prev) disconnect(); - // attach this tabwindow chain to the tabwindow chain we found. + // attach this tabwindow chain to the tabwindow chain we found. tab->insert(this); } else { disconnect(); + // convinience + unsigned short int placement = m_win->getScreen()->getTabPlacement(); + // (ab)using dest_x and dest_y - switch(m_win->getScreen()->getTabPlacement()) { - case PTop: - dest_x = be->x_root; - dest_y = be->y_root; - switch(m_win->getScreen()->getTabAlignment()) { - case ACenter: - dest_x -= (m_win->frame.width / 2) - (m_size_w / 2); - break; - case ARight: - dest_x -= m_win->frame.width - m_size_w; - break; - } - break; - case PBottom: - dest_x = be->x_root; - dest_y = be->y_root - m_win->frame.height; - switch(m_win->getScreen()->getTabAlignment()) { + dest_x = be->x_root; + dest_y = be->y_root; + + if (placement == PTop || placement == PBottom || m_win->isShaded()) { + if (placement == PBottom && !m_win->isShaded()) + dest_y -= m_win->frame.height; + else if (placement != PTop && m_win->isShaded()) + dest_y -= m_win->getTitleHeight(); + else // PTop + dest_y += m_win->getTitleHeight(); + + switch(m_win->getScreen()->getTabAlignment()) { case ACenter: dest_x -= (m_win->frame.width / 2) - (m_size_w / 2); break; case ARight: - dest_x -= m_win->frame.width - m_size_w; - break; - } - break; - case PLeft: - dest_x = be->x_root; - dest_y = be->y_root; - switch(m_win->getScreen()->getTabAlignment()) { - case ACenter: - dest_y -= (m_win->frame.height / 2) - (m_size_h / 2); + dest_x -= m_win->frame.width - m_size_w; break; - case ALeft: - dest_y -= m_win->frame.height - m_size_h; - break; - } - break; - case PRight: + } + + } else { // PLeft & PRight + if (placement == PRight) dest_x = be->x_root - m_win->frame.width; - dest_y = be->y_root; - switch(m_win->getScreen()->getTabAlignment()) { + + switch(m_win->getScreen()->getTabAlignment()) { case ACenter: dest_y -= (m_win->frame.height / 2) - (m_size_h / 2); break; case ALeft: dest_y -= m_win->frame.height - m_size_h; break; - } - break; + } } //TODO: this causes an calculate increase event, even if we // only are moving a window @@ -778,8 +778,8 @@ Tab *Tab::getFirst(Tab *current) { return i; } -//-------------- getFirst() --------- -// Returns the first Tab in the chain +//-------------- getLast() --------- +// Returns the last Tab in the chain // of currentchain. //----------------------------------- Tab *Tab::getLast(Tab *current) { @@ -918,11 +918,15 @@ void Tab::disconnect() { // Sets Tab width _including_ borders // --------------------------------------- void Tab::setTabWidth(unsigned int w) { - if (w > m_win->getScreen()->getWindowStyle()->tab.border_width_2x) { + if (w > m_win->getScreen()->getWindowStyle()->tab.border_width_2x && + w != m_size_w) { m_size_w = w; XResizeWindow(m_display, m_tabwin, m_size_w - m_win->getScreen()->getWindowStyle()->tab.border_width_2x, m_size_h - m_win->getScreen()->getWindowStyle()->tab.border_width_2x); + + loadTheme(); // rerender themes to right size + focus(); // redraw the window } } @@ -930,11 +934,15 @@ void Tab::setTabWidth(unsigned int w) { // Sets Tab height _including_ borders // --------------------------------------- void Tab::setTabHeight(unsigned int h) { - if (h > m_win->getScreen()->getWindowStyle()->tab.border_width_2x) { + if (h > m_win->getScreen()->getWindowStyle()->tab.border_width_2x && + h != m_size_h) { m_size_h = h; XResizeWindow(m_display, m_tabwin, m_size_w - m_win->getScreen()->getWindowStyle()->tab.border_width_2x, m_size_h - m_win->getScreen()->getWindowStyle()->tab.border_width_2x); + + loadTheme(); // rerender themes to right size + focus(); // redraw the window } } diff --git a/src/Tab.hh b/src/Tab.hh index 41a6d90..5cd96bc 100644 --- a/src/Tab.hh +++ b/src/Tab.hh @@ -93,6 +93,7 @@ private: static const int m_max_tabs; bool m_focus, m_moving; // moving and focus void createTabWindow(); // creates the X win of tab + void loadTheme(); // loads the textures with right width and height void setTabWidth(unsigned int w); void setTabHeight(unsigned int h); unsigned int calcRelativeWidth(); diff --git a/src/Theme.cc b/src/Theme.cc index 765be80..80ab585 100644 --- a/src/Theme.cc +++ b/src/Theme.cc @@ -422,8 +422,7 @@ void Theme::loadWindowStyle() { readDatabaseTexture("window.title.focus", "Window.Title.Focus", &m_windowstyle.t_focus, - WhitePixel(m_display, - m_screennum)); + WhitePixel(m_display, m_screennum)); readDatabaseTexture("window.title.unfocus", "Window.Title.Unfocus", &m_windowstyle.t_unfocus, BlackPixel(m_display, m_screennum)); @@ -512,7 +511,7 @@ void Theme::loadWindowStyle() { } void Theme::loadTabStyle() { - + if (!readDatabaseTexture("window.tab.title.focus", "Window.Tab.Title.Focus", &m_windowstyle.tab.t_focus, WhitePixel(m_display, m_screennum))) @@ -532,7 +531,6 @@ void Theme::loadTabStyle() { &m_windowstyle.tab.l_unfocus, BlackPixel(m_display, m_screennum))) m_windowstyle.tab.l_unfocus = m_windowstyle.l_unfocus; - if (!readDatabaseColor("window.tab.label.focus.textColor", "Window.Tab.Label.Focus.TextColor", @@ -549,11 +547,10 @@ void Theme::loadTabStyle() { readDatabaseColor("window.tab.borderColor", "Window.Tab.BorderColor", &m_windowstyle.tab.border_color, BlackPixel(m_display, m_screennum)); - - + XrmValue value; char *value_type; - + if (XrmGetResource(m_database, "window.tab.borderWidth", "Window.Tab.BorderWidth", &value_type, &value)) { if (sscanf(value.addr, "%u", &m_windowstyle.tab.border_width) != 1) @@ -578,7 +575,6 @@ void Theme::loadTabStyle() { } //--------- rotated font for left and right tabs - // TODO: add extra checking if (XrmGetResource(m_database, "window.tab.font", "Window.Tab.Font", &value_type, &value)) { @@ -587,7 +583,6 @@ void Theme::loadTabStyle() { } else m_windowstyle.tab.rot_font = Misc::XRotLoadFont(m_display, "fixed", 90); - if (XrmGetResource(m_database, "window.tab.justify", "Window.Tab.Justify", &value_type, &value)) { if (strstr(value.addr, "right") || strstr(value.addr, "Right")) @@ -668,9 +663,9 @@ void Theme::loadRootCommand() { XrmValue value; char *value_type; Fluxbox *fb=Fluxbox::instance(); -// printf("getting root command from fb->getRootCommand()"); + const char *root_cmd=fb->getRootCommand(); -// printf("root kommandot: %s\n", root_cmd); + if (root_cmd) { #ifndef __EMX__ const int display_strlen = 1024; diff --git a/src/Toolbar.hh b/src/Toolbar.hh index d6e19db..a0aa440 100644 --- a/src/Toolbar.hh +++ b/src/Toolbar.hh @@ -130,6 +130,7 @@ public: { return ((hidden) ? frame.x_hidden : frame.x); } inline const int &getY(void) const { return ((hidden) ? frame.y_hidden : frame.y); } + inline IconBar *getIconBar(void) { return iconbar; } void buttonPressEvent(XButtonEvent *); void buttonReleaseEvent(XButtonEvent *); diff --git a/src/Window.cc b/src/Window.cc index 70531be..5c67618 100644 --- a/src/Window.cc +++ b/src/Window.cc @@ -1839,7 +1839,7 @@ void FluxboxWindow::maximize(unsigned int button) { if (! screen->doFullMax()) dh -= screen->getToolbar()->getExposedHeight() + - screen->getBorderWidth(); + screen->getBorderWidth2x(); if (dw < client.min_width) dw = client.min_width; if (dh < client.min_height) dh = client.min_height; @@ -1862,24 +1862,24 @@ void FluxboxWindow::maximize(unsigned int button) { if (screen->doFullMax()) { dy = ((screen->getHeight() - dh) / 2) - screen->getBorderWidth(); } else { - dy = (((screen->getHeight() - screen->getToolbar()->getExposedHeight()) - - dh) / 2) - screen->getBorderWidth(); + dy = (((screen->getHeight() - (screen->getToolbar()->getExposedHeight())) + - dh) / 2) - screen->getBorderWidth2x(); switch (screen->getToolbarPlacement()) { case Toolbar::TopLeft: case Toolbar::TopCenter: case Toolbar::TopRight: dy += screen->getToolbar()->getExposedHeight() + - screen->getBorderWidth(); + screen->getBorderWidth2x(); break; } } - if (decorations.tab && Fluxbox::instance()->useTabs()) { // Want to se the tabs + if (hasTab()) { switch(screen->getTabPlacement()) { case Tab::PTop: dy += screen->getTabHeight(); - dh -= screen->getTabHeight() + screen->getBorderWidth(); + dh -= screen->getTabHeight(); break; case Tab::PLeft: if (screen->isTabRotateVertical()) { @@ -1897,11 +1897,11 @@ void FluxboxWindow::maximize(unsigned int button) { dw -= screen->getTabWidth(); break; case Tab::PBottom: - dh -= screen->getTabHeight() + screen->getBorderWidth(); + dh -= screen->getTabHeight(); break; default: dy += screen->getTabHeight(); - dh -= screen->getTabHeight() + screen->getBorderWidth(); + dh -= screen->getTabHeight(); break; } } @@ -2365,13 +2365,11 @@ void FluxboxWindow::redrawLabel(void) { GC gc = ((focused) ? screen->getWindowStyle()->l_text_focus_gc : screen->getWindowStyle()->l_text_unfocus_gc); - + Misc::DrawString(display, frame.label, gc, &screen->getWindowStyle()->font, client.title_text_w, frame.label_w, frame.bevel_w, client.title); - - } @@ -2587,8 +2585,27 @@ void FluxboxWindow::propertyNotifyEvent(Atom atom) { if (decorations.titlebar) redrawLabel(); + if (hasTab()) // update tab + getTab()->draw(false); + if (! iconic) screen->getWorkspace(workspace_number)->update(); + else if (Fluxbox::instance()->useIconBar()) { + IconBar *iconbar = 0; + IconBarObj *icon = 0; + if ((iconbar = screen->getToolbar()->getIconBar()) != 0) { + if ((icon = iconbar->findIcon(this)) != 0) + iconbar->draw(icon, icon->getWidth()); +#ifdef DEBUG + else + cerr<<__FILE__<<"("<<__LINE__<<"): can't find icon!"<button == 2 && be->window == frame.label) { screen->getWorkspace(workspace_number)->lowerWindow(this); - + } else if (windowmenu && be->button == 3 && (frame.title == be->window || frame.label == be->window || frame.handle == be->window)) { diff --git a/src/Workspacemenu.hh b/src/Workspacemenu.hh index e776f2b..8e2cc48 100644 --- a/src/Workspacemenu.hh +++ b/src/Workspacemenu.hh @@ -24,7 +24,6 @@ // forward declaration class Workspacemenu; - class Toolbar; #include "Basemenu.hh" diff --git a/src/fluxbox.cc b/src/fluxbox.cc index ac1ac30..f1b1cca 100644 --- a/src/fluxbox.cc +++ b/src/fluxbox.cc @@ -1027,24 +1027,12 @@ void Fluxbox::doWindowAction(Keys::KeyAction action) { focused_window->stick(); break; case Keys::VERTMAX: - //!!TODO: fix this - if (focused_window->isResizable()) { - int w = focused_window->getWidth(); - int x = focused_window->getXFrame(); - int y = focused_window->getYFrame(); - focused_window->maximize(0); - focused_window->configure(x, y, w, focused_window->getHeight()); - } + if (focused_window->isResizable()) + focused_window->maximize(3); // maximize vertically, done with mouse3 break; case Keys::HORIZMAX: - //!!TODO: fix this - if (focused_window->isResizable()) { - int h = focused_window->getHeight(); - int x = focused_window->getXFrame(); - int y = focused_window->getYFrame(); - focused_window->maximize(0); - focused_window->configure(x, y, focused_window->getWidth(), h); - } + if (focused_window->isResizable()) + focused_window->maximize(2); // maximize horisontally, done with mouse2 break; case Keys::NUDGERIGHT: focused_window->configure( @@ -1616,6 +1604,10 @@ void Fluxbox::save_rc(void) { ((screen->isTabRotateVertical()) ? "True" : "False")); XrmPutLineResource(&new_blackboxrc, rc_string); + sprintf(rc_string, "session.screen%d.sloppywindowgrouping: %s", screen_number, + ((screen->isSloppyWindowGrouping()) ? "True" : "False")); + XrmPutLineResource(&new_blackboxrc, rc_string); + load_rc(screen); // these are static, but may not be saved in the users resource file, @@ -2349,6 +2341,17 @@ void Fluxbox::load_rc(BScreen *screen) { } else screen->saveTabRotateVertical(False); + sprintf(name_lookup, "session.screen%d.sloppywindowgrouping", screen_number); + sprintf(class_lookup, "Session.Screen%d.SloppyWindowGrouping", screen_number); + if (XrmGetResource(database, name_lookup, class_lookup, + &value_type, &value)) { + if (! strncasecmp("true", value.addr, value.size)) + screen->saveSloppyWindowGrouping(True); + else + screen->saveSloppyWindowGrouping(False); + } else + screen->saveSloppyWindowGrouping(False); + } -- cgit v0.11.2