Meh. It displays text, pictures, and videos. That's about it. This is just Messenger we're talking about here, not the full-blown Facebook app. The only state to keep track of is "Have you received message UUID?".
> And they also had their own UI framework.
This is where I suspect the bloat occurred.
Writing your own JSON parser and so on doesn't add up to any 1.7 million lines of code.
Image editors are the simplest — they just let you paint with colored pixels.
For android you have to ship basically ffmpeg for correct mp4 encoding, on all platforms you have to carry some library on top of classical ui framework to make it just not suck at performance, you have to get your own json parser, yes, since built-in one will be 10x slower, you may be want to carry even low level QUIC library for networking and websockets, etc, etc.
All this also not increasing complexity since built in one stuff makes your code much harder to read/write.
hopefully they aren't counting ffmpeg in their LOC count, right ? else they may as well count the lines of code of the C and C++ standard library, V8, etc - this would be a very useless metric