feat: responsive layout, date filtering, location search, calendar fix

- Make web responsive layout use width-based mobile detection (820px)
- Add date filter chips that actually filter events by date ranges
- Custom calendar dialog with event dots on Date chip tap
- Update location search with Kerala cities and pincode display
- Fix calendar screen overflow errors and broken event indicators
- Replace thumbnail indicators with clean colored dots

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-14 08:55:21 +05:30
parent d536d287cd
commit 4acf75902c
4 changed files with 942 additions and 579 deletions

View File

@@ -21,7 +21,7 @@ class ResponsiveLayout extends StatelessWidget {
Key? key,
required this.mobile,
required this.desktop,
this.mobileBreakpoint = 700, // tune this value if you prefer different breakpoint
this.mobileBreakpoint = 820, // consistent with MyApp.desktopBreakpoint
}) : assert(mobileBreakpoint > 0),
super(key: key);
@@ -35,12 +35,18 @@ class ResponsiveLayout extends StatelessWidget {
bool _chooseMobile(BuildContext context) {
final width = MediaQuery.of(context).size.width;
// On web, use width to determine mobile vs desktop so narrow browser
// windows (or mobile-sized preview) get the mobile UI.
if (kIsWeb) {
return width < mobileBreakpoint;
}
// If running on Android/iOS, allow width to determine mobile vs desktop.
if (_isMobilePlatform()) {
return width < mobileBreakpoint;
}
// On desktop platforms (Windows/macOS/Linux) and on web, always use desktop UI.
// On native desktop platforms (Windows/macOS/Linux) always use desktop UI.
return false;
}