USB Interface descriptors for serial AND keyboard on UNO's ATmega16U2

The small USB to serial conversion processor can handle up to five USB Endpoints.

So why do i have to always flash a new firmware to this USB chip, when i want to have anoter USB Protocoll to the PC?

Isn't it possible to configure this controller to be a standard USB-Serial Device that can be used to Program the ATmega 328 of the UNO Board AND also to have a parallel connection that can sende USB-Keyboard data to the PC at the same time?

This is the acutal situation:

When i want the UNO to send keyboard commands over USB i have to put a new firmware on the 16U2 / 8U2. But when i want to change the ATmega328 Programm afterwards, i have to reprogramm the 16u2 with the USB-to serial firmware. And when i want to output the ATmega328 serial commands via the 16U2 to an USB-Keyboard i have to flash the other firmware to the 16U2. (I hope i could describe this in a way that could be understood.)

I think it makes no sense to exchange the firmware for the 16U2 all the time when testing. Isn't it possible to make a special firmware that can handle both things in parallel?