aboutsummaryrefslogtreecommitdiff
path: root/src/tests
AgeCommit message (Collapse)AuthorFilesLines
2014-04-11merge Sami Kerola's new build-systemMathias Gumz4-30/+104
2014-02-18Fix race condition on shutdownMathias Gumz3-260/+0
This commit fixes primarily a race condition that occurs when xinit(1) shuts down: by not acting properly fluxbox gets caught in an infinite loop. It caused bug #1100. xinit(1) sends a SIGHUP signal to all processes. fluxbox tries to shutdown itself properly by shutting down workspaces and screens. While doing that, the Xserver might be gone already. Additionally, fluxbox used to restart() itself on SIGHUP, which is clearly not the right thing to do when xinit(1) is about to end the session. So, fluxbox does this: * handling SIGHUP now shuts down fluxbox without clearing workspaces and screens. * A 2 second alarm() is triggered in Fluxbox::shutdown() as a last resort * XSetIOErrorHandler() is used to recognize the disconnect from the xserver. * SIGUSR1 is for restarting fluxbox, SIGUSR2 for reloading the config * FbTk/SignalHandler.cc/hh is gone; this unused abstraction served currently no real purpose. Signal handling is now done in main.cc * Unrelated to the issue itself src/main.cc was trimmed down quite a bit and the code (responsible for handling the command line interface) was moved to src/cli*
2013-06-29fix detection of $HOME folderMathias Gumz1-5/+10
usually $HOME is set when fluxbox runs. in some rare scenarios (eg., fuzzying binaries to detect bugs) one could launch fluxbox by using 'env -i' and thus eliminating $HOME from the environment. to prevent crashes fluxbox uses now 'getpwuid()' when $HOME is not set to detect the home folder.
2013-05-26build-sys: move to non-recursive buildSami Kerola2-30/+104
This rather large change will attempts to make 'make' to work better. See excellent paper 'Recursive Make Considered Harmful' by Peter Miller for further explanation why several make files is worse than one for whole project. Note. The tests are build with 'make check' rather than defining TEST. Reference: http://miller.emu.id.au/pmiller/books/rmch/ Reference: http://karelzak.blogspot.co.uk/2013/02/non-recursive-automake.html
2013-05-26build-sys: use pkg-config to locate dependenciesSami Kerola1-0/+6
This commit alters XRANDR (X Resize And Rotate) extension dependency, which is expected to have at least version 1.4. Earlier old versions of xrandr were supported, at least to some extent.
2013-05-26build-sys: use AC_USE_SYSTEM_EXTENSIONSSami Kerola2-8/+0
The earlier _GNU_SOURCE definitions possibly did not take effect everywhere where it was intended.
2013-05-26build-sys: include config.h to all files using automakeSami Kerola1-1/+1
Do not try to be too smart which compilations need config.h, as most of them will simply because of the config.h has information about system capabilities.
2013-01-03automake: use AM_CPPFLAGS rather than INCLUDESSami Kerola1-1/+1
The INCLUDES macro deprecated in favour of AM_CPPFLAGS. References: http://www.gnu.org/software/automake/manual/html_node/Program-Variables.html
2012-11-08Rewrite of FbTk::TextureRenderMathias Gumz1-1/+1
* much more readable and easier to read code * smaller code * reduced binary size due to removed big lookup-table for square root * simple 'optimizations (lookup tables, packing of data), nothing too fancy
2012-10-03Improved vertical alignment of text in FbTk::TextButtonMathias Gumz1-106/+106
The old formula for vertical align text inside FbTk::TextButton ('height/2 + font_ascent/2 - 1') produced not always good looking results, escpecially when different fonts are involved (eg, ClockTool and WorkspaceName have different fonts and font-sizes). '(height - font_ascent) / 2 - 1' produces better results. Additional changes: * added ASCII-Art to document the involved entities when calculating the baseline * rewritten tests/testFont.cc to accept multiples texts and multiple fonts * removed some internal parts of FbTk::Font from the public interface
2012-08-28changed timing functions to use a monotonic increasing clockMathias Gumz2-8/+2
gettimeofday() is subject to be changed on daylight-saving or to ntp-related (think leap-seconds). even worse, it is subject to be changed BACK in time. this is hard to fix correctly (see commit 45726d3016e and bug #3560509). it is irrelevant for timers to know the nano-seconds since the epoch anyways.
2012-04-06Allow percentage values for some Window commandsLajos Koszti1-14/+12
2012-01-04Exceptions should be caught by reference.Ryan Pavlik1-1/+1
Found using cppcheck.
2011-05-10Remove Observers from testSignal.ccPavel Labath1-23/+0
2011-05-10Last round of simplification of Signal/Slot classesPavel Labath1-9/+9
- merged all the common stuff from 0,1,2,3 argument versions into one common base class - removed ReturnType template parameter as it was instantiated with "void" everywhere and the current ignores the return value of the callbacks anyway
2011-04-18Fix VPATH buildsPavel Labath1-1/+1
2011-04-15Fix a couple of "comparison between signed and unsigned" warningsPavel Labath2-9/+7
2011-03-19added RectangleUtil::overlapRectangles() + test casesMathias Gumz1-0/+55
2011-03-18added tests/testRectangleUtil.ccMathias Gumz2-1/+69
2011-03-18some love to src/tests, use automake to use the same build environment as ↵Mathias Gumz8-260/+63
the rest of fluxbox
2011-02-23renamed FbTk::XLayer to FbTk::Layer and FbTk::XLayerItem to FbTk::LayerItemMathias Gumz1-11/+11
2011-02-21Render rectangles instead of squares to test TextureRender.ccMathias Gumz1-13/+9
2010-09-20updated 'texturetest.cc' to work with current APIMathias Gumz1-4/+6
2010-03-19Added simple stress test in pythonHenrik Kinnunen1-0/+87
2010-03-19Added SelectArg and MemFunSelectArg*Henrik Kinnunen1-1/+32
The MemFunSelectArg* functions can be used to select a specific argument from a signal. For example this would select the string argument as argument to the callback: Signal<void, int, float, string> signal; signal.connect(MemFunSelectArg2(obj, &Object::takesOneStringArg)); signal.emit(10, 3.14, "hello"); ... void Object::takesOneStringArg(const string& value) { ... }
2010-03-18Added FbTk::relaySignal, which relays new signals to old Subject type signals.Henrik Kinnunen2-3/+25
2010-03-18Fixed so testDemandAttention compilesHenrik Kinnunen1-3/+5
2010-03-18Added MemFunIgnoreArgs which ignores aditional arguments.Henrik Kinnunen1-1/+22
For example connecting a function that takes two arguments to a signal that emits three arguments: struct Functor { void show(int a, int b); }; Functor f; Signal<void, int, int, int> s3; s3.connect(MemFunIgnoreArgs(f, &Functor::show));
2008-09-18Added new Signal/Slot system in FbTkHenrik Kinnunen2-1/+126
This is suppose to replace the obsolete Subject/Observer classes. See the src/tests/testSignals.cc for basic usage.
2008-01-04remove old svn $Id$ tagsMark Tiefenbruck6-12/+0
2007-05-20added fullscreen testfluxgen2-0/+173
2007-05-19added title test for _NET_WM_NAME and WM_NAME memory leaksfluxgen2-0/+123
2006-11-07cosmetic patch from slava againmathias1-1/+0
2006-10-30Cosmetic patch from Slava Semushinmathias1-1/+2
2006-09-18added include pathfluxgen1-1/+1
2006-05-13added test program for _NET_WM_STATE_DEMANDS_ATTENTIONfluxgen1-0/+5
2006-05-13test program for _NET_WM_STATE_DEMANDS_ATTENTIONfluxgen1-0/+131
2006-05-07handle utf-8 strings properly.simonb1-1/+4
use utf8 internally
2006-03-26rotated fonts, buttons, containers. Used for tabs for nowsimonb1-14/+44
2006-02-16updated copyright infomathias12-12/+12
2005-11-22testing replaceStringfluxgen1-10/+16
2005-06-03- Usage of xft-fonts is prefered, except a font-description starts with '-'mathias2-11/+12
- Removed "antialias"-option completly, to enable/disable "antialias" use either <fontname>:antialias=<bool> in the style or use Xft.antialias: <bool> in your .Xdefaults - Added new styleresources: *.font.effect: <halo|shadow> *.font.shadow.x : <int> - shadow x offset *.font.shadow.y : <int> - shadow y offset *.font.shadow.color : <color> - color of shadow *.font.halo.color : <color> - color of halo - Removed 'shadow' and 'halo' options from fontdefinitions: !! Style authors have to update their styles !! - Simplified XmbFontImp to not try all possible fonts to match locale - Style authors may specify multiple fonts: <font1>|<font2>|<font3> if loading of font1 fails, fluxbox probes <font2>, etc. The last font is "fixed". Hints for style authors: - if xft tries to load a font it will _ALWAYS_ return a valid font, it doesnt have to look like the one you want to have, read more about it: http://fontconfig.org/fontconfig-user.html - export XFT_DEBUG=1 before running fluxbox helps to see which fonts are picked. eg: *.font: Verdana,Arial-12:antialias=true|-artwiz-snap-*- if fluxbox is compiled with xft this will NEVER try to load "-artwiz-snap-*-" since xft gives for sure a font, most likely Verdana or Arial but noone knows. So, if fluxbox has no xft support the first fontpattern fails and fluxbox tries the next one, which might be successful. if everything fails, it will use "fixed" - Added caching of fonts, fonts are only loaded once. - Fixed #1090902 (slow utf8 start)
2005-01-24copyright datemathias12-8/+21
2005-01-15minor stufffluxgen1-2/+1
2005-01-15fixed some issues and added testMenu targetfluxgen1-2/+5
2005-01-15testing menu theme and parserfluxgen1-0/+155
2004-11-19svn propset svn:keywords "Id"mathias1-1/+1
2004-11-17needed init for font-testmathias1-2/+4
2004-10-06fixed compilefluxgen1-1/+1
2004-09-12fix for Font drawTextfluxgen1-2/+2