system-preferences.ts 989 B

1234567891011121314151617181920212223
  1. import * as deprecate from '@electron/internal/common/deprecate';
  2. const { systemPreferences } = process._linkedBinding('electron_browser_system_preferences');
  3. if ('getEffectiveAppearance' in systemPreferences) {
  4. const nativeEAGetter = systemPreferences.getEffectiveAppearance;
  5. Object.defineProperty(systemPreferences, 'effectiveAppearance', {
  6. get: () => nativeEAGetter.call(systemPreferences)
  7. });
  8. }
  9. if ('accessibilityDisplayShouldReduceTransparency' in systemPreferences) {
  10. const reduceTransparencyDeprecated = deprecate.warnOnce('systemPreferences.accessibilityDisplayShouldReduceTransparency', 'nativeTheme.prefersReducedTransparency');
  11. const nativeReduceTransparency = systemPreferences.accessibilityDisplayShouldReduceTransparency;
  12. Object.defineProperty(systemPreferences, 'accessibilityDisplayShouldReduceTransparency', {
  13. get: () => {
  14. reduceTransparencyDeprecated();
  15. return nativeReduceTransparency;
  16. }
  17. });
  18. }
  19. export default systemPreferences;