Commit Graph

117 Commits

Author SHA1 Message Date
Pavel Löbl
6148136e7c i3bar: Add current binding mode indicator 2012-11-16 13:44:29 +01:00
Quentin Glidic
89ca48be20 i3bar: Honor "urgent" protocol hint by unhiding 2012-09-22 15:15:57 +02:00
Quentin Glidic
830829922b i3bar: Allow to force unhide with draw_bars 2012-09-22 15:15:57 +02:00
Quentin Glidic
8210c6be79 i3bar: Allow child to specify signals to use
We now wait for the child process to send the first line before stopping
it to use the signal which might be specified in the i3bar protocol
header
Since clients might use the same signal for both stop and cont, we also
save the stopped state of the child to avoid stopping it while hidden!
2012-09-22 15:13:21 +02:00
Quentin Glidic
1e114d7ab5 i3bar: Fully parse the JSON header 2012-09-22 15:13:21 +02:00
Quentin Glidic
34dc6d4d64 i3bar: Introduce i3bar_child struct 2012-09-22 15:13:21 +02:00
Quentin Glidic
13ecc79fcc i3bar: Rename determine_json_version to parse_json_header 2012-09-22 15:13:21 +02:00
eeemsi
b9255f51f8 Use (void) instead of () for functions without args 2012-08-23 19:34:37 +02:00
Fernando Tarlá Cardoso Lemos
6ff3f7abad libi3: Implement Pango rendering 2012-08-13 11:39:30 +02:00
Quentin Glidic
bbd1b16043 i3bar: Port to i3String 2012-08-13 11:30:05 +02:00
Quentin Glidic
50d52f8f9b i3bar/util.h: Prepare for libi3.h inclusion 2012-08-13 11:29:22 +02:00
Michael Stapelberg
e53405c216 i3bar: be less strict about the {"version":1} JSON header 2012-08-12 18:40:15 +02:00
Michael Stapelberg
17e4d7ede1 i3bar: kick tray clients after output configuration changed
This makes i3bar reflect xrandr --output foo --primary changes immediately.
2012-04-22 20:43:52 +02:00
Jose Pereira
9a58c1fcaa Added option to select primary display on tray_output 2012-04-05 14:42:07 +02:00
Michael Stapelberg
d519659ea7 i3bar: kill child processes when exit()ing (they might be stopped) (Thanks darkraven) 2012-03-26 17:36:00 +02:00
Michael Stapelberg
31b9d24c2b Implement the i3bar JSON protocol (with fallback to plain text)
If the first line of the input starts with {"version":, then the input is
considered to be JSON, otherwise it is interpreted as plain text.

Only the "full_text" and "color" parts of a block are currently understood by
i3bar.
2012-02-16 23:28:18 +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
dbp
a3081c488a Allow different modifier keys for showing hidden i3bar. 2012-01-08 12:47:41 +00:00
Fernando Tarlá Cardoso Lemos
5c2088c87e Enhance libi3 and use it in i3bar.
Abstracted draw_text and predict_text_width into libi3. Use
predict_text_width from libi3 in i3 too. This required tracking
xcb_connection in a xcb_connection_t *conn variable that libi3
expects to be available in i3bar.
2011-11-21 20:52:26 +00:00
Fernando Tarlá Cardoso Lemos
fb11cc2d14 Consolidate all convert_* functions into libi3.
Some minor fixes along the way as well. Very minor stuff, unlikely
to ever be visible to the user.
2011-11-16 20:54:30 +00:00
Michael Stapelberg
726f2a1e5a normalize file headers across **/*.{h,c} 2011-10-25 21:19:38 +01:00
Michael Stapelberg
95c2e86db9 i3bar: delete include/queue.h, use i3’s copy 2011-10-22 15:08:24 +01:00
Michael Stapelberg
15f021b4fc i3bar: Implement the output option 2011-10-21 22:17:41 +01:00
Michael Stapelberg
a3b7ba15ed i3bar: also use the position option when in 'hide' mode 2011-10-21 19:59:25 +01:00
Michael Stapelberg
8a24be9555 i3bar: implement the tray_output option 2011-10-21 19:47:56 +01:00
Michael Stapelberg
d71db710dd i3bar: use safewrappers from libi3 2011-10-21 19:30:46 +01:00
Michael Stapelberg
a5be27cb79 Make i3bar get its config from i3 via IPC
In order to not duplicate configuration options and make stuff confusing, we
dropped the commandline flags (except for socket_path and bar_id). This means
that you *have to* specify bar_id when starting i3bar. The best way is to let
i3 start i3bar, which it will do automatically for every bar {} configuration
block it finds.
2011-10-19 22:58:19 +01:00
Michael Stapelberg
06ba1c0e65 Fix compilation with xcb 0.3.6 2011-08-24 01:18:27 +02:00
Michael Stapelberg
55e503c17b i3bar: request the appropriate _NET_SYSTEM_TRAY atom for the display we are running on 2011-08-24 01:18:27 +02:00
Michael Stapelberg
893878cbcc i3bar: send XEMBED_EMBEDDED_NOTIFY after reparenting/mapping tray clients 2011-08-24 01:18:27 +02:00
Michael Stapelberg
737cd10bdf i3bar: properly handle the _XEMBED_INFO property 2011-08-24 01:18:27 +02:00
Michael Stapelberg
2046e4112f i3bar: Correctly handle removal of tray clients 2011-08-24 01:18:27 +02:00
Michael Stapelberg
025dd68f62 i3bar: quick & dirty systray implementation
Works correctly only with exactly one dock client on exactly one output. Maybe
not even then. You have been warned. Proof-of-concept code ;).
2011-08-24 01:18:26 +02:00
Axel Wagner
7cb7700b02 i3bar: Fixup indentions 2011-08-12 18:43:09 +02:00
Axel Wagner
94d55f34e1 i3bar: Fix prototypes (thx sECuRE) 2011-08-10 23:54:27 +02:00
Axel Wagner
8d09ed7bf5 Update changelog and copyright, bump version and more 2011-07-31 16:16:17 +02:00
Axel Wagner
ed5ac7f41d Implement disabling the workspace buttons („thx“ sECuRE) 2011-04-21 20:24:02 +02:00
Axel Wagner
52e70c3802 Add Color for focused ws (thx phnom) 2011-03-20 19:29:30 +01:00
Axel Wagner
aaf60c6321 Don't reallocate the backbuffer on every refresh (thx sECuRE) 2011-03-19 22:27:35 +01:00
Axel Wagner
2fd7449e29 Add support for I3_SOCKET_PATH-atom 2011-03-19 22:06:08 +01:00
Axel Wagner
64f2a7561d Implement dock-positioning 2011-02-21 15:53:32 +01:00
Fernando Tarlá Cardoso Lemos
29f153c634 Separate the lines received in a single read.
Fixes the case where multiple lines are read in a single read syscall
(it could be better optimized in the future). Also fixes a memory
corruption issue when rec == 0.
2011-01-08 14:57:00 +01:00
Axel Wagner
3daab599ca Bugfix: Recover from closed socket 2010-12-26 20:03:06 +01:00
Axel Wagner
992612c89d Some stylechanges to previous commit 2010-11-04 12:27:10 +01:00
Fernando Tarlá Cardoso Lemos
6376cf99d2 Custom colors can be set from the command line. 2010-11-04 11:51:26 +01:00
Axel Wagner
920721bb93 Use DLOG/ELOG-macros, provide --verbose-option 2010-09-17 06:49:28 +02:00
Axel Wagner
c82556f0f2 Use only xcb_query_font() 2010-09-17 03:51:41 +02:00
Axel Wagner
7fda48aa9f We don't need get_string_width anymore 2010-09-17 03:11:49 +02:00
Axel Wagner
0e4487e489 Move child_pid into child.c 2010-09-17 03:03:43 +02:00
Axel Wagner
4ec3e7a619 Define Macros MAX and MIN 2010-09-17 01:16:53 +02:00
Axel Wagner
0963a0e5ac Merge branch 'hide' into next 2010-08-26 00:03:41 +02:00
Axel Wagner
c4c918cb06 Make hide_on_modifier configurable 2010-08-26 00:02:35 +02:00
Axel Wagner
a83e7699e7 Send the child SIGSTOPs and SIGCONTs 2010-08-25 18:31:03 +02:00
Axel Wagner
14b885adf1 Only copy the double-buffer on expose-events 2010-08-22 10:24:32 +02:00
Axel Wagner
5015cdc4d0 Implement double-buffering to get rid of flickering 2010-08-21 13:24:05 +02:00
Axel Wagner
60da522e13 Add licensing information 2010-08-07 18:05:16 +02:00
Axel Wagner
cee972280d Add comments 2010-08-07 02:10:05 +02:00
Axel Wagner
1daa395a77 Added Unicode-Support 2010-08-06 03:32:05 +02:00
Axel Wagner
7d7867acce Be more strict with encapsulation
I.e. move the xcb-event-handling into xcb.c and the
child-process-communications into newly created child.c.
Also change some includes.
2010-08-05 05:09:59 +02:00
Axel Wagner
27aa9a640e Display statusline (without formats) 2010-08-04 03:34:18 +02:00
Axel Wagner
8595d3bb48 Change the indention-style 2010-08-03 21:20:11 +02:00
Axel Wagner
43c057f19a Migrate to queue.h 2010-07-30 03:11:54 +02:00
Axel Wagner
ff2ee04e0d Use font-size to correctly determine the size of the bars and buttons. 2010-07-27 02:16:49 +02:00
Axel Wagner
8a274bd279 Draw the workspace-buttons 2010-07-26 17:21:46 +02:00
Axel Wagner
72b55fdd4f Get outputs on start. Create dock window for every output. 2010-07-23 05:04:13 +02:00
Axel Wagner
fb2afacce3 Rework the IPC-Code 2010-07-23 04:43:43 +02:00
Axel Wagner
02df973564 Start tracking changes 2010-07-22 01:15:18 +02:00