move_overlay() fix for dualhead stretch/switch modes added.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7408 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -21,6 +21,25 @@ void nv_bes_move_overlay()
|
|||||||
/* abort if overlay is not active */
|
/* abort if overlay is not active */
|
||||||
if (!si->overlay.active) return;
|
if (!si->overlay.active) return;
|
||||||
|
|
||||||
|
/* do 'overlay follow head' in dualhead modes on dualhead cards */
|
||||||
|
if (si->ps.secondary_head)
|
||||||
|
{
|
||||||
|
switch (si->dm.flags & DUALHEAD_BITS)
|
||||||
|
{
|
||||||
|
case DUALHEAD_ON:
|
||||||
|
case DUALHEAD_SWITCH:
|
||||||
|
if ((si->overlay.ow.h_start + (si->overlay.ow.width / 2)) <
|
||||||
|
(si->dm.h_display_start + si->dm.timing.h_display))
|
||||||
|
nv_bes_to_crtc(si->crtc_switch_mode);
|
||||||
|
else
|
||||||
|
nv_bes_to_crtc(!si->crtc_switch_mode);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
nv_bes_to_crtc(si->crtc_switch_mode);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* the BES does not respect virtual_workspaces, but adheres to CRTC
|
/* the BES does not respect virtual_workspaces, but adheres to CRTC
|
||||||
* constraints only */
|
* constraints only */
|
||||||
crtc_hstart = si->dm.h_display_start;
|
crtc_hstart = si->dm.h_display_start;
|
||||||
|
|||||||
Reference in New Issue
Block a user