Commit graph

5556 commits

Author SHA1 Message Date
Mathias Gumz
6fb2960756 moved rarely used 'cpccpc' out of class declaration 2011-02-22 22:33:56 +01:00
Mathias Gumz
4f921f77f4 don't use hardcoded references to positions in the menu 2011-02-22 22:17:11 +01:00
Mathias Gumz
d11aa42ace bugfix: consistent use of 'int' for alpha values (#3187373)
WindowMenuAccessor returned strange alpha values if compiled
with 'g++ -Os'; unholy black magic happens if template<int> faces
functions returning only 'usigned char'.
2011-02-22 22:07:39 +01:00
Mathias Gumz
b7e84104a6 bugfix: render 'sunken' gradients correctly 2011-02-22 15:53:18 +01:00
Mathias Gumz
3c7407beb4 use FbTk::StringUtil API 2011-02-22 15:18:53 +01:00
Mathias Gumz
84a81a1ac1 renamed Texture:DEFAULT_BEVEL to Texture::DEFAULT_LEVEL 2011-02-22 15:18:20 +01:00
Mathias Gumz
0569849c6d cosmetics 2011-02-22 15:17:15 +01:00
Mathias Gumz
78adeb2919 Bugfix: don't render textures with dimension of 0
At least 'invertRGB()' does not like 'width' or 'height' being 0.
341b2f43e5 was triggered by this problem as well.
2011-02-22 12:32:16 +01:00
Mathias Gumz
92deeba2a0 Render rectangles instead of squares to test TextureRender.cc 2011-02-21 20:49:10 +01:00
Mathias Gumz
3f30cbb2ae cosmetic fix in fluxbox-keys 2011-02-21 20:20:04 +01:00
Jeremiah Mahler
14a8a2b440 fbsetbg: improved aspect-ratio-filling for feh (thanks Jeremiah Mahler <jmmahler at gmail com>
Closes http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=583704
2011-02-21 20:16:00 +01:00
Mathias Gumz
341b2f43e5 Fix bug: 'src_image' might be NULL if width||height are 0 (#3188223)
With ROT90-SystemTray fluxbox crashed. It is a bit unclear of where
to catch pixmaps / windows with either width or height equal to 0; IMHO
this needs more investigation.
2011-02-21 19:21:38 +01:00
Mathias Gumz
ccb5ef6624 fix grammar 2011-02-21 08:43:13 +01:00
Henrik Kinnunen
bf9fb893da Merge branch 'master' of ssh://git.fluxbox.org/fluxbox 2011-02-20 15:49:05 +01:00
Henrik Kinnunen
34bf3b4833 Fixed a possible crash when using a slot m_holder = 0 2011-02-20 15:48:42 +01:00
Mathias Gumz
0a330107e6 updated ChangeLog 2011-02-20 09:41:23 +01:00
Paul Tagliamonte
4cd62fc2cb fix spelling 2011-02-20 09:41:13 +01:00
Henrik Kinnunen
05e64be3bd 1.3.0 version for configure 2011-02-19 18:12:50 +01:00
Henrik Kinnunen
25a39585ee readded default style path to init.in 2011-02-19 18:12:32 +01:00
Henrik Kinnunen
5dd0faed9b updated documentation 2011-02-19 17:11:09 +01:00
Henrik Kinnunen
e186c9a48a Updated NEWS 2011-02-19 16:47:34 +01:00
Henrik Kinnunen
6deada2726 Added 3rd to extra dist 2011-02-19 16:47:03 +01:00
Sergio Cipolla
4614c186c8 updated pt_BR translations, closes #2940952 2011-02-05 19:32:50 +01:00
Mathias Gumz
b6347f4c5f added documentation about the 'screen' client-pattern 2011-02-03 19:48:46 +01:00
Mathias Gumz
73eda9d327 merge ChangeLog 2011-02-03 19:43:08 +01:00
Mathias Gumz
df4c3532e2 updated ChangeLog 2011-02-03 19:41:08 +01:00
Mathias Gumz
24f6f18127 updated ChangeLog 2011-02-03 19:19:35 +01:00
Peter Hercek
fc192b1161 allow to override 'FocusNewWindow' via .fluxbox/apps 2011-02-03 18:51:10 +01:00
Peter Hercek
5f6694ca14 bug fix: semantic differences between WinState::Decoration and Remember::save() 2011-02-03 08:43:47 +01:00
Mathias Gumz
83f8f59569 build fix: revert e38994ae72
'xft-config' is deprecated (http://lists.freedesktop.org/archives/xorg-devel/2010-March/006750.html)
and does not exist anymore on 'bleeding edge' versions (gentoo). 'pkg-config'
is the new way of doing things. 'pkg-config --libs xft' does only report
the libs needed and the linker finds out other dependencies on its own. currently,
'pkg-config' (version 0.25) reports only '-lXft'.

if the user wants for example LDFLAGS="-fuse-ld=gold --no-add-needed" then
all the needed libs must be produced, otherwise linkage fails. at the moment
it seems that fluxbox calls 'XftMatrixRotate()' and 'XftPatternAddMatrix()'
which both seems to trigger the need for 'fontconfig':

   undefined reference to 'FcMatrixRotate'
   undefined reference to 'FcPatternAddMatrix'

is 'pkg-config --libs xft' reporting to few libs? in comparison to
'xft-config --libs' for sure. bug? feature? i am not sure. there are
several ways to address this issue:

* append the needed libs manually via LIBS or LDFLAGS

  env LIBS="-lfontconfig" ./configure

* change build-system of fluxbox to do something like

   pkg-config --print-requires-private 'xft' 2> /dev/null || echo xft)`

(pkg-config version < 0.2x does not have --print-requires-private, which
 then leads to not print out all libs needed, which would then require
 a fallback to xft-config since an older system anyways, evidence is
 old pkg-config)

* changing build-system of fluxbox to use something like:

  pkg-config --static --libs xft

(which reports really all libs, even more than actually needed, check out
  http://osdir.com/ml/debian-bugs-closed/2011-01/msg01112.html)

* fix 'pkg-config' (or the related xft.pc) to report '-lXft -lfontconfig'
(not our code, but preferable)

* use 'pkg-config --libs xft fontconfig' since we know that calling the
xft functions requires linking against 'fontconfig' as well:

  pkg-config --libs xft fontconfig

which is what we use to get rid of the build-errors
2011-01-25 12:23:24 +01:00
Mathias Gumz
dd6014102a fix missing ')' introduced by e38994ae, the rest is cosmetical 2011-01-24 10:13:52 +01:00
Mathias Gumz
ae3652ebba updated 3rd/vim/fluxkeys.vim 2011-01-24 09:47:33 +01:00
Mathias Gumz
301a5bcd3e added little helper to create vimballs 2011-01-24 09:47:16 +01:00
Mathias Gumz
f382204759 added 'ArrangeWindowsHorizontal' 'ArrangeWindowsVertical' to 3rd/vim/syntax/fluxkeys.vim 2011-01-24 06:41:27 +01:00
Mathias Gumz
bb94b3e95d updated the AUTHOR file 2011-01-23 22:23:13 +01:00
Mathias Gumz
8662da1790 added 3rd/ party stuff, vim related files for now 2011-01-23 22:22:44 +01:00
Mathias Gumz
e38994ae72 build fix: use 'xft-config' instead of 'pkg-config' to use the right libs
when linking with binutils-gold and --no-add-needed it is not enough to
just use -lXft but it must be -lXft -fontconfig (and some more). since we
use 'pkg-config --libs' to find out about the needed flags and 'pkg-config'
only returns -lXft (except by using

   pkg-config --libs `pkg-config --print-requires-private xft`

) we switched to 'xft-config --libs' which gives us the complete list of
all needed libs.

the issue was brought to attention by

   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=554386

but the proposed fix was just quick and dirty.
2011-01-23 21:45:19 +01:00
Mathias Gumz
e868ff5928 bug fix: make fluxbox work under nxserver, closes #2813828
nxserver-3.x creates a XExposeEvent for the unmapped FbTk::Menu(), which is
not configured completely yet (hence unmapped). this causes a call to
FbTk::Menu::clearItem() which then uses a value of 0 for m_rows_per_column
to divide the current index which triggers a SIGFPE.

it is still unclear, why nxserver-3.x creates the XExposeEvent for the
unmapped (menu) window. doing nothing if the menu is unmapped 'fixes'
the problem for now.

many thanks to Lars Engels (bsd-geek.de) to assist me in debugging this
issue.
2011-01-18 21:43:41 +01:00
Mathias Gumz
7f6d03e7bf compile fix, new name of setMinimumSublevels() is setMinimumColumns() 2011-01-16 08:27:25 +01:00
Mathias Gumz
cc2774871a removed useless include statements
'typeinfo' was needed for RTTI in isItemSelectable() (see last commit)
'algorithm' is already included some lines above
2011-01-15 21:49:37 +01:00
Mathias Gumz
1f0adef4da better use of API, no need for 'timeval' in Menu 2011-01-15 21:38:56 +01:00
Mathias Gumz
05a52116df MenuItem::isEnabled() is sufficient to decide Menu::isItemSelectable()
MenuSeparator is never enabled since it returns always 'false' in its
implementation of isEnabled(). no need to use RTTI imho.
2011-01-15 21:37:45 +01:00
Mathias Gumz
bb480030f5 small refactoring of FbTk/Menu code
* removed useless struct _menu
* code deduplication via renderMenuPixmap()
* improved documentation:
   - 'sublevel' actually means 'column'
   - 'persub' means 'row_per_column'
2011-01-15 21:31:37 +01:00
Mathias Gumz
accb8c3fa3 compile fix: missing symbol (SystemTray::getNetSystemTray()) when configured --disable-toolbar 2011-01-13 16:27:53 +01:00
Mathias Gumz
9e17a0d6d7 updated Changelog 2011-01-06 10:16:15 +01:00
Mathias Gumz
e8ce9ed3a3 bugfix: do not assume ':number.screen' as the result of 'DisplayString()'
a newer xlib recently changed the result of 'DisplayString()' a little bit:
instead of returning ':0.0' or ':1.0' it yields ':0' or ':1'. our code to
transform this string into something that includes the currently used
Screen worked only on something like ':0.0'.

we now find the '.' after the ':' and strip that part away.
2011-01-06 08:33:34 +01:00
Mathias Gumz
e2d52a3948 bugfix: std::string() does not like NULL on construction
not having DISPLAY set (eg: on a headless system) caused fluxbox to crash.
2010-10-13 15:48:29 +02:00
Mathias Gumz
650b6f842b use 'system()' to run 'fluxbox-update_configs'
by using FbCommands::ExecureCmd() we run 'fluxbox-update_configs' in
the bacground while booting a new fluxbox instance already. 'system()'
waits until 'fluxbox-update_configs' is done and then gives the control
back to fluxbox.
2010-09-21 00:08:16 +02:00
Mathias Gumz
78b09ee932 updated 'texturetest.cc' to work with current API 2010-09-21 00:05:15 +02:00
Mathias Gumz
ae7a54a4b6 bugfix: ' floating point exception' due wrongly placed code
while integrating the old 'getSqrt()' function into the 'bsqrt()'
function i misplaced some code. this lead to 'r' being 0 on the
first run. doh.
2010-09-21 00:04:46 +02:00