Commit Graph

616 Commits

Author SHA1 Message Date
Vaxry 91e28bbe9d xwayland: use a completely separate coordinate system
Use a completely separate coordinate system for XWayland. This fixes all issues with force_zero_scaling overlaps.

Fixes #2916
2023-08-15 19:15:37 +02:00
Vaxry 13886a264f internal: add a new monitor auto system 2023-08-14 14:22:10 +02:00
Vaxry 3f7f4207a6 config: add vrr per-display 2023-08-11 17:37:57 +02:00
Vaxry 60b548296d internal: move backtrace to specific func 2023-08-11 17:22:19 +02:00
Vaxry cbb899740c rules: add layer and window xray rules 2023-08-09 22:03:31 +02:00
Vaxry 261c3307f7 internal: cleanup headers in helpers/ 2023-08-07 13:36:14 +02:00
Vaxry a077b7a92e animationmgr: avoid redundant ticks 2023-08-05 23:29:33 +02:00
romanstingler 7d98181ade
xwayland: drop wlr_xwayland_surface.events.set_pid (#2884)
Co-authored-by: Roman Stingler <roman.stingler@waterdrop.com>
2023-08-03 21:40:56 +02:00
vaxerski 6c1f4faff2 animationmgr: avoid looping over all avars in favor of only active ones 2023-07-20 19:26:10 +02:00
vaxerski a3f6a72a51 region: allow ctor from pixman_box32_t 2023-07-20 18:27:28 +02:00
vaxerski 7091d4e597 animationmanager: optimize avar state 2023-07-19 22:40:03 +02:00
Vaxry 89b87158db
internal: Wrap regions (#2750) 2023-07-19 20:09:49 +02:00
vaxerski 2623364dbd no_xwayland: fix redef 2023-07-19 00:33:47 +02:00
vaxerski ce9c5fd722 render: set refresh to 0 for both wl and x11 backends 2023-07-19 00:28:15 +02:00
vaxerski 0ba28a46fd monitor: unplug all callbacks in ~dtor 2023-07-18 15:36:27 +02:00
vaxerski 629e61c7a5 monitor: disconnect bind on disconnect 2023-07-18 15:22:49 +02:00
Daniel Adolfsson 64e7d5345d
Add support for smart splitting (#2676)
* Add support for smart splitting

* clang-format

* smart_split default to 0, and make smart_split behave like preserve_split
2023-07-11 13:37:25 +02:00
vaxerski 515a363ecd render: move lastFrameDamage to CMonitor 2023-07-10 13:21:00 +02:00
vaxerski 42f46aeac5 config: minor path handling fixes 2023-07-10 13:10:34 +02:00
Mykola Perehudov bbedb065e1
eventmanager: drop obsoleted ignore events flag (#2660)
This flag became obsoleted in commit
287e6c4ede
2023-07-06 15:23:11 +02:00
Vaxry 01f85a09a9 xwayland: send zero scaling to xwayland if enabled 2023-06-23 21:42:44 +02:00
vaxerski fbabb105c3 gamma: use wlr's new gamma manager event 2023-06-14 13:26:47 +02:00
Vaxry 6beb79f27b xwayland: add force_zero_scaling 2023-06-11 21:52:13 +02:00
end-4 e1edfde539
Allow setting alpha value for ignorezero layer rule (#2477)
* rename ignorezero to ignorealpha

* allow setting ignorealpha value

This commit allows setting a float value (0-1) for the ignorealpha layer rule.
Does not yet have error handling; invalid ignorealpha layer rule will crash Hyprland.

* add brackets i forgot to add

* prevent crash with invalid ignorealpha value

prevents hyprland from immediately crashing with invalid ignorealpha layer rule
does not log

* don't try to set ignoreAlphaValue if alpha value not specified

* add catch to try, reintroduce ignorezero

- added catch after try cuz i was an idiot
- re-add ignorezero as an alternative to ignorealpha to not introduce a breaking change

* add logging for failed ignorealpha layer rule

* fix get ignorealpha's get VALUE

* check npos and use empty()

* rename VALUE cuz no longer const

* format Shader.hpp
2023-06-11 19:30:31 +02:00
Vaxry c5a7202cd9 noxwl: add missing stubs 2023-06-03 13:01:32 +02:00
Vaxry 147e962370 deps: update wlroots 2023-06-03 12:20:28 +02:00
Vaxry 871ab24c6e internal: properly set monitor props on special windows 2023-06-02 20:14:34 +02:00
Jan Beich f1ad270ff8
vector: restore cmath include after 438d063ec6 (#2394)
src/helpers/Vector2D.cpp:27:26: error: no member named 'floor' in namespace 'std'
    return Vector2D(std::floor(x), std::floor(y));
                    ~~~~~^
src/helpers/Vector2D.cpp:27:41: error: no member named 'floor' in namespace 'std'
    return Vector2D(std::floor(x), std::floor(y));
                                   ~~~~~^
src/helpers/Vector2D.cpp:37:17: error: no member named 'sqrt' in namespace 'std'
    return std::sqrt(dx * dx + dy * dy);
           ~~~~~^
2023-05-29 15:12:00 +02:00
outfoxxed 409ff027f8
Fix UAF in animation end callback if callback deletes the animation (#2389)
Removes use after free when the end callback deletes the animation as
long as `m_bRemoveEndAfterRan` is false.
2023-05-29 09:51:58 +02:00
vaxerski 438d063ec6 vector: use c++ stdlib math functions instead of cmath 2023-05-28 22:50:13 +02:00
Anthony Ruhier d7935356da
input: don't move monitor focus on wp change (#2320) 2023-05-17 13:32:59 +01:00
Eric_Luo b5b9af508a
bug fix (#2314)
fix float check logic

Co-authored-by: hnboy <hnywolf@gmail.ccom>
2023-05-16 17:43:04 +01:00
vaxerski d68f8ea668 internal: make CAnimatedVariable non-move non-copy 2023-05-16 12:49:59 +01:00
vaxerski 5b84b0fb44 animationmgr: allow empty avars 2023-05-15 17:11:51 +01:00
vaxerski 7fde80f38e layers: fix wonky focus on multimon 2023-05-09 17:01:18 +01:00
Andrei Alexeyev 2f87e4c2f3
renderer,config: add custom DRM modeline support (#2254)
This allows specifying custom display resolutions for the DRM backend.
This is useful for display overclocking, working around broken EDIDs,
etc. To use this feature, specify a modeline instead of a resolution
in the config, for example:

    monitor = DP-1, modeline 1071.101 3840 3848 3880 3920 2160 2263 2271 2277 +hsync -vsync, 0x0, 1

This example is a custom 3840x2160@120Hz mode with tightened timings.
I use it because the standard timings don't work with my monitor and GPU
combination (M28U with RX580).

The syntax is compatible with Sway and Xorg.
2023-05-09 14:01:45 +01:00
scorpion-26 826dc61e5c
Add "next on monitor or empty" workspace parameter (#2198)
* Add "next on monitor or empty" workspace parameter

Implements the following workspace parameter:
r+x/r-x (i.e. r+1): Behaves similar to the "m" parameter, but can also
select empty workspaces and it doesn't wrap around

* Improve code comments

* Implementation V2 for 'r' workspace param

* Rebase to upstream

Should fix CI

* Always set outName

* Include named workspaces

Currently only considers open/active named workspaces
2023-05-08 14:37:59 +01:00
vaxerski afe8d8dfec monitors: fix some bugs with re-plug 2023-05-06 16:50:15 +01:00
vaxerski 83cd5e2ebd workspaces: minor fixes for multi-special 2023-05-06 16:10:51 +01:00
vaxerski 8435d6fc12 monitors: toggle special on changeworkspace with special 2023-05-05 15:01:31 +01:00
vaxerski fd3e6a3bfd workspaces: restore monitor on re-plug 2023-05-03 15:15:56 +01:00
vaxerski 45b1e6dc5e keybinds: simulate workspace switch on focusWindow to another ws 2023-05-01 15:39:08 +01:00
vaxerski 6501bceb42 workspace: don't check LS-es in startAnim 2023-04-30 01:13:58 +01:00
vaxerski 3580f845e6 monitor: update fullscreen fade on workspace change 2023-04-30 01:12:20 +01:00
vaxerski 1a1656ddbf Revert "internal: include headers from protocols/"
This reverts commit 550700bed0.

We can't cuz meson
2023-04-27 13:55:13 +01:00
vaxerski 550700bed0 internal: include headers from protocols/ 2023-04-27 13:40:38 +01:00
vaxerski 412d46ff65 monitors: set special monitor ID on open 2023-04-17 22:58:59 +01:00
vaxerski 8b3d8dc792 Format: use %lx for all addresses 2023-04-17 17:35:28 +01:00
vaxerski 7c36a3e167 internal: move workspace special check higher in changeWorkspace 2023-04-17 13:32:35 +01:00
vaxerski b05ff89c76 Render: add cursor_zoom 2023-04-16 14:48:38 +01:00
dann-merlin c86f06caa0
Fix possible usage of clamp with lo > hi in Vector2D (#2049) 2023-04-16 01:27:14 +01:00
vaxerski afc887d941 monitor: recalc layout on switched ws 2023-04-16 01:11:57 +01:00
vaxerski d6c4ae71d0 damage: fix damage on moves / workspace changes 2023-04-15 16:16:33 +01:00
vaxerski 727160f0a4 workspaces: fixup workspaces not activating on workspace switch 2023-04-14 15:28:22 +01:00
vaxerski 8dd0c4fe74 workspaces: deactivate all on monitor switch 2023-04-14 15:08:27 +01:00
vaxerski 287e6c4ede internal: workspace manip handling rework 2023-04-14 15:03:53 +01:00
vaxerski 41c7d896e3 internal: prevent premature destroy in moveworkspace 2023-04-13 21:09:50 +01:00
vaxerski a22e1174ee screencopy: implement dmabuf 2023-04-12 21:40:51 +01:00
Hilmar Wiegand 7b43f9f056
Implement window move (#2018) 2023-04-10 20:07:49 +01:00
vaxerski 41d1fdedf2 output: handle needs_frame 2023-04-07 17:25:56 +01:00
vaxerski cd1b982b2a internal: listen to output.damage events 2023-04-07 16:31:55 +01:00
vaxerski d8645cd148 internal: release buttons on unmap 2023-04-07 12:54:11 +01:00
vaxerski c9f7afbf78 subsurfaces: guard node's surface 2023-04-07 12:36:26 +01:00
vaxerski 24ace03780 internal: migrate to damage_ring 2023-04-07 12:18:40 +01:00
vaxerski 00d199b477 monitors: guard scale in onConnect 2023-04-04 22:54:35 +01:00
Jan Beich 16bc5997bb
Misc FreeBSD fixes (#1926)
* helpers: drop incomplete GNU/kFreeBSD bits

Debian with FreeBSD kernel lacks Wayland-related packages and is not
officially supported since Jessie.

* KeybindManager: check VT ioctl availability instead of hardcoding

* plugins: add missing header for libc++ after 430778293e

src/plugins/PluginAPI.cpp:299:33: error: implicit instantiation of undefined template 'std::basic_istringstream<char>'
    std::istringstream          inStream(SYMBOLS);
                                ^
/usr/include/c++/v1/iosfwd:140:32: note: template is declared here
    class _LIBCPP_TEMPLATE_VIS basic_istringstream;
                               ^

* plugins: prefer llvm-nm with Clang after 430778293e

nm: invalid option -- j
2023-03-31 20:39:04 +01:00
Vaxry a80f8f257f
Feat: Introduce render_ahead_of_time (#1863) 2023-03-24 19:23:16 +00:00
vaxerski b3a70b565e subsurfaces: avoid reading destroyed surfaces 2023-03-24 18:44:42 +00:00
vaxerski a3fda12ba1 window: unassign surface on unmap 2023-03-23 00:39:32 +00:00
vaxerski 0268bb9888 surface: set to nullptr after destroy() 2023-03-23 00:22:49 +00:00
Vaxry 788a8f7c13
internal: wrap wlr surfaces (#1822) 2023-03-20 15:00:58 +00:00
vaxerski 00c2ca4697 config: improve ux on workspace and transform 2023-03-18 16:12:43 +00:00
vaxerski e5870d47c7 LS: add blur and ignorezero rules 2023-03-17 23:16:13 +00:00
vaxerski 4b52c1e68f monitors: remove from monitors on unsafe 2023-03-16 16:33:27 +00:00
vaxerski 162f235972 switches: do not fire on no change in toggle 2023-03-16 16:30:22 +00:00
Vaxry 5dc1a5fec6
input: text-input-v1 support (#1778)
support zwp_text_input_v1

---------

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-03-14 12:57:50 +00:00
vaxerski e749af7b60 dispatchers: remember named workspaces in prev 2023-03-13 15:19:25 +00:00
opsu 0c8d1ba4a8
Buffer overflow fix (#1707) 2023-03-05 18:16:42 +00:00
Vaxry 1ead6c46f4 Mirrors: minor fixes 2023-03-04 00:48:22 +00:00
vaxerski 64f35c0e31 Bezier: Fix incorrect binary search in bezier approx 2023-03-03 13:33:52 +00:00
vaxerski 62e0c9226e Up the bezier bake count 2023-03-03 13:17:11 +00:00
vaxerski c5aa20f226 fix bezier step approx 2023-03-03 13:08:46 +00:00
Vaxry 8b81f41e52
Plugin System (#1590)
---------

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-02-27 12:32:38 +00:00
vaxerski f1c9077139 unblock pure wayland compiles 2023-02-21 23:57:08 +00:00
Jan Beich 474ada9267
Unbreak CrashReporter on FreeBSD (#1589) 2023-02-20 14:15:15 +00:00
Vaxry 1b56cc4e99
Added an Event Hook System (#1578)
* added an eventHookSystem

* Add all socket2 events to hooks
2023-02-19 20:54:53 +00:00
vaxerski 38c25bb50d Added a crash reporter 2023-02-19 13:45:56 +00:00
Ching Pei Yang c92e0c05e4
Resize on border (#1347) 2023-02-18 22:35:31 +00:00
Vaxry 4ea4efb871 add prev to getWorkspaceIDFromString 2023-02-09 14:15:42 +00:00
Vaxry 494103b521 add missing xwayland stub 2023-02-03 14:12:28 +00:00
ozwaldorf 32d56fec97
feat: border angle animations (#1469)
Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
2023-02-01 21:06:01 +00:00
vaxerski 11234529db Simulate mouse movement on unmap of popups and subsurfaces 2023-01-31 00:26:15 +00:00
Jan Beich f90ff8303b
Unbreak build with libc++ (#1457) 2023-01-31 00:03:23 +00:00
Vaxry ef12120270 fixup LS scaling impl 2023-01-29 15:58:36 +00:00
Jan Beich ff9bcb19fa
Allow to disable X11 backend separately from Xwayland after 5a750b485a (#1445) 2023-01-29 12:43:18 +00:00
vaxerski 8ae1fd0173 added layer rules 2023-01-25 15:34:13 +00:00
vaxerski 84954f376f remove restrictions from setprop for ints 2023-01-24 21:44:54 +00:00
vaxerski cb6e36d804 ignore null ls-es in cleanup 2023-01-23 18:23:44 +00:00
Vaxry cb98242ea7 remove old comment and fixup lsl var name 2023-01-22 17:03:25 +01:00
Vaxry 5814d9b2a0 make hyprerror follow fadein anim 2023-01-20 20:48:07 +01:00
Vaxry 60b880d931
wp-fractional-scaling-v1 impl (#1373)
* Initial fractional scaling impl

* apply UV after geom calcs

* fix scaling -> scale

* meson: add fractional scale proto

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-01-20 19:44:30 +01:00
Vaxry d8ee624e35 move monitor remove notice up 2023-01-19 16:27:04 +01:00
Vaxry 2858e08ce0 remove color rassert to fix overshot beziers 2023-01-07 13:38:19 +01:00
Vaxry 464dd79246 fix crashes on monitor ls remove 2023-01-06 16:13:50 +01:00
Vaxry 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
Vaxry a33ecec61e destroy LS-es on disconnected monitor 2023-01-02 16:16:28 +01:00
Vaxry 5d095bb9e1 use curves for special dim anim 2022-12-29 12:30:43 +01:00
Vaxry 545e63d1dd sanity check workspaces after enabling mirror 2022-12-26 13:27:02 +01:00
vaxerski 6749c8abd7 fix dynamic monitor disables corrupting pmosthz 2022-12-22 12:15:07 +00:00
vaxerski e9bd2ee996 move setActiveMonitor backup later in onDisconnect 2022-12-21 15:17:24 +00:00
vaxerski 41cdfb7420 allow binding tablets to outputs 2022-12-21 15:11:39 +00:00
vaxerski 261fbb5b62 adjust medium ppi values 2022-12-20 13:33:29 +00:00
vaxerski 4fd90144d1 touch up the clang format and format all files 2022-12-20 02:18:47 +00:00
vaxerski 3e2785b970 fix restack in xwayland stubs 2022-12-19 23:43:50 +00:00
Julian Schuler 2daabfa0e9
Add 'exact' option for 'splitratio' (#1245)
* Simplify getPlusMinusKeywordResult()

* Add an 'exact' option for 'splitratio'
2022-12-17 22:37:44 +00:00
vaxerski f72c237d85 add disabling keyboards 2022-12-16 17:20:51 +00:00
Vaxry 98a4fa2b0d
Added clang format (#1239)
* clang-format stuff and format files
2022-12-16 17:17:31 +00:00
vaxerski 3bd9ee0d32 minor xcursor and scale fixes 2022-12-15 17:17:15 +00:00
vaxerski 374571da96 add auto scale 2022-12-14 17:57:45 +00:00
vaxerski f8188ed7f8 stuff 2022-12-14 17:57:45 +00:00
vaxerski f8a6799d4e verify lastmon status on connect 2022-12-12 20:51:20 +00:00
Maarten van Gompel 6381b6474f
Implement orientation (placement of master area) for master layout (#1202)
* Implemented choosing placement of master area (#1059)

This implement a per workspace 'orientation' that can be set
to left, right, top or bottom. Reflecting placement of the master area.

Left (default) and right are horizontal layouts, top and bottom produce vertical
layouts. Orientation can be switched with: 'hyprctl dispatch layoutmsg orientationleft'
2022-12-10 21:59:16 +00:00
vaxerski 62f4503f07 handle constraint cursor hints better 2022-12-10 14:43:46 +00:00
vaxerski d5352a5d12 find a default workspace smarter 2022-12-09 17:17:02 +00:00
vaxerski 726732244a sort valid ws-es in relative 2022-12-08 21:24:55 +00:00
vaxerski 0803febac5 optimize m+- and e+- workspace opts 2022-12-08 12:08:41 +00:00
Flafy ffc580dda9
blur xray for layers (#1158)
* feat: apply blur_xray to non window surfaces

* don't blur optimize bottom and background layers
2022-12-04 20:57:41 +00:00
vaxerski 9e8df888eb fix warning 2022-12-04 00:03:48 +00:00
vaxerski 0a302901d2 Added handling more special workspaces 2022-11-27 22:42:22 +00:00
vaxerski 9616dc7bd8 don't change alpha on special anims 2022-11-24 20:51:33 +00:00
Julian Schuler 79a9bc9076
Add option for retrieving first empty workspace (#1085) 2022-11-23 14:10:26 +00:00
Vaxry 1f72237291 Fix incorrect layout positions in mirror re-add 2022-11-19 16:58:14 +00:00
vaxerski e427d9f622 unify setting of the active monitor 2022-11-19 16:41:41 +00:00
vaxerski df132e5ff3 update wlroots dep 2022-11-19 16:28:04 +00:00
Vaxry 0ffaa8d667 Fix minor issues with mirrors 2022-11-19 13:14:55 +00:00
Vaxry e887149f25 minor fixes for mirrors & log more monitor events 2022-11-19 13:01:32 +00:00
vaxerski ba05c43ae3 minor monitor code fixups 2022-11-18 14:15:19 +00:00
vaxerski 82fe530045 don't set AS in onConnect 2022-11-18 14:08:34 +00:00
vaxerski f91f3d1c81 Reset callbacks on remap 2022-11-18 13:53:54 +00:00
vaxerski d2a7e22efd more memory safety around onDisconnect 2022-11-17 21:52:45 +00:00
Jef 549fdf63f6
Add bordercolor windowrule (#992)
* Add bordercolor windowrule

* remove spaces form bordercolor rule + typo

Co-authored-by: Jef Steelant <jef.steelant_ext@softathome.com>
2022-11-13 19:33:13 +00:00
vaxerski a5ffd44caf guard empty str in removeBeginEndSpacesTabs 2022-11-10 21:51:46 +00:00
Jan Beich 5d5066570c
helpers: implement getPPIDof on BSDs (#972)
Get PPID from `struct kinfo_proc` via sysctl for the specified PID.
Adjusted for minor differences between each BSD kernel.
2022-11-07 20:26:23 +00:00
vaxerski 57817f7252 Added resize transitions 2022-11-06 17:52:09 +00:00
vaxerski 5a750b485a Added creating / destroying outputs on a multi-backend + headless backend
See `hyprctl output`.
2022-11-05 18:04:44 +00:00
vaxerski ff76fbe763 prevent double-registering of avars 2022-11-05 13:37:29 +00:00
vaxerski c9eb0f3aab fix missing stub for xwayland 2022-11-04 16:10:10 +00:00
vaxerski 206360177f Multiple animation optimization and xwayland wine fixes 2022-11-04 15:56:31 +00:00
vaxerski 2e32e202e9 set lastmonitor in onDisconnect 2022-10-29 22:45:01 +01:00
vaxerski 74d05d0adc ensure VRR for current display only in onConnect 2022-10-28 23:48:48 +01:00
vaxerski 341a0616aa avoid applying offset twice in onConnect 2022-10-28 23:23:23 +01:00
Vaxry 7d6ccca695 add 10bit support to displays 2022-10-27 13:26:47 +01:00
Vaxry 28c81fc71e add disabling pointer devices 2022-10-27 12:58:10 +01:00
Vaxry d5a0610ea2
No xwayland overhaul (#920) 2022-10-27 11:26:35 +01:00
vaxerski 47eac4be1c disable adaptive sync with no_vfr off 2022-10-22 21:45:17 +01:00
Vaxry 724fa4a7d4 add touch binding to output 2022-10-14 12:38:44 +01:00
Vaxry cee0645fd1
Merge pull request #813 from histausse/touch_dev_rotation
Add input:touchdevice:transform config
2022-10-14 12:26:31 +01:00
vaxerski 2ee9fb0675 don't recalc offset on monitor reload offset auto 2022-10-12 15:16:31 +01:00
Felix Dick 7e781f24c5 Merge branch 'main' into simplify_matrix_calculations 2022-10-10 02:45:40 +02:00
Felix Dick 3bf7c5aea1 Change matrixProjection function stop use matrixFlip180 everywhere. 2022-10-10 01:35:42 +02:00
vaxerski 881f828250 better subsurface handling on unmaps 2022-10-09 17:40:30 +01:00
Histausse 32ae0c51f0
Add input:touchdevice:td_rotation config
Add support for touch device roation. The rotation is
set globally with `input:touchdevice:td_rotation config` and by
device with `td_rotation` in a device block.
2022-10-08 15:25:46 +02:00
vaxerski 0508c7d384 more monitor checks for shutdown: 2022-10-06 18:43:50 +01:00
vaxerski 11ce468996 add dpms status info in hyprctl 2022-10-05 18:14:11 +01:00
Vaxry 71e2562a41 add desc: to monitor rules 2022-10-05 10:22:33 +01:00
vaxerski 0d702b556d Add switch device handling and binds 2022-10-04 20:07:21 +01:00
vaxerski 63dfe305dd log GPU info for debugging 2022-10-03 23:10:15 +01:00
vaxerski 174b593438 optimize removing trailing spaces 2022-10-03 14:36:56 +01:00
vaxerski a97621b1cb Added window swallowing 2022-10-01 19:19:15 +01:00
vaxerski e6c9e3f81d add case for empty strings in isNumber 2022-09-30 21:54:13 +01:00
Felix Dick 11ee78f88b Use double literals, don't cast a integer literal to double. 2022-09-28 20:08:41 +02:00
vaxerski ec5ffe8839 rewrite isNumber 2022-09-28 15:32:53 +01:00
vaxerski e3b1d3c3c5 allow for pure workspace names in dispatchers 2022-09-28 15:26:41 +01:00
Felix Dick 87afc8c250 Replace clamp with max if there is no upper bound. 2022-09-26 21:10:24 +02:00
Felix Dick bf3f519eb7 Remove trailing whitespace. 2022-09-25 20:07:48 +02:00
Vaxry 79c645f8cd handle touch devices internally as objects 2022-09-21 14:39:34 +01:00
Vaxry 4dca2b945b fix LS fading out on ws change 2022-09-20 09:46:55 +01:00
tomahk 5146165599 this is c++, use nullptr 2022-09-19 21:45:00 +02:00
tomahk 73e19aee6f prevent assert killing Hyprland after reenabling monitor 2022-09-19 20:44:33 +02:00
Vaxry 18b483b8e1 fix ws switching with LS opacity 2022-09-19 10:40:42 +01:00
Vaxry a72a39ebd5 minor swipe fixes 2022-09-17 15:05:12 +01:00
vaxerski 8e0f7b9b11 Various subsurface handling fixes 2022-09-14 16:34:41 +02:00
vaxerski 5a146e9d90 guard surface in addsurfaceglobaloffset 2022-09-13 21:49:55 +02:00
vaxerski e518adf1ac don't iterate over subsurfaces in unmap 2022-09-13 15:44:50 +02:00
vaxerski e9f226797e Added monitor mirroring 2022-09-13 15:25:42 +02:00
vaxerski f663fa209c minor code styling fixes 2022-09-09 19:08:11 +02:00
vaxerski bb90ff0461 sanity check on last window 2022-09-01 11:46:41 +02:00
vaxerski 7f62cbc48a Update wlroots dep 2022-09-01 11:24:15 +02:00
vaxerski dacaf72e02 remember last window on workspace 2022-08-31 17:02:49 +02:00
Vaxry 52c0ba544c
Viewporter implementaion (#585)
Implementation of the `wp_viewporter` core protocol and some bugfixes
2022-08-28 10:14:43 +02:00
Vaxry 1d97ad9856
Merge pull request #588 from alec-lefors/drm-leasing
implemented DRM leasing
2022-08-27 23:47:41 +02:00
Alec LeFors 59d7cfcd02 implemented DRM leasing for VR headsets 2022-08-27 17:10:13 -04:00
vaxerski ed2cacc5d5 fix styling in const ptrs 2022-08-27 21:37:35 +02:00
vaxerski 10f529ada7 added a specialWorkspace anim leaf 2022-08-26 11:26:23 +02:00
vaxerski a9e34cba93 move monitor damage to separate funcs 2022-08-23 16:07:47 +02:00
vaxerski 23c5760538 IME Popup damage fixes 2022-08-23 11:16:35 +02:00
Charles Taylor 3c8c605541 fix style conflicts and config + monitor retrieval 2022-08-21 21:58:46 +10:00
Charles Taylor 04f0efadc3 add switching to previous workspace 2022-08-21 20:21:21 +10:00
vaxerski cc3f0ff9e7 update wlroots dep 2022-08-20 20:06:24 +02:00
FlafyDev f0ad77251b move absolutePath to MiscFunctions 2022-08-19 23:18:09 +03:00
FlafyDev 69d17bf424 add input:kb_file 2022-08-19 21:01:51 +03:00
Vaxry b078a12eed Added an activelayout event 2022-08-18 17:17:33 +02:00
Vaxry c7350117f1 reinit render on disconnected displays 2022-08-10 23:19:15 +02:00
Vaxry 58ff04fdf3 added experimental monitor saving 2022-08-10 21:54:09 +02:00
Vaxry 9b39a0c2e0 Added hyprctl setcursor 2022-08-10 21:22:11 +02:00
Vaxry 76877d4b15 minor changes to monitor logging 2022-08-10 18:27:57 +02:00
Vaxry 03f2e4d42a fix compile 2022-08-10 13:45:20 +02:00
Vaxry 15fc0892c7 further fixes to monitor disabling on launch 2022-08-10 13:44:04 +02:00
Vaxry a564be73c5 set correct full params in disabled at launch 2022-08-10 13:31:58 +02:00
vaxerski e0ada97a24 support zwp_input_method_v2 popups 2022-08-05 17:07:01 +02:00
vaxerski 9a8a6317ff multiple IME fixes 2022-08-05 16:21:08 +02:00
vaxerski cb5521ec6e fix possible crashes with IME 2022-08-05 13:19:16 +02:00
vaxerski 1c4d0e8c18 added IME protocol support 2022-08-05 13:03:37 +02:00
vaxerski 37068cf4f0 fix crash with reenabling a monitor 2022-08-03 17:42:19 +02:00
vaxerski c3edb20e04 make monitor IDs permanent 2022-08-03 16:19:00 +02:00
vaxerski b9be405d32 clear ls lists on monitor disconnect 2022-08-03 16:12:05 +02:00
vaxerski 8dd88d901d guard onDisconnect 2022-08-03 16:05:25 +02:00
vaxerski 920fdd6bff Animation config rework 2022-07-28 13:28:43 +02:00
vaxerski b6f2a4bc36 damage popups correctly 2022-07-28 11:37:27 +02:00
vaxerski 427bc35b6b fix empty workspace name on unspecified default 2022-07-27 13:56:01 +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
vaxerski 98ef43496b listener fixes 2022-07-26 21:41:29 +02:00
vaxerski b18a2738e3 schedule recalcs in LS 2022-07-26 18:22:34 +02:00
vaxerski b0d91cbf3a simplify formats 2022-07-25 22:40:34 +02:00
vaxerski 6e16dfa5e5 use defines for unreachable 2022-07-25 21:34:57 +02:00
vaxerski b1d3a1deea force unmap on direct destroy 2022-07-25 18:38:40 +02:00
vaxerski 1626707b7f make layerSurfaces into RAII 2022-07-23 15:48:08 +02:00
Mihai Fufezan 72700bf9dc
layersurfaces: set default geometry 2022-07-22 20:28:43 +03:00
vaxerski 616ec22735 wrapped wl_listener fixes 2022-07-22 13:34:19 +02:00
Darksome eb8a1939e6 Merge upstream 2022-07-21 19:18:03 +03:00
vaxerski 641aaff998 minor code adjustments 2022-07-20 18:39:08 +02:00
vaxerski f905ae33c8 guard pSurface in unmapsubsurface 2022-07-19 13:54:42 +02:00
Vaxry f35d513bf5
Merge pull request #391 from dgerblick/focuswindow-options
focuswindow options + other hyprctl bugs I found when testing
2022-07-18 23:19:12 +02:00
vaxerski 10a83853ac added ls noprocess 2022-07-18 21:16:01 +02:00
Daniel Gerblick f2c0e6ef02 fixed issue causing hyprctl to output ill-formed json when strings include characters needing escaping 2022-07-18 14:47:28 -04:00
xDarksome 4f9be67298
Merge branch 'hyprwm:main' into main 2022-07-16 15:30:32 +03:00
Darksome ce9efb7ae3 Impl changeworkspace(e+{n}) 2022-07-16 15:28:17 +03:00
vaxerski 48e5bd96bc Added shadow colors animations and inactive col 2022-07-16 12:44:45 +02:00
vaxerski 19c646ab47 Minor changes to the renderer's overflow behavior
Won't squish base layers anymore
2022-07-15 19:07:06 +02:00
vaxerski 2f3b2db83d fixed tiled popups going behind windows 2022-07-12 09:49:56 +02:00
vaxerski f461ea3105 squish oversized subsurfaces while animating 2022-07-11 23:38:10 +02:00
vaxerski ad66c158ba don't refocus on virt ptrs 2022-07-11 20:23:16 +02:00
vaxerski 4b334594dc Added splashes 2022-07-10 15:41:26 +02:00
vaxerski 92e17f2925 added rules to hyprctl devices and fixed rules 2022-07-08 12:27:05 +02:00
vaxerski 91249675de fix corner artifacts 2022-07-08 09:43:55 +02:00
vaxerski 4b796d30c1 Added swipe workspace gestures 2022-07-07 13:49:04 +02:00
vaxerski 1cf2f378d4 added ls blurring 2022-07-06 22:12:03 +02:00
vaxerski 6a16f11d63 add namespace to hyprctl layers 2022-07-06 21:57:35 +02:00
vaxerski 42d18143e5 use std::unreachable in avars 2022-07-06 16:54:45 +02:00
vaxerski f9756d10d4 changed C++ std to C++23, use std::string::contains 2022-07-06 16:50:11 +02:00
vaxerski 9655d0c138 added support for wlr_idle_inhibitor_v1 2022-07-06 15:42:37 +02:00
vaxerski e81de82706 added Vector2D::clamp 2022-07-02 22:17:17 +02:00
vaxerski d010ca2049 added per-device config options 2022-06-30 21:26:00 +02:00
vaxerski 4510764f34 finally fix scaled snapshots 2022-06-30 20:02:04 +02:00
vaxerski 328b3fa4bc mordernize pointers 2022-06-30 15:44:26 +02:00
vaxerski 4101006b5e remove asserts in CAnimatedVariable 2022-06-30 12:22:24 +02:00
vaxerski 2659afee3c force workspace events 2022-06-29 18:19:06 +02:00
vaxerski 6213328d2c default currentrules to null 2022-06-28 16:12:47 +02:00
vaxerski 9fcef41d66 mutliple fixes to subsurface handling 2022-06-28 15:30:46 +02:00
vaxerski 3cbd69e703 added createworkspace destroyworkspace events 2022-06-28 12:39:56 +02:00
vaxerski 80f04fa7c6 speed up damage log in commit subsurface 2022-06-28 12:20:33 +02:00
vaxerski 8b4a373efa update wlroots dep 2022-06-28 11:30:07 +02:00
vaxerski 44aeb1fc90 added decoration:shadow_offset 2022-06-26 22:15:06 +02:00
vaxerski 8de8f6667e add system info logging 2022-06-25 20:49:06 +02:00
vaxerski b46f45befa additional keymap reload safety 2022-06-25 11:50:09 +02:00
vaxerski 72c86b99eb added general:cursor_inactive_timeout 2022-06-24 23:27:02 +02:00
vaxerski 48e33023af fix crash on number workspace with null mon 2022-06-21 22:42:54 +02:00
vaxerski ff49f22440 fix rapid blinking on launch 2022-06-21 22:13:13 +02:00
Florian "sp1rit"​ fd0112425f
Added meson buildfiles
this makes for a far better experience in combination with wlroots,
since that whole makefile mess is not required.
Additionaly, handling of wayland protocol sources is also slightly
better, but could be improved with mesons inbuilt wayland module.

To build Hyprland using meson:
    meson _build -Ddefault_library=static
    ninja -C _build
    ninja -C _build install
2022-06-16 23:30:28 +02:00
vaxerski 53146ccf69 oopsie 2022-06-09 21:39:03 +02:00
vaxerski 47404534d0 added tablet v2 support (alpha alpha) 2022-06-09 12:46:55 +02:00
vaxerski 663fba76ae Added resizeactive 2022-06-06 19:32:14 +02:00
vaxerski d743ac7bb1 added forcerendererreload and some more vt changes 2022-06-06 13:48:17 +02:00
vaxerski 84a0fa0f34 fix subsurfaces not damaging on unmap 2022-06-05 23:23:16 +02:00
vaxerski 1a93b2a756 Handle keyboards better
Also fixes some crashes of apps on reload
2022-06-03 18:59:39 +02:00
vaxerski a2f718059b fucking typo 2022-06-02 19:50:46 +02:00
vaxerski 601abc7e92 Added locking numlock 2022-06-02 19:47:11 +02:00
vaxerski f5cdb5b95e Fix special in m+1 m-1 2022-06-02 16:54:19 +02:00
vaxerski 7afcf656bd Added hyprctl devices 2022-06-02 13:59:33 +02:00
vaxerski 0f28d2ae55 fix stupid error in anim styles 2022-06-01 20:51:21 +02:00
vaxerski 970018248f Don't damage surfaces coming from not rendered windows 2022-05-31 22:16:13 +02:00
vaxerski 3e28a8b690 added slidevert for workspaces 2022-05-31 17:56:33 +02:00
vaxerski 0055efc4f1 Added a special workspace 2022-05-31 14:01:00 +02:00
vaxerski df722cbb86 Added relative monitor workspace offset 2022-05-31 12:33:08 +02:00
vaxerski c9041bf5c9 notify workspace protocol of workspace group change 2022-05-30 20:51:45 +02:00
vaxerski 1f4c938c67 Added moving workspaces 2022-05-30 20:05:38 +02:00
vaxerski 9842730f57 Added fullscreen types, maximize and full 2022-05-29 15:44:30 +02:00
vaxerski d0ff0c0990 Added basic monitor transforms, has bugs
blur doesnt work on transformed outputs
full damage tracking issues
2022-05-29 12:27:45 +02:00
vaxerski 7f1f14fe85 Added a rounding rule 2022-05-28 17:48:01 +02:00
vaxerski 795504dad0 Added workspaceopt dispatcher 2022-05-26 19:05:32 +02:00
vaxerski 08d4d987cf return nearest mon if point out of range 2022-05-25 18:40:03 +02:00
vaxerski 0ae6563fef workspace set active 2022-05-25 10:25:36 +02:00
vaxerski 198fc90df5 What the fuck is going on with git, fix the entire scaling merge
This reverts commit 5b15d3b4f4.
2022-05-18 20:33:54 +02:00
vaxerski 5454cf8e89 Fixed mouse constraints, should be correct now 2022-05-18 14:57:08 +02:00
vaxerski 5b15d3b4f4 Revert "Merge pull request #88 from vaxerski/scaling"
This reverts commit f68ddc382a, reversing
changes made to ba573a529a.
2022-05-18 14:42:00 +02:00
vaxerski 6c437763f6
Merge branch 'main' into scaling 2022-05-18 13:10:22 +02:00
vaxerski ba573a529a fix workspaces disappearing on switch anim mode 2022-05-18 12:39:20 +02:00
vaxerski f70d0ec5aa Added movetoworkspacesilent 2022-05-18 12:18:58 +02:00
vaxerski 473d4591b0 fix some memory issues 2022-05-17 18:37:14 +02:00