summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* copilotscrolling/focus_edge_mslittleblack1112026-05-091-6/+15
|
* fixlittleblack1112026-05-082-4/+25
|
* tlittleblack1112026-05-083-2/+19
|
* config: always call refresh after config reload (#14346)Vaxry2026-05-082-4/+2
|
* config: find lua paths first (#14335)Mihai Fufezan2026-05-081-27/+14
| | | | | * config: find lua paths first * config/supplementary/jeremy: use designated initializer list
* gestures: add scroll_move (#14063)Vaxry2026-05-077-4/+349
|
* renderer: more FP16 fixes (#14070)UjinT342026-05-0727-271/+605
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix fp16 blur with invalidation * restore tonemap code * fix fade outs * add sdr compat for unaware surfaces * use a better work space, not linear, only for sdr * fix hl tf -> wp tf * cache workbuffer descriptions * linear not normalised WIP * clear offload fb * CM math * fix includes * use precalculated cm for shadows * inner glow cm * quad cm * fix unmodified copy * codegen * cache color CM * mark blur dirty when CM/DS changes * avoid icc workbuffer * fp16 blur finish hack * fix output hdr luminances * use srgb for mirroring/sharing with fp16 * defaults people --------- Co-authored-by: Vaxry <vaxry@vaxry.net>
* i18n: update brazillian portuguese (pt_BR) translation (#14248)Nakaeri2026-05-071-0/+13
|
* layout/scrolling: handle fullscreen manually (#14190)Vaxry2026-05-0729-163/+790
| | | Makes scroll handle fullscreen by itself, allowing for fs scrolls.
* config: use lua by default, generate lua if no config presentVaxry2026-05-076-22/+34
|
* propRefresher: fix misnamed valueVaxry2026-05-061-1/+1
|
* config/legacy: fix missing fallbacks crashing device gettersVaxry2026-05-061-4/+20
|
* config: fix propRefresher to not run on first launchVaxry2026-05-065-64/+20
|
* config/lua: fix device bool int reads (#14313)ImperishableSecret2026-05-0614-9/+60
| | | | | * config/lua: fix device bool int reads * config/lua: fix device typed reads
* config/lua: add simple layout API (#14258)Vaxry2026-05-0615-33/+731
| | | Adds a simple layout lua api
* config/refresher: refresh watcher state properly (#14307)Vaxry2026-05-065-6/+7
| | | ref #14301
* config/refresher: fix refreshing of cursor zooms (#14283)Vaxry2026-05-065-16/+19
|
* groups: add groupbar middle_click_close option (#14242)Maxim Andreev2026-05-052-3/+8
|
* config: add device tags (#13728)ArchSav2026-05-055-3/+20
| | | | | --------- Co-authored-by: Mio Argillander <mio@argillander.me>
* windows/focus: add fallbacks when focussing workspaces (#14270)fazzi2026-05-046-12/+29
|
* config/legacy: fix crash on getConfigValue of plugin fnsVaxry2026-05-041-0/+9
|
* render: scale background to monitor resolution (#14250)davc0n2026-05-042-12/+61
| | | | | | | | | | | | | * render: scale background to monitor resolution Currently the background is not scaled, e.g. 8k size image always uses ~128Mb of VRAM. We could reduce the consumption for low-end devices and monitors with lower resolution: - ~8Mb for 1080p - ~16Mb for 2k - ~32Mb for 4k * render: use gpu to scale bgtex and fix missing reset on size change
* config/lua: add clear tag api (#14273)Lichie2026-05-035-0/+35
|
* config/lua: fix dispatcher shapes to not be callable (#14268)Vaxry2026-05-035-10/+155
| | | this would only lead to abuse, explicitly forbid it
* compositor: move SessionLockManager init from STAGE_LATE to STAGE_BASICINIT ↵Maximilian Seidler2026-05-031-3/+3
| | | | (#14272)
* InputManager: add guards to confineToRegion to avoid issues (#14269)fazzi2026-05-031-0/+6
|
* sessionLock: send locked instead of denied when missing a lock frame for 5 ↵Maximilian Seidler2026-05-032-21/+16
| | | | | | | | | | | | | | | | seconds (#14271) The protocol seems to allow this, because it explicitly mentions either session lock surface or compositor blanking the output in this sentence: > The locked event must not be sent until a new "locked" frame (either from a session lock surface or the compositor blanking the output) has been presented on all outputs and no security sensitive normal/unlocked content is possibly visible. Since `locked_screen_delay` is capped to 5 seconds, after the 5 seconds this timer is registered for, we assume that all outputs are covered either by lockedead or by an actual lock frame. Thus sending locked is ok.
* desktop/windowRule: add parser switch for confine pointer (#14263)fazzi2026-05-021-0/+1
|
* layout/master: fix rollprev/rollnext focusing the wrong window (#14209)Kyler Clay2026-05-021-4/+12
| | | | | * layout/master: fix rollprev/rollnext focusing the wrong window * tests/master: add tests for rollnext/rollprev focus
* screenshare: round captureBox after scaling to fix region capture at ↵Tony Miller2026-05-021-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | fractional scales (#14257) After scaling m_captureBox from logical to pixel coordinates, the box may have non-integer dimensions (e.g. logical 401x301 at scale 1.25 -> pixel 501.25x376.25). m_bufferSize is then computed as captureBox.size() and sent to the client as int32 width/height (truncating the fraction), but m_bufferSize itself stays as a fractional Vector2D. When the client allocates the integer-sized buffer and submits it, CScreenshareFrame::share() rejects it with ERROR_BUFFER_SIZE because Vector2D::operator== is exact double comparison: (501, 376) != (501.25, 376.25). The frame is sent failed, and the client retries forever. The SHARE_WINDOW path already rounds its bufferSize; the SHARE_REGION path didn't. Round the captureBox immediately after scaling so all downstream consumers (m_bufferSize, render translates) see clean integer pixel coordinates. Reproducer at scale 1.25 on a 1920x1080 monitor: wf-recorder -g '500,200 401x301' -f /tmp/x.mp4 # "Failed to copy frame, retrying..." until exit wf-recorder -g '500,200 400x300' -f /tmp/x.mp4 # works (400*1.25=500, 300*1.25=375, both integer)
* internal: improve cursor size logging (#14180)Niko Savola2026-05-021-2/+2
|
* desktop/windowRule: add `confine_pointer` window rule (#13379)fazzi2026-05-026-27/+55
|
* hyprctl: fix bools in getoptionVaxry2026-05-021-0/+4
|
* keybinds: fix keycode matching on lua (#14254)Vaxry2026-05-024-33/+66
|
* config/lua: workspace.move/rename should accept "workspace" instead of "id" ↵Gregor2026-05-021-3/+3
| | | | as a parameter (#14232)
* renderer: only set presentationmode when required (#14252)Tom Englund2026-05-021-2/+3
| | | | if guard the setPresentationMode with the current state, shows up in profiling as minor waste on each frame.
* layout/dwindle,master: return invalid layoutmsg errorsVaxry2026-05-022-2/+4
|
* gestures: add live pinch cursor zoom (#14049)Barrett Ruth2026-05-024-12/+86
|
* tests: fix gtests crashing (#14244)Vaxry2026-05-012-4/+7
|
* hyprctl: fix getoption with custom types (#14243)Vaxry2026-05-011-0/+17
|
* screenshare: adjust session cleanup and event emission order (#14229)Eren2026-05-012-8/+10
| | | | | | | | | | | | | | | | * fix(screenshare): adjust session cleanup and event emission order Revised the handling of `stoppedListener` initialization in `getManagedSession` to ensure correct scoping and lifecycle management. Updated the `stop` method in `CScreenshareSession` to adjust the order of `screenshareEvents` and `stopped.emit()` to prevent potential use-after-free scenarios. * fix(screenshare): ensure managedSession removal uses consistent target reference This change updates the lambda in the stopped listener to use a pre-fetched target pointer for comparison when erasing sessions. * fix(screenshare): use early-return and smart ptr comparison in session cleanup
* protocolMgr: set m_self properly when updating mirrored outputsVaxry2026-05-011-1/+3
| | | | | | When we have onMonitorModeChange, we can't leave an output with a null m_self as that will fuck up other things wanting a ref ref https://github.com/basecamp/omarchy/issues/5457
* config/lua: add noopVaxry2026-05-011-0/+10
|
* cleanup: avoid repeated weak_ptr::lock() usage in MasterAlgorithm (#14226)Visal Vijay2026-04-301-3/+9
|
* helpers/systemInfo: extract info fns (#14222)Vaxry2026-04-307-289/+323
|
* xdg-shell: queue state updates for toplevel (#14227)Vaxry2026-04-304-38/+93
| | | ref https://github.com/hyprwm/Hyprland/discussions/14224
* splashes: update splashesVaxry2026-04-301-42/+15
|
* config/workspace-rules: support modifying persistent and monitor (#14217)shezdy2026-04-306-17/+17
| | | | | * workspace rules: support modifying persistent and monitor * support modifying isDefault
* monitor: fix centered floating windows off-screen in special workspace (#14203)Zebra27112026-04-301-1/+1
| | | Signed-off-by: Zebra2711 <zebra2711t@gmail.com>
* config/actions: fix misuse of ActionResult's error type (#14221)Vaxry2026-04-302-24/+23
|