Skip to content

chore(test): new test-tabs-tab-bar-experimental-userInterfaceStyle with scenario#3856

Closed
LKuchno wants to merge 24 commits intomainfrom
@lkuchno/test-tabs-dark-experimental-userInterfaceStyle
Closed

chore(test): new test-tabs-tab-bar-experimental-userInterfaceStyle with scenario#3856
LKuchno wants to merge 24 commits intomainfrom
@lkuchno/test-tabs-dark-experimental-userInterfaceStyle

Conversation

@LKuchno
Copy link
Copy Markdown
Collaborator

@LKuchno LKuchno commented Apr 8, 2026

Description

UPDATE: New branch and PR will be created for this test

New screen for experimental_userInterfaceStyle: dark prop (iOS only) with corresponding manual scenario.

Closes: https://github.com/software-mansion/react-native-screens-labs/issues/1116

Changes

  • Adding new screen and scenario in new directory to cover experimental_userInterfaceStyle prop set to dark
  • Screen added to tabs/index.ts to be displayed under SFT category.

@LKuchno LKuchno added area:tabs Issue related to bottom tabs type:chore A general maintenance task, that does not fall into other categories. type:docs Improvements or additions to documentation labels Apr 8, 2026
@LKuchno LKuchno changed the title chore(test): new test-tabs-dark-experimental-userInterfaceStyle with scenario chore(test): new test-tabs-tab-bar-dark-experimental-userInterfaceStyle with scenario Apr 8, 2026
@LKuchno LKuchno requested a review from kkafar April 9, 2026 07:41
Copy link
Copy Markdown
Member

@kkafar kkafar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Our single feature tests should not depend on react-navigation in any way.

Let's discuss why this is the case here first & plan migration path before we land it.

Comment on lines +9 to +25
import {
createNativeStackNavigator,
} from '@react-navigation/native-stack';

import {
useNavigation,
type NavigationProp,
ThemeProvider,
DarkTheme,
} from '@react-navigation/native';

type RootStackParamList = {
Screen1: undefined;
DarkScreen: undefined;
};

const Stack = createNativeStackNavigator<RootStackParamList>();
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we use Stack & utilities from react-navigation here?

We don't want direct dependency on react-navigation here.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I freeze this PR and test implementation until this change will be provided -> from comment: "migrated e.g. ThemedText component to some simple mechanism & remove react-navigation from the loop.".

…k-experimental-userInterfaceStyle/index.tsx

Co-authored-by: Kacper Kafara <kacper.kafara@swmansion.com>
@LKuchno LKuchno marked this pull request as draft April 9, 2026 09:21
@LKuchno LKuchno changed the title chore(test): new test-tabs-tab-bar-dark-experimental-userInterfaceStyle with scenario chore(test): new test-tabs-tab-bar-experimental-userInterfaceStyle with scenario Apr 9, 2026
LKuchno and others added 14 commits April 9, 2026 11:46
…' of github.com:software-mansion/react-native-screens into @lkuchno/test-tabs-dark-experimental-userInterfaceStyle
Replace direct useTheme (react-navigation) usage in themed components with useThemeColorPallette hook that supports local overrides via new ThemeProvider. Add text color to ColorPallette type and light/dark palettes. Remove old adapter/react-navigation/useColorPallette in favor of new theme-provider module.

Move ScreensLightTheme and ScreensDarkTheme to Colors.ts as whole adapter/react-navigation directory is deleted.
…/react-native-screens into @lkuchno/test-tabs-dark-experimental-userInterfaceStyle
Replace direct useTheme (react-navigation) usage in themed components with useThemeColorPallette hook that supports local overrides via new ThemeProvider. Add text color to ColorPallette type and light/dark palettes. Remove old adapter/react-navigation/useColorPallette in favor of new theme-provider module.
it returns theme based on useTheme
if useTheme throws an error, it is caught, a proper message is logged and DefaultTheme is returned
…, fix misspelling (pallette -> palette)

also added LightTheme and DarkTheme and Theme type to Colors.ts, also moved ThemeName into this file
useReactNavigation theme now returns undefined when useTheme throws an error
if both useTheme and ThemeProvider don't provide us a theme, then  useThemeColorPalette returns LightTheme as a default
sgaczol and others added 3 commits April 10, 2026 16:43
useReactNavigationTheme works similar to useTheme though, but instead of throwing error when theme is null, it returns undefined
…/react-native-screens into @lkuchno/test-tabs-dark-experimental-userInterfaceStyle
…-mansion/react-native-screens into @lkuchno/test-tabs-dark-experimental-userInterfaceStyle"

This reverts commit cfff0ad, reversing
changes made to da31816.
@LKuchno
Copy link
Copy Markdown
Collaborator Author

LKuchno commented Apr 14, 2026

New PR will be created for this test - with 'merged' test for light and dark value and without using react-navigation stack

@LKuchno LKuchno closed this Apr 14, 2026
@LKuchno LKuchno deleted the @lkuchno/test-tabs-dark-experimental-userInterfaceStyle branch April 14, 2026 09:44
@LKuchno LKuchno restored the @lkuchno/test-tabs-dark-experimental-userInterfaceStyle branch April 14, 2026 09:44
@LKuchno LKuchno deleted the @lkuchno/test-tabs-dark-experimental-userInterfaceStyle branch April 14, 2026 09:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:tabs Issue related to bottom tabs type:chore A general maintenance task, that does not fall into other categories. type:docs Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants