Re: Revert to old GPS icon? (it was more informative)
Dan Sandler, a member of the Android team at Google, outlines the statusbar changes in 4.4 (and why they were made) nicely in a comment on Google+:
Essentially, constantly re-updating the statusbar for dynamic icons (i.e. gps, network activity) was enough of a demand on resources to warrant the changes they made. As for reverting to the previous non-static GPS indicator, that's probably not possible without custom ROM developers who choose to include the old statusbar components. That isn't always a simple thing to do.
Seems like this is as good a place as any to explain the changes to the system status icon colors in KK. 1. Whiten ALL the status bar icons!
Aesthetic concerns definitely factored into this (as has been mentioned elsewhere, a more neutral SystemUI allows apps to manage their own color palettes a bit better), but also keep in mind that with the new translucent bars feature, the color became a usability problem. Good old 33b5e5 doesn't pop as well on top of random wallpapers, even with the background protection. 2. What about the MCS GCM indicator?
+Liam Spradlin basically called it: “Overall, network connectivity has been made strangely more opaque in KitKat, though for many average users this isn't a huge concern.” In fact, most users find the colors confusing, if they notice them at all. Even the vanishingly small fraction of users who understood what the gray meant only really looked for it when things weren't working right; now you and I just have to remember to actually pop into quick settings to look for things like GCM liveness (orange is the new gray) and in/out indicators. Which brings me to… 3. B—BUT MY BLINKENLIGHTS?!
So this (the removal of the little in/out data traffic arrows from the RSSI) was mostly a performance consideration, believe it or not. The way the data bits are bubbled up and drawn was not only causing a ton of extra rendering work, but actually forcing a layout (!) in the status bar as well. We could have more aggressively cached the bitmaps (rather than creating new BitmapDrawables from resource IDs every time, which was causing the relayout) but that would still have left all the drawing—multiple times per second in some cases—sucking away precious CPU and GPU from your game or Launcher animations or whatever. In the end it seemed like a lot of work (and battery) for what was effectively visual noise, so this too was booted to Quick Settings where it would be available for us nerds.