10.11 Section 10: Hardware Limitations (Camera Profiles)

Zoom lens range clamps focal length picker

Zoom range bounds the slider in Gear mode; lens name shows above the focal length so you know what is mounted.

Where to find it

Viewfinder Focal length slider wheel; Equipment Lens picker sub-label

Summary

LensSpec gains an optional focalLengthMaxMm. When RangesMode is GEAR_BASED and the picked lens is a zoom (focalLengthMaxMm > focalLengthMm) the main FocalLengthSlider and FocalLengthWheel are bounded by the lens's range, the picker sub-label reads 24-70mm, the slider stays visible for zooms even when the gear-lens card replacement would otherwise apply, and the lens displayName renders above the focal-length readout. In CUSTOM mode the slider stays format-wide and shows no lens annotation. Picking any lens (in Gear mode) lands the slider at the lens's wide end (lens.focalLengthMm), and the slider/wheel give wider snap zones to the range endpoints so a 24-70 zoom can actually reach 70 without competing with the 65mm common stop.

How it works

When you pick a zoom lens like the Canon 24-70mm in Gear mode, the focal length picker on the main viewfinder is limited to 24-70mm. The slider can no longer drift past the wide or long end of the glass that is actually mounted, so every focal length you can dial is one your lens can reach.

Lens name above the focal length

While Gear mode is on, the slider's focal-length readout shows the lens name (for example Canon EF 24-70mm f/2.8L USM) on the line above the millimetre value, so a glance tells you what is mounted. Custom mode hides the lens name and lifts the range constraint, so you can dial any focal length your format supports for what-if work.

Picking a zoom

Tap the Equipment icon, choose a zoom lens. The Equipment list shows the full range under the lens name (for example 24-70mm f/2.8) so you can tell zooms from primes at a glance. Picking the zoom drops the slider at the wide end of the range; drag toward the long end to zoom in.

Reaching the lens ends

The wide and long ends of a zoom are the most important snap targets, so they get a wider snap zone than the format's common focal lengths. On a 24-70 the slider will reliably stop at 70 even though the format also has a 65mm common stop nearby.

Picking a prime

Primes behave the same as before: the slider snaps to the lens's single focal length and the gear-lens info card replaces the slider when the Replace focal length slider with selected lens preference is on. The card replacement only ever happens for primes, since you actually need a slider to pick a value inside a zoom range.

Catalogue coverage

Currently only bundled catalogue zooms carry the long end (Canon EF 24-70mm f/2.8L USM and EF 70-200mm f/2.8L USM). User-added custom zooms still behave as primes at the wide end until custom-lens zoom support ships.

Implementation notes (for developers)
LensSpec.focalLengthMaxMm + isZoom getter; assets/gear/lenses.json carries the long end on canon-ef-24-70 and canon-ef-70-200; ViewfinderViewModel.effectiveFocalRange gates lens range on RangesMode.GEAR_BASED and routes onSliderPositionChanged / applyFocalLengthSync / onGearLensChanged / onGearCameraChanged / onRangesModeChanged / applyPresetToState / restoreSettings; lens-swap paths snap focalLengthMm to lens.focalLengthMm (wide end) regardless of zoom vs prime; onRangesModeChanged always re-runs applyFocalLengthSync so sliderPosition recomputes against the new effective range; FocalLengthSlider gives endpoints a 5% snap zone vs 1.5% for middle stops; FocalLengthWheel adds effMin/effMax to its majors set; DefaultControls and ClassicControls compute gearActive = (mode == GEAR_BASED && lens != null) and gate zoom bounds + lensName off it. Custom-lens zooms (Room) deferred.

Search documentation