Vaxry
13f6f0b923
Migrate the config to hyprlang ( #4656 )
...
* Migrate to hyprlang
* pop up errors
* fix swapped args
* Meson & Nix: build with hyprlang
* CI: add hyprlang to setup action
* add infra for plugin stuff
* fix hyprctl getoption
* fix hyprctl getoption with json
* format
* fix post parse logic
* fix autogen config
* oops missed exec-once
* fmt
* fix ws rules
* require 0.3.0 for hyprlang
* nix: flaek
* minor type fixes
* fix cfg usages in swipe
* use cvarlist for ws rules
* fix throw in addPluginConfigVar
* Nix: update hyprlang
* minor fixes
* fix disableLogs
* mention hyprlang docs
* bump hyprlang dep in cmake
* Meson: bump min hyprlang version
Nix: update hyprlang
* minor fix
* Nix: update meson patch
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2024-02-18 15:00:34 +00:00
Ben Landon
289d4241be
groupbar: scale groupbar text according to monitor scale ( #4640 )
2024-02-08 22:29:10 +00:00
MightyPlaza
f14c5ea5c5
groupbar: separate gradients from title ( #4444 )
...
* separate gradients from title logic
modified: src/config/ConfigManager.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* fix disabled extents
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* fix disabled height
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
2024-01-15 16:17:42 +01:00
MightyPlaza
2ba2c8aeee
groupbar: improve gradient handling ( #4390 )
...
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
2024-01-08 19:38:22 +01:00
813af393f1
layout: update rules before applying fullscreen nodes in layouts
2024-01-02 14:21:36 +01:00
dranull
583b05a8c6
groupbar: Drag single window instead of destroying group ( #4327 )
2024-01-02 13:37:03 +01:00
MightyPlaza
2ad2e1d5f5
groupbar: add enabling groupbar and setting priority ( #4299 )
2023-12-30 15:18:53 +01:00
dranull
5f8e4068e5
groupbar: Middle click on groupbar to close tab ( #4297 )
...
* Prevent window swapping when the head is removed
* Bring floating windows to top when selected
* Allow clicks on gropubar in fullscreen 1
* Close window on groupbar with middle click
2023-12-30 00:38:12 +01:00
9242b03317
internal: minor include fixes and missed format
2023-12-29 10:27:09 +01:00
dranull
8321d6be46
internal: Unify input handling on decorations ( #4280 )
...
* Unify input handling on decorations
* Make input methods private
* Optional data
2023-12-28 23:54:41 +01:00
MightyPlaza
5f65946c84
hyprctl: add decorations ( #4275 )
...
* add hyprctl decorations
modified: hyprctl/main.cpp
modified: src/debug/HyprCtl.cpp
modified: src/render/decorations/CHyprBorderDecoration.cpp
modified: src/render/decorations/CHyprBorderDecoration.hpp
modified: src/render/decorations/CHyprDropShadowDecoration.cpp
modified: src/render/decorations/CHyprDropShadowDecoration.hpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.hpp
modified: src/render/decorations/IHyprWindowDecoration.cpp
modified: src/render/decorations/IHyprWindowDecoration.hpp
* fixes
modified: hyprctl/main.cpp
modified: src/render/decorations/IHyprWindowDecoration.cpp
2023-12-28 16:38:16 +01:00
MightyPlaza
1ecd173c7a
groupbar: remove extra border size from groupbars ( #4262 )
...
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
2023-12-27 11:43:55 +01:00
MightyPlaza
b25b06430b
groupbar: add egl context to refreshGroupBarGradients() ( #4238 )
...
* add egl context to refreshGroupBarGradients()
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* don't unsetEGL
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
2023-12-24 19:29:04 +01:00
dranull
5c7e23f86b
shadow: Avoid rounded shadows when rounding is 0 ( #4230 )
2023-12-23 20:40:07 +01:00
b9c1414f25
border: fix missed translate by offset
2023-12-23 16:11:26 +01:00
c416880cf9
shadow: correctly scale boxes
2023-12-22 19:54:31 +01:00
8191e635a3
deco-positioner: include sticky in sent geometry
2023-12-11 16:46:20 +00:00
167f2ed3b2
border: fix failed assert on small windows
...
fixes #4115
2023-12-10 19:32:03 +00:00
Vaxry
9f5b9053c6
internal: Remake borders as window decorations ( #4104 )
2023-12-10 16:28:12 +00:00
François Conzelmann
4a42344e97
style/ci: apply clang-format and verify it in ci ( #4039 )
...
* style: apply clang-format
* ci: add new clang-format job to CI
2023-12-06 22:54:56 +00:00
b80c72c7dd
groupbar: fix crash in renderGradientTo
...
fixes #3985
2023-11-29 13:36:37 +00:00
e2f18f8c7f
groupbar: more safety around gradient textures
2023-11-28 19:03:02 +00:00
MightyPlaza
7a0a5666d5
groupbar: allow reload and fix locked groupbar gradient ( #3546 )
...
modified: src/config/ConfigManager.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.hpp
2023-11-26 17:59:49 +00:00
thejch
7d1c8d827a
shadow: add workspace offset to floating window shadow ( #3906 )
2023-11-20 22:34:28 +00:00
MightyPlaza
7e0c90b92c
groupbar: fix text pos with verical offset ( #3893 )
...
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
2023-11-19 12:29:26 +00:00
MightyPlaza
add23a9ba2
group: fix dragging into floating groups ( #3719 )
...
* allow dragging into floating groups
modified: src/Compositor.cpp
modified: src/Compositor.hpp
modified: src/layout/IHyprLayout.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* floating-only
modified: src/layout/IHyprLayout.cpp
2023-11-19 12:29:01 +00:00
4868d4dfd3
shadow: avoid fatal mutation of the windowBox for calcs
...
fixes #3865
2023-11-16 17:31:52 +00:00
28ef18a921
shadow: avoid using glClear and don't draw behind window if ignore_window
...
fixes #3860
2023-11-16 11:42:53 +00:00
Dickby
91d6be1f09
groupbar: Fix position of groupbar titles on monitor scales != 1.0 ( #3856 )
2023-11-15 20:32:44 +00:00
5edb4e4a30
decorations: recalc layout and positioner on add/remove
2023-11-13 16:42:58 +00:00
45e86d4fdf
groupbar: translate box by workspace offset
2023-11-12 22:40:21 +00:00
0ba2e68704
deco-positioner: don't remove hidden windows' data
2023-11-12 17:02:42 +00:00
91cbe93cf8
decoration: add NON_SOLID flag for shadow
...
fixes #3841
2023-11-12 13:01:23 +00:00
f39a6ca17c
decoration-positioner: improve stability
2023-11-11 18:07:56 +00:00
52cf122a0a
shadow: move workspace offset calcs to draw
...
fixes #3829
2023-11-11 16:15:23 +00:00
bea828ea45
decoration-positioner: improve extent handling
2023-11-11 15:18:17 +00:00
cc04b52ce1
deco-positioner: recalc after uncache
2023-11-11 14:52:27 +00:00
Vaxry
9be6fbf5ea
decorations: Decoration Positioner ( #3800 )
2023-11-11 14:37:17 +00:00
e44d6de555
shadow: alpha treatment improvements
2023-11-11 00:52:40 +00:00
14195835ef
opengl: switch to black-and-white for alpha mattes
...
also fixes shadows on 10b
2023-11-09 22:11:54 +00:00
David Leal
0476e1b498
groups: add option to configure font name ( #3751 )
2023-11-05 19:25:50 +00:00
2b07d54bc7
shadow: fix missed fullBox.scale
2023-11-04 20:11:22 +00:00
66a3719b86
renderer: allow transform enabling from outside opengl
2023-11-04 19:35:49 +00:00
64a084477e
shadows: fix on transformed
2023-11-04 19:32:50 +00:00
7a09d24065
shadow: fix ignore_window false
2023-11-04 17:45:31 +00:00
Vaxry
55b4f84fea
Internal: Hyprland box implementation ( #3755 )
...
* box impl
* remove unused operators
* missed applyfromwlr
2023-11-04 17:03:05 +00:00
Vaxry
73e78f05ad
Decos: Window decoration flags, shadow improvements ( #3739 )
2023-11-04 13:10:52 +00:00
MightyPlaza
c44e255194
group: fixes for dragging groups onto groupbars ( #3708 )
...
* fixes for dragging groups onto groupbars
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* use onWindowRemoved()
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
2023-11-01 19:13:39 +00:00
MightyPlaza
a1924ae435
internal: create canBeGroupedInto() ( #3693 )
...
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
2023-10-30 14:54:12 +00:00
MightyPlaza
9abfa9efc6
input: handle mouse on decorations ( #3560 )
2023-10-29 20:14:47 +00:00
MightyPlaza
d537815d43
groups: create group and groupbar config sections ( #3522 )
...
* config: create group section
modified: src/Compositor.cpp
modified: src/config/ConfigManager.cpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* separate group border and groupbar colors
modified: src/Compositor.cpp
modified: src/config/ConfigManager.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* add new line
modified: config/ConfigManager.cpp
2023-10-10 17:42:45 +01:00
memchr
69439871e6
refactor: replace manual iteration of CWindow with existing methods ( #3147 )
2023-09-04 15:13:39 +02:00
MightyPlaza
b10cae3010
decos: groupbar mouse interaction ( #3102 )
...
* allow groupbar clicking
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.hpp
* remove setting pos inside insertWindowToGroup()
modified: src/Window.cpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
* add group window by index and group size functions
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/managers/input/InputManager.cpp
* allow dragging into groupbar
modified: src/Window.cpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
* allow dragging from groupbar
modified: src/managers/KeybindManager.cpp
* try groupbar clicking before border resize
modified: src/managers/input/InputManager.cpp
* block grabbing groupbar on floating (crash)
remove later when crashing is fixed
modified: src/managers/KeybindManager.cpp
* remove redundant { }
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
* implement getWindowDecorationBox()
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/CHyprDropShadowDecoration.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
modified: src/render/decorations/IHyprWindowDecoration.cpp
modified: src/render/decorations/IHyprWindowDecoration.hpp
* fix crash when moveoutofgroup in floating windows
also removes dragging from floating windows limitation
modified: src/layout/IHyprLayout.cpp
modified: src/managers/KeybindManager.cpp
* use CRegion in getWindowDecorationBox()
modified: src/helpers/Region.cpp
modified: src/helpers/Region.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/IHyprWindowDecoration.cpp
modified: src/render/decorations/IHyprWindowDecoration.hpp
* add groupbar scrolling
modified: src/config/ConfigManager.cpp
modified: src/managers/input/InputManager.cpp
* change name to getWindowDecorationRegion()
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/InputManager.cpp
modified: src/render/decorations/IHyprWindowDecoration.cpp
modified: src/render/decorations/IHyprWindowDecoration.hpp
* make dragging from group less hacky for floating
modified: src/managers/KeybindManager.cpp
2023-08-30 17:39:22 +02:00
MightyPlaza
7155b4c266
renderer: Border improvements ( #2986 )
...
* simplify getting border size
modified: src/Window.cpp
modified: src/Window.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/MasterLayout.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* fix border damage and input box
modified: src/Window.cpp
modified: src/managers/AnimationManager.cpp
* add border size in resize_on_border box
modified: src/managers/input/InputManager.cpp
* simplify border (fixes possible typo)
modified: src/Window.cpp
* use updateSpecialRenderData()
modified: Window.cpp
modified: Window.hpp
modified: events/Windows.cpp
modified: layout/DwindleLayout.cpp
modified: layout/IHyprLayout.cpp
modified: layout/MasterLayout.cpp
modified: render/Renderer.cpp
* update window workspace rule data on reload
modified: src/config/ConfigManager.cpp
* use rounding()
modified: src/Window.cpp
2023-08-17 10:13:19 +02:00
MightyPlaza
739598717b
remove shadow no_gaps_when_only ( #2956 )
...
modified: src/Window.hpp
modified: src/config/ConfigManager.cpp
modified: src/config/ConfigManager.hpp
modified: src/layout/DwindleLayout.cpp
modified: src/render/decorations/CHyprDropShadowDecoration.cpp
2023-08-12 23:37:55 +02:00
261c3307f7
internal: cleanup headers in helpers/
2023-08-07 13:36:14 +02:00
MightyPlaza
d3bba2489d
render: Border fixes ( #2781 )
...
* Window.cpp
* layout
* CHyprGroupBarDecoration.cpp
2023-07-23 15:49:49 +02:00
vaxerski
9c9f56743e
groupbar: fix vram leak
2023-07-11 20:57:38 +02:00
MightyPlaza
05047f60f4
groupbar fixes ( #2630 )
...
Fixes multiple groupbar decoration issues:
- togglegroup removes fullscreen to avoid to avoid weird state
- fixes issue where a group had multiple windows with head = true
- fixes issue where merging 2 groups would cause a window to have 2 groupbar decorations
- fixes issue where merging a group with more than 1 window into another group would make windows have no groupbar decoration
- fixes issue where ungrouping windows could just move them into another group on the same workspace
---------
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-07-03 12:49:56 +02:00
83ad6b9af8
groupbar: fix damage calcs
2023-06-21 13:16:10 +02:00
vaxerski
0e31eaa157
shadow: drop useless damageEntire()
2023-06-13 18:50:45 +02:00
memchr
24ed9b061f
feat: add variable to customize locked group border color ( #2507 )
...
added variables:
- general:col.group_border_locked
- general:col.group_border_locked_active
2023-06-13 12:04:54 +02:00
9f72d508ae
groupbars: fix damage calcs
2023-05-31 19:53:58 +02:00
vaxerski
078ba6daa8
groupbars: add text color opt
2023-05-27 17:46:02 +02:00
vaxerski
799add8659
groupbars: fix reserved area on titles
2023-05-23 14:18:26 +02:00
vaxerski
90cb5fb672
groupbars: make gradients toggleable
2023-05-22 22:07:32 +02:00
vaxerski
d1ec314a03
groupbars: conserve VRAM by staticizing textures
2023-05-22 22:06:40 +02:00
vaxerski
7bcc01efb7
groupbars: fix minor alignment issues
2023-05-22 21:43:37 +02:00
vaxerski
206ac000b9
groupbars: add title and gradient rendering
2023-05-22 21:40:32 +02:00
vaxerski
1eb6cfd45c
groupbar: make exclusive
2023-05-22 20:52:41 +02:00
vaxerski
2187c6cf43
Allow decos to request interactivity
2023-02-28 22:32:42 +00:00
vaxerski
4b20d4f1ad
Added decoration reserved area
2023-02-28 19:36:36 +00:00
Vaxry
8b81f41e52
Plugin System ( #1590 )
...
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-02-27 12:32:38 +00:00
Vaxry
e5a4c0c986
Group/Tab Rework ( #1580 )
2023-02-19 21:07:32 +00:00
a2ae37396f
add hyprctl setprop
2023-01-24 19:05:43 +00:00
96198dae55
Normalize color storage
...
Colors are now normalized to 0 - 1 values instead of 0 - 255
causes calculations to be simpler and generally cleans up the codebase.
2023-01-05 19:25:45 +01:00
ddcae74e09
normalize gradients and denormalize in groupbar
2022-12-31 17:31:33 +01:00
228e630f40
fix group bar color calc
2022-12-31 17:04:41 +01:00
Vaxry
98a4fa2b0d
Added clang format ( #1239 )
...
* clang-format stuff and format files
2022-12-16 17:17:31 +00:00
vaxerski
c02bfc3897
fix extents in shadow deco
2022-11-16 15:35:36 +00:00
vaxerski
f41fe59cb6
fix shadow extent & offset calculations
2022-11-09 22:39:19 +00:00
vaxerski
1d2e4243dc
clamp shadow scale to 1
2022-11-07 22:51:26 +00:00
vaxerski
2a20cf5379
Added decoration:shadow_scale
2022-11-07 21:27:28 +00:00
Kainoa Kanter
ca2d2db0ef
Add windowrules for noblur and noshadow ( #884 )
2022-10-20 20:36:27 +01:00
vaxerski
34cd8b125a
rework focus system to be more safe and faster
2022-10-14 20:46:32 +01:00
1468001d3b
offset floating windows out of bounds on ws anims
2022-10-07 12:34:54 +01:00
vaxerski
3c27d1ab13
optimize vector config value setting
2022-09-30 17:03:14 +01:00
Felix Dick
bf3f519eb7
Remove trailing whitespace.
2022-09-25 20:07:48 +02:00
695411f1bd
don't decorate on only no gaps
2022-09-23 16:47:58 +01:00
7a9423c782
better dwindle swapping with groups
2022-09-20 18:04:39 +01:00
cf32d28082
fix groupbar being wonk on scaled
2022-09-18 12:13:16 +01:00
vaxerski
864e227f5d
fix decos on pinned
2022-09-11 20:27:59 +02:00
vaxerski
fbd2b4799d
Fix some more crimes against humanity
2022-09-03 22:49:52 +02:00
vaxerski
179562b646
fix dwindle groupbars
2022-08-29 19:52:35 +02:00
6cae44e2c0
fix custom rounding in shadow deco
2022-08-19 14:52:18 +02:00
f64f94ca56
scale rounding in shadows
2022-08-10 18:29:37 +02:00
vaxerski
d72f1cc644
fix various shadow damage issues
2022-08-05 19:23:53 +02:00
vaxerski
07f68bf72a
scale shadows properly
2022-08-04 11:18:33 +02:00
vaxerski
cb1a36faf0
missed 2 structs
2022-07-27 12:36:56 +02:00
vaxerski
31a079b347
added DPMS
2022-07-27 12:32:00 +02:00