# ورقة فائزة بجائزة أفضل بحث في UIST 2026 تقترح سحبًا وإفلاتًا يُعلَن بالحالات لا بالكود

> **المغزى:** المغزى: أصعب ما في السحب والإفلات هو حساب مناطق الإفلات يدويًا، وحين تصبح هذه المناطق نتيجة لحالات معلنة، تصير واجهات كثيرة كان يُتخلّى عنها ممكنة البناء.

- المصدر: المغزى (https://almaghza.com/a/2026-11-06-dragology-declarative-dragging-uist/)
- التاريخ: 26 جمادى الأولى - 6 نوفمبر 2026 (2026-11-06)
- القسم: برمجيات
- الوسوم: SVG، تصميم الواجهات، JavaScript

فازت ورقة بحثية بجائزة Best Paper في مؤتمر UIST 2026، وهو من أبرز مؤتمرات أبحاث واجهات المستخدم. والورقة للباحثين Joshua Horowitz وAndrew Blinn وJeffrey Heer، وتنطلق من سؤال: هل يمكن جعل رسم ما قابلًا للسحب بمجرد وصف ما يمكن أن يصير إليه؟

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

تقترح الورقة طريقًا مختلفًا. فالمطور لا يكتب منطق السحب، بل يعلن الحالات التي يمكن أن يصل إليها النموذج إذا تحرك العنصر. ثم يرسم المحرك هذه الحالات كلها على سبيل الاستكشاف، ويحسب أين كان العنصر سيقع في كل منها، ويحوّل هذه المواضع إلى مناطق إفلات مع حركة انتقال. وبذلك تصبح مناطق الإفلات نتيجة للحالات المعلنة، لا شيئًا يُكتب يدويًا.

والتصميم قابل للتركيب، إذ تجتمع سلوكيات سحب بسيطة فوق بعضها، مع خصائص للطفو والتثبيت والانتقالات.

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

## المصادر

- [صفحة المشروع البحثي وفيها الورقة والأمثلة](https://declarative-dragging.github.io/)
- [مؤتمر UIST 2026](https://uist.acm.org/2026/)
