summaryrefslogtreecommitdiff
path: root/awesome/widgets/classiclayoutbox.lua
diff options
context:
space:
mode:
authorTim Keller <tjk@tjkeller.xyz>2024-10-17 22:29:52 -0500
committerTim Keller <tjk@tjkeller.xyz>2024-10-17 22:29:52 -0500
commit572382a9ce99162bd93d2d6e3fd789f2c99bf420 (patch)
tree676e1beca156d8a145f05462573ca101986783fa /awesome/widgets/classiclayoutbox.lua
parente74ea1ed238500d48d3df0c8a5e15e4fd0bd0fcf (diff)
downloaddotconfig-572382a9ce99162bd93d2d6e3fd789f2c99bf420.tar.xz
dotconfig-572382a9ce99162bd93d2d6e3fd789f2c99bf420.zip
lowbat widget and remove old classiclayoutbox
Diffstat (limited to 'awesome/widgets/classiclayoutbox.lua')
-rw-r--r--awesome/widgets/classiclayoutbox.lua111
1 files changed, 0 insertions, 111 deletions
diff --git a/awesome/widgets/classiclayoutbox.lua b/awesome/widgets/classiclayoutbox.lua
deleted file mode 100644
index 412cb77..0000000
--- a/awesome/widgets/classiclayoutbox.lua
+++ /dev/null
@@ -1,111 +0,0 @@
----------------------------------------------------------------------------
---- Layoutbox widget.
---
--- @author Julien Danjou &lt;julien@danjou.info&gt;
--- @copyright 2009 Julien Danjou
--- @classmod awful.widget.layoutbox
----------------------------------------------------------------------------
-
-local setmetatable = setmetatable
-local capi = { screen = screen, tag = tag }
-local layout = require("awful.layout")
-local tooltip = require("awful.tooltip")
-local wibox = require("wibox")
-local surface = require("gears.surface")
-
-local layout_icons = {
- cornernw = "",
- cornerne = "",
- cornersw = "",
- cornerse = "",
- fairh = "",
- fairv = "EEH",
- max = "[M]",
- floating = "><>",
- magnifier = "[M]",
- fullscreen = "",
- spiral = "",
- dwindle = "",
- tile = "[]=",
- tiletop = "TTT",
- tilebottom = "TTT",
- tileleft = "=[]",
-}
-
-local function get_screen(s)
- return s and capi.screen[s]
-end
-
-local layoutbox = { mt = {} }
-
-local boxes = nil
-
-local function update(w, screen)
- screen = get_screen(screen)
- local name = layout.getname(layout.get(screen))
- w._layoutbox_tooltip:set_text(name or "[no name]")
-
- if name == "max" and #screen.clients > 0 then
- w.textbox.text = " [" .. #screen.clients .. "] " -- TODO manage / unmanage signal
- return
- end
-
- w.textbox.text = layout_icons[name]
- w.textbox.text = " " .. w.textbox.text .. " "
-end
-
-local function update_from_tag(t)
- local screen = get_screen(t.screen)
- local w = boxes[screen]
- if w then
- update(w, screen)
- end
-end
-
---- Create a layoutbox widget. It draws a picture with the current layout
--- symbol of the current tag.
--- @param screen The screen number that the layout will be represented for.
--- @return An imagebox widget configured as a layoutbox.
-function layoutbox.new(screen)
- screen = get_screen(screen or 1)
-
- -- Do we already have the update callbacks registered?
- if boxes == nil then
- boxes = setmetatable({}, { __mode = "kv" })
- capi.tag.connect_signal("property::selected", update_from_tag)
- capi.tag.connect_signal("property::layout", update_from_tag)
- capi.tag.connect_signal("property::screen", function()
- for s, w in pairs(boxes) do
- if s.valid then
- update(w, s)
- end
- end
- end)
- layoutbox.boxes = boxes
- end
-
- -- Do we already have a layoutbox for this screen?
- local w = boxes[screen]
- if not w then
- w = wibox.widget {
- {
- id = "textbox",
- widget = wibox.widget.textbox
- },
- layout = wibox.layout.fixed.horizontal
- }
-
- w._layoutbox_tooltip = tooltip {objects = {w}, delay_show = 1}
-
- update(w, screen)
- boxes[screen] = w
- end
-
- return w
-end
-
-function layoutbox.mt:__call(...)
- return layoutbox.new(...)
-end
-
-return setmetatable(layoutbox, layoutbox.mt)