Commit Graph

4789 Commits

Author SHA1 Message Date
Michael Stapelberg
ce7d256d05 Revert "Check if output is disabled in handle_output()"
This reverts commit e71c304444.

It turns out that several users have workflows in which they turn off
their monitors without using e.g. `xrandr --output DP-1 --off`. The
result is that the monitors are disconnected, but not disabled.

With commit e71c304444, i3 started to see
these two states as one and the same state, but that causes more harm
than it does good. For example, for some users with only one monitor, i3
would just exit when these users turned off their monitor.

related to #1858, #1839

fixes #1845
2015-09-08 09:13:31 +02:00
shdown
f8d8acd93c i3-msg: strdup getenv() result before freeing
Fixes #1852.
2015-09-08 09:13:26 +02:00
Michael Stapelberg
a4ffb23d20 Merge branch 'release-4.10.3' 2015-07-30 22:27:15 +02:00
Michael Stapelberg
3cc377166f release i3 4.10.3 2015-07-30 22:26:58 +02:00
shdown
4446c4d890 i3bar: fix freeing static strings
name and color fields of blocks are freed in clear_statusline, so they
need to be strdup'ed.
2015-07-30 21:42:44 +02:00
Theo Buehler
c0f685e7bc mkdirp: do not throw an error if directory exists
If I restart i3 4.10.2 twice, e.g. with

$ i3-msg restart; sleep 3; i3-msg restart

the second time I get the following two errors:

05/22/15 10:46:03 - ERROR: mkdir(/tmp/i3-theo.toAK7N) failed: File exists
05/22/15 10:46:03 - ERROR: Could not create "/tmp/i3-theo.toAK7N" for storing the restart layout, layout will be lost.

The first one is from mkdirp() in src/ipc.c and the second one is from
store_restart_layout() in src/util.c.

Notice that I do _not_ get the ``open()'' or ``Could not write restart layout to
...'' error messages, so the layout writing code after line 260 in
store_restart_layout() succeeded and the layout isn't actually lost.  Thus,
these error messages are a bit misleading, especially the second one (which is
triggered by the failure of mkdirp()).

POSIX says about `mkdir -p':

``Each dir operand that names an existing directory shall be ignored without
error.''

Therefore, I suggest the following simple patch that makes mkdirp() succeed if
the named file exists and actually is a directory.  This silences the second
error as well.
2015-07-30 21:41:24 +02:00
Deiz
fbcb227537 Move mkdirp into libi3 2015-07-30 21:41:20 +02:00
Tony Crisci
7c2842eae4 Detect base 16 in cmd criteria
Try to detect base 16 numbers given to `con_id` and `id` for command criteria
by setting the base of strtol to 0. This should also detect octal.

This is necessary because mouse bindings now may be serialized as hex as of
5c32de4.
2015-07-30 21:38:24 +02:00
Michael Stapelberg
ee66a8bcde userguide: quoted strings need to be used, escaping isn’t possible
fixes #1678
2015-07-30 21:37:04 +02:00
Deiz
d03b96b369 Initialize workspace rect to the output's upon creation
The comment immediately following implied that this was the intended
behaviour. Not doing so means that compound commands that both move a
window to a new workspace as well as do something that depends on the
workspace's geometry (e.g. 'move position center' or 'floating enable'
on a tiled window) would use the workspace's calloc'd 0x0+0x0 geometry.
2015-07-30 21:36:04 +02:00
Tony Crisci
e71c304444 Check if output is disabled in handle_output()
Check if the `connection` of the randr output is
XCB_RANDR_CONNECTION_DISONNECTED and disable the output if it is.

This fixes an issue where the output would not be disabled if the output was
physically unplugged from the machine.
2015-07-30 21:35:42 +02:00
Tony Crisci
a0268a38d3 Ignore InputHint when not in WM_HINTS
When InputHint is not in WM_HINTS (i.e., the flag is not set), treat the window
as if the InputHint was set (the default behavior). This means that i3 will
focus the window when it becomes managed.

fixes #1676
2015-07-30 21:35:12 +02:00
Tony Crisci
c1b6c94621 Bugfix: serialize con_id with %p in run_binding()
%p is equivalent to either %x or %lx, depending on the pointer size of the
platform. Before this commit, we always used %d, which has the same behavior
on Linux, but is not automatically expanded to %ld on e.g. FreeBSD.

fixes #1661
2015-07-30 21:34:43 +02:00
Michael Stapelberg
c0dbc5dd77 Merge branch 'release-4.10.2' 2015-04-16 09:03:28 +02:00
Michael Stapelberg
9557a0a5b2 release i3 4.10.2 2015-04-16 09:02:58 +02:00
Michael Stapelberg
eb04a64067 Bugfix: Remove windows from the save set when unmapping.
fixes #1617
2015-04-06 15:43:52 +02:00
Ingo Bürk
40b9048102 Use a reasonable default sep_block_width if a separator_symbol is given 2015-04-06 15:43:47 +02:00
Michael Hofmann
483a51a2f2 Get workspace name when renaming current workspace.
- fixes #1607
2015-04-06 15:43:36 +02:00
Michael Hofmann
29e8167cda Cope with non-null-terminated x class properties.
- fixes #1605
2015-04-06 15:43:20 +02:00
Michael Stapelberg
8629c2e208 Merge branch 'next' into master 2015-03-29 19:07:24 +02:00
Michael Stapelberg
9cf0150fa1 Merge branch 'release-4.10.1' 2015-03-29 19:07:24 +02:00
Michael Stapelberg
2dea50d469 release i3 4.10.1 2015-03-29 19:07:03 +02:00
Michael Stapelberg
aef495faba prepare release.sh for 4.10.1 2015-03-29 18:53:55 +02:00
Michael Stapelberg
9515cb0713 release from “next” 2015-03-29 18:53:55 +02:00
Michael Stapelberg
d5f329694d Merge pull request #1592 from Deiz/xdg-wizard-font
Make wizard window size and click coordinates dependent on font
2015-03-29 18:53:31 +02:00
Michael Stapelberg
8f69ddcb4d Update debian/changelog 2015-03-29 18:08:59 +02:00
Michael Stapelberg
6d94231f74 Merge branch 'master' into next 2015-03-29 17:46:37 +02:00
Michael Stapelberg
33069ff1d5 Merge branch 'release-4.10' 2015-03-29 17:46:37 +02:00
Michael Stapelberg
71310adaea release i3 4.10 2015-03-29 17:46:16 +02:00
Michael Stapelberg
b8057392c4 update release.sh for the next version 2015-03-29 17:45:46 +02:00
Michael Stapelberg
909eefb868 travis: remove FORTIFY_SOURCE, causes trouble with clang 2015-03-29 17:20:11 +02:00
Michael Stapelberg
6b04f28b48 fix remaining warnings 2015-03-29 17:12:20 +02:00
Michael Stapelberg
ba89fe0a93 travis: enable more warnings, add -Werror
This will ensure that our code stays free of warnings, at least for the
warnings that we have enabled. (Using _FORTIFY_SOURCE > 0 leads to more
warnings, some of them are harder to address.)
2015-03-29 17:11:21 +02:00
Michael Stapelberg
93adcf8bdc Merge pull request #1575 from hwangcc23/next
Fix warnings
2015-03-29 16:53:14 +02:00
hwangcc
42515308e7 Add a safe wrapper for write and fix some warnings
1. Add a function writeall and make swrite wrap that function. Use either writeall or swrite, depending on whether we want to exit on errors or not.
2. Fix warnings when compiling with a higher optimisation level.
(CFLAGS ?= -pipe -O3 -march=native -mtune=native -freorder-blocks-and-partition)

Signed-off-by: hwangcc <hwangcc@csie.nctu.edu.tw>
2015-03-29 10:22:34 +08:00
Deiz
0aa18a602d Make wizard window size and click coordinates dependent on font
This guarantees the whole visible area of the pixmap is reinitialized,
and ensures that the click bounding boxes are properly aligned with
the displayed text.
2015-03-28 15:35:19 -04:00
Michael Stapelberg
0391ac2e69 Merge pull request #1596 from Deiz/wizard-add-up-down
Switch the wizard's modifier choice when up or down are pressed
2015-03-28 18:16:27 +01:00
Deiz
95fa121c56 Switch the wizard's modifier choice when up or down are pressed 2015-03-28 13:00:19 -04:00
Michael Stapelberg
af71d3a2f1 Merge pull request #1590 from acrisci/bug/i3bar-no-markup-default
i3bar: don't parse markup on statusline by default
2015-03-28 10:08:41 +01:00
Tony Crisci
beaf904943 i3bar: don't parse markup on statusline by default
fixes #1565
2015-03-27 19:00:32 -04:00
Michael Stapelberg
856e1f9772 Merge pull request #1591 from Airblader/feature-child-cleanup
Return in child parsing as soon as the match was made.
2015-03-27 09:51:00 +01:00
Michael Stapelberg
fb0573e183 Merge pull request #1582 from shdown/allow-escaping-backslashes
Allow escaping backslashes
2015-03-27 09:40:09 +01:00
Michael Stapelberg
00e86c4de4 Merge pull request #1580 from Airblader/feature-nop
Allow nop command without argument
2015-03-27 09:39:28 +01:00
Ingo Bürk
e0332b6f07 Allow nop command without argument
fixes #1318
2015-03-27 09:29:16 +01:00
Ingo Bürk
6adc7e8bfb Return in child parsing as soon as the match was made.
As soon as we found the current key for which the value should be handled we can return
from the function to save some string comparisons.
2015-03-27 09:26:29 +01:00
Michael Stapelberg
773f9f52e9 Merge pull request #1454 from acrisci/feature/i3bar-update-strut-partial-reload
reconfigure dock clients on strut partial change
2015-03-27 09:02:05 +01:00
shdown
4e871c75f9 Add tests for backslash unescaping 2015-03-26 17:18:17 +03:00
Michael Stapelberg
ad31b13cb6 update default fonts for i3-{input,config-wizard,nagbar}
We’ve done this a while ago in i3.config itself, but the tools in
question aren’t hooked up to that setting, so we need to do it here as
well.
2015-03-26 10:03:30 +01:00
Michael Stapelberg
7d49f55c55 make i3-input work properly on hi-dpi displays 2015-03-26 10:03:14 +01:00
Michael Stapelberg
414290df56 make i3-config-wizard work properly on hi-dpi displays 2015-03-26 10:00:13 +01:00