Skip to content

loilo/windows-titlebar-color

master
Switch branches/tags
Code

Latest commit

Added two helper properties for retrieving the expected title bar text color
2876c25

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 

windows-titlebar-color

Reads the title bar's color from the Windows 7, 8, 8.1 or 10 registry.

Created for usage in Electron apps.

JavaScript Style Guide

Usage

const winColor = require('windows-titlebar-color')

console.log(winColor.titlebarColor)

// could be #4ca0fe. or anything else.
//           ^ this is at least not a completely arbitrary color since it's
//             the default blue window chrome color that ships with Windows 8

Works with...

...Windows 7, Windows 8/8.1 and Windows 10. Generally.

Does not work with...

...Windows 7 "Basic" style (non-Aero), classic window style (as in Win2k and below), high contrast window style and any other kind of manually tweaked window styles.

If you know how to elegantly provide information for those, feel free to open an issue. I'm generally fine with the lack of those since that's where other software (such as Google Chrome) also draws the line to fall back to their own non-OS-following styles.

Also note that the color determined for Windows 7 in Aero mode may differ from the perceived color of the title bar due to glossy transparency magic.

API

It's pretty simple. Grab the module and then go for it:

const winColor = require('windows-titlebar-color')

Stuff you can access on the winColor object:

winColor.titlebarColor

Returns the color of the your Windows machines' title bar as a hex string.

winColor.titlebarTextColor

Returns the text color of the the title bar as a hex string.

winColor.inactiveTitlebarColor

Returns the color of the title bar on an inactive window.

winColor.inactiveTitlebarTextColor

Returns the text color of an inactive window's title bar as a hex string.

winColor.isSupported

Returns a boolean indicating if the running OS is generally supported to read colors from. Does not check for other limitations like those stated above.

winColor.isDetectable

Returns a boolean indicating if the running OS is supported and if a color is detectable for the title bar. (In other words: additionally checks if Aero is active in case the OS is Windows 7.)

winColor.reload()

Freshly loads the colors from the Registry. This is also done on initiation so typically you won't ever need to call this.

winColor.raw

Returns a hash containing the registry values from the HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\DWM key entries, converted to either boolean or hex color strings. For example my personal Windows 10 hash looks like this:

{
  Composition: true,
  ColorizationGlassAttribute: false,
  EnableAeroPeek: true,
  ColorPrevalence: true,
  AccentColor: '#484a4c',
  ColorizationColor: '#4c4a48',
  ColorizationColorBalance: '#000059',
  ColorizationAfterglow: '#4c4a48',
  ColorizationAfterglowBalance: '#00000a',
  ColorizationBlurBalance: true,
  EnableWindowColorization: true
}

About

πŸ– Node.js package to get the title bar color from Windows 7, 8, 8.1 or 10

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published