Commit graph

46 commits

Author SHA1 Message Date
Mathias Gumz
aa39a1a666 Fix mishandled [maxmized] statement in apps file
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-28 20:28:58 +01:00
Sami Kerola
47b9786533 build-sys: use AC_USE_SYSTEM_EXTENSIONS
The earlier _GNU_SOURCE definitions possibly did not take effect
everywhere where it was intended.
2013-05-26 10:38:10 +01:00
Mark Tiefenbruck
610a15ac47 add fullscreen, maximizedhorizontal, and maximizedvertical tests to ClientPattern 2012-07-01 21:22:01 -07:00
nacitar sevaht
1dacf57d20 Can check CARDINAL properties in CLIENT PATTERNS
Introduces a new member function, FbWindow::cardinalProperty()

This change also changes other code that previously used
FbWindow::property() to do the same thing as the new function; this
reduces code duplication.

There are still some bits of code (Ewmh.cc, extractNetWmIcon()) that use
FbWindow::property() to retrieve XA_CARDINAL values, but as the new
method is designed for getting a _single_ property, and that code uses
FbWindow::property() to retrieve the number of values present, and then
grab all of them; it's a different use case.  I opted to not try to make
cardinalProperty() into some monolithic all-purpose cardinal method;
FbWindow::property() works just fine for that.

This change also adds an optional (default=NULL) boolean to
FbWindow::textProperty and friends that allows the caller to determine
whether or not a value was actually retrieved.  This was necessary for
integrating FbWindow::cardinalProperty with the codebase, and it seemed
to fit with FbWindow::textProperty as well.  Prior to this change, if
you got a return value of "", you wouldn't know if you successfully
retrieved the value which happened to be blank, or if you failed to
retrieve the value.  Now, you can pass the address of a boolean if you
so choose in order to differentiate these situations; the same applies
to the new FbWindow::cardinalProperty().
2011-05-08 07:48:03 +02:00
Mathias Gumz
e850b01919 compile fix: sunCC 5.11 (sunstudio 12) compiles and links again
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-03-23 12:02:15 +01:00
Mathias Gumz
813e6c4402 disabled overhead base classes 'FbTk::Layer' and 'FbTk::LayerItem'
had to add <algorithm> at various other files as a result of this change.
2011-02-23 22:46:13 +01:00
Mathias Gumz
2b62cf9733 cleanup and code deduplication
* ClientPattern.cc: make compiler happy (complaints about XPROP not handled in switch)
* FbTk/FbPixmap.cc FbTk/StringUtil.cc: signed vs unsigned
* FbTk/FbString.cc: missing return
* WinClient.cc: create atoms only once; use helper function
* Window.cc: use a helper function
2010-09-15 01:22:01 +02:00
Mathias Gumz
faa4c97888 added 'SetXProp' action and (@PROP=foo) clientpattern
these two allow 'tagging' of arbitrary windows with 'tags' (or 'labels'). such 'tagged' windows can then be used in ':NextWindow (@PROP=foo)' commands to quickly cycle through a subset of available windows.
since the 'tags' are applied as real xproperties to a window they survive a restart of fluxbox or even another windowmanager. the user can also set the tags by using xprop(1).

the next step regarding the UI should be to visualize the tags of a window.
2010-09-11 17:09:07 +02:00
Mathias Gumz
a6ed9498cc code cleanup
* moved code from public API to internals
* avoid code duplication ( while(!m_terms.empty()) ...)
* cosmetic '(*it)->' vs 'term.'
2010-09-10 16:35:49 +02:00
Mathias Gumz
534db1d409 reduced 'switch/case' and 'else if' hell a little bit 2010-09-09 15:33:12 +02:00
Mathias Gumz
690d926ac4 introduced FbTk::BidiString
a 'BidiString' holds both the logical content and the visual reordered
version of the content of a string. this helps to reduce the number of
calls to reorder the string before drawing it (as introduced in the patch
from Ken Bloom) and to be more consistent in menus and textboxes (drawing
cursors and underlining text).
2010-09-08 20:17:21 +02:00
Mathias Gumz
c4c96ec830 simpler code 2009-10-01 08:57:31 +02:00
Mark Tiefenbruck
589125672b allow matching screen number in ClientPattern 2009-06-28 13:10:58 -07:00
Mark Tiefenbruck
02e0f9321c use current workspace in ClientPattern when client has no FbWindow 2009-06-25 03:18:27 -07:00
Mark Tiefenbruck
4e64d45e16 add [transient] tag to apps file to match transient windows 2008-08-19 09:18:32 -07:00
Mark Tiefenbruck
a84fe20c49 add (urgent=yes|no) options to ClientPattern 2008-06-08 11:29:47 -07:00
Mark Tiefenbruck
9c105111d2 remove old svn $Id$ tags 2008-01-03 17:34:12 -08:00
Mark Tiefenbruck
32eb2a148e move RegExp to FbTk 2007-12-27 22:15:06 -08:00
markt
5d7043320d allow arbitrary window patterns in iconbar 2007-11-12 21:59:43 +00:00
markt
f3afe787c1 introduced workspacename for ClientPattern, and some miscellaneous cleanup 2007-10-24 17:09:26 +00:00
markt
da545ea02e we already have a subroutine for this 2007-10-23 19:52:14 +00:00
markt
c849d3c7ff allow negated patterns 2007-10-23 17:30:49 +00:00
fluxgen
c2badda58a added [mouse] pattern, matches against prop HEAD and the mouse position 2007-10-22 18:29:33 +00:00
markt
7e4f8a3853 add support for transient windows in client patterns, and merge a few more changes from pre-devel 2007-10-14 18:05:31 +00:00
markt
a59428d67a merged changes from pre-devel 2007-10-13 21:51:37 +00:00
markt
48f761f981 fixed problem with creating windows in iconic state 2007-04-01 21:42:01 +00:00
markt
8588402376 don't escape regex metacharacters when writing apps file 2007-01-02 03:12:24 +00:00
mathias
a3c5fd6000 cosmetic patch from slava again 2006-11-07 19:12:42 +00:00
mathias
10082d821d cosmetic patch from slava semushin, removes whitespaces and
uses only those things from "namespace std" what we really need.
2006-10-27 06:57:43 +00:00
simonb
66e738da77 fix crash in ClientPattern 2006-08-10 14:55:52 +00:00
simonb
53f869aa52 reload the apps file on flux reload 2006-04-23 14:51:04 +00:00
simonb
553104ee1d fix all compiler warnings with -Wall 2006-04-16 11:18:22 +00:00
mathias
ae05ad9a01 updated copyright info 2006-02-16 06:53:05 +00:00
fluxgen
88de9987f7 add backslash to special chars, fixes bug #1327878 2005-10-20 14:50:50 +00:00
fluxgen
b8a39c1e6c stringstream header 2005-02-13 16:34:37 +00:00
mathias
4a7d0b8434 cosmetic + updated copyright year 2005-02-10 10:24:31 +00:00
mathias
cf46669bc1 copyright date 2005-01-24 18:34:57 +00:00
mathias
993c17cf2e svn propset svn:keywords "Id" 2004-11-19 11:37:27 +00:00
rathnor
d17bf39a43 add autoconf check for std c++ headers 2004-08-31 15:26:40 +00:00
rathnor
bb779745f4 add apps file matching on role. Includes new textProperty property on
FbWindow.
2004-04-28 13:04:06 +00:00
fluxgen
f89c71c0db obsolete getTitle() from win client change to title() 2003-12-17 01:19:39 +00:00
fluxgen
a2f947e300 check for sstream header 2003-11-17 00:33:16 +00:00
rathnor
4e91ce1b21 small solaris build fix 2003-10-12 16:25:28 +00:00
fluxgen
5f558cbbfc include cstdio for sprintf 2003-06-13 13:03:44 +00:00
fluxgen
b05f27d33a minor cleaning 2003-06-13 12:02:00 +00:00
rathnor
e139cbb028 add regular expression support in remember capabilities
see ChangeLog for details
2003-06-12 15:12:19 +00:00