🔧 Fixed: - Multi-device JSON sync now works (thanks Thomas!) - Restore from Server skipped files (timestamp bug) - No duplicate downloads - First MD sync after export now fast ⚡ Performance: - JSON sync: 12-14s → 2-3s - Hybrid timestamp + E-Tag optimization - Matches Markdown sync speed ✨ New: - Sync status UI in MainActivity - Content-based MD import - Debug logging improvements - SyncStateManager for sync coordination 🔧 Technical: - Clear lastSyncTimestamp on restore - Clear E-Tag caches on restore - E-Tag refresh after upload - Fixed timestamp update after MD export
66 lines
2.3 KiB
XML
66 lines
2.3 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- Material 3 Bottom Sheet Dialog für Lösch-Bestätigung -->
|
|
<LinearLayout
|
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:padding="24dp">
|
|
|
|
<!-- Icon -->
|
|
<ImageView
|
|
android:layout_width="48dp"
|
|
android:layout_height="48dp"
|
|
android:layout_gravity="center_horizontal"
|
|
android:layout_marginBottom="16dp"
|
|
android:src="@android:drawable/ic_menu_delete"
|
|
app:tint="?attr/colorError"
|
|
android:contentDescription="@string/delete" />
|
|
|
|
<!-- Title -->
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/delete_note_title"
|
|
android:textAppearance="@style/TextAppearance.Material3.HeadlineSmall"
|
|
android:gravity="center"
|
|
android:layout_marginBottom="8dp" />
|
|
|
|
<!-- Message -->
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/delete_note_message"
|
|
android:textAppearance="@style/TextAppearance.Material3.BodyMedium"
|
|
android:gravity="center"
|
|
android:textColor="?attr/colorOnSurfaceVariant"
|
|
android:layout_marginBottom="24dp" />
|
|
|
|
<!-- Buttons -->
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="horizontal"
|
|
android:gravity="end">
|
|
|
|
<com.google.android.material.button.MaterialButton
|
|
android:id="@+id/btnCancel"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/cancel"
|
|
android:layout_marginEnd="8dp"
|
|
style="@style/Widget.Material3.Button.TextButton" />
|
|
|
|
<com.google.android.material.button.MaterialButton
|
|
android:id="@+id/btnDelete"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/delete"
|
|
app:backgroundTint="?attr/colorError"
|
|
style="@style/Widget.Material3.Button" />
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout>
|