aboutsummaryrefslogtreecommitdiff
path: root/src/Remember.cc
AgeCommit message (Collapse)AuthorFilesLines
2016-06-26Add FocusProtection featuresThomas Lübking1-0/+65
The apps file gets a new key FocusProtection supporting a comma separated list. * None : regular behavior * Lock : If this window has the focus, no other may claim it * Deny : This window is not allowed to focus itself I addition there's preparation for a follow-up patch to incorporate and substitute the present FocusNewWindow feature: * Gain : Pass focus to new window * Refuse : Do not pass focus to new window rationale: clients stealing the focus sucks badly and while there's an input driven timeout, that only protects actual typing flow, but if eg. vlc proceeds on the playlist, you'll suddenly control vlc instead of your browser (ie. typing ctrl+w doesn't close the tab, but the playlist ...)
2016-02-28Mixed relative and absolute values for appsArkadiusz Bokowy1-55/+59
Allow setting relative value for x and y or width and height separately in the apps configuration file. This makes these settings compatible with ones available in the keys file. Previous buggy behavior: If someone has specified, e.g. "[Dimensions] {50% 100}" it was parsed as "{50% 100%}" not as "{50% 100px}" which was inconsistent with the "keys" configuration file. From now on it is possible to write something like this: [app] [Position] (RIGHT) {50% 0} [Dimensions] {300 100%} [end] Signed-off-by: Arkadiusz Bokowy <arkadiusz.bokowy@gmail.com>
2015-02-01Fix crash: click the Remember-menu works againMathias Gumz1-1/+1
This commit fixes a subtle regression introduced by myself in f64727ca: WinClient wc = FbMenu::window()->winclient() creates a copy and this copy gets cleaned up at the end of the scope. What I really wanted was a reference.
2015-01-28Fix mishandled [maxmized] statement in apps fileMathias Gumz1-235/+246
In f64727ca I removed one 'else' too much. As a result all [maximized] lines were mapped to MAX_NONE. Fixed. The rest of the commit is just some cosmetic to reduce indentation and shorten function names, easier to read.
2015-01-21Fix segfault on shutdownMathias Gumz1-5/+5
There was a problem deep within how the menus were connected and when and what gets deleted. It was clearly related to a menu which was kind of global. In order to better understand the code flow I eliminated the ExtraMenu code: it was used only to get the Remember-Menu into the Window-Menu. Instead of having a singleton of the Remember-Menu and fight against the shaky interconnections we just create a new one on demand and delete when the menu gets deleted. Looks like this fixes the problem. The menu code needs more love anyway. Closes #1118
2015-01-21Cosmetic: less code bloatMathias Gumz1-69/+57
2015-01-16Fix semantic errors (wrong variable names etc)Mathias Gumz1-1/+2
Uncovered by coverity-scan.
2015-01-16Refactor: move some menu-creation functions to MenuCreatorMathias Gumz1-1/+2
Another patch to trim down the code that needs to be part of BScreen
2015-01-15Refactor menu code: be more explicit and compactMathias Gumz1-20/+15
This commit is a preparation step for some menu cleanup ahead. To make it easier to understand which types of MenuItems are added where and when, I converted the overloaded FbTk::Menu::insert() functions into explicit ones (Menu::insertSubmenu(), Menu::insertItem(), etc. ). This makes it possible to just grep for 'insertSubmenu()'. Side effect this commit: it trims down the very verbose creation of menu items in regards to how the labels are created. Minor: FbTk::Menu::shown and FbTk::Menu::s_focused are moved out of the class.
2015-01-03Remove various unused variablesMathias Gumz1-9/+6
Clang and Gcc-4.9 complaint about some unused variables here and there. And who are we to not make a compiler happy :)
2013-05-26build-sys: use AC_USE_SYSTEM_EXTENSIONSSami Kerola1-5/+0
The earlier _GNU_SOURCE definitions possibly did not take effect everywhere where it was intended.
2013-02-10Remove unused variables, cosmeticsMathias Gumz1-16/+16
2012-04-06Allow percentage values for some Window commandsLajos Koszti1-28/+76
2012-01-04Pre-increment non-primitive types.Ryan Pavlik1-4/+4
Found with cppcheck: "Prefix ++/-- operators should be preferred for non-primitive types. Pre-increment/decrement can be more efficient than post-increment/decrement. Post-increment/decrement usually involves keeping a copy of the previous value around and adds a little extra code."
2011-05-10Make RefCount<> more sensiblePavel Labath1-4/+4
the previous version of operator*() made no sense. E.g., it violated the invariant (*ptr).foo <=> ptr->foo. The dereferencing operator now returns a reference to the pointed-to object, rather than a pointer to it. I also added a bool conversion operator, which can be used in testing the NULL-ness of the pointer. Anyone wondering if that could be done in a simpler way is encouraged to read <http://www.artima.com/cppsource/safebool.html>. And, finally, I removed the mutable flag from the m_data member, since it does not need it.
2011-03-23compile fix: sunCC 5.11 (sunstudio 12) compiles and links againMathias Gumz1-1/+1
biggest change: renaming of 'class Layer' to 'class ResourceLayer' in Layer.hh to handle complaints about 'ambiguous Layer: Layer or FbTk::Layer'. 'ResourceLayer' sounds crappy, but that was the best I could come up with right now.
2011-02-03allow to override 'FocusNewWindow' via .fluxbox/appsPeter Hercek1-0/+24
2011-02-03bug fix: semantic differences between WinState::Decoration and Remember::save()Peter Hercek1-11/+5
2010-09-13code simplificationMathias Gumz1-0/+2
we do not need a std::map just to store an attribute on an AtomHandler, it makes housekeeping just more annoying.
2010-09-09added FbTk::Util::clamp() and simplified related codeMathias Gumz1-20/+11
2010-09-08improved 'escapeRememberChars()' routine by traversing the string only onceMathias Gumz1-9/+14
removed obsolete 'getuint()' function
2010-09-08avoid code duplicationMathias Gumz1-3/+3
2010-03-17Changed #ifdef DEBUG ... cerr << to using fbdbg.Henrik Kinnunen1-12/+9
This will reduce the number of #ifdef DEBUG for simple debug messages. include "Debug.hh" and use fbdbg instead of cerr for debug.
2009-09-30cosmetic fixes: removed redundant ';' + some whitespacesMathias Gumz1-3/+3
2008-08-30use FbMenu::window instead of WindowCmd<>::window for displaying items in ↵Mark Tiefenbruck1-10/+9
the window menu
2008-08-27make FbWinFrame and FluxboxWindow share a WindowState objectMark Tiefenbruck1-4/+4
2008-08-27move FbWinFrame::State class to a new fileMark Tiefenbruck1-20/+20
2008-08-22move fullscreen and maximization handling to FbWinFrameMark Tiefenbruck1-10/+12
2008-08-20fix match limits in apps file, plus some documentationMark Tiefenbruck1-0/+10
2008-08-19add [transient] tag to apps file to match transient windowsMark Tiefenbruck1-18/+27
2008-08-18combined code for saved window positions and MoveTo key commandMark Tiefenbruck1-61/+30
added left, right, top, and bottom center reference points
2008-08-16some cleanupMark Tiefenbruck1-4/+4
2008-08-15move getDecoMaskFromString to FbWinFrameMark Tiefenbruck1-1/+1
2008-08-14cleanup of some filesMathias Gumz1-141/+298
2008-08-05add SetLayer key commandMark Tiefenbruck1-18/+2
2008-05-25another fix for saving and restoring window dimensionsMark Tiefenbruck1-2/+1
2008-05-12some minor changesMark Tiefenbruck1-3/+6
2008-05-12use AutoReloadHelper in apps file, check for changes automaticallyMark Tiefenbruck1-14/+14
2008-02-04Fix crash with apps reloading.Tomas Janousek1-3/+8
Yeah, we shouldn't delete pointers that are mentioned elsewhere... Signed-off-by: Tomas Janousek <tomi@nomi.cz>
2008-01-11make FbTk::Command a template class, split parsing information out of ↵Mark Tiefenbruck1-1/+1
ObjectRegistry
2008-01-04remove old svn $Id$ tagsMark Tiefenbruck1-2/+0
2007-12-30removed some unneeded headersMathias Gumz1-6/+2
2007-12-27simplify the window transparency menu and handling a bitMark Tiefenbruck1-1/+1
2007-12-23make FbWinFrame aware of the decoration stateMark Tiefenbruck1-11/+11
2007-12-18holding control will now keep the menu openMark Tiefenbruck1-2/+3
2007-12-17fix startup items in apps file with specified screen numberMark Tiefenbruck1-1/+1
2007-10-24introduced workspacename for ClientPattern, and some miscellaneous cleanupmarkt1-3/+4
2007-10-23allow remembering minimized, maximized, and fullscreen statemarkt1-2/+97
2007-10-14add support for transient windows in client patterns, and merge a few more ↵markt1-11/+4
changes from pre-devel
2007-10-13merged changes from pre-develmarkt1-24/+21