mirror of
https://github.com/end-4/dots-hyprland.git
synced 2026-06-05 23:09:26 -05:00
updaed pywal dependancy added kvantum theming and pywal also changes some configs
This commit is contained in:
@@ -0,0 +1,576 @@
|
||||
[%General]
|
||||
author=Vince Liuice, based on KvAdapta by Tsu Jan
|
||||
comment=An uncomplicated theme inspired by the Materia GTK theme
|
||||
x11drag=none
|
||||
alt_mnemonic=true
|
||||
left_tabs=false
|
||||
attach_active_tab=false
|
||||
mirror_doc_tabs=true
|
||||
group_toolbar_buttons=false
|
||||
toolbar_item_spacing=0
|
||||
toolbar_interior_spacing=2
|
||||
spread_progressbar=true
|
||||
composite=false
|
||||
menu_shadow_depth=6
|
||||
spread_menuitems=false
|
||||
tooltip_shadow_depth=7
|
||||
splitter_width=1
|
||||
scroll_width=9
|
||||
scroll_arrows=false
|
||||
scroll_min_extent=60
|
||||
slider_width=2
|
||||
slider_handle_width=23
|
||||
slider_handle_length=22
|
||||
tickless_slider_handle_size=22
|
||||
center_toolbar_handle=true
|
||||
check_size=24
|
||||
textless_progressbar=false
|
||||
progressbar_thickness=2
|
||||
menubar_mouse_tracking=true
|
||||
toolbutton_style=1
|
||||
double_click=false
|
||||
translucent_windows=false
|
||||
blurring=false
|
||||
popup_blurring=false
|
||||
vertical_spin_indicators=false
|
||||
spin_button_width=24
|
||||
fill_rubberband=false
|
||||
merge_menubar_with_toolbar=true
|
||||
small_icon_size=16
|
||||
large_icon_size=32
|
||||
button_icon_size=16
|
||||
toolbar_icon_size=16
|
||||
combo_as_lineedit=true
|
||||
animate_states=true
|
||||
button_contents_shift=false
|
||||
combo_menu=true
|
||||
hide_combo_checkboxes=true
|
||||
combo_focus_rect=false
|
||||
groupbox_top_label=true
|
||||
inline_spin_indicators=true
|
||||
joined_inactive_tabs=false
|
||||
layout_spacing=3
|
||||
layout_margin=3
|
||||
scrollbar_in_view=true
|
||||
transient_scrollbar=true
|
||||
transient_groove=false
|
||||
submenu_overlap=0
|
||||
tooltip_delay=0
|
||||
tree_branch_line=false
|
||||
no_window_pattern=false
|
||||
opaque=kaffeine,kmplayer,subtitlecomposer,kdenlive,vlc,smplayer,smplayer2,avidemux,avidemux2_qt4,avidemux3_qt4,avidemux3_qt5,kamoso,QtCreator,VirtualBox,trojita,dragon,digikam
|
||||
reduce_window_opacity=0
|
||||
respect_DE=true
|
||||
scrollable_menu=false
|
||||
submenu_delay=150
|
||||
no_inactiveness=false
|
||||
reduce_menu_opacity=0
|
||||
click_behavior=2
|
||||
contrast=1.00
|
||||
dialog_button_layout=0
|
||||
intensity=1.00
|
||||
saturation=1.00
|
||||
shadowless_popup=false
|
||||
drag_from_buttons=false
|
||||
menu_blur_radius=0
|
||||
tooltip_blur_radius=0
|
||||
|
||||
[GeneralColors]
|
||||
window.color=#F5F5F5
|
||||
base.color=#ffffff
|
||||
alt.base.color=#f8f8f8
|
||||
button.color=#f2f2f2
|
||||
light.color=#ffffff
|
||||
mid.light.color=#f0f0f0
|
||||
dark.color=#c8c8c8
|
||||
mid.color=#e1e1e1
|
||||
highlight.color=#3c84f7
|
||||
inactive.highlight.color=#3c84f7
|
||||
text.color=#444444
|
||||
window.text.color=#444444
|
||||
button.text.color=#444444
|
||||
disabled.text.color=#44444474
|
||||
tooltip.text.color=#444444
|
||||
highlight.text.color=#333333
|
||||
link.color=#0057AE
|
||||
link.visited.color=#E040FB
|
||||
progress.indicator.text.color=#444444
|
||||
|
||||
[Hacks]
|
||||
transparent_ktitle_label=true
|
||||
transparent_dolphin_view=true
|
||||
transparent_pcmanfm_sidepane=true
|
||||
blur_translucent=false
|
||||
transparent_menutitle=true
|
||||
respect_darkness=true
|
||||
kcapacitybar_as_progressbar=true
|
||||
force_size_grip=true
|
||||
iconless_pushbutton=false
|
||||
iconless_menu=false
|
||||
disabled_icon_opacity=100
|
||||
lxqtmainmenu_iconsize=16
|
||||
normal_default_pushbutton=true
|
||||
single_top_toolbar=true
|
||||
tint_on_mouseover=0
|
||||
transparent_pcmanfm_view=true
|
||||
no_selection_tint=true
|
||||
transparent_arrow_button=true
|
||||
middle_click_scroll=false
|
||||
opaque_colors=false
|
||||
kinetic_scrolling=false
|
||||
scroll_jump_workaround=true
|
||||
centered_forms=false
|
||||
noninteger_translucency=false
|
||||
style_vertical_toolbars=false
|
||||
blur_only_active_window=true
|
||||
|
||||
[PanelButtonCommand]
|
||||
frame=true
|
||||
frame.element=button
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
interior=true
|
||||
interior.element=button
|
||||
indicator.size=8
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=white
|
||||
highlight.text.color=white
|
||||
text.shadow=0
|
||||
text.margin=4
|
||||
text.iconspacing=4
|
||||
indicator.element=arrow
|
||||
frame.expansion=0
|
||||
|
||||
[PanelButtonTool]
|
||||
inherits=PanelButtonCommand
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=white
|
||||
text.disabled.color=#44444474
|
||||
text.bold=false
|
||||
indicator.element=arrow
|
||||
indicator.size=8
|
||||
frame.expansion=0
|
||||
|
||||
[ToolbarButton]
|
||||
frame=true
|
||||
frame.element=tbutton
|
||||
interior.element=tbutton
|
||||
frame.top=14
|
||||
frame.bottom=14
|
||||
frame.left=14
|
||||
frame.right=14
|
||||
indicator.element=tarrow
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
text.disabled.color=#44444474
|
||||
text.bold=false
|
||||
frame.expansion=28
|
||||
|
||||
[Dock]
|
||||
inherits=PanelButtonCommand
|
||||
interior.element=dock
|
||||
frame.element=dock
|
||||
frame.top=1
|
||||
frame.bottom=1
|
||||
frame.left=1
|
||||
frame.right=1
|
||||
text.normal.color=#444444
|
||||
|
||||
[DockTitle]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior=false
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.bold=false
|
||||
|
||||
[IndicatorSpinBox]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
interior=true
|
||||
frame.top=2
|
||||
frame.bottom=2
|
||||
frame.left=2
|
||||
frame.right=2
|
||||
indicator.element=spin
|
||||
indicator.size=8
|
||||
text.normal.color=#444444
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
|
||||
[RadioButton]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior.element=radio
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
|
||||
[CheckBox]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior.element=checkbox
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
|
||||
[Focus]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
frame.element=focus
|
||||
frame.top=2
|
||||
frame.bottom=2
|
||||
frame.left=2
|
||||
frame.right=2
|
||||
frame.patternsize=14
|
||||
|
||||
[GenericFrame]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
interior=false
|
||||
frame.element=common
|
||||
interior.element=common
|
||||
frame.top=1
|
||||
frame.bottom=1
|
||||
frame.left=1
|
||||
frame.right=1
|
||||
|
||||
[LineEdit]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=lineedit
|
||||
interior.element=lineedit
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
|
||||
[ToolbarLineEdit]
|
||||
frame.element=lineedit
|
||||
interior.element=lineedit
|
||||
|
||||
[DropDownButton]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.element=arrow-down
|
||||
|
||||
[IndicatorArrow]
|
||||
indicator.element=arrow
|
||||
indicator.size=8
|
||||
|
||||
[ToolboxTab]
|
||||
inherits=PanelButtonCommand
|
||||
text.normal.color=#444444
|
||||
text.press.color=#333333
|
||||
text.focus.color=#444444
|
||||
|
||||
[Tab]
|
||||
inherits=PanelButtonCommand
|
||||
interior.element=tab
|
||||
text.margin.left=8
|
||||
text.margin.right=8
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
frame.element=tab
|
||||
indicator.element=tab
|
||||
indicator.size=22
|
||||
frame.top=8
|
||||
frame.bottom=8
|
||||
frame.left=8
|
||||
frame.right=8
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
frame.expansion=0
|
||||
text.bold=false
|
||||
|
||||
[TabFrame]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=tabframe
|
||||
interior.element=tabframe
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
|
||||
[TreeExpander]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.size=8
|
||||
indicator.element=tree
|
||||
|
||||
[HeaderSection]
|
||||
inherits=PanelButtonCommand
|
||||
interior.element=header
|
||||
frame.element=header
|
||||
frame.top=0
|
||||
frame.bottom=1
|
||||
frame.left=1
|
||||
frame.right=1
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
frame.expansion=0
|
||||
|
||||
[SizeGrip]
|
||||
indicator.element=resize-grip
|
||||
|
||||
[Toolbar]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.element=toolbar
|
||||
indicator.size=5
|
||||
text.margin=0
|
||||
interior.element=menubar
|
||||
frame.element=menubar
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
frame.top=0
|
||||
frame.bottom=1
|
||||
frame.expansion=0
|
||||
|
||||
[Slider]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=slider
|
||||
focusFrame=true
|
||||
interior.element=slider
|
||||
frame.top=3
|
||||
frame.bottom=3
|
||||
frame.left=3
|
||||
frame.right=3
|
||||
|
||||
[SliderCursor]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior.element=slidercursor
|
||||
|
||||
[Progressbar]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=progress
|
||||
interior.element=progress
|
||||
text.margin=0
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
text.bold=false
|
||||
frame.expansion=8
|
||||
|
||||
[ProgressbarContents]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
frame.element=progress-pattern
|
||||
interior.element=progress-pattern
|
||||
|
||||
[ItemView]
|
||||
inherits=PanelButtonCommand
|
||||
text.margin=0
|
||||
frame.element=itemview
|
||||
interior.element=itemview
|
||||
frame.top=4
|
||||
frame.bottom=4
|
||||
frame.left=4
|
||||
frame.right=4
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
text.margin.left=8
|
||||
text.margin.right=8
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
frame.expansion=0
|
||||
|
||||
[Splitter]
|
||||
interior.element=splitter
|
||||
frame=false
|
||||
indicator.size=0
|
||||
|
||||
[Scrollbar]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.element=arrow
|
||||
indicator.size=12
|
||||
|
||||
[ScrollbarSlider]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=scrollbarslider
|
||||
interior=false
|
||||
frame.left=5
|
||||
frame.right=5
|
||||
frame.top=5
|
||||
frame.bottom=5
|
||||
indicator.element=grip
|
||||
indicator.size=12
|
||||
|
||||
[ScrollbarGroove]
|
||||
inherits=PanelButtonCommand
|
||||
interior=false
|
||||
frame=false
|
||||
|
||||
[Menu]
|
||||
inherits=PanelButtonCommand
|
||||
frame.top=10
|
||||
frame.bottom=10
|
||||
frame.left=10
|
||||
frame.right=10
|
||||
frame.element=menu
|
||||
interior.element=menu
|
||||
text.normal.color=#444444
|
||||
text.shadow=false
|
||||
frame.expansion=0
|
||||
text.bold=false
|
||||
|
||||
[MenuItem]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
frame.element=menuitem
|
||||
interior.element=menuitem
|
||||
indicator.element=menuitem
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#333333
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
text.margin.left=6
|
||||
text.margin.right=6
|
||||
frame.top=4
|
||||
frame.bottom=4
|
||||
frame.left=4
|
||||
frame.right=4
|
||||
text.bold=false
|
||||
frame.expansion=0
|
||||
|
||||
[MenuBar]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=menubar
|
||||
interior.element=menubar
|
||||
frame.bottom=0
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
frame.expansion=0
|
||||
text.bold=false
|
||||
|
||||
[MenuBarItem]
|
||||
inherits=PanelButtonCommand
|
||||
interior=true
|
||||
interior.element=menubaritem
|
||||
frame.element=menubaritem
|
||||
frame.top=2
|
||||
frame.bottom=2
|
||||
frame.left=2
|
||||
frame.right=2
|
||||
text.margin.left=4
|
||||
text.margin.right=4
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
text.bold=false
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
frame.expansion=0
|
||||
|
||||
[TitleBar]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
interior.element=titlebar
|
||||
indicator.size=16
|
||||
indicator.element=mdi
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#444444
|
||||
text.bold=false
|
||||
text.italic=true
|
||||
frame.expansion=0
|
||||
|
||||
[ComboBox]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=combo
|
||||
interior.element=combo
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#424242
|
||||
text.press.color=#424242
|
||||
text.toggle.color=#424242
|
||||
|
||||
[GroupBox]
|
||||
inherits=GenericFrame
|
||||
frame=false
|
||||
text.shadow=0
|
||||
text.margin=0
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#333333
|
||||
text.bold=false
|
||||
frame.expansion=0
|
||||
|
||||
[TabBarFrame]
|
||||
inherits=GenericFrame
|
||||
frame=false
|
||||
interior=false
|
||||
|
||||
[ToolTip]
|
||||
inherits=GenericFrame
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
interior=true
|
||||
text.shadow=0
|
||||
text.margin=6
|
||||
interior.element=tooltip
|
||||
frame.element=tooltip
|
||||
text.normal.color=#444444
|
||||
text.focus.color=#333333
|
||||
text.press.color=#333333
|
||||
text.toggle.color=#333333
|
||||
frame.expansion=6
|
||||
|
||||
[StatusBar]
|
||||
inherits=GenericFrame
|
||||
frame=false
|
||||
interior=false
|
||||
|
||||
[Window]
|
||||
interior=true
|
||||
interior.element=window
|
||||
frame=true
|
||||
frame.element=window
|
||||
frame.bottom=10
|
||||
frame.top=10
|
||||
File diff suppressed because it is too large
Load Diff
|
After Width: | Height: | Size: 170 KiB |
@@ -0,0 +1,569 @@
|
||||
[%General]
|
||||
author=Vince Liuice, based on KvAdapta by Tsu Jan
|
||||
comment=An uncomplicated theme inspired by the Materia GTK theme
|
||||
x11drag=none
|
||||
alt_mnemonic=true
|
||||
left_tabs=false
|
||||
attach_active_tab=false
|
||||
mirror_doc_tabs=true
|
||||
group_toolbar_buttons=false
|
||||
toolbar_item_spacing=0
|
||||
toolbar_interior_spacing=2
|
||||
spread_progressbar=true
|
||||
composite=false
|
||||
menu_shadow_depth=6
|
||||
spread_menuitems=false
|
||||
tooltip_shadow_depth=7
|
||||
splitter_width=1
|
||||
scroll_width=9
|
||||
scroll_arrows=false
|
||||
scroll_min_extent=60
|
||||
slider_width=2
|
||||
slider_handle_width=23
|
||||
slider_handle_length=22
|
||||
tickless_slider_handle_size=22
|
||||
center_toolbar_handle=true
|
||||
check_size=24
|
||||
textless_progressbar=false
|
||||
progressbar_thickness=2
|
||||
menubar_mouse_tracking=true
|
||||
toolbutton_style=1
|
||||
double_click=false
|
||||
translucent_windows=false
|
||||
blurring=false
|
||||
popup_blurring=false
|
||||
vertical_spin_indicators=false
|
||||
spin_button_width=24
|
||||
fill_rubberband=false
|
||||
merge_menubar_with_toolbar=true
|
||||
small_icon_size=16
|
||||
large_icon_size=32
|
||||
button_icon_size=16
|
||||
toolbar_icon_size=16
|
||||
combo_as_lineedit=true
|
||||
animate_states=true
|
||||
button_contents_shift=false
|
||||
combo_menu=true
|
||||
hide_combo_checkboxes=true
|
||||
combo_focus_rect=false
|
||||
groupbox_top_label=true
|
||||
inline_spin_indicators=true
|
||||
joined_inactive_tabs=false
|
||||
layout_spacing=3
|
||||
layout_margin=3
|
||||
scrollbar_in_view=true
|
||||
transient_scrollbar=true
|
||||
transient_groove=false
|
||||
submenu_overlap=0
|
||||
tooltip_delay=0
|
||||
tree_branch_line=false
|
||||
no_window_pattern=false
|
||||
opaque=kaffeine,kmplayer,subtitlecomposer,kdenlive,vlc,smplayer,smplayer2,avidemux,avidemux2_qt4,avidemux3_qt4,avidemux3_qt5,kamoso,QtCreator,VirtualBox,trojita,dragon,digikam
|
||||
reduce_window_opacity=0
|
||||
respect_DE=true
|
||||
scrollable_menu=false
|
||||
submenu_delay=150
|
||||
no_inactiveness=false
|
||||
reduce_menu_opacity=0
|
||||
click_behavior=2
|
||||
contrast=1.00
|
||||
dialog_button_layout=0
|
||||
intensity=1.00
|
||||
saturation=1.00
|
||||
shadowless_popup=false
|
||||
drag_from_buttons=false
|
||||
menu_blur_radius=0
|
||||
tooltip_blur_radius=0
|
||||
|
||||
[GeneralColors]
|
||||
window.color=#2c2c2c
|
||||
base.color=#2c2c2c
|
||||
alt.base.color=#2e2e2e
|
||||
button.color=#4d4d4d
|
||||
light.color=#535353
|
||||
mid.light.color=#474747
|
||||
dark.color=#282828
|
||||
mid.color=#323232
|
||||
highlight.color=#5b9bf8
|
||||
inactive.highlight.color=#5b9bf8
|
||||
text.color=#dfdfdf
|
||||
window.text.color=#dfdfdf
|
||||
button.text.color=#dfdfdf
|
||||
disabled.text.color=#696969
|
||||
tooltip.text.color=#efefef
|
||||
highlight.text.color=#ffffff
|
||||
link.color=#0057AE
|
||||
link.visited.color=#E040FB
|
||||
progress.indicator.text.color=#dfdfdf
|
||||
|
||||
[Hacks]
|
||||
transparent_ktitle_label=true
|
||||
transparent_dolphin_view=true
|
||||
transparent_pcmanfm_sidepane=true
|
||||
blur_translucent=false
|
||||
transparent_menutitle=true
|
||||
respect_darkness=true
|
||||
kcapacitybar_as_progressbar=true
|
||||
force_size_grip=true
|
||||
iconless_pushbutton=false
|
||||
iconless_menu=false
|
||||
disabled_icon_opacity=100
|
||||
lxqtmainmenu_iconsize=16
|
||||
normal_default_pushbutton=true
|
||||
single_top_toolbar=true
|
||||
tint_on_mouseover=0
|
||||
transparent_pcmanfm_view=true
|
||||
no_selection_tint=true
|
||||
transparent_arrow_button=true
|
||||
middle_click_scroll=false
|
||||
opaque_colors=false
|
||||
kinetic_scrolling=false
|
||||
scroll_jump_workaround=true
|
||||
centered_forms=false
|
||||
noninteger_translucency=false
|
||||
style_vertical_toolbars=false
|
||||
blur_only_active_window=true
|
||||
|
||||
[PanelButtonCommand]
|
||||
frame=true
|
||||
frame.element=button
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
interior=true
|
||||
interior.element=button
|
||||
indicator.size=8
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
text.press.color=white
|
||||
text.toggle.color=#ffffff
|
||||
text.shadow=0
|
||||
text.margin=4
|
||||
text.iconspacing=4
|
||||
indicator.element=arrow
|
||||
frame.expansion=0
|
||||
|
||||
[PanelButtonTool]
|
||||
inherits=PanelButtonCommand
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
text.press.color=white
|
||||
text.toggle.color=#ffffff
|
||||
text.bold=false
|
||||
indicator.element=arrow
|
||||
indicator.size=8
|
||||
frame.expansion=0
|
||||
|
||||
[ToolbarButton]
|
||||
frame=true
|
||||
frame.element=tbutton
|
||||
interior.element=tbutton
|
||||
frame.top=16
|
||||
frame.bottom=16
|
||||
frame.left=16
|
||||
frame.right=16
|
||||
indicator.element=tarrow
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
text.press.color=white
|
||||
text.toggle.color=white
|
||||
text.bold=false
|
||||
frame.expansion=32
|
||||
|
||||
[Dock]
|
||||
inherits=PanelButtonCommand
|
||||
interior.element=dock
|
||||
frame.element=dock
|
||||
frame.top=1
|
||||
frame.bottom=1
|
||||
frame.left=1
|
||||
frame.right=1
|
||||
text.normal.color=#dfdfdf
|
||||
|
||||
[DockTitle]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior=false
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
text.bold=false
|
||||
|
||||
[IndicatorSpinBox]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
interior=true
|
||||
frame.top=2
|
||||
frame.bottom=2
|
||||
frame.left=2
|
||||
frame.right=2
|
||||
indicator.element=spin
|
||||
indicator.size=8
|
||||
text.normal.color=#dfdfdf
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
|
||||
[RadioButton]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior.element=radio
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
|
||||
[CheckBox]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior.element=checkbox
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
|
||||
[Focus]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
frame.element=focus
|
||||
frame.top=2
|
||||
frame.bottom=2
|
||||
frame.left=2
|
||||
frame.right=2
|
||||
frame.patternsize=14
|
||||
|
||||
[GenericFrame]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
interior=false
|
||||
frame.element=common
|
||||
interior.element=common
|
||||
frame.top=1
|
||||
frame.bottom=1
|
||||
frame.left=1
|
||||
frame.right=1
|
||||
|
||||
[LineEdit]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=lineedit
|
||||
interior.element=lineedit
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
|
||||
[ToolbarLineEdit]
|
||||
frame.element=lineedit
|
||||
interior.element=lineedit
|
||||
|
||||
[DropDownButton]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.element=arrow-down
|
||||
|
||||
[IndicatorArrow]
|
||||
indicator.element=arrow
|
||||
indicator.size=8
|
||||
|
||||
[ToolboxTab]
|
||||
inherits=PanelButtonCommand
|
||||
text.normal.color=#dfdfdf
|
||||
text.press.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
|
||||
[Tab]
|
||||
inherits=PanelButtonCommand
|
||||
interior.element=tab
|
||||
text.margin.left=8
|
||||
text.margin.right=8
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
frame.element=tab
|
||||
indicator.element=tab
|
||||
indicator.size=22
|
||||
frame.top=8
|
||||
frame.bottom=8
|
||||
frame.left=8
|
||||
frame.right=8
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=#dfdfdf
|
||||
text.press.color=white
|
||||
text.toggle.color=white
|
||||
frame.expansion=0
|
||||
text.bold=false
|
||||
|
||||
[TabFrame]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=tabframe
|
||||
interior.element=tabframe
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
|
||||
[TreeExpander]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.size=8
|
||||
indicator.element=tree
|
||||
|
||||
[HeaderSection]
|
||||
inherits=PanelButtonCommand
|
||||
interior.element=header
|
||||
frame.element=header
|
||||
frame.top=0
|
||||
frame.bottom=1
|
||||
frame.left=1
|
||||
frame.right=1
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
text.press.color=white
|
||||
text.toggle.color=white
|
||||
frame.expansion=0
|
||||
|
||||
[SizeGrip]
|
||||
indicator.element=resize-grip
|
||||
|
||||
[Toolbar]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.element=toolbar
|
||||
indicator.size=5
|
||||
text.margin=0
|
||||
interior.element=menubar
|
||||
frame.element=menubar
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
text.press.color=#dfdfdf
|
||||
text.toggle.color=white
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
frame.top=0
|
||||
frame.bottom=1
|
||||
frame.expansion=0
|
||||
|
||||
[Slider]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=slider
|
||||
focusFrame=true
|
||||
interior.element=slider
|
||||
frame.top=3
|
||||
frame.bottom=3
|
||||
frame.left=3
|
||||
frame.right=3
|
||||
|
||||
[SliderCursor]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior.element=slidercursor
|
||||
|
||||
[Progressbar]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=progress
|
||||
interior.element=progress
|
||||
text.margin=0
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=#dfdfdf
|
||||
text.press.color=#dfdfdf
|
||||
text.toggle.color=#dfdfdf
|
||||
text.bold=false
|
||||
frame.expansion=8
|
||||
|
||||
[ProgressbarContents]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
frame.element=progress-pattern
|
||||
interior.element=progress-pattern
|
||||
|
||||
[ItemView]
|
||||
inherits=PanelButtonCommand
|
||||
text.margin=0
|
||||
frame.element=itemview
|
||||
interior.element=itemview
|
||||
frame.top=4
|
||||
frame.bottom=4
|
||||
frame.left=4
|
||||
frame.right=4
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
text.margin.left=8
|
||||
text.margin.right=8
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=#dfdfdf
|
||||
text.press.color=#ffffff
|
||||
text.toggle.color=#ffffff
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
frame.expansion=0
|
||||
|
||||
[Splitter]
|
||||
interior.element=splitter
|
||||
frame=false
|
||||
indicator.size=0
|
||||
|
||||
[Scrollbar]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.element=arrow
|
||||
indicator.size=12
|
||||
|
||||
[ScrollbarSlider]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=scrollbarslider
|
||||
interior=false
|
||||
frame.left=5
|
||||
frame.right=5
|
||||
frame.top=5
|
||||
frame.bottom=5
|
||||
indicator.element=grip
|
||||
indicator.size=12
|
||||
|
||||
[ScrollbarGroove]
|
||||
inherits=PanelButtonCommand
|
||||
interior=false
|
||||
frame=false
|
||||
|
||||
[Menu]
|
||||
inherits=PanelButtonCommand
|
||||
frame.top=10
|
||||
frame.bottom=10
|
||||
frame.left=10
|
||||
frame.right=10
|
||||
frame.element=menu
|
||||
interior.element=menu
|
||||
text.normal.color=#dfdfdf
|
||||
text.shadow=false
|
||||
frame.expansion=0
|
||||
text.bold=false
|
||||
|
||||
[MenuItem]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
frame.element=menuitem
|
||||
interior.element=menuitem
|
||||
indicator.element=menuitem
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=#ffffff
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
text.margin.left=6
|
||||
text.margin.right=6
|
||||
frame.top=4
|
||||
frame.bottom=4
|
||||
frame.left=4
|
||||
frame.right=4
|
||||
text.bold=false
|
||||
frame.expansion=0
|
||||
|
||||
[MenuBar]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=menubar
|
||||
interior.element=menubar
|
||||
frame.bottom=0
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=#ffffff
|
||||
text.press.color=#ffffff
|
||||
text.toggle.color=#ffffff
|
||||
frame.expansion=0
|
||||
text.bold=false
|
||||
|
||||
[MenuBarItem]
|
||||
inherits=PanelButtonCommand
|
||||
interior=true
|
||||
interior.element=menubaritem
|
||||
frame.element=menubaritem
|
||||
frame.top=2
|
||||
frame.bottom=2
|
||||
frame.left=2
|
||||
frame.right=2
|
||||
text.margin.left=4
|
||||
text.margin.right=4
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=#ffffff
|
||||
text.press.color=#ffffff
|
||||
text.toggle.color=#ffffff
|
||||
text.bold=false
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
frame.expansion=0
|
||||
|
||||
[TitleBar]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
interior.element=titlebar
|
||||
indicator.size=16
|
||||
indicator.element=mdi
|
||||
text.normal.color=#787878
|
||||
text.focus.color=#dfdfdf
|
||||
text.bold=false
|
||||
text.italic=true
|
||||
frame.expansion=0
|
||||
|
||||
[ComboBox]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=combo
|
||||
interior.element=combo
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
text.focus.color=white
|
||||
text.press.color=#dfdfdf
|
||||
text.toggle.color=white
|
||||
|
||||
[GroupBox]
|
||||
inherits=GenericFrame
|
||||
frame=false
|
||||
text.shadow=0
|
||||
text.margin=0
|
||||
text.normal.color=#dfdfdf
|
||||
text.focus.color=white
|
||||
text.bold=false
|
||||
frame.expansion=0
|
||||
|
||||
[TabBarFrame]
|
||||
inherits=GenericFrame
|
||||
frame=false
|
||||
frame.element=tabBarFrame
|
||||
interior=false
|
||||
frame.top=0
|
||||
frame.bottom=0
|
||||
frame.left=0
|
||||
frame.right=0
|
||||
|
||||
[ToolTip]
|
||||
inherits=GenericFrame
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
interior=true
|
||||
text.shadow=0
|
||||
text.margin=6
|
||||
interior.element=tooltip
|
||||
frame.element=tooltip
|
||||
frame.expansion=6
|
||||
|
||||
[StatusBar]
|
||||
inherits=GenericFrame
|
||||
frame=false
|
||||
interior=false
|
||||
|
||||
[Window]
|
||||
interior=true
|
||||
interior.element=window
|
||||
frame=true
|
||||
frame.element=window
|
||||
frame.bottom=10
|
||||
frame.top=10
|
||||
File diff suppressed because it is too large
Load Diff
|
After Width: | Height: | Size: 168 KiB |
@@ -0,0 +1,571 @@
|
||||
[%General]
|
||||
author=Vince Liuice, based on KvAdapta by Tsu Jan
|
||||
comment=An uncomplicated theme inspired by the Materia GTK theme
|
||||
x11drag=none
|
||||
alt_mnemonic=true
|
||||
left_tabs=false
|
||||
attach_active_tab=false
|
||||
mirror_doc_tabs=true
|
||||
group_toolbar_buttons=false
|
||||
toolbar_item_spacing=0
|
||||
toolbar_interior_spacing=2
|
||||
spread_progressbar=true
|
||||
composite=false
|
||||
menu_shadow_depth=6
|
||||
spread_menuitems=false
|
||||
tooltip_shadow_depth=7
|
||||
splitter_width=1
|
||||
scroll_width=9
|
||||
scroll_arrows=false
|
||||
scroll_min_extent=60
|
||||
slider_width=2
|
||||
slider_handle_width=23
|
||||
slider_handle_length=22
|
||||
tickless_slider_handle_size=22
|
||||
center_toolbar_handle=true
|
||||
check_size=24
|
||||
textless_progressbar=false
|
||||
progressbar_thickness=2
|
||||
menubar_mouse_tracking=true
|
||||
toolbutton_style=1
|
||||
double_click=false
|
||||
translucent_windows=false
|
||||
blurring=false
|
||||
popup_blurring=false
|
||||
vertical_spin_indicators=false
|
||||
spin_button_width=24
|
||||
fill_rubberband=false
|
||||
merge_menubar_with_toolbar=true
|
||||
small_icon_size=16
|
||||
large_icon_size=32
|
||||
button_icon_size=16
|
||||
toolbar_icon_size=16
|
||||
combo_as_lineedit=true
|
||||
animate_states=true
|
||||
button_contents_shift=false
|
||||
combo_menu=true
|
||||
hide_combo_checkboxes=true
|
||||
combo_focus_rect=false
|
||||
groupbox_top_label=true
|
||||
inline_spin_indicators=true
|
||||
joined_inactive_tabs=false
|
||||
layout_spacing=3
|
||||
layout_margin=3
|
||||
scrollbar_in_view=true
|
||||
transient_scrollbar=true
|
||||
transient_groove=false
|
||||
submenu_overlap=0
|
||||
tooltip_delay=0
|
||||
tree_branch_line=false
|
||||
no_window_pattern=false
|
||||
opaque=kaffeine,kmplayer,subtitlecomposer,kdenlive,vlc,smplayer,smplayer2,avidemux,avidemux2_qt4,avidemux3_qt4,avidemux3_qt5,kamoso,QtCreator,VirtualBox,VirtualBoxVM,trojita,dragon,digikam,lyx
|
||||
reduce_window_opacity=0
|
||||
respect_DE=true
|
||||
scrollable_menu=false
|
||||
submenu_delay=150
|
||||
no_inactiveness=false
|
||||
reduce_menu_opacity=0
|
||||
click_behavior=2
|
||||
contrast=1.00
|
||||
dialog_button_layout=0
|
||||
intensity=1.00
|
||||
saturation=1.00
|
||||
shadowless_popup=false
|
||||
drag_from_buttons=false
|
||||
menu_blur_radius=0
|
||||
tooltip_blur_radius=0
|
||||
|
||||
[GeneralColors]
|
||||
window.color=#0F1416
|
||||
base.color=#0F1416
|
||||
alt.base.color=#0F1416
|
||||
button.color=#1B2022
|
||||
light.color=#171C1E
|
||||
mid.light.color=#1B2022
|
||||
dark.color=#303638
|
||||
mid.color=#252B2D
|
||||
highlight.color=#84D2E7
|
||||
inactive.highlight.color=#84D2E7
|
||||
text.color=#DEE3E5
|
||||
window.text.color=#DEE3E5
|
||||
button.text.color=#DEE3E5
|
||||
disabled.text.color=#DEE3E5
|
||||
tooltip.text.color=#DEE3E5
|
||||
highlight.text.color=#DEE3E5
|
||||
link.color=#BFC4EB
|
||||
link.visited.color=#DDE1FF
|
||||
progress.indicator.text.color=#DEE3E5
|
||||
|
||||
[Hacks]
|
||||
transparent_ktitle_label=true
|
||||
transparent_dolphin_view=true
|
||||
transparent_pcmanfm_sidepane=true
|
||||
blur_translucent=false
|
||||
transparent_menutitle=true
|
||||
respect_darkness=true
|
||||
kcapacitybar_as_progressbar=true
|
||||
force_size_grip=true
|
||||
iconless_pushbutton=false
|
||||
iconless_menu=false
|
||||
disabled_icon_opacity=100
|
||||
lxqtmainmenu_iconsize=16
|
||||
normal_default_pushbutton=true
|
||||
single_top_toolbar=true
|
||||
tint_on_mouseover=0
|
||||
transparent_pcmanfm_view=true
|
||||
no_selection_tint=true
|
||||
transparent_arrow_button=true
|
||||
middle_click_scroll=false
|
||||
opaque_colors=false
|
||||
kinetic_scrolling=false
|
||||
scroll_jump_workaround=true
|
||||
centered_forms=false
|
||||
noninteger_translucency=false
|
||||
style_vertical_toolbars=false
|
||||
blur_only_active_window=true
|
||||
|
||||
[PanelButtonCommand]
|
||||
frame=true
|
||||
frame.element=button
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
interior=true
|
||||
interior.element=button
|
||||
indicator.size=8
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=white
|
||||
text.toggle.color=#ffffff
|
||||
text.shadow=0
|
||||
text.margin=4
|
||||
text.iconspacing=4
|
||||
indicator.element=arrow
|
||||
frame.expansion=0
|
||||
|
||||
[PanelButtonTool]
|
||||
inherits=PanelButtonCommand
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=white
|
||||
text.toggle.color=#ffffff
|
||||
text.bold=false
|
||||
indicator.element=arrow
|
||||
indicator.size=8
|
||||
frame.expansion=0
|
||||
|
||||
[ToolbarButton]
|
||||
frame=true
|
||||
frame.element=tbutton
|
||||
interior.element=tbutton
|
||||
frame.top=16
|
||||
frame.bottom=16
|
||||
frame.left=16
|
||||
frame.right=16
|
||||
indicator.element=tarrow
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=white
|
||||
text.toggle.color=white
|
||||
text.bold=false
|
||||
frame.expansion=32
|
||||
|
||||
[Dock]
|
||||
inherits=PanelButtonCommand
|
||||
interior.element=dock
|
||||
frame.element=dock
|
||||
frame.top=1
|
||||
frame.bottom=1
|
||||
frame.left=1
|
||||
frame.right=1
|
||||
text.normal.color=#DEE3E5
|
||||
|
||||
[DockTitle]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior=false
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.bold=false
|
||||
|
||||
[IndicatorSpinBox]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
interior=true
|
||||
frame.top=2
|
||||
frame.bottom=2
|
||||
frame.left=2
|
||||
frame.right=2
|
||||
indicator.element=spin
|
||||
indicator.size=8
|
||||
text.normal.color=#DEE3E5
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
|
||||
[RadioButton]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior.element=radio
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
|
||||
[CheckBox]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior.element=checkbox
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
|
||||
[Focus]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
frame.element=focus
|
||||
frame.top=2
|
||||
frame.bottom=2
|
||||
frame.left=2
|
||||
frame.right=2
|
||||
frame.patternsize=14
|
||||
|
||||
[GenericFrame]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
interior=false
|
||||
frame.element=common
|
||||
interior.element=common
|
||||
frame.top=1
|
||||
frame.bottom=1
|
||||
frame.left=1
|
||||
frame.right=1
|
||||
|
||||
[LineEdit]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=lineedit
|
||||
interior.element=lineedit
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
|
||||
[ToolbarLineEdit]
|
||||
frame.element=lineedit
|
||||
interior.element=lineedit
|
||||
|
||||
[DropDownButton]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.element=arrow-down
|
||||
|
||||
[IndicatorArrow]
|
||||
indicator.element=arrow
|
||||
indicator.size=8
|
||||
|
||||
[ToolboxTab]
|
||||
inherits=PanelButtonCommand
|
||||
text.normal.color=#DEE3E5
|
||||
text.press.color=#dfdfdf
|
||||
text.focus.color=#DEE3E5
|
||||
|
||||
[Tab]
|
||||
inherits=PanelButtonCommand
|
||||
interior.element=tab
|
||||
text.margin.left=8
|
||||
text.margin.right=8
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
frame.element=tab
|
||||
indicator.element=tab
|
||||
indicator.size=22
|
||||
frame.top=8
|
||||
frame.bottom=8
|
||||
frame.left=8
|
||||
frame.right=8
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=white
|
||||
text.toggle.color=white
|
||||
frame.expansion=0
|
||||
text.bold=false
|
||||
|
||||
[TabFrame]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=tabframe
|
||||
interior.element=tabframe
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
|
||||
[TreeExpander]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.size=8
|
||||
indicator.element=tree
|
||||
|
||||
[HeaderSection]
|
||||
inherits=PanelButtonCommand
|
||||
interior.element=header
|
||||
frame.element=header
|
||||
frame.top=0
|
||||
frame.bottom=1
|
||||
frame.left=1
|
||||
frame.right=1
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=white
|
||||
text.toggle.color=white
|
||||
frame.expansion=0
|
||||
|
||||
[SizeGrip]
|
||||
indicator.element=resize-grip
|
||||
|
||||
[Toolbar]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.element=toolbar
|
||||
indicator.size=5
|
||||
text.margin=0
|
||||
interior.element=menubar
|
||||
frame.element=menubar
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=#dfdfdf
|
||||
text.toggle.color=white
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
frame.top=0
|
||||
frame.bottom=1
|
||||
frame.expansion=0
|
||||
|
||||
[Slider]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=slider
|
||||
focusFrame=true
|
||||
interior.element=slider
|
||||
frame.top=3
|
||||
frame.bottom=3
|
||||
frame.left=3
|
||||
frame.right=3
|
||||
|
||||
[SliderCursor]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
interior.element=slidercursor
|
||||
|
||||
[Progressbar]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=progress
|
||||
interior.element=progress
|
||||
text.margin=0
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=#dfdfdf
|
||||
text.toggle.color=#dfdfdf
|
||||
text.bold=false
|
||||
frame.expansion=8
|
||||
|
||||
[ProgressbarContents]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
frame.element=progress-pattern
|
||||
interior.element=progress-pattern
|
||||
|
||||
[ItemView]
|
||||
inherits=PanelButtonCommand
|
||||
text.margin=0
|
||||
frame.element=itemview
|
||||
interior.element=itemview
|
||||
frame.top=4
|
||||
frame.bottom=4
|
||||
frame.left=4
|
||||
frame.right=4
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
text.margin.left=8
|
||||
text.margin.right=8
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=#ffffff
|
||||
text.toggle.color=#ffffff
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
frame.expansion=0
|
||||
|
||||
[Splitter]
|
||||
interior.element=splitter
|
||||
frame=false
|
||||
indicator.size=0
|
||||
|
||||
[Scrollbar]
|
||||
inherits=PanelButtonCommand
|
||||
indicator.element=arrow
|
||||
indicator.size=12
|
||||
|
||||
[ScrollbarSlider]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=scrollbarslider
|
||||
interior=false
|
||||
frame.left=5
|
||||
frame.right=5
|
||||
frame.top=5
|
||||
frame.bottom=5
|
||||
indicator.element=grip
|
||||
indicator.size=12
|
||||
|
||||
[ScrollbarGroove]
|
||||
inherits=PanelButtonCommand
|
||||
interior=false
|
||||
frame=false
|
||||
|
||||
[Menu]
|
||||
inherits=PanelButtonCommand
|
||||
frame.top=10
|
||||
frame.bottom=10
|
||||
frame.left=10
|
||||
frame.right=10
|
||||
frame.element=menu
|
||||
interior.element=menu
|
||||
text.normal.color=#DEE3E5
|
||||
text.shadow=false
|
||||
frame.expansion=0
|
||||
text.bold=false
|
||||
|
||||
[MenuItem]
|
||||
inherits=PanelButtonCommand
|
||||
frame=true
|
||||
frame.element=menuitem
|
||||
interior.element=menuitem
|
||||
indicator.element=menuitem
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
text.margin.left=6
|
||||
text.margin.right=6
|
||||
frame.top=4
|
||||
frame.bottom=4
|
||||
frame.left=4
|
||||
frame.right=4
|
||||
text.bold=false
|
||||
frame.expansion=0
|
||||
|
||||
[MenuBar]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=menubar
|
||||
interior.element=menubar
|
||||
frame.bottom=0
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=#ffffff
|
||||
text.toggle.color=#ffffff
|
||||
frame.expansion=0
|
||||
text.bold=false
|
||||
|
||||
[MenuBarItem]
|
||||
inherits=PanelButtonCommand
|
||||
interior=true
|
||||
interior.element=menubaritem
|
||||
frame.element=menubaritem
|
||||
frame.top=2
|
||||
frame.bottom=2
|
||||
frame.left=2
|
||||
frame.right=2
|
||||
text.margin.left=4
|
||||
text.margin.right=4
|
||||
text.margin.top=0
|
||||
text.margin.bottom=0
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=#ffffff
|
||||
text.toggle.color=#ffffff
|
||||
text.bold=false
|
||||
min_width=+0.3font
|
||||
min_height=+0.3font
|
||||
frame.expansion=0
|
||||
|
||||
[TitleBar]
|
||||
inherits=PanelButtonCommand
|
||||
frame=false
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
interior.element=titlebar
|
||||
indicator.size=16
|
||||
indicator.element=mdi
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.bold=false
|
||||
text.italic=true
|
||||
frame.expansion=0
|
||||
|
||||
[ComboBox]
|
||||
inherits=PanelButtonCommand
|
||||
frame.element=combo
|
||||
interior.element=combo
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
text.margin.top=2
|
||||
text.margin.bottom=2
|
||||
text.margin.left=2
|
||||
text.margin.right=2
|
||||
text.focus.color=#DEE3E5
|
||||
text.press.color=#dfdfdf
|
||||
text.toggle.color=white
|
||||
|
||||
[GroupBox]
|
||||
inherits=GenericFrame
|
||||
frame=false
|
||||
text.shadow=0
|
||||
text.margin=0
|
||||
text.normal.color=#DEE3E5
|
||||
text.focus.color=#DEE3E5
|
||||
text.bold=false
|
||||
frame.expansion=0
|
||||
|
||||
[TabBarFrame]
|
||||
inherits=GenericFrame
|
||||
frame=false
|
||||
frame.element=tabBarFrame
|
||||
interior=false
|
||||
frame.top=0
|
||||
frame.bottom=0
|
||||
frame.left=0
|
||||
frame.right=0
|
||||
|
||||
[ToolTip]
|
||||
inherits=GenericFrame
|
||||
frame.top=6
|
||||
frame.bottom=6
|
||||
frame.left=6
|
||||
frame.right=6
|
||||
interior=true
|
||||
text.shadow=0
|
||||
text.margin=6
|
||||
interior.element=tooltip
|
||||
frame.element=tooltip
|
||||
frame.expansion=6
|
||||
|
||||
[StatusBar]
|
||||
inherits=GenericFrame
|
||||
frame=false
|
||||
interior=false
|
||||
|
||||
[Window]
|
||||
interior=true
|
||||
interior.element=window
|
||||
frame=true
|
||||
frame.element=window
|
||||
frame.bottom=10
|
||||
frame.top=10
|
||||
|
||||
text.disabled.color=#0F1416
|
||||
File diff suppressed because it is too large
Load Diff
|
After Width: | Height: | Size: 168 KiB |
@@ -0,0 +1,2 @@
|
||||
[General]
|
||||
theme=MaterialAdw
|
||||
@@ -0,0 +1,15 @@
|
||||
|
||||
# Starter Config
|
||||
|
||||
if suggestions don't work, first make sure
|
||||
you have TypeScript LSP working in your editor
|
||||
|
||||
if you do not want typechecking only suggestions
|
||||
|
||||
```json
|
||||
// tsconfig.json
|
||||
"checkJs": false
|
||||
```
|
||||
|
||||
types are symlinked to:
|
||||
/usr/share/com.github.Aylur.ags/types
|
||||
@@ -86,14 +86,20 @@ export const BluetoothIndicator = () => Widget.Stack({
|
||||
transition: 'slide_up_down',
|
||||
transitionDuration: userOptions.animations.durationSmall,
|
||||
children: {
|
||||
'false': Widget.Label({ className: 'txt-norm icon-material', label: 'bluetooth_disabled' }),
|
||||
'true': Widget.Label({ className: 'txt-norm icon-material', label: 'bluetooth' }),
|
||||
'disabled': Widget.Label({ className: 'txt-norm icon-material', label: 'bluetooth_disabled' }),
|
||||
'enabled': Widget.Label({ className: 'txt-norm icon-material', label: 'bluetooth' }),
|
||||
'connected': Widget.Label({ className: 'txt-norm icon-material', label: 'bluetooth_connected' }),
|
||||
},
|
||||
setup: (self) => self
|
||||
.hook(Bluetooth, stack => {
|
||||
stack.shown = String(Bluetooth.enabled);
|
||||
})
|
||||
,
|
||||
setup: (self) =>
|
||||
self.hook(Bluetooth, (stack) => {
|
||||
if (!Bluetooth.enabled) {
|
||||
stack.shown = 'disabled';
|
||||
} else if (Bluetooth.connected_devices.length === 0) {
|
||||
stack.shown = 'enabled';
|
||||
} else if (Bluetooth.connected_devices.length > 0) {
|
||||
stack.shown = 'connected';
|
||||
}
|
||||
}),
|
||||
});
|
||||
|
||||
const BluetoothDevices = () => Widget.Box({
|
||||
@@ -158,8 +164,11 @@ const NetworkWifiIndicator = () => Widget.Stack({
|
||||
transition: 'slide_up_down',
|
||||
transitionDuration: userOptions.animations.durationSmall,
|
||||
children: {
|
||||
'disabled': Widget.Label({ className: 'txt-norm icon-material', label: 'wifi_off' }),
|
||||
'disconnected': Widget.Label({ className: 'txt-norm icon-material', label: 'signal_wifi_off' }),
|
||||
'disabled': Widget.Label({ className: 'txt-norm icon-material', label: 'signal_wifi_off' }),
|
||||
'disconnected': Widget.Label({
|
||||
className: 'txt-norm icon-material',
|
||||
label: 'signal_wifi_statusbar_not_connected',
|
||||
}),
|
||||
'connecting': Widget.Label({ className: 'txt-norm icon-material', label: 'settings_ethernet' }),
|
||||
'0': Widget.Label({ className: 'txt-norm icon-material', label: 'signal_wifi_0_bar' }),
|
||||
'1': Widget.Label({ className: 'txt-norm icon-material', label: 'network_wifi_1_bar' }),
|
||||
@@ -171,10 +180,11 @@ const NetworkWifiIndicator = () => Widget.Stack({
|
||||
if (!Network.wifi) {
|
||||
return;
|
||||
}
|
||||
if (Network.wifi.internet == 'connected') {
|
||||
if (!Network.wifi.enabled) {
|
||||
stack.shown = 'disabled';
|
||||
} else if (Network.wifi.internet == 'connected') {
|
||||
stack.shown = String(Math.ceil(Network.wifi.strength / 25));
|
||||
}
|
||||
else if (["disconnected", "connecting"].includes(Network.wifi.internet)) {
|
||||
} else if (['disconnected', 'connecting'].includes(Network.wifi.internet)) {
|
||||
stack.shown = Network.wifi.internet;
|
||||
}
|
||||
}),
|
||||
|
||||
@@ -60,7 +60,10 @@ export default (overviewMonitor = 0) => {
|
||||
else if (x < 0) { w = x + w; x = 0; }
|
||||
if (y + h <= 0) x += (Math.floor(y / monitors[monitor].height) * monitors[monitor].height);
|
||||
else if (y < 0) { h = y + h; y = 0; }
|
||||
<<<<<<< HEAD
|
||||
// Prevents throwing an error when multiple monitors are plugged in but only one is enabled (#1047)
|
||||
=======
|
||||
>>>>>>> 1996008 (heda fix)
|
||||
if (monitors.length - 1 < monitor) {
|
||||
monitor = monitors.length - 1;
|
||||
}
|
||||
|
||||
@@ -1,130 +1,307 @@
|
||||
const { GLib } = imports.gi;
|
||||
import Hyprland from 'resource:///com/github/Aylur/ags/service/hyprland.js';
|
||||
import Widget from 'resource:///com/github/Aylur/ags/widget.js';
|
||||
import * as Utils from 'resource:///com/github/Aylur/ags/utils.js';
|
||||
import Hyprland from "resource:///com/github/Aylur/ags/service/hyprland.js";
|
||||
import Widget from "resource:///com/github/Aylur/ags/widget.js";
|
||||
import * as Utils from "resource:///com/github/Aylur/ags/utils.js";
|
||||
const { Box, Button, Icon, Label, Scrollable, Slider, Stack } = Widget;
|
||||
const { execAsync, exec } = Utils;
|
||||
import { MaterialIcon } from '../../.commonwidgets/materialicon.js';
|
||||
import { setupCursorHover } from '../../.widgetutils/cursorhover.js';
|
||||
import { ConfigGap, ConfigSpinButton, ConfigToggle } from '../../.commonwidgets/configwidgets.js';
|
||||
import { MaterialIcon } from "../../.commonwidgets/materialicon.js";
|
||||
import { setupCursorHover } from "../../.widgetutils/cursorhover.js";
|
||||
import {
|
||||
ConfigGap,
|
||||
ConfigSpinButton,
|
||||
ConfigToggle,
|
||||
} from "../../.commonwidgets/configwidgets.js";
|
||||
|
||||
const HyprlandToggle = ({ icon, name, desc = null, option, enableValue = 1, disableValue = 0, extraOnChange = () => { } }) => ConfigToggle({
|
||||
// Hyprland config file path
|
||||
const configFile = GLib.get_home_dir() + "/.config/hypr/hyprland/HyprAGS.conf";
|
||||
|
||||
// Ensure the config file exists
|
||||
function ensureConfigFileExists() {
|
||||
if (!GLib.file_test(configFile, GLib.FileTest.EXISTS)) {
|
||||
execAsync(["touch", configFile]).catch((err) =>
|
||||
logError("Error creating config file", err),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// Helper to update the config file
|
||||
function updateConfig(option, value) {
|
||||
execAsync([
|
||||
"bash",
|
||||
"-c",
|
||||
`
|
||||
if grep -q "^${option} =" ${configFile}; then
|
||||
sed -i "s/^${option} = .*/${option} = ${value}/" ${configFile}
|
||||
else
|
||||
echo "${option} = ${value}" >> ${configFile}
|
||||
fi
|
||||
`,
|
||||
]).catch((err) => logError("Failed to update config", err));
|
||||
}
|
||||
|
||||
// Toggles for Hyprland settings
|
||||
const HyprlandToggle = ({
|
||||
icon,
|
||||
name,
|
||||
desc = null,
|
||||
option,
|
||||
enableValue = 1,
|
||||
disableValue = 0,
|
||||
extraOnChange = () => {},
|
||||
}) =>
|
||||
ConfigToggle({
|
||||
icon: icon,
|
||||
name: name,
|
||||
desc: desc,
|
||||
initValue: JSON.parse(exec(`hyprctl getoption -j ${option}`))["int"] != 0,
|
||||
onChange: (self, newValue) => {
|
||||
execAsync(['hyprctl', 'keyword', option, `${newValue ? enableValue : disableValue}`]).catch(print);
|
||||
extraOnChange(self, newValue);
|
||||
}
|
||||
});
|
||||
execAsync([
|
||||
"hyprctl",
|
||||
"keyword",
|
||||
option,
|
||||
`${newValue ? enableValue : disableValue}`,
|
||||
])
|
||||
.then(() => {
|
||||
updateConfig(option, newValue ? enableValue : disableValue);
|
||||
extraOnChange(self, newValue);
|
||||
})
|
||||
.catch((err) => logError("Error applying change", err));
|
||||
},
|
||||
});
|
||||
|
||||
const HyprlandSpinButton = ({ icon, name, desc = null, option, ...rest }) => ConfigSpinButton({
|
||||
// SpinButton for numeric settings
|
||||
const HyprlandSpinButton = ({ icon, name, desc = null, option, ...rest }) =>
|
||||
ConfigSpinButton({
|
||||
icon: icon,
|
||||
name: name,
|
||||
desc: desc,
|
||||
initValue: Number(JSON.parse(exec(`hyprctl getoption -j ${option}`))["int"]),
|
||||
initValue: Number(
|
||||
JSON.parse(exec(`hyprctl getoption -j ${option}`))["int"],
|
||||
),
|
||||
onChange: (self, newValue) => {
|
||||
execAsync(['hyprctl', 'keyword', option, `${newValue}`]).catch(print);
|
||||
execAsync(["hyprctl", "keyword", option, `${newValue}`])
|
||||
.then(() => {
|
||||
updateConfig(option, newValue);
|
||||
})
|
||||
.catch((err) => logError("Error applying change", err));
|
||||
},
|
||||
...rest,
|
||||
});
|
||||
});
|
||||
|
||||
const Subcategory = (children) => Box({
|
||||
className: 'margin-left-20',
|
||||
const Subcategory = (children) =>
|
||||
Box({
|
||||
className: "margin-left-20",
|
||||
vertical: true,
|
||||
children: children,
|
||||
})
|
||||
});
|
||||
|
||||
export default (props) => {
|
||||
const ConfigSection = ({ name, children }) => Box({
|
||||
vertical: true,
|
||||
className: 'spacing-v-5',
|
||||
children: [
|
||||
Label({
|
||||
hpack: 'center',
|
||||
className: 'txt txt-large margin-left-10',
|
||||
label: name,
|
||||
const ConfigSection = ({ name, children }) =>
|
||||
Box({
|
||||
vertical: true,
|
||||
className: "spacing-v-5",
|
||||
children: [
|
||||
Label({
|
||||
hpack: "center",
|
||||
className: "txt txt-large margin-left-10",
|
||||
label: name,
|
||||
}),
|
||||
Box({
|
||||
className: "margin-left-10 margin-right-10",
|
||||
vertical: true,
|
||||
children: children,
|
||||
}),
|
||||
],
|
||||
});
|
||||
|
||||
const mainContent = Scrollable({
|
||||
vexpand: true,
|
||||
child: Box({
|
||||
vertical: true,
|
||||
className: "spacing-v-10",
|
||||
children: [
|
||||
// Roundings Section
|
||||
ConfigSection({
|
||||
name: getString("Window"),
|
||||
children: [
|
||||
HyprlandSpinButton({
|
||||
icon: "crop_square",
|
||||
name: getString("Window Roundings"),
|
||||
desc: getString(
|
||||
"[Hyprland]\nAdjust the window corner roundings.",
|
||||
),
|
||||
option: "decoration:rounding",
|
||||
minValue: 0,
|
||||
maxValue: 50,
|
||||
step: 1,
|
||||
onChange: (self, newValue) => {
|
||||
updateConfig("decoration:rounding", newValue);
|
||||
},
|
||||
}),
|
||||
Box({
|
||||
className: 'margin-left-10 margin-right-10',
|
||||
vertical: true,
|
||||
children: children,
|
||||
})
|
||||
]
|
||||
})
|
||||
const mainContent = Scrollable({
|
||||
vexpand: true,
|
||||
child: Box({
|
||||
vertical: true,
|
||||
className: 'spacing-v-10',
|
||||
children: [
|
||||
ConfigSection({
|
||||
name: getString('Effects'), children: [
|
||||
ConfigToggle({
|
||||
icon: 'border_clear',
|
||||
name: getString('Transparency'),
|
||||
desc: getString('[AGS]\nMake shell elements transparent\nBlur is also recommended if you enable this'),
|
||||
initValue: exec(`bash -c "sed -n \'2p\' ${GLib.get_user_state_dir()}/ags/user/colormode.txt"`) == "transparent",
|
||||
onChange: (self, newValue) => {
|
||||
const transparency = newValue == 0 ? "opaque" : "transparent";
|
||||
console.log(transparency);
|
||||
execAsync([`bash`, `-c`, `mkdir -p ${GLib.get_user_state_dir()}/ags/user && sed -i "2s/.*/${transparency}/" ${GLib.get_user_state_dir()}/ags/user/colormode.txt`])
|
||||
.then(execAsync(['bash', '-c', `${App.configDir}/scripts/color_generation/switchcolor.sh`]))
|
||||
.catch(print);
|
||||
},
|
||||
}),
|
||||
HyprlandToggle({ icon: 'blur_on', name: getString('Blur'), desc: getString("[Hyprland]\nEnable blur on transparent elements\nDoesn't affect performance/power consumption unless you have transparent windows."), option: "decoration:blur:enabled" }),
|
||||
Subcategory([
|
||||
HyprlandToggle({ icon: 'stack_off', name: getString('X-ray'), desc: getString("[Hyprland]\nMake everything behind a window/layer except the wallpaper not rendered on its blurred surface\nRecommended to improve performance (if you don't abuse transparency/blur) "), option: "decoration:blur:xray" }),
|
||||
HyprlandSpinButton({ icon: 'target', name: getString('Size'), desc: getString('[Hyprland]\nAdjust the blur radius. Generally doesn\'t affect performance\nHigher = more color spread'), option: 'decoration:blur:size', minValue: 1, maxValue: 1000 }),
|
||||
HyprlandSpinButton({ icon: 'repeat', name: getString('Passes'), desc: getString('[Hyprland] Adjust the number of runs of the blur algorithm\nMore passes = more spread and power consumption\n4 is recommended\n2- would look weird and 6+ would look lame.'), option: 'decoration:blur:passes', minValue: 1, maxValue: 10 }),
|
||||
]),
|
||||
ConfigGap({}),
|
||||
HyprlandToggle({
|
||||
icon: 'animation', name: getString('Animations'), desc: getString('[Hyprland] [GTK]\nEnable animations'), option: 'animations:enabled',
|
||||
extraOnChange: (self, newValue) => execAsync(['gsettings', 'set', 'org.gnome.desktop.interface', 'enable-animations', `${newValue}`])
|
||||
}),
|
||||
Subcategory([
|
||||
ConfigSpinButton({
|
||||
icon: 'clear_all',
|
||||
name: getString('Choreography delay'),
|
||||
desc: getString('In milliseconds, the delay between animations of a series'),
|
||||
initValue: userOptions.animations.choreographyDelay,
|
||||
step: 10, minValue: 0, maxValue: 1000,
|
||||
onChange: (self, newValue) => {
|
||||
userOptions.animations.choreographyDelay = newValue
|
||||
},
|
||||
})
|
||||
]),
|
||||
]
|
||||
}),
|
||||
ConfigSection({
|
||||
name: getString('Developer'), children: [
|
||||
HyprlandToggle({ icon: 'speed', name: getString('Show FPS'), desc: getString("[Hyprland]\nShow FPS overlay on top-left corner"), option: "debug:overlay" }),
|
||||
HyprlandToggle({ icon: 'sort', name: getString('Log to stdout'), desc: getString("[Hyprland]\nPrint LOG, ERR, WARN, etc. messages to the console"), option: "debug:enable_stdout_logs" }),
|
||||
HyprlandToggle({ icon: 'motion_sensor_active', name: getString('Damage tracking'), desc: getString("[Hyprland]\nEnable damage tracking\nGenerally, leave it on.\nTurn off only when a shader doesn't work"), option: "debug:damage_tracking", enableValue: 2 }),
|
||||
HyprlandToggle({ icon: 'destruction', name: getString('Damage blink'), desc: getString("[Hyprland] [Epilepsy warning!]\nShow screen damage flashes"), option: "debug:damage_blink" }),
|
||||
]
|
||||
}),
|
||||
]
|
||||
})
|
||||
});
|
||||
const footNote = Box({
|
||||
homogeneous: true,
|
||||
children: [Label({
|
||||
hpack: 'center',
|
||||
className: 'txt txt-italic txt-subtext margin-5',
|
||||
label: getString('Not all changes are saved'),
|
||||
})]
|
||||
})
|
||||
return Box({
|
||||
...props,
|
||||
className: 'spacing-v-5',
|
||||
vertical: true,
|
||||
children: [
|
||||
mainContent,
|
||||
footNote,
|
||||
]
|
||||
});
|
||||
}
|
||||
],
|
||||
}),
|
||||
// Effects Section
|
||||
ConfigSection({
|
||||
name: getString("Effects"),
|
||||
children: [
|
||||
ConfigToggle({
|
||||
icon: "border_clear",
|
||||
name: getString("Transparency"),
|
||||
desc: getString(
|
||||
"[AGS]\nMake shell elements transparent\nBlur is also recommended if you enable this",
|
||||
),
|
||||
initValue:
|
||||
exec(
|
||||
`bash -c "sed -n '2p' ${GLib.get_user_state_dir()}/ags/user/colormode.txt"`,
|
||||
) == "transparent",
|
||||
onChange: (self, newValue) => {
|
||||
const transparency = newValue == 0 ? "opaque" : "transparent";
|
||||
execAsync([
|
||||
`bash`,
|
||||
`-c`,
|
||||
`mkdir -p ${GLib.get_user_state_dir()}/ags/user && sed -i "2s/.*/${transparency}/" ${GLib.get_user_state_dir()}/ags/user/colormode.txt`,
|
||||
])
|
||||
.then(
|
||||
execAsync([
|
||||
"bash",
|
||||
"-c",
|
||||
`${App.configDir}/scripts/color_generation/switchcolor.sh`,
|
||||
]),
|
||||
)
|
||||
.then(() => {
|
||||
if (newValue) {
|
||||
updateConfig("decoration:active_opacity", 0.85);
|
||||
updateConfig("decoration:inactive_opacity", 0.85);
|
||||
} else {
|
||||
updateConfig("decoration:active_opacity", 1);
|
||||
updateConfig("decoration:inactive_opacity", 1);
|
||||
}
|
||||
})
|
||||
.catch(print);
|
||||
},
|
||||
}),
|
||||
HyprlandToggle({
|
||||
icon: "blur_on",
|
||||
name: getString("Blur"),
|
||||
desc: getString(
|
||||
"[Hyprland]\nEnable blur on transparent elements.",
|
||||
),
|
||||
option: "decoration:blur:enabled",
|
||||
}),
|
||||
Subcategory([
|
||||
HyprlandSpinButton({
|
||||
icon: "target",
|
||||
name: getString("Blur Size"),
|
||||
desc: getString("[Hyprland]\nAdjust the blur radius."),
|
||||
option: "decoration:blur:size",
|
||||
minValue: 1,
|
||||
maxValue: 1000,
|
||||
}),
|
||||
HyprlandSpinButton({
|
||||
icon: "repeat",
|
||||
name: getString("Blur Passes"),
|
||||
desc: getString(
|
||||
"[Hyprland]\nAdjust the number of passes for blur.",
|
||||
),
|
||||
option: "decoration:blur:passes",
|
||||
minValue: 1,
|
||||
maxValue: 10,
|
||||
}),
|
||||
]),
|
||||
HyprlandToggle({
|
||||
icon: "auto_fix_high",
|
||||
name: getString("Blur Special"),
|
||||
desc: getString("[Hyprland]\nEnable special blur effects."),
|
||||
option: "decoration:blur:special",
|
||||
}),
|
||||
ConfigGap({}),
|
||||
HyprlandToggle({
|
||||
icon: "animation",
|
||||
name: getString("Animations"),
|
||||
desc: getString("[Hyprland] [GTK]\nEnable animations"),
|
||||
option: "animations:enabled",
|
||||
extraOnChange: (self, newValue) =>
|
||||
execAsync([
|
||||
"gsettings",
|
||||
"set",
|
||||
"org.gnome.desktop.interface",
|
||||
"enable-animations",
|
||||
`${newValue}`,
|
||||
]),
|
||||
}),
|
||||
Subcategory([
|
||||
ConfigSpinButton({
|
||||
icon: "clear_all",
|
||||
name: getString("Choreography delay"),
|
||||
desc: getString(
|
||||
"In milliseconds, the delay between animations of a series",
|
||||
),
|
||||
initValue: userOptions.animations.choreographyDelay,
|
||||
step: 10,
|
||||
minValue: 0,
|
||||
maxValue: 1000,
|
||||
onChange: (self, newValue) => {
|
||||
userOptions.animations.choreographyDelay = newValue;
|
||||
},
|
||||
}),
|
||||
]),
|
||||
],
|
||||
}),
|
||||
// Developer Section
|
||||
ConfigSection({
|
||||
name: getString("Developer"),
|
||||
children: [
|
||||
HyprlandToggle({
|
||||
icon: "speed",
|
||||
name: getString("Show FPS"),
|
||||
desc: getString(
|
||||
"[Hyprland]\nShow FPS overlay on top-left corner.",
|
||||
),
|
||||
option: "debug:overlay",
|
||||
}),
|
||||
HyprlandToggle({
|
||||
icon: "sort",
|
||||
name: getString("Log to stdout"),
|
||||
desc: getString("[Hyprland]\nPrint log messages to console."),
|
||||
option: "debug:enable_stdout_logs",
|
||||
}),
|
||||
HyprlandToggle({
|
||||
icon: "motion_sensor_active",
|
||||
name: getString("Damage Tracking"),
|
||||
desc: getString("[Hyprland]\nEnable damage tracking."),
|
||||
option: "debug:damage_tracking",
|
||||
enableValue: 2,
|
||||
}),
|
||||
HyprlandToggle({
|
||||
icon: "destruction",
|
||||
name: getString("Damage Blink"),
|
||||
desc: getString("[Hyprland]\nShow screen damage flashes."),
|
||||
option: "debug:damage_blink",
|
||||
}),
|
||||
],
|
||||
}),
|
||||
],
|
||||
}),
|
||||
});
|
||||
|
||||
const footNote = Box({
|
||||
homogeneous: true,
|
||||
children: [
|
||||
Label({
|
||||
hpack: "center",
|
||||
className: "txt txt-italic txt-subtext margin-5",
|
||||
label: getString("Not all changes are saved"),
|
||||
}),
|
||||
],
|
||||
});
|
||||
|
||||
return Box({
|
||||
...props,
|
||||
className: "spacing-v-5",
|
||||
vertical: true,
|
||||
children: [mainContent, footNote],
|
||||
});
|
||||
};
|
||||
|
||||
// Ensure the config file exists before applying changes
|
||||
ensureConfigFileExists();
|
||||
|
||||
@@ -10,7 +10,7 @@ STATE_DIR="$XDG_STATE_HOME/ags"
|
||||
term_alpha=100 #Set this to < 100 make all your terminals transparent
|
||||
# sleep 0 # idk i wanted some delay or colors dont get applied properly
|
||||
if [ ! -d "$CACHE_DIR"/user/generated ]; then
|
||||
mkdir -p "$CACHE_DIR"/user/generated
|
||||
mkdir -p "$CACHE_DIR"/user/generated
|
||||
fi
|
||||
cd "$CONFIG_DIR" || exit
|
||||
|
||||
@@ -19,9 +19,9 @@ colorstrings=''
|
||||
colorlist=()
|
||||
colorvalues=()
|
||||
|
||||
# wallpath=$(swww query | head -1 | awk -F 'image: ' '{print $2}')
|
||||
# wallpath_png="$CACHE_DIR/user/generated/hypr/lockscreen.png"
|
||||
# convert "$wallpath" "$wallpath_png"
|
||||
wallpath=$(swww query | head -1 | awk -F 'image: ' '{print $2}')
|
||||
wallpath_png="$CACHE_DIR/user/generated/hypr/lockscreen.png"
|
||||
convert "$wallpath" "$wallpath_png"
|
||||
# wallpath_png=$(echo "$wallpath_png" | sed 's/\//\\\//g')
|
||||
# wallpath_png=$(sed 's/\//\\\\\//g' <<< "$wallpath_png")
|
||||
|
||||
@@ -38,145 +38,161 @@ transparentize() {
|
||||
}
|
||||
|
||||
get_light_dark() {
|
||||
lightdark=""
|
||||
if [ ! -f "$STATE_DIR/user/colormode.txt" ]; then
|
||||
echo "" > "$STATE_DIR/user/colormode.txt"
|
||||
else
|
||||
lightdark=$(sed -n '1p' "$STATE_DIR/user/colormode.txt")
|
||||
fi
|
||||
echo "$lightdark"
|
||||
lightdark=""
|
||||
if [ ! -f "$STATE_DIR/user/colormode.txt" ]; then
|
||||
echo "" >"$STATE_DIR/user/colormode.txt"
|
||||
else
|
||||
lightdark=$(sed -n '1p' "$STATE_DIR/user/colormode.txt")
|
||||
fi
|
||||
echo "$lightdark"
|
||||
}
|
||||
|
||||
apply_fuzzel() {
|
||||
# Check if scripts/templates/fuzzel/fuzzel.ini exists
|
||||
if [ ! -f "scripts/templates/fuzzel/fuzzel.ini" ]; then
|
||||
echo "Template file not found for Fuzzel. Skipping that."
|
||||
return
|
||||
fi
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/fuzzel
|
||||
cp "scripts/templates/fuzzel/fuzzel.ini" "$CACHE_DIR"/user/generated/fuzzel/fuzzel.ini
|
||||
# Apply colors
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/{{ ${colorlist[$i]} }}/${colorvalues[$i]#\#}/g" "$CACHE_DIR"/user/generated/fuzzel/fuzzel.ini
|
||||
done
|
||||
# Check if scripts/templates/fuzzel/fuzzel.ini exists
|
||||
if [ ! -f "scripts/templates/fuzzel/fuzzel.ini" ]; then
|
||||
echo "Template file not found for Fuzzel. Skipping that."
|
||||
return
|
||||
fi
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/fuzzel
|
||||
cp "scripts/templates/fuzzel/fuzzel.ini" "$CACHE_DIR"/user/generated/fuzzel/fuzzel.ini
|
||||
# Apply colors
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/{{ ${colorlist[$i]} }}/${colorvalues[$i]#\#}/g" "$CACHE_DIR"/user/generated/fuzzel/fuzzel.ini
|
||||
done
|
||||
|
||||
cp "$CACHE_DIR"/user/generated/fuzzel/fuzzel.ini "$XDG_CONFIG_HOME"/fuzzel/fuzzel.ini
|
||||
cp "$CACHE_DIR"/user/generated/fuzzel/fuzzel.ini "$XDG_CONFIG_HOME"/fuzzel/fuzzel.ini
|
||||
}
|
||||
|
||||
apply_term() {
|
||||
# Check if terminal escape sequence template exists
|
||||
if [ ! -f "scripts/templates/terminal/sequences.txt" ]; then
|
||||
echo "Template file not found for Terminal. Skipping that."
|
||||
return
|
||||
# Check if terminal escape sequence template exists
|
||||
if [ ! -f "scripts/templates/terminal/sequences.txt" ]; then
|
||||
echo "Template file not found for Terminal. Skipping that."
|
||||
return
|
||||
fi
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/terminal
|
||||
cp "scripts/templates/terminal/sequences.txt" "$CACHE_DIR"/user/generated/terminal/sequences.txt
|
||||
# Apply colors
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/${colorlist[$i]} #/${colorvalues[$i]#\#}/g" "$CACHE_DIR"/user/generated/terminal/sequences.txt
|
||||
done
|
||||
|
||||
sed -i "s/\$alpha/$term_alpha/g" "$CACHE_DIR/user/generated/terminal/sequences.txt"
|
||||
|
||||
for file in /dev/pts/*; do
|
||||
if [[ $file =~ ^/dev/pts/[0-9]+$ ]]; then
|
||||
cat "$CACHE_DIR"/user/generated/terminal/sequences.txt >"$file"
|
||||
fi
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/terminal
|
||||
cp "scripts/templates/terminal/sequences.txt" "$CACHE_DIR"/user/generated/terminal/sequences.txt
|
||||
# Apply colors
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/${colorlist[$i]} #/${colorvalues[$i]#\#}/g" "$CACHE_DIR"/user/generated/terminal/sequences.txt
|
||||
done
|
||||
|
||||
sed -i "s/\$alpha/$term_alpha/g" "$CACHE_DIR/user/generated/terminal/sequences.txt"
|
||||
|
||||
for file in /dev/pts/*; do
|
||||
if [[ $file =~ ^/dev/pts/[0-9]+$ ]]; then
|
||||
cat "$CACHE_DIR"/user/generated/terminal/sequences.txt > "$file"
|
||||
fi
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
apply_hyprland() {
|
||||
# Check if scripts/templates/hypr/hyprland/colors.conf exists
|
||||
if [ ! -f "scripts/templates/hypr/hyprland/colors.conf" ]; then
|
||||
echo "Template file not found for Hyprland colors. Skipping that."
|
||||
return
|
||||
fi
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/hypr/hyprland
|
||||
cp "scripts/templates/hypr/hyprland/colors.conf" "$CACHE_DIR"/user/generated/hypr/hyprland/colors.conf
|
||||
# Apply colors
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/{{ ${colorlist[$i]} }}/${colorvalues[$i]#\#}/g" "$CACHE_DIR"/user/generated/hypr/hyprland/colors.conf
|
||||
done
|
||||
# Check if scripts/templates/hypr/hyprland/colors.conf exists
|
||||
if [ ! -f "scripts/templates/hypr/hyprland/colors.conf" ]; then
|
||||
echo "Template file not found for Hyprland colors. Skipping that."
|
||||
return
|
||||
fi
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/hypr/hyprland
|
||||
cp "scripts/templates/hypr/hyprland/colors.conf" "$CACHE_DIR"/user/generated/hypr/hyprland/colors.conf
|
||||
# Apply colors
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/{{ ${colorlist[$i]} }}/${colorvalues[$i]#\#}/g" "$CACHE_DIR"/user/generated/hypr/hyprland/colors.conf
|
||||
done
|
||||
|
||||
cp "$CACHE_DIR"/user/generated/hypr/hyprland/colors.conf "$XDG_CONFIG_HOME"/hypr/hyprland/colors.conf
|
||||
cp "$CACHE_DIR"/user/generated/hypr/hyprland/colors.conf "$XDG_CONFIG_HOME"/hypr/hyprland/colors.conf
|
||||
}
|
||||
|
||||
apply_hyprlock() {
|
||||
# Check if scripts/templates/hypr/hyprlock.conf exists
|
||||
if [ ! -f "scripts/templates/hypr/hyprlock.conf" ]; then
|
||||
echo "Template file not found for hyprlock. Skipping that."
|
||||
return
|
||||
fi
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/hypr/
|
||||
cp "scripts/templates/hypr/hyprlock.conf" "$CACHE_DIR"/user/generated/hypr/hyprlock.conf
|
||||
# Apply colors
|
||||
# sed -i "s/{{ SWWW_WALL }}/${wallpath_png}/g" "$CACHE_DIR"/user/generated/hypr/hyprlock.conf
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/{{ ${colorlist[$i]} }}/${colorvalues[$i]#\#}/g" "$CACHE_DIR"/user/generated/hypr/hyprlock.conf
|
||||
done
|
||||
# Check if scripts/templates/hypr/hyprlock.conf exists
|
||||
if [ ! -f "scripts/templates/hypr/hyprlock.conf" ]; then
|
||||
echo "Template file not found for hyprlock. Skipping that."
|
||||
return
|
||||
fi
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/hypr/
|
||||
cp "scripts/templates/hypr/hyprlock.conf" "$CACHE_DIR"/user/generated/hypr/hyprlock.conf
|
||||
# Apply colors
|
||||
sed -i "s|path = \$path|path = $wallpath_png|" "$CACHE_DIR"/user/generated/hypr/hyprlock.conf
|
||||
|
||||
cp "$CACHE_DIR"/user/generated/hypr/hyprlock.conf "$XDG_CONFIG_HOME"/hypr/hyprlock.conf
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/{{ ${colorlist[$i]} }}/${colorvalues[$i]#\#}/g" "$CACHE_DIR"/user/generated/hypr/hyprlock.conf
|
||||
done
|
||||
|
||||
cp "$CACHE_DIR"/user/generated/hypr/hyprlock.conf "$XDG_CONFIG_HOME"/hypr/hyprlock.conf
|
||||
}
|
||||
|
||||
apply_lightdark() {
|
||||
lightdark=$(get_light_dark)
|
||||
if [ "$lightdark" = "light" ]; then
|
||||
gsettings set org.gnome.desktop.interface color-scheme 'prefer-light'
|
||||
else
|
||||
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
|
||||
fi
|
||||
lightdark=$(get_light_dark)
|
||||
if [ "$lightdark" = "light" ]; then
|
||||
gsettings set org.gnome.desktop.interface color-scheme 'prefer-light'
|
||||
else
|
||||
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
|
||||
fi
|
||||
}
|
||||
|
||||
apply_gtk() { # Using gradience-cli
|
||||
usegradience=$(sed -n '4p' "$STATE_DIR/user/colormode.txt")
|
||||
if [[ "$usegradience" = "nogradience" ]]; then
|
||||
rm "$XDG_CONFIG_HOME/gtk-3.0/gtk.css"
|
||||
rm "$XDG_CONFIG_HOME/gtk-4.0/gtk.css"
|
||||
return
|
||||
fi
|
||||
usegradience=$(sed -n '4p' "$STATE_DIR/user/colormode.txt")
|
||||
if [[ "$usegradience" = "nogradience" ]]; then
|
||||
rm "$XDG_CONFIG_HOME/gtk-3.0/gtk.css"
|
||||
rm "$XDG_CONFIG_HOME/gtk-4.0/gtk.css"
|
||||
return
|
||||
fi
|
||||
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/gradience
|
||||
cp "scripts/templates/gradience/preset.json" "$CACHE_DIR"/user/generated/gradience/preset.json
|
||||
# Copy template
|
||||
mkdir -p "$CACHE_DIR"/user/generated/gradience
|
||||
cp "scripts/templates/gradience/preset.json" "$CACHE_DIR"/user/generated/gradience/preset.json
|
||||
|
||||
# Apply colors
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/{{ ${colorlist[$i]} }}/${colorvalues[$i]}/g" "$CACHE_DIR"/user/generated/gradience/preset.json
|
||||
done
|
||||
# Apply colors
|
||||
for i in "${!colorlist[@]}"; do
|
||||
sed -i "s/{{ ${colorlist[$i]} }}/${colorvalues[$i]}/g" "$CACHE_DIR"/user/generated/gradience/preset.json
|
||||
done
|
||||
|
||||
mkdir -p "$XDG_CONFIG_HOME/presets" # create gradience presets folder
|
||||
gradience-cli apply -p "$CACHE_DIR"/user/generated/gradience/preset.json --gtk both
|
||||
mkdir -p "$XDG_CONFIG_HOME/presets" # create gradience presets folder
|
||||
gradience-cli apply -p "$CACHE_DIR"/user/generated/gradience/preset.json --gtk both
|
||||
|
||||
# And set GTK theme manually as Gradience defaults to light adw-gtk3
|
||||
# (which is unreadable when broken when you use dark mode)
|
||||
lightdark=$(get_light_dark)
|
||||
if [ "$lightdark" = "light" ]; then
|
||||
gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3'
|
||||
else
|
||||
gsettings set org.gnome.desktop.interface gtk-theme adw-gtk3-dark
|
||||
fi
|
||||
# And set GTK theme manually as Gradience defaults to light adw-gtk3
|
||||
# (which is unreadable when broken when you use dark mode)
|
||||
lightdark=$(get_light_dark)
|
||||
if [ "$lightdark" = "light" ]; then
|
||||
gsettings set org.gnome.desktop.interface gtk-theme 'adw-gtk3'
|
||||
else
|
||||
gsettings set org.gnome.desktop.interface gtk-theme adw-gtk3-dark
|
||||
fi
|
||||
}
|
||||
|
||||
apply_ags() {
|
||||
ags run-js "handleStyles(false);"
|
||||
ags run-js 'openColorScheme.value = true; Utils.timeout(2000, () => openColorScheme.value = false);'
|
||||
ags run-js "handleStyles(false);"
|
||||
ags run-js 'openColorScheme.value = true; Utils.timeout(2000, () => openColorScheme.value = false);'
|
||||
}
|
||||
|
||||
apply_pywal() {
|
||||
# generate pywal colors
|
||||
mkdir -p "$CACHE_DIR"/user/generated/pywal
|
||||
python "$CONFIG_DIR/scripts/color_generation/gen_materialwal.py" # generate wal colors
|
||||
wal -n -f "$CACHE_DIR/user/generated/pywal/pywal.json" --cols16 # apply pywal
|
||||
# apply other scripts
|
||||
sh "$XDG_CONFIG_HOME/pywal/gen-pywal"
|
||||
}
|
||||
|
||||
colornames=$(cat $STATE_DIR/scss/_material.scss | cut -d: -f1)
|
||||
colorstrings=$(cat $STATE_DIR/scss/_material.scss | cut -d: -f2 | cut -d ' ' -f2 | cut -d ";" -f1)
|
||||
apply_qt() {
|
||||
sh "$CONFIG_DIR/scripts/kvantum/materialQT.sh" # generate kvantum theme
|
||||
python "$CONFIG_DIR/scripts/kvantum/changeAwdColors.py" # apply config colors
|
||||
}
|
||||
|
||||
colornames=$(cat "$STATE_DIR"/scss/_material.scss | cut -d: -f1)
|
||||
colorstrings=$(cat "$STATE_DIR"/scss/_material.scss | cut -d: -f2 | cut -d ' ' -f2 | cut -d ";" -f1)
|
||||
IFS=$'\n'
|
||||
colorlist=( $colornames ) # Array of color names
|
||||
colorvalues=( $colorstrings ) # Array of color values
|
||||
colorlist=($colornames) # Array of color names
|
||||
colorvalues=($colorstrings) # Array of color values
|
||||
|
||||
apply_ags &
|
||||
apply_hyprland &
|
||||
apply_hyprlock &
|
||||
apply_lightdark &
|
||||
apply_gtk &
|
||||
apply_qt &
|
||||
apply_pywal &
|
||||
apply_fuzzel &
|
||||
apply_term &
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
import json
|
||||
import re
|
||||
import os
|
||||
import argparse
|
||||
|
||||
def parse_scss_file(file_path):
|
||||
scss_colors = {}
|
||||
with open(file_path, 'r') as file:
|
||||
for line in file:
|
||||
match = re.match(r'\$(\w+):\s*(#[0-9A-Fa-f]{6});', line)
|
||||
if match:
|
||||
scss_colors[match.group(1)] = match.group(2)
|
||||
return scss_colors
|
||||
|
||||
def scss_to_pywal(scss_file, output_file='pywal_colors.json'):
|
||||
scss_colors = parse_scss_file(scss_file)
|
||||
|
||||
pywal_colors = {
|
||||
"special": {
|
||||
"background": scss_colors["background"],
|
||||
"foreground": scss_colors["onBackground"],
|
||||
"cursor": scss_colors["onBackground"]
|
||||
},
|
||||
"colors": {
|
||||
"color0": scss_colors["term0"],
|
||||
"color1": scss_colors["term1"],
|
||||
"color2": scss_colors["term2"],
|
||||
"color3": scss_colors["term3"],
|
||||
"color4": scss_colors["term4"],
|
||||
"color5": scss_colors["term5"],
|
||||
"color6": scss_colors["term6"],
|
||||
"color7": scss_colors["term7"],
|
||||
"color8": scss_colors["term8"],
|
||||
"color9": scss_colors["term9"],
|
||||
"color10": scss_colors["term10"],
|
||||
"color11": scss_colors["term11"],
|
||||
"color12": scss_colors["term12"],
|
||||
"color13": scss_colors["term13"],
|
||||
"color14": scss_colors["term14"],
|
||||
"color15": scss_colors["term15"]
|
||||
}
|
||||
}
|
||||
|
||||
# Write the Pywal colors to a JSON file
|
||||
with open(output_file, 'w') as file:
|
||||
json.dump(pywal_colors, file, indent=4)
|
||||
|
||||
print(f"Pywal colors have been saved to {output_file}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
# Hardcode the file paths
|
||||
scss_file = os.path.expanduser('~/.local/state/ags/scss/_material.scss')
|
||||
output_file = os.path.expanduser('~/.cache/ags/user/generated/pywal/pywal.json')
|
||||
|
||||
scss_to_pywal(scss_file, output_file)
|
||||
|
||||
@@ -4,36 +4,36 @@ XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
|
||||
CONFIG_DIR="$XDG_CONFIG_HOME/ags"
|
||||
|
||||
switch() {
|
||||
imgpath=$1
|
||||
read scale screenx screeny screensizey < <(hyprctl monitors -j | jq '.[] | select(.focused) | .scale, .x, .y, .height' | xargs)
|
||||
cursorposx=$(hyprctl cursorpos -j | jq '.x' 2>/dev/null) || cursorposx=960
|
||||
cursorposx=$(bc <<< "scale=0; ($cursorposx - $screenx) * $scale / 1")
|
||||
cursorposy=$(hyprctl cursorpos -j | jq '.y' 2>/dev/null) || cursorposy=540
|
||||
cursorposy=$(bc <<< "scale=0; ($cursorposy - $screeny) * $scale / 1")
|
||||
cursorposy_inverted=$((screensizey - cursorposy))
|
||||
imgpath=$1
|
||||
read scale screenx screeny screensizey < <(hyprctl monitors -j | jq '.[] | select(.focused) | .scale, .x, .y, .height' | xargs)
|
||||
cursorposx=$(hyprctl cursorpos -j | jq '.x' 2>/dev/null) || cursorposx=960
|
||||
cursorposx=$(bc <<<"scale=0; ($cursorposx - $screenx) * $scale / 1")
|
||||
cursorposy=$(hyprctl cursorpos -j | jq '.y' 2>/dev/null) || cursorposy=540
|
||||
cursorposy=$(bc <<<"scale=0; ($cursorposy - $screeny) * $scale / 1")
|
||||
cursorposy_inverted=$((screensizey - cursorposy))
|
||||
|
||||
if [ "$imgpath" == '' ]; then
|
||||
echo 'Aborted'
|
||||
exit 0
|
||||
fi
|
||||
if [ "$imgpath" == '' ]; then
|
||||
echo 'Aborted'
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# ags run-js "wallpaper.set('')"
|
||||
# sleep 0.1 && ags run-js "wallpaper.set('${imgpath}')" &
|
||||
swww img "$imgpath" --transition-step 100 --transition-fps 120 \
|
||||
--transition-type grow --transition-angle 30 --transition-duration 1 \
|
||||
--transition-pos "$cursorposx, $cursorposy_inverted"
|
||||
# ags run-js "wallpaper.set('')"
|
||||
# sleep 0.1 && ags run-js "wallpaper.set('${imgpath}')" &
|
||||
swww img "$imgpath" --transition-step 100 --transition-fps 120 \
|
||||
--transition-type grow --transition-angle 30 --transition-duration 1 \
|
||||
--transition-pos "$cursorposx, $cursorposy_inverted"
|
||||
}
|
||||
|
||||
if [ "$1" == "--noswitch" ]; then
|
||||
imgpath=$(swww query | awk -F 'image: ' '{print $2}')
|
||||
# imgpath=$(ags run-js 'wallpaper.get(0)')
|
||||
imgpath=$(swww query | awk -F 'image: ' '{print $2}')
|
||||
# imgpath=$(ags run-js 'wallpaper.get(0)')
|
||||
elif [[ "$1" ]]; then
|
||||
switch "$1"
|
||||
switch "$1"
|
||||
else
|
||||
# Select and set image (hyprland)
|
||||
# Select and set image (hyprland)
|
||||
|
||||
cd "$(xdg-user-dir PICTURES)" || return 1
|
||||
switch "$(yad --width 1200 --height 800 --file --add-preview --large-preview --title='Choose wallpaper')"
|
||||
cd "$(xdg-user-dir PICTURES)" || return 1
|
||||
switch "$(yad --width 1200 --height 800 --file --add-preview --large-preview --title='Choose wallpaper')"
|
||||
fi
|
||||
|
||||
# Generate colors for ags n stuff
|
||||
|
||||
@@ -38,9 +38,9 @@ env_editor_confirm() {
|
||||
fi
|
||||
}
|
||||
|
||||
NOTIFY=no
|
||||
CURSOR=
|
||||
FREEZE=
|
||||
NOTIFY=yes
|
||||
CURSOR=no
|
||||
FREEZE=yes
|
||||
WAIT=no
|
||||
SCALE=
|
||||
HYPRPICKER_PID=-1
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
import re
|
||||
import os
|
||||
|
||||
def read_scss(file_path):
|
||||
"""Reads an SCSS file and returns a dictionary of color variables."""
|
||||
colors = {}
|
||||
with open(file_path, 'r') as file:
|
||||
for line in file:
|
||||
match = re.match(r'\$(\w+):\s*(#[0-9A-Fa-f]{6});', line.strip())
|
||||
if match:
|
||||
variable_name, color = match.groups()
|
||||
colors[variable_name] = color
|
||||
return colors
|
||||
|
||||
def update_svg_colors(svg_path, old_to_new_colors, output_path):
|
||||
"""
|
||||
Updates the colors in an SVG file based on the provided color map.
|
||||
|
||||
:param svg_path: Path to the SVG file.
|
||||
:param old_to_new_colors: Dictionary mapping old colors to new colors.
|
||||
:param output_path: Path to save the updated SVG file.
|
||||
"""
|
||||
# Read the SVG content
|
||||
with open(svg_path, 'r') as file:
|
||||
svg_content = file.read()
|
||||
|
||||
# Replace old colors with new colors
|
||||
for old_color, new_color in old_to_new_colors.items():
|
||||
svg_content = re.sub(old_color, new_color, svg_content, flags=re.IGNORECASE)
|
||||
|
||||
# Write the updated SVG content to the output file
|
||||
with open(output_path, 'w') as file:
|
||||
file.write(svg_content)
|
||||
|
||||
print(f"SVG colors have been updated and saved to {output_path}!")
|
||||
|
||||
def main():
|
||||
scss_file = os.path.expanduser('~/.local/state/ags/scss/_material.scss') # Hardcoded path to the SCSS file
|
||||
svg_path = os.path.expanduser('~/.config/Kvantum/Colloid/Colloid.svg') # Hardcoded path to the input SVG file
|
||||
output_path = os.path.expanduser('~/.config/Kvantum/MaterialAdw/MaterialAdw.svg') # Hardcoded path to the output SVG file
|
||||
|
||||
# Read colors from the SCSS file
|
||||
color_data = read_scss(scss_file)
|
||||
|
||||
# Specify the old colors and map them to new colors from the SCSS file
|
||||
old_to_new_colors = {
|
||||
#'#cccccc': color_data['surfaceDim'], # Map old SVG color to new SCSS color
|
||||
#'#666666': color_data['surfaceDim'],
|
||||
'#3c84f7': color_data['primary'],
|
||||
#'#5a5a5a': color_data['neutral_paletteKeyColor'],
|
||||
'#000000': color_data['shadow'],
|
||||
'#f04a50': color_data['error'],
|
||||
'#4285f4': color_data['primaryFixedDim'],
|
||||
'#f2f2f2': color_data['background'],
|
||||
#'#dfdfdf': color_data['surfaceContainerLow'],
|
||||
'#ffffff': color_data['background'],
|
||||
'#1e1e1e': color_data['onPrimaryFixed'],
|
||||
#'#b6b6b6': color_data['surfaceContainer'],
|
||||
'#333': color_data['inverseSurface'],
|
||||
'#212121': color_data['onSecondaryFixed'],
|
||||
'#5b9bf8': color_data['secondaryContainer'],
|
||||
'#26272a': color_data['term7'],
|
||||
#'#b3b3b3': color_data['surfaceBright'],
|
||||
#'#b74aff': color_data['tertiary'],
|
||||
#'#989898': color_data['surfaceContainerHighest'],
|
||||
#'#c1c1c1': color_data['surfaceContainerHigh'],
|
||||
'#444444': color_data['onBackground'],
|
||||
'#333333': color_data['onPrimaryFixed'],
|
||||
}
|
||||
|
||||
# Update the SVG colors
|
||||
update_svg_colors(svg_path, old_to_new_colors, output_path)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
@@ -0,0 +1,84 @@
|
||||
import re
|
||||
import os
|
||||
|
||||
def read_scss(file_path):
|
||||
"""Reads an SCSS file and returns a dictionary of color variables."""
|
||||
colors = {}
|
||||
with open(file_path, 'r') as file:
|
||||
for line in file:
|
||||
match = re.match(r'\$(\w+):\s*(#[0-9A-Fa-f]{6});', line.strip())
|
||||
if match:
|
||||
variable_name, color = match.groups()
|
||||
colors[variable_name] = color
|
||||
return colors
|
||||
|
||||
def update_svg_colors(svg_path, old_to_new_colors, output_path):
|
||||
"""
|
||||
Updates the colors in an SVG file based on the provided color map.
|
||||
|
||||
:param svg_path: Path to the SVG file.
|
||||
:param old_to_new_colors: Dictionary mapping old colors to new colors.
|
||||
:param output_path: Path to save the updated SVG file.
|
||||
"""
|
||||
# Read the SVG content
|
||||
with open(svg_path, 'r') as file:
|
||||
svg_content = file.read()
|
||||
|
||||
# Replace old colors with new colors
|
||||
for old_color, new_color in old_to_new_colors.items():
|
||||
svg_content = re.sub(old_color, new_color, svg_content, flags=re.IGNORECASE)
|
||||
|
||||
# Write the updated SVG content to the output file
|
||||
with open(output_path, 'w') as file:
|
||||
file.write(svg_content)
|
||||
|
||||
print(f"SVG colors have been updated and saved to {output_path}!")
|
||||
|
||||
def main():
|
||||
scss_file = os.path.expanduser('~/.local/state/ags/scss/_material.scss') # Hardcoded path to the SCSS file
|
||||
svg_path = os.path.expanduser('~/.config/Kvantum/Colloid/ColloidDark.svg') # Hardcoded path to the input SVG file
|
||||
output_path = os.path.expanduser('~/.config/Kvantum/MaterialAdw/MaterialAdw.svg') # Hardcoded path to the output SVG file
|
||||
|
||||
# Read colors from the SCSS file
|
||||
color_data = read_scss(scss_file)
|
||||
|
||||
# Specify the old colors and map them to new colors from the SCSS file
|
||||
old_to_new_colors = {
|
||||
#'#525252': color_data['surfaceDim'], # Map old SVG color to new SCSS color
|
||||
#'#666666': color_data['surfaceDim'],
|
||||
'#31363b': color_data['background'],
|
||||
#'#eff0f1': color_data['neutral_paletteKeyColor'],
|
||||
'#000000': color_data['shadow'],
|
||||
'#5b9bf8': color_data['primary'],
|
||||
'#93cee9': color_data['onSecondaryContainer'],
|
||||
'#3daee9': color_data['secondary'],
|
||||
#'#fff': color_data['term10'],
|
||||
#'#5a5a5a': color_data['surfaceVariant'],
|
||||
#'#acb1bc': color_data['onPrimaryFixed'],
|
||||
'#ffffff': color_data['term11'],
|
||||
'#5a616e': color_data['surfaceVariant'],
|
||||
'#f04a50': color_data['error'],
|
||||
'#4285f4': color_data['secondary'],
|
||||
'#242424': color_data['background'],
|
||||
'#2c2c2c': color_data['background'],
|
||||
#'#dfdfdf': color_data['onSurfaceVariant'],
|
||||
#'#646464': color_data['surfaceContainerHighest'],
|
||||
#'#989898': color_data['surfaceContainerHigh'],
|
||||
#'#c1c1c1': color_data['primaryFixedDim'],
|
||||
'#1e1e1e': color_data['background'],
|
||||
'#3c3c3c': color_data['background'],
|
||||
'#26272a': color_data['surfaceBright'],
|
||||
'#000000': color_data['shadow'],
|
||||
'#b74aff': color_data['tertiary'],
|
||||
#'#b6b6b6': color_data['onSurfaceVariant'],
|
||||
'#1a1a1a': color_data['background'],
|
||||
'#333': color_data['term0'],
|
||||
'#212121': color_data['background'],
|
||||
}
|
||||
|
||||
# Update the SVG colors
|
||||
update_svg_colors(svg_path, old_to_new_colors, output_path)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
import re
|
||||
import os
|
||||
|
||||
def get_colors_from_scss(scss_file):
|
||||
colors = {}
|
||||
with open(scss_file, 'r') as file:
|
||||
for line in file:
|
||||
match = re.match(r'\$(\w+):\s*(#[0-9A-Fa-f]{6});', line)
|
||||
if match:
|
||||
colors[match.group(1)] = match.group(2)
|
||||
return colors
|
||||
|
||||
def update_config_colors(config_file, colors, mappings):
|
||||
with open(config_file, 'r') as file:
|
||||
config_content = file.read()
|
||||
|
||||
for key, variable in mappings.items():
|
||||
if variable in colors:
|
||||
color = colors[variable]
|
||||
pattern = rf'({key}=)#?\w+\b'
|
||||
new_line = f'\\1{color}'
|
||||
if re.search(pattern, config_content):
|
||||
config_content = re.sub(pattern, new_line, config_content)
|
||||
else:
|
||||
config_content += f"\n{key}={color}"
|
||||
|
||||
with open(config_file, 'w') as file:
|
||||
file.write(config_content)
|
||||
|
||||
if __name__ == "__main__":
|
||||
scss_file = os.path.expanduser('~/.local/state/ags/scss/_material.scss')
|
||||
config_file = os.path.expanduser('~/.config/Kvantum/MaterialAdw/MaterialAdw.kvconfig') # Replace with the actual path to your config file
|
||||
|
||||
# Define your mappings here
|
||||
mappings = {
|
||||
'window.color': 'background',
|
||||
'base.color': 'background',
|
||||
'alt.base.color': 'background',
|
||||
'button.color': 'surfaceContainer',
|
||||
'light.color': 'surfaceContainerLow',
|
||||
'mid.light.color': 'surfaceContainer',
|
||||
'dark.color': 'surfaceContainerHighest',
|
||||
'mid.color': 'surfaceContainerHigh',
|
||||
'highlight.color': 'primary',
|
||||
'inactive.highlight.color': 'primary',
|
||||
'text.color': 'onBackground',
|
||||
'window.text.color': 'onBackground',
|
||||
'button.text.color': 'onBackground',
|
||||
'disabled.text.color': 'onBackground',
|
||||
'tooltip.text.color': 'onBackground',
|
||||
'highlight.text.color': 'onSurface',
|
||||
'link.color': 'tertiary',
|
||||
'link.visited.color': 'tertiaryFixed',
|
||||
'progress.indicator.text.color': 'onBackground',
|
||||
'text.normal.color': 'onBackground',
|
||||
'text.focus.color': 'onBackground',
|
||||
'text.press.color': 'onsecondarycontainer',
|
||||
'text.toggle.color': 'onsecondarycontainer',
|
||||
'text.disabled.color': 'surfaceDim',
|
||||
|
||||
|
||||
# Add more mappings as needed
|
||||
}
|
||||
|
||||
colors = get_colors_from_scss(scss_file)
|
||||
update_config_colors(config_file, colors, mappings)
|
||||
print("Config colors updated successfully!")
|
||||
|
||||
Executable
+43
@@ -0,0 +1,43 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-$HOME/.config}"
|
||||
XDG_CACHE_HOME="${XDG_CACHE_HOME:-$HOME/.cache}"
|
||||
XDG_STATE_HOME="${XDG_STATE_HOME:-$HOME/.local/state}"
|
||||
CONFIG_DIR="$XDG_CONFIG_HOME/ags"
|
||||
CACHE_DIR="$XDG_CACHE_HOME/ags"
|
||||
STATE_DIR="$XDG_STATE_HOME/ags"
|
||||
|
||||
get_light_dark() {
|
||||
lightdark=""
|
||||
if [ ! -f "$STATE_DIR/user/colormode.txt" ]; then
|
||||
echo "" >"$STATE_DIR/user/colormode.txt"
|
||||
else
|
||||
lightdark=$(sed -n '1p' "$STATE_DIR/user/colormode.txt")
|
||||
fi
|
||||
echo "$lightdark"
|
||||
}
|
||||
|
||||
apply_qt() {
|
||||
# Check if the theme exists
|
||||
FOLDER_PATH="$XDG_CONFIG_HOME/Kvantum/Colloid/"
|
||||
|
||||
if [ ! -d "$FOLDER_PATH" ]; then
|
||||
# Send a notification
|
||||
notify-send "Colloid-kde theme required" " The folder '$FOLDER_PATH' does not exist."
|
||||
exit 1 # Exit the function if the folder does not exist
|
||||
fi
|
||||
|
||||
lightdark=$(get_light_dark)
|
||||
if [ "$lightdark" = "light" ]; then
|
||||
# apply ligght colors
|
||||
cp "$XDG_CONFIG_HOME/Kvantum/Colloid/Colloid.kvconfig" "$XDG_CONFIG_HOME/Kvantum/MaterialAdw/MaterialAdw.kvconfig"
|
||||
python "$CONFIG_DIR/scripts/kvantum/adwsvg.py"
|
||||
|
||||
else
|
||||
#apply dark colors
|
||||
cp "$XDG_CONFIG_HOME/Kvantum/Colloid/ColloidDark.kvconfig" "$XDG_CONFIG_HOME/Kvantum/MaterialAdw/MaterialAdw.kvconfig"
|
||||
python "$CONFIG_DIR/scripts/kvantum/adwsvgDark.py"
|
||||
fi
|
||||
}
|
||||
|
||||
apply_qt
|
||||
@@ -4,6 +4,18 @@ general {
|
||||
col.active_border = rgba({{ $onSurface }}39)
|
||||
col.inactive_border = rgba({{ $outline }}30)
|
||||
}
|
||||
group {
|
||||
col.border_active = rgba({{ $onSurface }}39)
|
||||
col.border_inactive = rgba({{ $outline }}30)
|
||||
|
||||
groupbar {
|
||||
col.active = rgba({{ $background }}FF)
|
||||
col.inactive = rgba({{ $outline }}50)
|
||||
scrolling = true
|
||||
font_size = 11
|
||||
text_color = rgba({{ $onBackground }}FF)
|
||||
}
|
||||
}
|
||||
|
||||
misc {
|
||||
background_color = rgba({{ $surface }}FF)
|
||||
@@ -31,4 +43,4 @@ plugin {
|
||||
}
|
||||
}
|
||||
|
||||
windowrulev2 = bordercolor rgba({{ $primary }}AA) rgba({{ $primary }}77),pinned:1
|
||||
windowrulev2 = bordercolor rgba({{ $primary }}AA) rgba({{ $primary }}77),pinned:1
|
||||
|
||||
@@ -1,90 +1,97 @@
|
||||
# $text_color = rgba({{ $onBackground }}FF)
|
||||
# $entry_background_color = rgba({{ $background }}11)
|
||||
# $entry_border_color = rgba({{ $outline }}55)
|
||||
# $entry_color = rgba({{ $onSurfaceVariant }}FF)
|
||||
$text_color = rgba(FFFFFFFF)
|
||||
$entry_background_color = rgba(33333311)
|
||||
$entry_border_color = rgba(3B3B3B55)
|
||||
$entry_color = rgba(FFFFFFFF)
|
||||
#hyprlock config
|
||||
|
||||
$text_color = rgba({{ $term3 }}FF)
|
||||
$text_key_color = rgba({{ $term1 }}FF)
|
||||
$text_status_color = rgba({{ $tertiary }}FF)
|
||||
$base_color = rgba({{ $term0 }}FF)
|
||||
|
||||
$font_family = Rubik Light
|
||||
$font_family_clock = Rubik Light
|
||||
$font_family_clock = Geist Mono 10
|
||||
$font_family_date = JetBrainsMono Nerd Font 10
|
||||
$font_material_symbols = Material Symbols Rounded
|
||||
|
||||
general {
|
||||
#hide cursor
|
||||
hide_cursor = true
|
||||
}
|
||||
|
||||
background {
|
||||
# color = rgba({{ $surfaceContainerLowest }}FF)
|
||||
color = rgba(000000FF)
|
||||
# path = {{ SWWW_WALL }}
|
||||
# path = screenshot
|
||||
# blur_size = 5
|
||||
# blur_passes = 4
|
||||
}
|
||||
input-field {
|
||||
monitor =
|
||||
size = 250, 50
|
||||
outline_thickness = 2
|
||||
dots_size = 0.1
|
||||
dots_spacing = 0.3
|
||||
outer_color = $entry_border_color
|
||||
inner_color = $entry_background_color
|
||||
font_color = $entry_color
|
||||
# fade_on_empty = true
|
||||
path = $path # only png supported for now
|
||||
# color = $color1
|
||||
|
||||
position = 0, 20
|
||||
halign = center
|
||||
valign = center
|
||||
# all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
|
||||
blur_size = 4
|
||||
blur_passes = 3 # 0 disables blurring
|
||||
noise = 0.0117
|
||||
contrast = 1.3000 # Vibrant!!!
|
||||
brightness = 0.8000
|
||||
vibrancy = 0.2100
|
||||
vibrancy_darkness = 0.0
|
||||
}
|
||||
|
||||
label { # Clock
|
||||
# Hours
|
||||
label {
|
||||
monitor =
|
||||
text = $TIME
|
||||
shadow_passes = 1
|
||||
shadow_boost = 0.5
|
||||
text = cmd[update:1000] echo "<b><big> $(date +"%H") </big></b>"
|
||||
color = $text_color
|
||||
font_size = 65
|
||||
font_size = 112
|
||||
font_family = $font_family_clock
|
||||
shadow_passes = 3
|
||||
shadow_size = 4
|
||||
|
||||
position = 0, 300
|
||||
position = 0, 220
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
label { # Greeting
|
||||
monitor =
|
||||
text = hi $USER !!!
|
||||
shadow_passes = 1
|
||||
shadow_boost = 0.5
|
||||
color = $text_color
|
||||
font_size = 20
|
||||
font_family = $font_family
|
||||
|
||||
position = 0, 240
|
||||
# Minutes
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:1000] echo "<b><big> $(date +"%M") </big></b>"
|
||||
color = $text_key_color
|
||||
font_size = 112
|
||||
font_family = $font_family_clock
|
||||
shadow_passes = 3
|
||||
shadow_size = 4
|
||||
|
||||
position = 0, 80
|
||||
halign = center
|
||||
valign = center
|
||||
}
|
||||
label { # lock icon
|
||||
monitor =
|
||||
text = lock
|
||||
shadow_passes = 1
|
||||
shadow_boost = 0.5
|
||||
color = $text_color
|
||||
font_size = 21
|
||||
font_family = $font_material_symbols
|
||||
|
||||
position = 0, 65
|
||||
# Today
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:18000000] echo "<b><big> "$(date +'%A')" </big></b>"
|
||||
<<<<<<< HEAD
|
||||
color = rgba(FFFFFF80)
|
||||
=======
|
||||
color = rgba({{ $primaryContainer }}FF)
|
||||
>>>>>>> parent of 1a3fa77... heda hau fixed
|
||||
font_size = 22
|
||||
font_family = $font_family_date
|
||||
|
||||
position = 0, -20
|
||||
halign = center
|
||||
valign = bottom
|
||||
valign = center
|
||||
}
|
||||
label { # "locked" text
|
||||
monitor =
|
||||
text = locked
|
||||
shadow_passes = 1
|
||||
shadow_boost = 0.5
|
||||
color = $text_color
|
||||
font_size = 14
|
||||
font_family = $font_family
|
||||
|
||||
position = 0, 45
|
||||
# Week
|
||||
label {
|
||||
monitor =
|
||||
text = cmd[update:18000000] echo "<b> "$(date +'%d %b')" </b>"
|
||||
<<<<<<< HEAD
|
||||
color = rgba(FFFFFF80)
|
||||
=======
|
||||
color = rgba({{ $primaryContainer }}FF)
|
||||
>>>>>>> parent of 1a3fa77... heda hau fixed
|
||||
font_size = 18
|
||||
font_family = $font_family_date
|
||||
|
||||
position = 0, -50
|
||||
halign = center
|
||||
valign = bottom
|
||||
valign = center
|
||||
}
|
||||
|
||||
label { # Status
|
||||
@@ -92,11 +99,33 @@ label { # Status
|
||||
text = cmd[update:5000] ${XDG_CONFIG_HOME:-$HOME/.config}/hypr/hyprlock/status.sh
|
||||
shadow_passes = 1
|
||||
shadow_boost = 0.5
|
||||
color = $text_color
|
||||
color = $text_status_color
|
||||
font_size = 14
|
||||
font_family = $font_family
|
||||
|
||||
position = 30, -30
|
||||
halign = left
|
||||
valign = top
|
||||
}
|
||||
position = -30, 30
|
||||
halign = right
|
||||
valign = bottom
|
||||
}
|
||||
|
||||
input-field {
|
||||
monitor =
|
||||
size = 230, 50
|
||||
outline_thickness = 1
|
||||
|
||||
dots_size = 0.24 # Scale of input-field height, 0.2 - 0.8
|
||||
dots_spacing = 0.64 # Scale of dots' absolute size, 0.0 - 1.0
|
||||
dots_center = true
|
||||
# dots_rouding = 1
|
||||
|
||||
rounding = 28
|
||||
outer_color = $text_key_color
|
||||
inner_color = $base_color
|
||||
font_color = $text_color
|
||||
fade_on_empty = true
|
||||
placeholder_text = <i>Password...</i> # Text rendered in the input box when it's empty.
|
||||
|
||||
position = 0, 120
|
||||
halign = center
|
||||
valign = bottom
|
||||
}
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "ES2022",
|
||||
"module": "ES2022",
|
||||
"lib": [
|
||||
"ES2022"
|
||||
],
|
||||
"allowJs": true,
|
||||
"checkJs": true,
|
||||
"strict": true,
|
||||
"noImplicitAny": false,
|
||||
"baseUrl": ".",
|
||||
"typeRoots": [
|
||||
"./types"
|
||||
],
|
||||
"skipLibCheck": true
|
||||
}
|
||||
}
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
/usr/share/com.github.Aylur.ags/types
|
||||
@@ -1,2 +1,4 @@
|
||||
# You can put extra environment variables here
|
||||
# https://wiki.hyprland.org/Configuring/Environment-variables/
|
||||
# env = QT_QPA_PLATFORMTHEME, KDE
|
||||
|
||||
|
||||
@@ -1,2 +1,5 @@
|
||||
# You can make apps auto-start here
|
||||
# Relevant Hyprland wiki section: https://wiki.hyprland.org/Configuring/Keywords/#executing
|
||||
#
|
||||
|
||||
|
||||
|
||||
@@ -1,2 +1,6 @@
|
||||
# Put general config stuff here
|
||||
# Here's a list of every variable: https://wiki.hyprland.org/Configuring/Variables/
|
||||
# Here's a list of every variable: https://wiki.hyprland.org/Configuring/Variables/
|
||||
# Generated by nwg-displays on 2024-10-19 at 17:38:39. Do not edit manually.
|
||||
|
||||
# Put soruces here
|
||||
|
||||
|
||||
@@ -1,2 +1,4 @@
|
||||
# You can put your preferred keybinds here
|
||||
# https://wiki.hyprland.org/Configuring/Binds/
|
||||
# https://wiki.hyprland.org/Configuring/Binds/
|
||||
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@ source=~/.config/hypr/hyprland/general.conf
|
||||
source=~/.config/hypr/hyprland/rules.conf
|
||||
source=~/.config/hypr/hyprland/colors.conf
|
||||
source=~/.config/hypr/hyprland/keybinds.conf
|
||||
source=~/.config/hypr/hyprland/HyprAGS.conf
|
||||
|
||||
# Custom
|
||||
source=~/.config/hypr/custom/env.conf
|
||||
|
||||
@@ -11,6 +11,7 @@ env = INPUT_METHOD, fcitx
|
||||
# ############ Themes #############
|
||||
env = QT_QPA_PLATFORM, wayland
|
||||
env = QT_QPA_PLATFORMTHEME, qt5ct
|
||||
env = QT_QPA_PLATFORMTHEME, qt6ct
|
||||
# env = QT_STYLE_OVERRIDE,kvantum
|
||||
# env = WLR_NO_HARDWARE_CURSORS, 1
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Bar, wallpaper
|
||||
exec-once = swww-daemon --format xrgb
|
||||
exec-once = /usr/lib/geoclue-2.0/demos/agent & gammastep
|
||||
exec-once = /usr/lib/geoclue-2.0/demos/agent & # gammastep
|
||||
exec-once = ags &
|
||||
|
||||
# Input method
|
||||
|
||||
@@ -69,12 +69,7 @@ decoration {
|
||||
rounding = 20
|
||||
|
||||
blur {
|
||||
enabled = true
|
||||
xray = true
|
||||
special = false
|
||||
new_optimizations = true
|
||||
size = 14
|
||||
passes = 4
|
||||
brightness = 1
|
||||
noise = 0.01
|
||||
contrast = 1
|
||||
|
||||
@@ -76,7 +76,8 @@ bind = Super+Alt, Space, togglefloating,
|
||||
bind = Super+Alt, F, fullscreenstate, 0 3 # Toggle fake fullscreen
|
||||
bind = Super, F, fullscreen, 0
|
||||
bind = Super, D, fullscreen, 1
|
||||
|
||||
bind = Super, J, togglesplit, # dwindle
|
||||
bind = Super, G, togglegroup, # togglegroup
|
||||
#!
|
||||
##! Workspace navigation
|
||||
# Switching
|
||||
@@ -206,6 +207,7 @@ bind = Ctrl+Super+Shift, V, exec, easyeffects # Launch EasyEffects (equalizer &
|
||||
bind = Ctrl+Shift, Escape, exec, gnome-system-monitor # Launch GNOME System monitor
|
||||
bind = Ctrl+Super, Slash, exec, pkill anyrun || anyrun # Toggle fallback launcher: anyrun
|
||||
bind = Super+Alt, Slash, exec, pkill anyrun || fuzzel # Toggle fallback launcher: fuzzel
|
||||
bind = Super+Shift, A, exec, pkill rofi || rofi -show drun # toggle rofi
|
||||
|
||||
# Cursed stuff
|
||||
## Make window not amogus large
|
||||
|
||||
@@ -1,38 +1,35 @@
|
||||
# You can put custom rules here
|
||||
# Window/layer rules: https://wiki.hyprland.org/Configuring/Window-Rules/
|
||||
# Workspace rules: https://wiki.hyprland.org/Configuring/Workspace-Rules/
|
||||
#
|
||||
# ######## Window rules ########
|
||||
windowrule = noblur,.*
|
||||
# windowrule = noblur,.*
|
||||
# windowrule = opacity 0.89 override 0.89 override, .* # Applies transparency to EVERY WINDOW
|
||||
windowrule = float, ^(blueberry.py)$
|
||||
windowrule = float, ^(steam)$
|
||||
windowrule = float, ^(guifetch)$ # FlafyDev/guifetch
|
||||
windowrulev2 = tile, class:(dev.warp.Warp)
|
||||
windowrulev2 = float, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrule = center, title:^(Open File)(.*)$
|
||||
windowrule = center, title:^(Select a File)(.*)$
|
||||
windowrule = center, title:^(Choose wallpaper)(.*)$
|
||||
windowrule = center, title:^(Open Folder)(.*)$
|
||||
windowrule = center, title:^(Save As)(.*)$
|
||||
windowrule = center, title:^(Library)(.*)$
|
||||
windowrule = center, title:^(File Upload)(.*)$
|
||||
windowrulev2 = float, class:^(blueberry.py)$
|
||||
windowrulev2 = float, title:^(steam)$
|
||||
windowrulev2 = float, title:^(guifetch)$ # FlafyDev/guifetch
|
||||
windowrulev2 = tile, class:^(dev.warp.Warp)$
|
||||
|
||||
|
||||
# Picture-in-Picture
|
||||
windowrulev2 = keepaspectratio, title:^(Picture(-| )in(-| )[Pp]icture)$
|
||||
windowrulev2 = move 73% 72%,title:^(Picture(-| )in(-| )[Pp]icture)$
|
||||
windowrulev2 = move 73% 72%,title:^(Picture(-| )in(-| )[Pp]icture)$
|
||||
windowrulev2 = size 25%, title:^(Picture(-| )in(-| )[Pp]icture)$
|
||||
windowrulev2 = float, title:^(Picture(-| )in(-| )[Pp]icture)$
|
||||
windowrulev2 = pin, title:^(Picture(-| )in(-| )[Pp]icture)$
|
||||
|
||||
# Dialogs
|
||||
windowrule=float,title:^(Open File)(.*)$
|
||||
windowrule=float,title:^(Select a File)(.*)$
|
||||
windowrule=float,title:^(Choose wallpaper)(.*)$
|
||||
windowrule=float,title:^(Open Folder)(.*)$
|
||||
windowrule=float,title:^(Save As)(.*)$
|
||||
windowrule=float,title:^(Library)(.*)$
|
||||
windowrule=float,title:^(File Upload)(.*)$
|
||||
windowrulev2 = float,title:^(Open File)(.*)$
|
||||
windowrulev2 = float,title:^(Select a File)(.*)$
|
||||
windowrulev2 = float,title:^(Choose wallpaper)(.*)$
|
||||
windowrulev2 = float,title:^(Open Folder)(.*)$
|
||||
windowrulev2 = float,title:^(Save As)(.*)$
|
||||
windowrulev2 = float,title:^(Library)(.*)$
|
||||
windowrulev2 = float,title:^(File Upload)(.*)$
|
||||
|
||||
# Tearing
|
||||
windowrule=immediate,.*\.exe
|
||||
windowrulev2=immediate,class:(steam_app)
|
||||
windowrulev2 = immediate,title:^(.*\.exe)$
|
||||
windowrulev2 = immediate,class:^(steam_app)
|
||||
|
||||
# No shadow for tiled windows
|
||||
windowrulev2 = noshadow,floating:0
|
||||
@@ -61,26 +58,25 @@ layerrule = ignorealpha 0.69, notifications
|
||||
# ags
|
||||
layerrule = animation slide left, sideleft.*
|
||||
layerrule = animation slide right, sideright.*
|
||||
layerrule = blur, session
|
||||
layerrule = blur, session.*
|
||||
|
||||
layerrule = blur, bar
|
||||
layerrule = ignorealpha 0.6, bar
|
||||
layerrule = blur, bar.*
|
||||
layerrule = ignorealpha 0.6, bar.*
|
||||
layerrule = blur, corner.*
|
||||
layerrule = ignorealpha 0.6, corner.*
|
||||
layerrule = blur, dock
|
||||
layerrule = ignorealpha 0.6, dock
|
||||
layerrule = blur, dock.*
|
||||
layerrule = ignorealpha 0.6, dock.*
|
||||
layerrule = blur, indicator.*
|
||||
layerrule = ignorealpha 0.6, indicator.*
|
||||
layerrule = blur, overview
|
||||
layerrule = ignorealpha 0.6, overview
|
||||
layerrule = blur, cheatsheet
|
||||
layerrule = ignorealpha 0.6, cheatsheet
|
||||
layerrule = blur, overview.*
|
||||
layerrule = ignorealpha 0.6, overview.*
|
||||
layerrule = blur, cheatsheet.*
|
||||
layerrule = ignorealpha 0.6, cheatsheet.*
|
||||
layerrule = blur, sideright
|
||||
layerrule = ignorealpha 0.6, sideright
|
||||
layerrule = blur, sideleft
|
||||
layerrule = ignorealpha 0.6, sideleft
|
||||
layerrule = blur, indicator*
|
||||
layerrule = ignorealpha 0.6, indicator*
|
||||
layerrule = blur, osk
|
||||
layerrule = ignorealpha 0.6, osk
|
||||
|
||||
layerrule = blur, indicator.*
|
||||
layerrule = ignorealpha 0.6, indicator.*
|
||||
layerrule = blur, osk.*
|
||||
layerrule = ignorealpha 0.6, osk.*
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
import webcolors
|
||||
import subprocess
|
||||
import os
|
||||
|
||||
color_path = os.path.expanduser("~/.cache/wal/colors")
|
||||
|
||||
|
||||
# Define the mapping of your desired colors
|
||||
color_map = {
|
||||
"black": "#4F4F4F",
|
||||
"blue": "#5294E2",
|
||||
"bluegrey": "#607D8B",
|
||||
"breeze": "#57B8EC",
|
||||
"brown": "#AE8E6C",
|
||||
"carmine": "#A30002",
|
||||
"cyan": "#00BCD4",
|
||||
"darkcyan": "#36858E",
|
||||
"deeporange": "#EB6637",
|
||||
"green": "#87B158",
|
||||
"grey": "#8E8E8E",
|
||||
"indigo": "#5C6BC0",
|
||||
"magenta": "#CA71E0",
|
||||
"nordic": "#81A1C1",
|
||||
"orange": "#EE923A",
|
||||
"palebrown": "#D1BFAE",
|
||||
"paleorange": "#EECA8F",
|
||||
"pink": "#F16293",
|
||||
"red": "#E25252",
|
||||
"teal": "#16A085",
|
||||
"violet": "#7E57C2",
|
||||
"white": "#E5E5E5",
|
||||
"adwaita": "#93C0EA",
|
||||
"yellow": "#F9BD30",
|
||||
}
|
||||
|
||||
# Convert color_map to RGB tuples
|
||||
color_map_rgb = {
|
||||
name: webcolors.hex_to_rgb(hex_code) for name, hex_code in color_map.items()
|
||||
}
|
||||
|
||||
|
||||
def closest_color(requested_color):
|
||||
min_colors = {}
|
||||
for name, rgb in color_map_rgb.items():
|
||||
rd = (rgb[0] - requested_color[0]) ** 2
|
||||
gd = (rgb[1] - requested_color[1]) ** 2
|
||||
bd = (rgb[2] - requested_color[2]) ** 2
|
||||
min_colors[(rd + gd + bd)] = name
|
||||
return min_colors[min(min_colors.keys())]
|
||||
|
||||
|
||||
def get_color_name(hex_color):
|
||||
requested_color = webcolors.hex_to_rgb(hex_color)
|
||||
closest_name = closest_color(requested_color)
|
||||
return closest_name
|
||||
|
||||
|
||||
# Read hex codes from .cache/wal/colors file
|
||||
with open(color_path, "r") as file:
|
||||
hex_codes = [line.strip() for line in file]
|
||||
|
||||
# Get the nearest color name for each hex code
|
||||
color_names = [get_color_name(hex_code) for hex_code in hex_codes]
|
||||
|
||||
# Get the name of the 4th color
|
||||
color_name = color_names[2]
|
||||
print(f"The 4th color is closest to: {color_name}")
|
||||
|
||||
# Execute the papirus-folders command with the closest color name
|
||||
subprocess.run(["papirus-folders", "-C", color_name, "--theme", "Papirus-Dark"])
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Define formatting variables
|
||||
GREEN='\033[1;32m'
|
||||
NC='\033[0m' # No Color
|
||||
GLYPH=''
|
||||
|
||||
# Execute other commands
|
||||
|
||||
# echo -e "\n${GREEN}${GLYPH} Running colors-foot.py ${NC}"
|
||||
# python ~/.config/hypr/scripts/colors-foot.py
|
||||
|
||||
echo -e "\n${GREEN}${GLYPH} Running colors-folders.py (for papirus colored folders).${NC}"
|
||||
python ~/.config/pywal/colors-folders.py
|
||||
|
||||
echo -e "\n${GREEN}${GLYPH} Generating rofi colors ${NC}"
|
||||
python ~/.config/pywal/rofi-colors.py
|
||||
|
||||
# echo -e "\n${GREEN}${GLYPH} Generating sddm colors ${NC}"
|
||||
# ~/.config/pywal/sddm-pywal
|
||||
|
||||
# echo -e "\n${GREEN}${GLYPH} Generating Ghostty terminal colors ${NC}"
|
||||
# python ~/.config/pywal/ghosttyPywal.py
|
||||
|
||||
echo -e "\n${GREEN}${GLYPH} changing spotiify theme (text) ${NC}"
|
||||
pywal-spicetify text
|
||||
# spicetify apply
|
||||
|
||||
echo -e "\n${GREEN}${GLYPH} Running walogram (for telegram) ${NC}"
|
||||
walogram -s
|
||||
|
||||
echo -e "\n${GREEN}${GLYPH} Running pywal-discord (for discord) ${NC}"
|
||||
pywal-discord
|
||||
|
||||
echo -e "\n${GREEN}${GLYPH} Script execution completed.${NC}"
|
||||
@@ -0,0 +1,49 @@
|
||||
import yaml
|
||||
import os
|
||||
|
||||
def read_yaml(file_path):
|
||||
"""Reads a YAML file and returns its content."""
|
||||
with open(file_path, 'r') as file:
|
||||
data = yaml.safe_load(file)
|
||||
return data
|
||||
|
||||
def format_colors(colors):
|
||||
"""Formats the colors into the required output style."""
|
||||
output = []
|
||||
|
||||
# Format palette colors
|
||||
for index, (color_key, color_value) in enumerate(colors['colors'].items()):
|
||||
output.append(f"palette = {index}={color_value}")
|
||||
|
||||
# Format special colors
|
||||
output.append(f"background = {colors['special']['background'][1:]}")
|
||||
output.append(f"foreground = {colors['special']['foreground'][1:]}")
|
||||
output.append(f"cursor-color = {colors['special']['cursor'][1:]}")
|
||||
output.append(f"selection-background = {colors['special']['background'][1:]}")
|
||||
output.append(f"selection-foreground = {colors['special']['foreground'][1:]}")
|
||||
|
||||
return output
|
||||
|
||||
def write_config(config_path, formatted_colors):
|
||||
"""Writes the formatted colors to the configuration file."""
|
||||
with open(config_path, 'w') as config_file:
|
||||
for line in formatted_colors:
|
||||
config_file.write(line + '\n')
|
||||
print("Colors have been generated and saved to the configuration file!")
|
||||
|
||||
def main():
|
||||
yaml_file = os.path.expanduser('~/.cache/wal/colors.yml') # Replace with the path to your YAML file
|
||||
config_file = os.path.expanduser('~/.config/ghostty/colors') # Replace with the path to your terminal configuration file
|
||||
|
||||
# Read colors from the YAML file
|
||||
colors = read_yaml(yaml_file)
|
||||
|
||||
# Format colors
|
||||
formatted_colors = format_colors(colors)
|
||||
|
||||
# Write the formatted colors to the terminal configuration file
|
||||
write_config(config_file, formatted_colors)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
import re
|
||||
import os
|
||||
|
||||
# Define the input SCSS file and output Rasi file
|
||||
input_file = os.path.expanduser('~/.local/state/ags/scss/_material.scss')
|
||||
output_file = os.path.expanduser('~/.config/rofi/colors.rasi')
|
||||
|
||||
def convert_scss_to_rasi(input_file, output_file):
|
||||
# Read the SCSS file
|
||||
with open(input_file, 'r') as file:
|
||||
scss_content = file.read()
|
||||
|
||||
# Remove specific SCSS variables
|
||||
variables_to_remove = [
|
||||
r'\$darkmode:.*;\n',
|
||||
r'\$transparent:.*;\n',
|
||||
r'\$primary_paletteKeyColor:.*;\n',
|
||||
r'\$secondary_paletteKeyColor:.*;\n',
|
||||
r'\$tertiary_paletteKeyColor:.*;\n',
|
||||
r'\$neutral_paletteKeyColor:.*;\n',
|
||||
r'\$neutral_variant_paletteKeyColor:.*;\n'
|
||||
]
|
||||
for var in variables_to_remove:
|
||||
scss_content = re.sub(var, '', scss_content)
|
||||
|
||||
# Convert remaining SCSS variables to Rasi format
|
||||
rasi_content = re.sub(r'\$(\w+):\s*(.*);', r' \1: \2;', scss_content)
|
||||
|
||||
# Add the Rasi header and footer with spaces around content
|
||||
rasi_content = '* {\n\n' + rasi_content + '\n\n}'
|
||||
|
||||
# Write the Rasi content to a file
|
||||
with open(output_file, 'w') as file:
|
||||
file.write(rasi_content)
|
||||
|
||||
print(f"Conversion complete! Check the '{output_file}' file.")
|
||||
|
||||
if __name__ == "__main__":
|
||||
convert_scss_to_rasi(input_file, output_file)
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
[Appearance]
|
||||
color_scheme_path=/usr/share/qt6ct/colors/ia_ora.conf
|
||||
custom_palette=false
|
||||
icon_theme=Papirus
|
||||
standard_dialogs=default
|
||||
style=kvantum
|
||||
|
||||
[Fonts]
|
||||
fixed="JetBrainsMono Nerd Font,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1"
|
||||
general="Rubik,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1"
|
||||
|
||||
[Interface]
|
||||
activate_item_on_single_click=1
|
||||
buttonbox_layout=0
|
||||
cursor_flash_time=1000
|
||||
dialog_buttons_have_icons=1
|
||||
double_click_interval=400
|
||||
gui_effects=General, AnimateMenu, AnimateCombo, AnimateTooltip, AnimateToolBox
|
||||
keyboard_scheme=2
|
||||
menus_have_icons=true
|
||||
show_shortcuts_in_context_menus=true
|
||||
stylesheets=@Invalid()
|
||||
toolbutton_style=4
|
||||
underline_shortcut=1
|
||||
wheel_scroll_lines=3
|
||||
|
||||
[SettingsWindow]
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\0\0\0\x3\xb2\0\0\x3\xfd\0\0\0\0\0\0\0\0\0\0\x3\xbf\0\0\x4\v\0\0\0\0\x2\0\0\0\a\x80\0\0\0\0\0\0\0\0\0\0\x3\xb2\0\0\x3\xfd)
|
||||
|
||||
[Troubleshooting]
|
||||
force_raster_widgets=1
|
||||
ignored_applications=@Invalid()
|
||||
@@ -0,0 +1,74 @@
|
||||
* {
|
||||
|
||||
background: #0F1416;
|
||||
onBackground: #DEE3E5;
|
||||
surface: #0F1416;
|
||||
surfaceDim: #0F1416;
|
||||
surfaceBright: #343A3C;
|
||||
surfaceContainerLowest: #090F11;
|
||||
surfaceContainerLow: #171C1E;
|
||||
surfaceContainer: #1B2022;
|
||||
surfaceContainerHigh: #252B2D;
|
||||
surfaceContainerHighest: #303638;
|
||||
onSurface: #DEE3E5;
|
||||
surfaceVariant: #3F484B;
|
||||
onSurfaceVariant: #BFC8CB;
|
||||
inverseSurface: #DEE3E5;
|
||||
inverseOnSurface: #2C3133;
|
||||
outline: #899295;
|
||||
outlineVariant: #3F484B;
|
||||
shadow: #000000;
|
||||
scrim: #000000;
|
||||
surfaceTint: #84D2E7;
|
||||
primary: #84D2E7;
|
||||
onPrimary: #003640;
|
||||
primaryContainer: #004E5C;
|
||||
onPrimaryContainer: #ACEDFF;
|
||||
inversePrimary: #00687A;
|
||||
secondary: #B2CBD2;
|
||||
onSecondary: #1D343A;
|
||||
secondaryContainer: #334A51;
|
||||
onSecondaryContainer: #CEE7EF;
|
||||
tertiary: #BFC4EB;
|
||||
onTertiary: #282F4D;
|
||||
tertiaryContainer: #898FB3;
|
||||
onTertiaryContainer: #000000;
|
||||
error: #FFB4AB;
|
||||
onError: #690005;
|
||||
errorContainer: #93000A;
|
||||
onErrorContainer: #FFDAD6;
|
||||
primaryFixed: #ACEDFF;
|
||||
primaryFixedDim: #84D2E7;
|
||||
onPrimaryFixed: #001F26;
|
||||
onPrimaryFixedVariant: #004E5C;
|
||||
secondaryFixed: #CEE7EF;
|
||||
secondaryFixedDim: #B2CBD2;
|
||||
onSecondaryFixed: #061F24;
|
||||
onSecondaryFixedVariant: #334A51;
|
||||
tertiaryFixed: #DDE1FF;
|
||||
tertiaryFixedDim: #BFC4EB;
|
||||
onTertiaryFixed: #131937;
|
||||
onTertiaryFixedVariant: #3F4565;
|
||||
success: #B5CCBA;
|
||||
onSuccess: #213528;
|
||||
successContainer: #374B3E;
|
||||
onSuccessContainer: #D1E9D6;
|
||||
term0: #151B1E;
|
||||
term1: #8383FF;
|
||||
term2: #63DEDC;
|
||||
term3: #75FCDD;
|
||||
term4: #78B4C2;
|
||||
term5: #7AAEEA;
|
||||
term6: #81D7DE;
|
||||
term7: #CCDBD5;
|
||||
term8: #B1BCB5;
|
||||
term9: #BCB9FF;
|
||||
term10: #F5FFFE;
|
||||
term11: #FFFFFF;
|
||||
term12: #BEE3E8;
|
||||
term13: #C8DAFF;
|
||||
term14: #ECFEFF;
|
||||
term15: #CBE7F0;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
@theme "~/.config/rofi/style.rasi"
|
||||
@@ -0,0 +1,180 @@
|
||||
/**
|
||||
*
|
||||
* Author : Aditya Shakya (adi1090x)
|
||||
* Github : @adi1090x
|
||||
*
|
||||
* Rofi Theme File
|
||||
* Rofi Version: 1.7.3
|
||||
**/
|
||||
|
||||
/* Import Pywal colors */
|
||||
@import "~/.config/rofi/colors.rasi"
|
||||
|
||||
|
||||
* {
|
||||
font: "Iosevka 15";
|
||||
width: 800;
|
||||
height: 500;
|
||||
actve: @active-background;
|
||||
urgent: @urgent-background;
|
||||
}
|
||||
/*****----- Configuration -----*****/
|
||||
configuration {
|
||||
modi: "drun,window";
|
||||
show-icons: true;
|
||||
icon-theme: "Papirus";
|
||||
display-drun: " ";
|
||||
drun-display-format: "{name}";
|
||||
}
|
||||
|
||||
/*****----- Main Window -----*****/
|
||||
window {
|
||||
transparency: "real";
|
||||
location: center;
|
||||
anchor: center;
|
||||
fullscreen: false;
|
||||
x-offset: 0px;
|
||||
y-offset: 0px;
|
||||
|
||||
enabled: true;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 12px;
|
||||
border-color: @secondary;
|
||||
background-color: @background;
|
||||
cursor: "default";
|
||||
border: 2px;
|
||||
border-color: @onSecondary;
|
||||
}
|
||||
|
||||
/*****----- Main Box -----*****/
|
||||
mainbox {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 20px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px 0px 0px 0px;
|
||||
border-color: @onSecondary;
|
||||
background-color: transparent;
|
||||
children: [ "inputbar", "listview" ];
|
||||
}
|
||||
|
||||
/*****----- Inputbar -----*****/
|
||||
inputbar {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 15px;
|
||||
border: 2px solid;
|
||||
border-radius: 12px;
|
||||
border-color: @onSecondary;
|
||||
background-color: @secondaryContainer;
|
||||
text-color: @secondary;
|
||||
children: [ "prompt", "entry" ];
|
||||
}
|
||||
|
||||
prompt {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
textbox-prompt-colon {
|
||||
enabled: true;
|
||||
expand: false;
|
||||
str: "::";
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
entry {
|
||||
enabled: true;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
cursor: text;
|
||||
placeholder: "Search apps ...";
|
||||
placeholder-color: inherit;
|
||||
}
|
||||
|
||||
/*****----- Listview -----*****/
|
||||
listview {
|
||||
enabled: true;
|
||||
columns: 2;
|
||||
lines: 8;
|
||||
cycle: true;
|
||||
dynamic: true;
|
||||
scrollbar: false;
|
||||
layout: vertical;
|
||||
reverse: false;
|
||||
fixed-height: true;
|
||||
fixed-columns: true;
|
||||
|
||||
spacing: 5px;
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
border: 0px solid;
|
||||
border-radius: 0px;
|
||||
border-color: @primary;
|
||||
background-color: transparent;
|
||||
text-color: @onBackground;
|
||||
cursor: "default";
|
||||
}
|
||||
scrollbar {
|
||||
handle-width: 5px ;
|
||||
handle-color: @secondary;
|
||||
border-radius: 0px;
|
||||
background-color: @primary;
|
||||
}
|
||||
|
||||
/*****----- Elements -----*****/
|
||||
element {
|
||||
enabled: true;
|
||||
spacing: 10px;
|
||||
margin: 0px;
|
||||
padding: 5px;
|
||||
border: 0px solid;
|
||||
border-radius: 12px;
|
||||
border-color: @onSecondaryContainer;
|
||||
background-color: transparent;
|
||||
text-color: @onBackground;
|
||||
cursor: pointer;
|
||||
}
|
||||
element normal.normal {
|
||||
background-color: transparent;
|
||||
text-color: @onBackground;
|
||||
}
|
||||
element selected.normal {
|
||||
background-color: @primary;
|
||||
text-color: @onPrimary;
|
||||
}
|
||||
element-icon {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
size: 40px;
|
||||
cursor: inherit;
|
||||
}
|
||||
element-text {
|
||||
background-color: transparent;
|
||||
text-color: inherit;
|
||||
highlight: inherit;
|
||||
cursor: inherit;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
}
|
||||
|
||||
/*****----- Message -----*****/
|
||||
error-message {
|
||||
padding: 15px;
|
||||
border: 2px solid;
|
||||
border-radius: 12px;
|
||||
border-color: @onErrorContainer;
|
||||
background-color: @onError;
|
||||
text-color: @error;
|
||||
}
|
||||
textbox {
|
||||
background-color: @onPrimary;
|
||||
text-color: @onBackground;
|
||||
vertical-align: 0.5;
|
||||
horizontal-align: 0.0;
|
||||
highlight: none;
|
||||
}
|
||||
@@ -5,18 +5,21 @@ pkgdesc='Illogical Impulse Fonts and Theming Dependencies'
|
||||
arch=(any)
|
||||
license=(None)
|
||||
depends=(
|
||||
adw-gtk-theme-git
|
||||
qt5ct
|
||||
qt5-wayland
|
||||
fontconfig
|
||||
ttf-readex-pro
|
||||
ttf-jetbrains-mono-nerd
|
||||
ttf-material-symbols-variable-git
|
||||
ttf-space-mono-nerd
|
||||
ttf-rubik-vf
|
||||
ttf-gabarito-git
|
||||
fish
|
||||
foot
|
||||
starship
|
||||
adw-gtk-theme-git
|
||||
qt5ct
|
||||
qt5-wayland
|
||||
qt6ct
|
||||
kvantum
|
||||
kvantum-qt5
|
||||
papirus-folders
|
||||
fontconfig
|
||||
ttf-readex-pro
|
||||
ttf-jetbrains-mono-nerd
|
||||
ttf-material-symbols-variable-git
|
||||
ttf-space-mono-nerd
|
||||
ttf-rubik-vf
|
||||
ttf-gabarito-git
|
||||
fish
|
||||
foot
|
||||
starship
|
||||
)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
pkgname=illogical-impulse-microtex-git
|
||||
_pkgname=MicroTeX
|
||||
pkgver=r492.d87ebec
|
||||
pkgver=r494.0e3707f
|
||||
pkgrel=1
|
||||
pkgdesc='MicroTeX for illogical-impulse dotfiles.'
|
||||
#pkgdesc="A dynamic, cross-platform, and embeddable LaTeX rendering library"
|
||||
|
||||
@@ -5,10 +5,10 @@ pkgdesc='Illogical Impulse Python Dependencies'
|
||||
arch=(any)
|
||||
license=(None)
|
||||
depends=(
|
||||
python-build
|
||||
python-pillow
|
||||
python-pywal
|
||||
python-setuptools-scm
|
||||
python-wheel
|
||||
python-build
|
||||
python-pillow
|
||||
python-pywal16
|
||||
python-setuptools-scm
|
||||
python-wheel
|
||||
python-webcolors
|
||||
)
|
||||
|
||||
|
||||
@@ -5,11 +5,10 @@ pkgdesc='Illogical Impulse Screenshot and Recording Dependencies'
|
||||
arch=(any)
|
||||
license=(None)
|
||||
depends=(
|
||||
swappy
|
||||
wf-recorder
|
||||
grim
|
||||
tesseract
|
||||
tesseract-data-eng
|
||||
slurp
|
||||
swappy
|
||||
wf-recorder
|
||||
grim
|
||||
tesseract
|
||||
tesseract-data-eng
|
||||
slurp
|
||||
)
|
||||
|
||||
|
||||
@@ -5,15 +5,14 @@ pkgdesc='Illogical Impulse Widget Dependencies'
|
||||
arch=(any)
|
||||
license=(None)
|
||||
depends=(
|
||||
dart-sass
|
||||
python-pywayland
|
||||
python-psutil
|
||||
hypridle-git
|
||||
hyprutils-git
|
||||
hyprlock-git
|
||||
wlogout
|
||||
wl-clipboard
|
||||
hyprpicker-git
|
||||
anyrun-git
|
||||
dart-sass
|
||||
python-pywayland
|
||||
python-psutil
|
||||
hypridle-git
|
||||
hyprutils-git
|
||||
hyprlock-git
|
||||
wlogout
|
||||
wl-clipboard
|
||||
hyprpicker-git
|
||||
anyrun-git
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user