| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
| |
moves std::shared_ptrs to a new implementation
Advantages:
- you can dereference a weak_ptr directly. This will obviously segfault on a nullptr deref if it's expired.
- this is useful to avoid the .lock() hell where we are 100% sure the pointer _should_ be valid. (and if it isn't, it should throw.)
- weak_ptrs are still valid while the SP is being destroyed.
- reasoning: while an object (e.g. CWindow) is being destroyed, its `weak_ptr self` should be accessible (the sp is still alive, and so is CWindow), but it's not because by stl it's already expired (to prevent resurrection)
- this impl solves it differently. w_p is expired, but can still be dereferenced and used. Creating `s_p`s is not possible anymore, though.
- this is useful in destructors and callbacks.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Window storage rework - part 1
* format
* remove useless include
* fix pch
* format
* fix crash in dwindle
* fix vram leak
* prefer .expired() for bool checks
|
| |
|
|
|
| |
* refactor workspaces to use ptrs
* clang-format
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
* only limit drag resizes
* change to not equals
* remove extra parentheses
|
| |
|
|
|
|
|
| |
being created (#5141)
* fix incorrect rendering when manually moving a window when its being created
* add setAnimationsToMove
|
| |
|
| |
Co-authored-by: djvs <djvs@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
| |
* Resize corner config thing
* clang-format
---------
Co-authored-by: djvs <djvs@users.noreply.github.com>
|
| |
|
|
| |
fixes a bug where the tiled window would be on top
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* rebase
* simplify and remove prop
* Stuff
- add back win prop
- change minsize defaults
- change request formatting for setprop
* style fix
* remove empty line
* change defaults
* redo string to vec
* remove redundant parsing
* change to vec
* support commas
* remove static rules
* take out garbage
* format
* don't allow commas and resize on setprop
* use isNumber
|
| |
|
|
|
|
|
|
|
|
|
| |
monitors (#4553)
* resize-limiter: add additional check for low-hz monitors
* simplify checker
* add comment
* rename variable
|
| |
|
|
|
| |
Similar to the `focuswindow` dispatcher, when focusing a window with
wlr-foreign-toplevel-management, the cursor should be warped. Otherwise, the
focus is lost immediately after the cursor moves.
|
| | |
|
| |
|
|
| |
fixes #4920
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* animation: Refactor AnimatedVariable
This commit decomposes the AnimatedVariable class into a base class
with the common attribute to all variable types and a templated derived
type containing strongly typed info on the type being animated.
Access to the typed version is perfomed using the visitor pattern. A
utility is provided to build a visitor on the fly using lambdas.
Adding a new type to be animated should just be a matter of adding the
typed in the list defined by the ANIMABLE_TYPES macro
The size of the commit is justified by the API change in the
AnimatedVariable class. No more vec(), fl() or col() method but a unified
value() method.
* animation: Remove visitor pattern
* animation: Fix coding style
* animation: Fix coding style
|
| |
|
|
| |
fixes #4022
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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>
|
| |
|
|
|
| |
* add forcenofocus
* change nofocus to overridable var
|
| |
|
| |
Also unifies vectorToWindow funcs
|
| | |
|
| |
|
| |
Also restore the behaviour introduced in bc4a51dbbb285391c9ed45b1b6ca7c2037b7ba71
|
| |
|
|
|
|
|
|
|
| |
* 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
|
| |
|
|
|
|
|
| |
* Unify input handling on decorations
* Make input methods private
* Optional data
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
* 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
|
| | |
|
| | |
|
| |
|
|
| |
fixes #3792
|
| |
|
|
| |
maybe finally will end #3761
|
| |
|
|
| |
fixes #3767
|
| |
|
|
|
|
|
| |
* box impl
* remove unused operators
* missed applyfromwlr
|
| | |
|
| | |
|
| |
|
| |
Co-authored-by: Leeman <lstrout@enlj.com>
|
| | |
|
| |
|
|
|
|
|
| |
compile time (#3377)
* fix(log): use constexpr format string
* deprecate getFormat
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* feat(layout): add direction parameter to onWindowCreated and friends
In addition:
- Implement directional moveWindowOutOfGroup for `movewindoworgroup`
when using dwindle layout. (augmentation of #3006)
- Replace `DWindleLayout::OneTimeFocus` with `IHyprLayout::eDirection`.
- Slight formatting change (clang-format).
* fix: nullptr dereference in dwindle window creation
* refactor: generalized eDirection
* refactor: eliminate DIRECTION_NONE
* Update IHyprLayout.hpp
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Allow the layout to control how windows are raised in groups
Previously windows could only be focused if they weren't hidden or
were part of a group. This shifts the logic for picking the window out
of a group to the layout allowing for alternate group implementations
to function normally.
* Fix doc comment consistency
* Fix tabs in comments
|
| | |
|
| |
|
| |
Signed-off-by: pdamianik <39028343+pdamianik@users.noreply.github.com>
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
| | |
|
| | |
|
| |
|
|
| |
Fixes #3069, if an xdg dialog pops up and is partially off bounds, just move it to the center.
|