726f2a1e5a
normalize file headers across **/*.{h,c}
2011-10-25 21:19:38 +01:00
8660ae4e12
bar config: fall back to the i3 font (Thanks pl)
2011-10-25 20:50:57 +01:00
d490bae8a2
Close empty workspaces if they're not visible.
...
Previously, we'd only close an empty workspace when we moved away
from it. Now we also close it when the last client exits, as long
as that workspace is not visible anymore.
2011-10-24 00:12:14 +01:00
a58018cf66
Add libi3/load_font, use it everywhere
...
…except for i3bar, which needs slightly more information about the font
2011-10-23 22:37:11 +01:00
6d01d37b03
remove unused cached_fonts TAILQ
2011-10-23 22:03:20 +01:00
8da6049ca9
Actually make load_font only fallback if 'fallback' is true
2011-10-23 22:02:11 +01:00
3e7f941b83
Fix comment in run_assignments (Thanks xeen)
2011-10-23 21:45:12 +01:00
91134f75c0
Move get_mod_mask to libi3, use it in i3 and i3-config-wizard
...
Also, the API changed a bit. There are two functions now, both assume you
already got the keysyms (which is the case for i3 and i3-config-wizard),
one gets the modifier mapping for you (aio_get_mod_mask_for) while the other
assumes you also got that. No roundtrips are required for the latter.
2011-10-23 21:26:15 +01:00
a512b99a51
Introduce --get_socketpath and --force_xinerama as synonyms for --get-socketpath and --force-xinerama
2011-10-23 19:41:40 +01:00
6dc6ba11fc
Eliminate xcb_change_gc_single everywhere with C99
2011-10-23 18:06:25 +01:00
9eda7fb6fb
move strndup to libi3
2011-10-23 18:02:01 +01:00
ada4857ad2
Fix colors in i3bar (Thanks julien)
...
i3bar previously used get_colorpixel on strings without the leading # (ff0000
instead of #ff0000). Since it uses libi3’s get_colorpixel now we needed to
update a few places.
2011-10-23 17:48:44 +01:00
cb9bbcfccf
Move get_colorpixel to libi3, use it everywhere else
2011-10-23 17:38:21 +01:00
31cb3dda8d
cfgparse: use different literal strings for ambiguous keywords in bar context
2011-10-23 16:41:23 +01:00
9d15a00ba8
introduce sasprintf() in libi3, use it everywhere
2011-10-23 13:16:56 +01:00
10d3281b0f
remove/shorten a lot of debugging messages
...
Some of them are useless nowadays, others very unlikely to be a problem.
Those which might still be interesting somewhen in the future are just
commented out.
2011-10-23 00:15:13 +01:00
42d355f2b7
normalize modelines/headers across src/*.c
2011-10-22 23:40:02 +01:00
753d67fb64
migration from exec i3bar to bar config: i3 substitutes exec with a bar block, shows nagbar
2011-10-22 16:33:00 +01:00
9b84348201
Bugfix: fix off by one when copying the hex colorcode (Thanks fernandotcl)
2011-10-21 23:22:48 +01:00
77961ad9c8
cfgparse: Don’t use asprintf when parsing hex colors
2011-10-21 23:09:57 +01:00
3baeeb1834
Bugfix: properly transition in and out of the COLOR_COND state (Thanks fernandotcl)
2011-10-21 22:58:53 +01:00
caee0a0fda
cfgparse: eliminate absolute states, use yy_push_state/yy_pop_state
...
This fixes a problem with workspace assignments.
I tested i3 -C with three user configs (Thanks SardemFF7, julien, xeen)
and did not notice any problems.
2011-10-20 22:38:46 +01:00
12d866e4f6
Don’t start i3-nagbar when using -C to validate the config
2011-10-20 22:25:59 +01:00
230b238870
Actually start i3bar instances for each configured bar
2011-10-20 19:03:40 +01:00
ad0f13a0a9
Clean bars before reloading the config (+test)
...
While the configuration gets updated in i3, the i3bar processes will not pick
up these changes. We have to think about a good way to do that.
2011-10-20 18:47:09 +01:00
15bface10d
Create different IDs for each bar (+test)
2011-10-19 19:57:39 +01:00
063b124e35
Implement parsing bar {} config blocks
2011-10-18 22:16:04 +01:00
149b05aacf
ipc: when requesting the bar config without a payload, return an array of available bar IDs
2011-10-18 22:12:46 +01:00
e3cbdea1fc
Bugfix: Correctly close the colors map in the IPC bar config reply
2011-10-18 22:11:44 +01:00
c2c6ca25d5
Make the barconfig list a TAILQ
2011-10-18 22:11:27 +01:00
24ede1c834
add an IPC request to get the bar configuration (by ID)
2011-10-18 19:05:49 +01:00
4898f78e5e
add a data structure for 'bar' configuration
2011-10-18 19:05:49 +01:00
9d67ae2202
Focus new window only if it is on a visible workspace on the current focused output.
2011-10-18 18:56:39 +01:00
a506e59b3c
Bugfix: Fix segfault when starting i3 (Thanks pnutzh4x0r)
2011-10-18 18:47:07 +01:00
f09d9a4c37
log: use localtime_r instead of localtime
...
localtime_r does not have the side-effect of behaving like it called tzset(),
in particular it will save one stat(/etc/localtime) syscall. This is not a big
deal, but it makes the strace output cleaner and thus more useful :).
2011-10-18 18:32:47 +01:00
178be03fa6
Implement 'workspace back_and_forth' (Patch by Michael Walle)
2011-10-17 23:17:56 +01:00
914ca6cfe7
Bugfix: Use _exit in forking to avoid calling the libev cleanup handler (Thanks xeen)
2011-10-15 16:56:47 +01:00
32b97745ec
Don’t call ev_destroy_loop with ev < 4 in atexit (Thanks xeen)
2011-10-15 16:56:32 +01:00
5f52c78aa0
Change the root window cursor to 'watch' during startups
2011-10-10 15:54:18 +01:00
2ad4fbb34a
startup: delete the startup sequence upon completion, make the timeout complete it
2011-10-10 15:54:18 +01:00
997a539a8a
Implement timeouts for startup notifications
2011-10-10 15:54:17 +01:00
6ac098a45e
support _NET_STARTUP_ID on the client leader window
...
(necessary for GIMP, geeqie, …)
2011-10-10 15:54:17 +01:00
4204b8e2b0
Get the _NET_STARTUP_ID in manage_window, get the corresponding workspace
2011-10-10 15:54:17 +01:00
499d89bdb0
Keep track of startup notifications in a TAILQ, save workspace
2011-10-10 15:54:17 +01:00
f4f4d782bb
implement a startup monitor, move code to src/startup.c
2011-10-10 15:54:17 +01:00
c812cdcf9a
make handle_client_message not return anything
...
The function returned an int for historical reasons.
2011-10-10 15:54:17 +01:00
d1d4f39f9e
save the last timestamp received by X11 in last_timestamp
...
We need it for startup notifications (to generate a unique id)
Conflicts:
include/i3.h
src/main.c
2011-10-10 15:54:17 +01:00
b9db72dc8a
Implement support for startup notifications
...
This only sets up startup notifications for the 'exec' commands and directives.
Monitoring startups follows later.
2011-10-10 15:54:17 +01:00
2a29d9c2c1
Make conn_screen available outside of main()
...
Will be used in other parts of the code for startup notification
2011-10-10 15:54:17 +01:00
0f74f9b921
remove left-over type definition for mode_info
2011-10-09 18:25:21 +01:00