כתיבה ב-Wear

  
כדי לכתוב אפליקציות Jetpack Compose למכשירי Wear OS, צריך לספק פונקציונליות שתומכת בגדלים שונים של מכשירים ובמחוות ניווט.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
‫19 בנובמבר 2025 1.5.5 - - ‎1.6.0-alpha05

הצהרה על יחסי תלות

כדי להוסיף תלות ב-Wear, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.

מוסיפים את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle של האפליקציה או המודול:

מגניב

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

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

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

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.5.5")
    
    // 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.5.5")

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

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

    // 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.
}

מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ב-build.

משוב

המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לשמוע מכם אם תגלו בעיות חדשות או אם יש לכם רעיונות לשיפור הספרייה הזו. לפני שיוצרים ספרייה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להוסיף את ההצבעה שלכם לבעיה קיימת, לוחצים על לחצן הכוכב.

יצירת בעיה חדשה

מידע נוסף זמין במאמרי העזרה בנושא הכלי למעקב אחר בעיות.

גרסה 1.6 של Wear Compose

גרסה ‎1.6.0-alpha05

‫19 בנובמבר 2025

androidx.wear.compose:compose-*:1.6.0-alpha05 משוחרר. גרסה ‎1.6.0-alpha05 מכילה את הקומטים האלה.

שינויים ב-API

  • הוספנו את RotarySnapSensitivity להתנהגות של סיבוב עם הצמדה ואת PagerSensitivity להתנהגות של החלקה בדפדוף, כדי לאפשר לאפליקציות לשנות את רמת הרגישות של סיבוב והחלקה בדפדוף, במיוחד בדפדפנים. (Ic3a83, ‏ b/449949891)
  • שינויים פשוטים ב-rememberTransformingLazyColumnState שבוצעו עם ההשקה של פריסה הפוכה ב-TransformingLazyColumn, איחוד לפונקציה אחת ושימוש בערך שומר מקום כדי להשתמש באינדקס ברירת המחדל של העוגן. (I09302, b/453731755)
  • נוסף ערך ברירת מחדל חדש GenericFailureIcon לשימוש ב-FailureConfirmationDialog, שכולל סמל שגיאה גנרי. השם של FailureIcon שונה ל-ConnectionFailureIcon. ‫(I8e965, ‏ b/453730430)

תיקוני באגים

  • שיפרנו את TimePicker כך שיהיה חזק יותר בניתוח דפוסים מורכבים של לוקאל. (I7b169, b/456538838)
  • תוקן הפריסה הראשונית של TransformingLazyColumn כש-verticalArrangement הוא Arrangement.Center. (Id18ef, ‏ b/451481233)
  • התאמה של ה-constructor‏ TransformingLazyColumnState לפונקציה rememberTransformingLazyColumnState (I36d6a, ‏ b/453731755)
  • הסמל של סימן הוי CheckboxButton עודכן לצורה מעוגלת. (Ie645e, b/378645751)
  • הסמל של סימן הוי SwitchButton עודכן לצורה מעוגלת. (I31fbf, ‏ b/378642590)
  • תוקן ההיסט scrollToItem ב-TransformingLazyColumn שגרם להיפוך כיוון הגלילה. (Ib2c93, ‏ b/451481233)
  • שיפור הביצועים של SwitchButton ושל SplitSwitchButton. (I708de, ‏ b/448781327)

גרסה ‎1.6.0-alpha04

‫22 באוקטובר 2025

androidx.wear.compose:compose-*:1.6.0-alpha04 משוחרר. גרסה ‎1.6.0-alpha04 מכילה את הקומטים האלה.

שינויים ב-API

  • הטמעה של reverseLayout עבור TransformingLazyColumn (I19f9e, ‏ b/352513793)
  • הוספנו את ConfirmationDialogDefaults.VariantFailureIcon לשימוש ב-FailureConfirmationDialog. יכול להיות שבמקרים מסוימים עדיף להשתמש בסמל השגיאה הגנרי החדש הזה, במקום בסמל ConfirmationDialogDefaults.FailureIcon שמראה חיבור לא תקין לטלפון. (Ifc851, ‏ b/443115305)

תיקוני באגים

  • שיפרנו את הביצועים של הכלי לבחירת קבצים על ידי שינוי מבנה הקוד של השימוש ב-LaunchedEffect. (I94519, ‏ b/418192973)
  • תוקן באג ב-SwipeDismissableNavHost ב-API36+, שבו לחיצה על לחצן החזרה במהלך אנימציה של חיזוי תנועת החזרה קטעה את האנימציה והפעילה אותה מחדש. ההטמעה משתמשת עכשיו ב-SeakableTransitionState.animateTo במקום ב-Animatable, מה שמשפר מעט את הביצועים. (I2241f, ‏ b/428156670)
  • תוקן באג שקשור לסדר ההכרזות על נגישות ב-AlertDialog, שבו כפתור האישור הוכרז כ-Button. במקום 'אישור' הרגיל, מופיע 'אישור'. כפתור'. (‫Ic2381, ‏ b/429378202)
  • שיפור הנראות של המספרים במסכים קטנים.TimePicker (I68386, ‏ b/447625365)
  • הוסר פיצול של Lazy Layout מ-Wear Compose Foundation – המשמעות היא ש-TransformingLazyColumn משתמש עכשיו בהטמעה של Lazy Layout ב-Compose Foundation, כולל אחזור מראש, ונהנה משיפור בביצועים של תזמוני פריימים ברוב המקרים. (Idd743, ‏ b/445911630)

גרסה 1.6.0-alpha03

‫8 באוקטובר 2025

androidx.wear.compose:compose-*:1.6.0-alpha03 משוחרר. גרסה ‎1.6.0-alpha03 מכילה את ההעברות האלה.

שינויים ב-API

  • נוסף הפרמטר ל-TimePicker כדי לציין את רכיב הזמן שהמיקוד הראשוני הוא עליו. כברירת מחדל, הרכיב הראשון שזמין נבחר בהתאם ללוקאל ולTimePickerType. (Ie5dfe, b/437015874)
  • הוסר הפרמטר targetProgress שלא היה בשימוש בשיטה CircularProgressIndicator drawCircularProgressIndicator. (Ieeb3c, ‏ b/430544552)

תיקוני באגים

  • הטמעת תמיכה חסרה ב-TransformingLazyColumn verticalAlignment – עכשיו יש תמיכה בסידורים רגילים שמבוססים על מיקום בחלק העליון, התחתון או המרכזי. (I2e630, ‏ b/444143326)
  • שיפור החישוב של רוחב טקסט מעוקל כדי להתחשב ברווחים לפני ואחרי הטקסט (יכול להיות שיהיו בעיות בצילומי מסך שכוללים טקסט מעוקל, במיוחד אם יש לו רקע כמו TimeText). (I924a4, ‏ b/446601899)
  • בוצע עדכון ב-Compose Foundation WarpedCurvedTextRenderer כדי לבחור באפשרות EmojiCompatInitializer מתוך androidx.emoji2, במטרה לתקן שגיאה בכיתת זמן ריצה. ‫(I589b4, ‏ b/444422736)
  • העדכון של ScalingLazyColumn מתמקד בצומת שניתן לגלול בו באמצעות CollectionInfo, כדי שהאפשרות הזו תפעל עם חוגה בהקשרים נוספים, כמו ב-Material3 AlertDialog. (I6be3c, ‏ b/445332360)

גרסה ‎1.6.0-alpha02

‫24 בספטמבר 2025

androidx.wear.compose:compose-*:1.6.0-alpha02 משוחרר. גרסה ‎1.6.0-alpha02 מכילה את הקומטים האלה.

שינויים ב-API

  • שיפרנו את הרינדור של טקסט מעוקל, במיוחד עבור גופנים כתביים, באמצעות הצגת עיוות טקסט עם הפרמטר החדש CurvedTextStyle warpOffset. (If5dcb)

תיקוני באגים

  • אופטימיזציה של שמירת אנימציות של פריטים במטמון במהלך גלילה ב-TransformingLazyColumn. (I62ae8)
  • הווריאציות OpenOnPhoneDialog ו-ConfirmationDialog עודכנו כדי להגדיר FLAG_KEEP_SCREEN_ON, כך שהאנימציות יפעלו עד הסוף והתיבות הדו-שיח ייסגרו באופן אוטומטי כמו שרצינו. (Iad7d4)
  • תוקן באג שגרם לקריסה של Modifier.edgeSwipeToDismiss כשנעשה בו שימוש עם SwipeDismissableNavHost ב-API 36 ואילך. (Ifc13d)
  • עדכנו את התיעוד והתגובות שמשויכים לפרמטר CurvedTextStyle warpOffset החדש כדי להתייחס נכון למקרה של 'לא צוין'. (I41aa5)

גרסה ‎1.6.0-alpha01

‫10 בספטמבר 2025

androidx.wear.compose:compose-*:1.6.0-alpha01 משוחרר. גרסה ‎1.6.0-alpha01 מכילה את ההתחייבויות האלה.

שינויים ב-API

  • נוספו וריאציות לא אינטראקטיביות של Card, TitleCard, OutlinedCard ו-AppCard (I509bb, b/406690146)
  • הוסר הפרמטר interactionSource מ-API חדשים של כרטיסים שלא ניתן ללחוץ עליהם. (If0c7a, ‏ b/440323280)
  • נוסף סוג MinutesSeconds חדש לרכיב TimePicker, שמציג רק עמודות של דקות ושניות, בלי עמודת השעות (Ia9e94, b/438004664)

תיקוני באגים

  • צריך לתקן את השימוש בפרמטר של שינוי HorizontalPagerScaffold כדי ש-HorizontalPager לא יאבד את אינדיקטור הדף אם מוסיפים Modifier.fillMaxSize() (I07ae1, ‏ b/441682601)
  • התאמה של כיוון ScrollIndicator לכיוון פריסת התוכן כברירת מחדל. (I0da0f, ‏ b/441489028)
  • נפתרה בעיה ב-ScrollAway כשמשתמשים בו עם TransformingLazyColumn. הגלילה ב-TimeText לא פעלה בצורה תקינה אחרי מעבר למסך אחר וחזרה. (Ic0ef1, b/433549148)
  • תוקן TransformingLazyColumn הדיווח על SCROLL_BACKWARDS ועל SCROLL_FORWARDS סמנטיקה למקרים חריגים בחלק העליון או התחתון של המסך. ‫(I5c28d, ‏ b/405205994)
  • תיקון באג ב-SwipeDismissableNavHost שגרם לכך שהעברות בתהליך לא סומנו כהשלמה אחרי החלקה אחורה ב-API 36. (Ife72e, ‏ b/441089689)
  • כדי למנוע קיטוע של חלק מהתרגומים של 'כדאי לבדוק את הטלפון', צריך לעדכן את ברירת המחדל OpenOnPhoneMaxSweepAngle ל-200 מעלות. (Ib2e4c, ‏ b/428243902)

גרסה 1.5 של Wear Compose

גרסה 1.5.5

‫5 בנובמבר 2025

androidx.wear.compose:compose-*:1.5.5 משוחרר. גרסה 1.5.5 מכילה את הקומטים האלה.

תיקוני באגים

  • שיפור הנראות של המספר TimePicker במסכים קטנים (I70fbe)

גרסה 1.5.4

‫22 באוקטובר 2025

androidx.wear.compose:compose-*:1.5.4 משוחרר. גרסה 1.5.4 מכילה את הקומטים האלה.

תיקוני באגים

  • שיפרנו את הביצועים של הכלי לבחירת קבצים על ידי שינוי מבנה הקוד של השימוש ב-LaunchedEffect. (I94519, ‏ b/418192973)
  • תוקן באג ב-SwipeDismissableNavHost ב-API36+, שבו לחיצה על לחצן החזרה במהלך אנימציה של חיזוי תנועת החזרה קטעה את האנימציה והפעילה אותה מחדש. ההטמעה משתמשת עכשיו ב-SeakableTransitionState.animateTo במקום ב-Animatable, מה שמשפר מעט את הביצועים. (I2241f, ‏ b/428156670)
  • תוקן באג שקשור לסדר ההכרזות על נגישות ב-AlertDialog, שבו כפתור האישור הוכרז כ-Button. במקום 'אישור' הרגיל, מופיע 'אישור'. כפתור'. (‫Ic2381, ‏ b/429378202)

גרסה 1.5.3

‫8 באוקטובר 2025

androidx.wear.compose:compose-*:1.5.3 משוחרר. גרסה 1.5.3 מכילה את התחייבויות האלה.

תיקוני באגים

  • הטמעת תמיכה חסרה ב-TransformingLazyColumn verticalAlignment – עכשיו יש תמיכה בסידורים רגילים שמבוססים על מיקום בחלק העליון, התחתון או המרכזי. (I2e630, ‏ b/444143326)

גרסה 1.5.2

‫24 בספטמבר 2025

androidx.wear.compose:compose-*:1.5.2 משוחרר. גרסה 1.5.2 מכילה את הקודים האלה.

תיקוני באגים

  • אופטימיזציה של שמירת אנימציות של פריטים במטמון במהלך גלילה ב-TransformingLazyColumn. (I62ae8)
  • הגרסאות OpenOnPhoneDialog ו-ConfirmationDialog עודכנו כדי להגדיר את FLAG_KEEP_SCREEN_ON, כך שהאנימציות יפעלו עד הסוף והתיבות יוסתרו באופן אוטומטי כמו שרצינו. (Iad7d4)
  • תוקן באג שגרם לקריסה של Modifier.edgeSwipeToDismiss כשנעשה בו שימוש עם SwipeDismissableNavHost ב-API 36 ואילך. (Ifc13d)
  • עדכנו את התיעוד והתגובות שמשויכים לפרמטר CurvedTextStyle warpOffset החדש כדי להתייחס נכון למקרה של 'לא צוין'. (I41aa5)

גירסה 1.5.1

‫10 בספטמבר 2025

androidx.wear.compose:compose-*:1.5.1 משוחרר. גרסה 1.5.1 מכילה את ההתחייבויות האלה.

תיקוני באגים

  • תיקון השימוש בפרמטר של שינוי HorizontalPagerScaffold כדי שמדד הדפים לא ייעלם ב-HorizontalPager אם מוסיפים HorizontalPagerScaffold (I07ae1, b/441682601)Modifier.fillMaxSize()
  • התאמה של כיוון ScrollIndicator לכיוון פריסת התוכן כברירת מחדל. (I0da0f, ‏ b/441489028)
  • נפתרה בעיה ב-ScrollAway כשמשתמשים בו עם TransformingLazyColumn. הגלילה ב-TimeText לא פעלה בצורה תקינה אחרי מעבר למסך אחר וחזרה. (Ic0ef1, b/433549148)
  • תוקן TransformingLazyColumn הדיווח על SCROLL_BACKWARDS ועל SCROLL_FORWARDS סמנטיקה למקרים חריגים בחלק העליון או התחתון של המסך. ‫(I5c28d, ‏ b/405205994)
  • תיקון באג ב-SwipeDismissableNavHost שגרם לכך שהעברות בתהליך לא סומנו כהשלמה אחרי החלקה אחורה ב-API 36. (Ife72e, ‏ b/441089689)
  • כדי למנוע קיטוע של חלק מהתרגומים של 'כדאי לבדוק את הטלפון', צריך לעדכן את ברירת המחדל OpenOnPhoneMaxSweepAngle ל-200 מעלות. (Ib2e4c, ‏ b/428243902)

גרסה 1.5.0

‫27 באוגוסט 2025

androidx.wear.compose:compose-*:1.5.0 משוחרר. גרסה 1.5.0 מכילה את ההתחייבויות האלה.

שינויים חשובים מאז גרסה 1.4.0

הגרסה הראשונה של ספריית Wear Compose Material 3, שתומכת במערכת העיצוב החדשה Material 3 Expressive. הגרסה הזו כוללת:

  • עדכון של MaterialTheme ושל ערכות נושא עם צבעים דינמיים.
  • רכיבים חדשים של AppScaffold, ScreenScaffold,‏ HorizontalPagerScaffold ו-VerticalPagerScaffold כדי להגדיר את מבנה המסך ולתאם בין אנימציות של ScrollIndicator,‏ TimeText,‏ HorizontalPageIndicator ו-VerticalPageIndicator.
  • שינוי צורה IconButton, TextButton, IconToggleButton ו-TextToggleButton, עם וריאציות שמונפשות כשלוחצים עליהן או מסמנים אותן.
  • EdgeButton, שיש לו צורה מיוחדת שמיועדת לחלק התחתון של המסך.
  • ButtonGroup הטמעה של קבוצת לחצנים עם אנימציה, בשורה שמשנה את הצורה שלה כשנוגעים בה.
  • AlertDialog ו-ConfirmationDialog עם וריאציות לתוכן נוסף בתיבת הדו-שיח.
  • הרכיבים TimePicker ו-DatePicker.
  • אינדיקטורים של התקדמות כוללים את CircularProgressIndicator (עם וריאציה מפולחת), ArcProgressIndicator ו-LinearProgressIndicator.

בנוסף, Wear Compose Foundation 1.5.0 כולל את התכונות הבאות:

  • TransformingLazyColumn, רשימה עצלה עם גלילה אנכית שתומכת בהנפשות של שינוי גודל ושינוי צורה.
  • תמיכה בהחלפה בין דפים ב-Wear Compose Foundation עם HorizontalPager ו-VerticalPager.
  • קבוצות פוקוס היררכיות – משמשות להוספת הערות לרכיבים הניתנים להרכבה באפליקציה כדי לעקוב אחרי החלק הפעיל של ההרכבה ולתאם את הפוקוס.

מידע נוסף על (Material 3 Expressive ל-Wear OS)

שינויים נוספים

גרסה 1.5.0-rc02

‫13 באוגוסט 2025

androidx.wear.compose:compose-*:1.5.0-rc02 משוחרר. גרסה 1.5.0-rc02 מכילה את הקומטים האלה.

תיקוני באגים

  • תוקן באג ב-TimePicker שבו מחרוזות ארוכות ובינלאומיות של התקופה (AM/PM) יכלו לשבור את הפריסה. (I0fa81)

גרסה 1.5.0-rc01

‫30 ביולי 2025

androidx.wear.compose:compose-*:1.5.0-rc01 משוחרר. גרסה 1.5.0-rc01 מכילה את הקומטים האלה.

תיקוני באגים

  • התצוגה של TimePicker מבוססת עכשיו באופן מלא על הלוקאל של המשתמש, באמצעות DateFormat.getBestDateTimePattern כדי לקבוע את הסדר והתוכן של כלי הבחירה והמפרידים. העדכון הזה מתקן סדר עמודות שגוי בשפות CJK, פותר בעיות בפריסת RTL בשפות כמו ערבית, משתמש במפרידים מותאמים לשוק המקומי ותומך בפורמטים של שעות 0-11 ו-1-12 על סמך הלוקאל (I5d543)
  • DatePicker מציג עכשיו חודש מספרי באזורים מסוימים, כמו CJK, כדי למנוע ערבוב של פורמטים מספריים ופורמטים לשוניים (לדוגמה, ‫2025 | 07 | 02 במקום 2025 | 7月 | 02). השינוי הזה כולל היוריסטיקה שבודקת אם הלוקאל משתמש בסיומות לשוניות לשנה, ואם כן, משנה את פורמט החודש מטקסטואלי (MMM) למספרי (MM) כדי לשמור על עקביות. ‫(Ia93fe)
  • המרחק האנכי של הכותרת ברכיב Picker הוא עכשיו קבוע, כך שלא ייראה שינוי כשתבחרו עמודה ב-Picker, במיוחד במצב Talkback. (I7f8b7)
  • תוקן באג שקשור לנגישות שנגרם כתוצאה מהצגה של HorizontalPageIndicator ו-VerticalPageIndicator במסך מלא. האינדיקטורים של הדף לא מוצגים יותר במסך מלא, והם ימוקמו אוטומטית כשמשתמשים בהם עם HorizontalPagerScaffold או VerticalPagerScaffold. כשלא משתמשים ב-scaffold של רכיב הניווט בין דפים, צריך לציין את היישור באופן מפורש באמצעות modifier = Modifier.align(Alignment.BottomCenter) עם HorizontalPageIndicator ו-modifier =Modifier.align(Alignment.CenterEnd) עם VerticalPageIndicator. (I3a0ad)
  • כיוון ההחלקה ב-SwipeToReveal עכשיו עקבי גם ב-LayoutDirections משמאל לימין וגם מימין לשמאל. (I6d427)
  • החזרנו את האפשרות SwipeToReveal למרכוז אנכי של פעולות. אם hasPartiallyRevealedState = true, RevealState צריך להתאפס ל-RevealValue.Covered על ידי המתקשר כשמתבצעת גלילה. ‫(I6473d)
  • SwipeDismissableNavHost עכשיו התוכן נחתך בצורה נכונה בגרסה 36 של API ואילך. (Ib9a44)

גרסה 1.5.0-beta06

‫16 ביולי 2025

androidx.wear.compose:compose-*:1.5.0-beta06 משוחרר. גרסה 1.5.0-beta06 מכילה את ההעברות האלה.

תיקוני באגים

  • פתרון בעיות באנימציה EdgeButton כשLazyColumn או ScalingLazyColumn כוללים reverseLayout = true. (I46a1a)
  • תוקן באג ב-ScreenScaffold שבו התכונה 'גילוי באמצעות מגע' לא פעלה ב-TalkBack אם סופק ScrollIndicator/PageIndicator. (I6dcee)
  • TransformingLazyColumn מאפשר עכשיו מעבר צורה מותאם אישית מ-TransformationSpec על ידי קריאת הערך itemHeight שסופק על ידי TransformationSpec בכלי לצביעת הרקע. (I6a599)
  • מעברים מונפשים בין צבעים מופעלים או מושבתים עבור IconButton, כדי לשמור על עקביות עם IconToggleButton. (Ife10a)
  • הסרנו את ההצמדה המינימלית של החלק ב-CircularProgressIndicator כדי למנוע קפיצה בולטת לגודל הנקודה המינימלי במהלך האנימציה. כחלק מהשינוי הזה, הפרמטר targetProgress ב-drawCircularProgressIndicator לא נמצא יותר בשימוש. (I33309)
  • עכשיו יש לרכיב לבחירת תאריך את התפקיד הסמנטי ValuePicker שאפשר להשתמש בו בקוראי מסך כדי לשפר את הנגישות של רכיבים לבחירת תאריך. בנוסף, בבוחר יש עכשיו תוויות קליק מעודכנות לנגישות, שמבחינות בין שינוי הערך במצב קריאה בלבד לבין בחירת הערך הנוכחי במצבים אחרים. (I33309)

גרסה ‎1.5.0-beta05

‫2 ביולי 2025

androidx.wear.compose:compose-*:1.5.0-beta05 משוחרר. גרסה 1.5.0-beta05 מכילה את ההתחייבויות האלה.

תיקוני באגים

  • העדכון של המסמכים נועד להבהיר את השימוש ב-Modifier.edgeSwipeToDismiss (I78cb5)
  • תוקן באג שבו מספר פריטים שנחשפו יכלו להופיע עם SwipeToReveal ברשימות שנטענות בהדרגה (I1d4f6)
  • הצורות של הקונטיינרים ב-TransformingLazyColumn עוברות עכשיו שינוי גודל כדי למנוע חיתוך של התוכן. (I9221a)
  • התווית TimePicker ו-DatePicker לשעה/דקה/שנייה או לשנה/חודש/יום כוללת עכשיו סמנטיקה של כותרות לקוראי מסך (I77d8b)
  • הוסרה ההפסקה בין הלולאות ב-CircularProgressIndicator הלא מוגדר (Iaf0bb)
  • תוקן באג באנימציה ב-TransformingLazyColumn כשפריטים מוסרים. (I73034)
  • תוקן הטיפול בפריטים מרכזיים ב-TransformingLazyColumn כשפריטים מוסרים. (I841a8)
  • האנימציה של כלי הבחירה PickerGroup מתבצעת עכשיו באופן אופקי כשההגדרה 'מרכוז אוטומטי' מופעלת וכלי הבחירה שנבחר (ממורכז) משתנה. (Ic82c4)

גרסה ‎1.5.0-beta04

‫18 ביוני 2025

androidx.wear.compose:compose-*:1.5.0-beta04 משוחרר. גרסה 1.5.0-beta04 מכילה את התחייבויות האלה.

תיקוני באגים

  • תוקן באג בפריסה ב-TransformingLazyColumn, שבו תוכן שמתאים למסך מיושר עכשיו בצורה נכונה מהחלק העליון של המסך (I80115)
  • תוקנה בעיה ב-TransformingLazyColumn שבה הפריט התחתון עבר שינוי גודל שגוי כשגללו לתחתית הרשימה עם EdgeButton. ההתקדמות בגלילה מתבצעת עכשיו לפי שיטת גרדיאנט יורד כשמשחזרים את הפריסה. (Iea375)
  • TransformingLazyColumn קורא עכשיו את גובה הפריט בתוך כלי הציור ברקע, מה שמאפשר ל-TransformationSpecs מותאם אישית להטמיע שינוי צורה. (I022f0)
  • SwipeToReveal עכשיו הפעולות שמוצגות מיושרות אנכית למרכז בצורה נכונה. (I4419b)
  • תוקן באג ב-SwipeToReveal שגרם לכך שהאפליקציה לא פעלה בצורה תקינה עם האפשרות להחליק כדי לסגור, אם גם התצוגות וגם הכתיבה היו בשימוש במסך. (I5dc0e)
  • תוקן באג שגרם לכך שפעולות SwipeToReveal הוצגו עם היסט אנכי בזמן גלילה. (I29444)
  • הערכים AlertDialog, ‏ ConfirmationDialog, ‏ OpenOnPhoneDialog ו-SwipeToReveal מעוגלים כלפי מעלה לגבי שוליים וגדלים שמחושבים כאחוז מגודל המסך. (I76367)
  • ButtonDefaults.outlinedButtonBorder now updates following enabled/disabled state changes size(If2ddd)
  • תוקן באג בגובה של EdgeButton שהתרחש במסכים מורכבים עם Pager ו-ScreenScaffold. (I946e3)
  • תוקנה בעיית תזמון שגרמה להפסקת האנימציות של הפלייסולדרים. (I53530)
  • שיפור הביצועים של HorizontalPageIndicator ושל VerticalPageIndicator על ידי ציור בלוח הציור. (Ifae1e)
  • שיפרנו את הצורה של EdgeButton כדי שהמעברים בין סימן האליפסה לבין העיגולים שמרכיבים את המתאר יהיו חלקים יותר. (I7721e)
  • תוקן באג ב-LevelIndicator שגרם לאנימציות להפסיק לפעול בגלל קומפוזיציות מחדש מיותרות. (I45d08)

גרסה ‎1.5.0-beta03

‫4 ביוני 2025

androidx.wear.compose:compose-*:1.5.0-beta03 משוחרר. גרסה 1.5.0-beta03 מכילה את הקומטים האלה.

שינויים ב-API

  • OpenOnPhoneDialog מכריז עכשיו רק על הטקסט של ההודעה ב-TalkBack, ומדלג על הסמנטיקה של הסמל. בוצע עדכון של OpenOnPhoneDialogDefaults כדי להסיר את iconContentDescription ואת הפרמטר contentDescription מ-icon(). בנוסף, ל-ConfirmationDialogDefaults יש עכשיו פרמטרים של שינוי ברכיבי ה-Composable‏ SuccessIcon ו-FailureIcon. (Id2ae2)

תיקוני באגים

  • שינינו את הסדר שבו אנחנו מחילים את ההשפעה של פרמטרים של SurfaceTransformation. בעבר, הטרנספורמציות שהוחלו על רכיבי Wear Material3 בוצעו באופן הבא: צביעת הרקע, טרנספורמציה של הקונטיינר, טרנספורמציה של התוכן. עכשיו, שני הראשונים הפוכים, ואנחנו מחילים כל משנה שהועבר ביניהם, כך שהוא מושפע מהטרנספורמציות של מאגר התגים. התיקון הזה פותר בעיות כמו שימוש באפקט placeholder shimmer עם רכיבים ב-TLC באמצעות פרמטר הטרנספורמציה. (I786cf)
  • RevealState.Saver נוסף כדי לשמש לשחזור המצב של SwipeToReveal כשפעילות או תהליך נוצרים מחדש. הפונקציה rememberRevealState משתמשת עכשיו בחיסכון הזה כברירת מחדל. (Ie0ecb)
  • SwipeToReveal לחצני פעולה ראשיים ומשניים צריכים להיות מוגדרים כברירת מחדל ל-ButtonDefault.Height (תוקן באג שבו הלחצנים האלה מילאו את הגובה המקסימלי של לחצנים גבוהים יותר). (Ibfba1)
  • השתנה SwipeToReveal לאיפוס הרכיב האחרון שהייתה איתו אינטראקציה, כשמבצעים את תנועת ההחלקה שמאלה. (Ia8450)
  • השינוי שבוצע הוא שכאשר מיקום הסיום של ההחלקה נמצא בין נקודות העיגון של ההסתרה והחשיפה, וקרוב יותר לנקודת העיגון של החשיפה, המצב של SwipeToReveal משתנה לRevealing. (If4458)
  • התוכן של ButtonGroup מוצג עכשיו בצורה הפוכה כמו שצריך בפריסה מימין לשמאל (Ib378d)
  • AnimatedText תומך עכשיו בכיוון טקסט מימין לשמאל (I4533c)
  • TransformingLazyColumn שינוי הגודל של הפריטים מתבצע עכשיו בצורה נכונה כשמסירים את הפריט התחתון (Idacab)
  • TransformingLazyColumn מבצע עכשיו רק מעבר מדידה אחד, וכך משפר את הביצועים על ידי הפחתת זמני הפריימים. (I501a1)

גרסה ‎1.5.0-beta02

‫20 במאי 2025

androidx.wear.compose:compose-*:1.5.0-beta02 משוחרר. גרסה 1.5.0-beta02 מכילה את ההתחייבויות האלה.

תיקוני באגים

  • פרופילים מעודכנים של Baseline לספריות foundation, ‏ material ו-material3. (I53f06)
  • תוקן באג ב-TransformingLazyColumn שגרם לשינוי הגודל של פריטים כשפריט תחתון הוסר. (Idacab)
  • תוקנה באג ב-TransformingLazyColumn, שגרם לרשימה להיתקע בחלק העליון או התחתון שלה. (I49d00)
  • OpenOnPhoneDialog TalkBack צריך להקריא את הטקסט המעוקל ולא את תיאור התוכן של הסמל. (I4efe8)
  • תוקן באג ב-SwipeToReveal שגרם לדיווח על עוגן שגוי ב-RevealState.currentValue כש-hasPartiallyRevealedState מוגדר כ-false. (I9c7cf)
  • כפתורי הביטול SwipeToReveal מוגדרים עכשיו כButtonDefaults.Height כברירת מחדל. (I1f6c8)
  • בוצע שיפור בביצועים של BasicSwipeToDismissBox על ידי ביטול השימוש ב-Canvas לציור מסכי הצללה. (I68f2c)
  • תוקן באג בנגישות ברכיב Slider, שבו האחוז שהוכרז לא תאם לערך אחרי העדכונים (I91146)
  • תוקן באג בהטמעה של placeholderShimmer. (Iee39b
  • הביצועים של TransformingLazyColumn השתפרו בעקבות אופטימיזציה של החישוב ב-ScrollProgress בשיעור של 30%. (I4c4cb)

גרסה ‎1.5.0-beta01

‫7 במאי 2025

androidx.wear.compose:compose-*:1.5.0-beta01 משוחרר. גרסה 1.5.0-beta01 מכילה את הקומטים האלה.

הגרסה 1.5.0-beta01 של Compose ל-Wear OS מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות וה-API נעול (למעט במקרים שבהם מצוין שהיא ניסיונית).

‫Wear Compose 1.5.0-beta01 כולל את הספרייה Wear Compose Material3, שתומכת במערכת העיצוב החדשה של ממשק המשתמש שנקראת Material 3 Expressive. מומלץ לשדרג מ-Material ל-Material3 כדי ליהנות מהעיצוב החזותי החדש באפליקציות, ומהרכיבים החדשים:

  • MaterialTheme כדי לקבל ערכות צבעים, טיפוגרפיה וצורות מעודכנות ומורחבות, שיעניקו לעיצובים שלכם עומק ומגוון.
  • ערכות צבעים דינמיות שיוצרות באופן אוטומטי ערכת צבעים לאפליקציה שתתאים לצבעים של תצוגת השעון.
  • רכיבים חדשים מותאמים אוטומטית לגדלים גדולים יותר של מסכים כברירת מחדל
  • שינוי צורה – רכיבי כפתור עגולים כמו IconButton, ‏ TextButton, ‏ IconToggleButton ו-TextToggleButton תומכים בווריאציות שמונפשות כשלוחצים עליהן או מסמנים אותן.
  • EdgeButton – כפתור חדש שצמוד לקצה המסך עם צורה מיוחדת שנועד לחלק התחתון של המסך.
  • רכיבי Scaffold – הוספנו את הרכיבים AppScaffold ו-ScreenScaffold כדי להגדיר את מבנה המסך ולתאם בין האנימציות ScrollIndicator ו-TimeText.
  • לחצנים – יש תמיכה במספר רב של לחצנים בצורת אצטדיון עם מאגרי תגים גמישים של משבצת אחת ווריאציות של משבצות מרובות ללחצנים עם סמלים ותוויות. הסמלים CheckboxButton ו-SwitchButton מוצגים כשנדרשים לחצני מעבר, והסמל RadioButton הוא לחצן הבחירה הזמין (יש גם וריאציות של לחצני מעבר ובחירה).
  • ButtonGroup – הטמעה של קבוצת לחצנים בעלי הבעה בשורה, שמשנים את הצורה שלהם כשנוגעים בהם.
  • AlertDialog וריאציות תומכות בלחצני אישור או ביטול או ב-EdgeButton.
  • ConfirmationDialog זמין להצגת הודעה עם פסק זמן, ותומך באנימציות מיוחדות להצלחה, לכישלון ולשינויים של פתיחה בטלפון.
  • רכיבי בחירה – נתמכות וריאציות של TimePicker ו-DatePicker, וגם הרכיבים Picker ו-PickerGroup לבניית מסכי בחירה משלכם.
  • ProgressIndicators – נתמכים מחווני התקדמות מעגליים וליניאריים (ל-CircularProgressIndicator יש וריאציות מפולחות ובלתי מוגדרות).
  • כרטיסים – יש כמה וריאציות של כרטיסים, כולל TitleCard שכולל פריסות ספציפיות לכרטיסים עם כותרת, שעה, כתוביות או משבצות תוכן. אפשר גם להוסיף רקע של תמונה לכרטיס TitleCard כדי להדגיש את משמעות המידע שבו.
  • רכיבי Pager‏ – HorizontalPagerScaffold, VerticalPagerScaffold ו-AnimatedPage מתאמים בין אנימציות HorizontalPageIndicator ו-VerticalPagerIndicator. ‫HorizontalPager ו-VerticalPager יוצאים לאור בספריית Wear Compose Foundation.
  • פלייסהולדרים – מצייר צורת שלד מעל רכיב, במצבים שבהם אין תוכן זמני זמין.
  • מחוונים ורכיבי Stepper – גם מחוונים וגם רכיבי Stepper מאפשרים למשתמשים לבחור מתוך טווח ערכים. מחוונים הם קומפקטיים יותר ואפשר לפלח אותם, בעוד שרכיב ה-Stepper הוא רכיב במסך מלא שבדרך כלל משויך לStepperLevelIndicator.
  • SwipeToReveal – משמש להוספת פעולות נוספות לרכיב שאפשר להרכיב כשמחליקים עליו מימין לשמאל.

בנוסף, Wear Compose Foundation 1.5.0-beta01 כולל את הרכיבים החדשים הבאים:

  • TransformingLazyColumn – רשימה עצלה עם גלילה אנכית שתומכת בהתאמה לעומס ובאנימציות של שינוי צורה
  • קבוצות פוקוס היררכיות – משמשות להוספת הערות לרכיבים שניתנים להרכבה באפליקציה, כדי לעקוב אחרי החלק הפעיל של ההרכבה ולתאם את הפוקוס.
  • רכיבי Pager – רכיבי HorizontalPager ו-VerticalPager, שמבוססים על רכיבי Compose Foundation עם שיפורים ספציפיים ל-Wear כדי לשפר את הביצועים ולעמוד בהנחיות של Wear OS.

שינויים ב-API

  • עדכון של Hierarchical Focus API – שינוי השם של Modifier.hierarchicalFocus ל-Modifier.hierarchicalFocusGroup והסרת פרמטר הקריאה החוזרת (callback); הסרת העומס של Modifier.hierarchicalFocusRequester עם פרמטר FocusRequester; יצירה של CompositionLocal חדש, LocalScreenIsActive, כדי שרכיבים יוכלו להודיע ולבדוק איזה מסך פעיל. (I5ff7c).
  • הוצאה משימוש של SwipeToReveal מ-Wear Compose Foundation לטובת ממשקי API של SwipeToReveal ב-Wear Compose Material וב-Wear Compose Material3. כדי להמשיך להשתמש בממשקי ה-API, צריך להחליף את הייבוא של Wear Foundation SwipeToReveal בייבוא של Wear Compose Material או Wear Compose Material3. (Ia147d).
  • ההסתמכויות של Wear Compose Material3 SwipeToReveal על Foundation הועברו לחבילה material3, לדוגמה: RevealValue, ‏ RevealDirection, ‏ RevealActionType, ‏ RevealState, ‏ rememberRevealState. המפתחים צריכים לשנות את הייבוא של המחלקות והפונקציות האלה מ-androidx.wear.compose.foundation ל-androidx.wear.compose.material3. ‫(I640e6).
  • עדכנו את Wear Compose Material3 SwipeToReveal API באופן הבא: הוספנו פרמטרים של primaryAction, onFullSwipe, secondaryAction, undoPrimaryAction, undoSecondaryAction ו-hasPartiallyRevealedState ל-SwipeToReveal composable; הסרנו את האפשרות להתאים אישית את positionalThreshold ו-animationSpec מ-RevealState; הסרנו את lastActionType, revealThreshold ואת width מ-RevealState; שינינו את ה-constructor של RevealState כך שיקבל RevealDirection במקום anchors; הסרנו את הפונקציות createRevealAnchors, anchors ו-bidirectionalAnchors; שינינו את השם של הפונקציות SwipeToRevealScope primaryAction, secondaryAction, undoPrimaryAction ו-undoSecondaryAction ל-PrimaryActionButton, SecondaryActionButton ו-UndoActionButton והפכנו אותן לפונקציות Composable; סימנו את RevealActionType כפנימי. (I885d0).
  • בנוסף, בוצעו עדכונים ב-API SwipeToReveal באופן הבא: השם של onFullSwipe שונה ל-onSwipePrimaryAction, השם של SwipeToRevealNonAnchoredSample שונה כדי לציין את השימוש בפרמטר hasPartiallyRevealedState, actionButtonHeight הוסר כי ברירת המחדל היא גובה ברירת המחדל של הלחצן ואפשר להגדיר גובה גדול יותר באמצעות משנה, SmallActionButtonHeight הוסר מ-SwipeToRevealDefaults, והפרמטר value (ערך) בקונסטרוקטורים RevealValue ו-RevealDirection הוגדר כפרטי. (I465ce).

תיקוני באגים

  • תוקן הטיפול ב-ScreenScaffold של EdgeButton כך שאחרי הסרה של פריט TransformingLazyColumn, האנימציה של EdgeButton תפעל במקום. (I6d366).
  • עדכנו את יחסי התלות של Wear Compose בספריות Compose לגרסה 1.8.0. (I2ef3f).
  • עדכנו את התנועה של CircularProgressIndicator לא מוגדר כך שהיא לא תחזור אחורה באופן זמני. (Ieddb1).
  • תוקן SwipeDismissableNavHost באג – המיקוד לא עבר בצורה נכונה אחרי החלקה אחורה, ולכן לא הייתה אפשרות להשתמש בקלט סיבובי (הבאג הזה היה ב-API 36 ומעלה, שמשתמש בהחלקה אחורה עם חיזוי). (Ieddb1).
  • תיקנו את מאמרי העזרה של Hierarchical Focus API‏ (Idf2ff).
  • עדכנו את התיעוד של Button ו-Card כדי לציין איך containerPainter ו-disabledContainerPainter מבטלים את containerColor ו-disabledContainerColor (I4a453).
  • בוטל שינוי ב-TimeText בגרסה הקודמת, שבו הועבר BroadcastReceiver ל-worker thread, כי הוא גרם לבעיות באפליקציות שמנהלות את ה-threading שלהן במהלך הניווט. (I34d02).
  • עדכנו את הדוגמאות של הכלי לבחירת תמונות כדי להסיר קריאות מיותרות לזכירה, ובמקום זאת להשתמש ב-rememberUpdatedState בכלי לבחירת תמונות כדי לזכור את פונקציית ה-lambda האחרונה של contentDescription. ‫(Icb5b1).
  • עדכנו את סגנונות הטקסט ב-TimePicker וב-DatePicker כך ששינויים בגופן לא יגרמו יותר לחיתוך. (I26194).
  • ListHeader ו-ListSubHeader מיישרים את הטקסט למרכז ולצד ימין בהתאמה כברירת מחדל. (I78339).
  • עדכנו את הדוגמאות ואת ההדגמות של Foundation ו-Material Swipe to Reveal כדי להודיע על פעולות נגישות בהתאמה אישית (צריך להוסיף את הפעולות המותאמות אישית כסמנטיקה בתוכן, ולא ב-SwipeToReveal composable עצמו). (Ie92a3).
  • העדכנו את ברירת המחדל של MaxLines שמוגדרת בתוכן EdgeButton בהתאם לגודל שלו – עכשיו הערך הוא 1 למידה XS, ‏ 2 למידות S ו-M, ו-3 למידה L. (Ie35f6).
  • פשוט יותר LocalReduceMotion כך שהצופה נרשם רק פעם אחת, כדי לשפר את הביצועים. (Ib1979).
  • צמצמנו את מספר הציורים מחדש ב-ScrollIndicator כדי לשפר את הביצועים. ‫(Ia7a67).
  • תוקן באג ב-TransformingLazyColumn, שבו הפריט העליון ברשימה לא שינה את הגודל שלו בצורה נכונה כש-EdgeButton הגיע לגובה המלא שלו. (I30580).

גרסה ‎1.5.0-alpha14

‫23 באפריל 2025

androidx.wear.compose:compose-*:1.5.0-alpha14 משוחרר. גרסה ‎1.5.0-alpha14 מכילה את הקומטים האלה.

שינויים ב-API

  • כל התלויות של Material SwipeToReveal ב-Foundation SwipeToReveal הועברו לחבילת Material, למשל RevealValue, ‏ RevealDirection, ‏ RevealActionType, ‏ RevealState, ‏ rememberRevealState. המפתחים צריכים לשנות את הייבוא של המחלקות והפונקציות האלה מ-androidx.wear.compose.foundation ל-androidx.wear.compose.material. (Ib7cb8)
  • ממשק ה-API של HierarchicalFocusCoordinator עודכן כך שהוא כולל משנים במקום רכיבים שאפשר להרכיב.
  • הערות לגבי ההעברה:
    • אפשר להחליף את HierarchicalFocusCoordinator(function, content) בהוספה של Modifier.hierarchicalFocus(function()) ל-content או לרכיב הניתן להרכבה שמכיל אותו.
    • אפשר להחליף את ActiveFocusListener { if (it) focusRequester.requestFocus() } על ידי הוספת Modifier.hierarchicalFocusRequester(focusRequester)
    • במקרים נדירים אחרים של שימוש ב-ActiveFocusListener אפשר להשתמש בפרמטר החדש ב-Modifier.hierarchicalFocus
    • אפשר להחליף את focusRequester(rememberActiveFocusRequester()) ב-hierarchicalFocusRequester()
    • אפשר להחליף את val focusRequester = rememberActiveFocusRequester() ב-remember { FocusRequester() } ולהוסיף את Modifier.hierarchicalFocusRequester(focusRequester). (Ie319a)

תיקוני באגים

  • ערך הסף של המהירות שצריך להגיע אליה כדי להפעיל שינוי מצב במחוות החלקה הוגדל ברכיבים הבאים: SwipeToReveal, ‏ BasicSwipeToDismissBox ו-SwipeDismissableNavHost (רק ב-API מגרסה 35 ומטה עבור SwipeDismissableNavHost). (If47bf)
  • תוקנה בעיה באנימציה כשפריטים חדשים נוספים ל-TransformingLazyColumn. (I589b2)

גרסה 1.5.0-alpha13

‫9 באפריל 2025

androidx.wear.compose:compose-*:1.5.0-alpha13 משוחרר. גרסה ‎1.5.0-alpha13 מכילה את ההתחייבויות האלה.

שינויים ב-API

  • כדי להשתמש בפרויקטים שפורסמו עם Kotlin 2.0, צריך KGP 2.0.0 או גרסה חדשה יותר (Idb6b5)
  • נוסף נכס targetPage אל PagerState (I4de8b)

תיקוני באגים

  • למנוע קומפוזיציה מחדש מיותרת במהלך ניווט חזוי אחורה. (Iecd6d)
  • תוקנה הבעיה שגרמה למאפיין isScrollable של ScrollInfoProvider להחזיר את הערך הנוכחי. (Icbfb8)

גרסה ‎1.5.0-alpha12

‫26 במרץ 2025

androidx.wear.compose:compose-*:1.5.0-alpha12 משוחרר. גרסה ‎1.5.0-alpha12 מכילה את הקומטים האלה.

שינויים ב-API

  • שיפור ההטמעה של SwipeToReveal כברירת מחדל של gestureInclusion כך שיתעלמו מתנועות רק אם מצב הרכיב הוא Covered. (I7e3d6)
  • ב-SwipeToReveal, הפכנו את bidirectionalGestureInclusion לערך במקום לפונקציה והוספנו את @FloatRange לפרמטר edgeZoneFraction ב-gestureInclusion. (Ica7c3)

תיקוני באגים

  • משנים את SwipeToReveal bidirectionalGestureInclusion כדי להחזיר אובייקט במקום סוג. (I29597)
  • השימוש בתכונת המשוב המישוש מושבת כשמריצים בדיקות ב-RoboElectric. (I58bd1)
  • עדכון SwipeToReveal המרווחים הפנימיים בין התוכן לבין הלחצנים של הפעולות, וגם המרווח הפנימי בין הסמל לטקסט של הלחצנים של הפעולות. (Ic46cb)

גרסה ‎1.5.0-alpha11

‫12 במרץ 2025

androidx.wear.compose:compose-*:1.5.0-alpha11 משוחרר. גרסה ‎1.5.0-alpha11 מכילה את ההתחייבויות האלה.

שינויים ב-API

  • עודכן PagerState, הוסרה המחלקה הבסיסית Compose Foundation PagerState והוספו המאפיינים currentPage, currentPageOffsetFraction ו-pageCount. ממשק GestureInclusion עודכן, והשם של השיטה שונה ל-ignoreGestureStart. (I4ae07)
  • הדרך המומלצת לקבל קיזוז של SwipeToDismissBoxState היא להוסיף את requireOffset אל SwipeToDismissBoxState. (I21042)
  • נוספו CurvedModifier.semantics, עם תמיכה ראשונית בתיאור תוכן ובאינדקס מעקב (I0b093)
  • הוספנו את CurvedModifier.clearAndSetSemantics כדי לספק אמצעי להשבתת הסמנטיקה המעוקלת. CurvedText ממשיך להגדיר כברירת מחדל את תיאור התוכן לטקסט, אבל timeTextCurvedText ו-timeTextSeparator לא מכריזים עכשיו על התוכן שלהם. (I4b568)
  • השם של טיפול ברירת המחדל של HorizontalPager בתנועות החלקה שונה ל-PagerDefaults.gestureInclusion. ההתנהגות שמוגדרת כברירת מחדל היא להתעלם רק מתנועות החלקה שמתחילות בקצה הימני של הדף הראשון, ורק כשההגדרה Talkback מושבתת. במקרים אחרים, ההתנהגות שמוגדרת כברירת מחדל היא שהרכיב Pager לא יתעלם מתנועות החלקה, ולכן הן לא יהיו זמינות לטיפול בהחלקה לסגירה. (Iee486)
  • הוספנו גלילה סיבובית מעבר לקצה ל-API‏ rotaryScrollable. הוספנו ל-rotaryScrollable את התכונות 'גלילה מעבר לקצה' ו'גלילה מקוננת' כדי לשפר את התנהגות ההטלה. השינוי הזה אמור להביא לפונקציונליות שווה של גלילה מעבר לקצה וגלילה מקוננת בין גלילה במגע לגלילה סיבובית. (I71926)
  • הוספנו תמיכה באזור להחלקה מהקצה אל SwipeToReveal. ההתנהגות שמוגדרת כברירת מחדל ב-Foundation SwipeToReveal היא עכשיו איסור החלקה כשהתנועה מתחילה מהקצה. התנהגות ברירת המחדל של Material3 SwipeToRevealהיא עכשיו לא לאפשר החלקה כשהתנועה מתחילה מהקצה, כשההגדרה SwipeDirection היא כיוון יחיד. (I32ef0)
  • ב-TLC, ברירת המחדל היא עכשיו contentPadding ריק, במקום להציב את הפריטים הראשונים והאחרונים במרכז. (I77ab7)

תיקוני באגים

  • ספריות Wear Compose עודכנו ל-Kotlin 2.0 compiler. (I2de79)
  • תוקנה הדוגמה המעוקלת LetterSpacing על הבסיס. (Iebf7c)

גרסה ‎1.5.0-alpha10

‫26 בפברואר 2025

androidx.wear.compose:compose-*:1.5.0-alpha10 משוחרר. גרסה ‎1.5.0-alpha10 מכילה את הקומטים האלה.

שינויים ב-API

  • הופכים את SwipeToRevealDefaults לגלוי לכולם. (I0c34c)
  • החלפנו את הפרמטר swipeToDismissEdgeZoneFraction ב-HorizontalPager. במקום זאת, נוסף פרמטר חדש, gestureInclusion, שאפשר להשתמש בו כדי להשיג את ההתנהגות הנדרשת של החלקה לסגירה. ‫gestureInclusion מקבל מופע של GestureInclusion שקובע אם אירוע הגלילה הבא צריך להמשיך או לא. התרת תנועה מסוימת פירושה שה-Pager צורך אותה – אחרת, היא תטופל במקום אחר, למשל על ידי רכיב handler של החלקה לסגירה. ההתנהגות החדשה שמוגדרת כברירת מחדל היא שלא לאפשר מחוות בקצה הימני ביותר של הדף הראשון בכלי להחלפת דפים, וכך לאפשר החלקה כדי לסגור את האזור הזה. בכל הדפים האחרים, רכיב ה-Pager יאפשר שימוש בכל התנועות, כלומר אי אפשר להפעיל את האפשרות 'החלקה לסגירה' מהם. כדי להשיג התנהגות של החלקה לסגירה בכל הדפים, פשוט מספקים מופע מותאם אישית של GestureInclusion (ראו PagerDefaults.disableLeftEdgeOnFirstPage) שמתעלם מהדף הנוכחי. שינוי משמעותי נוסף שהוצג כאן הוא שהרכיב Pager כבר לא מוצג במסך מלא כברירת מחדל. במקום זאת, צריך להוסיף Modifier.fillMaxSize() כדי להשיג את ההתנהגות הזו. (I9d3aa)
  • שינינו את השם של createAnchors ל-createRevealAnchors ב-API של החלקה לחשיפה(If5999)
  • הסרנו את RevealScope מה-API של החלקה לחשיפה. (Ie4ad5)
  • הסרנו את Revealing ו-Revealed מ-RevealValue ב-API של החלקה לחשיפה. (I8dbc5)
  • שינינו את השם SwipeDirection ל-RevealDirection ב-API של החלקה לחשיפה. (I7472f)
  • שינינו את החתימה של הפרמטר positionalThreshold בפונקציה rememberRevealState של SwipeToReveal. (I29c0a)
  • הוספנו פרמטר חדש overscrollEffect ל-ScalingLazyColumn, ל-TransformingLazyColumn ול-ScreenScaffold. (I0cee8)
  • כשמשתמשים ב-PagerDefaults#snapFlingBehaviour, הפרמטר pagerSnapDistance הוחלף בפרמטר Int‏ maxFlingPages, שאפשר להשתמש בו כדי לציין את המספר המקסימלי של הדפים שהרכיב Pager צריך להעביר. (I8cfc0)
  • ל-Wear Pager יש עכשיו PagerScope משלו, במקום להשתמש ב-Compose Foundation PagerScope. (I9195b)
  • הוספנו תמיכה ב-lineHeight בטקסט מעוקל (I1c936)
  • הוספנו את initialAnchorItemIndex ואת initialAnchorItemOffset אל TransformingLazyColumnState ואת rememberTransformingLazyColumnState כדי שיהיה אפשר לציין את מיקום הגלילה הראשוני ב-TransformationLazyColumn. (I0a0d5)
  • הוצאנו משימוש את runWithTimingDisabled לטובת runWithMeasurementDisabled, שמתאר בצורה ברורה יותר את ההתנהגות – כל המדדים מושהים. בנוסף, צריך לחשוף את מחלקת העל MicrobenchmarkScope כי אי אפשר להצהיר מחדש על הפונקציה runWithMeasurementDisabled כדי לפתוח גישה, כי היא מוטמעת. (I9e23b, ‏ b/389149423, ‏ b/149979716)
  • הוספנו את TransformingLazyColumnItemScrollProgress.Unspecified ל-API כדי למנוע מצב של boxing ב-TransformingLazyColumnItemScrollProgress. (I0835d)

תיקוני באגים

  • שיפור Kdoc עבור CurvedTextStyle (Id45e3)
  • הפכנו את SwipeableV2 (חלק מההטמעה של SwipeToReveal) לפנימי במקום לציבורי, אבל הגישה מוגבלת לקבוצת הספרייה. (Idbb94)
  • הוספנו בדיקות ל-HierarchicalFocusCoordinator (I1ce54, ‏ b/395548918)
  • ביצענו שיפורים ב-SwipeToReveal בדוגמאות של wear compose foundation. (I5f307)
  • תיקון נתונים סמנטיים של ציר הגלילה ב-verticalScrollAxisRange ב-TransformingLazyColumn לצורך נגישות (I68123)
  • שיפור הביצועים של משוב הפטי בתנועה סיבובית ב-Wear4+‎ על ידי הסרת שרשורים מיותרים ברקע (I39cfe)
  • משנים את SwipeDismissableNavHost כך שישתמשו ב-PredictiveBackNavHost רק ב-API 36 ואילך. ‫(I59bed)
  • הוספנו אמצעי הגנה מפני קריסה כשניגשים להגדרה 'הפחתת התנועה'. (I01e2c)
  • הטמענו שליפה מראש של TransformingLazyColumn כדי לצמצם את הבעיה של קפיצות בתמונה (Icca88)

גרסה ‎1.5.0-alpha09

‫29 בינואר 2025

androidx.wear.compose:compose-*:1.5.0-alpha09 משוחרר. גרסה ‎1.5.0-alpha09 מכילה את הקומטים האלה.

שינויים ב-API

  • ב-CurvedTextStyle, חילקנו את הריווח בין האותיות לריווח בין האותיות בכיוון השעון ולריווח בין האותיות נגד כיוון השעון. הדרישה הזו קיימת כי האותיות בכיוון השעון מתרחבות מקו הבסיס, ואילו האותיות נגד כיוון השעון מתרחבות פנימה (לכן נדרש מרווח גדול יותר בין האותיות) (I4b848)
  • הפונקציה CompositionLocal LocalReduceMotion פשוטה יותר עכשיו, והיא מחזירה ערך בוליאני במקום אובייקט ReduceMotion. הממשק של ReduceMotion הוצא משימוש. אפשר להחליף קריאות קודמות כמו LocalReduceMotion.current.enabled() ב-LocalReduceMotion.current (I4937f)
  • ב-PagerDefaults, השם של snapAnimationSpec שונה ל-SnapAnimationSpec. (I20c9a)

גרסה ‎1.5.0-alpha08

‫15 בינואר 2025

androidx.wear.compose:compose-*:1.5.0-alpha08 משוחרר. גרסה ‎1.5.0-alpha08 מכילה את ההתחייבויות האלה.

שינויים ב-API

  • עדכנו את כל ספריות Wear Compose למצב 'API מפורש'. (Iebf9f)
  • הפכנו את פרמטר האנימציה של המעבר בין הדפים לחלק מ-PagerDefaults. (Ifff64)
  • הוספנו פרמטר אופסט ל-SwipeToDismissBoxState. (I586bd)

תיקוני באגים

  • הרטט של פלטפורמת החוגה נקרא עכשיו לגרסאות Wear OS אחרי V ‏ (Idb03e)

גרסה ‎1.5.0-alpha07

‫11 בדצמבר 2024

androidx.wear.compose:compose-*:1.5.0-alpha07 משוחרר. גרסה ‎1.5.0-alpha07 מכילה את הקומטים האלה.

שינויים ב-API

  • TransformingLazyColumnState מספקת עכשיו דרך לצפות בהתקדמות הגלילה הנוכחית על סמך אינדקסים של פריטי עוגן. (I72b01)
  • הוספנו אנימציות ל-TransformingLazyColumn כשמוסיפים, מסירים או מעבירים פריטים, אם יש להם את Modifier.animateItem החדש. (Iecb9c)
  • TransformingLazyColumn חושף עכשיו ערכים של beforeContentPadding ושל afterContentPadding. (Iccd5f)
  • TransformingLazyColumn מספק עכשיו את הקומפוזיציה המקומית LocalTransformingLazyColumnItemScope שרכיבים (כמו Card ו-Button ב-Material3) יכולים להשתמש בה כדי לעבור שינוי צורה אוטומטי כשהם ממוקמים בתוך TransformingLazyColumn. המתקשרים יכולים להשבית את השינוי האוטומטי באמצעות העטיפה החדשה TransformExclusion. (I1652f)

תיקוני באגים

  • עדכנו את המהירויות המינימליות והמקסימליות של ההטלה לסיבוב במכשירים שמטרגטים גרסה U ואילך. (I33559)
  • תיקנו קריסה שהתרחשה אם פריט ב-TransformingLazyColumn לא הכיל רכיבים שאפשר להרכיב (Idb99d)
  • הוספנו תמיכה ב-ScrollFeedbackProvider בתכונת המשוב המישוש הסיבובי ב-Android Vanilla ice cream. (Ibc553)
  • הגדלנו את אזור המגע כשמשתמשים ב-SwipeToReveal כדי להקטין את הסיכוי להפעלה לא מכוונת של החלקה בזמן גלילה אנכית. (Ic0672)
  • עדכנו את SwipeDismissableNavHost כך שישתמש ב-PredictiveBackHandler כשהוא זמין ב-API 35 ואילך. במקרה כזה, יחולו אנימציות חדשות. (I08c11)

גרסה ‎1.5.0-alpha06

‫13 בנובמבר 2024

androidx.wear.compose:compose-*:1.5.0-alpha06 משוחרר. גרסה ‎1.5.0-alpha06 מכילה את הקומטים האלה.

שינויים ב-API

  • פישטנו את ScrollInfoProvider עבור PagerState על ידי הסרת הפרמטר orientation, שכבר לא נחוץ. ההתנהגות החדשה היא שTimeText יישאר במקום גם כשמגלגלים את הדף אופקית וגם כשמגלגלים אותו אנכית. (I71767)
  • התכונה TransformingLazyColumn נוספה בגרסאות קודמות. אנחנו מסירים עכשיו את הכינויים של Wear‏ (LazyColumn שהופנו אל TransformingLazyColumn) ומעדיפים את השם החדש TransformingLazyColumn. הסרנו גם את המאפיין height של TransformingLazyColumnVisibleItemInfo. במקומו צריך להשתמש ב-measuredHeight. (I0ea1e)
  • שינינו את PagerDefaults.snapFlingBehavior snapAnimationSpec ממפרט Tween למפרט Spring.(I10d02, ‏ b/349781047, ‏ b/303807950)
  • קידמנו את LocalReduceMotion CompositionLocal לגרסה יציבה (Ia6f32)

תיקוני באגים

  • עדכנו את Modifier.rotaryScrollable כך שישתמש ב-focusTargetWithSemantics כדי לשפר את התמיכה בסמנטיקה בסיבוב. (Ief0a0)
  • עדכנו את התלות המינימלית ב-API ל-1.7.4 בספריות Compose. (I88b46)
  • השבתנו את שינוי הרוחב ב-TransformingLazyColumn כפתרון זמני לבאג בחיתוך. (I3dfb8)
  • תיקנו באג שגרם לפריטים להיעלם אחרי גלילה מעבר לקצה עם TransformingLazyColumn (מזהה 7668)
  • הוספנו את LazyLayoutSemantics בשביל TransformingLazyColumn. (Ia8f56)

גרסה ‎1.5.0-alpha05

‫30 באוקטובר 2024

androidx.wear.compose:compose-*:1.5.0-alpha05 משוחרר. גרסה ‎1.5.0-alpha05 מכילה את הקומטים האלה.

שינויים ב-API

  • הוספנו תמיכה ב-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 מכילה את הקומטים האלה.

שינויים ב-API

  • שינינו את השם של Wear Compose Foundation LazyColumn ל-TransformingLazyColumn כדי שההבדל בינו לבין Compose Foundation LazyColumn יהיה ברור יותר. (I0608b)
  • הוספנו תמיכה בסיבוב למרכיבי החלפה אופקיים ואנכיים של דפים, כדי לאפשר למשתמשים לנווט במרכיבים האלה באמצעות מכשירי קלט סיבוביים. (I9770d)
  • עדכנו את הלחצן החדש PagerDefaults כדי להבהיר שהדפדוף יתבצע לדף הבא כברירת מחדל. (Iff7d0)
  • TransformingLazyColumnItemScrollProgress הוא עכשיו מחלקת ערכים, מה שאמור לשפר את הביצועים. (Ic399e)
  • מעכשיו יש תמיכה ב-TransformingLazyColumn בשימוש בחוגה. (I05206)
  • TransformingLazyColumnState תומך עכשיו ב-scrollToItem. (I507b3)
  • הוסר @ExperimentalWearFoundationApi מ-SwipeToReveal API ‏ (I34a66)

גרסה ‎1.5.0-alpha03

‫2 באוקטובר 2024

androidx.wear.compose:compose-*:1.5.0-alpha03 משוחרר. גרסה ‎1.5.0-alpha03 מכילה את הקומטים האלה.

שינויים ב-API

  • הוספנו תמיכה בהחלקה דו-כיוונית ב-SwipeToReveal, למקרים נדירים שבהם המסך הנוכחי לא תומך בהחלקה לסגירה. . ברירת המחדל היא עדיין החלקה לחשיפה רק בהחלקות מימין לשמאל, ומומלץ מאוד לפעול בהתאם להתנהגות ברירת המחדל כדי למנוע התנגשות עם החלקה לסגירה. (Ifac04)
  • עדכנו את LazyColumnState כדי לבטל את canScrollForward ואת canScrollBackward – עכשיו הגלילה נעצרת כשהפריט הראשון או האחרון נמצא בדיוק במרכז המסך. (Ia77d7)
  • הוספנו רכיבים חדשים של HorizontalPager ושל VerticalPager שפותרים בעיות נפוצות, כמו ניהול המיקוד ואינטראקציה עם החלקה של המערכת כדי לסגור את האפליקציה, שיכולות להתרחש ב-Wear. (I2902b)
  • הוספנו תמיכה ב-LazyColumn כדי לחשוף את key ו-contentType של הלקוח דרך layoutItems. (I1bd9c)

תיקוני באגים

  • עדכנו את האנימציות של הטקסט המעוקל כדי שהן יהיו חלקות יותר, באמצעות דגלי צבע. (I73a15)
  • עדכנו את התיעוד של Material Dialog כדי לציין ש-onDismissRequest לא מופעל אחרי שהדגל show מוגדר כ-false. (Ifd8d6)
  • תיקנו באג באנימציית הווינייטה בתיבת הדו-שיח של Material (I126bf)

גרסה ‎1.5.0-alpha02

‫18 בספטמבר 2024

androidx.wear.compose:compose-*:1.5.0-alpha02 משוחרר. גרסה ‎1.5.0-alpha02 מכילה את ההתחייבויות האלה.

שינויים ב-API

  • הוספנו תמיכה ב-Wear Compose LazyColumn עם ScreenScaffold (והוספנו הטמעה של ScrollInfoProvider ל-LazyColumnState). (Ib8d29)
  • הוספנו את viewportSize אל LazyColumnLayoutInfo. (I4187f)

תיקוני באגים

  • תיקנו באג, ועכשיו השבתנו את הגלילה הסיבובית ב-ScalingLazyColumn כשהדגל userScrollEnabled מוגדר ל-false. (I490ab, ‏ b/360295825)
  • תיקנו באג שגרם לריווח אנכי לא צפוי בטקסט מעוקל. הגובה של הטקסט המעוקל תואם עכשיו יותר למרחב שבו הטקסט משתמש בפועל. שימו לב: השינוי הזה עלול לגרום לבעיות בבדיקות של צילומי מסך שכוללות טקסט מעוקל (Iaa6ef)
  • ביטלנו תיקון באג ב-Dialog שבו הפונקציה onDismissRequest callback נקראה כש-showDialog הוגדר כ-false, כי במקרים מסוימים הפונקציה onDismissRequest נקראה כמה פעמים. (I64656)

גרסה ‎1.5.0-alpha01

‫4 בספטמבר 2024

androidx.wear.compose:compose-*:1.5.0-alpha01 משוחרר. גרסה ‎1.5.0-alpha01 מכילה את ההתחייבויות האלה.

שינויים ב-API

  • הוספנו LazyColumn חדש לספריית Wear Compose Foundation עם ממשקי API משויכים של LazyColumnState ו-LazyColumnScope. הוא משמש כבסיס ליצירת אפקטים של שינוי צורה והתאמה לעומס שאפשר להתאים אישית באמצעות Wear Compose. (Ib3b22)
  • הוספנו גרסה עם אינדקס של itemsIndexed ל-LazyColumnScope כחלק מ-LazyColumn API החדש. (Ib4a57)
  • הוספנו משנים של LazyColumn כדי לתמוך בהתנהגויות של שינוי קנה מידה ושינוי צורה. (Ie229a)
  • גרסה HierarchicalFocusCoordinator קודמה לגרסה יציבה. (I31035)
  • הוספנו תמיכה בריווח בין אותיות בטקסט מעוקל. (I3c740)
  • נוסף פרמטר rotationLocked ל-CurvedLayout.curvedComposable כדי למנוע סיבוב של רכיבים. (I66898)
  • ה-API הזמני LocalUseFallbackRippleImplementation מ-wear material ומ-wear material3 הוסר (I62282)
  • הוסר WearDevices.SQUARE מהתצוגה המקדימה המרובה @WearPreviewDevices (I11c02)

תיקוני באגים

  • SwipeToReveal ממקם עכשיו את הפריטים שנחשפו בחלק הגלוי של המסך, וזה עוזר כשמשתמשים ב-SwipeToReveal בתוך רשימה, כך שהפריטים תמיד אינטראקטיביים ולא יוצאים אף פעם מהמסך. (I38929)
  • SwipeToReveal מאפס עכשיו את lastActionType לערך None (ללא) כש-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.1

‫12 בפברואר 2025

androidx.wear.compose:compose-*:1.4.1 משוחרר. גרסה 1.4.1 מכילה את הקומטים האלה.

תיקוני באגים

  • הוספנו אמצעי הגנה מפני קריסה כשניגשים להגדרה הגלובלית של הפחתת התנועה, שהופעלה בפלטפורמות מסוימות שבהן ההגדרה הזו לא סופקה. (I01e2c)

גרסה 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.4.0-rc01

‫21 באוגוסט 2024

androidx.wear.compose:compose-*:1.4.0-rc01 משוחרר. גרסה 1.4.0-rc01 מכילה את הקומטים האלה.

  • עדכנו את יחסי התלות של Compose לגרסה 1.7.0-rc01 וצירפנו את Wear Compose Navigation ל-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)
  • עדכנו את פרופילי ה-Baseline של ספריית 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 מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות וה-API נעול (אלא אם מצוין אחרת). ‫Wear Compose 1.4 כולל את הפונקציונליות החדשה הבאה:

  • הוספנו את Modifier.rotaryScrollable, משנה חדש שמקשר בין אירועים של סיבוב לבין מאגרי מידע שאפשר לגלול בהם, וכך מאפשר למשתמשים לגלול באמצעות כפתור או מסגרת מסתובבת במכשיר WearOS. בנוסף, 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 מכילה את הקומטים האלה.

שינויים ב-API

  • ביצענו את השינויים הבאים ב-API החדש של החוגה: שינינו את השם של Modifier.rotary ל-Modifier.rotaryScrollable, שינינו את השם של הממשק RotaryBehavior ל-RotaryScrollableBehavior ואת השם של הפונקציה שלו handleScrollEvent ל-performScroll, שינינו את השם של RotaryScrollableAdapter ל-RotaryScrollableLayoutInfoProvider והסרנו את המאפיין scrollableState. (I0c8a6)
  • ביצענו שינויים נוספים ב-API של החוגה: שינינו את השם של RotaryScrollableLayoutInfoProvider ל-RotarySnapLayoutInfoProvider (כי הספק הזה נדרש רק לחוגה עם הצמדה), ושינינו את הסוג של הפרמטר snapOffset ב-RotaryScrollableDefaults.snapBehavior snapOffset מ-Int ל-Dp. (Iddebe)
  • שינינו את השם של הפרמטר clickInteractionSource ב-SplitSelectableChip ל-containerInteractionSource. (Ia8f84)
  • עדכנו את שמות הפרמטרים של הקריאה החוזרת (callback) של הקליקים עבור SplitSelectableChip – מ-onClick ל-onSelectionClick ומ-onBodyClick ל-onContainerClick. (I32237)

תיקוני באגים

  • עדכנו את הריווח האופקי של PositionIndicator ל-2dp (היה 5dp), כדי לתקן באג שבו PositionIndicator (פס הגלילה) חופף לתוכן שאפשר לגלול בו. חשוב לציין שהשינוי הזה צפוי לגרום לבעיות בצילומי מסך קיימים שכוללים את PositionIndicator בגלל שינוי הריווח הפנימי. (I57472)
  • שיפרנו את התיעוד של ה-API החדש של החוגה, ותיארנו את ההבדלים בין מכשירי חוגה ברזולוציה נמוכה לבין מכשירי חוגה ברזולוציה גבוהה. (I63abe)
  • טיפלנו בחריגה מטווח הערכים ב-SwipeDismissableNavHost שיכולה להתרחש כשערכי אלפא שעברו אינטרפולציה נמוכים מאפס. ‫(Ib75a1, b/335782510)

גרסה ‎1.4.0-alpha07

‫17 באפריל 2024

androidx.wear.compose:compose-*:1.4.0-alpha07 משוחרר. גרסה ‎1.4.0-alpha07 מכילה את ההתחייבויות האלה.

שינויים ב-API

  • הוספנו את Modifier.rotary, משנה חדש שמקשר בין אירועים של סיבוב לבין מאגרי מידע שאפשר לגלול בהם, וכך מאפשר למשתמשים לגלול באמצעות כפתור או מסגרת מסתובבת במכשיר WearOS. בנוסף, ScalingLazyColumn ו-Picker תומכים עכשיו כברירת מחדל בקלט סיבובי, עם עומסים חדשים שכוללים את הפרמטר rotaryBehavior לציון ההגדרה של גלילה או הצמדה. אם הפרמטר rotaryBehavior מוגדר לערך snap, מומלץ לספק snap גם באמצעות הפרמטר flingBehavior לגלילה במגע. (I2ef6f)
  • מקורות NestedScroll Drag and 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)
  • הוספנו טיוטה פנימית של תמיכה במשוב מישוש, כחלק מהמאמץ הגדול יותר להעביר את התנהגות החוגה אל AndroidX מ-Horologist. (I5568a)

גרסה ‎1.4.0-alpha05

‫20 במרץ 2024

androidx.wear.compose:compose-*:1.4.0-alpha05 משוחרר. גרסה ‎1.4.0-alpha05 מכילה את ההתחייבויות האלה.

שינויים ב-API

  • הגדרנו את הנכסים 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 מכילה את הקומטים האלה.

שינויים ב-API

  • הוספנו עומס יתר חדש ל-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 מכילה את הקומיטים האלה.

שינויים ב-API

  • יצא משימוש העיטוף Modifier.inspectable. ה-API הזה יוצר יותר ביטולים של שינוי המחיר מהנדרש, ולכן השימוש בו לא מומלץ יותר. מומלץ למפתחים להטמיע את המתודה inspectableProperties() ב-ModifierNodeElement אם הם רוצים לחשוף מאפייני שינוי לכלי פיתוח. (Ib3236)

תיקוני באגים

  • תיקנו באג במסמכי התיעוד של הערות WearPreview*. (Id526d)

גרסה ‎1.4.0-alpha02

‫7 בפברואר 2024

androidx.wear.compose:compose-*:1.4.0-alpha02 משוחרר. גרסה ‎1.4.0-alpha02 מכילה את הקומיטים האלה.

תיקוני באגים

  • תיקנו באג בתכונה 'החלקה לחשיפה', שבו היה אפשר לבצע אינטראקציה עם פעולה מחויבת (ולבטל אותה) בפריט אחד על ידי התחלת החלקה של פריט אחר.(Ide059)
  • עדכנו את ListHeader כדי לתמוך בהתאמות של הגובה כשצריך גובה נוסף כדי להציג תוכן עם גדלי גופן גדולים. ‫(I7290c, ‏ b/251166127)

גרסה ‎1.4.0-alpha01

‫24 בינואר 2024

androidx.wear.compose:compose-*:1.4.0-alpha01 משוחרר. גרסה ‎1.4.0-alpha01 מכילה את הקומיטים האלה.

תכונות חדשות

  • הוספנו אנימציית כניסה ל-SwipeDismissableNavHost למעברים בתוך האפליקציה.(cfeb79a)
  • הסמל PositionIndicator מוצג עכשיו כברירת מחדל כשמסך מוצג בפעם הראשונה. השינוי הזה בוצע כדי לעזור לכם לעמוד בהנחיות האיכות של Wear. לצערנו, המשמעות היא שצריך לעדכן את בדיקות צילומי המסך במסכים שכוללים את PositionIndicator, כי קודם לכן PositionIndicator לא הוצג. (419cef7)

שינויים ב-API

  • הוספנו API חדש של אפקט האדווה בספריות wear:compose-material ו-wear:compose-material3, שמחליף את rememberRipple שהוצא משימוש. בנוסף, נוסף CompositionLocal זמני, LocalUseFallbackRippleImplementation, כדי להחזיר את השימוש ברכיבי Material לממשקי rememberRipple/RippleTheme API שהוצאו משימוש. האפשרות הזו תוסר בגרסה היציבה הבאה, והיא נועדה רק כעזר זמני להעברה במקרים שבהם אתם מספקים RippleTheme מותאם אישית. מידע על המעבר ומידע נוסף על הרקע לשינוי הזה זמינים באתר developer.android.com. (af92b21)
  • עדכנו את ColorScheme כך שהוא לא ניתן לשינוי. בעקבות זאת, עדכוני צבעים בודדים פחות יעילים, אבל השימוש הנפוץ יותר בצבעים יעיל יותר. הסיבה לשינוי הזה היא שברוב האפליקציות, עדכון של צבעים ספציפיים לא נחשב לתרחיש שימוש עיקרי. האפשרות הזו עדיין קיימת, אבל הקומפוזיציה תהיה גדולה יותר מבעבר. כתוצאה מכך, נצמצם באופן משמעותי את מספר המינויים למצבים בכל קוד החומר, וזה ישפיע על עלויות האתחול וזמן הריצה של תרחישי שימוש סטנדרטיים יותר. (f5c48b7)
  • רכיבי Wear material ו-Wear material3 שחושפים MutableInteractionSource ב-API שלהם עודכנו כך שהם חושפים עכשיו MutableInteractionSource שניתן להגדיר כ-nullable, וערך ברירת המחדל שלו הוא null. אין כאן שינויים סמנטיים: העברת הערך null פירושה שאתם לא רוצים להעלות את MutableInteractionSource, והוא ייווצר בתוך הרכיב אם יהיה צורך בכך. שינוי ל-null מאפשר לרכיבים מסוימים לא להקצות MutableInteractionSource אף פעם, ולרכיבים אחרים ליצור מופע רק כשצריך, וכך לשפר את הביצועים של הרכיבים האלה. אם אתם לא משתמשים ב-MutableInteractionSource שמועבר לרכיבים האלה, מומלץ להעביר במקומו null. מומלץ גם לבצע שינויים דומים ברכיבים שלכם. (f8fa920)
  • עדכנו את rememberExpandableState כדי לשמור את מצב ההרחבה. כך הנתונים יישמרו כשעוברים למסך אחר וישוחזרו כשחוזרים למסך המקורי. (5c80095)

תיקוני באגים

  • עדכנו את ההגדרה ReduceMotion כך שתשתמש במאזין שמודע למחזור החיים. (7c6b122)
  • עדכנו את Listener של TouchExplorationStateProvider כך שיזהה את מחזור החיים (be28b01)
  • הסרנו את השכבה materialcore עבור CompactButton כדי לשפר את הביצועים (25db8e9)
  • שיפרנו את BasicSwipeToDismissBox כדי למנוע חריגים בהזחות של NaN (b983739)
  • עדכנו את BasicSwipeToDismissBox כדי לוודא שערכי האלפא נמצאים בטווח 0,1
  • תיקנו באג ב-ToggleButton, ‏ SplitToggleButton, ‏ Checkbox, ‏ Switch ו-RadioButton כך שהודעות הנגישות לא חוזרות על עצמן (קודם לכן, תפקידים סמנטיים שוכפלו) (d11eeb7)

גרסה 1.3

גרסה 1.3.1

‫3 באפריל 2024

androidx.wear.compose:compose-*:1.3.1 משוחרר. גרסה 1.3.1 מכילה את הקודים האלה.

תיקוני באגים

  • תיקנו באג בתכונה 'החלקה לחשיפה', שבו היה אפשר לבצע אינטראקציה עם פעולה מחויבת (ולבטל אותה) בפריט אחד על ידי התחלת החלקה של פריט אחר. (Ide059)

גרסה 1.3.0

‫24 בינואר 2024

androidx.wear.compose:compose-*:1.3.0 משוחרר. גרסה 1.3.0 מכילה את הקומיטים האלה.

שינויים חשובים מאז גרסה 1.2.0

  • המחלקות SwipeToDismissBoxState,‏ SwipeToDismissValue והפונקציה Modifier.edgeSwipeToDismiss הן עכשיו חלק מהחבילה androidx.wear.compose.foundation, ולא מהחבילה androidx.wear.compose.material. הארכיטקטורה המעודכנת הזו מאפשרת לכם להטמיע טיפול במחוות בנפרד משיקולים אחרים שקשורים לעיצוב. תהליכי עבודה של Material Design, כמו החלת צבעים מעיצוב מוגדר, מטופלים בנפרד.
  • המחלקות SwipeToRevealCard ו-SwipeToRevealChip עוזרות לכם להטמיע את recommended swipe-to-reveal guidance. בכיתה SwipeToRevealSample אפשר לראות איך משתמשים ברכיבים האלה.
  • בגרסה 1.3.0-alpha02 שחררנו שינוי שגורם לאובייקטים Chip ו-ToggleChip לגדול בגובה כדי לתמוך טוב יותר בהתאמת גודל הגופן שנבחר על ידי המשתמש. זה יכול לגרום לחלק מהקצוות להיחתך. כדי לפתור את הבעיה, הצורה large של MaterialTheme כוללת עכשיו רדיוס פינות גדול יותר (26dp במקום 24dp). האובייקטים Chip ו-ToggleChip משתמשים ברדיוס הפינות החדש הזה כדי למנוע חיתוך של התוכן בפינות של Chip ו-ToggleChip.

    • רוב Chips ו-ToggleChips לא משתנים, כי גובה ברירת המחדל שלהם הוא 52dp. עם זאת, אובייקטים מסוג Chip ו-ToggleChip שמכילים כמה שורות של טקסט תווית ראשי או משני, או שאובייקטים שהגובה שלהם שונה, עלולים לגרום לכשל בבדיקות צילומי המסך.

שינויים נוספים

לרשימה מלאה יותר של השינויים בגרסה 1.3.0, אפשר לעיין בנתוני הגרסה beta01.

המלצות להטמעה

  • אם האפליקציה מאפשרת למשתמשים להזיז את התוכן במסך, כמו באפליקציה שמבוססת על מפה, צריך להשבית את הטיפול בהחלקות על ידי הגדרת userSwipeEnabled ל-false בקומפוזבילי SwipeDismissableNavHost, ולכלול לחצן שמאפשר למשתמשים לעבור למסך הקודם.
  • כדי להשבית את האנימציות של סמן המיקום במהלך אנימציות של הופעה הדרגתית ושינוי מיקום ברשימה עם גלילה, משתמשים באובייקט SnapSpec.
  • בזמן ההמתנה לטעינת תוכן להפעלה באפליקציית מדיה, מוצג קומפוזיציה ריקה Placeholder.
  • כדי ליצור אוסף של פריטים שניתן להרחיב לפי דרישה, כדאי להשתמש במחלקה הניסיונית ExpandableStateMapping.

גרסה 1.3.0-rc01

‫10 בינואר 2024

androidx.wear.compose:compose-*:1.3.0-rc01 משוחרר. גרסה 1.3.0-rc01 כוללת את הקומיטים האלה.

תיקוני באגים

  • עדכנו את הצורה הגדולה MaterialTheme כך שתשתמש ברדיוס של פינות מעוגלות בגודל 26dp, והיא תשמש עכשיו את Chip ואת ToggleChip. השינוי הזה נדרש כדי לתמוך בהתאמות של הגובה כשצריך גובה נוסף כדי להציג גדלי גופן גדולים – אחרת, הצורה הקיימת של האצטדיון חותכת חלק מתוכן הטקסט.

    הטקסט נחתך בפינות
    איור 1: טקסט שנחתך בפינות.
    הטקסט לא נחתך
    איור 2: הטקסט לא נחתך.

    השינוי הזה עלול לגרום לבעיות בבדיקות של צילומי מסך. (I2e6ae)

גרסה ‎1.3.0-beta02

‫13 בדצמבר 2023

androidx.wear.compose:compose-*:1.3.0-beta02 משוחרר. גרסה 1.3.0-beta02 מכילה את הקומיטים האלה.

תיקוני באגים

  • שחזרנו את תנועת ההחלקה המיועדת ב-BasicSwipeToDismissBox. בגרסה קודמת, השינוי הזה בוצע כך שחלק המעבר של השקף התרחש בזמן שהאצבע נגעה במסך. (Id8e76)

גרסה 1.3.0-beta01

‫15 בנובמבר 2023

androidx.wear.compose:compose-*:1.3.0-beta01 משוחרר. גרסה 1.3.0-beta01 מכילה את הקומיטים האלה.

גרסה 1.3-beta01 של Compose for Wear OS מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות וה-API נעול (אלא אם מצוין אחרת). ‫Wear Compose 1.3 כולל את הפונקציונליות החדשה הבאה:

  • המודעות של 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, כך שהיא תוצג בהתחלה, אבל ללא אנימציה.

שינויים ב-API

  • שינינו את השם של רמת הבסיס SwipeToDismissBox ל-BasicSwipeToDismissBox. כך קל יותר להבחין בין הרכיב ברמת Foundation לבין הרכיב ברמת Material SwipeToDismissBox. האחרון שולף צבעים מ-MaterialTheme לשימוש בשכבות אטומות למחצה, ומעביר את שאר ההטמעה אל BasicSwipeToDismissBox. (Ibecfc)
  • סימנו את rememberExpandableStateMapping כניסיוני ושיפרנו את הביצועים של expandableItem. (I5f6bc)
  • החלפנו את המחלקה SwipeToRevealAction בממשקי ה-API של Material SwipeToReveal Card ו-Chip בממשק API מבוסס-slot שמשתמש בקומפוזיציות SwipeToRevealPrimaryAction, ‏ SwipeToRevealSecondaryAction ו-SwipeToRevealUndoAction. דוגמאות לשימוש ב-API החדש מופיעות בדוגמאות הקוד. (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 מכילה את הקומיטים האלה.

שינויים ב-API

  • הוספנו עומסים יתרים של PositionIndicator עם דגלים נפרדים כדי לשלוט באנימציות שונות: showFadeInAnimation,‏ showFadeOutAnimation ו-showPositionAnimation. ה-API הקודם הוצא משימוש והקריאות מועברות ל-API החדש. מטעמי ביצועים ומטעמי עקביות בחוויית המשתמש, כשמשתמשים ב-PositionIndicator עם רשימה שאפשר לגלול בה, מומלץ להשבית את הדגלים showFadeInAnimation ו-showPositionAnimation. אם משתמשים ב-PositionIndicator כאינדיקטור עצמאי, למשל לשינוי עוצמת הקול, מומלץ להפעיל את כל 3 האנימציות. (I44294)
  • הוצאנו משימוש את הרכיבים Material SwipeToDismissBoxState, ‏ SwipeToDismissValue ו-edgeSwipeToDismiss אחרי שהעברנו את הפונקציונליות של החלקה לסגירה אל wear.compose.foundation. צריך להחליף אותם בתגי wear.compose.foundation מקבילים. (Iee8c9)

תיקוני באגים

  • עדכנו את פרופילי הבסיס של ספריות wear compose foundation, ‏ material ו-navigation. ‪(Idb060)
  • ביטלנו שינוי בהתנהגות של PositionIndicator שהוצג ברשימת שינויים קודמת, כך ש-PositionIndicator מונפש כשמסך מוצג בפעם הראשונה. אנחנו מתכוונים לבצע שינוי דומה בגרסת אלפא מוקדמת של 1.4, כך שהסמל PositionIndicator יוצג בהתחלה, אבל בלי אנימציה. (I41843)
  • טיפלנו בכמה בעיות בביצועים ב-PositionIndicator. (I1c654, b/302399827)
  • ביצענו אופטימיזציה של הביצועים של הטמעה שמוגדרת כברירת מחדל של ספק מצב החיפוש במגע, כך שהיא תסתמך על State<Boolean> ולא על מצב נגזר. (Ieec4d)
  • הגדרנו מלבנים בגודל systemGestureExclusion ב-Android מגרסה 13 ואילך. (Ib1f4b)

גרסה ‎1.3.0-alpha07

‫4 באוקטובר 2023

androidx.wear.compose:compose-*:1.3.0-alpha07 משוחרר. גרסה ‎1.3.0-alpha07 מכילה את הקומיטים האלה.

שינויים ב-API

  • הוספנו ל-PositionIndicator דגלים נפרדים כדי לשלוט באנימציות שונות: showFadeInAnimation, ‏ showFadeOutAnimation ו-showPositionAnimation. ה-API הקודם הוצא משימוש והקריאות מועברות ל-API החדש. מטעמי ביצועים ומטעמי עקביות בחוויית המשתמש, כשמשתמשים ב-PositionIndicator עם רשימה שאפשר לגלול בה, מומלץ להשבית את הדגלים showFadeInAnimation ו-showPositionAnimation. אם משתמשים ב-PositionIndicator כאינדיקטור עצמאי, למשל לשינוי עוצמת הקול, מומלץ להפעיל את כל 3 האנימציות. (Ia2d63)

תיקוני באגים

  • שיפרנו את האנימציה של החלקה לחשיפה: הוספנו אפקט דהייה לטקסט של הפעולה הראשית, ודהייה לפעולה המשנית או שינוי של קנה המידה של הסמל בהרחבה מלאה של ההחלקה. (Ib7223)
  • מומלץ להפוך את פעולות ההחלקה לחשיפה לנגישות, ולכן הוספנו פעולות נגישות מותאמות אישית לדוגמאות של ההחלקה לחשיפה. (I42224)
  • שיפרנו את הביצועים של SwipeToDismissBox, כולל שינוי מבנה הקוד כדי לוודא שהלוגיקה הראשונית לא תפעיל יצירה מחדש. ה-SwipeToDismissBox מוצג עכשיו בגודל מסך מלא. (Ie0aa2)
  • תיקנו באג שגרם להיעלמות לא תקינה של הסמל PositionIndicator. (I2091a)
  • שיפור הביצועים של PositionIndicator באמצעות אופטימיזציה של יצירה מחדש. בהמשך נוספו דגלים חדשים לשליטה באנימציות (fadeIn, fadeOut ו-positionChange) (ראו שינויים ב-API) (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)
  • הוספנו דוגמאות ל-Material 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)

שינויים ב-API

  • מוסיפים את 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 מכילה את הקומיטים האלה.

שינויים ב-API

  • הוספנו שני רכיבים חדשים שניתן להרכבה ב-Material כדי להטמיע SwipeToReveal באמצעות כרטיסים וצ'יפים. הקומפוזבלים האלה פועלים לפי ההנחיות המומלצות לגבי חוויית המשתמש ברכיב, ומקלים על המפתחים להטמיע את SwipeToReveal באמצעות הרכיבים הקיימים ב-Wear Material. (I7ec65)
  • הפעלנו את FloatRange ההערות כמגבלות API, שצוינו בעבר בתגובות. (Icb401)

תיקוני באגים

  • העברנו את הלוגיקה הראשונית של הגלילה של ScalingLazyColumn אל תוך onGloballyPositioned(). (Ic90f1)
  • אנחנו משתמשים עכשיו ב-drawWithCache ב-PositionIndicator, ב-ProgressIndicator וב-SelectionControls כדי לבצע אופטימיזציה של הקצאת משיכות המכחול. (I5f225, ‏ b/288234617)
  • תיקנו את הבעיה שגרמה לכך שסימון התיבה לא היה גלוי במצבים מושבתים. (Ib25bf)
  • עדכנו את Placeholder כדי לאפשר איפוס להצגת ה-placeholder אם התוכן כבר לא במצב מוכן. (Ibd820)
  • ביצענו כמה תיקונים בבדיקות לא יציבות (Placeholder) (Idb560)

גרסה 1.3.0-alpha02

‫26 ביולי 2023

androidx.wear.compose:compose-*:1.3.0-alpha02 משוחרר. גרסה ‎1.3.0-alpha02 מכילה את הקומיטים האלה.

שינויים ב-API

  • הוספנו את ExpandableStateMapping, דרך חדשה ליצירת ExpandableStates, למקרים שבהם צריך ליצור אותם לפי דרישה, לא בהכרח במסגרת היקף @Composable (Iff9e0)
  • המינוי SwipeToDismissBox הועבר מחבילת androidx.wear.compose.material לחבילת androidx.wear.compose.foundation. (I275fb)
  • קובצי ה-API עודכנו כדי להוסיף הערות על השבתת תאימות. (I8e87a, ‏ b/287516207)
  • פרסמנו את קבועי הגובה של Chip, CompactChip ו-ToggleChip (Idbfde)
  • הפכנו את הריווח האופקי והאנכי של Chip ו-CompactChip לציבורי. (Ieeaf7)
  • הוספנו פונקציונליות להשבתת הטיפול בהחלקות ב-SwipeDismissableNavHost באמצעות הפרמטר החדש userSwipeEnabled. (Id2a0b, b/230865655)
  • עדכנו את ספריית הניווט Wear Compose כדי להשתמש ב-SwipeToDismissBox החדש מ-Wear Compose Foundation. (I4ff8e)

תיקוני באגים

  • תיקנו באג בסדר העומק (z-order) שגרם לכך שexpandedItem לא הציג את התוכן הנכון אחרי לחיצה על התנהגות של לחצן כשהיו בו לחצנים. (I1899d, b/289991514)
  • שיפור הטיפול במיקוד של SwipeToDismissBox (ולכן גם של SwipeDismissableNavHost) באמצעות HierarchicalFocusCoordinator (I45362, ‏ b/277852486)
  • תיקנו את הבעיה בטיפול בתנועות ב-SwipeableV2 . (I89737)
  • סיימנו את פרופילי הבסיס לגרסה 1.2. (Id5740)
  • אחרי ההעברה של SwipeToDismissBox ל-Foundation, ההטמעה של Material SwipeToDismissBox מועברת עכשיו ל-Foundation ומספקת ערכי צבע ברירת מחדל מהעיצוב שלה.(If8451)
  • הוספנו סמנטיקה של כותרות ל-ListHeader. (Ic5420)
  • הגובה של Chip ושל ToggleChip יותאם עכשיו לתוכן שהתרחב בגלל גופנים גדולים לנגישות, כשנדרש. (Iaf302)
  • תוקן באג בתפקיד הסמנטי של האזור שאפשר להקיש עליו ב-SplitToggleChip, לצורך נגישות. (Ieed3a)
  • ההגדרה 'הפחתת התנועה' משביתה עכשיו את אפקט הנצנוץ ואת תנועת המחיקה במצייני מיקום. (I91046)
  • עכשיו אפשר ללחוץ שוב ושוב על Stepper ועל InlineSlider בלחיצה ארוכה, כדי להגדיל או להקטין במהירות את הערך של Stepper ושל InlineSlider בלחיצה ארוכה על הלחצנים + או -. (I27359)

גרסה ‎1.3.0-alpha01

‫21 ביוני 2023

androidx.wear.compose:compose-*:1.3.0-alpha01 משוחרר. גרסה ‎1.3.0-alpha01 מכילה את הקומיטים האלה.

תיקוני באגים

  • כפי שהודענו במאמרים 1.2.0-alpha07 ו1.2.0-alpha10, אנחנו משנים עכשיו את DefaultTextStyle כדי להשבית את הוספת הריווח לגופנים, כדי ליצור עקביות בפלטפורמת Android. השינוי הזה יפתור חלק מהמקרים של חיתוך טקסט בגדלים גדולים של גופנים, ויכול להיות שהוא ישפיע גם על פריסות המסך, כך שיהיה צורך לעדכן את בדיקות צילומי המסך. לדוגמה, כאן רואים חיתוך של טקסט (Ic6a86)
טקסט נחתך כשגודל הגופן גדול
איור 1: הטקסט נחתך.
  • הוא לא מופיע יותר כשמשביתים את הריווח של הגופן:
הטקסט לא נחתך כשגודל הגופן גדול
איור 2: הטקסט לא נחתך.
  • עדכנו את wear.compose.foundation כך שיהיה תלוי ב-API של wear.compose.material (I72004, ‏ b/285404743)
  • תיקנו באג ב-SwipeToDismissBox. מפתחות הרקע והתוכן מועברים עכשיו לבלוק הזיכרון, כך שנוצרים משנים חדשים כשהתוכן או הרקע משתנים. (Ib876c, ‏ b/280392104)
  • עדכנו את TimeText כך שישתמש באזור כשבוחרים את הפורמט של השעה (12 או 24 שעות). (If4a3d)
  • תיקנו חוסר עקביות בפרמטרים של ברירת המחדל של SwipeToDismissBox contentScrimColor. (I2d70f)
  • שיפרנו את הטיפול בתנועה ב-SwipeToReveal. (I28fb7)

בעיות מוכרות

  • תמיכה בגדלי גופן שמוגדרים על ידי המשתמש היא דרישה לנגישות. אנחנו יודעים שצ'יפים עם כמה שורות יכולים לגרום לחיתוך של הטקסט כשהם מוצגים עם גדלי גופן גדולים, ולכן נעדכן את הצ'יפ בגרסת אלפא מוקדמת של 1.3 כדי לבצע התאמות של הגובה במקרים כאלה.

גרסה 1.2

גרסה 1.2.1

‫18 באוקטובר 2023

androidx.wear.compose:compose-*:1.2.1 משוחרר. גרסה 1.2.1 מכילה את הקומיטים האלה.

תיקוני באגים

  • תוקן באג שגרם להיעלמות לא תקינה של PositionIndicator. (7a167f)

גרסה 1.2.0

‫9 באוגוסט 2023

androidx.wear.compose:compose-*:1.2.0 משוחרר. גרסה 1.2.0 מכילה את הקומיטים האלה.

שינויים חשובים מאז גרסה 1.1.0

גרסה 1.2.0-rc01

‫26 ביולי 2023

androidx.wear.compose:compose-*:1.2.0-rc01 משוחרר. גרסה 1.2.0-rc01 כוללת את הקומיטים האלה.

תיקוני באגים

  • סיימנו את פרופילי הבסיס לגרסה 1.2 (Id5740)

גרסה 1.2.0-beta02

‫7 ביוני 2023

androidx.wear.compose:compose-*:1.2.0-beta02 משוחרר. גרסה 1.2.0-beta02 מכילה את הקומיטים האלה.

תכונות חדשות

  • הוספנו את המשתנה הניסיוני החדש LocalReduceMotion CompositionLocal שמשבית את ההגדלה וההחלשה של ScalingLazyColumn. (I58024)

תיקוני באגים

  • עדכנו את פרופילי הבסיס של ספריות ה-Wear Compose Foundation ו-Material(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 מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות וה-API נעול (אלא אם מצוין אחרת). ‫Wear Compose 1.2 כולל את הפונקציות החדשות הבאות:

  • expandableItem ו-expandableItems הם שני רכיבים חדשים של Foundation שתומכים בהרחבת פריטים בתוך ScalingLazyColumn. משתמשים ב-expandableItem לפריט יחיד שניתן להרחבה, כמו טקסט שבו מספר השורות. משתמשים ב-expandableItems לקבוצה של פריטים שניתן להרחיב, וב-expandableButton כדי לפשט את יצירת הלחצן שמתכווץ אחרי הרחבת התוכן.
  • HierarchicalFocusCoordinator – קומפוזיציה ניסיונית שמאפשרת לסמן עצי משנה של הקומפוזיציה ככאלה שמופעל בהם פוקוס או ככאלה שהפוקוס מושבת בהם.
  • Picker – ה-API כולל עכשיו את userScrollEnabled כדי לקבוע אם הכלי לבחירת תמונות פעיל בזמן שהמשתמש גולל.
  • PickerGroup – רכיב חדש שאפשר להוסיף לאפליקציה כדי לטפל בכמה רכיבי בחירה ביחד. הוא מטפל בהעברת המיקוד בין כלי הבחירה באמצעות HierarchicalFocusCoordinator API ומאפשר מרכוז אוטומטי של פריטים בכלי הבחירה.
  • Placeholder – ביצענו עדכונים באנימציות של הנצנוץ והמחיקה. אפקט המחיקה מוחל עכשיו באופן מיידי כשהתוכן מוכן.
  • ScalingLazyColumn – העברנו את ScalingLazyColumn ואת הכיתות המשויכות מ-androidx.wear.compose.material.ScalingLazyColumn אל androidx.wear.compose.foundation.lazy.ScalingLazyColumn. צריך לעדכן לגרסה Foundation.Lazy.
  • SwipeToReveal – הוספנו תמיכה ניסיונית בהחלקה לחשיפה כאמצעי לגישה לפעולות משניות, בנוסף לדפוס הקיים של 'לחיצה ארוכה'.
  • Stepper – עכשיו יש עומס יתר עם פרמטר נוסף enableRangeSemantics כדי להקל על השבתת הסמנטיקה של טווח ברירת המחדל.
  • Previews – הוספנו את ההערות המותאמות אישית הבאות לתצוגה מקדימה של פונקציות composable במסכי Wear: ‏WearPreviewSmallRound מציגה תצוגה מקדימה של פונקציית ה-composable במכשיר קטן ועגול, ‏WearPreviewLargeRound מציגה תצוגה מקדימה של פונקציית ה-composable במכשיר גדול ועגול, ‏WearPreviewSquare מציגה תצוגה מקדימה של פונקציית ה-composable במכשיר מרובע. בנוסף, יש את ההערות הבאות לתצוגה מקדימה ולתצוגה מקדימה מרובה: WearPreviewFontScales מציגה תצוגה מקדימה של רכיבי ה-Composable במכשיר Wear עם כמה גדלי גופן, ו-WearPreviewDevices מציגה תצוגה מקדימה של רכיבי ה-Composable במכשירי Wear שונים.
  • הוספנו DefaultTextStyle ל-Wear Compose, שקובע כברירת מחדל את המאפיין PlatformTextStyle.includeFontPadding כ-true (זו ההגדרה הנוכחית). כך נוכל לסנכרן את ההשבתה של ריווח הגופן כברירת מחדל עם ספריות Compose בגרסת אלפא מוקדמת 1.3 – מידע נוסף זמין בגרסה 1.2.0-alpha10.

תכונות חדשות

  • הוספנו תמיכה ניסיונית בהשבתת שינוי הגודל והנפשה של דהייה כשההגדרה reduce_motion מופעלת. (I58024)

תיקוני באגים

  • שיפור התיעוד של angularWidthDp ב-CurvedSize.kt (Iab75c)
  • SwipeDismissableNavHost מתעד עכשיו אזהרה עם סיבות אפשריות ל-backstack ריק. הפעולה הזו מתבצעת כדי למנוע קריסות לא צפויות שנגרמות בגלל IllegalArgumentException שהופעל כשה-backstack היה ריק. ‫(I04a81, ‏ b/277700155)

גרסה 1.2.0-alpha10

‫10 במאי 2023

androidx.wear.compose:compose-*:1.2.0-alpha10 משוחרר. גרסה ‎1.2.0-alpha10 מכילה את הקומיטים האלה.

תכונות חדשות

  • הוספנו תמיכה בהחלקה לחשיפה, כאמצעי לגישה לפעולות משניות. הדפוס הזה משלים את הדפוס 'לחיצה ארוכה', שהיא הדרך הקיימת שבה משתמש יכול לחשוף פעולות משניות (שונות). (I60862)

שינויים ב-API

  • הוספנו את RevealScope לרכיבים הניתנים להרכבה של פעולות ב-SwipeToReveal, וכך אפשר לגשת להיסט שבו נחשפות פעולות נוספות. (I3fd56)

תיקוני באגים

  • תוקנה בעיה שבה ScalingLazyColumn נתקע ב-Wear API 33 אחרי העברה מהירה (Ic4599)
  • ביצענו כמה שיפורים בביצועים של PositionIndicator כדי לצמצם את הבעיות שקשורות ל-jank. (I35e92)
  • תיקנו באג בצ'יפ וב-CompactChip שגרם לכך שהתפקיד הסמנטי לא הוגדר יותר ל-Role.Button. (I93f91, b/277326264)

בעיות מוכרות

  • זיהינו באג ב-Android Studio שגורם לכשל בעיבוד התצוגה המקדימה כשהיא מוסברת באמצעות @WearPreviewDevices ו-@WearPreviewFontScales. אנחנו מתכננים לפרסם תיקון בקרוב. שימו לב שההערות האחרות בתצוגה המקדימה של Wear פועלות כמצופה ב-Android Studio Giraffe 2022.3.1 ואילך.

  • בגרסה 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 מכילה את הקומיטים האלה.

שינויים ב-API

  • הוספת angularSizeDp ל-CurvedModifier api להגדרת רוחב זוויתי ב-DP (I89a52)

תיקוני באגים

  • תיקנו בעיות נגישות בהדגמות של כלי בחירת השעה שלנו(Id0eb7)

גרסה ‎1.2.0-alpha08

‫5 באפריל 2023

androidx.wear.compose:compose-*:1.2.0-alpha08 משוחרר. גרסה ‎1.2.0-alpha08 מכילה את הקומיטים האלה.

שינויים ב-API

  • שינינו את השם של 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 מכילה את הקומיטים האלה.

שינויים ב-API

  • העברנו את רכיבי הפריטים הניתנים להרחבה (נוספו בגרסה 1.2.0-alpha06) מ-material ל-foundation, כי לא הייתה להם הפניה משמעותית ל-MaterialTheme. (Ib0525)

תיקוני באגים

  • תיקנו קריסה שהתרחשה במסך באמצעות PickerGroup, על ידי הבטחה ש-PickerGroup מטפל במיקוד בצורה נכונה כשאין לבורר מיקוד. הוספנו גם תמיכה בגלילה של RSB בהדגמות של כלי הבחירה שלנו. ‫(If8c19)
  • שיפרנו את המעברים בין הדיאלוגים – מעבר הפתיחה עכשיו חלק יותר, כמו מעבר הסיום. (Ib5af9)
  • הוספנו DefaultTextStyle ל-Wear Compose, שקובע כברירת מחדל את המאפיין PlatformTextStyle.includeFontPadding כ-true (זו ההגדרה הנוכחית). כך נוכל לסנכרן את השבתת הריווח של הגופן כברירת מחדל עם ספריות ה-Compose בעתיד – מידע נוסף זמין במאמר בנושא תיקון הריווח של הגופן ב-Compose. (I2aee8)
  • בוצעה החזרה של תלות בתצוגה מקדימה של UpsideDownCake דרך activity-compose שחסמה פרסום אפליקציות בחנות Google Play. (I6443d)

גרסה ‎1.2.0-alpha06

‫8 במרץ 2023

androidx.wear.compose:compose-*:1.2.0-alpha06 משוחרר. גרסה ‎1.2.0-alpha06 מכילה את הקומיטים האלה.

שינויים ב-API

  • מוסיפים רכיב CurvedBox, שממקם רכיבים אחד מעל השני בעולם המעוקל. (I29200)
  • נוספו פריטים שניתנים להרחבה – שני רכיבים חדשים לתמיכה בקבוצה של פריטים שניתנים להרחבה ב-ScalingLazyColumn, או בפריט יחיד שניתן להרחבה, כמו טקסט שבו מספר השורות גדל. (I95dd5)
  • הוספנו את ההערות המותאמות אישית הבאות לתצוגה מקדימה של פונקציות composable במסכי Wear: ‏WearPreviewSmallRound מציגה תצוגה מקדימה של פונקציית ה-composable במכשיר קטן ועגול, ‏WearPreviewLargeRound מציגה תצוגה מקדימה של פונקציית ה-composable במכשיר גדול ועגול, ‏WearPreviewSquare מציגה תצוגה מקדימה של פונקציית ה-composable במכשיר מרובע. בנוסף, יש את ההערות הבאות לתצוגה מקדימה ולתצוגה מקדימה מרובה: WearPreviewFontScales מציגה תצוגה מקדימה של רכיבי ה-Composable במכשיר Wear עם כמה גדלי גופן, ו-WearPreviewDevices מציגה תצוגה מקדימה של רכיבי ה-Composable במכשירי Wear שונים. כדי להשתמש בתצוגות המקדימות האלה, צריך להשתמש בגרסה האחרונה של Android Studio ‏ (Giraffe Canary 6) או בגרסה מתקדמת יותר. שימו לב: אם ההערות האלה לא מתאימות למטרה שלכם, עדיין אפשר להשתמש בתצוגה המקדימה ולבצע התאמות אישיות נוספות באמצעות פרמטרים. (I397ff)
  • סימנו את HierarchicalFocusCoordinator כניסיוני, כי הוא מועמד להעברה לספריות הליבה של Compose, בהתחשב בשימושים הרבים שלו. (I3a768)

תיקוני באגים

  • תוקן באג ב-HierarchicalFocusCoordinator: כשמשנים את ה-lambda שמועבר לפרמטר focusEnabled, המערכת משתמשת עכשיו ב-lambda החדש בצורה נכונה. (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 מכילה את הקומיטים האלה.

שינויים ב-API

  • עדכנו את PickerGroup API כדי לאפשר העברה של האילוצים המינימליים לרכיב שאפשר להרכיב באופן אופציונלי. כשהיא מוגדרת כ-True, האילוצים המינימליים שמועברים מהקומפוזבילי של ההורה מותרים ב-PickerGroup. אם המדיניות מוגדרת כ-False, ‏ 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 לטיפול בכמה כלים לבחירת תאריכים בו-זמנית באמצעות ה-API של המיקוד. הוא מטפל במיקוד בין כלי הבחירה השונים, מאפשר מרכוז אוטומטי של כלי הבחירה על סמך פרמטרים ומאפשר למפתחים לשנות את המיקוד בין כלי בחירה שונים תוך טיפול באירועים מהקבוצה. במצב TalkBack, הרכיב PickerGroup מטפל במיקוד של TalkBack על ידי העברת המיקוד לרכיב Picker שנבחר מתוך הקבוצה. (I60840)

שינויים ב-API

  • הוספנו עומס יתר ל-Stepper עם פרמטר נוסף enableRangeSemantics כדי להקל על השבתת הסמנטיקה של טווח ברירת המחדל (Ia61d4)

תיקוני באגים

  • אפשר להטמיע את ScalingLazyColumn בדף עם גלילה אופקית (Iec3f8, b/266555016)
  • שיפור של Stepper kdocs וניקוי של בדיקות 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 מכילה את הקומיטים האלה.

שינויים ב-API

  • העברנו את ScalingLazyColumn (ואת הכיתות שמשויכות אליו) מ-androidx.wear.compose.material.ScalingLazyColumn אל andrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn (בדוגמה הזו מוסבר על ההעברה). המיקום החדש הזה תואם יותר למיקום של compose.foundation.lazy.LazyColumn והוא טבעי יותר כי הוא לא רכיב Material עם דעה מוצקה. השינוי מתרחש עכשיו כהכנה לספריית Material3 חדשה, שעליה נעבוד במקביל לספריית Material הקיימת. (I060e7)

השינויים הבאים הם חלק מההעברה של ScalingLazyColumn מ-Material ל-Foundation.Lazy:

  • הוצאנו משימוש את ממשקי ה-API שמטרגטים את Material ScalingLazyColumn. צריך לעדכן לגרסה Foundation.Lazy ScalingLazyColumn.PositionIndicator בנוסף, השדה anchorType נוסף ל-ScalingLazyListLayoutInfo. (I29d95)
  • ScalingLazyColumn סומן כהוצאה משימוש בחבילת Wear Compose Material ‏ (I16d34)
  • עדכנו את ה-modifier‏ ScrollAway כך שישתמש ב-ScalingLazyListState מ-Wear Compose‏ Foundation.Lazy והוצאנו משימוש את ה-overload שקיבל ScalingLazyListState מ-Wear Compose Material. ‫(Ifc42c)
  • עדכנו את Dialog APIs כך שישתמשו ב-ScalingLazyListState מ-Foundation.Lazy והוצאנו משימוש את העומסים העודפים שהשתמשו ב-Material ScalingLazyListState (Ic8960)
  • עדכנו את Picker APIs כך שישתמשו ב-ScalingParams מ-Foundation.Lazy והוצאנו משימוש את העומסים העודפים שהשתמשו ב-Material ScalingParams. (Idc3d8)

תיקוני באגים

  • תיקנו באג שגרם להרכבות מחדש מיותרות ב-ScalingLazyListState.centerItemIndex. עכשיו המערכת מעבירה עדכונים רק כשהערך משתנה בפועל (Ia9f38)
  • שיפרנו את הביצועים של SwipeToDismissBox (I3933b)
  • נוספו בדיקות השוואה לשוק עבור ScalingLazyColumn ב-Wear Compose Foundation‏ (Ie00f9)
  • עדכנו כמה שיטות של מחלקות פנימיות של ScalingLazyColumn ב-Material כך שישתמשו בשיטות המקבילות מ-Foundation.Lazy (I38aab)
  • תיקנו כמה בעיות בבדיקות של הכלי לבחירת תמונות והוספנו עוד בדיקות לבדיקת גלילה עם היסט (I6ac34)
  • העברנו את ScalingLazyColumn Integration Demos כך שיסתמכו על 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 מכילה את הקומיטים האלה.

שינויים ב-API

  • בבדיקות של ממשק משתמש ב-Android Compose, המערכת תפעיל עכשיו מעברים של פריסות לכל פריים כשמבצעים פריים כדי להגיע למצב סרק (למשל באמצעות waitForIdle). יכול להיות שהשינוי הזה ישפיע על בדיקות שמתבססות על פריים ספציפי של אנימציות פריסה. (I8ea08, b/222093277)
  • הפרמטר minLines נוסף ל-Wear Text כדי ליצור התנהגות עקבית עם BasicText (I24874)
  • המסמך CompactChipTapTargetPadding הוגדר כציבורי כדי שיופיע בתיעוד (If1e70, b/234119038)

תיקוני באגים

  • השבתת בנייה חוצת-פלטפורמות לחבילות wear.compose (Iad3d7)
  • תיקון מסמכי kdocs עבור 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 מכילה את הקומיטים האלה.

תכונות חדשות

  • עדכנו את הפונקציונליות הניסיונית של Placeholder כך שהאפקט Wipe Off יוחל באופן מיידי כשהתוכן יהיה מוכן, במקום להמתין עד שתתחיל לולאת האנימציה הבאה. ביצענו גם כמה עדכונים באנימציות של הנצנוץ והמחיקה. (I5a7f4)

שינויים ב-API

  • הוספנו HierarchicalFocusCoordinatorקומפוזיציה כדי לאפשר סימון של עצי משנה בקומפוזיציה ככאלה שאפשר להתמקד בהם או ככאלה שאי אפשר להתמקד בהם (I827cb).
  • הוספנו מאפיין חדש כדי לבטל את התפקיד הסמנטי של ToggleButton.(I67132)
  • עדכנו את TimeTextDefaults.TimeFormat12Hours כדי להסיר את התוספת AM/PM ב-TimeText. הפעולה הזו תשנה את ערך ברירת המחדל של פרמטרים של timeSource ב-API של TimeText. (I1eb7f)
  • הרחבנו את Picker API כדי לשפר את הנגישות למסכים עם בחירה מרובה. נוסף מאפיין חדש, userScrollEnabled, שקובע אם בוחר הצבעים פעיל בזמן שהמשתמש גולל. (I3c3aa)

תיקוני באגים

  • שינינו את רוחב ברירת המחדל של הגבול של OutlinedButton/OutlinedCompactButton מ-2dp ל-1dp, כדי להתאים למפרטים הסופיים של חוויית המשתמש. (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

תכונות חדשות

  • עדכנו את הפונקציונליות הניסיונית של Placeholder כך שהאפקט Wipe Off יוחל באופן מיידי כשהתוכן יהיה מוכן, במקום להמתין עד שתתחיל לולאת האנימציה הבאה. ביצענו גם כמה עדכונים באנימציות של הנצנוץ והמחיקה. (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 כדי למנוע שגיאות של חלוקה באפס.(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 בתוך בלוק המדידה, כדי להימנע מהרכבה מחדש של ה-modifier אחרי כל מדידה מחדש. (I4c6f1)
  • הוספנו מסמכים ודוגמה למחזיקי מקום כדי להציג את הסדר הנכון של Modifier.placeholder ו-Modifier.placeholderShimmer כשמחילים אותם על אותו רכיב שאפשר להרכיב. (Ie96f4, b/256583229)
  • שינינו את רוחב ברירת המחדל של הגבול של OutlinedCompactChip/OutlinedChip מ-2.dp ל-1.dp כדי להתאים למפרטים הסופיים של חוויית המשתמש. (Ib3d8e)
  • תיקנו באג ב-rememberPickerState שגרם לכך שקלט מעודכן לא נשמר, כך שרכיבים הניתנים להרכבה לא עודכנו אחרי שינויים בקלט. (I49ff6, ‏ b/255323197)
  • ביצענו כמה עדכונים בממשק המשתמש של ה-placeholders: 1) שינינו את שיפוע האפקט המנצנץ ל-1.5 מהגודל של המסך, 2) הוספנו אפקט easing (עקומת בזייה מעוקבת) להתקדמות האפקט המנצנץ ו-3) הגברנו את המהירות של אנימציית המחיקה (250ms). (Id29c1)
  • תיקנו באג בממשק המשתמש באפקט המחיקה של placeholder, שבו הרקעים של הצ'יפ והכרטיס נמחקו קצת מוקדם מדי כי לא נלקח בחשבון המיקום של הרכיב במסך. (I2c7cb)
  • עדכנו את ציור הרקע של ה-placeholder כדי למזג צבעים במקום להוסיף שכבות, במקרים שבהם הדבר אפשרי. זאת כדי להקטין את הסיכון למיזוג אלפא של השכבות החתוכות השונות, שיאפשר לצבעים שמתחתיהן לחדור דרך הקצוות של הרקע של ה-placeholder. (I2ea26)
  • תיקנו את החישוב של ScalingLazyListState.centerItemIndex/centerItemOffset כך שאם שני פריטים נמצאים משני הצדדים של קו האמצע של אזור התצוגה, הפריט הקרוב יותר ייחשב כcenterItem. (I30709, b/254257769)
  • תיקנו באג ב-ScalingLazyListState.layoutInfo.visibleItemsInfo שדיווח על היסטים שגויים במהלך האתחול של 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 for Wear OS מציינת שהגרסה הזו של הספרייה כוללת את כל התכונות וה-API נעול.

  • הגרסה Wear Compose 1.1 כוללת את הפונקציות החדשות הבאות:
    • כלי הבחירה – שיפורים בנגישות של כלי הבחירה כדי שאפשר יהיה לנווט במסכים של כלי הבחירה המרובה באמצעות קוראי מסך, ושהתיאור של התוכן יהיה נגיש
    • הפרמטר Picker contentDescription משמש עכשיו רק לאפשרות Picker שנבחרה, והוא מקבל מחרוזת שאפשר להגדיר כ-nullable (ב-commit הקודם היה צריך להעביר מיפוי מאפשרות לתיאור התוכן, אבל נעשה שימוש רק באפשרות שנבחרה).
    • הפריטים בבוחר מוצגים עכשיו תמיד במרכז, וכך נפתרה בעיה שבה הגדרת gradientRatio לאפס גרמה לשינוי היישור.
    • Chip/ToggleChip – עדכנו את הגרדיאנטים שמוגדרים כברירת מחדל ב-Chip/ToggleChip כדי להתאים אותם למפרט העדכני של חוויית המשתמש. ב-ChipDefaults.gradientBackgroundChipColors, הגרדיאנט מתחיל מ-50% של הצבע הראשי במקום מ-32.5%.
    • Chip/ToggleChip – נוספו עומסים יתרים לשינוי צורות של צ'יפים
    • Chip/Button/ToggleButton – נוסף סגנון חדש של מתאר ל-Chips ול-Buttons, ורכיבי composable חדשים של OutlinedChip ו-OutlinedButton שמספקים Chip/Button שקוף עם גבול דק.
    • כרטיס – עודכנו הגרדיאנטים שמוגדרים כברירת מחדל בכרטיסים כדי להתאים אותם למפרט העדכני של חוויית המשתמש. CardDefaults.cardBackgroundPainter עודכן כך שיתחיל מ-30% של צבע ראשי ויסתיים ב-20% של onSurfaceVariant (היה קודם 20% עד 10% של onSurfaceVariant). ToggleChip.toggleChipColors השתנה מגרדיאנט לינארי של 75% צבע משטח ל-32.5% צבע ראשי ל-0% צבע משטח ל-50% צבע ראשי.
    • Button/ToggleButton – נוספו מאפיינים לשינוי צורות הלחצנים.
    • עיצוב – עודכנו כמה מצבעי ברירת המחדל ב-MaterialTheme כדי לשפר את הנגישות, כי הצבעים המקוריים לא היו בעלי ניגודיות מספקת, ולכן למשתמשים היה קשה להבחין בין הרקעים של הצ'יפים, הכרטיסים והלחצנים לבין צבע הרקע של העיצוב.
    • InlineSlider/Stepper - נוספו תפקידי לחצנים כדי ש-Talkback יוכל לזהות אותם כלחצנים.
    • פיגום – PositionIndicator עכשיו ממוקם ומוגדר בגודל שמאפשר לו לתפוס רק את המקום שדרוש לו. לדוגמה, אם מוסיפים ל-PositionIndicator מידע סמנטי, TalkBack מקבל עכשיו את הגבולות הנכונים של 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).
    • פלייסהולדר – נוספה תמיכה ניסיונית בפלייסהולדרים. יש לו שלושה אפקטים חזותיים שונים שנועדו לפעול יחד.
    • קודם כל, אפקט מברשת של רקע placeholder שמשמש במאגדים כמו Chip ו-Cards כדי לצייר מעל הרקע הרגיל בזמן שמחכים לטעינת התוכן.
    • שנית, משנה (Modifier.placeholder()) כדי לצייר ווידג'ט של placeholder בצורת אצטדיון מעל התוכן שנמצא בתהליך טעינה.
    • שלישית, אפקט שינוי הדרגתי או נצנוץ (Modifier.placeholderShimmer()) שמצויר מעל האפקטים האחרים כדי לציין למשתמשים שאנחנו מחכים לטעינת הנתונים.
      • כל האפקטים האלה מתוכננים כך שיהיו מתואמים, ינצנצו וייעלמו בצורה מסודרת.
  • יחסי התלות של Core Compose עודכנו מגרסה 1.2 לגרסה 1.3

שינויים ב-API

  • עכשיו אפשר לציין את פרמטרי הגופן (fontFamily, fontWeight, fontStyle ו-fontSynthesis) ישירות כפרמטרים של curvedText (Idc422)

תיקוני באגים

  • curveText ו-basicCurvedText יפעלו עכשיו בצורה תקינה עם TalkBack (יש להם צומת compose-ui בגודל ובמיקום הנכונים (אבל ריק) שמשויך אליהם, והטקסט משמש כתיאור תוכן) (I7af7c, ‏ b/210721259)
  • תיקון באג ב-Picker כש-PickerState.repeatedItems = false כדי להוסיף הגדרה מפורשת של פרמטרים של מיקום אוטומטי במרכז ב-Pickers פנימי ScalingLazyColumn כדי לוודא שאפשר לגלול את האפשרות הראשונה למרכז התצוגה. (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 מכילה את הקומיטים האלה.

תכונות חדשות

  • הוספנו תמיכה ניסיונית בפלייסהולדרים. יש לו שלושה אפקטים חזותיים שונים שנועדו לפעול יחד. קודם כל, אפקט מברשת של רקע placeholder שמשמש במאגדים כמו Chip ו-Cards כדי לצייר מעל הרקע הרגיל בזמן שמחכים לטעינת התוכן. שנית, משנה (Modifier.placeholder()) כדי לצייר ווידג'ט של placeholder בצורת אצטדיון מעל התוכן שנמצא בתהליך טעינה. שלישית, אפקט שינוי הדרגתי או נצנוץ (Modifier.placeholderShimmer()) שמצויר מעל האפקטים האחרים כדי לציין למשתמשים שאנחנו מחכים לטעינת הנתונים. כל האפקטים האלה מתוכננים כך שיהיו מתואמים, ינצנצו וייעלמו בצורה מסודרת. (I3c339)

שינויים ב-API

  • הוספנו תמיכה ב-fontWeight, ב-fontFamily, ב-fontStyle וב-fontSynthesis ב-CurvedTextStyle, שאפשר להשתמש בהם ב-curvedText וב-basicCurvedText. אפשר להשתמש בפרמטרים האלה כדי לציין את הגופן והסגנון שבהם רוצים להשתמש בטקסט המעוקל.(Iaa1a8),(I72759)
  • הפרמטר offset של Modifier.scrollAway עודכן ל-Dp כדי לשמור על עקביות עם Modifier.offset (קודם הוא היה בפיקסלים). בנוסף, בוצע רפקטורינג של LayoutModifier לצורך יעילות. (I9f94b)
  • במסגרת ה-API החדש של אמצעי הבקרה להפעלה ולהשבתה, שינינו את השם של 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 מידע סמנטי, TalkBack מקבל עכשיו את הגבולות הנכונים של 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 מכילה את הקומיטים האלה.

שינויים ב-API

  • עדכנו מספר צבעי ברירת מחדל ב-MaterialTheme כדי לשפר את הנגישות, כי הצבעים המקוריים לא סיפקו ניגודיות מספקת, ולכן היה קשה למשתמשים להבחין בין הרקעים של הצ'יפים, הכרטיסים והלחצנים לבין צבע הרקע של העיצוב. הצבעים המעודכנים הם surface‏(0xFF202124->0xFF303133), ‏ onPrimary‏(0xFF202124->0xFF303133), ‏ onSecondary‏(0xFF202124->0xFF303133), ‏ primaryVariant‏(0xFF669DF6->0xFF8AB4F8) ו-onError‏(0xFF202124->0xFF000000). השינויים בצבעים, למרות שהם יחסית עדינים, עשויים להשפיע על בדיקות צילומי המסך הקיימות. (81ab09)

תיקוני באגים

  • תוקנה שגיאת לוגיקה ב-ScalingLazyColumn שיכולה לגרום לכך שרשימות עם מספר קטן (בדרך כלל בדיוק 2) של פריטים ברשימה לא ישלימו את האתחול וכתוצאה מכך יהיו שקופות. (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, ורכיבי composable חדשים של OutlinedChip ו-OutlinedButton שיוצרים Chip/Button שקוף עם גבול דק. (Id5972)

שינויים ב-API

  • נוספו עומסים יתרים לשינוי צורות של לחצנים (Icccde)

תיקוני באגים

  • תיקנו את הגודל של אזור מתג הבקרה של ToggleChip כי הוא לא התאים למפרט חוויית המשתמש שלו. במפרט חוויית המשתמש נדרש מרווח של 4dp בין התווית לבין אזור סמל מתג הבקרה בגודל 24x24dp, כך שהרוחב הכולל הוא 28dp. אבל ההטמעה נותנת בטעות אזור שליטה של 36x24.dp. כתוצאה מכך, שטח התווית שניתן לשימוש קטן ב-8dp. הערה: תיקון הבאג הזה מאפשר להוסיף עוד מקום לתווית הטקסט, וכתוצאה מכך יכולה להיות השפעה (חיובית) על פריסת הטקסט במקרים של טקסט שגולש. אם יש לכם בדיקות של צילומי מסך, כולל 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 for Wear OS בספריות הליבה של Compose מגרסה 1.2.0 לגרסה 1.3.0-alpha0X

שינויים ב-API

  • נוספו עומסים יתרים לשינוי צורות של צ'יפים (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 מכילה את הקומיטים האלה.

שינויים ב-API

  • הפרמטר contentDescription של הכלי לבחירת קבצים משמש עכשיו רק לאפשרות שנבחרה בכלי, והוא מקבל מחרוזת שניתן להגדיר כ-nullable (בעבר היה צריך להעביר מיפוי מהאפשרות לתיאור התוכן, אבל רק האפשרות שנבחרה הייתה בשימוש). (Ife6a7)
  • שיפרנו את הנגישות של בורר הקבצים כדי שיהיה אפשר לנווט במסכים של בורר מרובה קבצים באמצעות קוראי מסך, וגם כדי שתהיה גישה לתיאור התוכן (I64edb)

תיקוני באגים

  • עדכנו את כללי פרופיל הבסיס שכלולים בספריית Wear Compose‏ (I9c694)
  • תיקנו את כיוון המעבר ההדרגתי של צ'יפים במצב 'ימין לשמאל'. היה משמאל למעלה לימין למטה, עכשיו הוא מימין למעלה לשמאל למטה. (Ic2e77)
  • עדכנו את הגרדיאנטים שמוגדרים כברירת מחדל עבור Chip/ToggleChip/Card כדי להתאים אותם למפרט ה-UX העדכני. הגרדיאנטים של 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 של המיקום והאינדיקטורים של הדף ב-Scaffold. האינדיקטורים יוצבו מעכשיו מעל הווינייטה, כך שהווינייטה לא תסתיר אותם אם היא תוצג. (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 מופיעה בהערות המוצר של (Compose for Wear OS Beta01).

תיקוני באגים

  • הוספנו אנימציה להצגה ולהסתרה של הווינייטה כשתיבת הדו-שיח מוצגת או מוסתרת, כדי שתהיה התאמה לאנימציית ההתאמה הקיימת. (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 מכילה את הקומיטים האלה.

תיקוני באגים

  • תיקנו את הכיוון של המעבר ההדרגתי בכרטיסים במצב מימין לשמאל (RTL). הוא היה בפינה השמאלית העליונה -> בפינה הימנית התחתונה, ועכשיו הוא בפינה הימנית העליונה -> בפינה השמאלית התחתונה. (Ic2e77)
  • עדכנו את הגרדיאנטים שמוגדרים כברירת מחדל עבור Chip/ToggleChip/Card כדי להתאים אותם למפרט ה-UX העדכני. הגרדיאנטים של ChipDefaults.gradientBackgroundChipColors מתחילים עכשיו מ-50% מהצבע הראשי במקום מ-32.5%. CardDefaults.cardBackgroundPainter עודכן כך שיתחיל מ-30% של primary ויסתיים ב-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 כוללת את הקומיטים האלה.

שינויים ב-API

  • ממשקים בספריות של Compose נוצרים עכשיו באמצעות שיטות ממשק שמוגדרות כברירת מחדל ב-jdk8 ‏ (I5bcf1)

תיקוני באגים

  • הסרנו את הקריאה המפורשת ל-fillMaxWidth() בכותרת הרשימה כי היא לא נחוצה ויכולה לגרום לבעיות אם לרכיב ScalinglazyColumn יש שילוב של רכיבי ListHeader() ו-Chip(), כי הרוחב יגדל או יקטן ככל שפריטי ListHeader יגללו פנימה או החוצה מהתצוגה. (I37144, ‏ b/235074035)
  • תיקנו באג ב-ScalingLazyColumn שיכול היה לגרום לכך שהפריטים ברשימה לא יוצגו בצורה תקינה עד לגלגול, אם הפריט הראשון ברשימה היה גדול מספיק (כולל ריווח פנימי) (Ic6159, b/234328517)
  • ביצענו שינוי קל בScalingLazyColumn easing כשהפריטים מגיעים לקצה המסך, כדי להתאים לעדכונים במפרט חוויית המשתמש. ערכים ישנים CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f) -> ערכים חדשים CubicBezierEasing(0.3f, 0f, 0.7f, 1f). כדי לשמור על ההתנהגות הקודמת, אפשר לשנות את scalingParams של ScalingLazyColumn (Ie375c)
  • הוספנו ריווח פנימי ל-CompactChip כדי לוודא שגודל משטח המגע שלו הוא לפחות 48dp, בהתאם להנחיות הנגישות של Material. השינוי הזה עשוי להשפיע על פריסות שבהן נעשה שימוש ב-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)

שינויים ב-API

  • שינינו את ערך ברירת המחדל של המאפיין ScalingLazyColumn.horizontalAlignment מ-Start ל-CenterHorizontally כדי להבטיח שכאשר פריטים ברשימה לא ממלאים את כל רוחב העמודה, הם ייושרו כך שיהיו גלויים ככל האפשר. כדי לחזור להתנהגות הקודמת של קבוצת ההגדרות horizontalAlignment = Alignment.Start.(I9ed4b)

בעיות מוכרות

  • הגובה של אזור ההקשה או המגע של CompactChip קטן מהגובה שמומלץ בהנחיות הנגישות של Material. הבעיה הזו תתוקן במהדורה הבאה (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 מכילה את הקומיטים האלה.

תכונות חדשות

  • הכלי לבחירת תאריכים תמיד מגיב לאירועי גלילה, גם במצב קריאה בלבד. כך המשתמשים לא צריכים להקיש על הכלי לבחירת קבצים כדי לבחור אותו לפני שהם יכולים לגלול. במצב קריאה-בלבד, אפשרויות אחרות מלבד האפשרות שנבחרה כרגע מוסתרות על ידי shim ב-gradientColor. (I72925)
  • שינינו את התנהגות חוויית המשתמש של Chip/ToggleChip/CompactChip/SplitToggleChip כדי למנוע את הפעולה fillMaxWidth כברירת מחדל. במקום זאת, הן יגדלו בהתאם לתוכן שלהן. כדי לשמור על ההתנהגות הקודמת, פשוט מוסיפים modifier = Modifier.fillMaxWidth()(I60a2c, b/232206371)

תיקוני באגים

  • הקונסטרוקטור CurvedTextStyle שמקבל TextStyle מכבד עכשיו גם את fontWeight(יכול להיות שזה יתווסף לקונסטרוקטור ולשיטות ההעתקה בגרסאות עתידיות של ה-API) (Ieebb9)
  • שיפורים בהחלקה מהקצה ב-Edge. כשמשתמשים ב-Modifier.edgeSwipeToDismiss ומבצעים החלקה שמאלה מאזור הקצה, ההחלקה לא גורמת יותר לסגירת האפליקציה כשמשנים את כיוון ההחלקה לימין. בעבר, היה אפשר להפעיל את ההחלקה כדי לסגור על ידי החלקה שמאלה ואז החלקה ימינה.(I916ea)
  • HorizontalPageIndicator מוצגים עכשיו עד 6 עמודים במסך. אם יש יותר מ-6 דפים בסך הכול, מוצג אינדיקטור בגודל חצי בצד ימין או שמאל, עם מעבר חלק בין הדפים.(I2ac29)
  • שיפור התנהגות ברירת המחדל של הצמדה ב-ScalingLazyColumn וב-Picker (I49539)
  • שיפורים בהחלקה מהקצה ב-Edge. כשמשתמשים ב-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 היא ציון דרך חשוב, כי הספרייה כוללת את כל התכונות וה-API נעול.

הרכיבים של Wear Compose Material בגרסה 1.0 כוללים:

  • ‫Material Theme – משמש כתחליף ל-Compose for Mobile MaterialTheme, ומספק את הצבעים, הצורות והטיפוגרפיה לבניית רכיבים במכשירים לבישים שמיישמים את הנחיות חוויית המשתמש של Wear Material Design.
  • Button, ‏ CompactButton ו-ToggleButton – הכפתור מציע משבצת אחת להוספת סמל, תמונה או טקסט קצר (עד 3 תווים). הצורה היא עיגול, והגודל המומלץ הוא ברירת מחדל, גדול או קטן. ‫CompactButton מציע משבצת אחת להצגת כל תוכן (סמל, תמונה או טקסט), והוא עגול עם גודל רקע קטן במיוחד. ‫CompactButton יש לו שוליים שקופים אופציונליים מסביב לרקע, שמגדילים את האזור שאפשר ללחוץ עליו. ‫ToggleButton הוא לחצן שמציע משבצת אחת להצגת תוכן כלשהו (טקסט קצר, סמל או תמונה) ויש לו מצבי הפעלה וכיבוי (מסומן או לא מסומן) עם צבעים וסמלים שונים שמראים אם הוא מסומן או לא
  • כרטיסים – משמשים להצגת מידע על אפליקציות, כמו התראות. עיצוב גמיש לתרחישי שימוש שונים עם AppCard ו-TitleCard שנותנים פריסות שונות ותמיכה בתמונות כתוכן של כרטיסים או כרקעים.
  • צ'יפים – רכיבים בצורת אצטדיון שדומים ללחצנים, אבל עם שטח גדול יותר וכמה משבצות שמאפשרות להוסיף תוויות, תוויות משניות וסמלים. בגדלים שונים ועם תמיכה בתמונות כרקעים.
  • ‫ToggleChips ו-SplitToggleChips – רכיב Chip עם מצב מסומן או לא מסומן, ותוספת של משבצת ToggleControl להצגת סמל כמו מתג או לחצן בחירה כדי להציג את המצב המסומן של הרכיב. בנוסף, ל-SplitToggleChip יש שני אזורים שאפשר להקיש עליהם, אחד שאפשר ללחוץ עליו ואחד שאפשר להפעיל או להשבית אותו.
  • ‫CircularProgressIndicator – אינדיקטור התקדמות של Wear Material עם שתי וריאציות. הערך הראשון מייצג את שיעור ההשלמה של משימה שמתבצעת, ויכול להיות פער במסלול המעגלי בין זווית ההתחלה לזווית הסיום. השני מציין התקדמות לא מוגדרת בזמן המתנה לא מוגדר.
  • ‫curvedText – חלק מ-DSL לתיאור CurvedLayouts, יחד עם curvedRow ו-curvedColumn, כדי להציג רכיבים במכשירים עגולים. בקטע Wear Component Foundation שבהמשך מפורטים פרטים נוספים על CurvedLayout ועל CurvedModifier (האלמנטים האלה ממלאים תפקיד דומה לזה של Modifiers בעולם הלא מעוקל, ומאפשרים להגדיר היבטים שונים של פריסה, ריווח פנימי, מעברי צבע וכו').
  • תיבת דו-שיח, התראה ואישור – תיבת דו-שיח מוצגת במסך מלא, מעל כל תוכן אחר, ויש אפשרות להחליק כדי לסגור אותה. הוא מקבל משבצת אחת שאמורה להיות תוכן של תיבת דו-שיח עם דעה אישית ב-Wear Material, כמו Alert או Confirmation. ההתראה היא תוכן דיאלוג עם דעה, עם משבצות לסמל, לכותרת ולהודעה. יש לו עומסים עודפים לשני לחצנים שליליים וחיוביים שמוצגים זה לצד זה, או משבצת ל-Chip אחד או יותר שמוערמים אנכית. אישור הוא תוכן דיאלוג עם דעה שמוצג למשך זמן מסוים. יש בו משבצת לסמל או לתמונה (שיכולים להיות אנימציה).
  • HorizontalPageIndicator – מציג את מיקום הדף האופקי באופן שמתאים לגורם הצורה של מכשיר לביש. העיצוב מותאם למסך מלא ומציג אינדיקטור מעוקל במכשירים עגולים. אפשר להשתמש בו עם כלי לצפייה בדפים של Accompanist.
  • סמל – הטמעה של סמל ב-Wear, שמשתמשת בצבע ובאלפא מתוך ערכת העיצוב של Wear Material. לסמל שאפשר ללחוץ עליו, ראו כפתור או צ'יפ.
  • כלי לבחירה – מציג רשימה של פריטים שאפשר לגלול בה כדי לבחור מתוכה. כברירת מחדל, הפריטים יחזרו על עצמם 'ללא הגבלה' בשני הכיוונים. אפשר להציג אותו במצב קריאה בלבד כדי להסתיר אפשרויות שלא נבחרו.
  • PositionIndicator – מציג את מיקום הגלילה או אינדיקציה אחרת למיקום באופן שמתאים לגורם הצורה של המכשיר הלביש. האפליקציה מיועדת לתצוגה במסך מלא, ובמכשירים עגולים מוצג בה אינדיקטור מעוקל.
  • ‫Scaffold – מטמיע את המבנה הבסיסי של פריסת Wear Material Design. הרכיב הזה מספק API שמאפשר לשלב כמה רכיבי Wear Material (כמו TimeText, PositionIndicator ו-Vignette) כדי ליצור את המסך, לוודא שנעשה שימוש באסטרטגיית פריסה מתאימה עבורם ולאסוף את הנתונים הדרושים כדי שהרכיבים האלה יפעלו יחד בצורה תקינה.
  • ‫ScalingLazyColumn – רכיב של רשימת גלילה עם שינוי גודל או אפקט עין הדג, שמהווה חלק מרכזי בשפת העיצוב של Wear Material. מספקת אפקטים של שינוי גודל ושקיפות לפריטי התוכן. ‫ScalingLazyColumn מיועד לטיפול במספרים גדולים של פריטי תוכן, שמוצגים ומורכבים רק כשצריך.
  • מחוון – מאפשר למשתמשים לבחור מתוך טווח ערכים. טווח הבחירות מוצג כסרגל, שאפשר להציג אותו עם קווים מפרידים.
  • רכיב שלב – רכיב במסך מלא שמאפשר למשתמשים לבחור מתוך טווח ערכים באמצעות לחצני הגדלה/הקטנה בחלק העליון והתחתון של המסך, עם משבצת באמצע לטקסט או לצ'יפ.
  • ‫SwipeToDismissBox – רכיב שמטפל בתנועת ההחלקה לסגירה. הוא תופס משבצת אחת לרקע (מוצג רק בזמן החלקה) ולתוכן בחזית. אפשר לשלב אותה עם ספריית הניווט של androidx באמצעות SwipeDismissableNavHost (ראו ספריית הניווט של Wear Compose בהמשך).
  • טקסט – הטמעה של רכיב הטקסט של Compose Material ב-Wear, עם צבע ואלפא מתוך Wear Material Theme
  • ‫TimeText – רכיב להצגת השעה וסטטוס האפליקציה בחלק העליון של המסך. התאמה לצורת המסך באמצעות טקסט מעוקל במסכים עגולים.
  • וינייטה – אפקט במסך לשימוש ב-Scaffold שמטשטש את החלק העליון והתחתון של המסך כשמשתמשים בתוכן שאפשר לגלול בו.

  • המרכיבים הבאים נכללים גם הם מ-Wear Compose Foundation:

  • ‫CurvedLayout – Wear Foundation CurvedLayout הוא פריסת קומפוזיציה שממקמת את הצאצאים שלה בקשת, ומסובבת אותם לפי הצורך. זה דומה לפריסת שורה שמעוקלת לפלח של טבעת. חשוב לציין שהתוכן של CurvedLayout הוא לא lambda שאפשר להרכיב ממנו lambda אחר – אלא שפה ספציפית לדומיין (DSL). כל הרכיבים ב-DSL של CurvedLayout תומכים בפרמטר אופציונלי של שינוי, שנוצר מ-CurvedModifier.

  • ‫basicCurvedText – רכיב ב-CurvedLayout DSL, ‏ basicCurvedText שמאפשר למפתחים לכתוב בקלות טקסט מעוקל בהתאם לקימור של עיגול (בדרך כלל בקצה של מסך עגול). אפשר ליצור basicCurvedText רק בתוך CurvedLayout כדי להבטיח את חוויית השימוש הטובה ביותר, למשל היכולת לציין את המיקום ולהשתמש ב-CurvedModifiers. חשוב לדעת שברוב המקרים כדאי להשתמש במקום זאת ב-curvedText, כי הוא משתמש בערכות נושא של Material.

  • ‫curvedComposable – עוטף תוכן קומפוזבילי רגיל כדי שאפשר יהיה להשתמש בו עם CurvedLayout. אם יש כמה רכיבים בתוך curvedComposable, הם יוצגו אחד על גבי השני (כמו תיבה). כדי להציב כמה רכיבים שאפשר להרכיב לאורך עקומה, עוטפים כל אחד מהם ב-curvedComposable.

  • ‫curvedRow ו-curvedColumn – דומים לרכיבים Row ו-Column, אפשר להוסיף את הרכיבים curvedRow ו-curvedColumn כרכיבי צאצא של CurvedLayout כדי להציג את הרכיבים לפי הצורך. ב-curvedRow, אפשר לציין את כיוון הפריסה הזוויתי ואת היישור הרדיאלי. עבור curvedColumn, אפשר לציין את היישור הזוויתי ואת הכיוון הרדיאלי.

  • ‫CurvedModifier – כל הרכיבים המעוקלים מקבלים פרמטר של שינוי שאפשר ליצור באמצעות CurvedModifier: יש תמיכה ברקע, בגודל, במשקל ובריווח פנימי.

  • הרכיב הבא כלול גם ב-Wear Compose Navigation:

  • ‫SwipeDismissableNavHost – מספק מקום בהיררכיית Compose לניווט עצמאי, עם ניווט אחורה באמצעות תנועת החלקה. התוכן מוצג בתוך SwipeToDismissBox, ומוצגת רמת הניווט הנוכחית. במהלך תנועת החלקה לסגירה, רמת הניווט הקודמת (אם יש כזו) מוצגת ברקע.

  • לפרטים נוספים על מה שסופק, אפשר לעיין בהערות המוצר של גרסאות אלפא שונות.

שינויים ב-API

  • נוספו CurvedModifier.padding* פונקציות. הם משמשים לציון רווח נוסף שיוסף מסביב לרכיב מעוקל. (I4dbb4)
  • הוסרה כיתה פנימית CompositionLocal (I42490)
  • הוספנו ערכים קבועים לגדלים של הסמלים Button, CompactButton ו-ToggleButton, כהנחיה (I57cab)
  • מוסיפים את הפרמטר enabled ל-AppCard ול-TitleCard. עכשיו יש להם API דומה ל-androidx.compose.material Cards. אם הפרמטר מוגדר כ-False, אי אפשר ללחוץ על הכרטיס. (Idc48d, ‏ b/228869805)

תיקוני באגים

  • הכפתורים להגדלה ולהקטנה של הערך ב-Stepper מושבתים עכשיו כשמגיעים לגבולות התחתון או העליון (המאפיין ContentAlpha.disabled מוחל על iconColor) (I4be9f)
  • הוספנו ריווח של 1dp מסביב לתוכן של הכלי לבחירת תמונות כשמציירים אותו עם מעבר צבעים, כדי למנוע תנודות בטקסט שרואים כשמחליקים. (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, בדומה לזה שב-Compose. אפשר להשתמש בזה בילדים של curvedRow ו-CurvedLayout (לרוחב) ובילדים של curvedColumn (לגובה). (I8abbd)
  • נוספו משנים CurvedModifier.size, .angularSize ו-.radialSize כדי לציין את הגודל של רכיב מעוקל. (I623c7)

שינויים ב-API

  • שינוי הסדר של הפרמטרים כדי לוודא שהרקע מופיע לפני הצבע באופן עקבי ב-Wear Compose API‏ (I43208)
  • הוסרו הפרמטרים clockwise ו-insideOut והוחלפו בקבועים מפורטים יותר בכיתות חדשות. פריסה מעוקלת יכולה להיות עכשיו מודעת ל-LayoutDirection, והיא עוברת בירושה אם לא מציינים אותה (If0e6a)
  • החלפנו את autoCenter: Boolean ב-autoCenter: AutoCentringParams כדי לפתור בעיה ב-API של ScalingLazyColumn. (Ia9c90)
  • שינינו את השמות של iconTintColor ו-toggleControlTintColor ל-iconColor ו-toggleControlColor בכל ה-API (Chip/ToggleChip/Dialog/Slider/Stepper/‎...) כי הצבע מוחל על המשבצת של הסמל או של לחצן החלפת המצב. (Ied238)
  • ‫Rewrite PageIndicatorStyle enum into value class (I2dc72)
  • הוספנו את RowScope/ColumnScope/BoxScope לחלק מהמיקומים ברכיבי ה-Composable שלנו כדי לציין למפתחים מה ההנחות לגבי הפריסות. כך המפתחים יוכלו להשתמש במאפיינים נוספים בחלק מהתוכן של המשבצות, ולא יצטרכו לספק רכיבי פריסה נוספים. בנוסף, ביצענו כמה עדכונים קלים בצבעים של AppCard ו-TitleCard, כך שברירת המחדל של timeColor ו-appColor היא contentColor. עדיין אפשר לשנות את כל המאפיינים האלה בנפרד אם צריך. (I26b59)
  • הגדרת האובייקט SwipeToDismissBoxState.Companion כפרטי (I39e84)
  • תיקון סדר הפרמטרים של InlineSlider ושל Stepper. שינוי פשוט כדי לפעול בהתאם להנחיות לשימוש בממשקי API (I11fec)
  • הסרנו את אובייקט החיסכון עבור SwipeToDismissBoxState כי הוא לא היה בשימוש. (Ifb54e)
  • עדכנו את CompactChip בהתאם למפרט העדכני של חוויית המשתמש. המרווח הפנימי צומצם לערכים הבאים: אופקי = 12.dp ואנכי = 0.dp. הגופן של התווית השתנה מלחצן ל-caption1. הגדלים המומלצים של סמלים הם 20x20 אם יש גם סמל וגם תווית, ו-24x24 אם יש רק סמל. במקרה השימוש של סמל בלבד, דאגנו גם שהסמל יהיה מיושר למרכז. (Iea2be)
  • הוספנו מספר שדות חדשים ל-ScalingLazyListLayoutInfo כדי לאפשר למפתחים לדעת את הכמות של contentPadding ושל autoCenteringPadding שהוקצו. יכול להיות שהם יהיו שימושיים למפתחים כשמחשבים תנועת החלקה או גלילה (I7577b)
  • הטמענו מעברים פנימה והחוצה בתיבת הדו-שיח. נוסף פרמטר showDialog ועכשיו תיבת הדו-שיח שולטת בנראות שלה (היא יכולה להפעיל את האנימציות של הפתיחה והסיום כשהיא מוצגת או מוסתרת). שימו לב: אנימציית הסיום לא מופעלת כשהמשתמש יוצא מתיבת הדו-שיח באמצעות החלקה לסגירה. הוספנו גם ערך ברירת מחדל למצב בעומס היתר SwipeToDismissBox שנוסף לאחרונה. (I682a0)
  • כדי לשפר את התמיכה ב-i18n וב-a11y, שינינו את ToggleChip ואת SplitToggleChip כך שלא יהיה להם יותר ערך ברירת מחדל למקום toggleControl. שינינו גם את ToggleChipDefaults כך שהשיטות הבאות מחזירות עכשיו ImageVector ולא Icon (שימו לב שהן כבר לא מחזירות @Composables ולכן הן מתחילות באותיות קטנות), SwitchIcon()->switchIcon(), ‏ CheckboxIcon->checkboxIcon() ו-RadioIcon()->radioIcon() – השינוי הזה מאפשר למפתחים ליצור רכיבי Icon() composable משלהם עם קבוצת 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)

שינויים ב-API

  • הטמעה בסיסית של CurvedModifiers , שפותחת את האפשרות להציג דרכים להתאמה אישית של תוכן מעוקל (אבל עדיין לא מסופקים CurvedModifiers, והאפשרות ליצור משנים מותאמים אישית עשויה להיות זמינה בהמשך) (I9b8df)
  • EdgeSwipeעדכון של תיעוד משני הערכים וערכי ברירת המחדל כדי לשפר את ההבנה שלהם (I6d00d).
  • הוספת חריץ PageIndicator ל-Scaffold. אם נוסיף את PageIndicator ישירות ל-Scaffold, נוכל לוודא שהוא יוצג בצורה נכונה במכשירים עגולים. (Ia6042)
  • הסרת סמלי ברירת מחדל מפרמטרים של InlineSlider ושל Stepper. כך המפתחים יוכלו לשים לב יותר לדרישות של לוקליזציה ונגישות. השימוש בסמלי ברירת מחדל הוצג בהדגמות ובדוגמאות. (I7e6fd)
  • החלפת שמות הפרמטרים Trailing ו-Leading ב-Start וב-End ב-TimeText ‏ (Iaac32)
  • הוספנו SwipeToDismissBox עומס יתר עם פרמטר onDismissed כדי לתמוך בשימוש הנפוץ בהפעלת אירוע ניווט כשמחוות ההחלקה מסתיימת. (I50353, b/226565726)
  • הוסרו ExperimentalWearMaterialApi הערות מהשימוש ב-TimeText (Ide520)
  • סימנו את הממשקים ScalingLazyList/Column scope ו-info כסגורים, כי הם לא מיועדים להטמעה על ידי מפתחים חיצוניים. כך נוכל להוסיף להם חברים חדשים בעתיד בלי לבצע שינויים בינאריים שעלולים לשבור את התאימות. (I7d99f)
  • הוספנו מאפיין flingBehaviour חדש לרכיב Picker ושיטה 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 מכילה את הקומיטים האלה.

שינויים ב-API

  • השם של CurvedRow שונה ל-CurvedLayout, והוא שונה כך שיהיה היקף עם DSL. באמצעות ה-DSL הזה, אפשר לציין פריסות מעוקלות מורכבות יותר באמצעות סדרה של תגי curvedRow ו-curvedColumn (שהם המקבילים של Row ו-Column בפריסה מעוקלת). בתוך רכיבי הפריסה האלה, אפשר להשתמש בשלושה רכיבים: curvedComposable (להוספת כל @Composable), ‏ basicCurvedText (טקסט מעוקל של foundation) ו-curvedText (טקסט מעוקל של wear material). (Ib776a)
  • אפשר להגדיר את הצד של PositionIndicator. עכשיו אפשר להגדיר את המיקום של PositionIndicator הבסיסי כ-End (בהתאם לכיוון הפריסה), OppositeRsb (בהתאם לסיבוב המסך, כך שהמיקום יהיה מול ה-RSB הפיזי) או כ-Left ו-Right (מיקום מוחלט). (I2f1f3)
  • במקרה של SwipeToDismissBox, שינינו את השם של SwipeDismissTarget.Original ל-SwipeToDismissValue.Default ואת השם של SwipeDismissTarget.Dismissal ל-SwipeToDismissValue.Dismissed. העברנו גם את SwipeToDismissBoxDefaults.BackgroundKey ואת SwipeToDismissBoxDefaults.ContentKey אל SwipeToDismissKeys.Background ו-SwipeToDismissKeys.Content בהתאמה. (I47a36)
  • הוספנו מצב קריאה בלבד ל-Picker, למסכים עם כמה רכיבי Picker שרק אחד מהם ניתן לעריכה בכל פעם. כשבוחר האפשרויות הוא לקריאה בלבד, מוצגת בו האפשרות שנבחרה כרגע, ותווית אם סופקה כזו. (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 Design UX. בגרסת Spinner/Indeterminant, בוצעו עדכונים בגודל (40->24.dp), ב-indicatorColor (primary->onBackground), בשקיפות של trackColor (30%->10%) וברוחב הקו (4->3dp). בגרסה Progress/Determinate, השקיפות של 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 מכילה את הקומיטים האלה.

שינויים ב-API

  • כמה שיפורים ב-PositionIndicator: ShowResult שונה ל-PositionIndicatorVisibility. שיפורים מסוימים בביצועים כדי להימנע מחישובים מחדש כשאין צורך (Iaed9d)
  • הצביעה המומלצת של SplitToggleChip עודכנה. לרכיבי SplitToggleChip's יש עכשיו רקע בצבע אחיד כשהם מסומנים או לא מסומנים, והצבע של ToggleControl הוא הסימן העיקרי לכך שהרכיב מסומן או לא. הוספנו ToggleDefaults.splitToggleChipColors() חדש כדי לתמוך בסכמת הצבעים החדשה. פישטנו גם את השיטות toggleChipColors() removing the splitBackgroundOverlayColor (I7e66e)
  • הוספנו את המאפיין unadjustedSize אל ScalingLazyListItemInfo כי לא בטוח לחשב את הגודל המקורי של הפריט באמצעות הגודל המותאם וגורם ההתאמה, בגלל הדיוק של מתמטיקת המספרים הממשיים. (I54657, ‏ b/221079441)
  • מוסיפים HorizontalPageIndicator. הוא מייצג את המספר הכולל של הדפים ואת הדף שנבחר. יכול להיות שהם יהיו ישרים או מעוקלים, בהתאם לצורת המכשיר. בנוסף, יש תמיכה בצורה מותאמת אישית של האינדיקטור, שמגדירה איך כל אינדיקטור מוצג מבחינה ויזואלית. (Iac898)
  • עדכנו את PickerState כך שאפשר לעדכן את numberOfOptions. התכונה הזו תומכת בתרחישי שימוש כמו DatePicker, כשמספר הימים בחודש משתנה בהתאם לחודש שנבחר. פרמטר ה-constructor של PickerState השתנה בהתאם ל-initialNumberOfOptions. (Iad066)
  • הסתרת PositionIndicator כשהוא פס גלילה ואי אפשר לגלול. (Id0a7f)
  • כדי לשמור על עקביות עם Scaffold, רכיב הדו-שיח במסך מלא מציג עכשיו את הסמלים PositionIndicator ו-Vignette. בנוסף, אנחנו משתמשים עכשיו ב-ScalingLazyColumn במקום ב-Column, כלומר התוכן של תיבת הדו-שיח נמצא עכשיו ב-ScalingLazyListScope (ובדרך כלל צריך להוסיף אותו בין הפריטים { /* content */ }). תיבת הדו-שיח תומכת בפרמטר verticalArrangement בהתאם. (Idea13)
  • שינינו את השם של המאפיין toggleIcon ToggleChip ושל המאפיין toggleControl SplitToggleChip כדי להתאים יותר ל-Material Design, וכך לעזור למעצבים ולמפתחים לנווט ב-API. (If5921, b/220129803)
  • הוספנו כיתוב חדש, Caption3, לטיפוגרפיה של ערכת העיצוב Wear Material.‏Caption3 הוא גופן קטן שמשמש לכתיבה ארוכה במיוחד, כמו טקסטים משפטיים. (I74b13, b/220128356)

תיקוני באגים

  • הפסקת אנימציית ההצמדה כשהגענו לשם. (Idb69d)
  • הוספת אנימציה לשינויים ב-PositionIndicator. (I94cb9)
  • על סמך משוב על ממשק המשתמש וחוויית המשתמש, שינינו את ScalingLazyColumn autoCentering כך שהוא יספק רק מספיק מקום כדי לוודא שאפשר לגלול את הפריטים עם האינדקס ScalingLazyListState.initialCenterItemIndex ומעלה למרכז אזור התצוגה. כך המפתחים יכולים להציב פריט אחד או שניים במרכז, שלא ניתן לגלול אליהם לאמצע. המשמעות היא שלא תהיה אפשרות לגלול מעל initialCenterItemIndex/initialCenterItemScrollOffset (I22ee2) אם מוגדרת ScalingLazyColumn autoCenter.
  • הוספנו הדגמה של חלונית לבחירת תאריך ותיקנו באג ב-PickerState שבו האפשרות initiallySelectedOption לא הוחלה עד שהחלונית הוצגה. (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 מכילה את הקומיטים האלה.

תכונות חדשות

  • הוספנו תמיכה ב-Snap שאפשר להשתמש בה עם ScalingLazyColumn. מגדירים את flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) כדי להפעיל תמיכה בהצמדה. (I068d3, b/217377069)
  • הוספנו הדגמות של הכלי לבחירת שעות, שמשמש לבחירת שעה בפורמט של 24 שעות או בפורמט של 12 שעות. (Ie5552)

שינויים ב-API

  • תיקון בעיה שקשורה ל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)

שינויים ב-API

  • לרכיבי הבחירה יש עכשיו פרמטר flingBehavior, וערך ברירת המחדל גורם להם להיצמד לאפשרות הקרובה ביותר כשגוללים או מעבירים במהירות. ‫(I09000)
  • ‫API נוסף של מספרים שלמים לרכיבים InlineSlider ו-Stepper‏ (I1b5d6)

תיקוני באגים

  • שינינו את ברירת המחדל של initialCenterItemIndex עבור ScalingLazyListState מ-0 ל-1. המשמעות היא שאם לא משנים את ההגדרה הזו במהלך בניית המצב באמצעות ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =), הפריט השני ברשימה (index == 1) יוצב במרכז אזור התצוגה במהלך האתחול, והפריט הראשון (index == 0) יוצב לפניו. כך אפשר לקבל אפקט חזותי טוב יותר כברירת מחדל, כי רוב אזור התצוגה יתמלא בפריטים של הרשימה. (I0c623, ‏ b/217344252)
  • הקטנו את ScalingLazyColumn ברירת המחדל extraPadding שמוגדרת כדי לוודא שיש מספיק פריטים ברשימה שאפשר לבחור מתוכם (גם אם אנחנו מקטינים חלק מהם) מ-10% ל-5%. כך לא תצטרכו ליצור פריטים נוספים לרשימה שלא יופיעו באזור התצוגה. אם נעשה שימוש ב-scalingParams לא סטנדרטיים (למשל, שינוי קנה מידה קיצוני יותר), המפתח יכול להתאים את הריווח הנוסף באמצעות 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 מכילה את הקומיטים האלה.

שינויים ב-API

  • הוספנו מאפיין חדש autoCentering אל ScalingLazyColumn. אם הערך הוא True (ברירת המחדל), כל הפריטים, כולל הראשון והאחרון, יוצגו במרכז אזור התצוגה של הרשימה. שימו לב: אם משתמשים במרכוז אוטומטי, כדאי להגדיר את הריווח הפנימי של התוכן האנכי ל-0.dp. אם מספקים גם את autoCentering וגם את vertical content padding, שניהם יגרמו לכך שיהיה יותר מקום לפני הפריט הראשון ואחרי הפריט האחרון ברשימה, כך שניתן יהיה לגלול אותם עוד יותר. (I2a282, b/214922490)
  • הוספנו רכיב Dialog שמאפשר לכל רכיב שניתן להרכבה להפעיל תיבת דו-שיח במסך מלא שמוצגת מעל תוכן אחר. כשתיבת הדו-שיח מוצגת, אפשר להחליק כדי לסגור אותה, ובמהלך ההחלקה מוצג התוכן של הרכיב שכולל אותה ברקע. תוכן הדו-שיח צפוי להיות Alert או Confirmation (שמות חדשים לרכיבים הקודמים AlertDialog ו-ConfirmationDialog) – Alert, ‏ Confirmation ו-Dialog נמצאים כולם בחבילה androidx.wear.compose.material.dialog. אפשר להשתמש בהתראות ובאישורים כיעדים לניווט. בנוסף, הוספנו ColumnScope לפרמטרים Alert ו-Confirmation לפי הצורך. (Ia9014)
  • הסרנו את onSurfaceVariant2 מ-Compose for WearOS Material Theme Colors והחלפנו את השימוש בספרייה ב-onSurfaceVariant. (Icd592)
  • נוספה שיטה לבחירה של אפשרות באופן פרוגרמטי ב-PickerState. עכשיו אפשר גם לציין את האפשרות שנבחרה בהתחלה כשיוצרים PickerState. (I92bdf)
  • הוספנו תמיכה בהתאמה אישית של התנהגות ההטלה של ScalingLazyColumn. (I1ad2e, ‏ b/208842968)
  • הוספנו את NavController.currentBackStackEntryAsState() לספרייה של Wear.Compose.Navigation. (If9028, b/212739653)
  • נוספו Modifier.onRotaryScrollEvent() ו-Modifier.onPreRotaryScrollEvent() למכשירי Wear עם לחצן צדדי מסתובב.(I18bf5, ‏ b/210748686)

גרסה 1.0.0-alpha14

‫12 בינואר 2022

הגרסאות androidx.wear.compose:compose-foundation:1.0.0-alpha14, androidx.wear.compose:compose-material:1.0.0-alpha14 וגם androidx.wear.compose:compose-navigation:1.0.0-alpha14 יוצאות. גרסה ‎1.0.0-alpha14 מכילה את הקומיטים האלה.

תכונות חדשות

  • הוספנו מספר שיטות ל-ScalingLazyListState כדי לאפשר למפתחים לשלוט בגלילה לפריטים ספציפיים ברשימה, וגם להגדיר את הפריט הראשוני ברשימה ואת ההיסט.

    במסגרת השינוי הזה, שינינו גם את ScalingLazyList כך שהיא תהיה ממוקדת סביב מרכז אזור התצוגה של ScalingLazyList ולא סביב ההתחלה של אזור התצוגה.

    נוסף מאפיין חדש, anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter, ל-ScalingLazyList, כדי לקבוע אם המרכז (ScalingLazyListAnchorType.ItemCenter) או Edge (ScalingLazyListAnchorType.ItemStart) יוצבו בהתאמה לקו האמצע של אזור התצוגה.

    כתוצאה מכך, הערכים של ScalingLazyListItemInfo.offset ושל ScalingLazyListItemInfo.adjustedOffset השתנו ועכשיו הם משקפים את ההיסט של הפריט ביחס למיקום של הפריט ברשימה ולערך anchorType של הרשימה. לדוגמה, אם יש ScalingLazyColumn עם anchorType של ItemCenter ופריט ברשימה שמוצב כך שהמרכז שלו נמצא על קו האמצע של אזור התצוגה, ההיסט יהיה 0.

    השיטות החדשות הן scrollTo,‏ animatedScrollTo,‏ centerItemIndex ו-centerItemOffset. (I61b61)

  • הוספנו ל-SwipeDismissableNavHost רכיב handler של כפתור החזרה, כך שלחיצה על כפתור החזרה תנווט לרמה הקודמת בהיררכיית הניווט. ‫(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 מכילה את הקומיטים האלה.

שינויים ב-API

  • ביצענו RangeIcons שינויים פנימיים (הפניות פנימיות על ידי InlineSlider ו-Stepper). (I927ec)

תיקוני באגים

  • תוקנה בעיה שבה SwipeDismissableNavHost הוסיף יעד להיררכיית הכתיבה לפני שהגיע למצב מחזור החיים CREATED, וכתוצאה מכך נוצר IllegalStateException. התיקון הזה היה תנאי מוקדם לעדכון התלות ב-navigation-compose ל-2.4.0-beta02 ומעלה. (I40a2b, b/207328687)

  • נוספה מחלקת enum של Drawables כדי לקבל משאבים של ציורים בספריית Wear Compose, כך שלא צריך יותר השתקפות. העדכון הזה פותר באג שבו נמחקו משאבי drawable של ספרייה כשמריצים את minifyEnabled=true או shrinkResources=true). (Ib2a98)

  • נוספו בדיקות ל-Stepper ב-Wear Compose‏ (I2d03a)

  • נוספו דוגמאות ל-SwipeDismissableNavHost ב-Wear Compose Navigation. (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 מכילה את הקומיטים האלה.

תכונות חדשות

  • הוספנו רכיב של מדרגות שמאפשר למשתמשים לבחור מתוך טווח ערכים. רכיב Stepper הוא אמצעי בקרה במסך מלא עם לחצני הגדלה והקטנה בחלק העליון והתחתון, ומשבצת באמצע (שצפוי להופיע בה צ'יפ או טקסט). אפשר להתאים אישית את סמלי הלחצנים אם רוצים. (I625fe)

  • הוספנו 2 רכיבים חדשים שאפשר להשתמש בהם כדי להציג תיבות דו-שיח: ‫AlertDialog מחכה לתשובה מהמשתמש ומציג כותרת, סמל, הודעה ואחת מהאפשרויות הבאות: א) שני לחצנים לבחירות פשוטות של אישור או ביטול, או ב) צ'יפים או צ'יפים של מתג שמוערמים אנכית לבחירות גמישות יותר. ‫ConfirmationDialog מציג אישור עם פסק זמן. לתיבת הדו-שיח הפשוטה הזו יש משבצות לכותרת ולסמל (מונפש). (Ic2cf8)

שינויים ב-API

  • הוספנו יחידות (אלפיות השנייה) לערכים המוצעים של משך הדיאלוג. (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)

שינויים ב-API

  • נוספו 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. רכיב InlineSlider מאפשר למשתמשים לבחור מתוך טווח ערכים. טווח הבחירה מוצג כסרגל בין ערכי המינימום והמקסימום של הטווח, שהמשתמשים יכולים לבחור ערך מתוכו. (If0148)

  • כדאי לעיין ב-WearOS Codelab החדש בנושא Compose.

שינויים ב-API

  • ל-Macrobenchmark יש עכשיו minSdkVersion של 23. (If2655)

תיקוני באגים

  • עדכון של הטיפול במעברים ב-SwipeDismissableNavHost ב-SideEffect ‏ (I04994, ‏ b/202863359)
  • עדכון הטיפול במעברים ב-SwipeDismissableNavHost‏ (I1cbe0, ‏ b/202863359)

גרסה ‎1.0.0-alpha09

‫27 באוקטובר 2021

הגרסאות androidx.wear.compose:compose-foundation:1.0.0-alpha09, androidx.wear.compose:compose-material:1.0.0-alpha09 וגם androidx.wear.compose:compose-navigation:1.0.0-alpha09 יוצאות. גרסה ‎1.0.0-alpha09 מכילה את הקומיטים האלה.

תכונות חדשות

  • השקנו את גרסת ה-Developer Preview של Compose ב-Wear OS. אפשר לעיין בפוסט בבלוג שבו מוסבר על רכיבי ה-Composable העיקריים ומופיעים קישורים למקורות מידע נוספים שיעזרו לכם להתחיל להשתמש בהם.

שינויים ב-API

  • הוספנו תמיכה למפתחים כדי שיוכלו להתאים אישית את כל הצבעים בעיצוב הצבעים של Wear Material Design. ‫(I4759b, ‏ b/199754668)

תיקוני באגים

  • נוספו דוגמאות של SwipeToDismissBox ששומרות את המצב (Ibaffe)
  • הוספנו קישורים למדריכים ב-developer.android.com מ-KDocs עבור CurvedText, ‏ TimeText ו-SwipeToDismissBox. (I399d4)
  • הקומפוננטה SwipeDismissableNavHost זורקת עכשיו חריג אם אין יעד נוכחי (מציין שה-NavGraph לא נוצר באמצעות פונקציית כלי השירות wear.compose.navigation.composable) (I91403)
  • נוספו מסמכים ודוגמאות נוספים לשימוש במקור זמן ב-TimeText (I4f6f0)

גרסה 1.0.0-alpha08

‫13 באוקטובר 2021

הגרסאות androidx.wear.compose:compose-foundation:1.0.0-alpha08, androidx.wear.compose:compose-material:1.0.0-alpha08 וגם androidx.wear.compose:compose-navigation:1.0.0-alpha08 יוצאות. גרסה ‎1.0.0-alpha08 מכילה את הקומיטים האלה.

שינויים ב-API

  • שינינו את השם של המאפיינים AppCard ו-TitleCard  ל- והעברנו אותם לסוף רשימת המאפיינים כדי לאפשר לספק אותם כביטוי למבדא (trailing lambda).bodycontent בנוסף, שינינו את השם של bodyColor ל-contentColor כדי לשמור על עקביות עם השמות החדשים של המשבצות. (I57e78)

תיקוני באגים

  • הוספנו קישורים למדריכים ב-developer.android.com מ-KDocs לרכיבים button, ‏ card, ‏ chip, ‏ theme,‏ position indicator ו-scaling lazy column. (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 בחומרים, רכיב שמאפשר למפתחים לכתוב בקלות טקסט מעוקל בהתאם לקימור של עיגול (בדרך כלל בקצה של מסך עגול). (I19593)

שינויים ב-API

  • נוספו בדיקות ל-TimeText (Idfead)
  • הופכים את ArcPaddingValues לממשק. (Iecd4c)
  • נוספה אנימציה ל-SwipeToDismissBox (I9ad1b)
  • הוספנו פרמטר hasBackground ל-API של SwipeToDismissBox כדי שאפשר יהיה להשבית את תנועת ההחלקה כשאין תוכן רקע להצגה. (I313d8)
  • rememberNavController() now takes a optional set of Navigator instances that will be added to the returned NavController to better support optional Navigators such as those from 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 UX Spec. כשבוחרים ב-ToggleChips, הרקע שלהן הופך לרקע עם מעבר צבעים מ-MaterialTheme.color.surface @ 0% alpha, בפינה הימנית העליונה, אל MaterialTheme.color.primary @ 32% alpha, בפינה השמאלית התחתונה, על רקע של MaterialTheme.color.surface @ 75% alpha. כתוצאה מכך, ההבדל בין מצב מסומן ללא מסומן ב-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, רכיב שאפשר להשתמש בו ברמה העליונה של האפליקציה, שמספק מבנה לטיפול במיקום של PositionIndicator (כמו Scroll או Volume), אזור בחלק העליון של המסך להצגת השעה וסטטוס האפליקציה, ותומך גם ב-Vignette כדי לטשטש את הקצה העליון והתחתון של המסך עבור תוכן שאפשר לגלול בו. האזור הראשי של ה-Scaffold הוא המקום שבו ממוקם התוכן של האפליקציה. (I5e0bf)
  • נוספה הטמעה של TimeText ל-Wear Compose ‏ (I5654c)

ספריית הניווט של Wear Compose

  • הוספנו את הגרסה הראשונה של ספריית הניווט Wear Compose, שמספקת שילוב בין הספריות Wear Compose ו-Androidx Navigation. הוא מספק דרך פשוטה לנווט בין פונקציות @Composable כיעדים באפליקציה.

  • הגרסה הראשונה הזו כוללת:

    • רכיב SwipeDismissableNavHost שאפשר להוסיף לו רכיבים אחרים, שמארח תרשים ניווט ומספק ניווט אחורה באמצעות תנועות החלקה
    • NavGraphBuilder.composable תוסף שיעזור לכם ליצור גרפים של ניווט
    • rememberSwipeDismissableNavController() כדי לאפשר העלאת רמה של מצב (state hoisting)
  • דוגמה לשימוש שבו אנחנו יוצרים שני מסכים ועוברים ביניהם:

    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 Navigation נארזת כספרייה נפרדת, כך שאפליקציות פשוטות של Wear Compose שמטמיעות ניווט משלהן לא צריכות להיות תלויות בספריית Androidx Navigation.

שינויים ב-API

  • בוצע עדכון של SwipeDismissableNavHost כדי לתמוך ב-rememberSaveable על ידי הגדרת זהות המפתח לרקע ולתוכן (I746fd)
  • הוספנו מתאם PositionIndicator שיכול לטפל ב-LazyListState ‏ (I21b88)
  • בוצע עדכון של SwipeToDismissBox כדי לתמוך ב-rememberSaveable (Ie728b)
  • הוספנו תמיכה ב-reverseLayout ל-ScalingLazyColumn. האפשרות הזו מאפשרת להפוך את כיוון הגלילה והפריסה (I9e2fc)
  • הוצאו משימוש performGesture ו-GestureScope, שהוחלפו ב-performTouchInput וב-TouchInjectionScope. ‫(Ia5f3f, ‏ b/190493367)
  • שינינו את השם של VignetteValue ל-VignettePosition וגם את השם של VignetteValue.שני השמות שונו ל-VignettePosition.TopAndBottom. (I57ad7)
  • שינינו את השמות של ScalingLazyColumnState ל-ScalingLazyListState, של ScalingLazyColumnItemInfo ל-ScalingLazyListItemInfo, של ScalingLazyColumnLayoutInfo ל-ScalingLazyListLayoutInfo ושל ScalingLazyColumnScope ל-ScalingLazyListScope, למקרה שנחליט להוסיף בעתיד הטמעה של ScalingLazyRow. (I22734)

תיקוני באגים

  • עדכנו את המסמכים בנושא CompactChip כדי לתאר מה קורה אם לא מספקים סמל או תווית. (I4ba88)
  • ביצענו כמה שינויים ברכיבי הכרטיסים של Wear. (I6b3d0)
    1. הריווח בין הכותרת לבין הטקסט בכרטיס הכותרת צומצם מ-8dp ל-2dp.
    2. הגופן של הכותרת בכרטיס הכותרת השתנה מ-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 מכילה את הקומיטים האלה.

שינויים ב-API

  • סימון ArcPaddingValues כ-‎ @Stable (I57deb)
  • הקומפוננטה ScalingLazyColumnState מיישמת עכשיו את הממשק ScrollableState, וכך המפתחים יכולים לגשת לקומפוננטה באופן פרוגרמטי ולגלול אותה. (I47dbc)

תיקוני באגים

  • צמצמנו את המרווח בין הסמל לטקסט בצ'יפ ובצ'יפ עם מצב הפעלה/השבתה, כדי להתאים אותם לעדכונים במפרט חוויית המשתמש. (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 ומשנה swipeable שאפשר להשתמש בו כדי לתמוך במחוות החלקה משמאל לימין לסגירה. למרות שהיא לא תלויה ברכיבי הניווט, היא מיועדת לשימוש כדי לצאת ממסך אחד ולעבור למסך אחר. נוספו בדיקות שילוב כדי להדגים את התכונה 'החלקה לסגירה'. (I7bbaa)
  • הוספנו את הממשקים ScalingLazyColumnItemInfo ו-ScalingLazyColumnLayoutInfo למחלקה ScalingLazyColumnState כדי לאפשר למפתחים לדעת את המיקומים והגדלים בפועל של פריטים ב-ScalingLazyColumn אחרי החלת שינוי הגודל. תיקנו גם באג שקשור לאופן שבו בוצע חישוב של שינוי הגודל כשנעשה שימוש ב-padding של התוכן העליון ב-ScalingLazyColumn. (I27c07)

שינויים ב-API

  • מוסיפים את המחלקה CurvedTextStyle כדי לציין את סגנון הטקסט המעוקל Options. בדומה ל-TextStyle, אבל עכשיו יש תמיכה רק בצבע, ב-fontSize וברקע. בעתיד נוסיף עוד אפשרויות עיצוב. (I96ac3)
  • הוספנו את הממשקים ScalingLazyColumnItemInfo ו-ScalingLazyColumnLayoutInfo למחלקה ScalingLazyColumnState כדי לאפשר למפתחים לדעת את המיקומים והגדלים בפועל של פריטים ב-ScalingLazyColumn אחרי החלת שינוי הגודל. תיקנו גם באג שקשור לאופן שבו בוצע חישוב של שינוי הגודל כשנעשה שימוש ב-padding של התוכן העליון ב-ScalingLazyColumn. (I27c07)
  • הוספנו את @ExperimentalWearMaterialApi לרשימת הערכים המנויים (enum) של SwipeDismissTarget, כחלק מ-SwipeToDismissBox API. (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 מכילה את הקומיטים האלה.

שינויים ב-API

  • נוסף רכיב CurvedText שמאפשר למפתחים לכתוב בקלות טקסט שמתעגל בהתאם לעיגול (בדרך כלל בקצה של מסך עגול) (Id1267)
  • שינינו את השם של CardDefaults.imageBackgroundPainter() ל-CardDefaults.imageWithScrimBackgroundPainter() כדי להבהיר שתמונת הרקע תהיה עם שכבת צבע שקופה מעליה. (I53206)
  • הוספת הרכיב ScalingLazyColumn שמספק רכיב רשימה ל-Wear Material. הרכיב הזה מאפשר תצוגת עין דג עם תוכן הרשימה שגודלו קטן יותר והוא הופך לשקוף ככל שהוא מתרחק מקצה הרכיב. (I7070c)

תיקוני באגים

  • שינינו את צבע ברירת המחדל של התוכן appName ב-AppCard בתגובה לעדכון של מפרט חוויית המשתמש. הצבע שמוגדר כברירת מחדל ל-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)

שינויים ב-API

  • הוספת תמיכה ביישור רדיאלי ל-CurvedRow (בדומה ליישור האנכי בשורה) (Id9de5)
  • הוספת מחלקה חדשה CurvedRow לרכיבים הניתנים להרכבה שמוצגים בקשת (I29941)
  • נוסף סוג חדש של כרטיס לשימוש באפליקציות (TitleCard). נוספה גם תמיכה בהצגת תמונות כרקע לכרטיסים כדי להדגיש את התוכן שלהם (I53b0f)
  • נוספו סמלי מתגים (תיבת סימון, מתג ולחצני בחירה) ל-ToggleChipDefaults כדי להקל על מפתחים להגדיר את ToggleChip ו-SplitToggleChips (I7b639)
  • העדכון של הריווח הפנימי של תוכן ההתחלה והסיום של צ'יפים (Chips) מאפשר להגדיר אותו ל-14dp באופן עקבי, בלי קשר לשאלה אם יש לצ'יפ סמל או לא (הערך הקודם היה 12dp אם יש סמל ו-14dp אם אין סמל) (I34c86).

תיקוני באגים

  • הוספת בדיקות ל-CurvedRow ‏ (I93cdb)
  • קישור יחסי התלות של Wear Compose ל-Compose 1.0.0-rc01. (Ie6bc9)
  • שינינו את הטיפול בציור של תמונות רקע בכרטיסים ובצ'יפים, כך שהתמונה תיחתך ולא תימתח כדי לשמור על הפרופורציות שלה. (I29b41)
  • הוספנו עוד הדגמות ובדיקות שילוב לרכיבים Button ו-ToggleButton. (5e27ed2)
  • נוספו עוד בדיקות של רכיבי Chip כדי לכסות את צבעי התוכן של 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 היא ספרייה מבוססת-Compose ב-Kotlin שתומכת בעיצוב Wear Material, הרחבה של Material Design למכשירים לבישים עם WearOS. גרסת האלפא הראשונה הזו כוללת יישומים מוקדמים ופונקציונליים של התכונות הבאות:

  • עיצוב Material – מגדיר את הצבעים, הטיפוגרפיה והצורות באופן עקבי ברכיבים שבהם נעשה שימוש מהספרייה הזו.
  • ‫Chip,‏ CompactChip – צ'יפים הם בצורת אצטדיון, ויש וריאציות שמאפשרות להציג תוכן של סמל, תווית ותווית משנית.
  • ‫- ToggleChip,‏ SplitToggleChip – סוג מיוחד של צ'יפ שכולל משבצת לסמל של מתג דו-מצבי, כמו לחצן בחירה או תיבת סימון. בנוסף, ל-SplitToggleChip יש שני אזורים שאפשר להקיש עליהם, אחד שאפשר ללחוץ עליו ואחד שאפשר להפעיל או להשבית אותו.
  • ‫Button, ‏ CompactButton – לחצנים בצורה מעגלית, עם משבצת תוכן אחת לסמל או לטקסט מינימלי (מקסימום 3 תווים).
  • ToggleButton – לחצן שמפעיל או משבית פעולה, עם משבצת אחת לסמל או לטקסט מינימלי (עד 3 תווים).
  • כרטיס, כרטיס אפליקציה – צורה מלבנית עם פינות מעוגלות, עם מקומות לתוכן כמו סמל האפליקציה, השעה, הכותרת והגוף.

בגרסאות עתידיות נרחיב את הווידג'טים ונוסיף תמיכה בבחירות, במחוונים, ברשימות, באינדיקטורים של דפים, בתיבות דו-שיח, באינדיקטורים של פס גלילה, בהודעות קצרות ועוד.

בנוסף, תהיה תמיכה בתכונות ספציפיות אחרות למכשירים לבישים, כמו פריסות וטקסט מעוקלים, וגם תשתית שתקל על מפתחים ליצור אפליקציות או שכבות-על למכשירים לבישים.

הספרייה Wear Compose Material מבוססת על אותם עקרונות כמו הספרייה Compose Material, אבל היא מיועדת למכשירים לבישים. כשמפתחים אפליקציות למכשירים לבישים, צריך להשתמש בספריית Wear Compose Material במקום בספריית Compose Material.

שתי ספריות ה-Material הן בלעדיות ולא מומלץ לערבב ביניהן באותה אפליקציה. אם מפתחים מוסיפים את ספריית ה-Material של Compose לתלות שלהם, זה מצביע על אחת מהאפשרויות הבאות: א) יש רכיבים שחסרים בספריית ה-Material של Wear Compose. במקרה כזה, צריך להודיע לנו מה נדרש. ב) המפתחים משתמשים ברכיב שלא מומלץ לשימוש במכשיר לביש.