X Strike Force XFree86 SVN commit: r1858 - branches/debconf-overhaul/debian
Author: branden
Date: 2004-09-22 18:18:04 -0500 (Wed, 22 Sep 2004)
New Revision: 1858
Modified:
branches/debconf-overhaul/debian/CHANGESETS
branches/debconf-overhaul/debian/TODO
branches/debconf-overhaul/debian/xserver-xfree86.config.in
Log:
Update logic in configure_monitor() to actually use information collected
from read-edid utilities, add comments, and trace the function's operation.
Thanks to Jay Berkenbilt for his analysis. (Closes: #229850)
Modified: branches/debconf-overhaul/debian/CHANGESETS
===================================================================
--- branches/debconf-overhaul/debian/CHANGESETS 2004-09-22 22:55:44 UTC (rev 1857)
+++ branches/debconf-overhaul/debian/CHANGESETS 2004-09-22 23:18:04 UTC (rev 1858)
@@ -101,6 +101,9 @@
mice on NewWorld PowerMacs.
+ Update configure_mouse() to include defaults appropriate to the Hurd (thanks,
Michael Banck). (Closes: #259080)
++ Update logic in configure_monitor() to actually use information collected
+ from read-edid utilities, add comments, and trace the function's operation.
+ Thanks to Jay Berkenbilt for his analysis. (Closes: #229850)
+ Make extensive stylistic cleanups:
- Identify more "global" variables at top of script.
- Add comment headers to every function (where not already present)
Modified: branches/debconf-overhaul/debian/TODO
===================================================================
--- branches/debconf-overhaul/debian/TODO 2004-09-22 22:55:44 UTC (rev 1857)
+++ branches/debconf-overhaul/debian/TODO 2004-09-22 23:18:04 UTC (rev 1858)
@@ -21,9 +21,6 @@
+ #207481: xserver-xfree86: proposed debconf overhaul [BR]
+ #226180: xserver-xfree86: [debconfage rewrite] not amenable to configuration
with readline frontend; lack of defaults
- + #229850: xserver-xfree86: [debconf] monitor selection methods need to be
- more careful about clobbering autodetected monitor sync ranges; study Jay
- Berkenbilt's feedback [BR]
+ #261777: Problems handling multiple detected video cards; see what can be
done about this [BR]
Modified: branches/debconf-overhaul/debian/xserver-xfree86.config.in
===================================================================
--- branches/debconf-overhaul/debian/xserver-xfree86.config.in 2004-09-22 22:55:44 UTC (rev 1857)
+++ branches/debconf-overhaul/debian/xserver-xfree86.config.in 2004-09-22 23:18:04 UTC (rev 1858)
@@ -1463,47 +1463,53 @@
MAY_BE_NULL= auto_answer validate_string_db_input "$PRIORITY" \
xserver-xfree86/config/monitor/identifier "$default_identifier"
- # priority of xserver-xfree86/config/monitor/selection-method
- set_db_priority "medium"
-
+ # Set priority of xserver-xfree86/config/monitor/selection-method based on
+ # whether or not we were able to retrieve the monitor's sync ranges via EDID.
+ #
+ # If we did get monitor sync range information via EDID, pre-answer the
+ # selection method with "Advanced". Otherwise, ask the user if the monitor is
+ # an LCD.
if [ -n "$edid_horiz_sync" ] && [ -n "$edid_vert_refresh" ]; then
trace "$func(): \$edid_horiz_sync: \"$edid_horiz_sync\";" \
"\$edid_vert_refresh: \"$edid_vert_refresh\"; setting question" \
"priority to low"
set_db_priority "low"
+ db_subst xserver-xfree86/config/monitor/selection-method default "Advanced"
else
trace "$func(): at least of one of hsync \"$edid_horiz_sync\" or vrefresh" \
- "\"$edid_vert_refresh\" is null; not setting question priority to low"
- fi
+ "\"$edid_vert_refresh\" is null; setting question priority to medium"
+ set_db_priority "medium"
- trace "$func(): monitor hsync and vrefresh question priority is $PRIORITY"
+ # Flat panels are more and more common, so set the selection method default
+ # to "Medium".
+ db_subst xserver-xfree86/config/monitor/selection-method default "Medium"
- auto_answer db_input "$PRIORITY" \
- xserver-xfree86/config/monitor/lcd "false"
- db_get xserver-xfree86/config/monitor/lcd
- trace "$func(): xserver-xfree86/config/monitor/lcd is $RET"
- if [ "$RET" = "true" ]; then
- db_subst xserver-xfree86/config/monitor/selection-method choices \
- "Medium, Advanced"
- else # not an LCD
- db_subst xserver-xfree86/config/monitor/selection-method choices \
- "Simple, Medium, Advanced"
+ # Ask whether the monitor is an LCD, and eliminate the "Simple" selection
+ # method from the list of choices if it is.
+ auto_answer db_input "$PRIORITY" xserver-xfree86/config/monitor/lcd "false"
+ db_get xserver-xfree86/config/monitor/lcd
+ trace "$func(): xserver-xfree86/config/monitor/lcd is $RET"
+ if [ "$RET" = "true" ]; then
+ db_subst xserver-xfree86/config/monitor/selection-method choices \
+ "Medium, Advanced"
+ else # not an LCD
+ db_subst xserver-xfree86/config/monitor/selection-method choices \
+ "Simple, Medium, Advanced"
+ fi
fi
- # Flat panels are more and more common, so set the default to medium.
- db_subst xserver-xfree86/config/monitor/selection-method default "Medium"
-
+ trace "$func(): question priority for monitor selection method and related" \
+ "questions is $PRIORITY"
run db_input "$PRIORITY" xserver-xfree86/config/monitor/selection-method
- # priority of xserver-xfree86/config/monitor/{several things}
- set_db_priority "high"
-
db_get xserver-xfree86/config/monitor/selection-method
+ trace "$func(): using \"$RET\" selection method"
case "$RET" in
Simple)
run db_input "$PRIORITY" xserver-xfree86/config/monitor/screen-size
db_go
db_get xserver-xfree86/config/monitor/screen-size
+ trace "$func(): screen size is \"$RET\""
case "$RET" in
'Up to 14 inches (355 mm)')
db_set xserver-xfree86/config/monitor/horiz-sync "28-33"
@@ -1536,6 +1542,7 @@
run db_input "$PRIORITY" xserver-xfree86/config/monitor/mode-list
db_go
db_get xserver-xfree86/config/monitor/mode-list
+ trace "$func(): mode selected from list is \"$RET\""
# The mode and range information below is adapted from the built-in
# modeline definitions in the XFree86 source tree; specifically
# xc/programs/Xserver/hw/xfree86/etc/vesamodes and
@@ -1712,11 +1719,16 @@
;;
Advanced)
auto_answer validate_monitor_frequency_db_input "$PRIORITY" \
- xserver-xfree86/config/monitor/horiz-sync "28-50"
+ xserver-xfree86/config/monitor/horiz-sync "$default_horiz_sync"
auto_answer validate_monitor_frequency_db_input "$PRIORITY" \
- xserver-xfree86/config/monitor/vert-refresh "43-75"
+ xserver-xfree86/config/monitor/vert-refresh "$default_vert_refresh"
;;
esac
+
+ db_get xserver-xfree86/config/monitor/horiz-sync
+ trace "$func(): horizontal sync configured to \"$RET\""
+ db_get xserver-xfree86/config/monitor/vert-refresh
+ trace "$func(): vertical refresh configured to \"$RET\""
}
configure_display_modes_and_depth () {
Reply to: