2026-04-05-maplibra succsess for all and add navigation paage

This commit is contained in:
Hamza-Ayed
2026-04-05 02:50:22 +03:00
parent 8d5fefc9e3
commit 4d5800ff9b
11 changed files with 3512 additions and 1306 deletions

View File

@@ -1,5 +1,8 @@
import 'dart:math';
import 'package:Intaleq/views/widgets/elevated_btn.dart';
import 'package:Intaleq/views/widgets/error_snakbar.dart';
import 'package:Intaleq/views/widgets/mycircular.dart';
import 'package:flutter/material.dart';
import 'package:flutter_font_icons/flutter_font_icons.dart';
import 'package:get/get.dart';
@@ -8,10 +11,9 @@ import 'dart:ui'; // مهم لإضافة تأثير الضبابية
import '../../../constant/colors.dart';
import '../../../controller/functions/tts.dart';
import '../../../controller/home/ios_live_activity_service.dart';
import '../../../controller/home/map_passenger_controller.dart';
import '../../../controller/home/vip_waitting_page.dart';
import '../../../print.dart';
import '../navigation/navigation_view.dart';
// --- الدالة الرئيسية بالتصميم الجديد ---
GetBuilder<MapPassengerController> leftMainMenuIcons() {
@@ -44,7 +46,7 @@ GetBuilder<MapPassengerController> leftMainMenuIcons() {
_buildMapActionButton(
icon: Icons.satellite_alt_outlined,
tooltip: 'Toggle Map Type',
onPressed: () => controller.changeMapType(),
onPressed: () => Get.to(() => NavigationView()),
),
// _buildVerticalDivider(),
// _buildMapActionButton(
@@ -131,78 +133,17 @@ class TestPage extends StatelessWidget {
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
// زر البدء
ElevatedButton(
onPressed: () async {
print("🍎 محاولة تشغيل Live Activity (Start)...");
try {
await IosLiveActivityService.startRideActivity(
rideId: "123",
driverName: "تجربة مبدئية",
carDetails: "تويوتا • أسود",
etaText: "5 دقائق",
progress: 0.2,
);
Log.print(
"✅ تم تشغيل Live Activity بنجاح! أغلق الشاشة لترى النتيجة.");
} catch (e) {
Log.print("❌ خطأ في Start Live Activity: $e");
}
},
child: const Text('Start Activity'),
MyCircularProgressIndicator(),
MyElevatedButton(
title: 'title',
onPressed: () {},
),
const SizedBox(height: 16),
// زر التحديث العشوائي
ElevatedButton(
onPressed: () async {
Log.print("🔄 محاولة تحديث Live Activity (Update)...");
// توليد بيانات عشوائية للاختبار
final statuses = ['waiting', 'ongoing'];
final status = statuses[random.nextInt(statuses.length)];
final int minutes = random.nextInt(15) + 1; // 115
final String eta = "$minutes دقائق";
final double progress = (random.nextDouble() * 0.9) + 0.05;
// بين 0.05 و 0.95 تقريبًا
try {
await IosLiveActivityService.updateRideActivity(
status: status,
driverName:
status == 'waiting' ? 'السائق في الطريق' : 'السائق معك',
carDetails: "تويوتا • أسود",
etaText: eta,
progress: progress,
);
Log.print(
"✅ تم تحديث Live Activity: status=$status, eta=$eta, progress=$progress");
} catch (e) {
Log.print("❌ خطأ في Update Live Activity: $e");
}
},
child: const Text('Update (Random)'),
),
const SizedBox(height: 16),
// زر الإنهاء
ElevatedButton(
style: ElevatedButton.styleFrom(
backgroundColor: Colors.red,
),
onPressed: () async {
Log.print("🛑 محاولة إنهاء Live Activity (End)...");
try {
await IosLiveActivityService.endRideActivity();
Log.print("✅ تم إنهاء Live Activity.");
} catch (e) {
Log.print("❌ خطأ في End Live Activity: $e");
}
},
onPressed: () async {},
child: const Text('End Activity'),
),
],