Improve EDID information on Wayland
Needs RevisionPublic

Authored by dvratil on Jan 23 2018, 12:10 PM.

Details

Summary

Extract vendor and model names from EDID and send them as they
are so that we can present them to users on the client side
and additionally send serial number and EISA ID of the output
so that we can better identify the outputs.

Diff Detail

Repository
R108 KWin
Branch
master
Lint
No Linters Available
Unit
No Unit Test Coverage
dvratil created this revision.Jan 23 2018, 12:10 PM
Restricted Application added a project: KWin. · View Herald TranscriptJan 23 2018, 12:10 PM
Restricted Application added subscribers: KWin, kwin. · View Herald Transcript
dvratil requested review of this revision.Jan 23 2018, 12:10 PM
graesslin added a subscriber: mart.Jan 23 2018, 3:47 PM

@mart: what will be the impact on plamashell if the provided values are changed?

plugins/platforms/drm/drm_output.cpp
599

Can we be sure this path is the same on all distros? Should we runtime depend on it? E.g. a cmake check whether it's available?

@mart: what will be the impact on plamashell if the provided values are changed?

I thought you said in the other review that this interface is not to be used by anyone else but kscreen :-)

plugins/platforms/drm/drm_output.cpp
599

The path is somewhat standardized between all distros. There are some distros (like Arch) that simply don't have this file because they use different upstream source (gentoo vs. fedora) that is missing that but from I can tell they still use /usr/share/hwdata for all distros I checked.

I can add a cmake check if you want.

I thought you said in the other review that this interface is not to be used by anyone else but kscreen :-)

The data which is set on the OutputDevice is also synced into the Output (see line 350). And to my knowledge plasmashell uses this information for mapping containments to it.

plugins/platforms/drm/drm_output.cpp
599

I can add a cmake check if you want.

Yep, I would prefer this. Just to also make clear at compile time that it's missing. I don't like hidden dependencies which fail on some distros.

And to my knowledge plasmashell uses this information for mapping containments to it.

Not really. We use QScreen name. QScreen's name is:

("Screen%1").arg(id))

where id is the literal wl_id.

It's pretty rubbish

This will change when we implement XdgOutputV2 (which is still in review) and when that gets into Qt.

In any case it's not a reason to block this.

Restricted Application removed a subscriber: KWin. · View Herald TranscriptJun 1 2018, 10:43 AM
davidedmundson requested changes to this revision.Jun 1 2018, 10:44 AM
I can add a cmake check if you want.

Marking as "request changes" to remove it from the queue.

This revision now requires changes to proceed.Jun 1 2018, 10:44 AM