Michael Stapelberg
7f9b65f6a7
i3bar: fix event handling
...
i3bar would only handle one event at a time instead of all pending events.
2011-11-09 23:23:21 +00:00
Michael Stapelberg
e85a352fcf
i3bar: correctly handle unmapped tray clients, reconfigure tray icons after mapping/unmapping (Thanks IsoLnCHiP)
...
Fixes #550
2011-11-09 23:22:44 +00:00
Michael Stapelberg
f0cc13f356
i3bar: fix indention in src/child.c
2011-11-07 21:34:50 +00:00
Fernando Tarlá Cardoso Lemos
d5613905c8
Plug minor leaks in string conversion routines.
2011-11-07 19:57:11 +00:00
Michael Stapelberg
ddf261432a
i3bar: change default color for active workspace buttons to make them visible
...
Previously, you could not figure out which workspace is displayed on a screen
which is not focused.
2011-11-07 19:52:21 +00:00
Michael Stapelberg
a977b2d96e
i3bar: fix -h output (Thanks IsoLnCHiP)
2011-10-31 20:44:55 +00:00
Michael Stapelberg
726f2a1e5a
normalize file headers across **/*.{h,c}
2011-10-25 21:19:38 +01:00
Michael Stapelberg
35bd2d27c0
i3bar: put tray icons in the save-set (prevents them from crashing when i3bar exits/crashes)
2011-10-24 20:11:32 +01:00
Michael Stapelberg
9eda7fb6fb
move strndup to libi3
2011-10-23 18:02:01 +01:00
Michael Stapelberg
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
Michael Stapelberg
cb9bbcfccf
Move get_colorpixel to libi3, use it everywhere else
2011-10-23 17:38:21 +01:00
Michael Stapelberg
4f57d49318
add libi3/ipc_connect, use it in i3-config-wizard, i3-input, i3bar
2011-10-23 17:18:14 +01:00
Michael Stapelberg
499d4c11e0
i3bar: make len an integer for %.*s in sasprintf
2011-10-23 16:39:39 +01:00
Michael Stapelberg
96f67a53a5
i3bar: check exit code of pipe()
2011-10-23 14:31:43 +01:00
Michael Stapelberg
9d15a00ba8
introduce sasprintf() in libi3, use it everywhere
2011-10-23 13:16:56 +01:00
Michael Stapelberg
bc2c63d4ed
i3bar: change default font to the i3 default one
2011-10-22 15:00:31 +01:00
Michael Stapelberg
3ee8bd502d
i3bar: change default colors to fit the i3 look & feel
...
The new default looks like this (like in docs/userguide):
colors {
background #000000
statusline #ffffff
focused_workspace #ffffff #285577
active_workspace #888888 #222222
inactive_workspace #888888 #222222
urgent_workspace #ffffff #900000
}
If you want to go back to the previous colors, use:
colors {
background #000000
statusline #ffffff
focused_workspace #ffffff #480000
active_workspace #ffffff #480000
inactive_workspace #ffffff #240000
urgent_workspace #ffffff #002400
}
2011-10-22 12:34:06 +01:00
Michael Stapelberg
014c3e4b95
i3bar: Bugfix: Don’t crash when tray_output is not set (Thanks fernandotcl)
2011-10-21 23:15:15 +01:00
Michael Stapelberg
15f021b4fc
i3bar: Implement the output option
2011-10-21 22:17:41 +01:00
Michael Stapelberg
6de1590e59
i3bar: spit out an error on wrong bar id
2011-10-21 20:04:55 +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
cf67966fa0
i3bar: document -b in --help (Thanks mxf)
2011-10-21 18:59:59 +01:00
Michael Stapelberg
c5caa9682c
i3bar: don’t reconnect, but exit(0) on EOF
...
Since i3 starts i3bar instances as necessary, EOF is considered a signal to
either shutdown because i3 exited or because it is restarting.
2011-10-20 19:08:41 +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
fb4b012013
i3bar: Bugfix: Add tray icon padding when calculating text position (Thanks Bacardi55)
2011-10-10 15:09:39 +01:00
Michael Stapelberg
c5e9527abc
i3bar: include xcb_compat.h for older XCB versions (Thanks motif)
2011-10-10 11:37:56 +01:00
Michael Stapelberg
a70e2057c8
i3bar: set WM_CLASS and WM_NAME
2011-10-09 14:45:23 +01:00
Michael Stapelberg
64a7017c32
i3bar: add modelines to all files
2011-10-09 14:28:20 +01:00
Michael Stapelberg
e77f08d1fc
i3bar: handle ConfigureRequests for tray children (fixes gtk3 size issue)
...
Thanks to yvesf for this simple python test script:
from gi.repository import Gtk as gtk
def cb(*a):
print a
def si_popup(*a):
print a
status_icon = gtk.StatusIcon()
status_icon.set_from_stock(gtk.STOCK_OPEN)
status_icon.connect("activate", cb)
gtk.main()
2011-10-09 13:50:46 +01:00
Michael Stapelberg
b561b911ee
i3bar: add modeline to src/xcb.c
2011-10-09 13:50:39 +01:00
Michael Stapelberg
0c51b57b99
Merge branch 'master' into next
2011-09-19 19:20:18 +01:00
Michael Stapelberg
7064cfc2a0
i3bar: Bugfix: Check if the X11 connection is unavailable
...
This fixes the condition where the i3 socket for some reason did not produce an
error, but the X server exited (earlier than i3?) and the left-over i3bar
process would consume 100% CPU.
How to reproduce the problem:
1) Start ./testcases/Xdummy :8
2) Start DISPLAY=:8 i3bar -s <socket path to i3 on :0>
3) Kill the Xdummy
2011-09-19 19:17:25 +01:00
Michael Stapelberg
c7ac1f9077
Merge branch 'master' into next
2011-08-25 18:51:02 +02:00
Michael Stapelberg
39cff5c31f
i3bar: Bugfix: When receiving EOF, immediately redraw and discard input
2011-08-25 18:46:08 +02:00
Michael Stapelberg
9c587a767c
Bugfix: set statusline = NULL, print error messages about EOF/SIGCHLD to stderr (Thanks cls)
2011-08-25 17:10:45 +02:00
Michael Stapelberg
eacbf986a0
Merge branch 'master' into next
2011-08-24 18:49:40 +02:00
Michael Stapelberg
7af39906da
i3bar: Bugfix: Correctly allocate pixmap for statuslines which are longer than your screen
...
In case of a 1024 px screen and a 1128 px status line, the status line was not
only cut off (it has to be, obviously), but the right part showed some black
pixels.
2011-08-24 18:48:29 +02:00
Michael Stapelberg
27ade541a9
Initialize output (fixes compiler warning)
2011-08-24 01:34:56 +02:00
Michael Stapelberg
06ba1c0e65
Fix compilation with xcb 0.3.6
2011-08-24 01:18:27 +02:00
Michael Stapelberg
1c2c22d117
i3bar: properly end the XEMBED protocol by reparenting the dock clients to root, flush connection before disconnecting
2011-08-24 01:18:27 +02:00
Michael Stapelberg
bd2a3363c0
i3bar: tray: little cleanups, more comments
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
7df43989c9
i3bar: correctly handle multiple tray clients
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
6efa7a754d
i3bar: trigger an update after docking a new client
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