ميزة "إنشاء" على Wear

  
يمكنك كتابة تطبيقات Jetpack Compose للأجهزة القابلة للارتداء من خلال توفير وظائف تتيح استخدام الأجهزة والأشكال والحركات المتعلّقة بالتنقّل الخاصة بالأجهزة القابلة للارتداء.
آخر تعديل الإصدار الثابت إصدار محتمل الإصدار التجريبي الإصدار التجريبي الأول
11 كانون الأول (ديسمبر) 2024 1.4.0 - - 1.5.0-alpha07

الإعلان عن التبعيات

لإضافة تبعية على Wear، عليك إضافة مستودع Google Maven إلى مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.

أضِف التبعيات للعناصر التي تحتاج إليها في ملف build.gradle ل تطبيقك أو وحدتك:

Groovy

dependencies {
    implementation "androidx.wear.compose:compose-foundation:1.4.0"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material:1.4.0"

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation "androidx.wear.compose:compose-navigation:1.4.0"

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.4.0")
    
    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

Kotlin

dependencies {
    implementation("androidx.wear.compose:compose-foundation:1.4.0")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material:1.4.0")

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.4.0")
    
    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.4.0")

    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

لمزيد من المعلومات عن العناصر الاعتمادية، اطّلِع على مقالة إضافة عناصر الاعتماد الخاصة بالإنشاء.

ملاحظات

تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا واجهت مشاكل جديدة أو كان لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مكتبة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية عن طريق النقر على زر النجمة.

إنشاء مشكلة جديدة

اطّلِع على مستندات أداة تتبُّع المشاكل لمزيد من المعلومات.

Wear Compose Material3 الإصدار 1.0

الإصدار 1.0.0-alpha30

11 كانون الأول (ديسمبر) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha30. يتضمّن الإصدار 1.0.0-alpha30 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • تمّت إعادة صياغة المُعدِّل scrollTransform لـ TransformingLazyColumn، ما أدّى إلى تغيير في واجهة برمجة التطبيقات. (I0c6dc)
  • عدّلنا IconToggleButtonShapes وTextToggleButtonShapes ليكون لديهما مَعلمتَا شكل مختلفتَين uncheckedPressed وcheckedPressed (I85dbd).
  • تظهر الآن خيارات غير صالحة للشهر أو اليوم في DatePicker، مع invalidPickerContentColor جديد، عند استخدام minDate أو maxDate. (If4541)
  • عدّلنا واجهة برمجة التطبيقات Stepper لتوفير خانتَي increaseIcon وdecreaseIcon، ويمكن إنشاء المحتوى الخاص بهما كالمعتاد من عنصر الرمز المخصّص للتركيب. (Id35da)
  • لقد عدّلنا dynamicColorScheme من خلال إزالة المَعلمة defaultColorScheme الاختيارية وعرض ColorScheme التي يمكن أن تحتوي على قيمة فارغة. وهذا يعني أنّه على المُرسِل معالجة الحالة الاحتياطية صراحةً في حال عدم توفير مخطط ألوان ديناميكي. (I6d62e)
  • لقد عدّلنا أحجام الرموز في ButtonDefaults لاستخدامها مع CompactButton. يجب استخدام ButtonDefaults.SmallIconSize = 24.dp مع CompactButton الذي يحتوي على رمز فقط، في حين يجب استخدام ButtonDefaults.ExtraSmallIconSize = 20.dp مع CompactButton الذي يحتوي على رمز ونص. ننصحك بلفّ CompactButton لمحتوى الصفحة (بدلاً من ملء الحد الأقصى للعرض) وتم تعديل العيّنات لإظهار ذلك. (I0582c)
  • أضفنا EdgeButtonDefaults مع أحجام الرموز المقترَحة للأنواع الأربعة المختلفة من EdgeButtonSizes. تم أيضًا تعديل تنسيق EdgeButton لكي يكون لديه مساحة متروكة أكبر قليلاً في الأسفل مقارنةً بالمساحة المتروكة في الأعلى، ما يُحسِّن مظهر كلّ من محتوى الرمز والنص. (Id772a)
  • أضفنا حركة إلى LinearProgressIndicator وعرضنا LinearProgressIndicatorContent الذي يقدّم المحتوى المرئي بدون رسوم متحركة. (Idee99)
  • أضفنا عنصرًا جديدًا قابلاً للتجميع من أجل عرض المحتوى المرئي لـ CircularProgressIndicator بدون رسوم متحركة.CircularProgressIndicatorContent (Ie33d4)
  • يوفّر TransformingLazyColumn الآن التركيب LocalTransformingLazyColumnItemScope المحلي الذي تستخدمه Card وButton وListHeader الآن للتحويل التلقائي عند وضعها داخل TransformingLazyColumn. يمكن للمتصلين إيقاف ميزة "التحويل التلقائي" باستخدام حزمة TransformExclusion الجديدة. (I1652f)
  • لقد عدّلنا نوع ButtonDefaults.shape إلى RoundedCornerShape (Iccdf2).

إصلاح الأخطاء

  • أصلحنا خطأً في ما يتعلّق بتطبيق قيمة شفافية الخلفية الحالية على TimeText (I1eb60).
  • لقد ضبطنا TextMotion على Animated تلقائيًا في الطباعة لدينا، لتجنّب اهتزاز النص بسبب التصاق أشكال الحروف بحدود البكسل أثناء عمليات التكبير/التصغير. (I626fa)
  • لقد عدّلنا مظهر ScrollIndicator من خلال زيادة العرض وحجم الفجوة لتحسين مستوى الظهور. (Ied7cb)
  • لقد أصلحنا خطأً في Modifier.scrollTransform عند إضافة/إزالة/نقل العناصر. (I6830f)
  • لقد أصلحنا مشكلة في الصور المتحركة للزر المستدير عند النقرات القصيرة (في السابق، لم يكن يتم دائمًا الالتزام بحدّ أدنى لمدة الصورة المتحركة). (I757a7)
  • لقد عدّلنا زاوية التنظيف لـ LevelIndicator إلى %20 (أي 72 درجة). (Idde5c)
  • لقد أصلحنا موضع ScrollIndicator عند استخدام ScalingLazyColumn مع AutoCenteringParams. (I387dd)
  • لقد عدّلنا الألوان وأسلوب الخط في ListHeader وListSubHeader. بالإضافة إلى ألوان عناصر التحكّم في التبديل على CheckboxButton وSwitchButton. (I39817)
  • لقد أصلحنا موضع ScrollIndicator في LazyColumn وScalingLazyColumn باستخدام ContentPadding. (I2bc51)
  • لقد أصلحنا خطأً في الصورة المتحرّكة لتقدّم OpenOnPhoneDialog باستخدام CircularProgressIndicatorContent الجديد. (I3e443)
  • عدّلنا HorizontalPagerScaffold وVerticalPagerScaffold لإيقاف الصور المتحركة عند تفعيل ميزة "تقليل الصور الحيّة" (Iaaf68).
  • لقد نفّذنا صورة متحركة منفصلة لمؤشرات التقدم الدائرية عندما يصل مستوى التقدّم إلى أكثر من %100. (I47135)
  • أصلحنا خطأً كان يؤدي إلى رسم EdgeButton بشكل غير صحيح في مكوّنات Pager (I91db9).

الإصدار 1.0.0-alpha29

13 تشرين الثاني (نوفمبر) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha29. يحتوي الإصدار 1.0.0-alpha29 على عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • لقد عدّلنا TimeText لتوفير محتوى تلقائي يعرض الوقت. (Id23b3)
  • لقد سهّلنا استخدام ScrollInfoProvider بدلاً من PagerState من خلال إزالة المَعلمة orientation التي لم تعُد مطلوبة. يقضي السلوك الجديد ببقاء TimeText في مكانه لكلٍّ من التنقل الأفقي والرأسي. (I71767)
  • يوفّر LocalHapticFeedback الآن طريقة تنفيذ HapticFeedback تلقائية عندما تشير واجهة برمجة التطبيقات Vibrator API إلى أنّ ميزة اللمس المفاجئ متاحة. تمّت إضافة العناصر التالية إلى HapticFeedbackType: Confirm وContextClick وGestureEnd وGestureThresholdActivate وReject وSegmentFrequentTick وSegmentTick وToggleOn وToggleOff وVirtualKey. في تطبيق "هاتف Wear OS"، تؤدي الآن المكونات القابلة للنقر مع الاستمرار، مثل Button وIconButton وTextButton وCard، إلى التأثير LONG_PRESS عند توفير معالِج للنقر مع الاستمرار. (I5083d)

إصلاح الأخطاء

  • لقد عدّلنا طلب التأكيد. (I04bff)
  • لقد عدّلنا الحد الأدنى لمتطلبات واجهة برمجة التطبيقات إلى 1.7.4 لمكتبات Compose. (I88b46)
  • تمت إضافة حركة جديدة لمربّع الحوار OpenOnPhone. (I1e10a)
  • لقد أصلحنا خطأ في LevelIndicator بحيث يتم عرضه الآن بشكل صحيح مع ضبط المستوى على القيمة صفر. (Ie95a4)
  • لقد عدّلنا الرسوم المتحركة HorizontalPageIndicator وVerticalPageIndicator. (I5c8f3)
  • أضفنا رسومًا متحركة للتقلص إلى نقطة إلى الرمز ArcProgressIndicator غير المحدد. (I9fd51)

الإصدار 1.0.0-alpha28

30 تشرين الأول (أكتوبر) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha28. يتضمّن الإصدار 1.0.0-alpha28 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أضفنا شكل قوس إلى مؤشر التقدّم الدائري غير المحدّد (I2efc1).
  • لقد جعلنا مكونات AlertDialogContent وDialog التي تشكّل واجهة برمجة التطبيقات AlertDialog متاحة للجميع، ما يتيح إضافة تخصيصات إذا لزم الأمر (مثل تخصيص الرسوم المتحركة AlertDialog مع الحفاظ على تنسيق المحتوى المقترَح). بالإضافة إلى ذلك، أضفنا المَعلمتَين Modifier وColor إلى العناصر EdgeButton وConfirmButton وDismissButton من AlertDialogDefaults. (I4eb71)
  • عدّلنا واجهة برمجة التطبيقات Placeholder على النحو التالي: تمت إعادة تسمية PlaceholderState.startPlaceholderAnimation إلى PlaceholderState.animatePlaceholder وPlaceholderState.isShowContent إلى PlaceholderState.isHidden وPlaceholderDefaults.shape إلى PlaceholderDefaults.Shape، كما تمت إعادة تسمية المَعلمة painter في painterWithPlaceholderOverlayBackgroundBrush إلى originalPainter، وتغيير مستوى رؤية PlaceholderState.placeholderProgression من "عام" إلى "داخلي" وإعادة تسميته إلى placeholderShimmerProgression، وإضافة ثوابت مدة العنصر النائب للصورة المتحركة إلى PlaceholderDefaults. (Ie5a59)
  • عدّلنا واجهة برمجة التطبيقات EdgeButton على النحو التالي: إعادة تسمية المَعلمة في ScreenScaffold من bottomButton إلى edgeButton، وجعلنا EdgeButtonSize فئة قيمة. (Ieef15)
  • لقد غيّرنا مستوى عرض copy() إلى "علني" في فئات Wear Material3 Colors (I0287f).

إصلاح الأخطاء

  • تمت إضافة الحدّ الأدنى لمدة الحركة لكل من IconToggleButton وTextToggleButton عند النقر (Ieb333)
  • تمّ إضافة الحدّ الأدنى لمدة الصور المتحركة للشكلَين IconButton وTextButton (Iebcee)
  • تم تصحيح حالة خيار التكرار DatePicker. (I3587c)
  • تمت إضافة ميزة رصد الحركة لمربّعات الحوار "تنبيه" و"تأكيد". (I173b1)

الإصدار 1.0.0-alpha27

16 أكتوبر 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha27. يتضمّن الإصدار 1.0.0-alpha27 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • لقد عدّلنا ScreenScaffold وScrollIndicator بعد إعادة تسمية Wear Compose Foundation LazyColumn إلى TransformingLazyColumn. (I0608b)
  • تمت إعادة تسمية المَعلمة preferredHeight في EdgeButton إلى buttonSize، ولا يمكن اختيار قيمتها إلا من بين 4 ثوابت في فئة القيم EdgeButtonSize التي تمّ طرحها مؤخرًا. (Icdd70)
  • غيّرنا اسم ListSubheader إلى ListSubHeader وأضفنا قيمًا تلقائية متاحة للجميع لكل من ListHeader وListSubHeader. (I96730)
  • أضفنا مكوّنات HorizontalPagerScaffold وVerticalPagerScaffold جديدة لنظام التشغيل Wear، وهي توفّر صورًا متحركة جديدة وتنسيقًا جديدًا بين نص الوقت ومكوّنات مؤشر الصفحة. (Iff7d0)
  • لقد أضفنا ميزة التنقّل بالتناوب إلى HorizontalPagerScaffold وVerticalPagerScaffold، ما يتيح للمستخدمين التنقّل في أجهزة اللاسلكي باستخدام أجهزة الإدخال بالتناوب. (I9770d)
  • أجرينا تغييرات على MotionScheme واجهة برمجة التطبيقات لتبسيط الاستخدام وتحسين التناسق. تمّت إزالة دوال remember المضمّنة ونقل مخطّطات الحركة المضمّنة إلى كائن مصاحب مخصّص لمخطّط الحركة. تمت إعادة تسمية standardMotionScheme وexpressiveMotionScheme ليصبحا عاديًا وتعبيريًا. (I5fd45)
  • لقد أضفنا ميزة الألوان الديناميكية استنادًا إلى ألوان النظام. (I073e9)
  • لقد عدّلنا عنصر "المخطّط الزمني" وفقًا لأحدث مواصفات تجربة المستخدم. (I622bb)

إصلاح الأخطاء

  • لقد عدّلنا أسلوب الخط والمسافات البادئة لمكوّنات "البطاقة". (I3ae48)
  • لقد غيّرنا سمة الحشو في AlertDialog بين زرَّي "تأكيد" و"إغلاق" وبقية المحتوى من 8dp إلى 12dp وفقًا لمواصفات تجربة المستخدم (Ie55f0).
  • لقد عدّلنا شفافية اللون لمكوّن "شريط التمرير". (Idb383)

الإصدار 1.0.0-alpha26

2 أكتوبر 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha26. يتضمّن الإصدار 1.0.0-alpha26 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • عدّلنا واجهة برمجة التطبيقات ومظهر HorizontalPageIndicator وأضفنا VerticalPageIndicator لاستخدامه مع VerticalPager (Ic9309).
  • تتيح AlertDialog الآن إمكانية حذف الزر السفلي التلقائي من الصيغة المخصّصة لترتيب الأزرار، وذلك في التنسيقات المخصّصة التي لا يكون فيها EdgeButton مطلوبًا. (I34fa9)
  • أضفنا مكوّن SwipeToReveal لنظام التشغيل Wear Material 3 (Ic38b2).
  • أضفنا إمكانية التمرير السريع في الاتجاهين في SwipeToReveal، وذلك للحالات النادرة التي لا تتيح فيها الشاشة الحالية التمرير السريع لإغلاق التطبيقات. لا يزال الإعداد التلقائي هو التمرير السريع للكشف عن المحتوى فقط عند التمرير السريع من اليمين إلى اليسار، وينصح بشدة باحترام السلوك التلقائي لتجنُّب التعارض مع التمرير السريع لإغلاق المحتوى. (Ifac04)
  • أعدنا تسمية المَعلمة buttonHeight في EdgeButton إلى preferredHeight. (I4fab3)
  • تم تحديث إصدار Kotlin إلى 1.9 (I1a14c).
  • تمت إعادة تسمية OpenOnPhoneDialogDefaults.Icon إلى OpenOnPhoneDialogDefaults.OpenOnPhoneIcon لتجنُّب تداخلها مع Icon(I0f391).
  • أضفنا ميزة ScrollIndicator في LazyColumn. (Ia546a)
  • عدّلنا القيم التلقائية لكلّ من TextToggleButton وIconToggleButton. (I7aaa9)
  • لقد بسّطنا واجهتَي برمجة التطبيقات Picker وPickerGroup. (Id0653)
  • أضفنا CardDefaults.Shape وCardDefaults.Height، وهما رمزان خاصان بالمطوّرين الذين يستخدمون المكتبة. (I1594a، b/347649765)
  • لقد أعادنا تسمية مَعلمة التقدّم لمؤشر التقدّم الدائري المقسّم إلى ثنائي إلى segmentValue. (Ib72d9)
  • لقد عدّلنا الألوان والتنسيق في شريط التمرير. (Ic3eec)

إصلاح الأخطاء

  • لقد عدّلنا الصورة المتحركة لرمز openOnPhone (I66f85).
  • نحن نستخدم الآن رموز Google Symbols في Slider وTimePicker وDatePicker. (I46c7c)
  • لقد عدّلنا الحشو في Confirmation وOpenOnPhoneDialog. (Iaa82e)

الإصدار 1.0.0-alpha25

18 أيلول (سبتمبر) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha25. يتضمّن الإصدار 1.0.0-alpha25 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أضفنا مؤشر تقدّم دائريًا غير محدّد. (I427a7)
  • أضفنا إمكانية عرض قيمة متغيرة للتقدّم (>100%) لكلّ من CircularProgressIndicator وSegmentedCircularProgressIndicator. عندما يتجاوز مستوى التقدّم 1.0، سيتم الإشارة إلى ذلك من خلال اللون overflowTrack الجديد. (Iaaa3d)
  • يتيح الآن الرمزان المستديران IconToggleButton وTextToggleButton استخدام شكل جديد للحركة، حيث تمثّل الأشكال المختلفة حالات وضع علامة في المربّع وعدم وضع علامة فيه والضغط عليه. سيظلّ الشكل المتحرك السابق متاحًا للحالة "تم الضغط للتو". (I29f03)
  • لقد أزلنا إمكانية استخدام EdgeButton مع Column، وذلك بسبب الحاجة إلى تحديد ارتفاع EdgeButton صراحةً في ScreenScaffold. (Ie353d)
  • لقد أضفنا إمكانية استخدام ميزة LazyColumn في تطبيق Wear Compose مع ScreenScaffold (وأضافنا تنفيذًا لميزة ScrollInfoProvider في LazyColumnState). (Ib8d29)
  • لقد دمجنا LocalTextMaxLines وLocalTextAlign وLocalTextOverflow في تركيبة LocalTextConfiguration واحدة على الجهاز لتوفير حلّ أكثر قابلية للتوسّع من الآن فصاعدًا. (I5edbc)
  • أضفنا arc-large كنوع خط إضافي مخصّص لسلاسل نص الرأس القصيرة في أعلى الشاشة أو أسفلها تمامًا، مثل النصوص المركّبة لتأكيد الإجراء. (I60e3e)
  • أضفنا قيمًا تلقائية إلى Button لحجم الرمز الكبير والكبير جدًا المُقترَحَين وملء المحتوى. (I84675)

إصلاح الأخطاء

  • لقد عدّلنا ألوان IconButton وTextButton. (I48324)
  • لقد غيّرنا عمليات تحميل Button الأساسية لتصبح محاذية عموديًا في الوسط من أجل الاتساق مع عمليات التحميل الأخرى. لاستعادة السلوك السابق، استخدِم Modifier.align من RowScope. (I66e57)

الإصدار 1.0.0-alpha24

4 أيلول (سبتمبر) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha24. يتضمّن الإصدار 1.0.0-alpha24 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أضفنا مخطّطًا للحركة إلى مظهر Material3. ستستخدم المكوّنات هذه الميزة في جميع أنحاء المكتبة لتطبيق مواصفات الحركة، مثل العناصر المرنة للحركة التعبيرية. (I54ff3)
  • أضفنا مكوّنات AppScaffold وScreenScaffold إلى مكتبة Material3، والتي تتضمّن وظائف لتنسيق الطبقات والانتقالات في TimeText وScrollIndicator. AppScaffold يقدّم مستوى أعلى من مكوّنات إطار العمل التي تظهر أعلى جميع الشاشات. وبالتالي، فإنّ إضافة TimeText إلى AppScaffold تسمح له بالبقاء في مكانه أثناء التمرير السريع بين الشاشات. يمكن للشاشات نفسها إلغاء نص الوقت أو إخفائه. يوفّر ScreenScaffold خانة ScrollIndicator ويُنشئ تلقائيًا مؤثرًا متحركًا لمؤشر الانتقال عند الانتقال، بما في ذلك مهلة لإخفاء مؤشر الانتقال بعد فترة من عدم النشاط. (I047d6)
  • أضفنا ScrollIndicator الذي يعرض تصميم Material3 الجديد. ويتم ضبط حجم مصغّر ثابت استنادًا إلى محتوى القائمة الأولي، وذلك لتجنُّب اختلافات الحجم عند تحميل المحتوى غير القابل للتقديم أو الإيقاف إلى القائمة. (Ic228d)
  • لقد غيّرنا واجهة برمجة التطبيقات ScrollAway بحيث تكون ScreenStage فئة قيمة بدلاً من فئة مصنّف، للسماح بإضافة مراحل إضافية حسب الحاجة من الآن فصاعدًا. (I48c93)
  • أضفنا EdgeButton، وهو زر مميز مخصّص لنظام التشغيل Wear بتصميم يتلاءم مع منحنى أسفل الشاشة (I16369).
  • أضفنا خانة جديدة إلى ScreenScaffold لزر في أسفل الشاشة (مثل EdgeButton)، وسيتم عرض هذا الزر وتغيير حجمه استنادًا إلى المحتوى الذي يتم التمرير إليه (I032eb).
  • أضفنا Modifier.scrollTransform وModifier.targetMorphingHeight لإضافة تأثيرات الحركة في Material3 إلى العناصر في LazyColumn. (Ie229a)
  • أضفنا SegmentedCircularProgressIndicator كأحد الصيغ لـ CircularProgressIndicator. يعرض السعر المتغير المقسّم قيمة واحدة للتقدّم في جميع الشرائح أو يعرض كل شريحة على أنّها مفعّلة/متوقفة. (I6e059)
  • أضفنا LinearProgressIndicator كبديل عن CircularProgressIndicator الحالي. (I89182)
  • أضفنا AlertDialog، وهي تنسيقات لعرض طلبات مهمة للمستخدم. يتم تضمين صيغ لكل من زرَّي تأكيد/إغلاق أو زر واحد في أسفل الشاشة (عادةً ما يكون زر EdgeButton) أسفل مجموعة من الخيارات. تحتوي كلتا الصيغتَين على خانات للرمز والعنوان والنص الإضافي لتقديم مزيد من التفاصيل. (Ieb873)
  • أضفنا OpenOnPhoneDialog، والذي يجب استخدامه للإشارة إلى إجراء سيستمر على هاتف المستخدم. يتم رفض OpenOnPhoneDialog بعد انتهاء مهلة محدّدة. (I978fd)
  • أضفنا Confirmation، وهو مكوّن مربّع حوار يتضمّن خانات لرمز ونص منحني أو خطي. يتم توفير صيغ معيّنة لرسائل النجاح أو الإخفاق. يتم إغلاق رسائل التأكيد تلقائيًا بعد انتهاء مهلة. (Ib43e8)
  • أضفنا خلفية إلى TimeText للحدّ من المشاكل التي كان فيها المحتوى الأساسي وTimeText يتداخلان ويحجبان الوقت. (Ia11fd)
  • أضفنا LevelIndicator الذي يعرض قيمة إعداد مثل مستوى الصوت، ويمكن استخدامه مع المكوّن الحالي Stepper لإنشاء شاشة مستوى الصوت. يشبه الرمز LevelIndicator الرمز ScrollIndicator، ولكن يتم عرضه على الجانب المقابل من الشاشة، كما أنّه يتميز بعرض خطوط أوسع ولون مؤشر مختلف تلقائيًا. (I8a4ac)
  • أضفنا TimePicker، مع تنسيقات للوقت على مدار 24 ساعة (مع الثواني أو بدونها)، أو وقت على مدار 12 ساعة مع اختيار am/pm. (Ia5124)
  • أضفنا DatePicker، مع إعدادات لترتيب الأعمدة (أي اليوم-الشهر-السنة أو الشهر-اليوم-السنة أو السنة-الشهر-اليوم) والتاريخَين الأدنى/الأعلى الاختياريَين. (Ibf13b)
  • أضفنا مَعلمة weight إلى الدالة text في TimeText. في الحالات التي يتألف فيها TimeText من أكثر من عنصر نصي واحد، يتيح ذلك التحكّم في كيفية توزيع المساحة. (I36700)
  • لقد أضفنا RadioButton وSplitRadioButton، وهما مكوّنان يبسطان واجهة برمجة التطبيقات السابقة من خلال دمج كل من (Split)SelectableButton وعنصر التحكّم في الراديو الفرعي (If7ae8).
  • أضفنا CheckboxButton وSplitCheckboxButton، وهما مكوّنان يبسطان واجهة برمجة التطبيقات السابقة من خلال دمج كل من العنصرَين (Split)ToggleButton وعنصر التحكّم في مربّع الاختيار الفرعي (Ia8f70).
  • أضفنا SwitchButton وSplitSwitchButton - تعمل هذه المكوّنات على تبسيط واجهة برمجة التطبيقات السابقة من خلال دمج كل من (Split)ToggleButton وعنصر التحكّم الفرعي "مفتاح تبديل" (I0d349).
  • لقد عدّلنا مستندات AnimatedText لشرح سلوك تجاوز الميزانية. (Iff30a)
  • أضفنا ButtonGroupلدمج زرَّين أو 3 أزرار بحيث تؤدي الضغطات على الأزرار إلى إنشاء صورة متحركة منسقة. (Ie27db)
  • أضفنا شكلًا متحركًا اختياريًا للرمزَين IconButton وTextButton عند الضغط عليهما. (Iffca5)
  • أضفنا لونًا إضافيًا، وهو FilledVariant، إلى Button وIconButton وTextButton وCompactButton وEdgeButton (I65fc3).
  • أضفنا المَعلمة forcedSize إلى ImageWithScrimPainter، بحيث تحافظ خلفيات صور الأزرار الآن على حجم المكوّن تلقائيًا. يؤدي ضبط forcedSize = null إلى استخدام Painter.instrinsicSize بدلاً من ذلك. (Ic57af)
  • أضفنا النقر مع الاستمرار على الأزرار (Ib613d).
  • تمت أيضًا إضافة إمكانية النقر مع الاستمرار إلى IconButton وTextButton. (I38891)
  • تمت إضافة إمكانية النقر مع الاستمرار إلى "البطاقات". (I305d5)
  • أضفنا LocalTextMaxLines وLocalTextAlign وLocalTextOverflow كـ CompositionLocals واستخدمناها كمَعلمات تلقائية في Text. يمكن الآن استخدام متغيرات التكوين المحلية من خلال مكوّنات مثل CheckboxButton وSwitchButton وRadioButton لتنفيذ إرشادات تجربة المستخدم، ولكن يمكن للمطوّرين إلغاء المَعلمات إذا لزم الأمر. (Iab841)
  • أضفنا Placeholder للمساعدة في إخفاء محتوى المكوّنات، مثل الأزرار والبطاقات، إلى أن يتم تحميل البيانات. (I1a532)
  • أضفنا IconToggleButtonColors وTextToggleButtonColors لاستبدال ToggleButtonColors الذي تمت إزالته الآن. (Ie0bf1)

إصلاح الأخطاء

  • عدّلنا Button وFilledTonalButton وOutlinedButton وChildButton وCompactButton لاستخدام CompositionLocals LocalTextMaxLines وLocalTextAlign وLocalTextOverflow الجديدة لتنفيذ إرشادات تجربة المستخدم. ويمكن للمطوّرين إلغاء هذه المَعلمات في Text مباشرةً إذا لزم الأمر (Ie51f7).
  • لقد غيّرنا عرض الخطوط التلقائي لرمز LevelIndicator إلى 6dp لتمييزه عن رمز ScrollIndicator الذي يبلغ عرض خطوطه 4dp. (If6f63)
  • لقد أصلحنا مشكلة في TimeText لتصبح زوايا التنظيف أكبر. (Ie489f)
  • تم إصلاح مشكلة أثناء إعادة تركيب EdgeButton. (I4cdca)
  • تم تصحيح تنسيقات أزرار التبديل المجزّأة عند توفير مساحة مخصّصة للمحتوى. (Ia33d3)
  • يتم تقريب قيم التقدّم الصغيرة إلى ما لا يقل عن عرض خط مؤشر التقدّم. (I3bd84)

الإصدار 1.0.0-alpha23

14 أيار (مايو) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha23. يحتوي الإصدار 1.0.0-alpha23 على عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • لقد عدّلنا واجهات برمجة التطبيقات ToggleButton وRadioButton لكي يمكن ضبط الألوان المُعطَّلة. (If13a7)
  • أضفنا CircularProgressIndicator جديدًا لتصميم Material3. (Ib3bd7)

إصلاح الأخطاء

  • لقد أصلحنا خطأً كان يعرض رسالة "انقر مرّتين لتبديل الحالة" على الأزرار القابلة للاختيار عندما تكون محدّدة. (I7ed88)

الإصدار 1.0.0-alpha22

1 مايو 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha22. يتضمّن الإصدار 1.0.0-alpha22 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • لقد عدّلنا ColorScheme في Material3. (I7b2b8)
  • لقد عدّلنا مفتاح التبديل في Material3، بالإضافة إلى بعض التغييرات على الألوان، وأصبح لون علامة الاختيار مطابقًا للون المستخدَم في مربّع الاختيار. (Icac7b)

إصلاح الأخطاء

  • عدِّل جميع العروض التوضيحية لعملية الدمج لاستخدام المُعدِّل rotaryScrollable الجديد. (I25090)

الإصدار 1.0.0-alpha21

17 نيسان (أبريل) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha21. يتضمّن الإصدار 1.0.0-alpha21 عمليات الربط هذه.

  • تم طرح هذا الإصدار بسبب مشكلة فنية في الإصدار السابق أدّت إلى عدم توفّر حِزم المصدر. ما مِن عمليات إرسال جديدة في هذا الإصدار.

الإصدار 1.0.0-alpha20

3 نيسان (أبريل) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha20. يحتوي الإصدار 1.0.0-alpha20 على عمليات الربط هذه.

إصلاح الأخطاء

  • لقد عدّلنا قيم شفافية تأثير التموج في حالتَي الضغط والتركيز لتحسين التباين. (I59f0a)
  • أضفنا مسافة بين التصنيفات الأساسية والثانوية في Button وToggleButton وRadioButton، وذلك بعد إجراء آخر التغييرات على أنماط الطباعة وارتفاعات الأسطر. (I2c0ba)

الإصدار 1.0.0-alpha19

‫6 مارس 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha19. يتضمّن الإصدار 1.0.0-alpha19 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أضفنا TimeText إلى مكتبة Material3 في Wear Compose. يعرض هذا المكوّن الوقت الحالي (والحالة الإضافية) في أعلى الشاشة. تتجنّب واجهة برمجة التطبيقات الجديدة والموجزة Material3 API تكرار المحتوى المستقيم والمنحني. (I4d7c3)
  • لقد عدّلنا أسماء المَعلمات من onSelected إلى onSelect في RadioButton. (I1a971)
  • يمكنك تقسيم RadioButton وSplitRadioButton إلى وحدات ترميز، وإعادة تنظيم الطرق الحالية لتقليل عدد عمليات البحث عن CompositionLocal من خلال إضافة نُسخ مخزّنة مؤقتًا من الألوان، وجعل طرق RadioButtonColors وSplitRadioButtonColors داخلية. (I02b33)

الإصدار 1.0.0-alpha18

21 شباط (فبراير) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha18. يحتوي الإصدار 1.0.0-alpha18 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • لقد أعدنا تنظيم نمط الإعدادات التلقائية لـ CardColors وToggleButtonColors وSplitToggleButtonColors من خلال إنشاء نُسخ مؤقتة من البيانات داخليًا وتقليل استخدام CompositionLocal. (If3fec)

الإصدار 1.0.0-alpha17

7 شباط (فبراير) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha17. يحتوي الإصدار 1.0.0-alpha17 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • لقد عدّلنا Button API لاستخدام buttonColors تلقائيًا وإزالة filledButtonColors المكرّر. (I4fe3b)
  • لقد أعدنا تنظيم الأنماط التلقائية لـ ButtonColors وIconButtonColors وTextButtonColors من خلال إنشاء مثيل محفوظ مؤقتًا داخليًا وتقليل استخدام CompositionLocal. (I5f51c)
  • لقد أزلنا التكلفة الإضافية rememberUpdatedState في فئات الألوان الخاصة بالمكوّنات ووضعنا علامة على طرق الوصول داخل فئات الألوان على أنّها داخلية. (If6571)

إصلاح الأخطاء

  • لقد عدّلنا Modifier.minimumInteractiveComponentSize لاستخدام Modifier.node. (Iba6b7)

الإصدار 1.0.0-alpha16

24 كانون الثاني (يناير) 2024

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha16. يحتوي الإصدار 1.0.0-alpha16 على هذه المراجعات.

الميزات الجديدة

  • أضفنا CompactButton، الذي يمكنه استخدام الألوان المعبّأة والمعبّأة بدرجات لونية والمخطّطة نفسها المستخدَمة في Button.(I05df0)

تغييرات واجهة برمجة التطبيقات

  • أضفنا RadioButton/SplitRadioButton كسِيّارات لعناصر التحكّم في الاختيار، مثل عنصر التحكّم في زر الاختيار. يختلف هذا عن العنصر ToggleButton الحالي في أنّ RadioButton قابل للاختيار (ويعمل ضمن مجموعة اختيار) في حين أنّ ToggleButton قابل للتبديل (وهو مستقل). (I61275)
  • نعمل على إزالة LocalContentAlpha من مكتبة Wear Compose Material3 للحفاظ على اتساقها مع مكتبة Compose Material3. (I49a0a)
  • تم تعديل مكوّنات Wear Material وWear Material3 التي تعرض MutableInteractionSource في واجهة برمجة التطبيقات لتعرض الآن MutableInteractionSource قابلاً للتغيير إلى قيمة فارغة. ما مِن تغييرات دلالية هنا: يعني تمرير القيمة null أنّك لا تريد رفع MutableInteractionSource، وسيتم إنشاؤه داخل المكوّن إذا لزم الأمر. يؤدي التغيير إلى القيمة null إلى عدم تخصيص بعض المكوّنات MutableInteractionSource مطلقًا، كما يسمح للمكوّنات الأخرى بإنشاء مثيل بشكل كسول فقط عند الحاجة، ما يؤدي إلى تحسين الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدم MutableInteractionSource الذي ترسله إلى هذه المكوّنات، ننصحك بإرسال قيمة فارغة بدلاً من ذلك. وننصحك أيضًا بإجراء تغييرات مشابهة في مكوّناتك. (Ib90fc، b/298048146)
  • إضافة واجهة برمجة تطبيقات جديدة لواجهة برمجة التطبيقات ripple API في مكتبتَي wear:compose-material وwear:compose-material3، والتي تحلّ محل واجهة برمجة التطبيقات rememberRipple التي تم إيقافها نهائيًا تضيف هذه الطريقة أيضًا CompositionLocal مؤقتًا، LocalUseFallbackRippleImplementation، لإعادة مكونات Material إلى استخدام واجهات برمجة التطبيقات rememberRipple/RippleTheme التي تم إيقافها نهائيًا. ستتم إزالة هذه الميزة في الإصدار الثابت التالي، وهي مخصّصة فقط لمساعدة المستخدمين في نقل البيانات مؤقتًا في الحالات التي يوفّرون فيها RippleTheme مخصّصًا. يُرجى الانتقال إلى developer.android.com للحصول على معلومات حول نقل البيانات ومزيد من المعلومات الأساسية حول هذا التغيير. (af92b21)
  • أجرينا تحسينات طفيفة على واجهة برمجة التطبيقات HorizontalPageIndicator ومستنداتها. (I60efc)
  • عدّلنا السمة ColorScheme لتصبح غير قابلة للتغيير، ما يجعل تعديلات الألوان الفردية أقل فعالية، ولكنّه يجعل الاستخدام الأكثر شيوعًا للألوان أكثر فعالية. ويعود سبب هذا التغيير إلى أنّ معظم التطبيقات لن تتضمن تغيير ألوان فردية كحالة استخدام رئيسية. لا يزال هذا ممكنًا، ولكنّه سيؤدي إلى إعادة التركيب أكثر من ذي قبل، ما يؤدي بدوره إلى تقليل عدد الاشتراكات في الحالة بشكل كبير من خلال كل الرمز البرمجي للمواد، وسيؤثّر في تكلفة الإعداد ووقت التشغيل لعدد أكبر من حالات الاستخدام العادية. (Ibc2d6)
  • تم تعديل واجهات برمجة التطبيقات ToggleButton وSplitToggleButton للسماح بتخصيص الألوان المتوقفة. بالإضافة إلى ذلك، يتم الآن استخدام الرموز المميّزة لتصميم Material Design لقيم الألوان وأسلوب الخط. (If087c)
  • تم تعديل ألوان خلفية صور الأزرار لاستخدام الرموز المميّزة لتصميم Material Design. (Iba215)
  • لقد غيّرنا مكوّنات Checkbox وSwitch وRadioButton لتصبح معروضة فقط، وذلك من خلال إزالة معالجة النقر. من المتوقّع استخدام هذه المكوّنات في (Split)ToggleButton التي تعالج النقرة، لذلك تمّ الآن الإشارة إلى المكوّنات بوضوح أكبر على أنّها مخصّصة للعرض فقط (وهي غير مخصّصة للاستخدام المستقل على Wear). (I2322e)

إصلاح الأخطاء

  • أضفنا علامات لقيم الحركة الخاصة بالمدّات وعمليات التخفيف في Wear Compose Material 3. (I437cd)
  • أصلحنا خطأ في ToggleButton وSplitToggleButton وCheckbox وSwitch وRadioButton حتى لا تتكرّر إشعارات تسهيل الاستخدام (في السابق، كانت الأدوار الدلالية مكرّرة). (Ica281)
  • لقد أزلنا طبقة MaterialCore لنظام التشغيل CompactButton لتحسين الأداء. (7902858)

الإصدار 1.0.0-alpha15

15 تشرين الثاني (نوفمبر) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha15. يحتوي الإصدار 1.0.0-alpha15 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أعدنا تسمية مستوى "التأسيس" SwipeToDismissBox إلى BasicSwipeToDismissBox. ويساعد ذلك في التمييز بشكل أوضح بين المكوّن على مستوى Foundation والمكوّن على مستوى Material3.SwipeToDismissBox يسحب هذا الأخير الألوان من MaterialTheme لاستخدامها في الشاشات المصغّرة ويفوّض التنفيذ المتبقّي إلى BasicSwipeToDismissBox. (Ibecfc)

إصلاح الأخطاء

  • أزلنا طبقة material-core لزر Material3 لتحسين الأداء. (I55555)

الإصدار 1.0.0-alpha14

18 تشرين الأول (أكتوبر) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha14. يحتوي الإصدار 1.0.0-alpha14 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أزلنا المَعلمة indicatorStyle من Material3 HorizontalPageIndicator، وستتّبع بدلاً من ذلك شكل شاشة الجهاز (مستقيم أو دائري). (I83728)
  • لقد فصلنا ألوان SplitToggleButton عن ألوان ToggleButton، وذلك من خلال إضافة فئة SplitToggleButtonColors جديدة. (I78bee)

الإصدار 1.0.0-alpha13

‫4 أكتوبر 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha13. يحتوي الإصدار 1.0.0-alpha13 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أضفنا حقل "العنوان الفرعي" اختياريًا إلى TitleCard. (Ifc45a)
  • لقد أضفنا رمزيات ألوان التصميم المتعدد الأبعاد إلى TextButton. (I769dc)

الإصدار 1.0.0-alpha12

20 أيلول (سبتمبر) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha12. يحتوي الإصدار 1.0.0-alpha12 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • لقد عدّلنا IconButton لاستخدام الرموز المميّزة لتصميم Material Design. (I3f137)
  • لقد عدّلنا IconToggleButton لاستخدام الرموز المميّزة لتصميم Material Design. (I7d263)
  • لقد جعلنا منشئي CheckboxColors وRadioButtonColors وSwitchColors علنيين. (I82b73)

الإصدار 1.0.0-alpha11

6 أيلول (سبتمبر) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha11. يحتوي الإصدار 1.0.0-alpha11 على هذه المراجعات.

إصلاح الأخطاء

  • لقد عدّلنا خطّ Material3 Cards إلى TitleMedium. (I597bd)
  • لقد عدّلنا الخطّ والاتجاه في ListHeader وListSubheader من عائلة Material3. (Ib5ceb)

الإصدار 1.0.0-alpha10

23 آب (أغسطس) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha10. يحتوي الإصدار 1.0.0-alpha10 على هذه المراجعات.

الميزات الجديدة

  • أضِف HorizontalPageIndicator في مكتبة Wear Material3. (Ifee99)

تغييرات واجهة برمجة التطبيقات

  • عدِّل رمز الأزرار لاستخدام الرموز المميّزة لتصميم Material3. (I92fe4)
  • سيتم الإعلان عن واجهات برمجة تطبيقات Slider وStepper في Wear Material 3 كإصدارات تجريبية لأنّه لا يزال يتم وضع اللمسات الأخيرة على تفاصيل واجهة المستخدم. (I84d54)
  • لقد أزلنا مقاسات ExtraSmall من الأشكال المستديرة TextButton وTextToggleButton لأنّ هذا المقاس لا ينطبق إلا على IconButton. (Ibc7d5)

إصلاح الأخطاء

  • عدّلنا الإرشادات المتعلقة بالخط في TextToggleButton لاستخدام LabelLarge لحجم الزر الكبير (Ib10fa).
  • عدّلنا الإرشادات المتعلقة بالخط في TextButton لاستخدام LabelLarge لـ LargeButtonSize (I8f3a7).
  • لقد ضبطنا الحد الأدنى لمساحة اللمس المستهدفة في البطاقة على 48 بكسل مستقل الكثافة لتسهيل الاستخدام. (Ieb9b1)
  • إضافة بطاقة تطبيق مع عرض توضيحي للصورة، وإزالة بطاقة التطبيق مع عرض توضيحي للخلفية (Id735f)
  • تم إصلاح خلل في الأزرار المستديرة حيث لم يتم ربط عوامل التعديل بشكل صحيح. (I5e162)

الإصدار 1.0.0-alpha09

9 آب (أغسطس) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha09. يحتوي الإصدار 1.0.0-alpha09 على هذه المراجعات.

الميزات الجديدة

  • أضفنا ToggleButton لسمة material3 (I6bed6).

تغييرات واجهة برمجة التطبيقات

  • لقد فعّلنا التعليق التوضيحي FloatRange كقيود لواجهة برمجة التطبيقات، كما سبق أن ذكرنا في التعليقات. (Icb401)
  • لقد عدّلنا أسلوب الخط في Wear Material3 بما يتوافق مع أحدث إرشادات Material3. (I1bad6)

إصلاح الأخطاء

  • لقد عدّلنا ألوان Button وIconButton وTextButton بما يتوافق مع تصميم Material3. (Ib2495)
  • أصلحنا مستوى ظهور علامة مربّع الاختيار في الحالات المتوقفة. (Ib25bf)

الإصدار 1.0.0-alpha08

26 تموز (يوليو) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha08. يحتوي الإصدار 1.0.0-alpha08 على هذه المراجعات.

الميزات الجديدة

  • أضفنا عناصر التحكّم في الاختيار التالية لـ Material3: Switch وCheckbox وRadioButton. (Ib918c)
  • أضفنا IconToggleButton وTextToggleButton إلى Material3، وهما زرّان دائريان للتشغيل/الإيقاف يتضمّنان خانة واحدة للرمز والنص على التوالي. بالنسبة إلى أحجام ToggleButton المختلفة، ننصحك باستخدام Modifier.touchTargetAwareSize مع الأحجام المقدَّمة في أزرار التبديل ذات الصلة. (I9f015)
  • أضفنا ListHeader وListSubheader إلى مكونات Material3. (Ibaefe)
  • أضفنا Material3 SwipeToDismissBox الذي يستدعي Foundation SwipeToDismissBox الجديد ويقدّم قيم الألوان التلقائية من موضوعه. (I275fb)
  • أضفنا InlineSlider Material3 إلى ميزة "الكتابة السريعة" في Wear OS. ويسمح هذا الخيار للمستخدمين بإجراء اختيار من نطاق من القيم. يتم عرض نطاق الاختيارات كشريط بين الحد الأدنى والحد الأقصى للقيمة، ويمكن للمستخدمين اختيار قيمة واحدة من ذلك الشريط. InlineSlider مثالي لضبط الإعدادات، مثل مستوى الصوت أو السطوع. (I7085f)

تغييرات واجهة برمجة التطبيقات

  • لقد عدّلنا مظهر "أشكال" في Wear Material 3 لاستخدام RoundedCornerShape بدلاً من Shape. (Idb133)
  • لقد جعلنا الثوابت الخاصة بالارتفاع لزر Button علنية (Idbfde).
  • تم تعديل ملفات واجهة برمجة التطبيقات لإضافة تعليقات توضيحية حول إيقاف التوافق (I8e87a، b/287516207)
  • لقد عدّلنا InlineSliderColors في Wear Compose Material 3 لتوفير عنصر الإنشاء العام والخصائص العامة. (I6b632)
  • لقد عدّلنا جميع فئات الألوان في Wear Compose Material 3 لتتضمّن وظائف إنشاء عامة وخصائص عامة. (I17702)
  • لقد جعلنا متغيرات الحشو الأفقي والرأسي للزر علنية. (Ieeaf7)

إصلاح الأخطاء

  • سيتم الآن تعديل ارتفاع الزرّ ليلائم المحتوى الذي زاد حجمه بسبب الخطوط الكبيرة لتسهيل الاستخدام، عند الحاجة (Iaf302)
  • عدّلنا عددًا من نماذج Button التجريبية لمعالجة مشاكل تسهيل الاستخدام. (I61ce9)
  • يتيح الآن زرَّا Stepper وInlineSlider النقر بشكل متكرر عند الضغط مع الاستمرار حتى تتمكّن من زيادة أو خفض قيمة Stepper وInlineSlider بسرعة عن طريق الضغط مع الاستمرار على الزرَّين + أو - (I27359).

الإصدار 1.0.0-alpha07

‫21 حزيران (يونيو) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha07. يحتوي الإصدار 1.0.0-alpha07 على هذه المراجعات.

الميزات الجديدة

  • أضفنا المكوّن Stepper إلى مكتبة Material 3 في تطبيق Compose لنظام التشغيل Wear OS. يشبه هذا الإصدار الإصدار السابق من Material، ولكنّه يحذف دلالات النطاق تلقائيًا، استنادًا إلى ملاحظات المطوّرين. نوفّر Modifier.rangeSemantics الحالات التي تكون فيها دلالات النطاق مطلوبة. (Ic39fd)
  • أضفنا curvedText إلى مكتبة Material 3 في تطبيق Compose لنظام التشغيل Wear OS. (Ia8ae3)

إصلاح الأخطاء

  • عدّلنا wear.compose.foundation ليصبح معتمِدًا على واجهة برمجة التطبيقات wear.compose.material3 (I72004، b/285404743).

الإصدار 1.0.0-alpha06

7 حزيران (يونيو) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha06. يحتوي الإصدار 1.0.0-alpha06 على هذه المراجعات.

إصلاح الأخطاء

  • لقد عدّلنا الدالة TextButton لاستخدام الدالة toDisabledColor الإضافية لعرض قيم ألفا الصحيحة غير المفعّلة. (I814c8)

الإصدار 1.0.0-alpha05

24 أيار (مايو) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha05. يحتوي الإصدار 1.0.0-alpha05 على هذه المراجعات.

الميزات الجديدة

  • أضفنا TextButton إلى Material3، وهو زر دائري يتضمّن خانة واحدة للنص. بالنسبة إلى أحجام مختلفة من TextButton، ننصحك باستخدام Modifier.touchTargetAwareSize وExtraSmallButtonSize وSmallButtonSize وDefaultButtonSize وLargeButtonSizeIcon المتوفّرة في TextButtonDefaults. لا يحتوي الرمز التلقائي TextButton على حدود وله خلفية شفافة للإجراءات ذات الأهمية المنخفضة. بالنسبة إلى الإجراءات التي تتطلّب تركيزًا عاليًا، استخدِم filledTextButtonColors. بالنسبة إلى الإجراءات التي تتطلّب تركيزًا متوسطًا، استخدِم TextButton المخطّط، واضبط الحدود على ButtonDefaults.outlinedButtonBorder. بالنسبة إلى الإجراءات التي تتطلّب تركيزًا متوسطًا بين المخطّط والممتلئ، استخدِم filledTonalTextButtonColors. (I667e4)
  • أضفنا Card وOutlinedCard وAppCard وTitleCard إلى مكتبة Material3 في Wear Compose. يمكن أيضًا منح AppCard وTitleCard مظهرًا مخطّطًا باستخدام CardDefaults.outlinedCardColors وCardDefaults.outlinedCardBorder(I80e72).

تغييرات واجهة برمجة التطبيقات

  • لقد نقلنا مَعلمة تصنيف الزرّ إلى النهاية لتتوافق مع بنية lambda اللاحقة وأزلنا مَعلمة الدور (لأنّه يمكن إلغاء ذلك باستخدام Modifier.semantics). أصبحت الآن وظائف إنشاء ButtonColors علنية. (Ie1b6d)

الإصدار 1.0.0-alpha04

10 أيار (مايو) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha04. يحتوي الإصدار 1.0.0-alpha04 على هذه المراجعات.

الميزات الجديدة

  • أضفنا IconButton إلى Material3، وهو زر دائري يتضمّن خانة واحدة للرمز/الصورة. تتوفّر أربعة أشكال: IconButton وFilledIconButton وFilledTonalIconButton وOutlinedIconButton. بالنسبة إلى أحجام مختلفة من IconButton، ننصحك باستخدام Modifier.touchTargetAwareSize وExtraSmallButtonSize وSmallButtonSize وDefaultButtonSize وLargeButtonSizeIcon المتوفّرة في IconButtonDefaults. نوفّر أيضًا IconButtonDefaults.iconSizeFor لتحديد حجم الرمز المقترَح لحجم زر معيّن. (I721d4)

الإصدار 1.0.0-alpha03

19 نيسان (أبريل) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha03. يحتوي الإصدار 1.0.0-alpha03 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أضفنا مكوّن الزر في Material 3، وهو الزر على شكل ملعب وكان يُعرف سابقًا باسم Chip في مكتبة Material Compose في Wear (تمت إعادة تسميته إلى Button لمواءمة مع مكتبة Compose Material 3). يحتوي الزر التلقائي على خلفية مليئة، وهناك أنواع أزرار مختلفة FilledTonal (خلفية باهتة) وOutlined (شفافة مع حدود رفيعة) وChild (خلفية شفافة بدون حدود، تُستخدَم للإجراءات التكميلية ذات الأهمية الأقل). ستتوفّر أزرار مستديرة لمحتوى الرموز والنصوص البسيطة في إصدار مستقبلي.(Ia6942)

الإصدار 1.0.0-alpha02

5 نيسان (أبريل) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha02. يحتوي الإصدار 1.0.0-alpha02 على هذه المراجعات.

إصلاح الأخطاء

  • أضفنا DefaultTextStyle إلى Wear Compose Material 3 الذي يضبط PlatformTextStyle.includeFontPadding تلقائيًا على true (الإعداد الحالي). سيتيح لنا ذلك مزامنة إيقاف حشوة الخط تلقائيًا مع مكتبات Compose في المستقبل (راجِع إصلاح حشوة الخط في ميزة "الإنشاء" للخلفية). (I7e461)

الإصدار 1.0.0-alpha01

22 آذار (مارس) 2023

تم إصدار androidx.wear.compose:compose-material3:1.0.0-alpha01. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.

الميزات الجديدة

  • ‫Material 3 هو الإصدار التالي من Material Design، ويتضمن مظهرًا جديدًا ومكونات معدَّلة. تم تصميم واجهة Material 3 في تطبيق "الكتابة السريعة" على Wear OS لتتلاءم مع مكتبة Material 3 Compose على Android. يتضمّن هذا الإصدار الأول من الإصدار التجريبي الأولي عمليات تنفيذ وظيفية مبكرة لما يلي:

    • مظهر Material: لضبط نظام الألوان وأسلوب الخط والأشكال بشكلٍ متسق في جميع المكونات في المكتبة تم تعديل ألوان موضوع Material3 لتوفير تباين سهل الاستخدام. (I84005)
    • النص/الرمز: وحدات أساسية لتطبيقات Wear Compose (I8e06a)
  • سنواصل تطوير Wear Material (androidx.wear.compose:compose-material) وWear Material 3 (androidx.wear.compose:compose-material3) بالتوازي. ستوسّع الإصدارات المستقبلية من Material3 مجموعة التطبيقات المصغّرة لتشمل مكوّنات أخرى مألوفة من تطبيق Compose لنظام التشغيل Wear OS، مثل الأزرار وأدوات الاختيار وأدوات التمرير.

  • إنّ مكتبتَي Wear Material وWear Material 3 متعارضتان مع بعضهما البعض، ويجب عدم خلطهما في التطبيق نفسه، ويرجع ذلك في المقام الأول إلى أنّهما تشيران إلى مظاهر مختلفة قد تؤدي إلى حدوث تناقضات غير متوقّعة.

الإصدار 1.5 من أداة Compose على Wear

الإصدار 1.5.0-alpha07

11 كانون الأول (ديسمبر) 2024

تم إصدار androidx.wear.compose:compose-*:1.5.0-alpha07. يتضمّن الإصدار 1.5.0-alpha07 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • يوفّر TransformingLazyColumnState الآن طريقة لمراقبة مستوى التقدّم الحالي في الانتقال إلى الأسفل أو الأعلى استنادًا إلى فهارس عناصر الربط. (I72b01)
  • أضفنا صورًا متحركة إلى TransformingLazyColumn عند إضافة العناصر وإزالتها ونقلها، إذا كانت تحتوي على Modifier.animateItem الجديد. (Iecb9c)
  • يعرض TransformingLazyColumn الآن قيمتَي beforeContentPadding وafterContentPadding. (Iccd5f)
  • يوفّر TransformingLazyColumn الآن LocalTransformingLazyColumnItemScope محليًا للتركيب يمكن للمكوّنات (مثل Card وButton في Material3) استخدامه للتحويل تلقائيًا عند وضعه داخل TransformingLazyColumn. يمكن للمتصلين إيقاف ميزة "التحويل التلقائي" باستخدام حزمة TransformExclusion الجديدة. (I1652f)

إصلاح الأخطاء

  • لقد عدّلنا سرعات الرمي الدنيا والقصوى للعناصر الدوّارة على الأجهزة التي تستهدف الإصدار U والإصدارات الأحدث. (I33559)
  • لقد أصلحنا مشكلة تعطُّل كانت تحدث إذا لم يتضمّن عنصر في TransformingLazyColumn أيّ عناصر قابلة للتجميع (Idb99d).
  • لقد أضفنا ScrollFeedbackProvider لدعم اللمسات الدوّارة على Android Vanilla ice cream. (Ibc553)
  • لقد أجرينا تعديلاً على سرعة اللمس عند استخدام SwipeToReveal من أجل تقليل فرص التمرير سريعًا عن طريق الخطأ عند التمرير عموديًا. (Ic0672)
  • عدّلنا SwipeDismissableNavHost لاستخدام PredictiveBackHandler عندما يكون متاحًا مع الإصدار 35 من واجهة برمجة التطبيقات والإصدارات اللاحقة. في هذه الحالة، سيتم تطبيق رسوم متحركة جديدة. (I08c11)

الإصدار 1.5.0-alpha06

13 تشرين الثاني (نوفمبر) 2024

تم إصدار androidx.wear.compose:compose-*:1.5.0-alpha06. يتضمّن الإصدار 1.5.0-alpha06 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • لقد سهّلنا استخدام ScrollInfoProvider بدلاً من PagerState من خلال إزالة المَعلمة orientation التي لم تعُد مطلوبة. يقضي السلوك الجديد ببقاء TimeText في مكانه لكلٍّ من التنقل الأفقي والرأسي. (I71767)
  • تم تقديم TransformingLazyColumn في الإصدارات السابقة. نحن بصدد إزالة الأسماء البديلة LazyColumn لنظام التشغيل Wear (التي كانت تُعيد التوجيه إلى TransformingLazyColumn) والانتقال إلى الاسم الجديد TransformingLazyColumn. وأزلنا أيضًا سمة height الخاصة بـ TransformingLazyColumnVisibleItemInfo، لذا يُرجى استخدام measuredHeight بدلاً منها. (I0ea1e)
  • لقد غيّرنا مواصفات PagerDefaults.snapFlingBehavior snapAnimationSpec من Tween إلى Spring.(I10d02، b/349781047، b/303807950)
  • تمت ترقية الإصدار LocalReduceMotion CompositionLocal إلى الإصدار الثابت (Ia6f32).

إصلاح الأخطاء

  • لقد عدّلنا Modifier.rotaryScrollable لاستخدام focusTargetWithSemantics لتوفير دعم أفضل للدلالات في الإعلانات الدوّارة. (Ief0a0)
  • لقد عدّلنا الحد الأدنى لمتطلبات واجهة برمجة التطبيقات إلى 1.7.4 لمكتبات Compose. (I88b46)
  • أوقفنا ميزة "تغيير العرض" في TransformingLazyColumn كحل بديل لخطأ في الاقتصاص. (I3dfb8)
  • لقد أصلحنا خطأً كان يتسبب في اختفاء العناصر بعد الانتقال سريعًا للأسفل باستخدام TransformingLazyColumn (Id7668).
  • أضفنا LazyLayoutSemantics إلى TransformingLazyColumn. (Ia8f56)

الإصدار 1.5.0-alpha05

30 تشرين الأول (أكتوبر) 2024

تم إصدار androidx.wear.compose:compose-*:1.5.0-alpha05. يتضمّن الإصدار 1.5.0-alpha05 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • لقد أضفنا إمكانية استخدام animateScrollTo على TransformingLazyColumnState لكي يظهر تأثير متحرك عند الانتقال إلى عنصر. (I4097d)
  • أضفنا requestScrollTo في TransformingLazyColumnState لتأجيل الانتقال إلى القياس التالي. (I20a5e)
  • أضفنا ميزة contentPadding في TransformingLazyColumn. (I3a69c)

إصلاح الأخطاء

  • أصلحنا خطأً في عرض TransformingLazyColumn عندما يكون ارتفاع المحتوى أقصر من ارتفاع الشاشة. (I6c3e1)
  • يتتبّع الآن ScrollInfoProvder لـ TransformingLazyColumn العنصر الأول بشكل صحيح. (I1e4a3)
  • يحفظ TransformingLazyColumnState الآن حالته (anchorItemIndex وanchorItemScrollOffset). (I3d265)

الإصدار 1.5.0-alpha04

16 أكتوبر 2024

تم إصدار androidx.wear.compose:compose-*:1.5.0-alpha04. يتضمّن الإصدار 1.5.0-alpha04 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أعدنا تسمية واجهة Compose Foundation LazyColumn في Wear OS ليصبح TransformingLazyColumn، وذلك لتسهيل التمييز بين هذه الواجهة وواجهة Compose Foundation LazyColumn. (I0608b)
  • تمت إضافة ميزة التنقّل بالتناوب في أجهزة الردّ الآلي الأفقية/الرأسية، ما يتيح للمستخدمين التنقّل في أجهزة الردّ الآلي باستخدام أجهزة الإدخال بالتناوب. (I9770d)
  • لقد عدّلنا الرمز الجديد PagerDefaults لتوضيح أنّ شريط التنقّل سيلتصق بالصفحة تلقائيًا. (Iff7d0)
  • أصبحت TransformingLazyColumnItemScrollProgress الآن فئة قيمة من المفترض أن تُحسِّن الأداء. (Ic399e)
  • تتيح TransformingLazyColumn الآن استخدام العناصر الدوّارة بشكل تلقائي. (I05206)
  • يتيح TransformingLazyColumnState الآن استخدام scrollToItem. (I507b3)
  • تمت إزالة @ExperimentalWearFoundationApi من واجهة برمجة التطبيقات SwipeToReveal (I34a66)

الإصدار 1.5.0-alpha03

2 أكتوبر 2024

تم إصدار androidx.wear.compose:compose-*:1.5.0-alpha03. يتضمّن الإصدار 1.5.0-alpha03 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أضفنا إمكانية التمرير السريع في الاتجاهين في SwipeToReveal، وذلك للحالات النادرة التي لا تتيح فيها الشاشة الحالية التمرير السريع لإغلاق التطبيقات. . لا يزال الإعداد التلقائي هو التمرير السريع للكشف عن المحتوى فقط عند التمرير السريع من اليمين إلى اليسار، وينصح بشدة باحترام السلوك التلقائي لتجنُّب التعارض مع التمرير السريع لإغلاق المحتوى. (Ifac04)
  • لقد عدّلنا LazyColumnState لإلغاء canScrollForward وcanScrollBackward، ما يؤدي الآن إلى إيقاف الانتقال للأعلى أو للأسفل عندما يكون العنصر الأول أو الأخير في منتصف الشاشة تمامًا. (Ia77d7)
  • أضفنا مكوّنات HorizontalPager وVerticalPager جديدة تعالج المشاكل الشائعة، مثل معالجة التركيز والتفاعل مع ميزة التمرير سريعًا لإغلاق التطبيقات التي قد تحدث على نظام التشغيل Wear. (I2902b)
  • لقد أضفنا إمكانية استخدام LazyColumn لعرض key وcontentType للعميل من خلال layoutItems. (I1bd9c)

إصلاح الأخطاء

  • عدّلنا الرسوم المتحركة للنص المنحني لتكون أكثر سلاسة باستخدام علامات الطلاء. (I73a15)
  • عدّلنا مستندات Material Dialog لتوضيح أنّه لا يتم استدعاء onDismissRequest بعد ضبط علامة العرض على false. (Ifd8d6)
  • تم إصلاح خطأ في الصورة المتحركة للتأثير البؤري في مربّع الحوار بتصميم Material (I126bf).

الإصدار 1.5.0-alpha02

18 أيلول (سبتمبر) 2024

تم إصدار androidx.wear.compose:compose-*:1.5.0-alpha02. يتضمّن الإصدار 1.5.0-alpha02 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • لقد أضفنا إمكانية استخدام ميزة LazyColumn في تطبيق Wear Compose مع ScreenScaffold (وأضافنا تنفيذًا لميزة ScrollInfoProvider في LazyColumnState). (Ib8d29)
  • أضفنا viewportSize إلى LazyColumnLayoutInfo. (I4187f)

إصلاح الأخطاء

  • لقد أصلحنا خطأً يؤدي إلى إيقاف ميزة التمرير الدوّري في ScalingLazyColumn عند ضبط علامة userScrollEnabled على false. (I490ab، b/360295825)
  • لقد أجرينا إصلاحًا للخطأ الذي كان يؤدي إلى ظهور مسافة رأسية غير متوقّعة في النص المنحني. يتطابق ارتفاع النص المنحني الآن بشكلٍ أدق مع المساحة الفعلية التي يستخدمها النص. يُرجى العِلم أنّ هذا الإجراء قد يؤدي إلى إيقاف اختبارات لقطات الشاشة التي تتضمّن نصًا منحنيًا (Iaa6ef).
  • لقد أبطلنا إصلاحًا للخطأ في Dialog حيث تمّ استدعاء دالة الاستدعاء onDismissRequest عند ضبط showDialog على false، لأنّ ذلك أدّى في بعض الحالات إلى استدعاء onDismissRequest عدّة مرات. (I64656)

الإصدار 1.5.0-alpha01

4 أيلول (سبتمبر) 2024

تم إصدار androidx.wear.compose:compose-*:1.5.0-alpha01. يحتوي الإصدار 1.5.0-alpha01 على عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أضفنا LazyColumn جديدًا إلى مكتبة Wear Compose Foundation مع واجهات برمجة التطبيقات LazyColumnState وLazyColumnScope المرتبطة. ويشكّل ذلك الأساس لإنشاء تأثيرات قابلة للتخصيص للتكبير والتصغير والتحويل باستخدام أداة Wear Compose. (Ib3b22)
  • أضفنا نسخة مفهرَسة من itemsIndexed إلى LazyColumnScope كجزء من واجهة برمجة التطبيقات الجديدة LazyColumn API. (Ib4a57)
  • أضفنا مُعدِّلات LazyColumn لدعم سلوكَي التكبير والتصغير. (Ie229a)
  • تمت ترقية الإصدار HierarchicalFocusCoordinator إلى الإصدار الثابت. (I31035)
  • أضفنا إمكانية ضبط تباعد الأحرف للنص المنحني. (I3c740)
  • تمت إضافة مَعلمة rotationLocked إلى CurvedLayout.curvedComposable لإيقاف تدوير المكوّنات. (I66898)
  • تمّت إزالة واجهة برمجة التطبيقات المؤقتة LocalUseFallbackRippleImplementation من wear material وwear material3 (I62282).
  • تمت إزالة WearDevices.SQUARE من المعاينة المتعددة @WearPreviewDevices (I11c02)

إصلاح الأخطاء

  • يضع SwipeToReveal الآن العناصر التي تم الكشف عنها في الجزء المرئي من الشاشة، ما يساعد عند استخدام SwipeToReveal ضمن قائمة، وبالتالي يمكن التفاعل مع العناصر دائمًا ولا تقع خارج الشاشة. (I38929)
  • يُعيد SwipeToReveal الآن ضبط lastActionType على "بدون" عند اكتمال animatedTo. (I59b03)
  • تم تحسين مستندات المَعلمة الجديدة rotationLocked في curvedComposable. (Ifbd57)
  • تم إصلاح مشكلة تعطُّل عند تمرير NaN إلى performFling في ScalingLazyColumnSnapFlingBehavior. (Ic13da)
  • تم إصلاح خطأ في مُعدِّل حجم التنسيق المنحني (I0fedf).
  • أضفنا إمكانية استخدام مقياس التباعد بين الأحرف المحدّد في sp. (I9f6e3)
  • لقد أصلحنا خطأً في مربّع حوار Material2 حيث لم يتمّ استدعاء دالة الاستدعاء onDismissRequest عندما أصبح مربّع الحوار غير مرئي (I64656).
  • تمت إعادة تسمية LayoutCoordinates.introducesFrameOfReference إلى LayoutCoordinates.introducesMotionFrameOfReference لتعكس الغرض منها بشكل أفضل. تمّت إعادة تسمية الدالة ذات الصلة لاحتساب التنسيقات استنادًا إلى هذا الإعداد. (I3a330)

الإصدار 1.4

الإصدار 1.4.0

4 أيلول (سبتمبر) 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0. يحتوي الإصدار 1.4.0 على عمليات الربط هذه.

التغييرات المهمة منذ الإصدار 1.3.0

  • تتيح ScalingLazyColumn وPicker الآن إدخال البيانات الدورانية تلقائيًا، لذا ننصحك بإزالة المعالجة الصريحة للبيانات الدورانية والالتزام بالسلوك التلقائي للنظام. استخدِم المَعلمة rotaryScrollableBehavior لضبط سلوك التمرير أو التصاق العناصر، إذا لزم الأمر. بالنسبة إلى سلوك التصاق العناصر، ننصحك بتوفير سلوك التصاق العناصر وإمكانيات التمرير باللمس باستخدام المَعلمة flingBehavior.
  • Modifier.rotaryScrollable هو مُعدِّل جديد يربط الأحداث الدوّارة بالحاويات القابلة للتنقّل، ما يسمح للمستخدمين بالتنقل باستخدام تاج أو إطار دوار على جهاز Wear OS.
  • يوفّر SwipeDismissableNavHost الآن صورة متحركة عند الدخول إلى الانتقالات داخل التطبيق.
  • يظهر الرمز PositionIndicator الآن تلقائيًا عند عرض شاشة لأول مرة.

تغييرات إضافية

  • للحصول على مجموعة أكثر اكتمالاً من التغييرات التي تمّ إدخالها في الإصدار 1.3.0، يُرجى الاطّلاع على ملاحظات الإصدار beta01.

الإصدار 1.4.0-rc01

21 آب (أغسطس) 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-rc01. يتضمّن الإصدار 1.4.0-rc01 عمليات الربط هذه.

  • لقد عدّلنا التبعيات في Compose إلى الإصدار 1.7.0-rc01 وأقررنا ميزة التنقّل في Wear Compose على androidx.lifecycle 2.8.3.

الإصدار 1.4.0-beta03

12 يونيو 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-beta03. يتضمّن الإصدار 1.4.0-beta03 عمليات الربط هذه.

إصلاح الأخطاء

  • عدّلنا Modifier.rotaryScrollable لاستبدال استخدام "focusable" بـ "focusTarget"، ما يؤدي إلى تحسين الأداء. (Id294b)
  • لقد حللنا مشكلة تكرار ProgressIndicator لإعلانه ضمن TalkBack. (I94563)
  • لقد عدّلنا الملفات الشخصية الأساسية لمكتبة Wear Compose. (I3cbc3)

الإصدار 1.4.0-beta02

29 أيار (مايو) 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-beta02. يتضمّن الإصدار 1.4.0-beta02 عمليات الربط هذه.

إصلاح الأخطاء

  • لقد وسّعنا عرض الحدود التي يتم تمريرها إلى تطبيقات قراءة الشاشة من النص المنحني لحلّ المشاكل المتعلّقة بالاقتطاع (Id865f).
  • لقد قيّدنا حدود الرمز HorizontalPageIndicator الذي تم تمريره إلى تطبيقات قراءة الشاشة، حيث كان المؤشر يشغل الشاشة بالكامل في السابق (Id8d7a).

الإصدار 1.4.0-beta01

14 أيار (مايو) 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-beta01. يتضمّن الإصدار 1.4.0-beta01 عمليات الربط هذه.

يشير الإصدار 1.4-beta01 من Compose لنظام التشغيل Wear OS إلى أنّ هذا الإصدار من المكتبة مكتمل الميزات وأنّ واجهة برمجة التطبيقات مقفلة (باستثناء الحالات التي تم وضع علامة عليها كتجريبية). تتضمّن أداة "الكتابة السريعة" 1.4 لنظام التشغيل Wear OS الوظائف الجديدة التالية:

  • أضفنا Modifier.rotaryScrollable، وهو مُعدِّل جديد يربط الأحداث الدوّارة بالحاويات القابلة للتنقّل، ما يسمح للمستخدمين بالتنقل من خلال تاج أو إطار دوار على جهاز Wear OS. بالإضافة إلى ذلك، يتيح ScalingLazyColumn وPicker الآن إدخال البيانات من خلال جهاز تحكّم دوار تلقائيًا. استخدِم المَعلمة rotaryScrollableBehavior لضبط سلوك التمرير أو التصاق العناصر. بالنسبة إلى سلوك التصاق العناصر، ننصحك بتوفير التصاق من خلال المَعلمة flingBehavior أيضًا لميزة الانتقال السريع باللمس.
  • يوفّر SwipeDismissableNavHost الآن صورة متحركة عند الدخول إلى الانتقالات داخل التطبيق.
  • يظهر الرمز PositionIndicator الآن تلقائيًا عند عرض شاشة لأول مرة.
  • تمّت إضافة SelectableChip وSplitSelectableChip كصيغة مختلفة من ToggleChip. استخدِم هذا مع RadioButton لتوفير دلالات قابلة للاختيار بدلاً من دلالات قابلة للتبديل لتسهيل الاستخدام.
  • تتيح ListHeader الآن تعديلات الارتفاع عندما تحتاج المحتوى إلى ارتفاع إضافي لاستيعاب أحجام الخطوط الكبيرة.

إصلاح الأخطاء

  • لقد أصلحنا خطأً كان يعرض رسالة "انقر مرّتين لتبديل الحالة المختارة" على الشرائح القابلة للاختيار عندما تكون محدّدة. (I7ed88)

الإصدار 1.4.0-alpha08

1 مايو 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-alpha08. يتضمّن الإصدار 1.4.0-alpha08 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أجرينا التغييرات التالية على واجهة برمجة التطبيقات الجديدة للعناصر الدوّارة: إعادة تسمية Modifier.rotary إلى Modifier.rotaryScrollable، وإعادة تسمية واجهة RotaryBehavior إلى RotaryScrollableBehavior ودالة handleScrollEvent إلى performScroll، وإعادة تسمية RotaryScrollableAdapter إلى RotaryScrollableLayoutInfoProvider وإزالة السمة scrollableState. (I0c8a6)
  • أجرينا تغييرات إضافية على واجهة برمجة التطبيقات rotary API: تمت إعادة تسمية RotaryScrollableLayoutInfoProvider إلى RotarySnapLayoutInfoProvider (لأنّ هذا الموفِّر مطلوب فقط للصور الدوّارة التي تتضمّن لقطة سريعة)، وتم تغيير نوع المَعلمة snapOffset في RotaryScrollableDefaults.snapBehavior snapOffset من Int إلى Dp. (Iddebe)
  • أعدنا تسمية المَعلمة clickInteractionSource في SplitSelectableChip إلى containerInteractionSource. (Ia8f84)
  • لقد عدّلنا أسماء مَعلمات طلب إعادة الاتصال الناتجة عن النقر في SplitSelectableChip من onClick إلى onSelectionClick ومن onBodyClick إلى onContainerClick. (I32237)

إصلاح الأخطاء

  • لقد عدّلنا الحشو الأفقي لعنصر PositionIndicator إلى 2dp (كان 5dp)، وذلك لحلّ مشكلة تداخل PositionIndicator (شريط التمرير) مع المحتوى القابل للتنقّل. يُرجى العِلم أنّ هذا التغيير سيؤدي على الأرجح إلى إيقاف لقطات الشاشة الحالية التي تتضمّن الرمز PositionIndicator بسبب تغيير المسافة البادئة. (I57472)
  • لقد حسّنا مستندات واجهة برمجة التطبيقات الجديدة للأجهزة الدوّارة من خلال وصف الاختلافات بين الأجهزة الدوّارة ذات الدقة المنخفضة والأجهزة الدوّارة ذات الدقة العالية. (I63abe)
  • لقد عالجنا استثناءً خارج النطاق في SwipeDismissableNavHost يمكن أن يتم تشغيله عندما تكون قيم ألفا التي تم الاستقراء بها أقل من الصفر. (Ib75a1، b/335782510)

الإصدار 1.4.0-alpha07

17 نيسان (أبريل) 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-alpha07. يتضمّن الإصدار 1.4.0-alpha07 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أضفنا Modifier.rotary، وهو مُعدِّل جديد يربط الأحداث الدوّارة بالحاويات القابلة للتنقّل، ما يسمح للمستخدمين بالتنقل من خلال تاج أو إطار دوار على جهاز Wear OS. بالإضافة إلى ذلك، تتيح أداة الاختيار والرمز ScalingLazyColumn الآن إدخالًا دوارًا تلقائيًا، مع عمليات تحميل زائدة جديدة تتضمّن المَعلمة rotaryBehavior لتحديد إعدادات التمرير أو التصاق العناصر. إذا تم ضبط المَعلمة rotaryBehavior على "الالتقاط"، ننصحك بتوفير ميزة "الالتقاط" من خلال المَعلمة flingBehavior أيضًا لتمرير المحتوى باللمس. (I2ef6f)
  • يتم استبدال مصدرَي NestedScroll Drag وFling بـ UserInput وSideEffect لاستيعاب التعريف الموسّع لهذَين المصدرَين الذي يتضمّن الآن الصور المتحركة (Side Effect) وعجلة الماوس ولوحة المفاتيح (UserInput). (I40579)
  • أضفنا SelectableChip وSplitSelectableChip لتمييز عناصر التحكّم القابلة للتبديل، مثل Switch/Checkbox، عن عناصر التحكّم القابلة للاختيار، مثل RadioButton. ويؤدي ذلك إلى استبدال عمليات تحميل ToggleChip/SplitToggleChip التي تمت إضافتها سابقًا بمَعلمات selectionControl. (Ia0217)
  • تم تعديل مُعدِّل مستوى العرض لـ IndeterminateStrokeWidth في ProgressIndicatorDefaults إلى "علني". (I5b5a4)

الإصدار 1.4.0-alpha06

3 نيسان (أبريل) 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-alpha06. يتضمّن الإصدار 1.4.0-alpha06 عمليات الربط هذه.

إصلاح الأخطاء

  • أضفنا مسودة داخلية لدعم الشاشة الدوّارة، كجزء من الجهد الأكبر المبذول لنقل سلوك الشاشة الدوّارة إلى AndroidX من Horologist. (I617d1)
  • لقد أضفنا مسودة داخلية لدعم ميزة لمسات haptics، وذلك كجزء من الجهد الأكبر المبذول لنقل سلوك Rotary إلى AndroidX من Horologist. (I5568a)

الإصدار 1.4.0-alpha05

20 مارس 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-alpha05. يتضمّن الإصدار 1.4.0-alpha05 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • لقد جعلنا السمتَين initialCenterItemIndex وinitialCenterItemScrollOffset في ScalingLazyListState علنية. (I0c616)
  • لقد جعلنا FullScreenStrokeWidth من ProgressIndicatorDefaults علنية. (Ibea23)

إصلاح الأخطاء

  • لقد تحسّن أداء PositionIndicator من خلال خفض عدد المكالمات إلى layoutInfo من ScalingLazyColumn. (Idc83d)

الإصدار 1.4.0-alpha04

‫6 مارس 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-alpha04. يتضمّن الإصدار 1.4.0-alpha04 عمليات الربط هذه.

تغييرات واجهة برمجة التطبيقات

  • أضفنا طريقة تحميل زائدة جديدة للدالة ToggleChip والدالة SplitToggleChip تأخذ مَعلمة selectionControl بدلاً من المَعلمة toggleControl. يجب استخدام هذه السمة مع عنصر التحكّم RadioButton لتوفير دلالات قابلة للاختيار بدلاً من دلالات قابلة للتبديل لتسهيل الاستخدام (I1d6d9).
  • عدّلنا أسماء المَعلمات لعملية تحميل selectionControl الجديدة من onSelected إلى onSelect لـ ToggleChip وSplitToggleChip (I1a971).

الإصدار 1.4.0-alpha03

21 شباط (فبراير) 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-alpha03. يحتوي الإصدار 1.4.0-alpha03 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • تم إيقاف حزمة Modifier.inspectable نهائيًا. ستؤدي واجهة برمجة التطبيقات هذه إلى إلغاء صلاحية المُعدِّل أكثر من اللازم، لذا لا يُنصح باستخدامها الآن. ننصح المطوّرين بتنفيذ طريقة inspectableProperties() في ModifierNodeElement إذا أرادوا عرض سمات المُعدِّل للأدوات. (Ib3236)

إصلاح الأخطاء

  • لقد أصلحنا خطأ في مستندات التعليقات التوضيحية WearPreview*. (Id526d)

الإصدار 1.4.0-alpha02

7 شباط (فبراير) 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-alpha02. يحتوي الإصدار 1.4.0-alpha02 على هذه المراجعات.

إصلاح الأخطاء

  • أصلحنا خطأ في ميزة التمرير السريع للكشف عن المحتوى، حيث كان من الممكن التفاعل مع إجراء تم تنفيذه على عنصر معيّن (وإلغاؤه) من خلال بدء التمرير السريع لعنصر آخر.(Ide059)
  • لقد عدّلنا ListHeader للسماح بتعديل الارتفاع عندما تحتاج المحتوى إلى ارتفاع إضافي لاستيعاب أحجام الخطوط الكبيرة. (I7290c، b/251166127)

الإصدار 1.4.0-alpha01

24 كانون الثاني (يناير) 2024

تم إصدار androidx.wear.compose:compose-*:1.4.0-alpha01. يحتوي الإصدار 1.4.0-alpha01 على هذه المراجعات.

الميزات الجديدة

  • أضفنا صورة متحركة للدخول إلى SwipeDismissableNavHost لتسهيل الانتقالات داخل التطبيق.(cfeb79a)
  • يظهر الرمز PositionIndicator الآن تلقائيًا عند عرض شاشة لأول مرة. تم إجراء هذا التغيير للمساعدة في استيفاء إرشادات جودة Wear. ويعني ذلك أنّه يجب تعديل اختبارات لقطات الشاشة على الشاشات التي تتضمّن PositionIndicator، لأنّ PositionIndicator لم يكن معروضًا في السابق. (419cef7)

تغييرات واجهة برمجة التطبيقات

  • أضفنا واجهة برمجة تطبيقات جديدة لواجهة برمجة التطبيقات ripple API في مكتبتَي wear:compose-material وwear:compose-material3، وهي تحلّ محل واجهة برمجة التطبيقات rememberRipple التي تم إيقافها نهائيًا. تضيف هذه الطريقة أيضًا CompositionLocal مؤقتًا، LocalUseFallbackRippleImplementation، لإعادة مكونات Material إلى استخدام واجهات برمجة التطبيقات rememberRipple/RippleTheme التي تم إيقافها نهائيًا. ستتم إزالة هذه الميزة في الإصدار الثابت التالي، وهي مخصّصة فقط لمساعدة المستخدمين في نقل البيانات مؤقتًا في الحالات التي يوفّرون فيها RippleTheme مخصّصًا. يُرجى الانتقال إلى developer.android.com للحصول على معلومات حول نقل البيانات ومزيد من المعلومات الأساسية حول هذا التغيير. (af92b21)
  • عدّلنا السمة ColorScheme لتصبح غير قابلة للتغيير، ما يجعل تعديلات الألوان الفردية أقل فعالية، ولكنّه يجعل الاستخدام الأكثر شيوعًا للألوان أكثر فعالية. ويعود سبب هذا التغيير إلى أنّ معظم التطبيقات لن تتضمن تغيير ألوان فردية كحالة استخدام رئيسية. لا يزال هذا ممكنًا، ولكنّه سيؤدي إلى إعادة التركيب أكثر من ذي قبل، ما يؤدي بدوره إلى تقليل عدد الاشتراكات في الحالة بشكل كبير من خلال كل الرمز البرمجي للمواد، وسيؤثّر في تكلفة الإعداد وتكلفة وقت التشغيل لعدد أكبر من حالات الاستخدام العادية. (f5c48b7)
  • تم تعديل مكوّنات Wear material وWear material3 التي تعرض MutableInteractionSource في واجهة برمجة التطبيقات لتعرض الآن MutableInteractionSource قابلاً للتغيير إلى قيمة فارغة. ما مِن تغييرات دلالية هنا: يعني تمرير القيمة null أنّك لا تريد رفع MutableInteractionSource، وسيتم إنشاؤه داخل المكوّن إذا لزم الأمر. يؤدي التغيير إلى القيمة null إلى عدم تخصيص بعض المكوّنات MutableInteractionSource مطلقًا، كما يسمح للمكوّنات الأخرى بإنشاء مثيل بشكل كسول فقط عند الحاجة، ما يؤدي إلى تحسين الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدم MutableInteractionSource الذي ترسله إلى هذه المكوّنات، ننصحك بإرسال قيمة فارغة بدلاً من ذلك. وننصحك أيضًا بإجراء تغييرات مشابهة في مكوّناتك. (f8fa920)
  • لقد عدّلنا rememberExpandableState لحفظ الحالة القابلة للتوسيع. ويضمن ذلك تخزين البيانات عند الانتقال إلى شاشة أخرى واستعادتها عند العودة إلى الشاشة الأصلية. (5c80095)

إصلاح الأخطاء

  • لقد عدّلنا إعداد ReduceMotion لاستخدام مستمع يراعي دورة الحياة. (7c6b122)
  • لقد عدّلنا ملف "المستمع" في TouchExplorationStateProvider ليكون على دراية بالحالة (be28b01).
  • لقد أزلنا طبقة materialcore لتطبيق CompactButton لتحسين الأداء (25db8e9).
  • لقد جعلنا BasicSwipeToDismissBox أكثر ثباتًا في ما يتعلّق بموضع NaN لتجنّب حدوث استثناءات (b983739).
  • لقد عدّلنا BasicSwipeToDismissBox لضمان أن تكون قيم ألفا ضمن النطاق 0,1.
  • أصلحنا خطأ في ToggleButton وSplitToggleButton وCheckbox وSwitch وRadioButton حتى لا تتكرّر إشعارات تسهيل الاستخدام (في السابق، كانت الأدوار الدلالية مكرّرة) (d11eeb7)

الإصدار 1.3

الإصدار 1.3.1

3 نيسان (أبريل) 2024

تم إصدار androidx.wear.compose:compose-*:1.3.1. يتضمّن الإصدار 1.3.1 عمليات الربط هذه.

إصلاح الأخطاء

  • أصلحنا خطأ في ميزة التمرير السريع للكشف عن المحتوى، حيث كان من الممكن التفاعل مع إجراء تم تنفيذه على عنصر معيّن (وإلغاؤه) من خلال بدء التمرير السريع لعنصر آخر. (Ide059)

الإصدار 1.3.0

24 كانون الثاني (يناير) 2024

تم إصدار androidx.wear.compose:compose-*:1.3.0. يحتوي الإصدار 1.3.0 على عمليات الربط هذه.

التغييرات المهمة منذ الإصدار 1.2.0

  • أصبحت فئة SwipeToDismissBoxState وعدد SwipeToDismissValue ودالة التوسيع Modifier.edgeSwipeToDismiss جزءًا من حزمة androidx.wear.compose.foundation الآن، بدلاً من حزمة androidx.wear.compose.material. تتيح لك هذه البنية المعدَّلة تنفيذ معالجة الإيماءات بشكل مستقل عن اعتبارات التصميم الأخرى. يتم التعامل مع سير عمل Material Design بشكل منفصل، مثل تطبيق ألوان من تصميم تم ضبطه.
  • تساعدك فئة SwipeToRevealCard وفئة SwipeToRevealChip في تنفيذ recommended swipe-to-reveal guidance. توضّح فئة SwipeToRevealSample كيفية استخدام هذه المكوّنات.
  • في الإصدار 1.3.0-alpha02، أجرينا تغييرًا يؤدي إلى زيادة ارتفاع العنصرَين Chip وToggleChip لدعم توسيع الخط الذي يختاره المستخدم بشكل أفضل. وقد يؤدي ذلك إلى اقتطاع بعض المحتوى. لحلّ هذه المشكلة، يستخدم شكل large لرمز MaterialTheme الآن نصف قطر زاوية أكبر (26 وحدة بكسل بدلاً من 24 وحدة بكسل). يستخدم عنصرَا Chip وToggleChip نصف قطر الزاوية الجديد هذا لتجنُّب اقتصاص المحتوى في زوايا Chip وToggleChip.

    • لم يتم تغيير معظم Chips وToggleChips، نظرًا لارتفاعهما التلقائي الذي يبلغ 52 dp. ومع ذلك، يمكن أن تؤدي عناصر Chip وToggleChip التي تحتوي على عدة أسطر من نص التصنيف الأساسي أو الثانوي، أو التي تم إلغاء ارتفاعها، إلى إيقاف اختبارات لقطات الشاشة.

تغييرات إضافية

للحصول على مجموعة أكثر اكتمالاً من التغييرات التي تمّ إدخالها في الإصدار 1.3.0، يُرجى الاطّلاع على ملاحظات الإصدار beta01.

اقتراحات للتنفيذ

  • إذا كان تطبيقك يسمح للمستخدمين بالتمرير حول محتوى الشاشة، مثل تطبيق مستند إلى الخريطة، أوقِف معالجة التمرير السريع من خلال ضبط userSwipeEnabled على false في العنصر القابل للتجميع SwipeDismissableNavHost، وأدرِج زرًا يسمح للمستخدمين بالانتقال إلى الشاشة السابقة.
  • لإيقاف الصور المتحركة لمؤشر موضع أثناء الصور المتحركة للظهور والتمويه وتغيير الموضع ضمن قائمة لفّية، استخدِم عنصر SnapSpec.
  • أثناء انتظار تحميل تطبيق وسائط لمحتوى معيّن لتشغيله، يمكنك عرض عنصر Placeholder فارغ قابل للتركيب.
  • لإنشاء مجموعة من العناصر القابلة للتوسيع عند الطلب، ننصحك باستخدام فئة ExpandableStateMapping التجريبية.

الإصدار 1.3.0-rc01

10 كانون الثاني (يناير) 2024

تم إصدار androidx.wear.compose:compose-*:1.3.0-rc01. يحتوي الإصدار 1.3.0-rc01 على هذه المراجعات.

إصلاح الأخطاء

  • لقد عدّلنا الشكل الكبير MaterialTheme لاستخدام نصف قطر زاوية مستديرة يبلغ 26dp، وسيتم استخدامه الآن من قِبل Chip وToggleChip. نحتاج إلى هذا التغيير لتمكين تعديلات الارتفاع عندما تحتاج المحتوى إلى ارتفاع إضافي لاستيعاب أحجام الخطوط الكبيرة، وإلا سيؤدي شكل الملعب الحالي إلى اقتصاص بعض محتوى النص.

    النص مقطوع في الزوايا
    الشكل 1: نص مُقتطع من الزوايا
    النص غير مقطوع
    الشكل 2: النص غير مُقتطع.

    قد يؤدي هذا التغيير إلى إيقاف اختبارات لقطات الشاشة. (I2e6ae)

الإصدار 1.3.0-beta02

13 كانون الأول (ديسمبر) 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-beta02. يحتوي الإصدار 1.3.0-beta02 على هذه المراجعات.

إصلاح الأخطاء

  • لقد أعدنا حركة التمرير المقصودة في BasicSwipeToDismissBox. تم تغيير ذلك في إصدار سابق، بحيث يحدث جزء الشريحة من الانتقال عندما يكون الإصبع على الشاشة. (Id8e76)

الإصدار 1.3.0-beta01

15 تشرين الثاني (نوفمبر) 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-beta01. يحتوي الإصدار 1.3.0-beta01 على هذه المراجعات.

يشير الإصدار 1.3-beta01 من Compose لنظام التشغيل Wear OS إلى أنّ هذا الإصدار من المكتبة مكتمل الميزات وأنّ واجهة برمجة التطبيقات مقفلة (باستثناء الحالات التي تم وضع علامة عليها كإصدار تجريبي). يتضمّن الإصدار 1.3 من تطبيق Wear Compose الوظائف الجديدة التالية:

  • تم نقل SwipeToDismissBoxState وSwipeToDismissValue وModifier.edgeSwipeToDismiss من androidx.wear.compose.material إلى androidx.wear.compose.foundation، بالإضافة إلى تنفيذ ميزة التمرير السريع لإغلاق التطبيقات في BasicSwipeToDismissBox. يتيح ذلك استخدام معالجة الإيماءات الخاصة بالتمرير السريع لإغلاق المحتوى بشكل مستقل عن Material Design، على سبيل المثال من SwipeDismissableNavHost في androidx.wear.compose.navigation. لا يزال يُنصح باستخدام SwipeToDismissBox من androidx.wear.compose.material مع Material Design، لأنّه يسحب الألوان من MaterialTheme، ثم يفوّض التنفيذ المتبقّي إلى BasicSwipeToDismissBox.
  • يتيح SwipeDismissableNavHost الآن استخدام مَعلمة userSwipeEnabled جديدة حتى يمكن إيقاف معالجة التمرير السريع على الشاشات التي لا تتطلّب ذلك.
  • حسّنت BasicSwipeToDismissBox معالجة التركيز باستخدام HierarchicalFocusCoordinator.
  • تتضمّن SwipeToReveal عنصرَي SwipeToRevealCard وSwipeToRevealChip مركبَين جديدَين في Material يتّبعان إرشادات تجربة المستخدم المقترَحة لكلّ من Card وChip. تتيح هذه الطريقة أيضًا التراجع عن الإجراء الثانوي.
  • يوقف DefaultTextStyle الآن ميزة "ملء الخط" للحفاظ على اتساقها على نظام Android الأساسي.
  • يتم الآن ضبط ارتفاع Chip وToggleChip ليلائم المحتوى الذي زاد حجمه بسبب الخطوط الكبيرة لتسهيل الاستخدام.
  • تتضمّن PositionIndicator الآن مواصفات فردية للصور المتحركة الخاصة بتأثيرَي التلاشي والتلاشي التدريجي وتغيير الموضع. لأسباب تتعلّق بالأداء، ننصحك بإيقاف ميزة التلاشي وتغيير الموضع عند استخدامها مع القوائم القابلة للتنقّل.
  • توفّر ExpandableStateMapping طريقة جديدة لإنشاء ExpandableStates عند الحاجة إلى إنشائها عند الطلب وليس بالضرورة ضمن نطاق @Composable.
  • تتيح Placeholder الآن إعادة الضبط إذا لم يعُد المحتوى في الحالة "جاهز". وينطبق أيضًا خيار "تقليل الحركة" الآن على تأثير التمويه وحركة التمويه على Placeholder.

المشاكل المعروفة

  • لا يظهر الرمز PositionIndicator في البداية عند عرض شاشة لأول مرة. وننوي إجراء تغيير في الإصدار التجريبي المبكر من الإصدار 1.4 لكي يتم عرضه في البداية، ولكن بدون أي صورة متحركة.

تغييرات واجهة برمجة التطبيقات

  • أعدنا تسمية مستوى "التأسيس" SwipeToDismissBox إلى BasicSwipeToDismissBox. وهذا يجعل الاختلاف أكثر وضوحًا بين المكوّن على مستوى "العناصر الأساسية" والمكوّن على مستوى "المواد" SwipeToDismissBox. يسحب هذا الأخير الألوان من MaterialTheme لاستخدامها في الشاشات المصغّرة ويفوّض التنفيذ المتبقّي إلى BasicSwipeToDismissBox. (Ibecfc)
  • لقد وضعنا علامة على rememberExpandableStateMapping باعتبارها ميزة تجريبية ونجحنا في تحسين أداء expandableItem. (I5f6bc)
  • لقد استبدلنا فئة SwipeToRevealAction في واجهات برمجة تطبيقات بطاقات وشرائح Material SwipeToReveal بواجهة برمجة تطبيقات مستندة إلى خانة باستخدام العناصر القابلة للتجميع SwipeToRevealPrimaryAction وSwipeToRevealSecondaryAction وSwipeToRevealUndoAction. يُرجى الاطّلاع على الرمز النموذجي للحصول على أمثلة عن كيفية استخدام واجهة برمجة التطبيقات الجديدة. (Ia8943)
  • لقد استبدلنا علامات الرسوم المتحركة PositionIndicator بالمَعلمات AnimationSpec. يمكن إيقاف الصور المتحرّكة الفردية من خلال ضبط snap على أنّه AnimationSpec. (I6c523)

إصلاح الأخطاء

  • تم إصلاح خطأ ناتج عن النص المنحني المحدود عندما يكون الحجم محدودًا (I50efe).
  • لقد عالجنا عطلاً محتمَلاً في NaN مرتبطًا بالجهاز curvedComposable (I970eb).
  • لقد أعدنا عرض الصورة المتحركة التي تُبرز تغيير الموضع في PositionIndicator. (Ieb424)
  • لقد أزلنا طبقة Material-Core لشريحة Material Chip لتحسين أدائها. (If2dcb)

الإصدار 1.3.0-alpha08

18 تشرين الأول (أكتوبر) 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-alpha08. يحتوي الإصدار 1.3.0-alpha08 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أضفنا علامات فردية إلى حالات زيادة الحمل في PositionIndicator للتحكّم في الصور المتحركة المختلفة: showFadeInAnimation وshowFadeOutAnimation وshowPositionAnimation. تم إيقاف واجهة برمجة التطبيقات السابقة نهائيًا وتتم إعادة توجيه الطلبات إلى الواجهة الجديدة. لأسباب تتعلّق بالأداء واتساق تجربة المستخدم، ننصحك بإيقاف علامتَي showFadeInAnimation وshowPositionAnimation عند استخدام الرمز PositionIndicator مع قائمة قابلة للتنقّل. إذا تم استخدام PositionIndicator كمؤشر مستقل، مثلاً لتغيير مستوى الصوت، ننصحك بتفعيل جميع الرسومات المتحرّكة الثلاثة. (I44294)
  • لقد أوقفنا نهائيًا رموز Material SwipeToDismissBoxState وSwipeToDismissValue وedgeSwipeToDismiss بعد نقل وظائف التمرير السريع لإغلاق التطبيقات إلى wear.compose.foundation. يُرجى استبدالها بقيم wear.compose.foundation المكافئة. (Iee8c9)

إصلاح الأخطاء

  • لقد عدّلنا الملفات الشخصية الأساسية لمكتبات Wear Compose Foundation وMaterial وNavigation. (Idb060)
  • لقد أبطلنا تغييرًا في السلوك لـ PositionIndicator تم إدخاله في إصدار سابق من الإصدار العلني، بحيث كان PositionIndicator متحركًا عند عرض شاشة في البداية. وننوي إجراء تغيير مشابه في الإصدار التجريبي المبكر من الإصدار 1.4، بحيث يتم عرض الرمز PositionIndicator في البداية، ولكن بدون أي صورة متحركة. (I41843)
  • لقد عالجنا بعض مشاكل الأداء في PositionIndicator. (I1c654، b/302399827)
  • لقد حسّنا أداء التنفيذ التلقائي لمقدّم حالة استكشاف اللمس للاعتماد على State<Boolean> بدلاً من الحالة المشتقة. (Ieec4d)
  • لقد حدّدنا systemGestureExclusion مستطيلًا لنظام التشغيل Android 13 والإصدارات الأحدث. (Ib1f4b)

الإصدار 1.3.0-alpha07

‫4 أكتوبر 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-alpha07. يحتوي الإصدار 1.3.0-alpha07 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أضفنا علامات فردية إلى PositionIndicator للتحكّم في الصور المتحركة المختلفة: showFadeInAnimation وshowFadeOutAnimation وshowPositionAnimation. تم إيقاف واجهة برمجة التطبيقات السابقة نهائيًا وتتم إعادة توجيه الطلبات إلى الواجهة الجديدة. لأسباب تتعلّق بالأداء واتساق تجربة المستخدم، ننصحك بإيقاف علامتَي showFadeInAnimation وshowPositionAnimation عند استخدام الرمز PositionIndicator مع قائمة قابلة للتنقّل. إذا تم استخدام PositionIndicator كمؤشر مستقل، مثلاً لتغيير مستوى الصوت، ننصحك بتفعيل جميع الرسومات المتحرّكة الثلاثة. (Ia2d63)

إصلاح الأخطاء

  • أجرينا تحسينات على ميزة التمرير السريع للكشف عن الحركة من خلال إضافة صورة متحركة للاختفاء إلى نص الإجراء الأساسي، وإخفاء الإجراء الثانوي/تغيير مقياس الرمز عند التمرير السريع للكشف عن المحتوى بالكامل. (Ib7223)
  • ننصحك بتوفير إمكانية الوصول إلى إجراءات التمرير السريع للكشف، وقد أضفنا إجراءات مخصّصة لسهولة الاستخدام إلى نماذج ميزة التمرير السريع للكشف. (I42224)
  • لقد حسّنا أداء SwipeToDismissBox، بما في ذلك إعادة التنظيم لضمان عدم بدء المنطق الأولي عملية إعادة تركيب. يتم الآن رسم الرمز SwipeToDismissBox بحجم ملء الشاشة. (Ie0aa2)
  • لقد أصلحنا خطأً كان يؤدي إلى اختفاء الرمز PositionIndicator بشكل غير صحيح. (I2091a)
  • تحسين أداء PositionIndicator من خلال تحسين عمليات إعادة التركيب تمت إضافة علامات جديدة للتحكّم في الصور المتحركة (fadeIn وfadeOut وpositionChange) لاحقًا (راجِع التغييرات في واجهة برمجة التطبيقات) (Ifac7d).
  • أضفنا اختبارات Microbenchmark لـ PositionIndicator (Idf875).

الإصدار 1.3.0-alpha06

20 أيلول (سبتمبر) 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-alpha06. يحتوي الإصدار 1.3.0-alpha06 على هذه المراجعات.

إصلاح الأخطاء

  • أضفنا إمكانية استخدام Modifier.edgeSwipeToDismiss مع SwipeToReveal. (I95774، b/293444286)
  • أضفنا عيّنات للمواد SwipeToRevealChip وSwipeToRevealCard. (Ieb974)
  • لقد عدّلنا الملفات الشخصية الأساسية لمكتبتَي Wear Compose Foundation وMaterial. (I1dd1f)

الإصدار 1.3.0-alpha05

6 أيلول (سبتمبر) 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-alpha05. يحتوي الإصدار 1.3.0-alpha05 على هذه المراجعات.

إصلاح الأخطاء

  • أضفنا ميزة المناولة في ميزة "السحب للكشف" كي لا يمكن تمرير سوى عنصر واحد في المرة الواحدة. (I3cd7a)
  • تم تحسين مستندات ScalingLazyColumnDefaults لمطابقة سلوكها الفعلي بشكل أفضل. (I886d3)

الإصدار 1.3.0-alpha04

23 آب (أغسطس) 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-alpha04. يحتوي الإصدار 1.3.0-alpha04 على هذه المراجعات.

الميزات الجديدة

  • أضفنا ميزة التراجع إلى الإجراء الثانوي للرمز SwipeToReveal. (I7a22d)

تغييرات واجهة برمجة التطبيقات

  • أضِف HorizontalPageIndicator في مكتبة Wear Material3. (Ifee99)
  • تم تعديل أدوات معاينة ميزة "الكتابة السريعة" على Wear لاستخدام مكتبة androidx.wear.tooling.preview. (Ib036e)

إصلاح الأخطاء

  • تم إصلاح خلل في الأزرار المستديرة حيث لم يتم ربط عوامل التعديل بشكل صحيح. (I5e162)

الإصدار 1.3.0-alpha03

9 آب (أغسطس) 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-alpha03. يحتوي الإصدار 1.3.0-alpha03 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أضفنا عنصرَين جديدَين قابلَين للتجميع في Material لتنفيذ SwipeToReveal باستخدام البطاقات والرموز. تلتزم هذه العناصر المجمّعة بإرشادات تجربة المستخدم المقترَحة بشأن المكوّن، وتسهّل على المطوّرين تنفيذ SwipeToReveal باستخدام المكوّنات الحالية في Wear Material. (I7ec65)
  • لقد فعّلنا التعليقات التوضيحية FloatRange كقيود لواجهة برمجة التطبيقات، والتي سبق أن تم ذكرها في التعليقات. (Icb401)

إصلاح الأخطاء

  • لقد نقلنا منطق الانتقال إلى الأعلى أو الأسفل الأولي في ScalingLazyColumn إلى onGloballyPositioned(). (Ic90f1)
  • نستخدم الآن drawWithCache في PositionIndicator وProgressIndicator وSelectionControls لتحسين عمليات تخصيص الضربات. (I5f225، b/288234617)
  • أصلحنا مشكلة ظهور علامة مربّع الاختيار في الحالات المتوقفة. (Ib25bf)
  • لقد عدّلنا Placeholder للسماح بإعادة الضبط لعرض العنصر النائب إذا لم يعُد المحتوى في حالة "جاهز". (Ibd820)
  • لقد أجرينا بعض الإصلاحات على اختبارات Placeholder التي تتضمّن أخطاء (Idb560).

الإصدار 1.3.0-alpha02

26 تموز (يوليو) 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-alpha02. يحتوي الإصدار 1.3.0-alpha02 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • لقد قدّمنا ExpandableStateMapping، وهي طريقة جديدة لإنشاء ExpandableStates، وذلك في الحالات التي يجب فيها إنشاءها عند الطلب، وليس بالضرورة ضمن نطاق @Composable (Iff9e0).
  • تم نقل SwipeToDismissBox من حزمة androidx.wear.compose.material إلى حزمة androidx.wear.compose.foundation. (I275fb)
  • تم تعديل ملفات واجهة برمجة التطبيقات لإضافة تعليقات توضيحية حول إخفاء التوافق. (I8e87a، b/287516207)
  • لقد جعلنا ثوابت الارتفاع لعناصر Chip وCompactChip وToggleChip علنية (Idbfde).
  • لقد جعلنا الحشو الأفقي والعمودي لـ Chip وCompactChip متاحَين للجميع. (Ieeaf7)
  • تمت إضافة وظيفة لإيقاف معالجة التمرير السريع في SwipeDismissableNavHost من خلال المَعلمة الجديدة userSwipeEnabled. (Id2a0b، b/230865655)
  • لقد عدّلنا مكتبة التنقّل في ميزة "الكتابة الصوتية" على Wear OS لاستخدام SwipeToDismissBox الجديد من Wear Compose Foundation. (I4ff8e)

إصلاح الأخطاء

  • لقد أصلحنا خللًا في ترتيب z حيث لم يعرِض expandedItem المحتوى الصحيح بعد النقر على سلوك الزر عندما يكون لديه أزرار. (I1899d، b/289991514)
  • تحسين معالجة التركيز في SwipeToDismissBox (وبالتالي SwipeDismissableNavHost) باستخدام HierarchicalFocusCoordinator (I45362، b/277852486)
  • لقد أجرينا إصلاحًا على معالجة الإيماءات في SwipeableV2 . (I89737)
  • لقد أكملنا الملفات الشخصية الأساسية لإصدار 1.2. (Id5740)
  • بعد نقل SwipeToDismissBox إلى Foundation، يتم الآن توجيه تنفيذ Material SwipeToDismissBox إلى Foundation وتوفير قيم الألوان التلقائية من تصميمه.(If8451)
  • أضفنا دلالات العناوين إلى ListHeader. (Ic5420)
  • سيتم الآن تعديل ارتفاع Chip وToggleChip لاستيعاب المحتوى الذي زاد حجمه بسبب الخطوط الكبيرة لتسهيل الاستخدام، عند الحاجة. (Iaf302)
  • تم إصلاح خطأ في الدور الدلالي للمنطقة القابلة للنقر في SplitToggleChip، وذلك لتحسين إمكانية الوصول. (Ieed3a)
  • يؤدي الآن خيار "تقليل الحركة" إلى إيقاف تأثير التمويه وحركة التمويه على العناصر النائبة. (I91046)
  • يتيح لك الآن النقر بشكل متكرر على Stepper وInlineSlider مع الضغط مع الاستمرار، ما يتيح لك زيادة أو خفض قيمة Stepper وInlineSlider بسرعة من خلال الضغط مع الاستمرار على الزرَّين + أو -. (I27359)

الإصدار 1.3.0-alpha01

‫21 حزيران (يونيو) 2023

تم إصدار androidx.wear.compose:compose-*:1.3.0-alpha01. يحتوي الإصدار 1.3.0-alpha01 على هذه المراجعات.

إصلاح الأخطاء

  • كما أعلنّا في 1.2.0-alpha07 و1.2.0-alpha10، سنغيّر الآن DefaultTextStyle لإيقاف ميزة "ملء الخط" لتكون متّسقة على نظام Android الأساسي. سيؤدي ذلك إلى معالجة بعض حالات اقتصاص النص باستخدام أحجام الخطوط الكبيرة، وقد يؤثر ذلك أيضًا في تصاميم الشاشة، لذا يجب تعديل اختبارات لقطات الشاشة. على سبيل المثال، نرى هنا اقتطاعًا للنص (Ic6a86).
نص مقطوع بحجم خط كبير
الشكل 1: تم اقتصاص النص.
  • لم يعُد هذا الخيار متوفّرًا عند إيقاف ميزة "ملء المساحة بالخط":
عدم اقتطاع النص مع استخدام حجم خط كبير
الشكل 2: النص غير مُقتطع.
  • عدّلنا wear.compose.foundation ليصبح تابعًا لواجهة برمجة التطبيقات wear.compose.material (I72004، b/285404743).
  • لقد أصلحنا خطأ في SwipeToDismissBox. يتم الآن تمرير مفاتيح الخلفية والمحتوى إلى مجموعة التذكر حتى يتم إنشاء عوامل تعديل جديدة عند تغيير المحتوى أو الخلفية. (Ib876c، b/280392104)
  • عدّلنا TimeText لاستخدام اللغة عند اختيار تنسيق الوقت بنظام 12 أو 24 ساعة. (If4a3d)
  • لقد أصلحنا مشكلة عدم الاتساق في المَعلمات التلقائية SwipeToDismissBox contentScrimColor. (I2d70f)
  • لقد أجرينا تحسينات على معالجة الصور المتحركة في SwipeToReveal. (I28fb7)

المشاكل المعروفة

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

الإصدار 1.2

الإصدار 1.2.1

18 تشرين الأول (أكتوبر) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.1. يحتوي الإصدار 1.2.1 على عمليات الربط هذه.

إصلاح الأخطاء

  • تم إصلاح خلل كان يؤدي إلى اختفاء PositionIndicator بشكل غير صحيح. (7a167f)

الإصدار 1.2.0

9 آب (أغسطس) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0. يحتوي الإصدار 1.2.0 على هذه المراجعات.

التغييرات المهمة منذ الإصدار 1.1.0

الإصدار 1.2.0-rc01

26 تموز (يوليو) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-rc01. يحتوي الإصدار 1.2.0-rc01 على هذه المراجعات.

إصلاح الأخطاء

  • لقد أكملنا الملفات الأساسية للإصدار 1.2 (Id5740).

الإصدار 1.2.0-beta02

7 حزيران (يونيو) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-beta02. يحتوي الإصدار 1.2.0-beta02 على هذه المراجعات.

الميزات الجديدة

  • أضفنا المتغيّر التجريبي الجديد LocalReduceMotion CompositionLocal الذي يوقف التكبير والتصغير والتلاشي في ScalingLazyColumn. (I58024)

إصلاح الأخطاء

  • لقد عدّلنا الملفات الشخصية الأساسية لـ Wear Compose Foundation ومكتبات المواد(I4725d).
  • لقد أصلحنا مشكلة عدم اتساق القيم التلقائية لمَعلمتَي SwipeToDismissBox contentScrimColor (I2d70f).
  • لقد أصلحنا القيمة التلقائية DefaultTextStyle المستخدَمة في الإعداد IncludeFontPadding (I737ed).

الإصدار 1.2.0-beta01

24 أيار (مايو) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-beta01. يحتوي الإصدار 1.2.0-beta01 على هذه المراجعات.

الميزات الجديدة في تطبيق Compose لنظام التشغيل Wear OS 1.2

يشير الإصدار 1.2-beta01 من Compose لنظام التشغيل Wear OS إلى أنّ هذا الإصدار من المكتبة مكتمل الميزات وأنّ واجهة برمجة التطبيقات مقفلة (باستثناء الحالات التي تم وضع علامة عليها كإصدار تجريبي). يتضمّن تطبيق Wear Compose 1.2 الوظائف الجديدة التالية:

  • expandableItem وexpandableItems هما مكوّنان جديدان من Foundation يتيحان توسيع العناصر ضمن ScalingLazyColumn. استخدِم expandableItem لعنصر واحد قابل للتوسيع، مثل نص يتضمّن عددًا من الأسطر. استخدِم expandableItems لمجموعة من العناصر القابلة للتوسيع وexpandableButton لتبسيط إنشاء زر يتم تصغيره بعد توسيع المحتوى.
  • HierarchicalFocusCoordinator - تتيح هذه الميزة التجريبية للتركيب وضع علامة على الأشجار الفرعية للتركيب على أنّها مفعَّلة أو غير مفعَّلة.
  • Picker - تتضمّن واجهة برمجة التطبيقات الآن userScrollEnabled للتحكّم في ما إذا كان أداة الاختيار نشطة للمستخدمين الذين ينتقلون للأعلى أو للأسفل.
  • PickerGroup: عنصر تركيبي جديد لمعالجة أدوات اختيار متعددة معًا وتتولى هذه الفئة التركيز بين أدوات الاختيار باستخدام واجهة برمجة التطبيقات HierarchicalFocusCoordinator API وتفعِّل وضع عناصر أداة الاختيار في المنتصف تلقائيًا.
  • Placeholder - أجرينا تعديلات على تأثيرَي التمويه و"المحو". يتم الآن تطبيق تأثير التمويه على الفور عندما يصبح المحتوى جاهزًا.
  • ScalingLazyColumn - لقد نقلنا ScalingLazyColumn والفصول المرتبطة به من androidx.wear.compose.material.ScalingLazyColumn إلى androidx.wear.compose.foundation.lazy.ScalingLazyColumn. يُرجى التحديث لاستخدام الإصدار Foundation.Lazy.
  • SwipeToReveal - لقد أضفنا ميزة تجريبية تتيح التمرير سريعًا للكشف عن المحتوى كطريقة للوصول إلى الإجراءات الثانوية، بالإضافة إلى نمط "الضغط مع الاستمرار" الحالي.
  • Stepper - تمّ الآن إضافة وظيفته الزائدة باستخدام مَعلمة enableRangeSemantics إضافية لتسهيل إيقاف الدلالات التلقائية للنطاق.
  • Previews - أضفنا التعليقات التوضيحية المخصّصة التالية لمعاينة العناصر القابلة للتجميع على شاشات Wear: WearPreviewSmallRound لمعاينة العنصر القابل للتجميع على جهاز دائري صغير، وWearPreviewLargeRound لمعاينة العنصر القابل للتجميع على جهاز دائري كبير، وWearPreviewSquare لمعاينة العنصر القابل للتجميع على جهاز مربّع. بالإضافة إلى ذلك، يمكنك استخدام التعليقات التوضيحية التالية وتلك التي تتيح معاينة متعددة: WearPreviewFontScales لمعاينة العناصر القابلة للتجميع على جهاز Wear بتنسيقات خطوط متعددة، بينما يمكنك استخدام WearPreviewDevices لمعاينة العناصر القابلة للتجميع على أجهزة Wear مختلفة.
  • لقد أضفنا DefaultTextStyle إلى Wear Compose لضبط السمة PlatformTextStyle.includeFontPadding تلقائيًا على true (هذا هو الإعداد الحالي). سيتيح لنا ذلك مزامنة إيقاف تعبئة النص تلقائيًا مع مكتبات Compose في إصدار أوّلي من الإصدار 1.3. يُرجى الاطّلاع على 1.2.0-alpha10 لمزيد من المعلومات.

الميزات الجديدة

  • لقد أضفنا ميزة تجريبية لإيقاف التمويه والرسوم المتحركة عند تفعيل الإعداد reduce_motion. (I58024)

إصلاح الأخطاء

  • مستندات محسّنة لـ angularWidthDp في CurvedSize.kt (Iab75c)
  • يسجِّل SwipeDismissableNavHost الآن تحذيرًا يوضِّح الأسباب المحتمَلة لخلوّ "المخطّط الاحتياطي". ويتم ذلك لمنع الأعطال غير المتوقّعة الناتجة عن IllegalArgumentException التي تمّ طرحها عندما كانت الحزمة الخلفية فارغة. (I04a81، b/277700155)

الإصدار 1.2.0-alpha10

10 أيار (مايو) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha10. يحتوي الإصدار 1.2.0-alpha10 على هذه المراجعات.

الميزات الجديدة

  • لقد أضفنا ميزة التمرير السريع للكشف عن المحتوى كطريقة للوصول إلى الإجراءات الثانوية. ويكمل هذا النمط نمط "الضغط مع الاستمرار"، وهو الطريقة الحالية التي يمكن للمستخدم من خلالها إظهار الإجراءات الثانوية (المختلفة). (I60862)

تغييرات واجهة برمجة التطبيقات

  • أضفنا RevealScope إلى العناصر القابلة للتجميع للإجراءات في SwipeToReveal، ما يتيح الوصول إلى القيمة المرجعية التي يتم فيها عرض إجراءات إضافية. (I3fd56)

إصلاح الأخطاء

  • تم إصلاح مشكلة عدم توفّر Wear API 33 على الإصدار ScalingLazyColumn بعد الإصدار التجريبي (Ic4599).
  • أجرينا بعض التحسينات على أداء PositionIndicator لتقليل الارتباك. (I35e92)
  • لقد أصلحنا خطأ في Chip وCompactChip حيث لم يعُد يتم ضبط الدور الدلالي على Role.Button. (I93f91، b/277326264)

المشاكل المعروفة

  • لقد رصدنا خطأً في "استوديو Android" يؤدي إلى تعذُّر عرض المعاينة عند إضافة تعليقات توضيحية باستخدام @WearPreviewDevices و @WearPreviewFontScales. من المخطّط طرح حلّ لهذا الخطأ قريبًا. يُرجى العلم أنّ التعليقات التوضيحية الأخرى لميزة معاينة Wear تعمل على النحو المطلوب في الإصدار 2022.3.1 من Android Studio Giraffe والإصدارات الأحدث.

  • في الإصدار 1.2.0-alpha07، أضفنا DefaultTextStyle إلى Wear Compose، مع الحفاظ على قيمة PlatformTextStyle.includeFontPadding الحالية على true. بالنسبة إلى الخلفية، يُرجى الاطّلاع على إصلاح مساحة ملء النص في ميزة Compose. سنغيّر DefaultTextStyle لإيقاف ميزة "ملء الخط" في الإصدار التجريبي المبكر من 1.3، وذلك للحفاظ على اتساقها على نظام Android الأساسي. سيؤدي ذلك إلى معالجة بعض حالات اقتصاص النص باستخدام أحجام الخطوط الكبيرة، وقد يؤثر ذلك أيضًا في تصاميم الشاشة، لذا يجب تعديل اختبارات لقطات الشاشة. على سبيل المثال، عند استخدام أحجام الخطوط الكبيرة، يظهر النص مقطوعًا كما هو موضّح هنا:

نص مقطوع بحجم خط كبير
الشكل 1: تم اقتصاص النص.
  • لم يعُد هذا الخيار متوفّرًا عند إيقاف ميزة "ملء المساحة بالخط":
عدم اقتطاع النص مع استخدام حجم خط كبير
الشكل 2: النص غير مُقتطع.

يمكن الآن اعتماد الإعداد الجديد من خلال إلغاء الطباعة في المظهر، راجِع مثال الرمز.

الإصدار 1.2.0-alpha09

19 نيسان (أبريل) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha09. يحتوي الإصدار 1.2.0-alpha09 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • إضافة angularSizeDp إلى واجهة برمجة التطبيقات CurvedModifier لضبط العرض الزاوي في DP (I89a52)

إصلاح الأخطاء

  • لقد أصلحنا مشاكل تسهيل الاستخدام في نماذج "أداة اختيار الوقت" التجريبية(Id0eb7).

الإصدار 1.2.0-alpha08

5 نيسان (أبريل) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha08. يحتوي الإصدار 1.2.0-alpha08 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • تمت إعادة تسمية ExpandableItemsState إلى ExpandableState. (If85ea)
  • أضفنا expandableButton لتبسيط إنشاء زر يتم تصغيره عند توسيع المحتوى، كما عدّلنا أمثلة العناصر القابلة للتوسيع. (Iae309)

إصلاح الأخطاء

  • عيّنات قابلة للتوسيع محسّنة لعرض المزيد من الإمكانيات صورة متحركة معدَّلة لـ expandableItem للحفاظ على محتوى الصورة متمركزًا أثناء عرضها (I2f637)
  • تم تعديل ToggleControls لتجنُّب عمليات إعادة التركيب الإضافية عند تحريك الألوان يدويًا باستخدام State. (I5d319)

الإصدار 1.2.0-alpha07

22 آذار (مارس) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha07. يحتوي الإصدار 1.2.0-alpha07 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • لقد نقلنا مكونات العناصر القابلة للتوسيع (المُضافة في الإصدار 1.2.0-alpha06) من مادة العرض إلى العناصر الأساسية، لأنّها لم تكن تشير إلى MaterialTheme بشكل ذي صلة. (Ib0525)

إصلاح الأخطاء

  • لقد أصلحنا عطلاً حدث في شاشة تستخدم PickerGroup، وذلك من خلال التأكّد من أنّ PickerGroup يعالج التركيز بشكلٍ صحيح عندما لا يكون لدى أداة الاختيار التركيز. تمت أيضًا إضافة إمكانية الانتقال للأعلى أو للأسفل في شريط البحث السريع في نماذج "أداة الاختيار". (If8c19)
  • لقد أجرينا تحسينات على انتقالات الحوار، وأصبح الآن انتقال المقدمة أكثر سلاسة ليتناسب مع انتقال الخاتمة. (Ib5af9)
  • أضفنا DefaultTextStyle إلى Wear Compose لضبط السمة PlatformTextStyle.includeFontPadding تلقائيًا على true (هذا هو الإعداد الحالي). سيتيح لنا ذلك مزامنة إيقاف حشوة الخط تلقائيًا مع مكتبات Compose في المستقبل. اطّلِع على (إصلاح حشوة الخط في ميزة "الإنشاء") للتعرّف على الخلفية. (I2aee8)
  • تمّ التراجع عن الاعتماد على معاينة UpsideDownCake من خلال ميزة "إنشاء النشاط" التي كانت تمنع نشر التطبيقات على "متجر Google Play". (I6443d)

الإصدار 1.2.0-alpha06

8 آذار (مارس) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha06. يحتوي الإصدار 1.2.0-alpha06 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أضِف المكوّن CurvedBox الذي يضع المكوّنات فوق بعضها في العالم المنحني. (I29200)
  • تمّت إضافة عناصر قابلة للتوسيع: مكوّنان جديدان للسماح إما بمجموعة من العناصر القابلة للتوسيع في ScalingLazyColumn أو عنصر واحد قابل للتوسيع، مثل النص الذي يتم فيه توسيع عدد الأسطر. (I95dd5)
  • أضفنا التعليقات التوضيحية المخصّصة التالية لمعاينة العناصر القابلة للتجميع على شاشات Wear: WearPreviewSmallRound لمعاينة العنصر القابل للتجميع على جهاز دائري صغير، وWearPreviewLargeRound لمعاينة العنصر القابل للتجميع على جهاز دائري كبير، وWearPreviewSquare لمعاينة العنصر القابل للتجميع على جهاز مربّع. بالإضافة إلى ذلك، يمكنك استخدام التعليقات التوضيحية التالية وتلك التي تتيح معاينة متعددة: WearPreviewFontScales لمعاينة العناصر القابلة للتجميع على جهاز Wear بتنسيقات خطوط متعددة، بينما يمكنك استخدام WearPreviewDevices لمعاينة العناصر القابلة للتجميع على أجهزة Wear مختلفة. لاستخدام هذه المعاينات، يجب استخدام أحدث إصدار من Android Studio (Giraffe Canary 6) أو الإصدارات الأحدث. يُرجى العِلم أنّه إذا لم تكن هذه التعليقات التوضيحية مناسبة لغرضك، سيظل بإمكانك استخدام ميزة "المعاينة"، كما تتيح لك إجراء المزيد من عمليات التخصيص من خلال المَعلمات. (I397ff)
  • لقد وضعنا علامة على HierarchicalFocusCoordinator باعتبارها ميزة تجريبية، ولكننا نعتبرها مرشحة لنقلها إلى مكتبات Compose الأساسية، نظرًا لقابليتها للتطبيق على نطاق واسع. (I3a768)

إصلاح الأخطاء

  • تم إصلاح خطأ في HierarchicalFocusCoordinator، فعند تغيير متغير lambda الذي تم تمريره للمَعلمة focusEnabled، يتم الآن استخدام المتغير الجديد بشكل صحيح. (Icb353)
  • لقد عدّلنا اللون التلقائي للمحتوى غير المرئي إلى "خلفية" عند استخدام الألوان الأساسية كخلفية في Button وCompactButton وChip وCompactChip وToggleButton. ويؤدي ذلك إلى تحسين التباين لتسهيل الاستخدام. (I527cc)

الإصدار 1.2.0-alpha05

22 شباط (فبراير) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha05. يحتوي الإصدار 1.2.0-alpha05 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • تم تعديل واجهة برمجة التطبيقات PickerGroup للسماح بنشر الحد الأدنى من القيود على العنصر القابل للتجميع اختياريًا. عند ضبطها على "صحيح"، سيتم السماح بالحد الأدنى من القيود التي تم تمريرها من العنصر القابل للإنشاء الرئيسي في PickerGroup. في حال ضبطها على "خطأ"، ستعيد PickerGroup ضبط الحد الأدنى للقيود. (I3e046)
  • أضفنا animateScrollToOption إلى Picker API لإتاحة استخدام الصور المتحركة الآلية لخيار محدّد في Picker (I6fe67).

إصلاح الأخطاء

  • لقد عدّلنا HorizontalPageIndicator لتتوافق مع التنسيقات من اليمين إلى اليسار. (Ia4359)
  • تمت إضافة اختبارات لقطات الشاشة للتنسيق من اليمين إلى اليسار في HorizontalPageIndicator (I6fbb8)
  • تمت إضافة المزيد من الاختبارات إلى SwipeDismissableNavHostTest التي تستخدم TestNavHostController (I61d54)

الإصدار 1.2.0-alpha04

8 شباط (فبراير) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha04. يحتوي الإصدار 1.2.0-alpha04 على هذه المراجعات.

الميزات الجديدة

  • PickerGroup لمعالجة أدوات اختيار متعددة معًا باستخدام Focus API ويعالج التركيز بين أدوات الاختيار المختلفة، ويفعّل وضع أدوات الاختيار في المنتصف تلقائيًا استنادًا إلى المَعلمات، ويسمح للمطوّرين بتغيير التركيز بين أدوات الاختيار المختلفة أثناء معالجة الأحداث من المجموعة. في وضع TalkBack، يعالج الزر PickerGroup تركيز TalkBack من خلال نقل التركيز إلى أداة الاختيار المحدّدة من المجموعة. (I60840)

تغييرات واجهة برمجة التطبيقات

  • أضفنا طريقة تحميل زائدة إلى Stepper باستخدام مَعلمة enableRangeSemantics إضافية لتسهيل إيقاف الدلالات التلقائية للنطاق (Ia61d4).

إصلاح الأخطاء

  • السماح بتضمين ScalingLazyColumn في صفحة يمكن التمرير فيها أفقيًا (Iec3f8، b/266555016)
  • تحسين ملفات kdocs الخاصة بميزة Stepper وتنظيف اختبارات StepperTest (Ic118e)
  • تم تعديل الإصدار androidx.navigation من الإصدار 2.5.3 (If58ed)

الإصدار 1.2.0-alpha03

25 كانون الثاني (يناير) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha03. يحتوي الإصدار 1.2.0-alpha03 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • لقد نقلنا ScalingLazyColumn (والصفوف المرتبطة) من androidx.wear.compose.material.ScalingLazyColumn إلى andrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn (اطّلِع على هذا المثال لمعرفة كيفية نقل البيانات). يتطابق هذا الموقع الجديد بشكلٍ أكبر مع الموقع الجغرافي لـ compose.foundation.lazy.LazyColumn، وهو أكثر ملاءمةً لأنّه ليس مكوّنًا متحيّزًا في Material. نُجري هذا التغيير الآن استعدادًا لإطلاق مكتبة Material3 الجديدة، والتي سنعمل عليها بالتوازي مع مكتبة Material الحالية. (I060e7)

التغييرات التالية هي جزء من نقل ScalingLazyColumn من Material إلى Foundation.Lazy:

  • تم إيقاف واجهات برمجة التطبيقات PositionIndicator التي تستهدف Material ScalingLazyColumn نهائيًا، لذا يُرجى التحديث إلى Foundation.Lazy ScalingLazyColumn. بالإضافة إلى ذلك، تمت إضافة حقل anchorType إلى ScalingLazyListLayoutInfo. (I29d95)
  • تم وضع علامة على ScalingLazyColumn على أنّها متوقّفة نهائيًا في حزمة Wear Compose Material (I16d34).
  • عدّلنا معدِّل ScrollAway لاستخدام ScalingLazyListState من Wear Compose Foundation.Lazy وألغينا نهائيًا التحميل الزائد الذي أخذ ScalingLazyListState من Wear Compose Material. (Ifc42c)
  • عدّلنا واجهات برمجة تطبيقات Dialog API لاستخدام ScalingLazyListState من Foundation.Lazy وألغينا التحميل الزائد الذي استخدم Material ScalingLazyListState (Ic8960).
  • لقد عدّلنا واجهات برمجة تطبيقات Picker لاستخدام ScalingParams من Foundation.Lazy وأوقفنا نهائيًا التحميل الزائد الذي استخدم Material ScalingParams. (Idc3d8)

إصلاح الأخطاء

  • لقد أصلحنا خطأً كان يتسبب في إجراء عمليات إعادة تركيب غير ضرورية في ScalingLazyListState.centerItemIndex من خلال التأكّد من أنّه لا يتم إرسال التعديلات إلا عند تغيُّر القيمة فعليًا (Ia9f38).
  • لقد تحسّن أداء SwipeToDismissBox (I3933b).
  • تمت إضافة اختبارات قياس الأداء لـ ScalingLazyColumn في Wear Compose Foundation (Ie00f9)
  • عدّلنا بعض طرق فئات ScalingLazyColumn الداخلية في Material لاستخدام نظائرها من Foundation.Lazy (I38aab).
  • لقد أصلحنا بعض المشاكل في اختبارات أداة الاختيار وأضفنا المزيد من الاختبارات للتحقّق من الانتقال للأعلى أو للأسفل مع موضع متغير (I6ac34).
  • نقلنا عروض دمج ScalingLazyColumn لتصبح تعتمد على Foundation.Lazy بدلاً من Material ScalingLazyColumn (Ic6caa).
  • أضفنا مَعلمات fromDate/toDate اختيارية إلى الإصدار التجريبي من DatePicker (I961cd).

الإصدار 1.2.0-alpha02

11 كانون الثاني (يناير) 2023

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha02. يحتوي الإصدار 1.2.0-alpha02 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • ستُجري اختبارات واجهة مستخدم Android Compose الآن عمليات مرور للتخطيط لكل لقطة عند تنفيذ اللقطات للوصول إلى وضع السكون (مثلاً من خلال waitForIdle). وقد يؤثر ذلك في الاختبارات التي تُجري تأكيدًا على لقطات فردية من الرسوم المتحرّكة للتخطيط. (I8ea08، b/222093277)
  • تمت إضافة المَعلمة minLines إلى Wear Text لضمان سلوك متّسق مع BasicText (I24874).
  • تمّ نشر CompactChipTapTargetPadding لكي يظهر في المستندات (If1e70، b/234119038).

إصلاح الأخطاء

  • إيقاف عمليات إنشاء الإصدارات المتوافقة مع أنظمة التشغيل المتعددة لحِزم wear.compose (Iad3d7)
  • حلّ مشكلة "مستندات Google" في scrollToOption (I6f9a0)
  • تم تعديل PlaceholderState.rememberPlaceholderState() لاستخدام rememberUpdatedState لكي يتم تعديل الحالة في حال كانت دالة onContentReady lambda. (I02635، b/260343754)
  • لقد أصلحنا مشكلة اهتزاز النص التي ظهرت في مكوّن Picker من خلال الاستفادة من استراتيجية الدمج الجديدة التي تمت إضافتها إلى Modifier.graphicsLayer. (I99302)
  • لقد أصلحنا خطأً كان يتسبب في وميض الشاشة في الإصدار التجريبي من DatePicker (I660bd).
  • لقد حسّنا إمكانية استخدام الإصدارات التجريبية لأدوات اختيار التاريخ والوقت على مدار 12 ساعة (I05e12).
  • عدّلنا العروض التوضيحية لأداة اختيار الوقت والتاريخ لكي لا تتأثر هذه الأداة بتغييرات RSB عند عدم اختيارها (I4aecb).

الإصدار 1.2.0-alpha01

7 كانون الأول (ديسمبر) 2022

تم إصدار androidx.wear.compose:compose-*:1.2.0-alpha01. يحتوي الإصدار 1.2.0-alpha01 على هذه المراجعات.

الميزات الجديدة

  • لقد عدّلنا وظيفة العنصر النائب التجريبي لكي يتم تطبيق تأثير "المحو" على الفور عندما يكون المحتوى جاهزًا بدلاً من الانتظار لبدء حلقة الصورة المتحركة التالية. أجرينا أيضًا بعض التعديلات على مؤثرَي التمويه والتلاشي. (I5a7f4)

تغييرات واجهة برمجة التطبيقات

  • أضفنا HierarchicalFocusCoordinatorcomposable لتفعيل وضع علامة على الأشجار الفرعية للتركيب على أنّها قيد التركيز أو غير قيد التركيز.(I827cb)
  • أضفنا سمة جديدة لإلغاء الدور الدلالي للسمة ToggleButton.(I67132)
  • لقد عدّلنا TimeTextDefaults.TimeFormat12Hours لإزالة AM/PM في TimeText. سيؤدي ذلك إلى تغيير القيمة التلقائية لمَعلمات timeSource في واجهة برمجة التطبيقات TimeText. (I1eb7f)
  • لقد وسّعنا نطاق Picker API لتحسين إمكانية الوصول إلى الشاشات التي تتضمّن أداة اختيار متعددة. تتوفّر خاصية جديدة userScrollEnabled للتحكّم في ما إذا كان أداة الاختيار نشطة للمستخدمين الذين ينتقلون للأعلى أو للأسفل. (I3c3aa)

إصلاح الأخطاء

  • لقد غيّرنا عرض الحدود التلقائي لعنصر OutlinedButton/OutlinedCompactButton من 2.dp إلى 1.dp لمطابقة مواصفات تجربة المستخدم النهائية. (Icf84d)
  • لتقليل تأثير العنصر الأول الذي تمت إضافته إلى ScalingLazyColumn فارغ يبدو أنّه يتم التمرير إليه، أضفنا autoCentering topPadding مقدّرًا عندما تكون العناصر فارغة. يحسب هذا التغيير مقدار الحشو العلوي المطلوب بافتراض عنصر أولي بارتفاع 0.dp. بالنسبة إلى ScalingLazyListAnchorType.ItemStart، سيؤدي ذلك إلى احتساب المساحة الفارغة العلوية الصحيحة، ولكن بالنسبة إلى ScalingLazyListAnchorType.ItemCenter، سيكون هذا الحساب غير صحيح لأنّه يجب معرفة ارتفاع العناصر لتحديد حجم المحتوى بشكل صحيح، ما يؤدي إلى تأثير صغير في الانتقال إلى الموضع استنادًا إلى الارتفاع الفعلي للعناصر.(I239a4)
  • عدّلنا الشاشة الباهتة للخلفية المطبّقة على الرسوم المتحركة SwipeToDismiss لتتطابق مع منصة Wear. (I9003e)
  • لقد أصلحنا معالجة PositionIndicator لـ LazyListState وScalingLazyListState لعناصر القائمة التي يبلغ حجمها 0 لتجنّب أخطاء القسمة على 0.(Ic28dd)

الإصدار 1.1

الإصدار 1.1.2

8 شباط (فبراير) 2023

تم إصدار androidx.wear.compose:compose-foundation:1.1.2 وandroidx.wear.compose:compose-material:1.1.2 وandroidx.wear.compose:compose-navigation:1.1.2. يحتوي الإصدار 1.1.2 على هذه المراجعات.

إصلاح الأخطاء

  • لقد أصلحنا خطأً كان يتسبب في إجراء عمليات إعادة تركيب غير ضرورية في ScalingLazyListState.centerItemIndex من خلال التأكّد من أنّه لا يتم إرسال التعديلات إلا عند تغيُّر القيمة فعليًا (Ia9f38).

الإصدار 1.1.1

11 كانون الثاني (يناير) 2023

تم إصدار androidx.wear.compose:compose-foundation:1.1.1 وandroidx.wear.compose:compose-material:1.1.1 وandroidx.wear.compose:compose-navigation:1.1.1. يحتوي الإصدار 1.1.1 على هذه المراجعات.

إصلاح الأخطاء

  • تم تعديل PlaceholderState.rememberPlaceholderState() لاستخدام rememberUpdatedState لكي يتم تعديل الحالة في حال كانت دالة onContentReady lambda. (I02635، b/260343754)

الإصدار 1.1.0

7 كانون الأول (ديسمبر) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0 وandroidx.wear.compose:compose-material:1.1.0 وandroidx.wear.compose:compose-navigation:1.1.0. يحتوي الإصدار 1.1.0 على عمليات الربط هذه.

التغييرات المهمة منذ الإصدار 1.0.0

الميزات الجديدة

  • لقد عدّلنا وظيفة العنصر النائب التجريبي لكي يتم تطبيق تأثير "المحو" على الفور عندما يكون المحتوى جاهزًا بدلاً من الانتظار لبدء حلقة الصورة المتحركة التالية. أجرينا أيضًا بعض التعديلات على مؤثرَي التمويه والتلاشي. (I5a7f4)

إصلاح الأخطاء

  • لقد غيّرنا عرض الحدود التلقائي لعنصر OutlinedButton/OutlinedCompactButton من 2.dp إلى 1.dp لمطابقة مواصفات تجربة المستخدم النهائية. (Icf84d)
  • لتقليل تأثير العنصر الأول الذي تمت إضافته إلى ScalingLazyColumn فارغ يبدو أنّه يتم التمرير إليه، أضفنا autoCentering topPadding مقدّرًا عندما تكون العناصر فارغة. يحسب هذا التغيير مقدار الحشو العلوي المطلوب بافتراض عنصر أولي بارتفاع 0.dp. بالنسبة إلى ScalingLazyListAnchorType.ItemStart، سيؤدي ذلك إلى احتساب المساحة الفارغة العلوية الصحيحة، ولكن بالنسبة إلى ScalingLazyListAnchorType.ItemCenter، سيكون هذا الحساب غير صحيح لأنّه يجب معرفة ارتفاع العناصر لتحديد حجم المحتوى بشكل صحيح، ما يؤدي إلى تأثير صغير في الانتقال إلى الموضع استنادًا إلى الارتفاع الفعلي للعناصر.(I239a4)
  • لقد عدّلنا الشاشة المصغّرة للخلفية المطبّقة على الرسوم المتحركة SwipeToDismiss لتتطابق مع منصة Wear.(I9003e)
  • لقد أصلحنا معالجة PositionIndicator لـ LazyListState وScalingLazyListState لعناصر القائمة التي يبلغ حجمها 0 لتجنّب أخطاء القسمة على 0.(Ic28dd)

الإصدار 1.1.0-rc01

9 تشرين الثاني (نوفمبر) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0-rc01 وandroidx.wear.compose:compose-material:1.1.0-rc01 وandroidx.wear.compose:compose-navigation:1.1.0-rc01. يحتوي الإصدار 1.1.0-rc01 على هذه المراجعات.

إصلاح الأخطاء

  • أضفنا قواعد الملف الشخصي الأساسي لـ Placeholders وScrollAway وRadioButton وSwitch وCheckbox وOutlinedButton وOutlinedCompactButton وOutlinedChip وOutlinedCompactChip. (I8249c)
  • لقد أصلحنا خطأً في Modifier.scrollAway بحيث إذا كان itemIndex المحدّد غير صالح (على سبيل المثال، إذا كان فهرس السلعة هذا خارج النطاق)، سيظلّ TimeText معروضًا. (I2137a)
  • عدّلنا الصورة المتحركة SwipeToDismissBox لتتطابق مع التنفيذ على المنصة. بعد الصورة المتحرّكة الأولية للضغط، تنزلق الشاشة الآن إلى اليمين بعد بدء عملية الإغلاق. (I41d34)
  • في إطار التحسين، عدّلنا Modifier.scrollAway لقراءة scrollState داخل كتلة القياس فقط لتجنُّب إعادة تركيب المُعدِّل بعد كل إعادة قياس. (I4c6f1)
  • أضفنا مستندات ونماذج إلى العناصر النائبة لعرض الترتيب الصحيح لسمة Modifier.placeholder وسمة Modifier.placeholderShimmer عند تطبيقهما على العنصر القابل للتجميع نفسه. (Ie96f4، b/256583229)
  • لقد غيّرنا عرض الحدود التلقائي لعنصر OutlinedCompactChip/OutlinedChip من 2.dp إلى 1.dp لمطابقة مواصفات تجربة المستخدم النهائية. (Ib3d8e)
  • لقد أصلحنا خطأً في rememberPickerState لم يتم فيه حفظ الإدخالات المعدّلة، ما أدّى إلى عدم تعديل العناصر القابلة للتجميع بعد إجراء تغييرات على الإدخالات. (I49ff6، b/255323197)
  • أجرينا بعض التعديلات على واجهة المستخدم في العناصر النائبة، وهي: 1) تغيير التدرّج المتلألئ إلى 1.5 ضعف حجم الشاشة، و2) إضافة تسهيل (منحنى bezier مكعّب) لتقدّم التلألؤ، و3) تسريع الصورة المتحركة للإزالة (250 ملي ثانية). (Id29c1)
  • لقد صحّحنا خطأ في واجهة المستخدم في تأثير wipeOff للعنصر النائب، حيث كانت الخلفيات في الشريحة والبطاقة تم محوها مبكرًا قليلاً بسبب عدم أخذ موضع المكوّن على الشاشة في الاعتبار. (I2c7cb)
  • لقد عدّلنا رسم خلفية العنصر النائب لدمج الألوان بدلاً من وضعها في طبقات كلما أمكن ذلك، وذلك لتقليل خطر دمج شفافية الطبقات المختلفة التي تم اقتصاصها من السماح للألوان الأساسية بالتداخل مع حواف خلفية العنصر النائب. (I2ea26)
  • لقد صحّحنا عملية احتساب ScalingLazyListState.centerItemIndex/centerItemOffset بحيث إذا كان هناك عنصران على جانبَي خط مركز مساحة العرض، سيتم اعتبار العنصر الأقرب هو centerItem. (I30709، b/254257769)
  • لقد صحّحنا خطأ في ScalingLazyListState.layoutInfo.visibleItemsInfo كان يُبلغ عن Offsets غير صحيحة أثناء إعداد ScalingLazyColumn. سيتم الآن عرض قائمة فارغة إلى أن تصبح جميع عناصر القائمة مرئية وتتضمّن العناصر الصحيحة. سيؤكّد ظهور ScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty() اكتمال عملية إعداد ScalingLazyColumn وظهور العناصر. (I3a3b8)

الإصدار 1.1.0-beta01

24 تشرين الأول (أكتوبر) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0-beta01 وandroidx.wear.compose:compose-material:1.1.0-beta01 وandroidx.wear.compose:compose-navigation:1.1.0-beta01. يحتوي الإصدار 1.1.0-beta01 على هذه المراجعات.

الميزات الجديدة في تطبيق Compose لنظام التشغيل Wear OS 1.1

أشار الإصدار 1.1.0-beta01 من Compose لنظام التشغيل Wear OS إلى أنّ هذا الإصدار من المكتبة مكتمل الميزات وأنّ واجهة برمجة التطبيقات مقفلة.

  • يتضمّن الإصدار 1.1 من Wear Compose الوظائف الجديدة التالية:
    • أداة الاختيار: تحسينات على أدوات تسهيل الاستخدام في أداة الاختيار لتسهيل التنقّل في شاشات أداة الاختيار المتعدّدة باستخدام تطبيقات قراءة الشاشة والوصول إلى وصف المحتوى
    • لا تُستخدَم الآن مَعلمة أداة الاختيار contentDescription إلا لخيار أداة الاختيار المحدّد، وتستخدِم سلسلة يمكن أن تحتوي على قيمة فارغة (في الإصدار السابق، كان من الضروري ضبط تعيين من الخيار إلى وصف المحتوى، ولكن تم استخدام الخيار المحدّد فقط).
    • يتم الآن محاذاة عناصر أداة الاختيار دائمًا في المنتصف، ما أدى إلى إصلاح خطأ كان يحدث عند ضبط gradientRatio على القيمة صفر، وكان له تأثير جانبي يتمثل في تغيير المحاذاة.
    • Chip/ToggleChip - عدّلنا التدرجات اللونية التلقائية لـ Chip/ToggleChip لتتوافق مع أحدث مواصفات تجربة المستخدم. تم تعديل ChipDefaults.gradientBackgroundChipColors ليبدأ من% 50 من اللون الأساسي بدلاً من %32.5.
    • Chip/ToggleChip - تمّت إضافة وظائف زائدة لتعديل أشكال الشرائح
    • Chip/Button/ToggleButton - تمت إضافة نمط جديد مخطّط للشرائح والأزرار وعناصر تركيب جديدة OutlinedChip وOutlinedButton توفّر Chip/Button شفافًا مع حدود رفيعة.
    • البطاقة: تم تعديل التدرجات اللونية التلقائية للبطاقات لتتوافق مع أحدث مواصفات تجربة المستخدم. تم تعديل CardDefaults.cardBackgroundPainter ليبدأ من% 30 من اللون الأساسي وينتهي عند% 20 من onSurfaceVariant (كان في السابق% 20 إلى% 10 من onSurfaceVariant). يتغيّر ToggleChip.toggleChipColors من تدرج خطي بنسبة% 75 من المساحة إلى% 32.5 من اللون الأساسي إلى% 0 من المساحة إلى% 50 من اللون الأساسي.
    • Button/ToggleButton - تمّت إضافة سمات لتعديل أشكال الأزرار.
    • المظهر: تم تعديل عدد من الألوان التلقائية في MaterialTheme لتحسين إمكانية الاستخدام، لأنّ الألوان الأصلية لم تكن ذات تباين كافٍ، ما أدّى إلى صعوبة تمييز المستخدمين لخلفيات الشريحة/البطاقة/الزر عن لون خلفية المظهر.
    • InlineSlider/Stepper: تمّت إضافة أدوار الأزرار لكي يتمكّن Talkback من التعرّف عليها كأزرار.
    • الهيكل: تم الآن تحديد موضع PositionIndicator وحجمه بحيث لا يشغل سوى المساحة المطلوبة. يكون ذلك مفيدًا، على سبيل المثال، إذا تمت إضافة معلومات دلالية إليه، ستحصل ميزة "الوصف الصوتي" الآن على الحدود الصحيحة للعنصر PositionIndicator على الشاشة.
    • CurvedText/TimeText - تمت إضافة Modifier.scrollAway، الذي ينقل عنصرًا عموديًا إلى أعلى الشاشة أو أسفلها استنادًا إلى حالة الانتقال (مع عمليات تحميل زائدة للعمل مع Column وLazyColumn وScalingLazyColumn). يُستخدَم ScrollAway عادةً لتحريك TimeText خارج الشاشة عندما يبدأ المستخدم في الانتقال للأعلى في قائمة العناصر.
    • CurvedText/TimeText - تمت إضافة fontFamily وfontStyle وfontSynthesis في CurvedTextStyle، ويمكن استخدامها على curvedText وbasicCurvedText
    • CurvedText/TimeText - تمت إضافة fontWeight إلى طريقة الإنشاء وطريقة النسخ في CurvedTextStyle
    • ToggleControls - تمت إضافة عناصر تحكّم متحركة في التبديل Checkbox وSwitch وRadioButton لاستخدامها مع ToggleChip وSplitToggleChip. ويمكن استخدامها بدلاً من الرموز الثابتة التي يوفّرها ToggleChipDefaults (switchIcon وcheckboxIcon وradioIcon).
    • العنصر النائب: تمت إضافة ميزة تجريبية تتيح استخدام العناصر النائبة. يتضمّن هذا التأثير ثلاثة تأثيرات مرئية مختلفة مصمّمة للعمل معًا.
    • أولاً، تأثير فرشاة خلفية العنصر النائب المستخدَم في الحاويات، مثل الشريحة والبطاقات، للرسم على الخلفية العادية أثناء انتظار تحميل المحتوى.
    • ثانيًا، مُعدِّل (Modifier.placeholder()) لرسم تطبيق مصغّر نائب على شكل ملعب فوق المحتوى الذي يتم تحميله
    • ثالثًا، تأثير مُعدِّل متدرّج/وميض (Modifier.placeholderShimmer()) يتم رسمه فوق التأثيرات الأخرى للإشارة إلى المستخدمين بأنّنا في انتظار تحميل البيانات.
      • تم تصميم كل هذه التأثيرات لتتداخل مع بعضها وتظهر وتختفي بطريقة منسّقة.
  • تم تعديل تبعيات Compose الأساسية من الإصدار 1.2 إلى الإصدار 1.3

تغييرات واجهة برمجة التطبيقات

  • يمكن الآن تحديد مَعلمات الخط (fontFamily وfontWeight وfontStyle وfontSynthesis) مباشرةً كمَعلمات لعنصر curvedText (Idc422).

إصلاح الأخطاء

  • سيعمل تطبيقَا curveText وbasicCurvedText الآن بشكل صحيح مع TalkBack (لهما عنصر ui لإنشاء الرسائل بحجم مناسب وموضع مناسب (ولكنه فارغ) مرتبط بهما، باستخدام النص كوصف للمحتوى) (I7af7c، b/210721259)
  • إصلاح خطأ في Picker عند PickerState.repeatedItems = false لإضافة إعداد صريح لمَعلمات autoCentering في ScalingLazyColumn الداخلي لـ Pickers لضمان إمكانية الانتقال إلى الخيار صفر في منتصف العرض (I8a4d7)

الإصدار 1.1.0-alpha07

5 تشرين الأول (أكتوبر) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha07 وandroidx.wear.compose:compose-material:1.1.0-alpha07 وandroidx.wear.compose:compose-navigation:1.1.0-alpha07. يحتوي الإصدار 1.1.0-alpha07 على هذه المراجعات.

الميزات الجديدة

  • أضفنا ميزة استخدام العناصر النائبة التجريبية. يتضمّن هذا التأثير ثلاثة تأثيرات مرئية مختلفة مصمّمة للعمل معًا. أولاً، تأثير فرشاة خلفية العنصر النائب المستخدَم في الحاويات، مثل الشريحة والبطاقات، للرسم فوق الخلفية العادية أثناء انتظار تحميل المحتوى. ثانيًا، مُعدِّل (Modifier.placeholder()) لرسم تطبيق مصغّر نائب على شكل ملعب فوق المحتوى الذي يتم تحميله ثالثًا، تأثير تمويه/وميض المُعدِّل (Modifier.placeholderShimmer()) الذي يتم رسمه فوق التأثيرات الأخرى للإشارة إلى المستخدمين بأنّنا في انتظار تحميل البيانات. تم تصميم كل هذه التأثيرات لتتداخل مع بعضها وتظهر وتختفي بطريقة منسقة. (I3c339)

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة رمزَي fontWeight وfontFamily وfontStyle وfontSynthesis في CurvedTextStyle، ويمكن استخدامه على curvedText وbasicCurvedText. يمكن استخدام هذه المَعلمات لتحديد الخط والأسلوب المُستخدَمَين في النص المنحني.(Iaa1a8)،(I72759)
  • تم تعديل مَعلمة الميل في Modifier.scrollAway إلى Dp للحفاظ على اتساقها مع Modifier.offset (كانت في السابق بالبكسل). تم أيضًا إعادة صياغة الرمز البرمجي على أنّه LayoutModifier لتحسين الأداء. (I9f94b)
  • كجزء من واجهة برمجة التطبيقات الجديدة لعناصر التحكّم في التبديل، تمت إعادة تسمية RadioButton’s circleColor إلى ringColor. (I28fa9)
  • أضفنا عناصر تحكّم متحركة في التبديل Checkbox وSwitch وRadioButton لاستخدامها مع ToggleChip وSplitToggleChip. ويمكن استخدامها بدلاً من الرموز الثابتة التي يوفّرها ToggleChipDefaults (switchIcon وcheckboxIcon وradioIcon). (I8a8c4)

الإصدار 1.1.0-alpha06

21 أيلول (سبتمبر) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha06 وandroidx.wear.compose:compose-material:1.1.0-alpha06 وandroidx.wear.compose:compose-navigation:1.1.0-alpha06. يحتوي الإصدار 1.1.0-alpha06 على هذه المراجعات.

الميزات الجديدة

  • أضفنا Modifier.scrollAway، الذي ينقل عنصرًا عموديًا إلى أعلى الشاشة أو أسفلها استنادًا إلى حالة الانتقال (مع عمليات تحميل زائدة للعمل مع Column وLazyColumn وScalingLazyColumn). يُستخدَم ScrollAway عادةً لإزالة TimeText من الشاشة عندما يبدأ المستخدم في الانتقال للأعلى في قائمة العناصر. (I61766)

إصلاح الأخطاء

  • تم الآن تحديد موضع PositionIndicator وحجمه بحيث لا يشغل سوى المساحة المطلوبة. يكون ذلك مفيدًا، على سبيل المثال، إذا تمت إضافة معلومات دلالية إليه، ستحصل ميزة "الوصف الصوتي" الآن على الحدود الصحيحة للعنصر PositionIndicator على الشاشة. (Ie6106، b/244409133)

الإصدار 1.1.0-alpha05

7 أيلول (سبتمبر) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha05 وandroidx.wear.compose:compose-material:1.1.0-alpha05 وandroidx.wear.compose:compose-navigation:1.1.0-alpha05. يحتوي الإصدار 1.1.0-alpha05 على هذه المراجعات.

إصلاح الأخطاء

  • تمت إضافة أدوار الأزرار إلى InlineSlider وStepper حتى يتمكّن تطبيق Talkback من التعرّف عليهما كأزرار. (Icb46c، b/244260275)
  • لقد صحّحنا الترتيب z لمؤشرات الموضع والصفحة في الإطار. ستظهر المؤشرات الآن فوق الصورة المصغرة، وبالتالي لن يتم حجبها إذا كانت متوفّرة. (Ib988f، b/244207528)

الإصدار 1.1.0-alpha04

24 آب (أغسطس) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha04 وandroidx.wear.compose:compose-material:1.1.0-alpha04 وandroidx.wear.compose:compose-navigation:1.1.0-alpha04. يحتوي الإصدار 1.1.0-alpha04 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • لقد عدّلنا عددًا من الألوان التلقائية في MaterialTheme لتحسين إمكانية الاستخدام، لأنّ الألوان الأصلية لم تكن متباينة بدرجة كافية، ما أدّى إلى صعوبة تمييز المستخدمين لخلفيات الشريحة/البطاقة/الزر عن لون خلفية المظهر. الألوان المعدَّلة هي surface(0xFF202124->0xFF303133)، وonPrimary(0xFF202124->0xFF303133)، وonSecondary(0xFF202124->0xFF303133)، وprimaryVariant(0xFF669DF6->0xFF8AB4F8)، وonError(0xFF202124->0xFF000000). على الرغم من أنّ التغييرات في الألوان دقيقة نسبيًا، إلا أنّها قد تؤثّر في اختبارات لقطات الشاشة الحالية. (81ab09)

إصلاح الأخطاء

  • إصلاح خطأ منطقي في ScalingLazyColumn قد يؤدي إلى عدم اكتمال عملية إعداد قوائم تحتوي على عدد صغير (عادةً عنصران بالضبط) من عناصر القائمة، ما يؤدي إلى شفافيتها (504347)

الإصدار 1.1.0-alpha03

10 آب (أغسطس) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha03 وandroidx.wear.compose:compose-material:1.1.0-alpha03 وandroidx.wear.compose:compose-navigation:1.1.0-alpha03. يحتوي الإصدار 1.1.0-alpha03 على هذه المراجعات.

الميزات الجديدة

  • أضفنا نمطًا جديدًا مخطّطًا لرمزَي Chips وButtons وعناصر تركيب جديدة OutlinedChip وOutlinedButton توفّر رمز Chip/Button شفافًا مع حدود رفيعة. (Id5972)

تغييرات واجهة برمجة التطبيقات

  • تمّت إضافة عمليات تحميل زائدة لتعديل أشكال الأزرار (Icccde)

إصلاح الأخطاء

  • لقد صحّحنا حجم منطقة التحكّم في التبديل في ToggleChip لأنّه لم يكن يتطابق مع مواصفات تجربة المستخدم. تتطلّب مواصفات تجربة المستخدم توفير مساحة فاصلة بحجم 4 وحدات بكسل مستقلة الكثافة بين التصنيف ومساحة رمز التحكّم في التبديل التي تبلغ 24x24 وحدات بكسل مستقلة الكثافة، ما يعطي عرضًا إجماليًا يبلغ 28 وحدات بكسل مستقلة الكثافة. ومع ذلك، يعرض التنفيذ بشكلٍ غير صحيح منطقة التحكّم في التبديل التي تبلغ 36x24.dp. يؤدي ذلك إلى إزالة 8.dp من مساحة تصنيف النص القابلة للاستخدام. ملاحظة: يمنح تصحيح الخطأ هذا مساحة إضافية لتسمية النص، وبالتالي يمكن أن يؤثر (بشكل إيجابي) في تنسيق النص الذي يتدفق خارج المساحة المحددة له. إذا كانت لديك اختبارات لقطات شاشة تتضمّن ToggleChips، قد تحتاج إلى تعديلها. (I514c8، b/240548670)

الإصدار 1.1.0-alpha02

27 تموز (يوليو) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha02 وandroidx.wear.compose:compose-material:1.1.0-alpha02 وandroidx.wear.compose:compose-navigation:1.1.0-alpha02. يحتوي الإصدار 1.1.0-alpha02 على هذه المراجعات.

الميزات الجديدة

  • لقد غيّرنا مكتبات Compose الأساسية التي تعتمد عليها مكتبة Compose لنظام التشغيل Wear OS من الإصدار 1.2.0 إلى الإصدار 1.3.0-alpha0X.

تغييرات واجهة برمجة التطبيقات

  • تمّت إضافة وظائف زائدة لتعديل أشكال الشرائح (I02e87)

إصلاح الأخطاء

  • أضفنا تأثيرًا متحركًا على مستوى ظهور الصورة المصغرة عند عرض مربّع الحوار أو إخفائه، وذلك لكي يكون متوافقًا مع تأثير التمويه المتحرك الحالي. (Ida33e)
  • أصلحنا خطأً كان يؤدي إلى حدوث عملية قسمة على صفر مع بعض سلوكيات التمرير السريع. (I86cb6)
  • تم إصلاح خطأ في ChipDefaults.childChipColor() لضمان أن يكون لون الخلفية غير المفعّل شفافًا بالكامل. (I2b3c3، b/238057342)

الإصدار 1.1.0-alpha01

29 حزيران (يونيو) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha01 وandroidx.wear.compose:compose-material:1.1.0-alpha01 وandroidx.wear.compose:compose-navigation:1.1.0-alpha01. يحتوي الإصدار 1.1.0-alpha01 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • لا تُستخدَم الآن المَعلمة contentDescription في أداة الاختيار إلّا لخيار أداة الاختيار المحدّد، وتستخدِم سلسلة يمكن أن تحتوي على قيمة فارغة (في السابق، كان من الضروري ضبط تعيين من الخيار إلى وصف المحتوى، ولكن كان يتم استخدام الخيار المحدّد فقط). (Ife6a7)
  • أجرينا تحسينات على أدوات تسهيل الاستخدام في أداة الاختيار لكي يمكن التنقّل في شاشات أداة الاختيار المتعدّدة باستخدام برامج قراءة الشاشة والوصول إلى وصف المحتوى (I64edb).

إصلاح الأخطاء

  • لقد عدّلنا قواعد الملف الشخصي الأساسي المضمّنة في مكتبة Wear Compose (I9c694).
  • لقد صححنا اتجاه التدرّج في شرائح البطاقات في وضع "التبديل من اليمين إلى اليسار". كان من أعلى اليسار إلى أسفل اليمين، والآن من أعلى اليمين إلى أسفل اليسار. (Ic2e77)
  • لقد عدّلنا التدرجات اللونية التلقائية لـ Chip/ToggleChip/Card لتتوافق مع أحدث مواصفات تجربة المستخدم. تم تعديل ChipDefaults.gradientBackgroundChipColors ليبدأ من% 50 من اللون الأساسي بدلاً من %32.5. تم تعديل CardDefaults.cardBackgroundPainter ليبدأ من% 30 من اللون الأساسي وينتهي عند% 20 من onSurfaceVariant (كان في السابق% 20 إلى% 10 من onSurfaceVariant). يتغيّر ToggleChip.toggleChipColors من تدرج خطي بنسبة% 75 من السطح إلى% 32.5 من اللون الأساسي إلى% 0 من السطح إلى% 50 من اللون الأساسي. (I43bbd)
  • أضفنا لون خلفية (MaterialTheme.color.surface) خلف Chip/ToggleChips التي تحتوي على خلفيات متدرجة لضمان ظهورها بشكل صحيح في حال استخدام لون فاتح خلفها. (Ibe1a4، b/235937657)
  • يتم الآن ضبط عناصر أداة الاختيار دائمًا على محاذاة وسطية، ما أدى إلى إصلاح خطأ كان يحدث عند ضبط gradientRatio على القيمة صفر، وكان له تأثير جانبي في تغيير المحاذاة. (I712b8)

الإصدار 1.0

الإصدار 1.0.2

7 أيلول (سبتمبر) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.2 وandroidx.wear.compose:compose-material:1.0.2 وandroidx.wear.compose:compose-navigation:1.0.2. يحتوي الإصدار 1.0.2 على عمليات الربط هذه.

إصلاح الأخطاء

  • لقد صحّحنا الترتيب z لمؤشرات الموضع والصفحة في الإطار. ستظهر المؤشرات الآن فوق الصورة المصغرة، وبالتالي لن يتم حجبها إذا كانت متوفّرة. (Ib988f، b/244207528)

الإصدار 1.0.1

24 آب (أغسطس) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.1 وandroidx.wear.compose:compose-material:1.0.1 وandroidx.wear.compose:compose-navigation:1.0.1. يحتوي الإصدار 1.0.1 على هذه المراجعات.

إصلاح الأخطاء

  • إصلاح خطأ منطقي في ScalingLazyColumn قد يؤدي إلى عدم اكتمال عملية إعداد قوائم تحتوي على عدد صغير (عادةً عنصران بالضبط) من عناصر القائمة، ما يؤدي إلى شفافيتها (076c61)

الإصدار 1.0.0

27 تموز (يوليو) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0 وandroidx.wear.compose:compose-material:1.0.0 وandroidx.wear.compose:compose-navigation:1.0.0. يحتوي الإصدار 1.0.0 على عمليات الربط هذه.

الميزات الرئيسية في الإصدار 1.0.0

  • هذا هو أول إصدار ثابت من تطبيق Compose لنظام التشغيل Wear OS (مزيد من المعلومات).
  • تستند Compose لنظام التشغيل Wear OS إلى مكتبات Compose الأساسية التي توفّر مكونات إضافية خاصة بالأجهزة القابلة للارتداء، وعمليات تنفيذ بديلة لمكونات Compose الأساسية مخصّصة للأجهزة القابلة للارتداء عند الاقتضاء.
  • للحصول على قائمة بالمكونات الرئيسية في تطبيق Wear Compose، يُرجى الاطّلاع على ملاحظات الإصدار (الإصدار التجريبي 01 من تطبيق Compose لنظام التشغيل Wear OS).

إصلاح الأخطاء

  • أضفنا تأثيرًا متحركًا على مستوى ظهور الصورة المصغرة عند عرض مربّع الحوار أو إخفائه، وذلك لكي يكون متوافقًا مع تأثير التمويه المتحرك الحالي. (Ida33e)
  • أصلحنا خطأً كان يؤدي إلى حدوث عملية قسمة على صفر مع بعض سلوكيات التمرير السريع. (I86cb6)
  • تم إصلاح خطأ في ChipDefaults.childChipColor() لضمان أن يكون لون الخلفية غير المفعّل شفافًا بالكامل. (I2b3c3، b/238057342)

الإصدار 1.0.0-rc02

22 حزيران (يونيو) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-rc02 وandroidx.wear.compose:compose-material:1.0.0-rc02 وandroidx.wear.compose:compose-navigation:1.0.0-rc02. يحتوي الإصدار 1.0.0-rc02 على هذه المراجعات.

إصلاح الأخطاء

  • لقد صحّحنا اتجاه التدرّج في "البطاقات" في الوضع "من اليمين إلى اليسار". كان الاتجاه من أعلى اليسار إلى أسفل اليمين، والآن أصبح من أعلى اليمين إلى أسفل اليسار. (Ic2e77)
  • لقد عدّلنا التدرجات اللونية التلقائية لـ Chip/ToggleChip/Card لتتوافق مع أحدث مواصفات تجربة المستخدم. تم تعديل ChipDefaults.gradientBackgroundChipColors ليبدأ من% 50 من اللون الأساسي بدلاً من %32.5. تم تعديل CardDefaults.cardBackgroundPainter ليبدأ من% 30 من المساحة الأساسية وينتهي عند% 20 من onSurfaceVariant (كان في السابق من% 20 إلى% 10 على SurfaceVariant). يتغيّر ToggleChip.toggleChipColors من تدرج خطي بنسبة% 75 من السطح إلى% 32.5 من اللون الأساسي إلى% 0 من السطح إلى% 50 من اللون الأساسي. (I43bbd)
  • أضفنا لون خلفية (MaterialTheme.color.surface) خلف Chip/ToggleChips التي تحتوي على خلفيات متدرجة لضمان ظهورها بشكل صحيح في حال استخدام لون فاتح خلفها. (Ibe1a4، b/235937657)
  • لقد عدّلنا قواعد الملف الشخصي الأساسي المضمّنة في مكتبة Wear Compose (I9c694).

الإصدار 1.0.0-rc01

15 حزيران (يونيو) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-rc01 وandroidx.wear.compose:compose-material:1.0.0-rc01 وandroidx.wear.compose:compose-navigation:1.0.0-rc01. يحتوي الإصدار 1.0.0-rc01 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • يتم الآن إنشاء الواجهات في مكتبات Compose باستخدام طرق الواجهات التلقائية في jdk8 (I5bcf1).

إصلاح الأخطاء

  • أزلنا الطلب الصريح على fillMaxWidth() في عنوان القائمة لأنّه غير مطلوب ويمكن أن يؤدي إلى حدوث مشاكل إذا كان ScalinglazyColumn يتضمّن مزيجًا من مكوّنات ListHeader() وChip() لأنّ العرض سيميل إلى النمو أو التقلّص أثناء الانتقال إلى عناصر ListHeader أو الخروج منها. (I37144، b/235074035)
  • لقد أصلحنا خطأ في ScalingLazyColumn كان يمكن أن يؤدي إلى عدم رسم عناصر القائمة بشكل صحيح إلى أن يتم الانتقال إلى الأسفل أو للأعلى إذا كان عنصر القائمة 0 كبيرًا بما يكفي (بما في ذلك الحشو) (Ic6159، b/234328517).
  • أجرينا تعديلاً بسيطًا على ScalingLazyColumn التخفيف عند وصول العناصر إلى حافة الشاشة لمطابقة تحديثات مواصفات تجربة المستخدم. القيم القديمة CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f) -> القيم الجديدة CubicBezierEasing(0.3f, 0f, 0.7f, 1f) للحفاظ على السلوك القديم، يمكنك إلغاء scalingParams من ScalingLazyColumn (Ie375c).
  • أضفنا مساحة متروكة إلى CompactChip لضمان أن يكون حجم هدف النقر 48 بكسل مستقل الكثافة على الأقل لاستيفاء إرشادات تسهيل الاستخدام في التصميم المتعدد الأبعاد. قد يؤثر ذلك في أي تنسيقات تستخدم فيها CompactChips لأنّها ستشغل مساحة إضافية. (I3d57c)

الإصدار 1.0.0-beta03

1 حزيران (يونيو) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-beta03 وandroidx.wear.compose:compose-material:1.0.0-beta03 وandroidx.wear.compose:compose-navigation:1.0.0-beta03. يحتوي الإصدار 1.0.0-beta03 على هذه المراجعات.

الميزات الجديدة

  • لقد فعّلنا ScalingLazyColumn في وضع "الإنشاء" @Preview. (I3b3b6، b/232947354)

تغييرات واجهة برمجة التطبيقات

  • لقد غيّرنا القيمة التلقائية للسمة ScalingLazyColumn.horizontalAlignment من Start إلى CenterHorizontally لضمان محاذاة عناصر القائمة لتحقيق أقصى مستوى من الرؤية عندما لا تملأ عناصر القائمة عرض العمود بالكامل. للرجوع إلى السلوك السابق، اضبط القيمة horizontalAlignment = Alignment.Start.(I9ed4b)

المشاكل المعروفة

  • ارتفاع النقر/اللمس في عنصر CompactChip أصغر من إرشادات تسهيل الاستخدام في التصميم المتعدد الأبعاد. سيتم تصحيح هذا الخطأ في الإصدار التالي (15 حزيران/يونيو). إذا كنت تستخدم شرائح CompactChip، سيؤثّر ذلك في تنسيقات إعلاناتك لأنّ شرائح CompactChip ستتضمّن الآن مساحة إضافية فوقها وتحتها. يُرجى تعديل التنسيقات واختبارها أو الاطّلاع على تعليقات الأخطاء لمعرفة حلّ بديل لاستخدام السلوك الحالي. (b/234332135)

إصلاح الأخطاء

  • عرض توضيحي جديد لإضافة أو إزالة نص بدء متحرك على TimeText (I16d75)
  • إضافة اختبارات لـ HorizontalPageIndicator.PagesState (I64ed0)
  • تعديل TimeText لتتوافق أكثر مع مواصفات تجربة المستخدم (Ib7ea1)

الإصدار 1.0.0-beta02

18 أيار (مايو) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-beta02 وandroidx.wear.compose:compose-material:1.0.0-beta02 وandroidx.wear.compose:compose-navigation:1.0.0-beta02. يحتوي الإصدار 1.0.0-beta02 على هذه المراجعات.

الميزات الجديدة

  • يستجيب "أداة الاختيار" الآن دائمًا لأحداث الانتقال للأعلى أو للأسفل حتى في وضع القراءة فقط. ويؤدي ذلك إلى تجنُّب حاجة المستخدمين إلى اختيار أداة اختيار أولاً من خلال النقر عليها قبل التمرير. في وضع القراءة فقط، يتم حجب الخيارات غير المحدّدة حاليًا بواسطة عنصر نائب في gradientColor. (I72925)
  • لقد غيّرنا سلوك تجربة المستخدم في Chip/ToggleChip/CompactChip/SplitToggleChip لمنع تنفيذ fillMaxWidth تلقائيًا. بدلاً من ذلك، ستتم زيادة حجمها لتلائم المحتوى المعروض. للحفاظ على السلوك السابق، ما عليك سوى إضافة modifier = Modifier.fillMaxWidth()(I60a2c، b/232206371).

إصلاح الأخطاء

  • CurvedTextStyle ‎constructor taking a ‎TextStyle now also respects the ‎fontWeight(This may be added to the constructor and copy methods in future revisions of the API) (Ieebb9)
  • تحسينات على التمرير السريع من جانب الشاشة عند استخدام الرمز Modifier.edgeSwipeToDismiss وتنفيذ التمرير السريع إلى اليسار من منطقة الحافة، لن يتم تنفيذ التمرير السريع لإغلاق التطبيق عند تغيير اتجاه التمرير السريع إلى اليمين. في السابق، كان من الممكن تفعيل ميزة التمرير السريع لإغلاق التطبيق من خلال التمرير سريعًا لليسار ثم التمرير سريعًا لليسار.(I916ea)
  • HorizontalPageIndicator يعرض الآن ما يصل إلى 6 صفحات على الشاشة. إذا كان هناك أكثر من 6 صفحات في المجموع، يتم عرض مؤشر بنصف الحجم على اليسار أو اليمين، مع انتقال سلس بين الصفحات.(I2ac29)
  • سلوك تلقائي محسَّن للربط في ScalingLazyColumn وPicker (I49539)
  • تحسينات على التمرير السريع من جانب الشاشة عند استخدام Modifier.edgeSwipeToDismiss، لا يتم تفعيل ميزة التمرير السريع لإغلاق التطبيق إلا عند لمس الشاشة لأول مرة على الحافة وتمريرها سريعًا إلى اليمين. في السابق، كان من الممكن تفعيل ميزة التمرير السريع لإغلاق التطبيق من أي جزء من الشاشة إذا وصل التمرير إلى البداية.(I8ca2a)

الإصدار 1.0.0-beta01

11 أيار (مايو) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-beta01 وandroidx.wear.compose:compose-material:1.0.0-beta01 وandroidx.wear.compose:compose-navigation:1.0.0-beta01. يحتوي الإصدار 1.0.0-beta01 على هذه المراجعات.

الميزات المتوفرة في تطبيق Compose لنظام التشغيل Wear OS 1.0

يشكّل الإصدار 1.0.0-beta01 من Compose لنظام التشغيل Wear OS علامة فارقة مهمة، لأنّ المكتبة اكتملت من حيث الميزات وتم قفل واجهة برمجة التطبيقات.

تشمل مكونات Material في Wear Compose في الإصدار 1.0 ما يلي:

  • مظهر Material Theme: يُستخدَم هذا المظهر كبديل لـ Compose for Mobile MaterialTheme، ويوفّر الألوان والأشكال وأسلوب الخط لإنشاء مكوّنات على الأجهزة القابلة للارتداء التي تطبّق إرشادات تجربة المستخدم في تصميم Material على Wear بشكل تلقائي.
  • Button وCompactButton وToggleButton: يقدّم الزر خانة واحدة لعرض رمز أو صورة أو نص قصير (3 أحرف بحد أقصى). أن تكون دائرية الشكل مع أحجام مقترَحة للأزرار التلقائية أو الكبيرة أو الصغيرة CompactButton: يوفّر مساحة واحدة لعرض أي محتوى (رمز أو صورة أو نص) وهو دائري الشكل وحجم الخلفية صغير جدًا. يحتوي CompactButton على مساحة شفافة اختيارية حول الخلفية تزيد من المنطقة التي يمكن النقر عليها. ToggleButton هو زر يقدّم خانة واحدة لعرض أي محتوى (نص قصير أو رمز أو صورة) ويحتوي على حالتَي تفعيل/إيقاف (تم وضع علامة/لم يتم وضع علامة) مع ألوان ورموز مختلفة للإشارة إلى ما إذا تم وضع علامة أم لا.
  • البطاقات: تُستخدَم لعرض معلومات عن التطبيقات، مثل الإشعارات. تصميم مرن لحالات الاستخدام المختلفة باستخدام AppCard وTitleCard لتوفير تنسيقات مختلفة وإمكانية استخدام الصور إما كمحتوى للبطاقة أو كخلفية
  • الشرائح: مكونات على شكل ملعب تشبه الأزرار، ولكن بمساحة أكبر وفتحات متعددة للسماح بالتصنيفات والتصنيفات الثانوية والرموز. بأحجام مختلفة مع إمكانية استخدام الصور كخلفيات
  • ToggleChips وSplitToggleChips: شريحة ذات حالة محدَّدة/غير محدَّدة وإضافة خانة ToggleControl لعرض رمز مثل مفتاح تبديل أو زر اختيار لإظهار الحالة المحدَّدة للمكوّن بالإضافة إلى ذلك، يتضمّن الرمز SplitToggleChip منطقتَين يمكن النقر عليهما، إحداهما قابلة للنقر والأخرى قابلة للتبديل.
  • CircularProgressIndicator: مؤشر تقدم بتصميم Material لنظام التشغيل Wear يتضمّن نوعَين. يعبّر الأول عن نسبة اكتمال مهمة جارية ويسمح بوجود فجوة في المسار الدائري بين زوايا البداية والنهاية. يشير الخيار الثاني إلى عدم تحديد مستوى التقدّم خلال فترة انتظار غير محدّدة.
  • curvedText: يشكّل جزءًا من لغة وصف النص (DSL) لوصف CurvedLayouts، إلى جانب curvedRow وcurvedColumn، لعرض المكوّنات حول الأجهزة الدائرية. اطّلِع على Wear Component Foundation أدناه للحصول على مزيد من التفاصيل عن CurvedLayout وCurvedModifier (يؤدي هذان العنصران دورًا مشابهًا لعناصر التعديل في الأشكال غير المنحنية ويسمحان بضبط جوانب مختلفة من التنسيق والحشو والتدرّجات وغير ذلك).
  • مربع الحوار والتنبيه والتأكيد: يعرض مربع الحوار مربّع حوار بملء الشاشة، ويتم عرضه فوق أي محتوى آخر، ويتيح التمرير سريعًا لإغلاقه. يشغل هذا العنصر خانة واحدة من المفترض أن تكون محتوى مربّع حوار Wear Material ذات رأي معيّن، مثل تنبيه أو تأكيد. التنبيه هو محتوى مربّع حوار يتضمّن آراء معيّنة ويحتوي على خانات للرمز والعنوان والرسالة. تتضمّن حمولات زائدة لأيّ من الزرَّين السالب والإيجابي المعروضَين جنبًا إلى جنب أو فتحة لشريحة واحدة أو أكثر مكدسة عموديًا. التأكيد هو محتوى مربّع حوار يعرض رسالة لمدة زمنية معيّنة. يحتوي على مساحة لعرض رمز أو صورة (يمكن أن تكون متحركة).
  • HorizontalPageIndicator: تعرِض هذه السمة موضع الصفحة الأفقي بطريقة مناسبة لشكل الجهاز القابل للارتداء. مصمّمة لملء الشاشة وعرض مؤشر منحني على الأجهزة المستديرة يمكن استخدامها مع عارض صفحة "المرافق".
  • Icon: رمز Wear الذي يستخدِم اللون والشفافية من مظهر Wear Material للحصول على رمز قابل للنقر، اطّلِع على الزر أو الشريحة.
  • أداة الاختيار: تعرِض قائمة قابلة للتنقّل بالعناصر التي يمكن الاختيار من بينها. سيتم تكرار العناصر تلقائيًا "بشكل لانهائي" في كلا الاتجاهين. يمكن عرضها في وضع القراءة فقط لإخفاء الخيارات غير المحدّدة.
  • موضع المؤشر: يعرض موضع الانتقال أو مؤشر موضع آخر بطريقة مناسبة لشكل الجهاز القابل للارتداء. مصمّمة لشغل الشاشة بالكامل وتعرض مؤشرًا منحنيًا على الأجهزة المستديرة.
  • الإطار الأساسي: ينفِّذ البنية الأساسية للتصميم المرئي في Wear Material Design. يقدّم هذا المكوّن واجهة برمجة تطبيقات لتجميع العديد من مكوّنات Wear Material (مثل TimeText وPositionIndicator وVignette) لإنشاء الشاشة، ما يضمن استراتيجية التنسيق المناسبة لها وجمع البيانات اللازمة لكي تعمل هذه المكوّنات معًا بشكل صحيح.
  • ScalingLazyColumn: عنصر قائمة يتضمّن ميزة التمرير/التكبير/التصغير بتأثير عين السمكة، ويشكّل جزءًا أساسيًا من لغة تصميم Wear Material. يوفّر تأثيرات التكبير والتصغير والشفافية لعناصر المحتوى. تم تصميم ScalingLazyColumn لكي يكون قادرًا على معالجة أعداد كبيرة من عناصر المحتوى، والتي لا يتم إنشاؤها وعرضها إلا عند الحاجة.
  • شريط التمرير: يسمح للمستخدمين بإجراء اختيار من نطاق من القيم. يتم عرض نطاق الاختيارات كشريط، ويمكن عرضه اختياريًا مع فواصل.
  • أداة الخطوة: عنصر بملء الشاشة يسمح للمستخدمين بإجراء اختيار من نطاق قيم باستخدام أزرار الزيادة/النقصان في أعلى الشاشة وأسفل الشاشة، مع توفير خانة في المنتصف للنص أو الشريحة.
  • SwipeToDismissBox: يعالج إيماءة التمرير السريع لإغلاق العنصر. ويشغل مساحة واحدة للخلفية (التي لا تظهر إلا أثناء إيماءة التمرير السريع) ومحتوى المقدّمة. يمكن دمجها اختياريًا مع مكتبة التنقّل androidx باستخدام SwipeDismissableNavHost (راجِع مكتبة التنقّل في Wear Compose أدناه).
  • النص: واجهة Wear لتنفيذ مكوّن النص في Compose Material، مع أخذ اللون ودرجة الشفافية من مظهر Wear Material
  • TimeText: مكوّن لعرض الوقت وحالة التطبيق في أعلى الشاشة يتم تعديله وفقًا لشكل الشاشة باستخدام نص منحني على الشاشات المستديرة.
  • الصورة المموّهة: معالجة للشاشة لاستخدامها في واجهة المستخدم الأساسية التي تمويه الجزء العلوي والسفلي من الشاشة عند استخدام محتوى قابل للتمرير.

  • يتم أيضًا تضمين المكوّنات التالية من Wear Compose Foundation:

  • CurvedLayout - Wear Foundation CurvedLayout هو تنسيق قابل للتجميع يضع عناصره الثانوية في قوس، ويدورها حسب الحاجة. يشبه ذلك تنسيق صف منحنيًا في جزء من حلقة. يُرجى العلم أنّ محتوى CurvedLayout ليس دالة lambda قابلة للتجميع، بل هو لغة خاصة بنطاق معيّن (DSL). تتيح جميع العناصر في DSL لـ CurvedLayout استخدام مَعلمة مُعدِّل اختيارية تم إنشاؤها من CurvedModifier.

  • basicCurvedText: عنصر في CurvedLayout DSL، basicCurvedText يسمح للمطوّرين بكتابة نص منحني بسهولة وفقًا لمنحنى الدائرة (عادةً على حافة شاشة دائرية). لا يمكن إنشاء basicCurvedText إلا ضمن CurvedLayout لضمان تقديم أفضل تجربة، مثل إمكانية تحديد موضع الإعلان واستخدام CurvedModifiers. يُرجى ملاحظة أنّه في معظم الحالات، يجب استخدام curvedText بدلاً من ذلك، لأنّه يستخدم مظهر Material.

  • curvedComposable: لتغليف المحتوى القابل للتعديل العادي لكي يمكن استخدامه مع CurvedLayout. إذا كان curvedComposable يحتوي على عدة عناصر، سيتم رسمها فوق بعضها (مثل مربّع). لوضع عدة عناصر قابلة للتجميع على طول منحنى، احط كل عنصر منها برمز curvedComposable.

  • curvedRow وcurvedColumn: على غرار Row وColumn، يمكن إدراج curvedRow وcurvedColumn داخل CurvedLayout لعرض العناصر حسب الحاجة. بالنسبة إلى curvedRow، يمكن تحديد اتجاه التخطيط الزاوي والمحاذاة الشعاعية. بالنسبة إلى curvedColumn، يمكن تحديد المحاذاة الزاوية والاتجاه الشعاعي.

  • CurvedModifier: تقبل جميع المكوّنات المنحنية مَعلمة مُعدِّل يمكن إنشاؤها باستخدام CurvedModifier: يمكن استخدام الخلفية والحجم والوزن والحشو.

  • يتم أيضًا تضمين المكوّن التالي من ميزة "التنقّل في ميزة الكتابة" على Wear OS:

  • SwipeDismissableNavHost: يوفّر مكانًا في التدرّج الهرمي لميزة "الإنشاء" لإجراء عملية تنقّل ذاتية، مع توفير ميزة التنقّل للخلف من خلال إيماءة التمرير السريع. يتم عرض المحتوى ضمن SwipeToDismissBox، ما يشير إلى مستوى التنقّل الحالي. أثناء استخدام إيماءة التمرير السريع لإغلاق المحتوى، يظهر مستوى التنقّل السابق (إن توفّر) في الخلفية.

  • اطّلِع على ملاحظات الإصدارات السابقة للإصدارات المختلفة من الإصدارات التجريبية للحصول على مزيد من التفاصيل حول الميزات التي تم طرحها.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة CurvedModifier.padding* دالة. تُستخدَم هذه العناصر لتحديد مساحة إضافية ليتمّ إضافتها حول مكوّن منحني. (I4dbb4)
  • تمّت إزالة الفئة الداخلية CompositionLocal (I42490)
  • أضفنا قيمًا ثابتة لحجم الرموز Button وCompactButton وToggleButton، وذلك كإرشادات. (I57cab)
  • أضِف المَعلمة enabled إلى AppCard وTitleCard. والآن، تتوفّر واجهة برمجة تطبيقات مشابهة لواجهات برمجة تطبيقات "بطاقات androidx.compose.material". عند ضبط المَعلمة على "خطأ"، لن يكون بالإمكان النقر على البطاقة. (Idc48d، b/228869805)

إصلاح الأخطاء

  • يوقف العداد الآن زرَّي الخفض والزيادة عند بلوغ الحد الأدنى/الحد الأقصى (ويطبّق ContentAlpha.disabled على iconColor) (I4be9f).
  • أضفنا مساحة بادئة بحجم 1 بكسل حول محتوى أداة الاختيار عند رسمه باستخدام مخطط متدرج لمنع الارتعاش في النص الذي يظهر عند التمرير السريع. (I0b7b9)
  • إضافة اختبارات لقطات الشاشة لـ PositionIndicator (I5e8bc)
  • إضافة المزيد من الاختبارات لـ AppCard وTitleCard (I85391، b/228869805)

الإصدار 1.0.0-alpha21

20 نيسان (أبريل) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha21 وandroidx.wear.compose:compose-material:1.0.0-alpha21 وandroidx.wear.compose:compose-navigation:1.0.0-alpha21. يحتوي الإصدار 1.0.0-alpha21 على هذه المراجعات.

الميزات الجديدة

  • تمت إضافة عناصر جديدة منحنية لتحديد خلفية العنصر المنحني: CurvedModifier.background و.radialGradientBackground و.angularGradientBackground (I8f392)
  • السماح بتحديد وضع تجاوز النص المنحني (اقتصاص/علامة شرطة منقطة/مرئي) (I8e7aa)
  • تمت إضافة مفتاح التعديل CurvedModifier.weight، وهو مشابه للمفتاح المتوفّر في ميزة "الإنشاء". يمكن استخدام هذا الإجراء على عناصر curvedRow وCurvedLayout (للعرض) وعناصر curvedColumn (للارتفاع). (I8abbd)
  • تمت إضافة المُعدِّلات CurvedModifier.size و.angularSize و.radialSize لتحديد حجم عنصر منحني. (I623c7)

تغييرات واجهة برمجة التطبيقات

  • إعادة ترتيب المَعلمات لضمان ظهور الخلفية قبل اللون بشكلٍ متسق في Wear Compose API (I43208)
  • تمّت إزالة مَعلمتَي clockwise وinsideOut واستبدالهما بثوابت أكثر تعبيرية في الفئات الجديدة. يمكن الآن أن يكون اتجاه التنسيق المنحني متوافقًا مع LayoutDirection، ويتم اكتسابه عند عدم تحديده (If0e6a).
  • لقد استبدلنا autoCenter: Boolean بـ autoCenter: AutoCentringParams لحلّ مشكلة في واجهة برمجة التطبيقات في ScalingLazyColumn. (Ia9c90)
  • لقد أعادنا تسمية iconTintColor وtoggleControlTintColor إلى iconColor وtoggleControlColor في جميع أنحاء واجهة برمجة التطبيقات (Chip/ToggleChip/Dialog/Slider/Stepper/...) لأنّه يتم تطبيق اللون على خانة icon/toggleControl. (Ied238)
  • إعادة كتابة التعداد PageIndicatorStyle في فئة القيمة (I2dc72)
  • أضفنا RowScope/ColumnScope/BoxScope إلى بعض الفتحات في العناصر القابلة للتجميع للإشارة إلى المطوّرين إلى افتراضات التنسيقات. سيتيح ذلك للمطوّرين استخدام عوامل تعديل إضافية على بعض محتوى الخانات الإعلانية وتجنُّب الحاجة إلى تقديم عناصر تنسيق إضافية. بالإضافة إلى ذلك، أجرينا بعض التعديلات البسيطة على ألوان بطاقة التطبيق/بطاقة العنوان بحيث يكون اللون التلقائي لكل من timeColor وappColor هو contentColor، مع إمكانية إلغاء كل هذه السمات بشكلٍ فردي إذا لزم الأمر. (I26b59)
  • جعلت عنصر SwipeToDismissBoxState.Companion خاصًا (I39e84)
  • يجب تصحيح ترتيب المَعلمات InlineSlider وStepper. تغيير بسيط لاتّباع إرشادات واجهة برمجة التطبيقات (I11fec)
  • لقد أزلنا عنصر "الموفّر" لـ SwipeToDismissBoxState لأنّه لم يتم استخدامه. (Ifb54e)
  • لقد عدّلنا CompactChip بما يتوافق مع أحدث مواصفات تجربة المستخدم. تم تقليل مقدار المسافة البادئة إلى 12.dp أفقيًا و0.dp رأسيًا. تم تغيير خط التصنيف من button إلى caption1. أحجام الرموز المُقترَحة هي 20×20 عند توفُّر الرمز والتصنيف، و24×24 للرمز فقط في الشريحة المدمجة. بالنسبة إلى حالة استخدام الرمز فقط، تأكّدنا أيضًا من محاذاة الرمز في المنتصف. (Iea2be)
  • أضفنا عددًا من الحقول الجديدة إلى ScalingLazyListLayoutInfo لتمكين المطوّرين من معرفة مقدار contentPadding وautoCenteringPadding التي تم تطبيقها. يمكن أن تكون هذه البيانات مفيدة للمطوّرين عند احتساب سرعة التمرير السريع (I7577b).
  • لقد نفّذنا عمليات انتقال للدخول/الخروج في "المحادثة". تمت إضافة مَعلمة showDialog ويتحكّم مربّع الحوار الآن في مستوى ظهوره (يتيح ذلك لمربّع الحوار تشغيل الصور المتحركة للمقدمة والخاتمة عند عرض مربّع الحوار أو إخفائه). يُرجى العِلم أنّه لا يتم تشغيل الرسم المتحرّك لنهاية الفيديو عندما يغادر المستخدم مربّع الحوار من خلال التمرير سريعًا لإغلاقه. أضفنا أيضًا قيمة تلقائية للحالة في حالة SwipeToDismissBox الزائدة التي تمت إضافتها مؤخرًا. (I682a0)
  • لتقديم دعم أفضل لميزة i18n وa11y، غيّرنا ToggleChip وSplitToggleChip كي لا يكون لديهما قيمة تلقائية في خانة toggleControl. لقد غيّرنا أيضًا ToggleChipDefaults لكي تعرِض الطرق التالية الآن ImageVector بدلاً من Icon (يُرجى العِلم أنّه بما أنّها لم تعُد تعرِض @Composables، تم تغييرها لتبدأ بحرف صغير)، وSwitchIcon()->switchIcon() وCheckboxIcon->checkboxIcon() وRadioIcon()->radioIcon(). يتيح ذلك للمطوّرين إنشاء عناصر Icon() قابلة للتجميع باستخدام مجموعة contentDescription مناسبة. (I5bb5b)
  • أضفنا مَعلمة SwipeDismissableNavHostState إلى SwipeDismissableNavHost. يتيح ذلك استخدام التمرير السريع من جانب الشاشة على الشاشات المستخدَمة كوجهات تنقّل، لأنّه يمكن الآن رفع SwipeToDismissBoxState واستخدامه لبدء كلّ من SwipeDismissableNavHostState وModifier.edgeSwipeToDismiss على الشاشات التي تتطلّب التمرير السريع من جانب الشاشة. (I819f5، b/228336555)

إصلاح الأخطاء

  • تأكَّد من تعديل التنسيقات المنحنية عند الحاجة. (Ie8bfa، b/229079150)
  • إصلاح الخطأ في https://issuetracker.google.com/issues/226648931 (Ia0a0a، b/226648931)
  • تمت إزالة التعليقات التوضيحية التجريبية غير الضرورية (I88d7e)

الإصدار 1.0.0-alpha20

6 نيسان (أبريل) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha20 وandroidx.wear.compose:compose-material:1.0.0-alpha20 وandroidx.wear.compose:compose-navigation:1.0.0-alpha20. يحتوي الإصدار 1.0.0-alpha20 على هذه المراجعات.

الميزات الجديدة

  • أضِف المُعدِّل edgeSwipeToDismiss إلى SwipeToDismiss. السماح بتنشيط swipeToDismiss على الحافة اليسرى من إطار العرض فقط يُستخدَم هذا العنصر عندما يحتاج مركز الشاشة إلى التعامل مع التنقل الأفقي للصفحات، مثل الانتقال في خريطة باستخدام التمرير ثنائي الأبعاد أو التمرير سريعًا أفقيًا بين الصفحات.(I3fcec، b/200699800)

تغييرات واجهة برمجة التطبيقات

  • التنفيذ الأساسي لـ CurvedModifiers، ما يفتح الطريق لتوفير طرق لتخصيص المحتوى المنحني (ولكن لم يتم توفير أي CurvedModifiers حتى الآن، وقد تتوفّر إمكانية إنشاء عوامل تعديل مخصّصة لاحقًا) (I9b8df)
  • EdgeSwipeتعديل مستندات القيم التلقائية وتعديلها لفهمها بشكل أفضل (I6d00d)
  • أضِف خانة PageIndicator إلى Scaffold. من خلال إضافة PageIndicator مباشرةً إلى Scaffold، يمكننا التأكّد من أنّه سيتم عرضه بشكل صحيح على الأجهزة المستديرة. (Ia6042)
  • أزِل الرموز التلقائية من مَعلمتَي InlineSlider وStepper. سيساعد ذلك المطوّرين على الانتباه أكثر لمتطلبات الأقلمة وسهولة الاستخدام. تم عرض استخدامات الرموز التلقائية في العروض التوضيحية والعيّنات. (I7e6fd)
  • استبدال أسماء المَعلمتَين Trailing وLeading بالمَعلمتَين Start وEnd في TimeText (Iaac32)
  • أضفنا SwipeToDismissBox overload مع مَعلمة onDismissed لدعم الاستخدام الشائع لبدء حدث تنقّل عند اكتمال إيماءة التمرير السريع. (I50353، b/226565726)
  • تمت إزالة ExperimentalWearMaterialApi تعليقًا توضيحيًا من استخدام TimeText (Ide520)
  • لقد وضعنا علامة "مغلقة" على واجهات نطاق ScalingLazyList/Column ومعلوماتها لأنّها غير مخصّصة للمطوّرين الخارجيين لتنفيذها، ما سيتيح لنا إضافة أعضاء جدد إليها في المستقبل بدون تغييرات تؤدي إلى إيقاف الثنائيات. (I7d99f)
  • أضفنا سمة flingBehaviour جديدة إلى أداة الاختيار وطريقة PickerDefaults.flingBehaviour() لتفعيل ضبط سلوك التمرير السريع، مثل إضافة إمكانية استخدام واجهة برمجة التطبيقات لعرض الإعلانات على شبكة البحث (RSB). ينفِّذ PickerState الآن واجهة ScrollableState. (Ib89c7)

إصلاح الأخطاء

  • عدِّل قواعد الملف الشخصي الأساسي لـ "وقت تشغيل Android" (ART) لمكتبات Wear Compose. يمكن أن تستفيد أداة ART من قواعد الملفات الشخصية على الأجهزة لتجميع مجموعة فرعية معيّنة من التطبيق مسبقًا لتحسين أداء التطبيق. يُرجى العلم أنّ هذا الإجراء لن يؤثر في التطبيقات التي يمكن تصحيح أخطاءها. (Iaa8ef)
  • تحسين المستندات (I2c051)

الإصدار 1.0.0-alpha19

23 آذار (مارس) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha19 وandroidx.wear.compose:compose-material:1.0.0-alpha19 وandroidx.wear.compose:compose-navigation:1.0.0-alpha19. يحتوي الإصدار 1.0.0-alpha19 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • تمت إعادة تسمية CurvedRow إلى CurvedLayout، وتم تعديلها لتصبح نطاقًا يتضمّن لغة وصف لغة برمجة. باستخدام لغة DSL هذه، يمكن تحديد تصاميم منحنية أكثر تعقيدًا باستخدام سلسلة من curvedRow وcurvedColumn المتداخلة (وهي مكافئ التصميم المنحني للصف والعمود). يمكن استخدام ثلاثة عناصر داخل عناصر التنسيق هذه: curvedComposable (لإضافة أي عنصر @Composable) وbasicCurvedText (نص منحني في العنصر الأساسي) وcurvedText (نص منحني متوافق مع واجهة Wear Material). (Ib776a)
  • اجعل جانب PositionIndicator قابلاً للضبط. يمكن الآن ضبط موضع PositionIndicator الأساسي ليكون "النهاية" (يراعي اتجاه التنسيق) أو "Rsb المقابل" (يراعي دوران الشاشة لوضع نفسه مقابل RSB الفعلي) أو "اليسار" و"اليمين" المطلقَين. (I2f1f3)
  • بالنسبة إلى SwipeToDismissBox، تمت إعادة تسمية SwipeDismissTarget.Original إلى SwipeToDismissValue.Default وSwipeDismissTarget.Dismissal إلى SwipeToDismissValue.Dismissed. لقد نقلنا أيضًا SwipeToDismissBoxDefaults.BackgroundKey وSwipeToDismissBoxDefaults.ContentKey إلى SwipeToDismissKeys.Background وSwipeToDismissKeys.Content على التوالي. (I47a36)
  • أضفنا وضع قراءة فقط إلى أداة "المنتقي"، وذلك للشاشات التي تتضمّن عدة "أدوات اختيار" يمكن تعديل أداة واحدة منها فقط في المرة الواحدة. عندما يكون "أداة الاختيار" للقراءة فقط، يتم عرض الخيار المحدّد حاليًا وتصنيف إذا تم تقديمه. (I879de)
  • تمّت إعادة صياغة SwipeToDismissBoxState لتقييد نطاق ExperimentalWearMaterialApi على Modifier.swipeable وSwipeableState، اللذَين يتم استخدامهما الآن داخليًا. يتوفّر الآن في SwipeToDismissBoxState اشتراكات currentValue وtargetValue وisAnimationRunning وsnapTo لتلبية حالات الاستخدام الشائعة. يُرجى إعلامنا إذا كنت بحاجة إلى إتاحة أي مواقع أخرى. تم أيضًا إصلاح سلوك SwipeableState في حال كان عنصر التمرير السريع ضمن خطأ التقريب لعنصر الربط. (I58302)

إصلاح الأخطاء

  • رمز مبسّط وثابت لرصد ما إذا كان بإمكان المستخدم الانتقال للأعلى أو للأسفل في ScalingLazyColumn (يُستخدَم لتحديد ما إذا كان سيتم عرض ملف شخصي أعلى أو للأسفل أم لا) (I7bce0)
  • تم إصلاح خطأ في "مؤشر الموضع" عند استخدامه مع أكثر من حالة واحدة والتبديل بينها (I320b5)
  • لقد عدّلنا مخطّط تنسيقات النصوص/الخطوط التلقائية لموضوع تطبيق "الكتابة" على Wear OS لتتوافق مع أحدث إرشادات تجربة المستخدم. يُرجى العِلم أنّ عرضَي display1 (40.sp) وdisplay2 (34.sp) أصغر الآن من قيمتهما السابقة، كما تم إجراء تعديلات طفيفة أخرى على ارتفاع السطر وتباعد الأسطر. (Ie3077)
  • أضفنا مقاومة إلى SwipeToDismissBox لكي لا يحدث التأثير إلا عند التمرير سريعًا لإغلاق الإشعار، ولا يحدث على الإطلاق في الاتجاه المقابل. (Ifdfb9)
  • لقد غيّرنا بعض قيم المَعلمات التلقائية لدوال CircularProgressIndicator لتتوافق مع إرشادات تجربة المستخدم في تصميم Wear Material. بالنسبة إلى إصدار Spinner/Indeterminant، تم تعديل الحجم (من 40 إلى 24.dp) وindicatorColor (من primary إلى onBackground) وشفافية trackColor (من ‎30% إلى ‎10%) وعرض الخطوط (من 4 إلى 3dp). بالنسبة إلى إصدار "التقدّم/التحديد"، تم تعديل شفافية trackColor (من ‎30% إلى ‎10%). (I659cc)
  • لقد عدّلنا مَعلمات التكبير/التصغير التلقائية للعنصر ScalingLazyColumn بما يتوافق مع أحدث مواصفات تجربة المستخدم في التصميم المتعدّد الأبعاد لنظام التشغيل Wear. يؤدي ذلك إلى تكبير عناصر القائمة بشكل أكبر بالقرب من مركز القائمة، ولكن يتم تصغيرها بشكل أقل عند أطراف القائمة مقارنةً بما كان عليه في السابق. (Ica8f3)
  • بعض التعديلات على ScalingLazyColumnDefaults.snapFlingBehavior لتحسين نهاية الصورة المتحركة (If3260)

الإصدار 1.0.0-alpha18

9 آذار (مارس) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha18 وandroidx.wear.compose:compose-material:1.0.0-alpha18 وandroidx.wear.compose:compose-navigation:1.0.0-alpha18. يحتوي الإصدار 1.0.0-alpha18 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • تم إجراء العديد من التحسينات على مقياس PositionIndicator: تمت إعادة تسمية ShowResult ليصبح PositionIndicatorVisibility. بعض التحسينات على الأداء لتجنُّب عمليات إعادة الحساب غير الضرورية (Iaed9d)
  • تم تعديل الألوان المقترَحة للعنصر SplitToggleChip. يتضمّن SplitToggleChip الآن خلفية بلون واحد عند وضع علامة أو إزالتها، مع أنّ لون ToggleControl هو المؤشر الأساسي لمعرفة ما إذا كان المكوّن قد تم وضع علامة عليه أم لا. أضفنا ToggleDefaults.splitToggleChipColors() جديدًا متوافقًا مع مخطط الألوان الجديد. لقد سهّلنا أيضًا طرق toggleChipColors() من خلال إزالة splitBackgroundOverlayColor (I7e66e).
  • أضفنا سمة unadjustedSize إلى ScalingLazyListItemInfo لأنّه ليس من الآمن احتساب حجم السلعة الأصلي باستخدام المقاس المُعدَّل ومعدّل التكبير بسبب دقة العمليات الحسابية للأرقام العائمة. (I54657، b/221079441)
  • أضِف HorizontalPageIndicator. ويمثّل إجمالي عدد الصفحات وصفحًا محدّدة. قد يكون خطيًا أو منحنيًا، حسب شكل الجهاز. وتتيح أيضًا شكل المؤشر المخصّص الذي يحدّد كيفية تمثيل كل مؤشر بشكل مرئي. (Iac898)
  • لقد عدّلنا PickerState لكي يمكن تعديل numberOfOptions. يتيح ذلك حالات استخدام مثل DatePicker، عندما يتغيّر عدد الأيام في الشهر استنادًا إلى الشهر المحدّد. تم تغيير مَعلمة المُنشئ لـ PickerState إلى initialNumberOfOptions وفقًا لذلك. (Iad066)
  • إخفاء PositionIndicator عندما يكون هناك شريط تمرير ولا يمكن التمرير (Id0a7f)
  • للتوافق مع Scaffold، يعرض الآن مكوّن Dialog بملء الشاشة PositionIndicator وVignette. نستخدم أيضًا الآن ScalingLazyColumn بدلاً من Column، ما يعني أنّ محتوى مربّع الحوار أصبح الآن في ScalingLazyListScope (ويجب عادةً إحاطته بالعنصر { /* content */ }). يتيح مربّع الحوار مَعلمة الترتيب_العمودي وفقًا لذلك. (Idea13)
  • لقد غيّرنا اسم سمة toggleIcon في ToggleChip وSplitToggleChip إلى toggleControl لمواءمتها بشكل أفضل مع لغة التصميم Material Design من أجل مساعدة المصمّمين والمطوّرين في التنقّل في واجهة برمجة التطبيقات. (If5921، b/220129803)
  • أضفنا إدخالًا جديدًا caption3 إلى تصنيف مظاهر Wear Material.وcaption3 هو خط صغير يُستخدَم للكتابة الطويلة جدًا، مثل النصوص القانونية. (I74b13، b/220128356)

إصلاح الأخطاء

  • أوقِف الصورة المتحركة عند الوصول إلى النقطة المطلوبة. (Idb69d)
  • إضافة تأثيرات متحركة للتغييرات في PositionIndicator (I94cb9)
  • استنادًا إلى الملاحظات الواردة من مستخدمي واجهة المستخدم/تجربة المستخدم، غيّرنا ScalingLazyColumn autoCentering لكي لا يقدّم سوى مساحة كافية للتأكّد من أنّه يمكن الانتقال بالكامل إلى مركز مساحة العرض للعناصر التي تحمل الفهرس ScalingLazyListState.initialCenterItemIndex أو أعلى. ويسمح ذلك للمطوّرين بوضع عنصر أو عنصرَين حول العنصر في البداية في الوسط لا يمكن التمرير إليهما. سيعني ذلك أنّ ScalingLazyColumn التي يتم ضبطها تلقائيًا في المنتصف لن تتمكّن من الانتقال فوق initialCenterItemIndex/initialCenterItemScrollOffset (I22ee2).
  • لقد أضفنا عرضًا توضيحيًا لأداة اختيار التاريخ وأصلحنا خطأً في PickerState حيث لم يتم تطبيق الخيار الذي تم اختياره في البداية إلى أن تم عرض أداة الاختيار. (Id0d7e)
  • للحدّ من اقتصاص عناصر ScalingLazyColumn الأوسع على الشاشات المستديرة، زادنا مقدار الحشو الأفقي التلقائي للمحتوى من 8 إلى 10 dp. (I0d609)
  • تأكَّد من ظهور الرمز PositionIndicator عند الانتقال للأعلى أو للأسفل. (Ied9a2)

الإصدار 1.0.0-alpha17

23 شباط (فبراير) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha17 وandroidx.wear.compose:compose-material:1.0.0-alpha17 وandroidx.wear.compose:compose-navigation:1.0.0-alpha17. يحتوي الإصدار 1.0.0-alpha17 على هذه المراجعات.

الميزات الجديدة

  • أضفنا ميزة "الصور المفاجئة" التي يمكن استخدامها مع ScalingLazyColumn. اضبط القيمة flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) لتفعيل ميزة "التثبيت". (I068d3، b/217377069)
  • أضفنا عروضًا توضيحية لأداة الاختيار المستخدَمة في اختيار وقت باستخدام تنسيق 24 ساعة أو 12 ساعة. (Ie5552)

تغييرات واجهة برمجة التطبيقات

  • حلّ مشكلة في TimeText الخطوط والأنماط المخصّصة على الجهاز المربّع (Iea76e)
  • يحتوي ScalingLazyListLayoutInfo الآن على سمات reverseLayout وviewportSize واتجاه مطابقة لتلك الواردة في LazyListLayoutInfo (I4f258، b/217917020)
  • يتضمّن ScalingLazyColumn الآن سمة userScrollEnabled تتطابق مع السمة من LazyList (I164d0، b/217912513).
  • تحتوي الآن أدوات الاختيار على انتقال تدريجي في أعلى وأسفل الصفحة تلقائيًا (Iab92a).

إصلاح الأخطاء

  • لقد عدّلنا ScalingLazyColumn لكي لا تملأ كل المساحة في العنصر الرئيسي. بدلاً من ذلك، سيعتمد حجمها على حجم المحتوى الذي تتضمنه. وهذا يجعله متوافقًا مع سلوك LazyColumn. إذا كنت تريد استعادة السلوك القديم، عليك تمرير Modifier.fillMaxWidth()/width()/widthIn() إلى ScalingLazyColumn (I51bf8).
  • لقد أجرينا تحسينات على رسالة الاستثناء في SwipeDismissableNavHost.kt التي كانت يتم تشغيلها إذا كانت حزمة التنقّل الخلفية فارغة. (I1b1dc)

الإصدار 1.0.0-alpha16

9 شباط (فبراير) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha16 وandroidx.wear.compose:compose-material:1.0.0-alpha16 وandroidx.wear.compose:compose-navigation:1.0.0-alpha16. يحتوي الإصدار 1.0.0-alpha16 على هذه المراجعات.

الميزات الجديدة

  • أضِف CircularProgressIndicator. تعرِض مؤشرات التقدّم مدة عملية أو وقت انتظار غير محدّد. يتيح هذا المكوّن ترك مساحة فارغة (مقطع مستبعد) لعنصر TimeText أو مكوّنات أخرى في حال استخدامه بملء الشاشة. (Iab8da)

تغييرات واجهة برمجة التطبيقات

  • تحتوي أداة الاختيار الآن على مَعلمة flingBehavior، وتؤدي قيمتها التلقائية إلى الانتقال بسرعة إلى أقرب خيار عند الانتقال للأعلى أو للأسفل. (I09000)
  • واجهة برمجة تطبيقات إضافية للأرقام الصحيحة لعنصرَي InlineSlider وStepper (I1b5d6)

إصلاح الأخطاء

  • لقد غيّرنا القيمة التلقائية لمعلمة initialCenterItemIndex في ScalingLazyListState من 0 إلى 1. وهذا يعني أنّه ما لم يتم إلغاء ذلك عند إنشاء الحالة باستخدام ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =)، سيتم وضع عنصر القائمة الثاني (الفهرس == 1) في وسط مساحة العرض عند الإعداد، وسيتم وضع العنصر الأول (الفهرس == 0) قبله. يتيح ذلك الحصول على تأثير مرئي تلقائي أفضل، لأنّ معظم مساحة العرض ستتم تعبئتها بعناصر القائمة. (I0c623، b/217344252)
  • لقد خفّضنا ScalingLazyColumn extraPadding التلقائي المقدَّم لضمان توفّر الكثير من عناصر القائمة التي يمكن رسمها (حتى عند تصغير حجم بعضها) من% 10 إلى %5. سيؤدي ذلك إلى تجنُّب إنشاء عناصر قائمة إضافية قد لا تظهر في مساحة العرض. في حال استخدام مَعلمات غير عادية لقياس الحجم (مثلاً، قياس حجم أكبر) يمكن للمطوِّر ضبط الحشو الإضافي باستخدام viewportVerticalOffsetResolver. (I76be4)
  • حلّ مشكلة في TimeText على خطوط متعددة على الجهاز المربّع (Ibd3fb)
  • لقد عدّلنا ScalingLazyColumn لكي لا تملأ كل المساحة في العنصر الرئيسي. بدلاً من ذلك، سيعتمد حجمها على حجم المحتوى الذي تتضمنه. وهذا يجعله متوافقًا مع سلوك LazyColumn. إذا كنت تريد استعادة السلوك القديم، عليك تمرير Modifier.fillMaxSize() إلى ScalingLazyColumn. ملاحظة: هذا التغيير غير مكتمل وسيتم معالجته في تغيير متابعة في الإصدار التجريبي التالي. (I3cbfa)

الإصدار 1.0.0-alpha15

26 كانون الثاني (يناير) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha15 وandroidx.wear.compose:compose-material:1.0.0-alpha15 وandroidx.wear.compose:compose-navigation:1.0.0-alpha15. يحتوي الإصدار 1.0.0-alpha15 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أضفنا موقعًا جديدًا autoCentering إلى ScalingLazyColumn. عندما تكون القيمة صحيحة (الإعداد التلقائي)، سيضمن ذلك إمكانية الانتقال إلى جميع العناصر، بما في ذلك العنصر الأول والأخير، حتى تظهر في منتصف إطار عرض القوائم. يُرجى العِلم أنّه في حال استخدام ميزة "المحاذاة التلقائية"، قد تحتاج إلى ضبط سمة "ملء المحتوى العمودي" على 0.dp. في حال توفير كلّ من autoCentering وملء المحتوى العمودي، سيؤدي ذلك إلى توفير مساحة إضافية قبل أول عناصر القائمة وبعد آخرها، ما يتيح الانتقال إلى الأسفل أو الأعلى. (I2a282، b/214922490)
  • أضفنا مكوّن Dialog يتيح لأي عنصر قابل للتجميع عرض مربّع حوار بملء الشاشة فوق المحتوى الآخر. يتيح مربّع الحوار التمرير سريعًا لإغلاقه، وسيعرض محتوى العنصر الرئيسي في الخلفية أثناء إيماءة التمرير السريع. من المتوقّع أن يكون محتوى مربّع الحوار هو Alert أو Confirmation (تمّت إعادة تسميته من المكوّنات السابقة AlertDialog وConfirmationDialog). إنّ Alert وConfirmation وDialog كلها متوفّرة في حزمة androidx.wear.compose.material.dialog. يمكن استخدام "التنبيه" و"التأكيد" كوجهتَي تنقّل. تمت أيضًا إضافة ColumnScope إلى مَعلمتَي Alert وConfirmation حسب الحاجة. (Ia9014)
  • أزلنا اللون onSurfaceVariant2 من ألوان مظهر Material في تطبيق Compose لنظام التشغيل WearOS واستبدلنا onSurfaceVariant به في الاستخدامات المدرَجة في المكتبة. (Icd592)
  • تمت إضافة طريقة لاختيار خيار بشكل آلي في PickerState، ويمكن الآن أيضًا تحديد الخيار المحدّد في البداية عند إنشاء PickerState. (I92bdf)
  • أضفنا إمكانية تخصيص سلوك التمرير السريع للعنصر ScalingLazyColumn. (I1ad2e، b/208842968)
  • أضفنا NavController.currentBackStackEntryAsState() إلى مكتبة Wear.Compose.Navigation. (If9028، b/212739653)
  • تمت إضافة Modifier.onRotaryScrollEvent() وModifier.onPreRotaryScrollEvent() لأجهزة Wear التي تتضمّن زرًا جانبيًا قابلاً للدوران.(I18bf5، b/210748686)

الإصدار 1.0.0-alpha14

12 كانون الثاني (يناير) 2022

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha14 وandroidx.wear.compose:compose-material:1.0.0-alpha14 وandroidx.wear.compose:compose-navigation:1.0.0-alpha14. يحتوي الإصدار 1.0.0-alpha14 على هذه المراجعات.

الميزات الجديدة

  • أضفنا عددًا من الطرق إلى ScalingLazyListState للسماح للمطوّر بالتحكّم في الانتقال إلى عناصر قائمة معيّنة، بالإضافة إلى ضبط عنصر القائمة الأولي والإزاحة.

    في إطار هذا التغيير، عدّلنا أيضًا ScalingLazyList بحيث يتم توجيهه حول مركز إطار عرض ScalingLazyList بدلاً من بداية إطار العرض.

    تمت إضافة سمة جديدة anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter إلى ScalingLazyList للتحكّم في ما إذا كان يجب محاذاة المركز (ScalingLazyListAnchorType.ItemCenter) أو Edge (ScalingLazyListAnchorType.ItemStart) مع خط مركز مساحة العرض.

    نتيجةً لذلك، تغيّر ScalingLazyListItemInfo.offset وScalingLazyListItemInfo.adjustedOffset وسيعكسان الآن إزاحة العنصر بالنسبة إلى كلّ من موضع عنصر القائمة وanchorType القائمة. على سبيل المثال، بالنسبة إلى ScalingLazyColumn التي تحتوي على anchorType من ItemCenter وعنصر قائمة تم وضع مركزه على خط مركز مساحة العرض، سيكون الإزاحة 0.

    الطُرق الجديدة هي scrollTo وanimatedScrollTo وcenterItemIndex وcenterItemOffset. (I61b61)

  • أضفنا معالِجًا لزر الرجوع إلى SwipeDismissableNavHost، بحيث يؤدي الضغط على زر الرجوع إلى الانتقال إلى المستوى السابق في التسلسل الهرمي للتنقّل. (I5b086، b/210205624)

الإصدار 1.0.0-alpha13

15 كانون الأول (ديسمبر) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha13 وandroidx.wear.compose:compose-material:1.0.0-alpha13 وandroidx.wear.compose:compose-navigation:1.0.0-alpha13. يحتوي الإصدار 1.0.0-alpha13 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • لقد جعلنا RangeIcons داخليًا (يُشار إليه داخليًا من قِبل InlineSlider وStepper). (I927ec)

إصلاح الأخطاء

  • تم إصلاح مشكلة كانت تؤدي إلى إضافة SwipeDismissableNavHost وجهة إلى التسلسل الهرمي لإنشاء المحتوى قبل أن تصل إلى حالة CREATED Lifecycle، ما يؤدي إلى حدوث IllegalStateException. كان هذا الإصلاح شرطًا أساسيًا لتعديل الاعتماد على navigation-compose إلى 2.4.0-beta02 والإصدارات الأحدث. (I40a2b، b/207328687)

  • تمت إضافة فئة Drawables enum للحصول على موارد قابلة للرسم ضمن مكتبة Wear Compose، ما أدى إلى عدم الحاجة إلى استخدام Reflection. يعالج هذا الخلل مشكلة إزالة عناصر الرسم في المكتبة عند minifyEnabled=true أو shrinkResources=true). (Ib2a98)

  • تمت إضافة اختبارات لـ Stepper في Wear Compose (I2d03a)

  • تمت إضافة نماذج SwipeDismissableNavHost في ميزة "التنقّل في ميزة الكتابة" على Wear OS. (I85f06)

الإصدار 1.0.0-alpha12

1 كانون الأول (ديسمبر) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha12 وandroidx.wear.compose:compose-material:1.0.0-alpha12 وandroidx.wear.compose:compose-navigation:1.0.0-alpha12. يحتوي الإصدار 1.0.0-alpha12 على هذه المراجعات.

الميزات الجديدة

  • أضفنا مكوّن "مخطّط الخطوات" الذي يسمح للمستخدمين بإجراء اختيار من نطاق من القيم. "المخطّط التدريجي" هو عنصر تحكّم بملء الشاشة يتضمّن زرَّي زيادة ونقص في أعلى الشاشة وأسفلها، وفتحة في المنتصف (من المتوقّع أن تتضمّن إما شريحة أو نصًا). يمكن تخصيص رموز الأزرار إذا لزم الأمر. (I625fe)

  • أضفنا عنصرَي تركيبة جديدَين لعرض مربّعات الحوار: ينتظر AlertDialog ردًا من المستخدم ويعرض عنوانًا ورمزًا ورسالة، بالإضافة إلى أيّ مما يلي: (أ) زرَّان للاختيارات البسيطة بنعم/لا أو (ب) شرائح مُرصَّعة عموديًا أو شرائح تبديل لتوفير خيارات أكثر مرونة. يعرض ConfirmationDialog إقرارًا مع مهلة. يحتوي مربّع الحوار البسيط هذا على خانات لعنوان ورمز (متحرّك). (Ic2cf8)

تغييرات واجهة برمجة التطبيقات

  • أضِف وحدات (ملي ثانية) إلى قيم مدّة المحادثة المقترَحة. (I09b48)

الإصدار 1.0.0-alpha11

17 تشرين الثاني (نوفمبر) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha11 وandroidx.wear.compose:compose-material:1.0.0-alpha11 وandroidx.wear.compose:compose-navigation:1.0.0-alpha11. يحتوي الإصدار 1.0.0-alpha11 على هذه المراجعات.

الميزات الجديدة

  • أضفنا مكوّن أداة اختيار يتيح للمستخدم اختيار عنصر من قائمة قابلة للتنقّل. يتم تلقائيًا تكرار قائمة العناصر القابلة للاختيار "بشكل لانهائي" في كلا الاتجاهين، لإعطاء انطباع بأنّه أسطوانة دوّارة من الجانب. ستتم إضافة ميزتَين في الإصدارات اللاحقة: الالتقاط على قيمة بعد التمرير سريعًا أو التمرير سريعًا للأسفل أو للأعلى، وإضافة دالة إلى PickerState لضبط القيمة الحالية أو الانتقال إليها. (I6461b)

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة ScalingLazyItemScope وبعض المُعدِّلات الجديدة fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight للسماح بتحديد حجم عناصر القائمة استنادًا إلى حجم الحاوية الرئيسية. يمكن ضبط العناصر لملء كل حجم العنصر الرئيسي أو جزء منه. يعرِض هذا الإجراء الوظائف المتاحة حاليًا في LazyRow/Column (I4612f).
  • تمت إضافة إمكانية استخدام ScalingLazyColumn للسماح للعناصر بأن يكون لها مفتاح. تمت أيضًا إضافة طرق ملائمة للسماح بإضافة عناصر من الصفائف والقوائم. (Ic1f89)

إصلاح الأخطاء

  • أمثلة إضافية على TimeText (I8cb64)

الإصدار 1.0.0-alpha10

3 تشرين الثاني (نوفمبر) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha10 وandroidx.wear.compose:compose-material:1.0.0-alpha10 وandroidx.wear.compose:compose-navigation:1.0.0-alpha10. يحتوي الإصدار 1.0.0-alpha10 على هذه المراجعات.

الميزات الجديدة

  • تمت إضافة عنصر InlineSlider لميزة "الإنشاء على الجهاز" في نظام التشغيل Wear OS. يسمح عنصر InlineSlider للمستخدمين باختيار قيمة من نطاق من القيم. يتم عرض نطاق الاختيارات كشريط بين الحد الأدنى والحد الأقصى للقيمة، ويمكن للمستخدمين اختيار قيمة واحدة من ذلك الشريط. (If0148)

  • اطّلِع على الدرس التطبيقي الجديد حول Compose لنظام التشغيل WearOS.

تغييرات واجهة برمجة التطبيقات

  • أصبح minSdkVersion لاختبار الأداء على مستوى التطبيق الآن 23. (If2655)

إصلاح الأخطاء

  • تعديل معالجة الانتقال في SwipeDismissableNavHost في SideEffect (I04994، b/202863359)
  • تعديل معالجة الانتقال في SwipeDismissableNavHost (I1cbe0، b/202863359)

الإصدار 1.0.0-alpha09

27 تشرين الأول (أكتوبر) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha09 وandroidx.wear.compose:compose-material:1.0.0-alpha09 وandroidx.wear.compose:compose-navigation:1.0.0-alpha09. يحتوي الإصدار 1.0.0-alpha09 على هذه المراجعات.

الميزات الجديدة

  • لقد أطلقنا إصدار "معاينة المطوّر" من تطبيق Compose على نظام التشغيل Wear OS. يمكنك الاطّلاع على مشاركة المدونة التي تراجع العناصر الرئيسية التي يمكن إنشاؤها والروابط التي تؤدي إلى مزيد من المراجع لبدء استخدامها.

تغييرات واجهة برمجة التطبيقات

  • لقد أضفنا ميزة تتيح للمطوّرين تخصيص جميع الألوان في مظهر ألوان تصميم المواد في Wear. (I4759b، b/199754668)

إصلاح الأخطاء

  • تمت إضافة نماذج SwipeToDismissBox التي تحافظ على الحالة (Ibaffe)
  • تمت إضافة روابط إلى أدلة developer.android.com من KDocs لكل من CurvedText وTimeText و SwipeToDismissBox. (I399d4)
  • يُعرِض SwipeDismissableNavHost الآن خطأ في حال عدم توفّر وجهة حالية (يشير ذلك إلى أنّه لم يتم إنشاء NavGraph باستخدام دالة المرافق wear.compose.navigation.composable) (I91403)
  • تمت إضافة مستندات إضافية وأمثلة على استخدام مصدر الوقت في TimeText (I4f6f0).

الإصدار 1.0.0-alpha08

13 تشرين الأول (أكتوبر) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha08 وandroidx.wear.compose:compose-material:1.0.0-alpha08 وandroidx.wear.compose:compose-navigation:1.0.0-alpha08. يحتوي الإصدار 1.0.0-alpha08 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • أعدنا تسمية سمتَي AppCard وTitleCard body إلى content ونقلناهما إلى نهاية قائمة السمات للسماح بتقديمهما كلامدا متأخرة. تمت أيضًا إعادة تسمية bodyColor إلى contentColor للحفاظ على اتساق أسماء الفتحات الجديدة. (I57e78)

إصلاح الأخطاء

  • تمت إضافة روابط إلى developer.android.com للإرشادات من KDocs حول الزر والبطاقة والشريحة والمظهر ومؤشر الموضع ومكونات الأعمدة المتغيّرة الحجم. (I22428)
  • إصلاح مشكلة عدم معالجة التمريرات السريعة في SwipeToDismissBox على نظام التشغيل WearOS في بعض الأحيان (I9387e)
  • تمّت إضافة نماذج لـ Button وCompactButton وChip وCompactChip وAppCard وTitleCard وToggleButton وToggleChip وSplitToggleChip (Iddc15)
  • تمت إضافة اختبارات أداء اختبارات الأداء الدقيقة لعناصر Card وChip وToggleChip وTimeText وScalingLazyColumn. (If2fe9)

الإصدار 1.0.0-alpha07

29 أيلول (سبتمبر) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha07 وandroidx.wear.compose:compose-material:1.0.0-alpha07 وandroidx.wear.compose:compose-navigation:1.0.0-alpha07. يحتوي الإصدار 1.0.0-alpha07 على هذه المراجعات.

الميزات الجديدة

  • تمت إضافة مكوّن CurvedText في Material، وهو مكوّن يتيح للمطوّرين كتابة نص منحني بسهولة باتّباع منحنى الدائرة (عادةً على حافة شاشة دائرية). (I19593)

تغييرات واجهة برمجة التطبيقات

  • تمّت إضافة اختبارات لعنصر TimeText (Idfead)
  • حوِّل ArcPaddingValues إلى واجهة. (Iecd4c)
  • تمت إضافة صورة متحركة إلى SwipeToDismissBox (I9ad1b)
  • تمت إضافة مَعلمة hasBackground إلى واجهة برمجة التطبيقات SwipeToDismissBox حتى يمكن إيقاف إيماءة التمرير السريع عندما لا يكون هناك محتوى خلفية لعرضه. (I313d8)
  • يقبل العنصر rememberNavController() الآن مجموعة اختيارية من نُسخ Navigator التي ستتم إضافتها إلىNavController المعروضة للسماح بشكل أفضل باستخدام المتنقّلين الاختياريين، مثل تلك الواردة من مادة التنقّل المصاحبة. (I4619e)
  • يمكنك الإشارة إلى NamedNavArgument من navigation-common وإزالة النسخة من wear.compose.navigation. (I43af6)

إصلاح الأخطاء

  • تم إصلاح مشكلة عدم ثبات اختبار CurvedRow على الأجهزة الأصغر حجمًا. (If7941)
  • تم إصلاح مشكلة وميض محتمل في CurvedRow عند تعديل المحتوى، وتأكّد من إعادة قياس الصف المنحني (Ie4e06).
  • تم تعديل ChipDefaults.gradientBackgroundChipColors() بما يتوافق مع التغييرات في مواصفات تجربة المستخدم. يبدأ التدرّج الآن باستخدام MaterialTheme.colors.primary مع قيمة شفافية% 32.5 وينتهي باستخدام MaterialTheme.colors.surface مع قيمة شفافية% 0 على خلفية MaterialTheme.colors.surface مع قيمة شفافية% 75. (Id1548)
  • لقد عدّلنا ألوان ToggleChips عندما تكون في الحالة المحدّدة لتتوافق مع أحدث إرشادات مواصفات تجربة المستخدم في Wear Material Design. عند تحديد ToggleChips، أصبح لها الآن خلفية متدرجة من MaterialTheme.color.surface‏ @ 0% شفافية في أعلى يمين الشاشة إلى MaterialTheme.color.primary‏ @ 32% شفافية في أسفل يمين الشاشة، فوق خلفية MaterialTheme.color.surface‏ @ 75% شفافية. ويؤدي ذلك إلى اختلاف أكثر دقة بين القيمة المحدَّدة وغير المحدَّدة لعنصر ToggleChip. (Idd40b)

الإصدار 1.0.0-alpha06

15 أيلول (سبتمبر) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha06 وandroidx.wear.compose:compose-material:1.0.0-alpha06 وandroidx.wear.compose:compose-navigation:1.0.0-alpha06. يحتوي الإصدار 1.0.0-alpha06 على هذه المراجعات.

الميزات الجديدة

  • أضفنا Scaffold، وهو عنصر قابل للتجميع على مستوى التطبيق يقدّم بنية لمعالجة موضع مؤشرات الموضع (مثل التمرير أو مستوى الصوت)، ومساحة في أعلى الشاشة لعرض الوقت وحالة التطبيق، كما يتيح استخدام مؤثر الصورة المموّهة لتمويه الحافة العلوية والسفلية للشاشة للمحتوى الذي يمكن التمرير فيه. وتكون المنطقة الرئيسية في "الهيكل الأساسي" هي المكان الذي يتم فيه وضع محتوى التطبيق. (I5e0bf)
  • تمت إضافة تنفيذ TimeText لميزة "الكتابة السريعة" في Wear OS (I5654c)

مكتبة التنقّل في ميزة "الإنشاء" على Wear

  • لقد أضفنا الإصدار الأول من مكتبة التنقّل في Wear Compose، والتي توفّر عملية دمج بين مكتبتَي Wear Compose وAndroidx Navigation. وتوفّر وسيلة بسيطة للتنقل بين دوال @Composable بصفتها الوجهات في تطبيقك.

  • يوفّر هذا الإصدار الأولي ما يلي:

    • عنصر SwipeDismissableNavHost قابل للتجميع يستضيف رسمًا بيانيًا للتنقّل ويوفّر إمكانية التنقّل للخلف من خلال إيماءات التمرير السريع
    • NavGraphBuilder.composable إضافة للمساعدة في إنشاء الرسوم البيانية للتنقّل
    • rememberSwipeDismissableNavController() للسماح بنقل القيمة
  • مثال على الاستخدام حيث ننشئ شاشتَين ونتنقل بينهما:

    val navController = rememberSwipeDismissableNavController()
    SwipeDismissableNavHost(
        navController = navController,
        startDestination = "start"
    ) {
        composable("start") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Button(onClick = { navController.navigate("next") }) {
                    Text("Go")
                }
            }
        }
        composable("next") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Text("Swipe to go back")
            }
        }
    }
    
  • يتم تجميع واجهة تنقّل Wear Compose كمكتبة منفصلة لكي لا تعتمد تطبيقات WearCompose البسيطة التي تُنفِّذ واجهة تنقّل مُعدَّة يدويًا على مكتبة Androidx Navigation.

تغييرات واجهة برمجة التطبيقات

  • تم تعديل SwipeDismissableNavHost لتتوافق مع rememberSaveable من خلال ضبط هوية المفتاح للخلفية والمحتوى (I746fd)
  • أضفنا محوِّل PositionIndicator يمكنه التعامل مع LazyListState (I21b88).
  • تم تعديل SwipeToDismissBox للسماح بتذكر العناصر التي يمكن حفظها (Ie728b)
  • أضفنا تنسيق reverseLayout إلى ScalingLazyColumn. يتيح ذلك عكس اتجاه الانتقال إلى أعلى أو أسفل الصفحة واتجاه التنسيق (I9e2fc).
  • تم إيقاف performGesture وGestureScope نهائيًا، وتم استبدالهما بـ performTouchInput وTouchInjectionScope. (Ia5f3f، b/190493367)
  • أعدنا تسمية VignetteValue إلى VignettePosition وأعدنا تسمية VignetteValue.Both إلى VignettePosition.TopAndBottom. (I57ad7)
  • لقد أعادنا تسمية ScalingLazyColumnState إلى ScalingLazyListState وScalingLazyColumnItemInfo إلى ScalingLazyListItemInfo وScalingLazyColumnLayoutInfo إلى ScalingLazyListLayoutInfo وScalingLazyColumnScope إلى ScalingLazyListScope في حال قرّرنا إضافة تنفيذ ScalingLazyRow في المستقبل. (I22734)

إصلاح الأخطاء

  • تم تعديل مستندات CompactChip لوصف ما يحدث في حال عدم توفير رمز أو تصنيف. (I4ba88)
  • أجرينا بعض التعديلات على مكوّنات بطاقة Wear. (I6b3d0)
    1. تم تقليل المسافة بين العنوان والنص في TitleCard من 8.dp إلى 2.dp.
    2. تم تغيير خط عنوان TitleCard من body إلى title3.
    3. تم تغيير تدرج ألوان خلفية البطاقة لجعل الخلفية تبدو أكثر قتامة.

الإصدار 1.0.0-alpha05

1 أيلول (سبتمبر) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha05 وandroidx.wear.compose:compose-material:1.0.0-alpha05. يحتوي الإصدار 1.0.0-alpha05 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • وضع علامة على ArcPaddingValues على أنّها @Stable (I57deb)
  • تُطبّق ScalingLazyColumnState الآن واجهة ScrollableState، ما يمنح المطوّرين إمكانية الوصول الآلي إلى العنصر من أجل التمرير فيه. (I47dbc)

إصلاح الأخطاء

  • لقد قلّلنا المسافة بين الرمز والنص في Chip وToggleChip لمواءمتها مع التعديلات على مواصفات تجربة المستخدم (I83802).

الإصدار 1.0.0-alpha04

18 آب (أغسطس) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha04 وandroidx.wear.compose:compose-material:1.0.0-alpha04. يحتوي الإصدار 1.0.0-alpha04 على هذه المراجعات.

الميزات الجديدة

  • تمت إضافة عنصر SwipeToDismissBox ومُعدِّل قابل للتمرير يمكن استخدامه ل إتاحة إيماءة التمرير السريع من اليمين إلى اليسار لإغلاق التطبيق. على الرغم من أنّه مستقل عن مكوّنات التنقّل، من المتوقّع أن يتم استخدامه للخروج من شاشة والانتقال إلى أخرى. تمت إضافة اختبارات دمج لعرض ميزة التمرير السريع لإغلاق التطبيق. (I7bbaa)
  • أضفنا واجهتَي ScalingLazyColumnItemInfo وScalingLazyColumnLayoutInfo إلى فئة ScalingLazyColumnState لتمكين المطوّرين من معرفة مواضع العناصر وأحجامها الفعلية في ScalingLazyColumn بعد تطبيق التصغير/التكبير. لقد أصلحنا أيضًا خطأ في طريقة احتساب التكبير/التصغير عند تطبيق الحشو "أعلى" للمحتوى على ScalingLazyColumn. (I27c07)

تغييرات واجهة برمجة التطبيقات

  • أضِف فئة CurvedTextStyle لتحديد خيارات تنسيق النص المنحني. يشبه TextStyle، ولكنّه يتيح الآن استخدام اللون وfontSize والخلفية فقط. ستتم إضافة المزيد من خيارات التصميم في المستقبل. (I96ac3)
  • أضفنا واجهتَي ScalingLazyColumnItemInfo وScalingLazyColumnLayoutInfo إلى فئة ScalingLazyColumnState لتمكين المطوّرين من معرفة مواضع العناصر وأحجامها الفعلية في ScalingLazyColumn بعد تطبيق التصغير/التكبير. لقد أصلحنا أيضًا خطأ في طريقة احتساب التكبير/التصغير عند تطبيق الحشو "أعلى" للمحتوى على ScalingLazyColumn. (I27c07)
  • تمت إضافة @ExperimentalWearMaterialApi إلى قائمة القيم المحدَّدة SwipeDismissTarget، وهي جزء من واجهة برمجة التطبيقات SwipeToDismissBox. (I48b5e)

إصلاح الأخطاء

  • تمت إضافة مادة اختبارية لعنصر SwipeToDismissBox (I9febc)

الإصدار 1.0.0-alpha03

4 آب (أغسطس) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha03 وandroidx.wear.compose:compose-material:1.0.0-alpha03. يحتوي الإصدار 1.0.0-alpha03 على هذه المراجعات.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة مكوّن CurvedText الذي يتيح للمطوّرين كتابة نص بسهولة باتّباع منحنى الدائرة (عادةً على حافة شاشة دائرية) (Id1267).
  • لقد أعادنا تسمية الخيار CardDefaults.imageBackgroundPainter() إلى CardDefaults.imageWithScrimBackgroundPainter() لتوضيح أنّه سيتم رسم ستارة على صورة الخلفية. (I53206)
  • إضافة مكوّن ScalingLazyColumn الذي يقدّم مكوّن قائمة لنظام التشغيل Wear Material يمنح عرضًا بزاوية عريضة مع تصغير حجم محتوى القائمة وتصبح شفافة عند تصغيرها باتجاه حافة المكوّن (I7070c)

إصلاح الأخطاء

  • لقد غيّرنا اللون التلقائي لمحتوى appName في بطاقة التطبيق استجابةً لتعديل في مواصفات تجربة المستخدم. أصبح اللون التلقائي لسمة appName هو MaterialTheme.colors.onSurfaceVariant. بالإضافة إلى ذلك، تمت إضافة وصف لمستند المَعلمة غير المتوفّر في خانة العنوان. (Ic4ad1)

الإصدار 1.0.0-alpha02

21 تموز (يوليو) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha02 وandroidx.wear.compose:compose-material:1.0.0-alpha02. يحتوي الإصدار 1.0.0-alpha02 على هذه المراجعات.

الميزات الجديدة

  • تمت إضافة فئة جديدة CurvedRow لعرض العناصر القابلة للتجميع في قوس (I29941).
  • تمت إضافة نوع جديد من البطاقات لاستخدامها في التطبيقات (TitleCard)، كما تمت إضافة إمكانية استخدام الصور كخلفية للبطاقات لتمييز محتواها (I53b0f).

تغييرات واجهة برمجة التطبيقات

  • إتاحة المحاذاة الشعاعية في CurvedRow (مثل المحاذاة العمودية في صف) (Id9de5)
  • إضافة فئة جديدة CurvedRow إلى العناصر القابلة للتجميع في شكل قوس (I29941)
  • تمت إضافة نوع جديد من البطاقات لاستخدامها في التطبيقات (TitleCard)، كما تمت إضافة إمكانية استخدام الصور كخلفية للبطاقات لتمييز محتواها (I53b0f).
  • تمت إضافة رموز التبديل (مربّع الاختيار ومفتاح التبديل وأزرار الاختيار) إلى ToggleChipDefaults لتسهيل ضبط ToggleChip وSplitToggleChips على المطوّرين (I7b639)
  • تم تعديل مساحة الحشو في بداية الشرائح ونهايتها لتكون 14.dp بشكلٍ ثابت بغض النظر عمّا إذا كانت الشريحة تتضمّن رمزًا أم لا (كانت في السابق 12.dp إذا كانت الشريحة تتضمّن رمزًا و14.dp إذا لم تكن تتضمّن رمزًا) (I34c86)

إصلاح الأخطاء

  • إضافة اختبارات لعنصر CurvedRow (I93cdb)
  • ربط تبعيات Wear Compose بـ Compose 1.0.0-rc01 (Ie6bc9)
  • تم تغيير طريقة رسم صورة الخلفية في البطاقات والرقائق بحيث يتم اقتصاص الصورة بدلاً من تمديدها للحفاظ على نسب الصورة. (I29b41)
  • تمت إضافة المزيد من العروض التوضيحية واختبارات الدمج لعنصرَي Button وToggleButton. (5e27ed2)
  • تمت إضافة المزيد من اختبارات الشرائح لتغطية ألوان المحتوى لشرائح imageBackgroundChips (Ia9183)

الإصدار 1.0.0-alpha01

1 تموز (يوليو) 2021

تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha01 وandroidx.wear.compose:compose-material:1.0.0-alpha01. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.

الميزات الجديدة

‫Wear Compose هي مكتبة Kotlin تستند إلى Compose وتتوافق مع التصميم المتعدد الأبعاد لنظام التشغيل WearOS، وهو امتداد للتصميم المتعدد الأبعاد لأجهزة WearOS القابلة للارتداء. يتضمّن هذا الإصدار الأول من الإصدار التجريبي الأولي عمليات تنفيذ وظيفية مبكّرة لما يلي:

  • مظهر Material: لضبط الألوان وأسلوب الخط والأشكال بشكلٍ متسق في جميع المكوّنات المستخدَمة من هذه المكتبة
  • شريحة، شريحة مدمجة: تكون الشرائح على شكل ملعب، وتتوفّر أشكال مختلفة لعرض المحتوى المخصّص للرمز والتصنيف والتصنيف الثانوي.
  • ‫- ToggleChip وSplitToggleChip: نوعان متخصصان من الشرائح يتضمّنان خانة لرمز تبديل ثنائي الحالة، مثل زر اختيار أو مربّع اختيار. بالإضافة إلى ذلك، تحتوي علامة SplitToggleChip على منطقتَين يمكن النقر عليهما، إحداهما قابلة للنقر والأخرى قابلة للتبديل.
  • Button وCompactButton: تكون الأزرار دائرية الشكل، وتتضمّن خانة محتوى واحدة لعرض رمز أو نص بسيط (3 أحرف بحد أقصى).
  • ToggleButton: زر يشغِّل إجراءً أو يوقِفه، مع فتحة واحدة للرمز أو نص بسيط (3 أحرف بحد أقصى).
  • البطاقة، بطاقة التطبيق: مستطيلة الشكل ذات زوايا مستديرة، وتقدّم خانات للمحتوى، مثل رمز التطبيق والوقت والعنوان والنص.

ستوسّع الإصدارات المستقبلية مجموعة التطبيقات المصغّرة من خلال إضافة أدوات اختيار وقوائم ومؤشرات صفحات ومحادثات ومؤشرات شريط التمرير ورسائل فورية وغيرها من عناصر التصميم المتعدّد الأبعاد في Wear.

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

تم تصميم واجهة Compose Material على Wear بالمبادئ نفسها المستخدَمة في واجهة Compose Material، على الرغم من أنّها مخصّصة للأجهزة القابلة للارتداء. يجب استخدام مكتبة Material Compose لنظام التشغيل Wear بدلاً من مكتبة Material Compose عند إنشاء تطبيق مخصّص لأجهزة Wearables.

يجب اعتبار مكتبتَي "المادة" متبادلتَين ولا يجب خلطهما في التطبيق نفسه. إذا وجد المطوّرون أنّهم يُدرِجون مكتبة Compose Material في التبعيات، يعني ذلك أنّه: (أ) هناك مكوّنات غير متوفّرة في مكتبة Wear Compose Material، يُرجى إعلامنا بما تحتاجه، أو (ب) يتم استخدام مكوّن لا ننصح باستخدامه على جهاز قابل للارتداء.