(define-integrable (editor-frame? object)
(object-of-class? editor-frame object))
+(define-method fix-layout-adjustment-parameters ((widget <text-widget>)
+ view-size extent-size
+ extent-low receiver)
+ (declare (ignore widget))
+ (if (fix:< view-size extent-size)
+ ;; Drawing is larger than viewport: thumb (page) is viewport.
+ (begin
+ (%trace "; large-drawing:"extent-size" view:"view-size"\n")
+ (receiver extent-low view-size))
+ ;; Viewport is larger than drawing: thumb (page) is 0.
+ (begin
+ (%trace "; drawing:"extent-size" large-view:"view-size"\n")
+ ;; When page-size = extent-size, high will be extent-low [see
+ ;; adjust-adjustment]. Thus high and low are extent-low, and
+ ;; value will be clamped to extent-low.
+ (receiver extent-low extent-size))))
+
(define-class (<modeline-widget> (constructor make-modeline-widget (screen)))
(<edwin-widget>))