قائمة النافذة المنبثقة لاستشهاد النص غير مستجيبة على أندرويد

حاليًا، لا يمكنني تحديد النص واستشهاده على نظام أندرويد. هذه المشكلة مستمرة منذ فترة. ما الذي أغفلته؟ (أندرويد 16 و17، متصفح كروم)

4 إعجابات

يحدث هذا معي من حين لآخر. لا يمكنني تحديد النص. أعتقد أنه يعمل في الوقت الحالي

إعجاب واحد (1)

أفترض أن ما يلي لا يساعد؟

  1. إعادة التحميل
  2. حاول التفاعل مع منشور حتى تظهر نافذة التفاعلات، ثم حاول تحديد النص
4 إعجابات

واو. هذا أصلح المشكلة! ما هذا … هذا أغرب حل بديل صادفته على الإطلاق! شكراً لك!

3 إعجابات

نعم، لقد حدث لي من قبل، وهذا نجح دائماً في إصلاحه.

أتساءل عما إذا كان هذا يتعلق بـ localStorage قديم؟ أمر مثير للاهتمام حقاً.

هم. كنت أعتقد دائمًا أنها تتعلق بالـ

حدث مرة أخرى للتو.

وعملت طريقة التجاوز مرة أخرى.

سأصنف هذه الحالة على أنها Contribute > Bug

إعجاب واحد (1)

تشخيص الذكاء الاصطناعي (GPT 5.6 Sol Ultra) في Codex (إذا كان ذلك مفيداً):

تم العثور عليه: تسرب Discourse Reactions حالة “عدم تحديد النص” العالمية.

  • تضيف عملية touchstart للتفاعل فئة discourse-reactions-no-select إلى عنصر <html> في plugins/discourse-reactions/assets/javascripts/discourse/components/discourse-reactions-actions.gjs:222.
  • تطبق هذه الفئة user-select: none وتُعطّل مظهر النقر الطويل الخاص بـ WebKit对整个 المستند في plugins/discourse-reactions/assets/stylesheets/common/discourse-reactions.scss:1.
  • إذا بدأ التمرير العمودي فوق زر التفاعل، فإن plugins/discourse-reactions/assets/javascripts/discourse/components/discourse-reactions-actions.gjs:249 يبطل الإيماءة دون إزالة الفئة.
  • ثم يعود plugins/discourse-reactions/assets/javascripts/discourse/components/discourse-reactions-actions.gjs:257 مبكراً، تاركاً الفئة خلفه بشكل دائم.
  • كما لا يوجد تنظيف لحدث touchcancel أو عند تدمير المكون.

الإزالة الوحيدة موجودة في plugins/discourse-reactions/assets/javascripts/discourse/components/discourse-reactions-actions.gjs:690. وهذا يفسر الحل البديل المبلغ عنه (The popup menu for quoting text is unresponsive on Android): فتح وإغلاق نافذة التفاعلات المنبثقة يستدعي collapseAllPanels()، مما يعيد إمكانية التحديد.

شريط أدوات الاقتباس نفسه يتأثر بالتبعيات—he يستمع إلى حدث selectionchange ويتطلب تحديداً حقيقياً للمتصفح في frontend/discourse/app/components/post-text-selection.gjs:58. ومع وجود user-select: none عالمياً، لا يقوم Android أبداً بإنشاء هذا التحديد.

تؤكد السجلات التاريخية على هذه العائلة من الأخطاء: إصلاح التمرير لعام 2023 (FIX: prevents triggering a reaction while scrolling (#224) · discourse/discourse-reactions@d1970cf · GitHub) قدم الإرجاع المبكر للإيماءة الباطلة، وإصلاح جزئي لعام 2024 (FIX: couldn't select text after dismissing a reaction (#296) · discourse/discourse-reactions@c6710ef · GitHub) نقل التنظيف إلى إغلاق اللوحة لكنه ترك مسارات التمرير والإلغاء دون تغطية.

يجب أن يقوم الإصلاح بإزالة الفئة في كل دورة حياة للمس اللمسي المكتمل أو المرفوض أو الملغي أو المدمر، مع إجراء اختبارات انحدار لـ touchstart → touchmove → touchend وtouchcancel.

3 إعجابات

هذا الخلل كان يزعجني منذ فترة، سعيد أنك وجدت حلاً له :+1:

3 إعجابات

@davidb للاهتمام

إعجاب واحد (1)

مرحباً @merefield، أحاول التحقق مما إذا كان هذا مرتبطاً بإصلاح آخر قمت بنشره قبل بضعة أسابيع. كان من المفترض أن يقتصر على نظام iOS، لذا أود أن أعرف، كم من الوقت يعني «بعض الوقت»؟ هل هو بضعة أسابيع أم أكثر؟

إعجاب واحد (1)

يا إلهي، أعتذر، لا أستطيع تذكر الأمر بدقة، لكن حدسي يقول إنه كان على الأقل بضع أسابيع، رغم أنني لست متأكداً تماماً.

أنا متأكد إلى حد كبير من أن هذه كانت مشكلة في نظام أندرويد 16، أي قبل إطلاق هواتف بكسل.

على أي حال، قد لا تكون هذه المشكلة مقتصرة على نظام أندرويد…

إعجاب واحد (1)

لا تقلق، سأقوم بإجراء بعض الاختبارات محليًا دون التغييرات لأرى ما إذا كان إصلاح iOS الخاص بي هو السبب في هذا. إذا كان كذلك، فقد تساعد التصحيح الذي نشرته اليوم، لكنني سأتحقق أولاً.

إعجابَين (2)

شكراً لك على الاطلاع!

إعجاب واحد (1)

أواجه هذه المشكلة على متصفح كروم في نظام أندرويد منذ عدة أشهر على موقع واحد أعتقد. (على الرغم من أنني لم أكن أراقب ذلك بدقة، حتى قام موقع آخر أستخدمه بالتحديث قبل يومين)

إعجابَين (2)