Commit graph

6199 commits

Author SHA1 Message Date
Mark Tiefenbruck
5f3cb410cd Patch from Thomas Luebking
Documents Opaque Resizing and adds a fancy config menu item
2021-07-07 06:58:42 -07:00
Mark Tiefenbruck
8bc11006a5 Patch from Glen Whitney
A priori, there is no reason why the workspace warping functionality should
treat the horizontal and vertical directions at all differently. Even if
traditionally horizontal warping was more common, for some in recent times
as aspect ratios tend to become larger, stacking virtual workspaces
vertically may make more sense. Similarly, some might want to traverse
an array of workspaces in column-major, rather than row-major, order.

Prior to this commit, there were extra parameters for vertical warping (a
controlling flag and an offset for how many workspaces to jump) as opposed
to horizontal warping. Also it was impossible to allow vertical warping while
disallowing vertical warping.

This commit makes all of the parameters and behavior for horizontal and
vertical warping equivalent. For backwards compatibility, there is an
overarching flag controlling whether warping occurs at all, as well as a
separate control flag and offset for each of horizontal and vertical warping.

The relevant init file resources and default values are:

session.screen0.workspaceWarping: true
session.screen0.workspaceWarpingHorizontal: true
session.screen0.workspaceWarpingVertical: true
session.screen0.workspaceWarpingHorizontalOffset: 1
session.screen0.workspaceWarpingVerticalOffset: 1
2021-07-06 16:56:20 -07:00
Mark Tiefenbruck
0279936d83 Patch from Thomas Luebking
Adds (secret) opaque resize mode. It sure would be nice if it was documented....

The relevant init file resources and their default values are:

session.screen0.opaqueResize: False
session.screen0.opaqueResizeDelay: 40
2021-07-06 16:31:49 -07:00
Mark Tiefenbruck
43ae328658 Patch from Denis Gantsev
Fluxbox would segfault when no fonts were available. Now it just exits with an error.
2021-07-06 16:19:56 -07:00
Mark Tiefenbruck
ee9c0a34ba Patch from Dmytro Bagrii
Fix fbrun completion search for last directory in PATH
2021-07-06 16:10:30 -07:00
Mark Tiefenbruck
dd238f9d95 Patch from Bo Simonsen.
Improve switching between 12H and 24H in Clock Tool
 configuration

Having:

    session.screen0.strftimeFormat:	%d-%m-%y %02k:%M

The switch[1] between 12H and 24H did not work due to the digits (02).
2021-07-06 16:03:13 -07:00
Mark Tiefenbruck
b0663bc167 Patch from Bo Simonsen.
Max size per client (setMaxSizePerClient) was computed for
iconbar.alignment = Relative not taking into account that a fixed size
can be given when iconbar.alignment = Left/Right.

In a "recent" change, relative alignment was changed, to better handle
items with long titles. This is breaking existing behavior, the new
behavior is (with this commit) now denoted RelativeSmart.
2021-07-06 15:56:26 -07:00
Sébastien Ballet
f76720d918 nls/fr_FR: Fix encoding
The encoding of nls/fr_FR/Translation.m is UTF-8 (see 96c52db). This
commit puts the correct "codeset" into place.
2020-04-26 11:14:58 +02:00
Jan Sucan
cbdb3beecc Move the systray ordering documentation to the asciidoc file
The .in file is generated from the .txt file.
2020-04-19 16:32:05 +02:00
Bo Simonsen
419170668a Handle sizehint base_width / base_height being less than 0
Some applications supply -1 in base_width / base_height. One example is
the Preferences dialog of pcmanfm-qt:

WM_NORMAL_HINTS(WM_SIZE_HINTS):
  ...
  program specified base size: -1 by -1

Without this commit the program will crash due to overflow of unsigned int.
2020-04-19 14:55:44 +02:00
Jan Sucan
f48237e3ad Synchronize manpages .in files with their .txt files
The .in files are generated from the .txt files.
2020-04-19 14:53:54 +02:00
Jan Sucan
7559d60edf Reformat a paragraph in doc/asciidoc/README.txt 2020-04-19 14:53:54 +02:00
Jan Sucan
33860a4d59 Update xmlto URL
fedorahosted.org was retired on March 1st, 2017.
2020-04-19 14:53:54 +02:00
Jan Sucan
9619027631 Add description of the system tray ordering to the fluxbox(1) manpage 2020-04-09 09:50:29 +02:00
Jan Sucan
625a690067 Add missing scope to a method definition 2020-04-05 10:28:08 +02:00
Gregor Bollerhey
d679deebda Remove branch readme (easier merging). 2020-04-05 09:57:59 +02:00
Gregor Bollerhey
114d261cc9 Corrected typo in github-readme. 2020-04-05 09:57:59 +02:00
Gregor Bollerhey
d5902f1785 Const ref instead of const for string vector. 2020-04-05 09:57:59 +02:00
Gregor Bollerhey
d07ee244d3 Ignore case when matching window classnames. 2020-04-05 09:57:59 +02:00
Gregor Bollerhey
89dec4ff15 Corrected comment (now member and returns nothing). 2020-04-05 09:55:33 +02:00
Gregor Bollerhey
f833ff71a5 Use FbTk::StringUtils instead of own tokenizer. 2020-04-05 09:55:33 +02:00
Gregor Bollerhey
47474be46c Sort on remove isn't needed. 2020-04-05 09:50:56 +02:00
Gregor Bollerhey
b23aba180f Icon order now is property of the SystemTray.
This way it is only parsed once in the constructor. Updating the
TrayWindow order is now a method which is called once when the icon is
created.

sortClients/rearrange is now only called on adding and removing icons.
2020-04-05 09:50:20 +02:00
Gregor Bollerhey
bb0790d794 XFree must not be called with 0. 2020-04-05 09:47:18 +02:00
Gregor Bollerhey
173a66346b Thought BadWindow was a return status on failure.
In fact its 0, thats why fluxbox sometimes crashes when freeing the
malformed structure.
2020-04-05 09:47:18 +02:00
Gregor Bollerhey
35ce8b313a Branch specific readme. 2020-04-05 09:47:18 +02:00
Gregor Bollerhey
07d2137024 Store order in TrayWindow instead of using expensive comperator. 2020-04-05 09:47:18 +02:00
Gregor Bollerhey
c65f2ec6fb Use XFree to free memory (not the default "delete"). 2020-04-05 09:47:18 +02:00
Gregor Bollerhey
7e762f0a97 Make systray icon pinning available.
The user options screenname.systray.pinLeft and
screenname.systray.pinRight in .fluxbox/init are read as comma sperated
list of window classnames.

While preserving the order of the lists, systray icons are sorted so
that pinLeft'ed classnames appear left and vice versa.
2020-04-05 09:47:18 +02:00
Christian Hesse
53fa0d6aac explicitly expect unsigned int
This fixes:

src/FbTk/XftFontImp.cc: In member function ‘virtual bool FbTk::XftFontImp::load(const string&)’:
src/FbTk/XftFontImp.cc:81:53: error: no matching function for call to ‘max(unsigned int, int)’
2019-08-06 14:03:30 +02:00
boweevil
02cc0c6fc1 vim syntax: Add ftdetect to Vimball creation in Makefile 2019-07-21 15:21:08 +02:00
boweevil
38307ebfd8 added 3rd/vim/syntax/fluxstyle.vim 2019-07-21 15:21:08 +02:00
ryluchs17
368e2935e2
zero check now uses std::max() 2019-07-07 19:07:56 -04:00
Ryan Luchs
ad410a5c93 removed potential division by zero with size zero fonts 2019-07-06 17:44:58 -04:00
Glen Whitney
e792fff30f Fix menu docs, esp. items allowed in window menu 2019-04-22 10:53:04 -07:00
Nguyễn Thái Ngọc Duy
a46e5b83c6 Update Vietnamese translation 2019-01-08 19:11:18 +07:00
Pete Beardmore
248b15c25f fbrun, add horizontal padding option 2018-03-14 07:49:50 +01:00
Pete Beardmore
ed7ea14167 fbtk, textbox, support horizontal padding
-add 'setPadding' function
2018-03-14 07:49:50 +01:00
Pete Beardmore
ca0995bdec fbtk, textbox, overflow selection deselection
changes the selection's deselection mechanism for oversized (e.g
larger than window width) text

new behaviour ensures the maximum selection width remains whilst
the selection length is 'oversized'. only when the selection length
has a width less than the window width will the selection (i.e. the
highlight / inverted colours) reduce in size

this is in contrast to the existing approach which would immediately
decrease an oversized selection down to nothing visually, leaving
the remainder of the selection 'off screen'. this 'looks like nothing
is selected' when in fact it is, gives a poor UX
2018-03-14 07:49:50 +01:00
Pete Beardmore
f19bb5787f fbtk, textbox, fix selection release on click 2018-03-14 07:49:50 +01:00
Pete Beardmore
3ae7b81ae1 fbtk, textbox, limit selection height to font size 2018-03-14 07:49:50 +01:00
Pete Beardmore
375e41bb37 fbtk, textbox, fix cursor position and size
-use font height for cursor
-prefer 'descent to ascent' coverage as opposed to 'baseline plus
way too high'!
2018-03-14 07:49:50 +01:00
Pete Beardmore
79ce3ef424 fbtk, textbox, fix text vertical centering 2018-03-14 07:49:50 +01:00
Maik Broemme
0df41cf838 Fix evaluating variables in ExportCmd
Don't evaluate trusted variables in *ExportCmd::parse as they will be
always false for SetEnv, Export and SetResourceValue and never executed
via fluxbox-remote.
2018-03-11 13:49:06 +01:00
kottroll
05d860eda7 rm not needed newlines 2018-03-11 13:35:56 +01:00
Lajos Koszti
6e8bf37cc8 Rotate toolbar button on rotated toolbar
In 393ba45f91 added the possibility to
add custom buttons to the toolbar. However, if the toolbar is rotated
the buttons stays horizontal.
Update the button to rotate the text and update the width/height of the
button if rotated
2017-11-19 20:15:10 +01:00
Mark Murawski
7cb7bfaa44 Support 'vertical' Workspace warping
'Vertical' Workspace warping is a variant of the existing Workspace
warping feature: When a user drags a window to the edge of the Screen,
the window is warped to the next / previous workspace.

'Vertical' Workspace warping detects a drag towards the upper / lower
border of the screen and warps the current workspace about an 'offset'.
Example given, lets say the user has 9 workspaces and considers them to
form a 3x3 grid:

  +-+-+-+
  |1|2|3|
  +-+-+-+
  |4|5|6|
  +-+-+-+
  |7|8|9|
  +-+-+-+

An 'offset' of 3 warps from workspaces 2 to workspace 5 (or 8), when a
window is dragged to the bottom / top border.

New configuration ressources:

    session.screenN.workspacewarpingvertical: true
    session.screenN.workspacewarpingverticaloffset: X
2017-11-19 20:10:26 +01:00
Mathias Gumz
0090dc8a6b Merge documentation 2017-11-19 20:03:06 +01:00
Lajos Koszti
5adf31002f
vim syntax: Recognize fluxbox files 2017-09-06 20:12:32 +02:00
sillyslux
5a9791e358 fix manpage fluxbox-style
removed: window.font as it seems to have no effect
added:
  - window.label.focus.font
  - window.label.unfocus.font
2017-04-24 20:58:25 +02:00