تحليل رائع ويظهر مدى اهتمامكم بأدق التفاصيل!
بالنسبة لإضافة السياق للصفحات، عندي اقتراح قد يوازن بين الأداء وتجربة المستخدم:
بدلاً من عرض الكلمات مع كل صفحة أثناء السحب (مما قد يبطئ الأداء)، يمكن عرض اسم السورة فقط مع رقم الصفحة بشكل ديناميكي. هذا خفيف جداً على قاعدة البيانات ويعطي سياقاً كافياً.
أما الكلمات الأولى، فتظهر فقط عند التوقف عن السحب لثانية واحدة. يعني المستخدم لو سحب بسرعة ووصل تقريباً للمنطقة المطلوبة، يتوقف لحظة فتظهر له أول كلمتين من الصفحة للتأكيد. بهذا تتجنب القراءة المستمرة من قاعدة البيانات وتبقى التجربة سلسة.
الفكرة: السياق الخفيف (السورة) متاح طوال الوقت، والسياق التفصيلي (الكلمات) يظهر عند الحاجة فقط.