Skip to content

Commit

Permalink
finally OSDs seem to be working. Seem to be
Browse files Browse the repository at this point in the history
  • Loading branch information
Thomashighbaugh committed Nov 30, 2023
1 parent 8a47d38 commit 086613d
Show file tree
Hide file tree
Showing 34 changed files with 262 additions and 4,490 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# No Widgets Directory

Unlike the very rationally laid out [Linux AwesomeWM Modular Starter Kit](https://gitlab.com/bloxiebird/linux-awesomewm-modular-starter-kit/) and many configurations I have opted against separating out the widgets from their parent UI elements and placing them in a top-level `widgets/` directory. This design consideration in the layout of my codebase has been primarily a reflection of my desire to make the UI elements "portable", in the limited sense of this particular codebase (my global scoping of the configuration's variables would make for some debugging were you to drag and drop any of these elements, but that was a developer experience decision I hardly regret).

These UI elements with their associated widgets within the directory they are located within are portable in the sense that they are this way easily disposed of. Sometimes one needs a fresh start after all and this arrangement makes such a situation much more convenient.

It has also been that I have opted to write this configuration this way for purposes of easing the process of navigating between the files without getting distracted by other lingering `TODO` items. So for sake of combatting my ADHD tendencies, I have opted to this atomic topography of the UI elements.

As a final consideration that has been at play, I find it unnecessarily obtuse to have a separate subdirectory with the same name to store an element's widgets and then that UI element in its own subdirectory containing only a `init.lua` file.

Of course these are my opinions, shaped by what works best for me (or at least seems to) such that I am aware of alternative arrangements having the potential to be much better for others and suggest you figure out what works for you then stick to it.
4 changes: 4 additions & 0 deletions .quicknote/3a52ce780950d4d969792a2559cd519d7ee8c727/todo.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,13 @@
- [ ] TODO create documented examples for the usage of the result
- [ ] TODO incorporate all the necessary functionality then remove the plugins entirely, mitigating headaches and much bloat
- [ ] TODO
- [ ] TODO: Eliminate bling configuration hold-overs from tabbar and mstab
- [ ] TODO fix mstab annoyance layout error

## Archived Items

- [x] DONE: TabBar to single file in modules
- NOTE: Used `pure` style that conforms to titlebar layout
- [x] DONE replace taglist to enable buttons/actions on items shown
- [x] DONE application menu animation
- frustrated thus far, will load but now won't dismiss
Expand Down
19 changes: 8 additions & 11 deletions modules/layouts/mstab.lua
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
-- | |__ | | | | _ || _ |
-- |__|_|__|_______| |___| |___._||_____|
-- +---------------------------------------------------------------+
-- NOTE thanks again to bling, its like stack but has a tab bar on the top. I removed settings I can configure here, refactored it and commented it all pretty as well.
-- NOTE: thanks again to bling, its like stack but has a tab bar on the top. I removed settings I can configure here, refactored it and commented it all pretty as well.
--
local awful = require("awful")
local gears = require("gears")
Expand All @@ -14,22 +14,19 @@ local beautiful = require("beautiful")
local mstab = {}

-- Configuration parameters with fallbacks
-- TODO: remove most of this, as I don't need to have these options this is not a widget library after all

mstab.name = "mstab"
local tabbar_disable = beautiful.mstab_bar_disable or false
local tabbar_ontop = beautiful.mstab_bar_ontop or false
local tabbar_ontop = beautiful.mstab_bar_ontop or true
local tabbar_padding = beautiful.mstab_bar_padding or "default"
local border_radius = beautiful.mstab_border_radius or dpi(8)
local tabbar_position = beautiful.mstab_tabbar_position
or beautiful.tabbar_position
or "top"
local bar_style = beautiful.mstab_tabbar_style
or beautiful.tabbar_style
or "pure"
local bar = require("modules.tabbar." .. bar_style)
local border_radius = dpi(4)
local tabbar_position = "top"
local bar = require("modules.tabbar")
local tabbar_size = bar.size
or beautiful.mstab_bar_height
or beautiful.tabbar_size
or 40
or dpi(28)
local dont_resize_slaves = beautiful.mstab_dont_resize_slaves or false

-- Initialize top index for each tag
Expand Down
65 changes: 65 additions & 0 deletions modules/tabbar.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
-- _______ __ ______
-- |_ _|.---.-.| |--. | __ \.---.-.----.
-- | | | _ || _ | | __ <| _ | _|
-- |___| |___._||_____| |______/|___._|__|
-- +---------------------------------------------------------------+
--
-- TODO: remove most of this since I will not need customization options in my own configuration when changing the values as necessary is just as easy

local bg_normal = beautiful.bg_normal
local fg_normal = beautiful.lesswhite
local bg_focus = beautiful.bg_focus
local fg_focus = beautiful.fg_focus
local bg_focus_inactive = beautiful.tabbar_bg_focus_inactive or bg_focus
local fg_focus_inactive = beautiful.tabbar_fg_focus_inactive or fg_focus
local bg_normal_inactive = beautiful.tabbar_bg_normal_inactive or bg_normal
local fg_normal_inactive = beautiful.tabbar_fg_normal_inactive or fg_normal
local font = beautiful.font
local size = beautiful.tabbar_size or 20
local position = beautiful.tabbar_position or "top"

local function create(c, focused_bool, buttons, inactive_bool)
local bg_temp = inactive_bool and bg_normal_inactive or bg_normal
local fg_temp = inactive_bool and fg_normal_inactive or fg_normal
if focused_bool then
bg_temp = inactive_bool and bg_focus_inactive or bg_focus
fg_temp = inactive_bool and fg_focus_inactive or fg_focus
end

local wid_temp = wibox.widget({
{
{ -- Left
wibox.widget.base.make_widget(awful.titlebar.widget.iconwidget(c)),
buttons = buttons,
layout = wibox.layout.fixed.horizontal,
},
{ -- Title
wibox.widget.base.make_widget(awful.titlebar.widget.titlewidget(c)),
buttons = buttons,
widget = wibox.container.place,
},
{ -- Right
-- I have no need for buttons I have already on the titlebar here, so nil to keep the layout in order
nil,

layout = wibox.layout.fixed.horizontal,
},
layout = wibox.layout.align.horizontal,
},
bg = bg_temp,
fg = fg_temp,
widget = wibox.container.background,
})

return wid_temp
end

return {
layout = wibox.layout.flex.horizontal,
create = create,
position = position,
size = size,
bg_normal = bg_normal,
bg_focus = bg_focus,
}

58 changes: 0 additions & 58 deletions modules/tabbar/boxes.lua

This file was deleted.

62 changes: 0 additions & 62 deletions modules/tabbar/default.lua

This file was deleted.

Loading

0 comments on commit 086613d

Please sign in to comment.