Skip to content

Commit 7030c2a

Browse files
Update Tweak.xm
1 parent e44bf74 commit 7030c2a

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

Tweak.xm

+34
Original file line numberDiff line numberDiff line change
@@ -1481,6 +1481,40 @@ NSData *cellDividerData;
14811481
%end
14821482
%end
14831483

1484+
%hook YTIPivotBarRenderer
1485+
- (void)viewDidLoad {
1486+
%orig();
1487+
NSArray *tabOrder = [[NSUserDefaults standardUserDefaults] objectForKey:@"kTabOrder"];
1488+
if (tabOrder) {
1489+
[self reorderTabsWithTabOrder:tabOrder];
1490+
}
1491+
}
1492+
- (void)reorderTabsWithTabOrder:(NSArray<NSString *> *)tabOrder {
1493+
NSDictionary *tabPositions = @{
1494+
@"FEwhat_to_watch": @(0), // Home
1495+
@"FEshorts": @(1), // Shorts
1496+
@"FEuploads": @(2), // Create
1497+
@"FEsubscriptions": @(3), // Subscriptions
1498+
@"FElibrary": @(4) // You
1499+
};
1500+
NSArray *sortedTabOrder = [tabOrder sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
1501+
NSNumber *position1 = tabPositions[obj1];
1502+
NSNumber *position2 = tabPositions[obj2];
1503+
return [position1 compare:position2];
1504+
}];
1505+
NSMutableArray *reorderedTabs = [NSMutableArray array];
1506+
for (NSString *tabIdentifier in sortedTabOrder) {
1507+
for (YTIPivotBarItemRenderer *tabItem in self.itemsArray) {
1508+
if ([tabItem.pivotIdentifier isEqualToString:tabIdentifier]) {
1509+
[reorderedTabs addObject:tabItem];
1510+
break;
1511+
}
1512+
}
1513+
}
1514+
self.itemsArray = reorderedTabs;
1515+
}
1516+
%end
1517+
14841518
%group gDisableDoubleTapToSkip
14851519
%hook YTMainAppVideoPlayerOverlayViewController
14861520
- (BOOL)allowDoubleTapToSeekGestureRecognizer {

0 commit comments

Comments
 (0)