kuro-qtile-theme/kuro/base.py

146 lines
3.5 KiB
Python

from libqtile import layout as libqtile_layout
class BaseConfig:
@classmethod
def get(cls, key, default):
if hasattr(cls, key):
return cls.__dict__[key]
else:
return default
class BaseTheme:
# Changing variables initialized by function
keys = None
groups = None
layouts = None
widget_defaults = None
screens = None
# 'Static' variables
dgroups_key_binder = None
dgroups_app_rules = []
main = None
follow_mouse_focus = True
bring_front_click = False
cursor_warp = False
floating_layout = libqtile_layout.Floating()
auto_fullscreen = True
focus_on_window_activation = "smart"
extensions = []
# XXX: Gasp! We're lying here. In fact, nobody really uses or cares about this
# string besides java UI toolkits; you can see several discussions on the
# mailing lists, github issues, and other WM documentation that suggest setting
# this string if your java app doesn't work correctly. We may as well just lie
# and say that we're a working one by default.
#
# We choose LG3D to maximize irony: it is a 3D non-reparenting WM written in
# java that happens to be on java's whitelist.
wmname = "LG3D"
def initialize(self):
self.widget_defaults = self.init_widget_defaults()
self.keys = self.init_keys()
self.groups = self.init_groups()
self.layouts = self.init_layouts()
self.screens = self.init_screens()
def init_keys(self):
return []
def init_groups(self):
return []
def init_layouts(self):
return []
def init_widget_defaults(self):
return {}
def init_screens(self):
return []
def init_mouse(self):
return []
# Callbacks
def callback_startup_once(self, *args, **kwargs):
pass
def callback_startup(self, *args, **kwargs):
pass
def callback_startup_complete(self, *args, **kwargs):
pass
def callback_setgroup(self, *args, **kwargs):
pass
def callback_addgroup(self, *args, **kwargs):
pass
def callback_delgroup(self, *args, **kwargs):
pass
def callback_changegroup(self, *args, **kwargs):
pass
def callback_focus_change(self, *args, **kwargs):
pass
def callback_float_change(self, *args, **kwargs):
pass
def callback_group_window_add(self, *args, **kwargs):
pass
def callback_window_name_change(self, *args, **kwargs):
pass
def callback_client_new(self, *args, **kwargs):
pass
def callback_client_managed(self, *args, **kwargs):
pass
def callback_client_killed(self, *args, **kwargs):
pass
def callback_client_state_changed(self, *args, **kwargs):
pass
def callback_client_type_changed(self, *args, **kwargs):
pass
def callback_client_focus(self, *args, **kwargs):
pass
def callback_client_mouse_enter(self, *args, **kwargs):
pass
def callback_client_name_updated(self, *args, **kwargs):
pass
def callback_client_urgent_hint_changed(self, *args, **kwargs):
pass
def callback_layout_change(self, *args, **kwargs):
pass
def callback_net_wm_icon_change(self, *args, **kwargs):
pass
def callback_selection_notify(self, *args, **kwargs):
pass
def callback_selection_change(self, *args, **kwargs):
pass
def callback_screen_change(self, *args, **kwargs):
pass
def callback_current_screen_change(self, *args, **kwargs):
pass