600a128f83
compositor: allow windowfromregex tiled param
2023-11-05 16:22:43 +00:00
55825c301e
compositor: allow windowfromregex floating param
...
fixes #3766
2023-11-05 16:21:47 +00:00
d8b7ded18c
compositor: find windows in direction on floating
2023-11-05 16:18:41 +00:00
c4e1a9b13b
box: use std::round instead of std::floor in ::round()
...
fixes #3761 , possibly also #3511
2023-11-05 14:47:24 +00:00
9404972732
events: set reported size on floating map
...
fixes #3767
2023-11-05 14:12:55 +00:00
92e535025e
region: include box in the header
2023-11-04 23:12:08 +00:00
d3e5796ee1
layout: fix missed setWindowSize in no_gaps_when_only node apply
...
fixes #3758
2023-11-04 23:00:20 +00:00
56dec1c6a2
renderer: properly set currentFB on snapshot renders
2023-11-04 22:25:09 +00:00
931927de29
dwindle: move to CBox for expressing nodes
2023-11-04 21:45:34 +00:00
74cf2281dd
binds: add movefocus_cycles_fullscreen
...
fixes #3738
2023-11-04 21:03:08 +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
a3e20d2d5f
wlsurface: fix small detection
2023-11-04 17:39:56 +00:00
32b3d2b456
includes: include vector2d for sharedDefs
2023-11-04 17:27:21 +00:00
447c173cad
includes: include sharedDefs in includes.hpp
2023-11-04 17:04:10 +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
54e51b7acf
events: better adjust to unreported sizes for xwayland apps
...
fixes #3745
2023-11-04 13:09:33 +00:00
200cccdd3b
events: set reported size on the end of mapping
...
fixes #3743
2023-11-03 22:47:12 +00:00
15b25d5850
renderer: render oversized blur with respect to fade alpha
2023-11-03 21:58:02 +00:00
21ba8b363e
fractional-scale: fix addon existence check
2023-11-03 21:02:12 +00:00
9d2a5fb417
renderer: improvements to wayland surface small() detection
2023-11-03 19:12:09 +00:00
thejch
ed3d5053b2
Master: fix drop_at_cursor when there are only two windows ( #3734 )
...
* make drop_at_cursor work when dragging into a one-window workspace
* fix drop_at_cursor when new_is_master is enabled
2023-11-03 17:02:59 +00:00
93a2ac9de4
fractional-scale: post error on taken fs objects
...
fixes #3735
2023-11-03 15:51:43 +00:00
pastalian
49fdffacea
renderer: fix legacy_renderer build ( #3732 )
...
In GLES2, `GL_RGB10_A2` and `GL_UNSIGNED_INT_2_10_10_10_REV` are defined as
`GL_RGB10_A2_EXT` and `GL_UNSIGNED_INT_2_10_10_10_REV_EXT` respectively.
2023-11-03 15:47:20 +00:00
0f6e530798
layout: better storage for no fullscreen checks var
...
fixes #3731
2023-11-03 12:19:23 +00:00
88b47dfa83
xdg: use std::ceil for sending scale to surfaces
...
fixes #3724
2023-11-02 23:29:47 +00:00
ba9e7814b0
input: simulate movement only if mouse is over in open/close window
...
fixes #3726
2023-11-02 21:36:16 +00:00
thejch
f10996b575
master: fix moving window between monitors ( #3721 )
2023-11-02 17:20:32 +00:00
Dashie
062f749450
xdg: send unconstrain events after a popup reposition ( #3716 )
...
* fix: Use unconstrain_from_box after reposition request
* chore: Remove unused include
* chore: remove variable specifier
2023-11-01 20:31:52 +00:00
a4db48b46b
input: simulate mouse movement to fix focus on open/close window
...
fixes #3679
2023-11-01 19:50:32 +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
Vaxry
21e9313c10
Core: various unsafe state improvements ( #3713 )
...
Fixes #3637
2023-11-01 18:53:36 +00:00
7b32b4214d
layout: avoid redundant size sets on new fullscreen
2023-11-01 01:28:43 +00:00
ab5497a0c9
input: properly track xdg surfaces' geometry in vectorToSurfaceLocal
...
fixes #3703
2023-10-30 19:36:45 +00:00
1c9d6b94d1
renderer: fix small surface's blur region being offset by monitor coords
2023-10-30 16:20:30 +00:00
4b592d0819
renderer: properly pass 10-bit formats to opengl
2023-10-30 15:56:16 +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
cb6cfde6e8
window: update window reported size on damage events
2023-10-30 14:49:49 +00:00
8e91c038db
renderer: use optional for cursor surface storing
...
because nullptr is a valid surface.
fixes #3692
2023-10-30 00:18:40 +00:00
86318ce04f
input: let input-grabbing decos have prio over resize on border
2023-10-29 23:37:12 +00:00
59d6a12a7e
config: fixup usage of plugin in handles
...
would filter calls to keyword plugin: and stuff
2023-10-29 22:35:26 +00:00
935c90915a
pluginapi: fixup get_hash functions
2023-10-29 21:21:54 +00:00
b95c0c318e
renderer: fixup blend disable conditions in renderSurface
...
Fixes #3680
2023-10-29 20:54:14 +00:00
MightyPlaza
9abfa9efc6
input: handle mouse on decorations ( #3560 )
2023-10-29 20:14:47 +00:00
7a5234a0cc
input: better cursor image infrastructure
...
Improves handling of cursor images/surfaces
Fixes an issue with decos and cursors
Fixes #3471
2023-10-29 18:09:05 +00:00
af9440152e
pluginapi: add a config keyword adding method
2023-10-29 16:59:50 +00:00
7f4b0aaadc
hyprctl: add focusHistoryID to hyprctl clients
...
fixes #3661
2023-10-28 17:22:42 +01:00
4a4e13f8ac
events: ignore takes_over_fullscreen for floating windows
...
fixes #3622 . Floating windows should not respect the config option, they should be shown on top. That option is meant for tiled only
2023-10-27 12:45:17 +01:00
Antoine Dutot
1d47e2c408
input: fix force_zero_scaling for tablet and touch ( #3644 )
...
* Attempt to fix force_zero_scaling for tablet and touch for XWayland apps.
* Formated using clang-format.
* Simpler way to compute touch origin.
2023-10-27 10:15:29 +01:00
47256a6ed8
input: remove incorrect check in re-enter
...
fixes #3659
2023-10-26 22:21:13 +01:00
732b058489
input: send motion events on focusWindow if follows_mouse is 0
2023-10-26 22:17:49 +01:00
92cf1c2337
input: fix mouse down handling on unset last surface
...
fixes #3659
2023-10-26 18:54:19 +01:00
Tyler Schneider
07714dd5bd
input: Apply scaling to cursorPosOnActivate position ( #3664 )
2023-10-26 02:05:10 +01:00
b0b88a63b6
renderer: fix missed box scale
2023-10-25 22:38:14 +01:00
5b0dc779ed
renderer: blur properly behind small surfaces
2023-10-25 22:20:58 +01:00
8991be671f
renderer: respect viewporter dest on base surfaces
2023-10-25 22:05:04 +01:00
6650e4ba85
compositor: remove old comment
2023-10-25 18:32:04 +01:00
df00727310
deps: update wlroots
2023-10-25 00:27:16 +01:00
03771d3aa9
windowrules: add nearestneighbor
2023-10-24 21:29:03 +01:00
14a3c939ce
hyprctl: log monitor id in workspaces request
...
fixes #3640
2023-10-24 01:03:40 +01:00
aeb8c8fc70
internal: honor close_special_on_empty on moveToWorkspace
...
fixes #3602
2023-10-24 00:58:44 +01:00
616ff343b7
input: fix warn
2023-10-24 00:53:59 +01:00
2f6729f557
example: add special workspace to default config
2023-10-24 00:50:45 +01:00
015664eb4c
compositor: do not process fullscreen events in unsafe
2023-10-23 00:53:33 +01:00
98059b52d7
layershell: support ON_DEMAND keyboard mode
...
fixes #2264
2023-10-22 23:32:55 +01:00
Brenno Lemos
b135bd6cd4
workspacerules: Add new optional "default command" for auto-launching apps on new workspaces ( #3559 )
2023-10-22 23:11:03 +01:00
59f27e7f57
compositor: send preferred scale and transform events to surfaces
...
fixes #3635
2023-10-22 16:58:06 +01:00
d0367d8560
renderer: use preOffset pos instead of offset
...
offset is not passed to transformers, so if they change pos, decos will be in the wrong place
2023-10-21 19:51:14 +01:00
95db9108e5
transformers: allow modifying renderdata pre-pass
2023-10-21 19:25:44 +01:00
a61eb7694d
hooksystem: add callbackinfo struct and cancellable events
2023-10-21 14:52:43 +01:00
c6233a790f
renderer: avoid drawing invisibly small surfaces in renderSurface
2023-10-21 14:20:06 +01:00
92311d260a
renderer: add transformers
2023-10-21 14:15:56 +01:00
Roberto Previdi
af72404259
hyprctl: add a query for workspace rules ( #3630 )
2023-10-21 02:28:34 +01:00
4a79718fe8
renderer: fix shimmers when manual resizing
2023-10-20 20:32:47 +01:00
7f35f33b4c
surface/wayland: conform to small surface requirements
...
do not stretch small surfaces, instead center them if they fit.
2023-10-20 20:15:57 +01:00
thejch
bab2f6a664
master: fix movewindow across monitors ( #3628 )
2023-10-20 18:01:04 +01:00
thejch
bb9d0aed5b
compositor: Fix a lack of a check for workspace equality on same monitors in getInDirection ( #3625 )
...
* prevent movefocus and movewindow from going into main workspace when in special workspace
* compare workspace IDs instead
* change comparison and make code more readable
2023-10-20 10:53:37 +01:00
386708563c
workspacerules: search for special properly
...
fixes #3537
2023-10-19 16:04:59 +01:00
6e15590e98
shaders: support changing the outer radius of borders independently
2023-10-19 14:05:02 +01:00
a0b675ec9e
binds: add ignoreMods flag
2023-10-17 20:10:07 +01:00
André Silva
784f8a88fb
input: don't reset cursor movement timer on simulateMouseMovement ( #3595 )
...
Fixes #2570
2023-10-17 17:00:39 +01:00
thejch
20e7ccd480
master: fix resizing wrong window behind in special workspace ( #3591 )
2023-10-17 12:06:16 +01:00
eriedaberrie
421f5fb221
events: make new windows taking over fullscreen keep the existing mode ( #3588 )
2023-10-17 11:41:27 +01:00
Jan Beich
93676f91a0
renderer: cast std::clamp args to be of the same type ( #3589 )
...
src/render/OpenGL.cpp:1769:41: error: no matching function for call to 'clamp'
const auto FORCEWALLPAPER = std::clamp(*PFORCEWALLPAPER, -1L, 2L);
^~~~~~~~~~
/usr/include/c++/v1/__algorithm/clamp.h:38:1: note: candidate template ignored: deduced conflicting types for parameter '_Tp' ('int64_t' (aka 'long long') vs. 'long')
clamp(const _Tp& __v, const _Tp& __lo, const _Tp& __hi)
^
/usr/include/c++/v1/__algorithm/clamp.h:27:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
clamp(const _Tp& __v, const _Tp& __lo, const _Tp& __hi, _Compare __comp)
^
2023-10-17 01:29:06 +01:00
memchr
54e1c2ccbd
fix(build): do not include wlr headers directly, use includes.hpp instead. ( #3587 )
2023-10-16 17:39:12 +01:00
Alexander Seleznev
1f582457cf
Debug: respect logging settings for wlr ( #3584 )
2023-10-15 19:19:07 +01:00
Philip Damianik
442209942f
cleanup: Replace find() with C++20 starts_with(), ends_with() and contains() ( #3572 )
...
* Replace find() with C++20 starts_with() and ends_with()
* Replace find() with C++20 contains()
2023-10-15 19:07:23 +01:00
memchr
43b39e0bc6
build: include version.h in PluginAPI.hpp ( #3571 )
2023-10-15 12:22:51 +01:00
Vaxry
d5a572bd39
Plugin API: Add version query ( #3545 )
2023-10-14 18:47:43 +01:00
424c9a7e70
render: stop locking SWC on tearing
2023-10-13 22:11:21 +01:00
Michał Lewandowski
3a61350286
notifications: Schedule a frame on notification creation ( #3556 )
2023-10-13 00:05:05 +01:00
vaxerski
e4bcd2e2da
monitor: ensure vrr on workspace change
2023-10-12 17:26:35 +01:00
Vaxry
06cc42441c
build: guard execinfo.h via build systems ( #3547 )
...
* guard execinfo via cmake
* libexecinfo -> execinfo macro name
* meson: add execinfo check
* move check in cmake up
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-10-11 22:27:53 +01:00
Bernhard M. Wiedemann
5dc7161b1d
meson: Sort input file list ( #3550 )
...
so that hyprland builds in a reproducible way
in spite of non-deterministic filesystem readdir order.
See https://reproducible-builds.org/ for why this is good.
This patch was done while working on reproducible builds for openSUSE.
Co-authored-by: Bernhard M. Wiedemann <bernhard+gitcommit lsmod.de>
2023-10-11 19:49:42 +01:00
memchr
34455844e9
groups: ensure consistency in dispatcher behavior with global group lock ( #3531 )
2023-10-11 11:13:12 +01:00
vaxerski
d83357f497
internal: use pragma once in version.h
2023-10-10 21:03:07 +01:00
Vaxry
914851b91a
internal: better versioning ( #3543 )
...
* better versioning
* meson: better versioning
* nix: better versioning
---------
Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-10-10 20:21:57 +01: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
Philip Damianik
ac1bd47653
dispatchers: Add option to center the cursor on the focused window when switching workspaces ( #3528 )
...
* Add option for centering on workspace when switching workspace
* Add option for centering on workspace when switching workspace
---------
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-10-10 17:34:28 +01:00
vaxerski
8abb6e1cee
screencopy: enhance error logging
2023-10-09 23:51:59 +01:00
Roberto Previdi
df0c8e0f7a
workspacerules: Add a persistent workspace rule ( #3530 )
...
* add persistent flag to workspace rules
* get rid of unused ws->indestructible flag
2023-10-09 20:28:22 +01:00
Michał Lewandowski
7f8e0a1318
dwindle: Avoid rounding errors in window position ( #3524 )
...
* Avoid rounding errors in window position
* Fix naming scheme
* Fix unwanted window movement
2023-10-09 12:28:58 +01:00
MightyPlaza
499df49f7b
dispatchers: fix extra monitor offset when snapping floating ( #3520 )
...
modified: src/managers/KeybindManager.cpp
2023-10-08 13:49:15 +01:00
vaxerski
728a8bb48e
config: mention force_default_wallpaper in default configs
2023-10-07 15:55:33 +01:00
DaniD3v
7d7565e7ec
renderer: add force_wallpaper instead of no_hypr_chan ( #3459 )
2023-10-07 14:08:38 +01:00
vaxerski
38e242953d
animationmgr: damage floating windows on workspace anim
...
fixes #3514
2023-10-07 02:28:23 +01:00
Jeremy Huang
61d3d4dee7
master: fix drop_at_cursor on workspace 2 ( #3512 )
2023-10-06 22:33:11 +01:00
ItsDrike
1afb00a01b
pluginapi: remove starting newline in demangled func name ( #3502 )
2023-10-06 14:01:40 +01:00
vaxerski
cb7dd1ac6e
layershell: avoid configure on unchanged size
...
fixes #3496
2023-10-06 14:00:05 +01:00
vaxerski
4b3efc73c5
events: fixup empty events not being sent on unmap
...
Ref #3506 https://github.com/hyprwm/Hyprland/issues/3506#issuecomment-1749508111
2023-10-06 01:11:47 +01:00
vaxerski
24c04a8b7c
crashreporter: avoid using empty CACHE_HOME
2023-10-05 16:57:54 +01:00
vaxerski
3d1a167960
wsrules: check for workspace ID matches on numbered workspaces
...
fixes #3494
2023-10-05 01:31:13 +01:00
322c5cc4b9
layout: add new_window_takes_over_fullscreen mode 2
...
fixes #3486
2023-10-04 15:00:24 +01:00
vaxerski
230356012b
renderer: extract solitary check into frame handler
2023-10-04 13:48:44 +01:00
vaxerski
4531717f3e
renderer: considerable fixes to repaint logic
2023-10-04 13:39:40 +01:00
vaxerski
f8c18ff797
renderer: fixup solitary conditions
2023-10-04 13:30:13 +01:00
vaxerski
f803be3d31
input: fixup frame schedule conditions on mouse move
2023-10-04 12:57:37 +01:00
vaxerski
2901bb0d2f
renderer: add further conditions to solitary recheck
2023-10-04 09:44:07 +01:00
Jeremy Huang
d61e4f9ad7
master: add option to drag and drop windows at cursor position ( #3465 )
...
* add option to drag and drop a window at cursor position
* use getWindowIdealBoundingBoxIgnoreReserved
2023-10-03 22:16:57 +01:00
vaxerski
b814ba98a7
misc: add misc:new_window_takes_over_fullscreen
...
referenced in #3474
2023-10-02 16:27:32 +01:00
vaxerski
50fecf084d
events: set new window alpha to 0 if it's tiled behind fullscreen
...
fixes #3474
2023-10-02 16:22:39 +01:00
vaxerski
5ffb1032e1
events: don't focus new window if spawned behind fullscreen
...
fixes #3473
2023-10-02 14:09:23 +01:00
vaxerski
fc1d7acd9a
renderer: fix missing check for surfaceCount in rechecking solitary
...
closes #3470
2023-10-02 14:02:19 +01:00
vaxerski
763bb2d3bc
renderer: remove old debug log
2023-10-02 10:50:33 +01:00
memchr
161fee1d82
internal: include missing header ( #3464 )
2023-10-01 12:26:10 +01:00
vaxerski
a2a29a60e5
tearing: cleanup vars and avoid rendering before drm is ready
2023-09-30 17:07:50 +01:00
vaxerski
e2b72b2975
renderer: avoid spamming software cursor locks
2023-09-30 16:55:41 +01:00
Dickby
772c7d1d3c
shaders: Remove redundant clamp of smoothsteps return value. ( #3456 )
2023-09-30 13:12:48 +01:00
vaxerski
6a4643842d
hyprctl: log activelyTearing for monitors
2023-09-30 13:12:04 +01:00
vaxerski
a05076a7ee
log: log wlr errors regardless of env
2023-09-30 13:12:04 +01:00
vaxerski
b8f8912db2
renderer: lock software cursors while tearing
2023-09-30 13:12:01 +01:00
vaxerski
86e8ed038f
includes: add missing log include to animatedvariable
2023-09-30 02:09:08 +01:00
vaxerski
c298439433
renderer: nuke multisample_edges in favor of a faster algorithm
2023-09-30 01:41:05 +01:00
vaxerski
495d4f2d11
shaders: improve border rounding
2023-09-30 01:35:05 +01:00
vaxerski
7b002d609b
input: fix warn
2023-09-29 20:06:20 +01:00
vaxerski
4daa515700
watchdog: don't hang on exit
2023-09-29 20:05:43 +01:00
vaxerski
e07e64458e
input: fix unused variable warn
2023-09-29 17:55:41 +01:00
vaxerski
a44ab7748f
renderer: optimize render pipeline when there is a solitary client
2023-09-29 17:51:07 +01:00
vaxerski
ab11bd2085
watchdog: remove thread on destroy
2023-09-29 17:33:26 +01:00
vaxerski
27cd7ef0c9
watchdog: initialize after config
2023-09-29 17:04:20 +01:00
vaxerski
9cc614d096
internal: add a watchdog
...
a watchdog will abort processing a signal if a timeout specified via debug:watchdog_timeout is reached.
2023-09-29 16:38:13 +01:00
vaxerski
453128ee0e
examples/readme: mention tearing
2023-09-28 22:09:14 +01:00
Vaxry
88b63a00b6
renderer: Tearing implementation ( #3441 )
2023-09-28 21:48:33 +01:00
vaxerski
d48c11cc3f
input: minor constraint fixes
...
Better adjust to constraints that do not set a hint. Fixes #3436
2023-09-28 20:02:00 +01:00
vaxerski
1f4eab176e
layout: don't discard fullscreen on new tiling
2023-09-28 17:49:40 +01:00
Cascade aka. Isoheptane
6d7dc70f66
input: Add map to region options for tablets ( #3425 )
...
* Add region remap for tablets
* Fix code style
2023-09-27 19:49:30 +01:00
ffacd2efd1
hyprctl: fix crash in unsafe state with activeworkspace
...
fixes #3419
2023-09-25 15:00:28 +01:00