Black status bar icon on Marshmallow making it unreadable on dark wallpaper Even though the title enunciates the problem, the question is about a solution or workaround to this behaviour.

As I have found, Marshmallow normally colors the status bar icons (Wi-Fi, Battery, Clock) on the launcher (home screens) by taking the colour of the topmost region of the wallpaper currently set and tinting the icons to a darker version of it.

This is all well and good if you have the sky there in your wallpaper, or something light-coloured; but if you have a night-time cityscape as your wallpaper, it colours the icons to be "Darker Than Black" (pun intended). So, magically, your Wi-Fi, Battery, Clock and everything else just disappears from the status bar. Only they haven't disappeared. Set a light wallpaper or a dark one with the top region light, and they're back.

I don't think that this is a problem with the launcher, as I use both Nova Prime and Google Now Launcher, and both have this problem. I also checked the System UI Tuner options for such settings relating to this tinting mechanism, and they're nonexistent (The settings there include what statusbar icons and quick settings tiles to show, battery icon customization, demo mode, and that's it).

I know of 3 possible workarounds to prevent this behaviour:


Disable Nova Launcher's transparent statusbar option under "Look and Feel", but I don't want to do that.
Use Xposed+FSCB (Flat Style Colored Bars) or similar. Well, Xposed on Lollipop 32-bit was unstable. Marshmallow ARM64? (I really have no idea, but I'm definitely not willing to take the risk.
This was a no-brainer. Use a light wallpaper. (Well, then I wouldn't have asked this question, would I?)


The question is: "Can I have the best of both worlds (i.e., my dark nighttime cityscapes as wallpapers and visible statusbar icons)?"

The solutions I'll prefer can involve root but not Xposed, and not 1 or 3 above. Also, it's preferable if the solution tints the icons to white on a dark wallpaper but preserves the stock behaviour otherwise, and doesn't affect apps other than the launcher, because my problem doesn't affect apps other than the launcher.

Background:

My HTC Nexus 9 16GB, Wi-Fi, flounder/volantis running Marshmallow 6.0.0 MRA58K rooted with TWRP 2.8.7.0 ElementalX 4.02

Some pictures:

Click images to enlarge

Light wallpaper:



Dark wallpaper:



Dark wallpaper with light top region (Whaat?):



What I want ( This is from my phone, same Nova Prime, 4.4.2, (Lollipop signal icons courtesy GravityBox KK)):
Based on reddit (and I have tested it myself), apparently it's a feature of Nova Launcher on Android 6.0 Marshmallow called "Dark icons". It seems it's enabled by default for existing users after updating the app (on my case, new installation will have to turn this setting on manually).

The setting can be checked on Nova Settings - Look &amp; feel - Dark icons. Note that this is a new feature of Marshmallow, allowing an app to have black status icons for light status bar, and thus, the setting is only available on Marshmallow and above.

As for why it also affected Google Now Launcher, I actually have no idea, since I couldn't reproduce the issue on Nexus 5 running Marshmallow 6.0. Even if I leave the option enabled on Nova Launcher, changing the home setting (on Settings - Home - Google Now Launcher) and pressing "Home" button will revert the whole launcher to Google Now Launcher with its default white icon.