Commit Graph

170 Commits

Author SHA1 Message Date
haptix@web.de e3913093b6 introduced i3 command for changing the hidden state and the mode of i3bar
The hidden_state and mode of each i3bar instance can now be controlled from within i3.
Therefore, two new i3 command were introduced:
    _
    bar hidden_state show|hide|toggle [<bar_id>]

    show: always show the bar
    hide: normal hide mode
    toggle: toggle between show and hide (individually for each bar)
    _
    bar mode dock|hide|invisible|toggle [<bar_id>]

    hide,dock: like before
    invisible: always keep the bar hidden
    toggle: toggle between dock and hide (individually for each bar)

This patch introduces a hidden_state ("hidden_state hide|show") in the
barconfig, which indicates the current hidden_state of each i3bar
instance. It only affects the bar when in hide mode. Additionally, a new
invisible mode was introduced. In order to change the hidden_state or
mode of the bar from i3, a barconfig-update event was introduced, for
which a bar can subscribe and the bar then gets notified about the
currently set hidden_state and mode in its barconfig.

For convenience, an id field ("id <bar_id>") was added to the barconfig, where one can
set the desired id for the corresponding bar. If the id is not specified, i3 will
deterministically choose an id; otherwise, with the previous random approach for finding
a new id, which is actually not shared with i3bar, as it would determine its id on
startup, the event-subscription would be destroyed on reload. Still, this issue remains
when manually changing the bar_id in the config and then reloading.

fixes #833, #651
2013-05-25 23:00:36 +02:00
Eric S. Raymond d0fbc10aca Typo and usage fixes in documentation and comments. 2013-04-11 22:37:39 +02:00
Michael Stapelberg 82b59788ac userguide: mention forgotten layout splitv/splith (Thanks Eelis) 2013-03-30 13:03:35 +01:00
Artem Shinkarov 5f05ca6b5d Separator color via config; separator width and on/off via ipc
This patch adds the following features:
1) Configure a color of the separator via config.  It is done like
   bar {
      colors {
         separator #000000
      }
   }
2) A block can have an integer entry "separator_block_width" which
   sets the width of the gap which would follow after the current block.

3) A block can have a boolean entry "separator" and if it is set
   to false, then the drawing of the separating line would be disabled.
2013-02-18 10:44:44 +01:00
Michael Stapelberg 1e3075e69b userguide: remove obsolete sentence about client.background (Thanks Tucos) 2013-02-14 20:47:41 +01:00
Michael Stapelberg be287876d6 userguide: be explicit about assignment processing order (Thanks Donald) 2013-02-07 15:49:35 +01:00
Michael Stapelberg 3e59a8c949 Merge branch 'master' into next 2013-01-27 20:20:53 +01:00
Michael Stapelberg 8b97a5e159 userguide: be more clear about the resize command arguments (Thanks Tucos) 2013-01-27 20:20:37 +01:00
Michael Stapelberg d6e4910c22 userguide: fix typo: s/11x/11px/ 2012-12-26 18:32:13 +01:00
Michael Stapelberg 5b8df27270 userguide: s/mailclient/mail client/g (Thanks joepd) 2012-12-20 23:54:48 +01:00
Michael Stapelberg aa69b9fc5f userguide: document new_float option (like new_window) 2012-12-02 17:57:24 +01:00
Michael Stapelberg eaf13eace2 userguide: add section with synonym "screen" for "RandR output"
While the docs describe the feature, plenty of people ask for it on IRC.
Let’s see if this makes it easier to find.
2012-11-20 17:11:54 +01:00
Quentin Glidic f0d2d84b1c libi3/font: Use "pango:" prefix to avoid confusion
Also add a user-friendly font description syntax to userguide
2012-11-07 21:23:21 +01:00
Michael Walle ae14fe9141 introduce new command to rename focused workspace
The corresponding command is 'rename workspace to <name>'. As a side-effect
this fixes the command 'rename workspace 1 to to'.

Signed-off-by: Michael Walle <michael@walle.cc>
2012-10-31 09:09:56 +01:00
Conley Moorhous 7c94e32819 docs/userguide: s/alt/Alt/ 2012-10-25 17:08:20 +02:00
Michael Stapelberg 9b87b2c8ec Implement smart popup_during_fullscreen mode
With this commit, the default behavior is to display popups while there
is a fullscreen application only if the popup belongs to that
application (as determined by the WM_TRANSIENT_FOR hint which
applications have to set properly).

fixes #663
2012-10-24 20:54:28 +02:00
Michael Stapelberg 19fef3b4b8 docs/userguide: use $mod consistently (Thanks Conley) 2012-10-16 23:02:04 +02:00
Michael Stapelberg a2daf229fb userguide: document how to "un-scratchpad" a window (Thanks knopwob) 2012-09-28 18:03:36 +02:00
Yaroslav Molochko 04c58c7325 Implement variable border widths for pixel/normal
fixes #325
2012-09-24 22:20:29 +02:00
Pauli Ervi b41ab04ecd Userguide: Added link from 7.2 to 6.6
The multiple monitors section (7) is probably the most
likely place for someone to go look for how to move
workspaces between monitors (6.6).
2012-09-22 19:05:12 +02:00
Sebastian Ullrich 236f9f45e3 Make "[move] workspace number" accept a default ws name after the ws number 2012-09-22 14:34:05 +02:00
Simon Elsbrock 28104a480c implement delayed urgency hint reset
If there is a client with an urgency hint on another workspace and
switching to this workspace would cause the urgency to be reset (by
moving the focusing to the client), delay the reset by some time. This
gives the user the chance to see it.

This commit adds the possibility to configure the urgency delay timer
duration using the 'force_display_urgency_hint' directive. Also,
documentation and a testcase was added to allow for automated checks of
the intended behavior.

fixes #482
2012-09-22 14:12:09 +02:00
chrysn e15e37f922 fixes #776
this implements both the "move container to workspace back_and_forth" command
and movements to the same workspace when auto_back_and_forth is set.

it includes documentation and test suite additions by michael.

it also simplifies the workspace_show_by_name function (making use of
workspace_get accepting NULL pointers).
2012-09-22 13:35:31 +02:00
Michael Stapelberg 9febbe119a userguide: mention the FAQ 2012-09-19 17:30:44 +02:00
Michael Stapelberg c5db01e6f8 userguide: make moving cons/workspaces to other outputs its own section
Frequent requests for this functionality on IRC made me aware that it’s
not easily findable.
2012-09-19 17:13:00 +02:00
Michael Stapelberg 4186827386 docs/userguide: document the --release flag for key bindings 2012-09-06 17:31:30 +02:00
Michael Stapelberg b15dd83b26 docs/userguide: use --no-startup-id for executing shell scripts 2012-09-06 17:31:16 +02:00
Michael Stapelberg a598544b5a userguide: point out explicitly how to use startup-notifications 2012-09-05 21:10:26 +02:00
Cian 8202f04bf2 Make the initial mention of 'split h/v' a little easier to understand. 2012-08-31 00:16:58 +02:00
Quentin Glidic 6c9bf84d4e userguide: Update Fonts section for Pango support 2012-08-13 11:39:31 +02:00
Axel Wagner 57effd65b2 Make horizontal edge-borders hidable too 2012-08-06 03:03:00 +02:00
Iakov Davydov f27735f620 create hide_edge_borders option 2012-08-05 20:26:15 +02:00
Michael Stapelberg de94f6da1a Introduce splith/splitv layouts, remove orientation
With this commit, the "default" layout is replaced by the splith and
splitv layouts. splith is equivalent to default with orientation
horizontal and splitv is equivalent to default with orientation
vertical.

The "split h" and "split v" commands continue to work as before, they
split the current container and you will end up in a split container
with layout splith (after "split h") or splitv (after "split v").

To change a splith container into a splitv container, use either "layout
splitv" or "layout toggle split". The latter command is used in the
default config as mod+l (previously "layout default"). In case you have
"layout default" in your config file, it is recommended to just replace
it by "layout toggle split", which will work as "layout default" did
before when pressing it once, but toggle between horizontal/vertical
when pressing it repeatedly.

The rationale behind this commit is that it’s cleaner to have all
parameters that influence how windows are rendered in the layout itself
rather than having a special parameter in combination with only one
layout. This enables us to change existing split containers in all cases
without breaking existing features (see ticket #464). Also, users should
feel more confident about whether they are actually splitting or just
changing an existing split container now.

As a nice side-effect, this commit brings back the "layout toggle"
feature we once had in i3 version 3 (see the userguide).

AFAIK, it is safe to use in-place restart to upgrade into versions
after this commit (switching to an older version will break your layout,
though).

Fixes #464
2012-08-04 03:13:24 +02:00
Michael Stapelberg 23c28e5208 Merge branch 'master' into next 2012-06-24 17:30:45 +02:00
Michael Stapelberg 453cc68e40 add section about implicit containers to the userguide (Thanks mloskot) 2012-06-24 17:30:18 +02:00
Michael Stapelberg d4f8450ea9 Merge branch 'master' into next 2012-06-10 21:30:36 +02:00
Michael Stapelberg 1ad6eea4a8 userguide: make the default clear for focus_follows_mouse and new_window 2012-06-10 21:30:14 +02:00
Pavel Löbl 2afecaf355 Add a new command 'move to workspace current'
Added a new command 'move to workspace current' which can be used
with criteria to move a window to the current workspace.
2012-06-03 19:42:56 +02:00
Michael Stapelberg 373b4ad74a Implement 'rename workspace <old_name> to <new_name>' 2012-04-08 20:40:00 +02:00
Michael Stapelberg 72078c704e Implement 'workspace number <number>' to switch to named workspaces 2012-04-08 19:17:46 +02:00
Michael Stapelberg 2d110c90e6 Implement resize <grow|shrink> <width|height>, use it in the default config
Fixes: #576
2012-04-08 16:00:15 +02:00
Jose Pereira 9a58c1fcaa Added option to select primary display on tray_output 2012-04-05 14:42:07 +02:00
Pavel Löbl f78f137ed0 Extends move command for floating windows 2012-03-25 11:06:49 +02:00
Michael Stapelberg 2763a23cc7 userguide: add a hint to xev (Thanks toxios) 2012-03-22 13:10:36 +01:00
D Thompson 82146fcebf Implement support for user configuration of constraints on floating window dimensions. 2012-02-16 18:31:28 +00:00
Jeremy O'Brien 53541817ef Implement urgency flag matcher
Currently it supports the following options:
"oldest": match the first window that triggered an urgent event
"latest": match the last window that triggered an urgent event
2012-02-14 22:47:10 +00:00
Michael Stapelberg 18aeb262d3 userguide: document 'fullscreen global' 2012-01-27 22:32:25 +00:00
Michael Stapelberg f9bc434e2a Implement highlighting right/bottom borders of splitted windows
Fixes #299
2012-01-22 11:22:15 +00:00
Michael Stapelberg 31b7ec29fd Re-implement bar borders (by Angelo Haller)
This re-introduces borders around the workspace buttons in i3bar.
No additional pixels will be consumed (you will not lose any space for your
windows).
2012-01-20 21:36:50 +00:00
Michael Stapelberg 814695d8bb Implement 'move workspace to output <output>'
Fixes: #541
2012-01-10 22:16:50 +00:00