diff --git a/.gitignore b/.gitignore index 05192106d7..f5096afb3f 100644 --- a/.gitignore +++ b/.gitignore @@ -63,3 +63,8 @@ vite.config.*.timestamp* vitest.config.*.timestamp* .cursor/rules/nx-rules.mdc .github/instructions/nx.instructions.md +/packages/ui-mobile-base/windows/widgets-cpp/NativeSc.B6D1F2A0 +/packages/ui-mobile-base/windows/widgets-cpp/obj +/packages/ui-mobile-base/windows/widgets-cpp/x64/Debug +/packages/ui-mobile-base/windows/widgets-cpp/x64/Release +/packages/ui-mobile-base/windows/widgets-cpp/ARM64 diff --git a/apps/toolbox/fonts/Twemoji.Mozilla.ttf b/apps/toolbox/fonts/Twemoji.Mozilla.ttf new file mode 100644 index 0000000000..9f45178e9d Binary files /dev/null and b/apps/toolbox/fonts/Twemoji.Mozilla.ttf differ diff --git a/apps/toolbox/package.json b/apps/toolbox/package.json index 331ac9ac73..1d8b85dcd3 100644 --- a/apps/toolbox/package.json +++ b/apps/toolbox/package.json @@ -17,6 +17,7 @@ "@nativescript/visionos": "~9.0.0", "@nativescript/vite": "file:../../dist/packages/vite", "@nativescript/webpack": "file:../../dist/packages/webpack5", + "@nativescript/windows": "0.1.0-alpha.133", "typescript": "~5.8.0" } } diff --git a/apps/toolbox/src/_app-platform.windows.css b/apps/toolbox/src/_app-platform.windows.css new file mode 100644 index 0000000000..b713dcbfd2 --- /dev/null +++ b/apps/toolbox/src/_app-platform.windows.css @@ -0,0 +1,59 @@ +/* Import theme rules for Windows and include additional core rules so Windows gets the same + look as other platforms without modifying the NativeScript runtime. */ +@import '../../../node_modules/nativescript-theme-core/css/core.light.windows.css'; + +/* Only include the Windows-specific theme file here. Importing iOS/Android theme + files in the Windows platform CSS can introduce conflicting rules and + unexpected colors; platform-specific CSS should be kept separate. */ + +/* Fallbacks / platform-specific tweaks for Windows host environments */ + +/* Ensure pages default to white background like the theme */ +.page, Page { + background-color: #fff; +} + +/* Visibility helper used across the theme */ +.invisible { + visibility: collapse; +} + +/* h-full is referenced in markup but was never defined; map it to full height so a + ScrollView inside an auto-sized StackLayout gets a bounded viewport and can scroll. */ +.h-full { + height: 100%; +} + +/* Simple shadow/gradient fallbacks — some Windows hosts may not fully support composition */ +.shadow { + box-shadow: 0 2 6 rgba(0,0,0,0.2); + border-radius: 4; +} +.gradient { + background: linear-gradient(to bottom, #f12711, #f5af19); +} + +/* Make list items readable on Windows hosts */ +.list-group .list-group-item { + padding: 16; + color: #212121; +} + +/* TabView / SegmentedBar defaults */ +.tab-view { + selected-color: #30bcff; + tabs-background-color: #fff; +} +.tab-view .tab-view-item { + background-color: #fff; +} + +/* Ensure ScrollView / ListView backgrounds don't hide content */ +ScrollView, ListView, Repeater { + background-color: transparent; +} + +/* Make sure controls have a sensible default enabled/disabled appearance */ +Button[isEnabled=false], TextField[isEnabled=false], TextView[isEnabled=false] { + opacity: 0.6; +} diff --git a/apps/toolbox/src/pages/a11y.ts b/apps/toolbox/src/pages/a11y.ts index 6c82fb442f..f265c833b0 100644 --- a/apps/toolbox/src/pages/a11y.ts +++ b/apps/toolbox/src/pages/a11y.ts @@ -17,7 +17,7 @@ export class AccessibilityModel extends Observable { accessibilityLiveRegions = AccessibilityLiveRegion; accessibilityRole = AccessibilityRole; accessibilityState = AccessibilityState; - largeImageSrc = 'https://i.picsum.photos/id/669/5000/5000.jpg?hmac=VlpchW0ODhflKm0SKOYQrc8qysLWbqKmDS1MGT9apAc'; + largeImageSrc = 'https://picsum.photos/seed/VlpchW0ODhflKm0SKOYQrc8qysLWbqKmDS1MGT9apAc/5000/5000'; constructor() { super(); @@ -30,8 +30,8 @@ export class AccessibilityModel extends Observable { // prettier-ignore this.notifyPropertyChange('largeImageSrc', checked ? - 'https://i.picsum.photos/id/669/5000/5000.jpg?hmac=VlpchW0ODhflKm0SKOYQrc8qysLWbqKmDS1MGT9apAc' : - 'https://i.picsum.photos/id/684/5000/5000.jpg?hmac=loiXO_OQ-y86XY_hc7p3qJdY39fSd9CuDM0iA_--P4Q'); + 'https://picsum.photos/seed/VlpchW0ODhflKm0SKOYQrc8qysLWbqKmDS1MGT9apAc/5000/5000' : + 'https://picsum.photos/seed/loiXO_OQ-y86XY_hc7p3qJdY39fSd9CuDM0iA_--P4Q/5000/5000'); } openModal() { diff --git a/apps/toolbox/src/pages/box-shadow.ts b/apps/toolbox/src/pages/box-shadow.ts index f611b19f47..8beb59ffb6 100644 --- a/apps/toolbox/src/pages/box-shadow.ts +++ b/apps/toolbox/src/pages/box-shadow.ts @@ -178,4 +178,4 @@ export class BoxShadowModel extends Observable { }); } } -} +} \ No newline at end of file diff --git a/apps/toolbox/src/pages/box-shadow.xml b/apps/toolbox/src/pages/box-shadow.xml index 46bc3ea52a..5a8d3597d1 100644 --- a/apps/toolbox/src/pages/box-shadow.xml +++ b/apps/toolbox/src/pages/box-shadow.xml @@ -1,9 +1,8 @@ - + - diff --git a/apps/toolbox/src/pages/css-playground.ts b/apps/toolbox/src/pages/css-playground.ts index c2d99fdf4b..a336474873 100644 --- a/apps/toolbox/src/pages/css-playground.ts +++ b/apps/toolbox/src/pages/css-playground.ts @@ -36,7 +36,7 @@ export class CssPlaygroundModel extends Observable { applyCSS(args) { this.resetCSS(); - addTaggedAdditionalCSS(`#play { ${this.currentCSS}`, CSSTag); + addTaggedAdditionalCSS(`#play { ${this.currentCSS} }`, CSSTag); playLabel._onCssStateChange(); playLabel.requestLayout(); } diff --git a/apps/toolbox/src/pages/list-page-model-sticky.ts b/apps/toolbox/src/pages/list-page-model-sticky.ts index cf8b3cb9c1..8cf67a3156 100644 --- a/apps/toolbox/src/pages/list-page-model-sticky.ts +++ b/apps/toolbox/src/pages/list-page-model-sticky.ts @@ -1430,4 +1430,4 @@ export class ListPageModelSticky extends Observable { .filter((group) => group.items.length > 0) ); } -} +} \ No newline at end of file diff --git a/apps/toolbox/src/pages/list-page-sticky.xml b/apps/toolbox/src/pages/list-page-sticky.xml index d7b6f0abc2..187653535c 100644 --- a/apps/toolbox/src/pages/list-page-sticky.xml +++ b/apps/toolbox/src/pages/list-page-sticky.xml @@ -7,7 +7,7 @@