WhiteWindowParams.m 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. //
  2. // WhiteWindowParams.m
  3. // Whiteboard
  4. //
  5. // Created by yleaf on 2022/2/9.
  6. //
  7. #import "WhiteWindowParams.h"
  8. WhitePrefersColorScheme const WhitePrefersColorSchemeAuto = @"auto";
  9. WhitePrefersColorScheme const WhitePrefersColorSchemeLight = @"light";
  10. WhitePrefersColorScheme const WhitePrefersColorSchemeDark = @"dark";
  11. @implementation WhiteWindowParams
  12. - (instancetype)init {
  13. self = [super init];
  14. _chessboard = YES;
  15. _containerSizeRatio = @(9/16.0);
  16. _debug = YES;
  17. _fullscreen = NO;
  18. _prefersColorScheme = WhitePrefersColorSchemeLight;
  19. return self;
  20. }
  21. - (void)setContainerSizeRatio:(NSNumber *)containerSizeRatio {
  22. if (isinf([containerSizeRatio doubleValue])) { return; }
  23. if (isnan([containerSizeRatio doubleValue])) { return; }
  24. _containerSizeRatio = containerSizeRatio;
  25. }
  26. - (void)setPrefersColorScheme:(WhitePrefersColorScheme)prefersColorScheme {
  27. if (@available(iOS 13, *)) {
  28. _prefersColorScheme = prefersColorScheme;
  29. } else if ([prefersColorScheme isEqualToString:WhitePrefersColorSchemeAuto]) {
  30. NSLog(@"WhitePrefersColorSchemeAuto is not available before iOS 13");
  31. return;
  32. } else {
  33. _prefersColorScheme = prefersColorScheme;
  34. }
  35. }
  36. @end