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

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

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

لإضافة الاعتمادية على 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-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()" إلى "علني" في فئات Wearmaterial3 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 OS وهما يمثّلان صورًا متحركة جديدة وتنسيقًا بين مكوّنات النص الزمني ومؤشر الصفحة. (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)
  • وقد أضفنا دعمًا لـ Wear Compose LazyColumn من خلال ScreenScaffold (وأضفنا تطبيق ScrollInfoProvider على LazyColumnState). (Ib8d29)
  • لقد دمجنا LocalTextMaxLines وLocalTextAlign وLocalTextOverflow في تركيبة LocalTextConfiguration واحدة على الجهاز لتوفير حلّ أكثر قابلية للتوسع في المستقبل. (I5edbc)
  • لقد أضفنا قوسًا كبيرًا بنمط قوسي كمقياس إضافي، وهو محجوز لسلاسل نصية قصيرة للعناوين في أعلى الشاشة أو أسفلها، كما هو الحال في "تراكبات التأكيد". (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، وهي تنسيقات لعرض طلبات مهمة للمستخدم. يتم تضمين الاختلافات إما لزوج من أزرار التأكيد/الإغلاق أو لزر سفلي واحد (عادةً ما يكون زر Edge) أسفل مجموعة من الخيارات. يتضمّن كلا الخيارَين خانات للرمز والعنوان والنص الإضافي لتقديم مزيد من التفاصيل. (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 عمليات الربط هذه.

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

  • تم تحديث Material3 ColorScheme. (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، الذي يمكنه استخدام الألوان نفسها التي تستخدمها سمة الزر، سواء كانت ملونة أو ملونة مع درجات لون أو مخطّطة.(I05df0)

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

  • أضفنا RadioButton/SplitRadioButton كسِيّارات لعناصر التحكّم في الاختيار، مثل عنصر التحكّم في زر الاختيار. يختلف هذا عن العنصر ToggleButton الحالي في أنّ RadioButton قابل للاختيار (ويعمل ضمن مجموعة اختيار) في حين أنّ ToggleButton قابل للتبديل (وهو مستقل). (I61275)
  • نحن بصدد إزالة LocalContentAlpha من مكتبة Wear Compose Material3 من أجل التوافق مع مكتبة Compose Material3. (I49a0a)
  • تم تعديل مكوّنات Wear Material وWear Material3 التي تعرض MutableInteractionSource في واجهة برمجة التطبيقات لتعرض الآن MutableInteractionSource قابلاً للتغيير إلى قيمة فارغة. ما مِن تغييرات دلالية هنا: يعني تمرير القيمة null أنّك لا تريد رفع MutableInteractionSource، وسيتم إنشاؤه داخل المكوّن إذا لزم الأمر. يؤدي التغيير إلى قيمة فارغة إلى عدم تخصيص بعض المكوّنات MutableInteractionSource مطلقًا، كما يسمح للمكوّنات الأخرى بإنشاء مثيل بشكل كسول فقط عند الحاجة، ما يؤدي إلى تحسين الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدم MutableInteractionSource التي تمرِّرها إلى هذه المكوّنات، ننصحك باستخدام قيمة null بدلاً من ذلك. وننصحك أيضًا بإجراء تغييرات مشابهة في مكوّناتك. (Ib90fc، b/298048146)
  • تضيف هذه الواجهة واجهة برمجة تطبيقات Ripple جديدة في مكتبات 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. وهذا يجعل التمييز أكثر وضوحًا بين المكوّن على مستوى الأساس والمستوى SwipeToDismissBox من مادة 3. يسحب هذا الأخير الألوان من 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 إلى 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 التي يُطلق على اسمها الأساسي 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)
  • لقد حدثنا عددًا من العروض التوضيحية للأزرار لمعالجة مشاكل إمكانية الوصول. (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 - وهو زر على شكل استاد كان يُعرف باسم "تشيب" في مكتبة Wear Compose Material (تمت إعادة تسميته إلى "Button" لتحقيق الاتساق مع مكتبة Compose Material 3). يكون للزر التلقائي خلفية معبأة وهناك تباينات للأزرار الخاصة بـ FilledTonal (خلفية مكتومة) ومُحددة (شفافة بحدود رفيعة) وعنصر ثانوي (خلفية شفافة وبدون حدود، ويتم استخدامه للإجراءات التكميلية ذات أقل قدر من البروز). ستتوفّر أزرار مستديرة لمحتوى الرموز والنصوص البسيطة في إصدار مستقبلي.(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 Compose لتتلاءم مع مكتبة 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-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)
  • لقد عدّلنا مستندات "مربّع حوار المواد" لتوضيح أنّه لا يتم استدعاء onDismissRequest بعد ضبط علامة العرض على "خطأ". (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 الجديدة. (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 Dialog حيث لم يكن يتم استدعاء الدالة 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 OS. ويعني ذلك أنّه يجب تعديل اختبارات لقطات الشاشة على الشاشات التي تتضمّن 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، وسيتم إنشاؤه داخل المكوّن إذا لزم الأمر. يؤدي التغيير إلى قيمة فارغة إلى عدم تخصيص بعض المكوّنات MutableInteractionSource مطلقًا، كما يسمح للمكوّنات الأخرى بإنشاء مثيل بشكل كسول فقط عند الحاجة، ما يؤدي إلى تحسين الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدم MutableInteractionSource التي تمرِّرها إلى هذه المكوّنات، ننصحك باستخدام قيمة null بدلاً من ذلك. وننصحك أيضًا بإجراء تغييرات مشابهة في مكوّناتك. (f8fa920)
  • تم تعديل rememberExpandableState لحفظ الحالة القابلة للتوسيع. ويضمن ذلك تخزين البيانات عند الانتقال إلى شاشة أخرى واستعادتها عند العودة إلى الشاشة الأصلية. (5c80095)

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

  • لقد عدّلنا إعداد ReduceMotion لاستخدام مستمع يراعي دورة الحياة. (7c6b122)
  • لقد عدّلنا ملف "المستمع" في TouchExplorationStateProvider ليكون على دراية بالحالة (be28b01).
  • لقد أزلنا طبقة المادة الأساسية 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 إلى الإصدار التجريبي 01 من 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)
  • أزلنا طبقة النواة المادية لرقاقة المواد لتحسين أدائها. (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)
  • لقد أوقفنا المواد SwipeToDismissBoxState وSwipeToDismissValue وedgeSwipeToDismiss بعد نقل وظيفة "التمرير السريع للإغلاق" إلى wear.compose.foundation. يُرجى استبدالها بقيم wear.compose.foundation المكافئة. (Iee8c9)

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

  • لقد عدّلنا الملفات الشخصية الأساسية لمكتبات Wear Compose الأساسية والمواد والتنقّل. (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. لقد تم إيقاف واجهة برمجة التطبيقات السابقة نهائيًا، وتتم إعادة توجيه الطلبات إلى الواجهة الجديدة. لأسباب تتعلق بالأداء واتّساق تجربة المستخدم، عند استخدام PositionIndicator مع قائمة قابلة للتمرير، ننصحك بإيقاف علامتَي showFadeInAnimation وshowPositionAnimation. في حال استخدام 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 Compose لاستخدام مكتبة 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 إلى سمة "مؤسسة"، تتم الآن إعادة توجيه عملية تنفيذ المادة SwipeToDismissBox إلى "مؤسسة" وتوفير قيم الألوان التلقائية من موضوعها.(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

  • الإصدار الثابت من تطبيق Compose لنظام التشغيل Wear OS 1.2.0 (مزيد من المعلومات)
  • للحصول على قائمة بالتغييرات الأساسية في الإصدار 1.2 من Wear Compose، يمكنك الاطّلاع على ملاحظات الإصدار (Compose for Wear OS 1.2beta01).

الإصدار 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، كما تفعِّل ميزة التوسيط التلقائي لعناصر الاختيار.
  • 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 التعليقات التوضيحية التالية والمعاينة المتعدّدة: العناصر القابلة للإنشاء على جهاز قابل للارتداء بأحجام خطوط متعدّدة، في حين يعاين WearPreviewDevices العناصر القابلة للإنشاء على أجهزة Wear OS مختلفة.
  • أضفنا 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)

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

  • تم إصلاح مشكلة توقُّف "ScalingLazyColumn" على واجهة برمجة تطبيقات Wear API 33 بعد الانتقال إلى الصفحة (Ic4599).
  • لقد أجرينا بعض التحسينات على أداء "PositionIndicator" للحدّ من التعطّل. (I35e92)
  • أصلحنا خطأً في "الشريحة" و"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 يعالج التركيز بشكلٍ صحيح عندما لا يكون لدى أداة الاختيار التركيز. كما أضفنا دعمًا لتمرير RSB في عروض أداة الاختيار. (If8c19)
  • لقد أجرينا تحسينات على انتقالات المحادثات، وأصبح انتقال المحادثة الافتتاحية الآن أكثر سلاسة ليتناسب مع انتقال المحادثة الختامية. (Ib5af9)
  • أضفنا DefaultTextStyle إلى Wear Compose لضبط السمة PlatformTextStyle.includeFontPadding تلقائيًا على true (هذا هو الإعداد الحالي). سيتيح لنا ذلك مزامنة إيقاف حشوة الخط تلقائيًا مع مكتبات Compose في المستقبل. يُرجى الاطّلاع على (إصلاح حشوة الخط في 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. (Ifc42c)
  • لقد عدّلنا واجهات برمجة تطبيقات Dialog من أجل استخدام 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 لإزالة صباحًا/مساءً في TimeText. سيؤدي هذا إلى تغيير القيمة التلقائية لمَعلمات timeSource في TimeText API. (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 لتجنُّب القسمة على صفر من الأخطاء.(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% من السطح الأساسي 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-للموضع ومؤشرات الصفحة في Scaffold. وسيتم وضع المؤشرات الآن أعلى المقالة القصيرة وبالتالي لن يتم حجبها بواسطة المقالة القصيرة إذا كانت موجودة. (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.dp بين التصنيف ومنطقة رمز التحكّم الخاصة بالتبديل بحجم 24x24.dp. للحصول على عرض إجمالي يبلغ 28.dp. ومع ذلك، يعرض التنفيذ بشكلٍ غير صحيح منطقة التحكّم في التبديل التي تبلغ 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 قد يؤدي إلى عدم اكتمال إعداد القوائم التي تحتوي على عدد صغير (عادةً 2) عناصر قائمة، ما يؤدي إلى عدم اكتمال عملية الإعداد. (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 for 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 من البداية إلى 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 Design. يوفّر تأثيرات التكبير والتصغير والشفافية لعناصر المحتوى. تم تصميم ScalingLazyColumn ليتمكّن من التعامل مع أعداد كبيرة من عناصر المحتوى التي لا يتم إنشاؤها وعرضها إلا عند الحاجة.
  • شريط التمرير: يسمح للمستخدمين بإجراء اختيار من نطاق من القيم. يتم عرض نطاق الاختيارات كشريط، ويمكن عرضه اختياريًا مع فواصل.
  • أداة الخطوة: عنصر بملء الشاشة يسمح للمستخدمين بإجراء اختيار من نطاق قيم باستخدام أزرار الزيادة/النقصان في أعلى الشاشة وأسفل الشاشة، مع توفير خانة في المنتصف للنص أو الشريحة.
  • SwipeToDismissBox: يعالج إيماءة التمرير السريع لإغلاق العنصر. ويشغل مساحة واحدة للخلفية (التي لا تظهر إلا أثناء إيماءة التمرير السريع) والمحتوى في المقدّمة. يمكن دمج هذه الميزة اختياريًا مع مكتبة التنقّل في androidx باستخدام ميزة SwipeDismissableNavHost (يُرجى الاطّلاع على مكتبة التنقّل في نظام التشغيل Wear Compose أدناه).
  • النص - تنفيذ على Wear لمكون Compose Material Text، مع مراعاة اللون وألفا من مظهر Wear Material Theme
  • TimeText: مكوّن لعرض الوقت وحالة التطبيق في أعلى الشاشة يتم تعديله وفقًا لشكل الشاشة باستخدام نص منحني على الشاشات المستديرة.
  • الصورة المموّهة: معالجة للشاشة لاستخدامها في واجهة المستخدم الأساسية التي تمويه الجزء العلوي والسفلي من الشاشة عند استخدام محتوى قابل للتمرير.

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

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

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

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

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

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

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

  • <b>التمرير السريع NavHost - يوفر مكانًا في التسلسل الهرمي "Compose" (إنشاء) كي تحدث عملية التنقل المستقلة، مع إمكانية التنقل إلى الخلف عن طريق إيماءة التمرير السريع. يتم عرض المحتوى ضمن SwipeToDismissBox، ما يشير إلى مستوى التنقّل الحالي. أثناء إيماءة التمرير السريع للإغلاق، يتم عرض مستوى التنقل السابق (إن وجد) في الخلفية.

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

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

  • تمت إضافة CurvedModifier.padding* دالة. تُستخدَم هذه العناصر لتحديد مساحة إضافية ليتمّ إضافتها حول مكوّن منحني. (I4dbb4)
  • تمت إزالة الفئة الداخلية CompositionLocal (I42490).
  • أضفنا قيمًا ثابتة لحجم الرموز Button وCompactButton وToggleButton، وذلك من باب الإرشاد. (I57cab)
  • أضِف مَعلمة مفعَّلة إلى AppCard وTitleCard. والآن، تتوفّر واجهة برمجة تطبيقات مشابهة لواجهات برمجة تطبيقات "بطاقات androidx.compose.material". وعند ضبط المَعلمة على false، لن تكون البطاقة قابلة للنقر. (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 إلى بعض خانات المحتوى القابل للإنشاء للإشارة إلى المطوّرين بشأن افتراضات التصميم. سيتيح ذلك للمطوّرين استخدام عوامل تعديل إضافية على بعض محتوى الخانات الإعلانية وتجنُّب الحاجة إلى تقديم عناصر تنسيق إضافية. بالإضافة إلى ذلك، أجرينا بعض التعديلات البسيطة على ألوان AppCard/TitleCard كي يتم ضبط 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 Material Design. يؤدي هذا مرئيًا إلى بدء عناصر القائمة في الحجم لتصبح أقرب إلى مركز القائمة، ولكن تصبح أقل في حافة القائمة من ذي قبل. (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 من ميزة Compose لألوان المظاهر المتعددة في WearOS واستبدلنا الاستخدامات في المكتبة بـ onSurfaceVariant. (Icd592)
  • تمت إضافة طريقة لاختيار خيار بشكل آلي في PickerState، ويمكن الآن أيضًا تحديد الخيار المحدّد في البداية عند إنشاء PickerState. (I92bdf)
  • لقد أضفنا إمكانية تخصيص سلوك التمرير السريع للعنصر ScalingLazyColumn. (I1ad2e، b/208842968)
  • أضفنا NavController.currentBackStackEntryAsState() إلى مكتبة Wear.Compose.Navigation. (If9028، b/212739653)
  • تمت إضافة Modifier.onRotaryScrollEvent() وModifier.onPreRotaryScrollEvent() لأجهزة Wear OS التي تتضمّن زرًا جانبيًا دوّارًا (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)
  • تعديل طريقة معالجة عملية النقل في SquickRemoveableNavHost (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 على هذه المراجعات.

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

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

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

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

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

  • تمت إضافة عينات scrollToSellBox التي لا تزال مستمرة (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 التي تم إرجاعها للتوافق بشكل أفضل مع المستكشفين الاختياريين، مثل الذين يستخدمون Accompanist Navigation Material. (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، وهو عنصر قابل للتجميع على مستوى التطبيق يقدّم بنية لمعالجة موضع مؤشرات الموضع (مثل التمرير أو مستوى الصوت)، ومساحة في أعلى الشاشة لعرض الوقت وحالة التطبيق، كما يتيح استخدام مؤثر الصورة المموّهة لتمويه الحافة العلوية والسفلية للشاشة للمحتوى الذي يمكن التمرير فيه. المنطقة الرئيسية في Scaffold هي المكان الذي يتم فيه وضع محتويات التطبيق. (I5e0bf)
  • تمت إضافة تنفيذ TimeText لميزة "الكتابة السريعة" في Wear OS (I5654c)

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

  • لقد أضفنا الإصدار الأول من مكتبة Wear Compose للتنقّل، التي توفّر تكاملاً بين مكتبتَي Wear Compose وAndroidx. وتوفّر وسيلة بسيطة للتنقل بين دوال @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 على هذه المراجعات.

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

  • وضع علامة @Stable على ArcPaddingValues (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: نوعان متخصصان من الشرائح يتضمّنان خانة لرمز تبديل ثنائي الحالة، مثل زر اختيار أو مربّع اختيار. بالإضافة إلى ذلك، تحتوي SegmentToggleChip على منطقتين قابلتين للنقر، إحداهما قابلة للنقر، والأخرى قابلة للنقر.
  • Button وCompactButton: تكون الأزرار دائرية الشكل، وتتضمّن خانة محتوى واحدة لعرض رمز أو نص بسيط (3 أحرف بحد أقصى).
  • زر التبديل - زر لتشغيل أحد الإجراءات أو إيقافه، به فتحة واحدة للرمز أو الحد الأدنى من النص (3 أحرف كحد أقصى).
  • بطاقة وAppCard - مستطيلة الشكل بزوايا مستديرة، توفر خانات للمحتوى مثل رمز التطبيق والوقت والعنوان والجسم.

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

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

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

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