wlr_output: Add preferred property (#1625)
* wlr_output: Indicate modes link * wlr_output: Introduce preferred flag This indicates an outputs preferred mode. * drm: Set preferred flag for an outputs preferred mode
This commit is contained in:
parent
4453757fc9
commit
cd60f40bbb
|
@ -1207,6 +1207,9 @@ void scan_drm_connectors(struct wlr_drm_backend *drm) {
|
||||||
mode->wlr_mode.width = mode->drm_mode.hdisplay;
|
mode->wlr_mode.width = mode->drm_mode.hdisplay;
|
||||||
mode->wlr_mode.height = mode->drm_mode.vdisplay;
|
mode->wlr_mode.height = mode->drm_mode.vdisplay;
|
||||||
mode->wlr_mode.refresh = calculate_refresh_rate(&mode->drm_mode);
|
mode->wlr_mode.refresh = calculate_refresh_rate(&mode->drm_mode);
|
||||||
|
if (mode->drm_mode.type & DRM_MODE_TYPE_PREFERRED) {
|
||||||
|
mode->wlr_mode.preferred = true;
|
||||||
|
}
|
||||||
|
|
||||||
wlr_log(WLR_INFO, " %"PRId32"x%"PRId32"@%"PRId32,
|
wlr_log(WLR_INFO, " %"PRId32"x%"PRId32"@%"PRId32,
|
||||||
mode->wlr_mode.width, mode->wlr_mode.height,
|
mode->wlr_mode.width, mode->wlr_mode.height,
|
||||||
|
|
|
@ -20,6 +20,7 @@ struct wlr_output_mode {
|
||||||
uint32_t flags; // enum wl_output_mode
|
uint32_t flags; // enum wl_output_mode
|
||||||
int32_t width, height;
|
int32_t width, height;
|
||||||
int32_t refresh; // mHz
|
int32_t refresh; // mHz
|
||||||
|
bool preferred;
|
||||||
struct wl_list link;
|
struct wl_list link;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -71,7 +72,7 @@ struct wlr_output {
|
||||||
int32_t phys_width, phys_height; // mm
|
int32_t phys_width, phys_height; // mm
|
||||||
|
|
||||||
// Note: some backends may have zero modes
|
// Note: some backends may have zero modes
|
||||||
struct wl_list modes;
|
struct wl_list modes; // wlr_output_mode::link
|
||||||
struct wlr_output_mode *current_mode;
|
struct wlr_output_mode *current_mode;
|
||||||
int32_t width, height;
|
int32_t width, height;
|
||||||
int32_t refresh; // mHz, may be zero
|
int32_t refresh; // mHz, may be zero
|
||||||
|
|
Loading…
Reference in New Issue