mirror of
https://github.com/purhan/dotfiles.git
synced 2026-01-05 14:45:57 +08:00
67 lines
2.1 KiB
Lua
67 lines
2.1 KiB
Lua
local gears = require('gears')
|
|
local awful = require('awful')
|
|
require('awful.autofocus')
|
|
local beautiful = require('beautiful')
|
|
|
|
-- Theme
|
|
beautiful.init(require('theme'))
|
|
|
|
-- Layout
|
|
require('layout')
|
|
|
|
-- Init all modules
|
|
require('module.notifications')
|
|
require('module.auto-start')
|
|
require('module.decorate-client')
|
|
require('module.quake-terminal')
|
|
-- Backdrop causes bugs on some gtk3 applications
|
|
-- require('module.backdrop')
|
|
require('module.exit-screen')
|
|
require('module.dashboard')
|
|
|
|
-- Setup all configurations
|
|
require('configuration.client')
|
|
require('configuration.tags')
|
|
_G.root.keys(require('configuration.keys.global'))
|
|
|
|
-- Create a wibox for each screen and add it
|
|
awful.screen.connect_for_each_screen(function(s)
|
|
-- If wallpaper is a function, call it with the screen
|
|
if beautiful.wallpaper then
|
|
if type(beautiful.wallpaper) == "string" then
|
|
if beautiful.wallpaper:sub(1, #"#") == "#" then
|
|
gears.wallpaper.set(beautiful.wallpaper)
|
|
elseif beautiful.wallpaper:sub(1, #"/") == "/" then
|
|
gears.wallpaper.maximized(beautiful.wallpaper, s)
|
|
end
|
|
else
|
|
beautiful.wallpaper(s)
|
|
end
|
|
end
|
|
end)
|
|
|
|
-- Signal function to execute when a new client appears.
|
|
_G.client.connect_signal('manage', function(c)
|
|
-- Set the windows at the slave,
|
|
-- i.e. put it at the end of others instead of setting it master.
|
|
if not _G.awesome.startup then awful.client.setslave(c) end
|
|
|
|
if _G.awesome.startup and not c.size_hints.user_position and
|
|
not c.size_hints.program_position then
|
|
-- Prevent clients from being unreachable after screen count changes.
|
|
awful.placement.no_offscreen(c)
|
|
end
|
|
end)
|
|
|
|
-- Enable sloppy focus, so that focus follows mouse.
|
|
_G.client.connect_signal('mouse::enter', function(c)
|
|
c:emit_signal('request::activate', 'mouse_enter', {raise = true})
|
|
end)
|
|
|
|
-- Make the focused window have a glowing border
|
|
_G.client.connect_signal('focus', function(c)
|
|
c.border_color = beautiful.border_focus
|
|
end)
|
|
_G.client.connect_signal('unfocus', function(c)
|
|
c.border_color = beautiful.border_normal
|
|
end)
|