A BJT is a current device. With that device and in that sense, then yes, you are controlling current, and based on a voltage measurement after the device adjusting current at the base of the transistor which will change the voltage across the load. However, that is true of a BJT, but *not* of an FET which is a voltage device. And in the case of a package like an LM317, we don't care about how it works inside, whether it uses BJTs or FETs. An LM317 as a discrete device is a voltage device, not a current device. Any specific charger could be built with BJTs, FETs, an LM317, or similar, or a combination of those. In many cases it is via PWM, and you are not controlling current or voltage, but pulse width. We don't care, the charger as a device is a voltage regulator, not a current regulator. In any case, we say we are regulating voltage, because that is what we care about, and that is what we hold to a specific value as the resistive and current components in circuit change. We are not regulating current, because while whatever technique we might use to change voltage (which is by current with a BJT or by voltage with an FET, or by pulse width with PWM), voltage is what we are monitoring and holding to a specific value. And that is what a charger is doing, holding a specific voltage. Only when it is incapable of holding that voltage because of excessive current will it allow the voltage to change.