AeThex-OS/client
MrPiglr 51ed8371b9 fix: separate platform detection from responsive design, fix boot screen crash on web
The boot screen was rendering as a black screen on web because
useNativeFeatures() called Capacitor's Network.getStatus() without
checking if the app was running on a native platform. This crashed the
entire AeThexOS component during mount.

Additionally, tablet testing code in use-platform-layout.ts was mixing
viewport width checks (responsive design) with native platform detection,
causing layout confusion between web and mobile builds.

Changes:
- Add isMobile() guards to all Capacitor plugin calls in useNativeFeatures
- Remove tablet viewport-width branch from usePlatformLayout (platform
  detection should not check window.innerWidth)
- Rename isMobileDevice() to isSmallViewport() in embed-utils to clarify
  it's a responsive check, not a platform check
- Rename local isMobile state to isNarrowViewport in os.tsx DesktopWidgets
  to prevent shadowing the platform.ts isMobile() import
- Remove dead PlatformAdaptiveExample.tsx (not imported anywhere)
- Fix watchLocation TypeScript error (watchId is Promise<string>)
- Add web fallbacks for clipboard and browser in useNativeFeatures

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 00:09:06 -07:00
..
public fix(android): force manual file load to bypass black screen issue 2026-02-11 21:49:31 -07:00
src fix: separate platform detection from responsive design, fix boot screen crash on web 2026-02-14 00:09:06 -07:00
index.html modified: android/app/src/main/java/com/aethex/os/MainActivity.java 2026-02-12 20:15:30 -07:00