diff options
| author | Michael Yang <admin@my4ng.dev> | 2024-08-22 18:58:07 +1000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-08-22 11:58:07 +0300 |
| commit | f1894f6f9a7470b8b1493cf96b28a48e8a704636 (patch) | |
| tree | d70a3ab350d39dea1b8240e2a92b281b01be5d12 /src/protocols | |
| parent | dfc2d452c55d59d6d9014c98a9da3a082c4f7379 (diff) | |
| download | niri-f1894f6f9a7470b8b1493cf96b28a48e8a704636.tar.gz niri-f1894f6f9a7470b8b1493cf96b28a48e8a704636.tar.bz2 niri-f1894f6f9a7470b8b1493cf96b28a48e8a704636.zip | |
feature: add on-demand vrr (#586)
* feature: add on-demand vrr
* Don't require connector::Info in try_to_set_vrr
* Improve VRR help message
* Rename connector_handle => connector
* Fix tracy span name
* Move on demand vrr flag set higher
* wiki: Mention on-demand VRR
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
Diffstat (limited to 'src/protocols')
| -rw-r--r-- | src/protocols/output_management.rs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/protocols/output_management.rs b/src/protocols/output_management.rs index 23e419ba..3839bdb4 100644 --- a/src/protocols/output_management.rs +++ b/src/protocols/output_management.rs @@ -3,7 +3,7 @@ use std::collections::HashMap; use std::iter::zip; use std::mem; -use niri_config::FloatOrInt; +use niri_config::{FloatOrInt, Vrr}; use niri_ipc::Transform; use smithay::reexports::wayland_protocols_wlr::output_management::v1::server::{ zwlr_output_configuration_head_v1, zwlr_output_configuration_v1, zwlr_output_head_v1, @@ -693,9 +693,9 @@ where new_config.scale = Some(FloatOrInt(scale)); } zwlr_output_configuration_head_v1::Request::SetAdaptiveSync { state } => { - let enabled = match state { - WEnum::Value(AdaptiveSyncState::Enabled) => true, - WEnum::Value(AdaptiveSyncState::Disabled) => false, + let vrr = match state { + WEnum::Value(AdaptiveSyncState::Enabled) => Some(Vrr { on_demand: false }), + WEnum::Value(AdaptiveSyncState::Disabled) => None, _ => { warn!("SetAdaptativeSync: unknown requested adaptative sync"); conf_head.post_error( @@ -705,7 +705,7 @@ where return; } }; - new_config.variable_refresh_rate = enabled; + new_config.variable_refresh_rate = vrr; } _ => unreachable!(), } |
