mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-08 10:06:22 -05:00
wayland: use xdg_output's description if there's no 'model'
This commit is contained in:
parent
bc82d4ee28
commit
32e70263f9
2 changed files with 13 additions and 4 deletions
10
wayland.c
10
wayland.c
|
|
@ -259,13 +259,15 @@ xdg_output_handle_name(void *data, struct zxdg_output_v1 *xdg_output,
|
|||
const char *name)
|
||||
{
|
||||
struct monitor *mon = data;
|
||||
mon->name = strdup(name);
|
||||
mon->name = name != NULL ? strdup(name) : NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
xdg_output_handle_description(void *data, struct zxdg_output_v1 *xdg_output,
|
||||
const char *description)
|
||||
{
|
||||
struct monitor *mon = data;
|
||||
mon->description = description != NULL ? strdup(description) : NULL;
|
||||
}
|
||||
|
||||
static const struct zxdg_output_v1_listener xdg_output_listener = {
|
||||
|
|
@ -666,13 +668,14 @@ handle_global(void *data, struct wl_registry *registry,
|
|||
static void
|
||||
monitor_destroy(struct monitor *mon)
|
||||
{
|
||||
free(mon->name);
|
||||
if (mon->xdg != NULL)
|
||||
zxdg_output_v1_destroy(mon->xdg);
|
||||
if (mon->output != NULL)
|
||||
wl_output_destroy(mon->output);
|
||||
free(mon->make);
|
||||
free(mon->model);
|
||||
free(mon->name);
|
||||
free(mon->description);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -842,7 +845,8 @@ wayl_init(const struct config *conf, struct fdm *fdm)
|
|||
"%s: %dx%d+%dx%d@%dHz %s %.2f\" scale=%d PPI=%dx%d (physical) PPI=%dx%d (logical)",
|
||||
it->item.name, it->item.dim.px_real.width, it->item.dim.px_real.height,
|
||||
it->item.x, it->item.y, (int)round(it->item.refresh),
|
||||
it->item.model, it->item.inch, it->item.scale,
|
||||
it->item.model != NULL ? it->item.model : it->item.description,
|
||||
it->item.inch, it->item.scale,
|
||||
it->item.ppi.real.x, it->item.ppi.real.y,
|
||||
it->item.ppi.scaled.x, it->item.ppi.scaled.y);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,7 +19,6 @@ struct monitor {
|
|||
struct wayland *wayl;
|
||||
struct wl_output *output;
|
||||
struct zxdg_output_v1 *xdg;
|
||||
char *name;
|
||||
uint32_t wl_name;
|
||||
|
||||
int x;
|
||||
|
|
@ -63,8 +62,14 @@ struct monitor {
|
|||
float refresh;
|
||||
enum wl_output_subpixel subpixel;
|
||||
|
||||
/* From wl_output */
|
||||
char *make;
|
||||
char *model;
|
||||
|
||||
/* From xdg_output */
|
||||
char *name;
|
||||
char *description;
|
||||
|
||||
float inch; /* e.g. 24" */
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue