Enable screen rotation of 180 and 270 degrees
https://bugzilla.redhat.com/show_bug.cgi?id=1791804 Currently the screen can be shown as Landscape and Portrait (90 deg. rotation). Allowing also Flipped Portrait (270 deg. rotation) and Flipped Landscape (180 deg). Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com> Acked-by: Marek Kedzierski <mkedzier@redhat.com>
This commit is contained in:
parent
7a7928db87
commit
e318b56cb8
@ -1299,8 +1299,8 @@ NTSTATUS QxlDod::EnumVidPnCofuncModality(_In_ CONST DXGKARG_ENUMVIDPNCOFUNCMODAL
|
|||||||
LocalVidPnPresentPath.ContentTransformation.RotationSupport.Identity = 1;
|
LocalVidPnPresentPath.ContentTransformation.RotationSupport.Identity = 1;
|
||||||
// Sample supports only Rotate90
|
// Sample supports only Rotate90
|
||||||
LocalVidPnPresentPath.ContentTransformation.RotationSupport.Rotate90 = 1;
|
LocalVidPnPresentPath.ContentTransformation.RotationSupport.Rotate90 = 1;
|
||||||
LocalVidPnPresentPath.ContentTransformation.RotationSupport.Rotate180 = 0;
|
LocalVidPnPresentPath.ContentTransformation.RotationSupport.Rotate180 = 1;
|
||||||
LocalVidPnPresentPath.ContentTransformation.RotationSupport.Rotate270 = 0;
|
LocalVidPnPresentPath.ContentTransformation.RotationSupport.Rotate270 = 1;
|
||||||
SupportFieldsModified = TRUE;
|
SupportFieldsModified = TRUE;
|
||||||
}
|
}
|
||||||
} // End: ROTATION
|
} // End: ROTATION
|
||||||
@ -1639,6 +1639,8 @@ NTSTATUS QxlDod::SetSourceModeAndPath(CONST D3DKMDT_VIDPN_SOURCE_MODE* pSourceMo
|
|||||||
if (pCurrentBddMode->DispInfo.Width == pModeInfo->VisScreenWidth &&
|
if (pCurrentBddMode->DispInfo.Width == pModeInfo->VisScreenWidth &&
|
||||||
pCurrentBddMode->DispInfo.Height == pModeInfo->VisScreenHeight )
|
pCurrentBddMode->DispInfo.Height == pModeInfo->VisScreenHeight )
|
||||||
{
|
{
|
||||||
|
DbgPrint(TRACE_LEVEL_INFORMATION, ("%s: %dx%d, rotation %d\n", __FUNCTION__,
|
||||||
|
pCurrentBddMode->SrcModeHeight, pCurrentBddMode->SrcModeWidth, pCurrentBddMode->Rotation));
|
||||||
Status = m_pHWDevice->SetCurrentMode(m_pHWDevice->GetModeNumber(ModeIndex));
|
Status = m_pHWDevice->SetCurrentMode(m_pHWDevice->GetModeNumber(ModeIndex));
|
||||||
if (NT_SUCCESS(Status))
|
if (NT_SUCCESS(Status))
|
||||||
{
|
{
|
||||||
@ -1684,6 +1686,8 @@ NTSTATUS QxlDod::IsVidPnPathFieldsValid(CONST D3DKMDT_VIDPN_PRESENT_PATH* pPath)
|
|||||||
}
|
}
|
||||||
else if ((pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_IDENTITY) &&
|
else if ((pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_IDENTITY) &&
|
||||||
(pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_ROTATE90) &&
|
(pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_ROTATE90) &&
|
||||||
|
(pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_ROTATE180) &&
|
||||||
|
(pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_ROTATE270) &&
|
||||||
(pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_NOTSPECIFIED) &&
|
(pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_NOTSPECIFIED) &&
|
||||||
(pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_UNINITIALIZED))
|
(pPath->ContentTransformation.Rotation != D3DKMDT_VPPR_UNINITIALIZED))
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user