From 3763b4031ed266dc2f236ee39e5011a79a1d7394 Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Mon, 30 Apr 2007 13:04:59 +0000 Subject: - don't use 1280x1024 prefered resolution (using prefered resolution only when adding explicit gtf modelines) --- lib/Xconfig/monitor.pm | 4 +--- lib/Xconfig/xfree.pm | 12 +++++++++--- 2 files changed, 10 insertions(+), 6 deletions(-) (limited to 'lib/Xconfig') diff --git a/lib/Xconfig/monitor.pm b/lib/Xconfig/monitor.pm index d376f15..365e2da 100644 --- a/lib/Xconfig/monitor.pm +++ b/lib/Xconfig/monitor.pm @@ -215,9 +215,7 @@ sub probe_DDC() { $monitor->{ModeLine} = Xconfig::xfree::default_ModeLine(); my $detailed_timings = $monitor->{detailed_timings} || []; foreach (grep { !$_->{bad_ratio} } @$detailed_timings) { - my $ratio = $_->{horizontal_active} / $_->{vertical_active}; - - if (abs($ratio - 4 / 3) < 0.01) { + if (Xconfig::xfree::xorg_builtin_resolution($_->{horizontal_active}, $_->{vertical_active})) { #- we don't want the 4/3 modelines otherwise they conflict with the Xorg builtin vesamodes } else { unshift @{$monitor->{ModeLine}}, diff --git a/lib/Xconfig/xfree.pm b/lib/Xconfig/xfree.pm index 1e5eaaa..f1f5614 100644 --- a/lib/Xconfig/xfree.pm +++ b/lib/Xconfig/xfree.pm @@ -381,14 +381,20 @@ sub default_ModeLine() { ModeLine_from_string(qq(Section "Monitor"\n) . (our $default_ModeLine) . qq(EndSection\n)); } +sub xorg_builtin_resolution { + my ($X, $Y) = @_; + my $res = $X . 'x' . $Y; + + $res eq '1280x1024' || + $res ne '1400x1050' && $res ne '1152x864' && $Xconfig::xfree::resolution2ratio{$res} eq '4/3'; +} + sub add_gtf_ModeLines { my ($raw_X, $resolutions) = @_; my $banner = 'modeline generated by gtf(1) [handled by XFdrake]'; - my $res = $resolutions->[0]{X} . 'x' . $resolutions->[0]{Y}; my @to_add; - if ($res ne '1280x1024' && - ($res eq '1400x1050' || $res eq '1152x864' || $Xconfig::xfree::resolution2ratio{$res} ne '4/3')) { + if (!xorg_builtin_resolution($resolutions->[0]{X}, $resolutions->[0]{Y})) { @to_add = map { my $resolution = $_; map { -- cgit v1.2.1