issue #22500: move barcode scanner code out of core