Skip to content
This repository was archived by the owner on Apr 13, 2025. It is now read-only.

Commit 44441a5

Browse files
committed
refactor user defaults keys
Signed-off-by: 82Flex <[email protected]>
1 parent 6fc7fe3 commit 44441a5

File tree

8 files changed

+216
-151
lines changed

8 files changed

+216
-151
lines changed

Makefile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ TrollSpeed_CFLAGS += -Isources/KIF
2323
TrollSpeed_CFLAGS += -include supports/hudapp-prefix.pch
2424
MainApplication.mm_CCFLAGS += -std=c++14
2525

26+
TrollSpeed_SWIFT_BRIDGING_HEADER += supports/hudapp-bridging-header.h
27+
2628
TrollSpeed_LDFLAGS += -Flibraries
2729

2830
TrollSpeed_FRAMEWORKS += CoreGraphics CoreServices QuartzCore IOKit UIKit

TrollSpeed.xcodeproj/project.pbxproj

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,8 @@
7171
CC91309F2B616541006E3280 /* HUDBackdropLabel.mm in Sources */ = {isa = PBXBuildFile; fileRef = CC91309D2B616541006E3280 /* HUDBackdropLabel.mm */; };
7272
CC9130A32B616C18006E3280 /* HUDBackdropView.mm in Sources */ = {isa = PBXBuildFile; fileRef = CC9130A22B616C18006E3280 /* HUDBackdropView.mm */; };
7373
CC9130A42B616C18006E3280 /* HUDBackdropView.mm in Sources */ = {isa = PBXBuildFile; fileRef = CC9130A22B616C18006E3280 /* HUDBackdropView.mm */; };
74+
CC9130A72B62A33A006E3280 /* TSSettingsIndex.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC9130A62B62A33A006E3280 /* TSSettingsIndex.swift */; };
75+
CC9130A82B62A33A006E3280 /* TSSettingsIndex.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC9130A62B62A33A006E3280 /* TSSettingsIndex.swift */; };
7476
/* End PBXBuildFile section */
7577

7678
/* Begin PBXFileReference section */
@@ -163,6 +165,8 @@
163165
CC9130A02B616BBF006E3280 /* CAFilter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CAFilter.h; sourceTree = "<group>"; };
164166
CC9130A12B616C18006E3280 /* HUDBackdropView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HUDBackdropView.h; sourceTree = "<group>"; };
165167
CC9130A22B616C18006E3280 /* HUDBackdropView.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = HUDBackdropView.mm; sourceTree = "<group>"; };
168+
CC9130A52B62A262006E3280 /* hudapp-bridging-header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "hudapp-bridging-header.h"; sourceTree = "<group>"; };
169+
CC9130A62B62A33A006E3280 /* TSSettingsIndex.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TSSettingsIndex.swift; sourceTree = "<group>"; };
166170
CCB6B6FA2B5C06DD00AD2A89 /* NSUserDefaults+Private.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSUserDefaults+Private.h"; sourceTree = "<group>"; };
167171
CCB6B6FB2B5C074F00AD2A89 /* rootless.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = rootless.h; sourceTree = "<group>"; };
168172
/* End PBXFileReference section */
@@ -217,6 +221,7 @@
217221
CC711D922B5BFE66007235A6 /* icon.png */,
218222
CC711D7F2B5BF772007235A6 /* entitlements.plist */,
219223
CC711D7E2B5BF772007235A6 /* hudapp-prefix.pch */,
224+
CC9130A52B62A262006E3280 /* hudapp-bridging-header.h */,
220225
CC711D812B5BFA64007235A6 /* Info.plist */,
221226
CC2BAFE42B5CAF2200A429D1 /* Sandbox-Info.plist */,
222227
CC711D872B5BFCC4007235A6 /* Localizable.strings */,
@@ -258,6 +263,7 @@
258263
CC711D1F2B5BF5C6007235A6 /* RootViewController.mm */,
259264
CC711D232B5BF5C6007235A6 /* TSEventFetcher.h */,
260265
CC711D472B5BF5C6007235A6 /* TSEventFetcher.mm */,
266+
CC9130A62B62A33A006E3280 /* TSSettingsIndex.swift */,
261267
CC711D462B5BF5C6007235A6 /* TSSettingsController.swift */,
262268
);
263269
path = sources;
@@ -465,6 +471,7 @@
465471
CC2BAFC82B5CA9DD00A429D1 /* SPLarkController.swift in Sources */,
466472
CC2BAFC92B5CA9DD00A429D1 /* HUDApp.mm in Sources */,
467473
CC2BAFCB2B5CA9DD00A429D1 /* SPLarkSettingsCollectionView.swift in Sources */,
474+
CC9130A82B62A33A006E3280 /* TSSettingsIndex.swift in Sources */,
468475
CC2BAFCC2B5CA9DD00A429D1 /* SPLarkSettingsController.swift in Sources */,
469476
CC2BAFCD2B5CA9DD00A429D1 /* SPLarkControllerExtension.swift in Sources */,
470477
CC2BAFCE2B5CA9DD00A429D1 /* MainApplicationDelegate.mm in Sources */,
@@ -478,6 +485,7 @@
478485
isa = PBXSourcesBuildPhase;
479486
buildActionMask = 2147483647;
480487
files = (
488+
CC9130A72B62A33A006E3280 /* TSSettingsIndex.swift in Sources */,
481489
CC711D4A2B5BF5C6007235A6 /* HUDHelper.mm in Sources */,
482490
CC711D532B5BF5C6007235A6 /* SPLarkPresentingAnimationController.swift in Sources */,
483491
CC711D592B5BF5C6007235A6 /* SPLarkDismissingAnimationController.swift in Sources */,
@@ -572,6 +580,7 @@
572580
SUPPORTS_MACCATALYST = NO;
573581
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
574582
SWIFT_EMIT_LOC_STRINGS = YES;
583+
SWIFT_OBJC_BRIDGING_HEADER = "supports/hudapp-bridging-header.h";
575584
SWIFT_VERSION = 5.0;
576585
TARGETED_DEVICE_FAMILY = "1,2";
577586
};
@@ -613,6 +622,7 @@
613622
SUPPORTS_MACCATALYST = NO;
614623
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
615624
SWIFT_EMIT_LOC_STRINGS = YES;
625+
SWIFT_OBJC_BRIDGING_HEADER = "supports/hudapp-bridging-header.h";
616626
SWIFT_VERSION = 5.0;
617627
TARGETED_DEVICE_FAMILY = "1,2";
618628
};
@@ -781,6 +791,7 @@
781791
SUPPORTS_MACCATALYST = NO;
782792
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
783793
SWIFT_EMIT_LOC_STRINGS = YES;
794+
SWIFT_OBJC_BRIDGING_HEADER = "supports/hudapp-bridging-header.h";
784795
SWIFT_VERSION = 5.0;
785796
TARGETED_DEVICE_FAMILY = "1,2";
786797
};
@@ -823,6 +834,7 @@
823834
SUPPORTS_MACCATALYST = NO;
824835
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
825836
SWIFT_EMIT_LOC_STRINGS = YES;
837+
SWIFT_OBJC_BRIDGING_HEADER = "supports/hudapp-bridging-header.h";
826838
SWIFT_VERSION = 5.0;
827839
TARGETED_DEVICE_FAMILY = "1,2";
828840
};

sources/HUDRootViewController.mm

Lines changed: 42 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -389,48 +389,44 @@ - (void)reloadUserDefaults
389389

390390
HUDPresetPosition selectedMode = [self selectedMode];
391391
BOOL isCentered = (selectedMode == HUDPresetPositionTopCenter || selectedMode == HUDPresetPositionTopCenterMost);
392-
BOOL isCenteredMost = (selectedMode == HUDPresetPositionTopCenterMost);
392+
HUD_SHOW_DOWNLOAD_SPEED_FIRST = isCentered;
393+
HUD_SHOW_SECOND_SPEED_IN_NEW_LINE = !isCentered;
394+
[_speedLabel setTextAlignment:(isCentered ? NSTextAlignmentCenter : NSTextAlignmentLeft)];
395+
[_lockedView setImage:[UIImage systemImageNamed:(isCentered ? @"hand.raised.slash.fill" : @"lock.fill")]];
393396

394397
BOOL singleLineMode = [self singleLineMode];
395-
BOOL usesBitrate = [self usesBitrate];
396-
BOOL usesArrowPrefixes = [self usesArrowPrefixes];
397-
BOOL usesLargeFont = [self usesLargeFont] && !isCenteredMost;
398-
BOOL usesInvertedColor = [self usesInvertedColor];
399-
BOOL hideAtSnapshot = [self hideAtSnapshot];
400-
401-
[_blurView.layer setCornerRadius:(usesLargeFont ? 4.5 : 4.0)];
402-
[_blurView setEffect:(usesInvertedColor ? nil : _blurEffect)];
403-
[_speedLabel setTextAlignment:(isCentered ? NSTextAlignmentCenter : NSTextAlignmentLeft)];
404-
[_speedLabel setColorInvertEnabled:usesInvertedColor];
405-
if (isCentered) {
406-
[_lockedView setImage:[UIImage systemImageNamed:@"hand.raised.slash.fill"]];
407-
} else {
408-
[_lockedView setImage:[UIImage systemImageNamed:@"lock.fill"]];
409-
}
398+
HUD_SHOW_UPLOAD_SPEED = !singleLineMode;
410399

400+
BOOL usesBitrate = [self usesBitrate];
411401
HUD_DATA_UNIT = usesBitrate;
412-
HUD_SHOW_UPLOAD_SPEED = !singleLineMode;
413-
HUD_SHOW_DOWNLOAD_SPEED_FIRST = isCentered;
414-
HUD_SHOW_SECOND_SPEED_IN_NEW_LINE = !isCentered;
415-
HUD_FONT_SIZE = (usesLargeFont ? 9.0 : 8.0);
416-
HUD_FONT_WEIGHT = (usesInvertedColor ? UIFontWeightSemibold : UIFontWeightRegular);
417-
HUD_INACTIVE_OPACITY = (usesInvertedColor ? 1.0 : 0.667);
418402

403+
BOOL usesArrowPrefixes = [self usesArrowPrefixes];
419404
HUD_UPLOAD_PREFIX = (usesArrowPrefixes ? "" : "");
420405
HUD_DOWNLOAD_PREFIX = (usesArrowPrefixes ? "" : "");
421406

422-
prevInputBytes = 0;
423-
prevOutputBytes = 0;
407+
BOOL usesLargeFont = [self usesLargeFont];
408+
HUD_FONT_SIZE = (usesLargeFont ? 9.0 : 8.0);
409+
[_blurView.layer setCornerRadius:(usesLargeFont ? 4.5 : 4.0)];
424410

425-
attributedUploadPrefix = nil;
426-
attributedDownloadPrefix = nil;
411+
BOOL usesInvertedColor = [self usesInvertedColor];
412+
HUD_FONT_WEIGHT = (usesInvertedColor ? UIFontWeightSemibold : UIFontWeightRegular);
413+
HUD_INACTIVE_OPACITY = (usesInvertedColor ? 1.0 : 0.667);
414+
[_blurView setEffect:(usesInvertedColor ? nil : _blurEffect)];
415+
[_speedLabel setColorInvertEnabled:usesInvertedColor];
416+
[_lockedView setHidden:usesInvertedColor];
427417

418+
BOOL hideAtSnapshot = [self hideAtSnapshot];
428419
if (hideAtSnapshot) {
429420
[_containerView setupContainerAsHideContentInScreenshots];
430421
} else {
431422
[_containerView setupContainerAsDisplayContentInScreenshots];
432423
}
433424

425+
prevInputBytes = 0;
426+
prevOutputBytes = 0;
427+
attributedUploadPrefix = nil;
428+
attributedDownloadPrefix = nil;
429+
434430
[self removeAllAnimations];
435431
[self resetGestureRecognizers];
436432
[self updateViewConstraints];
@@ -446,97 +442,97 @@ - (void)reloadUserDefaults
446442

447443
+ (BOOL)passthroughMode
448444
{
449-
return [[[NSDictionary dictionaryWithContentsOfFile:(ROOT_PATH_NS_VAR(USER_DEFAULTS_PATH))] objectForKey:@"passthroughMode"] boolValue];
445+
return [[[NSDictionary dictionaryWithContentsOfFile:(ROOT_PATH_NS_VAR(USER_DEFAULTS_PATH))] objectForKey:HUDUserDefaultsKeyPassthroughMode] boolValue];
450446
}
451447

452448
- (HUDPresetPosition)selectedMode
453449
{
454450
[self loadUserDefaults:NO];
455-
NSNumber *mode = [_userDefaults objectForKey:@"selectedMode"];
451+
NSNumber *mode = [_userDefaults objectForKey:HUDUserDefaultsKeySelectedMode];
456452
return mode != nil ? (HUDPresetPosition)[mode integerValue] : HUDPresetPositionTopCenter;
457453
}
458454

459455
- (BOOL)singleLineMode
460456
{
461457
[self loadUserDefaults:NO];
462-
NSNumber *mode = [_userDefaults objectForKey:@"singleLineMode"];
458+
NSNumber *mode = [_userDefaults objectForKey:HUDUserDefaultsKeySingleLineMode];
463459
return mode != nil ? [mode boolValue] : NO;
464460
}
465461

466462
- (BOOL)usesBitrate
467463
{
468464
[self loadUserDefaults:NO];
469-
NSNumber *mode = [_userDefaults objectForKey:@"usesBitrate"];
465+
NSNumber *mode = [_userDefaults objectForKey:HUDUserDefaultsKeyUsesBitrate];
470466
return mode != nil ? [mode boolValue] : NO;
471467
}
472468

473469
- (BOOL)usesArrowPrefixes
474470
{
475471
[self loadUserDefaults:NO];
476-
NSNumber *mode = [_userDefaults objectForKey:@"usesArrowPrefixes"];
472+
NSNumber *mode = [_userDefaults objectForKey:HUDUserDefaultsKeyUsesArrowPrefixes];
477473
return mode != nil ? [mode boolValue] : NO;
478474
}
479475

480476
- (BOOL)usesLargeFont
481477
{
482478
[self loadUserDefaults:NO];
483-
NSNumber *mode = [_userDefaults objectForKey:@"usesLargeFont"];
479+
NSNumber *mode = [_userDefaults objectForKey:HUDUserDefaultsKeyUsesLargeFont];
484480
return mode != nil ? [mode boolValue] : NO;
485481
}
486482

487483
- (BOOL)usesRotation
488484
{
489485
[self loadUserDefaults:NO];
490-
NSNumber *mode = [_userDefaults objectForKey:@"usesRotation"];
486+
NSNumber *mode = [_userDefaults objectForKey:HUDUserDefaultsKeyUsesRotation];
491487
return mode != nil ? [mode boolValue] : NO;
492488
}
493489

494490
- (BOOL)usesInvertedColor
495491
{
496492
[self loadUserDefaults:NO];
497-
NSNumber *mode = [_userDefaults objectForKey:@"usesInvertedColor"];
493+
NSNumber *mode = [_userDefaults objectForKey:HUDUserDefaultsKeyUsesInvertedColor];
498494
return mode != nil ? [mode boolValue] : NO;
499495
}
500496

501497
- (BOOL)keepInPlace
502498
{
503499
[self loadUserDefaults:NO];
504-
NSNumber *mode = [_userDefaults objectForKey:@"keepInPlace"];
500+
NSNumber *mode = [_userDefaults objectForKey:HUDUserDefaultsKeyKeepInPlace];
505501
return mode != nil ? [mode boolValue] : NO;
506502
}
507503

508504
- (BOOL)hideAtSnapshot
509505
{
510506
[self loadUserDefaults:NO];
511-
NSNumber *mode = [_userDefaults objectForKey:@"hideAtSnapshot"];
507+
NSNumber *mode = [_userDefaults objectForKey:HUDUserDefaultsKeyHideAtSnapshot];
512508
return mode != nil ? [mode boolValue] : NO;
513509
}
514510

515511
- (CGFloat)currentPositionY
516512
{
517513
[self loadUserDefaults:NO];
518-
NSNumber *positionY = [_userDefaults objectForKey:@"currentPositionY"];
514+
NSNumber *positionY = [_userDefaults objectForKey:HUDUserDefaultsKeyCurrentPositionY];
519515
return positionY != nil ? [positionY doubleValue] : CGFLOAT_MAX;
520516
}
521517

522518
- (void)setCurrentPositionY:(CGFloat)positionY
523519
{
524520
[self loadUserDefaults:NO];
525-
[_userDefaults setObject:[NSNumber numberWithDouble:positionY] forKey:@"currentPositionY"];
521+
[_userDefaults setObject:[NSNumber numberWithDouble:positionY] forKey:HUDUserDefaultsKeyCurrentPositionY];
526522
[self saveUserDefaults];
527523
}
528524

529525
- (CGFloat)currentLandscapePositionY
530526
{
531527
[self loadUserDefaults:NO];
532-
NSNumber *positionY = [_userDefaults objectForKey:@"currentLandscapePositionY"];
528+
NSNumber *positionY = [_userDefaults objectForKey:HUDUserDefaultsKeyCurrentLandscapePositionY];
533529
return positionY != nil ? [positionY doubleValue] : CGFLOAT_MAX;
534530
}
535531

536532
- (void)setCurrentLandscapePositionY:(CGFloat)positionY
537533
{
538534
[self loadUserDefaults:NO];
539-
[_userDefaults setObject:[NSNumber numberWithDouble:positionY] forKey:@"currentLandscapePositionY"];
535+
[_userDefaults setObject:[NSNumber numberWithDouble:positionY] forKey:HUDUserDefaultsKeyCurrentLandscapePositionY];
540536
[self saveUserDefaults];
541537
}
542538

@@ -659,11 +655,6 @@ - (void)updateViewConstraints
659655
[NSLayoutConstraint deactivateConstraints:_constraints];
660656
[_constraints removeAllObjects];
661657

662-
HUDPresetPosition selectedMode = [self selectedMode];
663-
BOOL isCentered = (selectedMode == HUDPresetPositionTopCenter || selectedMode == HUDPresetPositionTopCenterMost);
664-
BOOL isCenteredMost = (selectedMode == HUDPresetPositionTopCenterMost);
665-
BOOL isPad = ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad);
666-
667658
#if !NO_TROLL
668659
UIInterfaceOrientation orientation = _remoteOrientation;
669660
#else
@@ -677,6 +668,12 @@ - (void)updateViewConstraints
677668
} else {
678669
isLandscape = UIInterfaceOrientationIsLandscape(orientation);
679670
}
671+
672+
HUDPresetPosition selectedMode = [self selectedMode];
673+
BOOL isCentered = (selectedMode == HUDPresetPositionTopCenter || selectedMode == HUDPresetPositionTopCenterMost);
674+
BOOL isCenteredMost = (selectedMode == HUDPresetPositionTopCenterMost);
675+
BOOL isPad = ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad);
676+
680677
_blurView.layer.maskedCorners = (isCenteredMost && !isLandscape) ? kCornerMaskBottom : kCornerMaskAll;
681678

682679
UILayoutGuide *layoutGuide = self.view.safeAreaLayoutGuide;

0 commit comments

Comments
 (0)