Traceback (most recent call last): File '/usr/lib/python3/dist-packages/gi/overrides/GLib.py', line 754, (_=, cond=, *data=()) # backwards compatibility: Allow calling with Python file func_fdtransform = lambda _, cond, *data: callback(channel, cond, *data) real_channel = GLib.IOChannel.unix_new(channel.fileno()) Variables (B=Builtin, G=Global, L=Local): - func_fdtransform (N): None - _ (L): - cond (L): - data (L): None - callback (L): > - channel (L): File '/usr/local/lib/python3.6/dist-packages/quicktile/keybinder.py', line 147, cb_xevent(self=, src=, cond=, handle=) if xevent.type == X.KeyPress: self.handle_keypress(xevent) Variables (B=Builtin, G=Global, L=Local): - self.handle_keypress (L): > - xevent (L): (type = 2, detail = 46, sequence_number = 110, time = 39988285, root = < 0x000001de>, window = < 0x000001de>, child = < 0x00e19cf9>, root_x = 1143, root_y = 644, event_x = 1143, event_y = 644, state = 12, same_screen = 1) File '/usr/local/lib/python3.6/dist-packages/quicktile/keybinder.py', line 169, handle_keypress(self=, xevent=(type = 2,...1143, event_y = 644, state = 12, same_screen = 1)) # Call the associated callback self._keys[keysig]() Variables (B=Builtin, G=Global, L=Local): - self._keys (L): {(19, 0): .call at 0x7f15f7878b70>, (19, 12): .call at 0x7f15f7878b70>, (19, 14): .call at 0x7f15f7878b70>, (19, 28): .call at 0x7f15f7878b70>, (19, 30): .call at 0x7f15f7878b70>, (29, 0): .call at 0x7f15f7878d08>, (29, 12): .call at 0x7f15f7878d08>, (29, 14): .call at 0x7f15f7878d08>, (29, 28): .call at 0x7f15f7878d08>, (29, 30): .call at 0x7f15f7878d08>, (30, 0): .call at 0x7f15f7878bf8>, (30, 12): .call at 0x7f15f7878bf8>, (30, 14): .call at 0x7f15f7878bf8>, (30, 28): .call at 0x7f15f7878bf8>, (30, 30): .call at 0x7f15f7878bf8>, (31, 0): .call at 0x7f15f7878c80>, (31, 12): .call at 0x7f15f7878c80>, (31, 14): .call at 0x7f15f7878c80>, (31, 28): .call at 0x7f15f7878c80>, (31, 30): .call at 0x7f15f7878c80>, (32, 0): .call at 0x7f15f7878d90>, (32, 12): .call at 0x7f15f7878d90>, (32, 14): .call at 0x7f15f7878d90>, (32, 28): .call at 0x7f15f7878d90>, (32, 30): .call at 0x7f15f7878d90>, (43, 0): .call at 0x7f15f78789d8>, (43, 12): .call at 0x7f15f78789d8>, (43, 14): .call at 0x7f15f78789d8>, (43, 28): .call at 0x7f15f78789d8>, (43, 30): .call at 0x7f15f78789d8>, (44, 0): .call at 0x7f15f7878950>, (44, 12): .call at 0x7f15f7878950>, (44, 14): .call at 0x7f15f7878950>, (44, 28): .call at 0x7f15f7878950>, (44, 30): .call at 0x7f15f7878950>, (45, 0): .call at 0x7f15f7878ae8>, (45, 12): .call at 0x7f15f7878ae8>, (45, 14): .call at 0x7f15f7878ae8>, (45, 28): .call at 0x7f15f7878ae8>, (45, 30): .call at 0x7f15f7878ae8>, (46, 0): .call at 0x7f15f7878a60>, (46, 12): .call at 0x7f15f7878a60>, (46, 14): .call at 0x7f15f7878a60>, (46, 28): .call at 0x7f15f7878a60>, (46, 30): .call at 0x7f15f7878a60>, (54, 0): .call at 0x7f15f7878840>, (54, 12): .call at 0x7f15f7878840>, (54, 14): .call at 0x7f15f7878840>, (54, 28): .call at 0x7f15f7878840>, (54, 30): .call at 0x7f15f7878840>, (57, 0): .call at 0x7f15f7878e18>, (57, 12): .call at 0x7f15f7878e18>, (57, 14): .call at 0x7f15f7878e18>, (57, 28): .call at 0x7f15f7878e18>, (57, 30): .call at 0x7f15f7878e18>, (58, 0): .call at 0x7f15f78788c8>, (58, 12): .call at 0x7f15f78788c8>, (58, 14): .call at 0x7f15f78788c8>, (58, 28): .call at 0x7f15f78788c8>, (58, 30): .call at 0x7f15f78788c8>, (59, 0): .call at 0x7f15f7878ea0>, (59, 12): .call at 0x7f15f7878ea0>, (59, 14): .call at 0x7f15f7878ea0>, (59, 28): .call at 0x7f15f7878ea0>, (59, 30): .call at 0x7f15f7878ea0>, (60, 0): .call at 0x7f15f7878f28>, (60, 12): .call at 0x7f15f7878f28>, (60, 14): .call at 0x7f15f7878f28>, (60, 28): .call at 0x7f15f7878f28>, (60, 30): .call at 0x7f15f7878f28>} - keysig (L): (46, 12) File '/usr/local/lib/python3.6/dist-packages/quicktile/keybinder.py', line 236, call(func='right') `WindowManager` instance""" commands.call(func, winman) Variables (B=Builtin, G=Global, L=Local): - commands.call (L): > - func (L): 'right' - winman (L): File '/usr/local/lib/python3.6/dist-packages/quicktile/commands.py', line 188, call(self=, command='right', winman=, *args=(), **kwargs={}) command, args, kwargs) cmd(winman, *args, **kwargs) Variables (B=Builtin, G=Global, L=Local): - cmd (L): - winman (L): - args (L): None - kwargs (L): None File '/usr/local/lib/python3.6/dist-packages/quicktile/commands.py', line 145, wrapper(winman=, window=, *args=((0.5, 0.0, 0.5, 1), (0.667, 0.0, 0.333, 1), (0.333, 0.0, 0.667, 1)), **kwargs={}) func(winman, window, state, *args, **kwargs) Variables (B=Builtin, G=Global, L=Local): - func (L): - winman (L): - window (L): - state (L): {'cmd_idx': 4, 'cmd_name': 'right', 'config': , 'monitor_geom': , 'monitor_id': 1, 'usable_rect': Rectangle(x=0, y=25, width=2560, height=1415)} - args (L): ((0.5, 0.0, 0.5, 1), (0.667, 0.0, 0.333, 1), (0.333, 0.0, 0.667, 1)) - kwargs (L): None File '/usr/local/lib/python3.6/dist-packages/quicktile/commands.py', line 257, cycle_dimensions(winman=, win=, state={'cmd_idx': 4, 'cmd_name': 'right', 'config': , 'monitor_geom': , 'monitor_id': 1, 'usable_rect': Rectangle(x=0, y=25, width=2560, height=1415)}, *dimensions=((0.5, 0.0, 0.5, 1), (0.667, 0.0, 0.333, 1), (0.333, 0.0, 0.667, 1))) winman.set_property(win, '_QUICKTILE_CYCLE_POS', json.dumps((state.get('cmd_idx', 0), pos))) result = Rectangle(*dims[pos]).from_relative(clip_box) Variables (B=Builtin, G=Global, L=Local): - json.dumps (G): - state.get (L): - pos (L): None File '/usr/local/lib/python3.6/dist-packages/quicktile/wm.py', line 259, set_property(self=, win=< 0x05c0004a>, name=616, value='[4, 0]', prop_type=31, format_size=8) win, name = self._property_prep(win, name) win.change_property(name, prop_type, format_size, value) # TODO: Set an `onerror` handler and at least log an error to console Variables (B=Builtin, G=Global, L=Local): - win.change_property (L): 0x05c0004a>> - name (L): 616 - prop_type (L): 31 - format_size (L): 8 - value (L): '[4, 0]' File '/usr/local/lib/python3.6/dist-packages/Xlib/xobject/drawable.py', line 436, change_property(self=< 0x05c0004a>, property=616, property_type=31, format=8, data='[4, 0]', mode=0, onerror=None) type = property_type, data = (format, data)) Variables (B=Builtin, G=Global, L=Local): - data (L): '[4, 0]' - format (L): 8 File '/usr/local/lib/python3.6/dist-packages/Xlib/protocol/rq.py', line 1347, __init__(self=, display=, onerror=None, *args=(), **keys={'data': (8, '[4, 0]'), 'mode': 0, 'property': 616, 'type': 31, 'window': 96469066}) self._errorhandler = onerror self._binary = self._request.to_binary(*args, **keys) self._serial = None File '/usr/local/lib/python3.6/dist-packages/Xlib/protocol/rq.py', line 1021, to_binary(self=, *varargs=(), **keys={'data': (8, '[4, 0]'), 'mode': 0, 'property': 616, 'type': 31, 'window': 96469066}) else: v, l, fm = f.pack_value(field_args[f.name]) var_vals[f.name] = v Variables (B=Builtin, G=Global, L=Local): - v (N): None - l (N): None - fm (N): None - f.pack_value (L): > - field_args (L): {'data': (8, '[4, 0]'), 'mode': 0, 'property': 616, 'type': 31, 'window': 96469066} - f.name (L): 'data' File '/usr/local/lib/python3.6/dist-packages/Xlib/protocol/rq.py', line 696, pack_value(self=, value=(8, '[4, 0]')) size = fmt // 8 a = array(array_unsigned_codes[size], val) data = encode_array(a) Variables (B=Builtin, G=Global, L=Local): - a (N): None - array (G): - array_unsigned_codes (G): {1: 'B', 2: 'H', 4: 'I', 8: 'L'} - size (L): 1 - val (L): '[4, 0]' TypeError: cannot use a str to initialize an array with typecode 'B'