Sidebar Highlight State Issue for Catalyst Apps with UIDesignRequiresCompatibility Flag

Sidebars for mac Catalyst apps running with UIDesignRequiresCompatibility flag render their active items with a white bg tint – resulting in labels and icons being not visible.

mac OS Tahoe 26.1 Beta 3 (25B5062e)

FB20765036

Example (Apple Developer App):

Thanks for flagging this, the engineering team will investigate the issue. Apart from the Developer App, are you able to reproduce the in a test project ?

The issue is still present in 26.1 (25B77).

Still present in 26.2 Beta (25C5031i).

Yup same issue here.

Spent way too much time on this...grr..my workaround:

-(void)updateConfigurationUsingState:(UICellConfigurationState *)state
{
	UIListContentConfiguration *contentConfig = (UIListContentConfiguration*)[self.contentConfiguration updatedConfigurationForState:state];
	if (![contentConfig isKindOfClass:[UIListContentConfiguration class]]) { contentConfig = [[UIListContentConfiguration valueCellConfiguration] updatedConfigurationForState:state]; }
	UIBackgroundConfiguration *backgroundConfig = [[UIBackgroundConfiguration clearConfiguration] updatedConfigurationForState:state];
	
	   UITraitCollection *traitCollection = state.traitCollection;
	
// Focus AND active
        if (traitCollection.activeAppearance == UIUserInterfaceActiveAppearanceActive
            && state.isFocused)
        {
            backgroundConfig.backgroundColor = self.tintColor;
            
            contentConfig.imageProperties.tintColor = UIColor.whiteColor;
            contentConfig.textProperties.color = UIColor.whiteColor;
            contentConfig.secondaryTextProperties.color = UIColor.whiteColor;
        }
else {

 if (state.isSelected || state.isHighlighted || state.isFocused)
            {
             // need an unemphasized selection color.
            backgroundConfig.backgroundColor = [UIColor colorNamed:@"SomeKindOfLightGrayHereMaybe"];
            }
            contentConfig.imageProperties.tintColor = UIColor.darkGrayColor;
            contentConfig.textProperties.color = UIColor.darkGrayColor;
            contentConfig.secondaryTextProperties.color = UIColor.darkGrayColor;
}

	self.backgroundConfiguration = backgroundConfig;
	self.contentConfiguration = contentConfig;
}

These content configuration APIs have always been kind of an overcomplicated disaster IMO. You could try to duplicate the 'source list' selection style like Finder sidebar but I just use the current tintColor. Seems to work in my limited testing. At least I can read the text.

Finally seems to be fixed in 26.2 Beta (25C5048a). 🙏

Sidebar Highlight State Issue for Catalyst Apps with UIDesignRequiresCompatibility Flag
 
 
Q