כתיבה ב-Wear

  
אתם יכולים לכתוב אפליקציות Jetpack Compose למכשירי Wear OS על ידי הוספת פונקציונליות לתמיכה בגדלים שונים של מכשירים ובמחוות ניווט.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
‫2 ביולי 2025 1.4.1 - 1.5.0-beta05 -

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

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

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

Groovy

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

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

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

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

Kotlin

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

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

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

    // 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.5 של Wear Compose

גרסה 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)
  • הוסרה ההפסקה בין הלולאות ב-indeterminate 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 יש עכשיו פרמטרים של משנים ברכיבים הניתנים להרכבה SuccessIcon ו-FailureIcon. (Id2ae2)

תיקוני באגים

  • שינינו את הסדר שבו אנחנו מחילים את ההשפעה של פרמטרים מסוג SurfaceTransformation. בעבר, הטרנספורמציות שהוחלו על רכיבי Wear Material3 בוצעו באופן הבא: צביעת הרקע, טרנספורמציה של הקונטיינר, טרנספורמציה של התוכן. עכשיו, 2 הראשונים הפוכים, ואנחנו מחילים כל שינוי שעבר ביניהם, כך שהוא מושפע מהטרנספורמציות של מאגר התגים. התיקון הזה פותר מקרים כמו שימוש באפקט הבהוב של placeholder עם רכיבים ב-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 מכילה את הקומטים האלה.

תיקוני באגים

  • פרופילי הבסיס של ספריות 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 – כפתור חדש שצמוד לקצה המסך עם צורה מיוחדת שמיועד לחלק התחתון של המסך.
  • ‫Scaffolds – הוספנו את הרכיבים AppScaffold ו-ScreenScaffold כדי להגדיר את מבנה המסך ולתאם את האנימציות של ScrollIndicator ו-TimeText.
  • לחצנים – יש תמיכה בלחצנים רבים בצורת אצטדיון עם מאגרי תגים גמישים של משבצת אחת ווריאציות של כמה משבצות ללחצנים עם סמלים ותוויות. הסמלים CheckboxButton ו-SwitchButton מסופקים כשנדרשים לחצני מעבר, ואילו RadioButton הוא לחצן הבחירה הזמין (מסופקות גם וריאציות של לחצני המעבר והבחירה).
  • ButtonGroup – הטמעה של קבוצת לחצנים בעלי מראה ייחודי בשורה, שמשנים את הצורה שלהם כשנוגעים בהם.
  • וריאציות של AlertDialog תומכות בלחצני אישור/ביטול או ב-EdgeButton.
  • ConfirmationDialog זמין להצגת הודעה עם פסק זמן, ותומך באנימציות מיוחדות לגרסאות של הצלחה, כישלון ופתיחה בטלפון.
  • רכיבי בחירה – נתמכות וריאציות של TimePicker ו-DatePicker, וגם הרכיבים Picker ו-PickerGroup לבניית מסכי בחירה משלכם.
  • ProgressIndicators – נתמכים אינדיקטורים של התקדמות מעגלית ולינארית (ל-CircularProgressIndicator יש וריאציות מפולחות ובלתי מוגדרות).
  • כרטיסים – יש כמה וריאציות של כרטיסים, כולל TitleCard שכולל פריסות ספציפיות לכרטיסים עם כותרת, שעה, כתוביות או משבצות תוכן. אפשר גם להוסיף לרקע של כרטיס תמונה של TitleCard כדי להמחיש את משמעות המידע שמופיע בו.
  • רכיבי פייג'ר – הרכיבים 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 ב-Wear Compose Material וב-Wear Compose Material3.SwipeToReveal כדי להמשיך להשתמש בממשקי ה-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).
  • עדכנו את הדוגמאות של הכלי לבחירת תמונות כדי להסיר קריאות מיותרות ל-remember, ובמקום זאת להשתמש ב-rememberUpdatedState בכלי לבחירת תמונות כדי לזכור את פונקציית ה-lambda האחרונה contentDescription. ‫(Icb5b1).
  • עדכנו את סגנונות הטקסט ב-TimePicker וב-DatePicker כך ששינויים בגופן לא יגרמו יותר לחיתוך. (I26194).
  • ListHeader ו-ListSubHeader מיישרים את הטקסט למרכז ולצד ימין בהתאמה כברירת מחדל. (I78339).
  • עדכנו את הדוגמאות וההדגמות של Foundation ו-Material Swipe to Reveal כדי להודיע על פעולות נגישות מותאמות אישית (צריך להוסיף את הפעולות המותאמות אישית כסמנטיקה בתוכן, ולא ב-SwipeToReveal composable עצמו). (Ie92a3).
  • העדכנו את ברירת המחדל MaxLines שמוגדרת בתוכן EdgeButton בהתאם לגודל שלו – עכשיו היא 1 למידה קטנה מאוד, 2 למידות קטנה ובינונית ו-3 למידה גדולה. (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)
  • הוספת requireOffset אל SwipeToDismissBoxState היא הדרך המומלצת לקבל קיזוז של 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. (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 של swipe-to-reveal. (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 כדי שאפשר יהיה לציין את מיקום הגלילה הראשוני ב-TransformationLazyColumn. (I0a0d5)
  • הוצאנו משימוש את runWithTimingDisabled לטובת runWithMeasurementDisabled, שמתאר בצורה ברורה יותר את ההתנהגות – כל המדדים מושהים. בנוסף, צריך לחשוף את מחלקת העל MicrobenchmarkScope כי אי אפשר להצהיר מחדש על הפונקציה runWithMeasurementDisabled כדי לפתוח גישה, כי היא מוטמעת. (I9e23b, ‏ b/389149423, ‏ b/149979716)
  • הוספנו את TransformingLazyColumnItemScrollProgress.Unspecified ל-API כדי למנוע הצגת מודעות בתוך מסגרת ב-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)
  • הוספנו פרמטר offset ל-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 ב-haptics סיבובי ב-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. הסרנו גם את המאפיין TransformingLazyColumnVisibleItemInfo height. במקומו צריך להשתמש במאפיין 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 הופעלה כש-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)
  • עדכנו את פרופילי הבסיס של ספריית 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, משנה חדש שמקשר בין אירועים של סיבוב לבין מאגרי מידע שאפשר לגלול בהם, ומאפשר למשתמשים לגלול באמצעות כפתור או מסגרת מסתובבת במכשיר Wear OS. בנוסף, ScalingLazyColumn ו-Picker תומכים עכשיו בברירת מחדל בהזנה באמצעות חוגה. משתמשים בפרמטר rotaryScrollableBehavior כדי להגדיר את התנהגות הגלילה או ההצמדה. כדי להגדיר את התנהגות ההצמדה, מומלץ לספק הצמדה גם באמצעות הפרמטר flingBehavior לגלילה במגע.
  • SwipeDismissableNavHost מספק עכשיו אנימציית כניסה למעברים בתוך האפליקציה.
  • הסמל PositionIndicator מוצג עכשיו כברירת מחדל כשמסך מוצג בפעם הראשונה.
  • המאפיינים SelectableChip ו-SplitSelectableChip נוספו כווריאציה של ToggleChip – צריך להשתמש בהם עם RadioButton כדי לספק סמנטיקה שניתנת לבחירה במקום סמנטיקה שניתנת להחלפה לצורך נגישות
  • ListHeader תומך עכשיו בהתאמות גובה כשצריך גובה נוסף כדי להציג גדלי גופן גדולים.

תיקוני באגים

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

גרסה 1.4.0-alpha08

‫1 במאי 2024

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

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

  • ה-wrapper‏ 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 לממשקי ה-API שהוצאו משימוש rememberRipple/RippleTheme. ההגדרה הזו תוסר בגרסה היציבה הבאה, והיא נועדה רק כעזר זמני להעברה במקרים שבהם מספקים 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 ב-Material SwipeToReveal Card ו-Chip APIs בממשק API מבוסס-slot שמשתמש ב-composables של 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 וניווט. (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)
  • הוספנו בדיקות מיקרו-בנצ'מרק ל-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‏(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 – הוספנו את ההערות המותאמות אישית הבאות לתצוגה מקדימה של קומפוזיציות במסכי Wear: ‫WearPreviewSmallRound מציגה תצוגה מקדימה של הקומפוזיציה במכשיר קטן ועגול, ‫WearPreviewLargeRound מציגה תצוגה מקדימה של הקומפוזיציה במכשיר גדול ועגול, ‫WearPreviewSquare מציגה תצוגה מקדימה של הקומפוזיציה במכשיר מרובע. בנוסף, יש גם את ההערות הבאות לתצוגה מקדימה ולתצוגה מקדימה מרובה: 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 מתעד עכשיו אזהרה עם סיבות אפשריות למחסנית ריקה של פעילויות שהושהו. הפעולה הזו מתבצעת כדי למנוע קריסות לא צפויות שנגרמות בגלל IllegalArgumentException שהופעל כשהמחסנית הייתה ריקה. ‫(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)
  • תיקנו באג ב-Chip וב-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 על ידי העברת המיקוד לבחירה שנבחרה מהקבוצה. (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:

  • PositionIndicator apis שמטרגטים Material ScalingLazyColumn הוצאו משימוש – צריך לעדכן ל-Foundation.Lazy ScalingLazyColumn. בנוסף, השדה anchorType נוסף ל-ScalingLazyListLayoutInfo. (I29d95)
  • ScalingLazyColumn סומן כהוצאה משימוש בחבילת Wear Compose Material ‏ (I16d34)
  • עדכנו את שיטת השינוי ScrollAway כך שתשתמש ב-ScalingLazyListState מ-Wear Compose Foundation.Lazy והוצאנו משימוש את העומס העודף שהשתמש ב-ScalingLazyListState מ-Wear Compose Material. (Ifc42c)
  • עדכנו את ממשקי ה-API של Dialog כך שישתמשו ב-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)
  • תיקנו כמה בעיות בבדיקות של Picker והוספנו עוד בדיקות לבדיקת גלילה עם היסט (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)
  • תיקון קובצי kdoc עבור scrollToOption (I6f9a0)
  • העדכון של PlaceholderState.rememberPlaceholderState() נעשה כדי להשתמש ב-rememberUpdatedState, כך שהמצב יעודכן אם פונקציית ה-lambda של onContentReady תופעל. (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

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

תיקוני באגים

  • שינינו את רוחב ברירת המחדל של הגבול של OutlinedButton/OutlinedCompactButton מ-2.dp ל-1.dp כדי להתאים למפרטים הסופיים של חוויית המשתמש. (Icf84d)
  • כדי לצמצם את ההשפעה של הפריט הראשון שנוסף לרשימה ריקה ScalingLazyColumn, כך שהוא לא יופיע כאילו הוא נגלל למקומו, הוספנו הערכה של autoCentering topPadding כשהתוכן ריק. השינוי הזה מחשב את כמות הריווח העליון שנדרשת על ידי הנחה של פריט ראשוני בגובה 0.dp. במקרה של ScalingLazyListAnchorType.ItemStart, המערכת תחשב את המרווח הפנימי העליון הנכון. במקרה של ScalingLazyListAnchorType.ItemCenter, החישוב יהיה שגוי כי צריך את גובה הפריטים כדי להתאים את הגודל של התוכן בצורה נכונה, וכתוצאה מכך תהיה גלילה קצרה למקום בהתבסס על הגובה האמיתי של הפריטים.(I239a4)
  • עדכנו את שכבת הרקע שמוחלת על האנימציה SwipeToDismiss כך שתתאים לפלטפורמת Wear. (I9003e)
  • תיקנו את הטיפול ב-PositionIndicator וב-ScalingLazyListState עבור פריטים ברשימה בגודל 0 כדי למנוע שגיאות של חלוקה באפס.(Ic28dd)LazyListState

גרסה 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, כך שהמצב יעודכן אם פונקציית ה-lambda של onContentReady תופעל. (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 וב-ScalingLazyListState עבור פריטים ברשימה בגודל 0 כדי למנוע שגיאות של חלוקה באפס.(Ic28dd)LazyListState

גרסה 1.1.0-rc01

9 בנובמבר 2022

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

תיקוני באגים

  • הוספנו כללי פרופיל בסיסיים עבור Placeholders, ‏ ScrollAway, ‏ RadioButton, ‏ Switch, ‏ Checkbox, ‏ OutlinedButton, ‏ OutlinedCompactButton, ‏ OutlinedChip ו-OutlinedCompactChip. (I8249c)
  • תיקנו באג ב-Modifier.scrollAway כך שאם itemIndex שצוין לא תקין (לדוגמה, אם אינדקס הפריט הזה הוא מחוץ לטווח), TimeText עדיין יוצג. (I2137a)
  • עדכנו את SwipeToDismissBox האנימציה כך שתתאים להטמעה בפלטפורמה. אחרי אנימציית הלחיצה הראשונית, המסך מחליק ימינה ברגע שההסרה מופעלת. (I41d34)
  • כדי לשפר את הביצועים, עדכנו את Modifier.scrollAway כך שיקרא רק את scrollState בתוך בלוק המדידה, כדי להימנע מהרכבה מחדש של המאפיין אחרי כל מדידה מחדש. (I4c6f1)
  • הוספנו מסמכים ודוגמה למחזיקי מקום כדי להציג את הסדר הנכון של Modifier.placeholder ו-Modifier.placeholderShimmer כשמחילים אותם על אותו רכיב שאפשר להרכיב. (Ie96f4, b/256583229)
  • שינינו את רוחב ברירת המחדל של הגבול של OutlinedCompactChip/OutlinedChip מ-2.dp ל-1.dp כדי להתאים למפרטים הסופיים של חוויית המשתמש. (Ib3d8e)
  • תיקנו באג ב-rememberPickerState שגרם לכך שקלט מעודכן לא נשמר, ולכן רכיבים שאפשר להרכיב לא עודכנו אחרי שינויים בקלט. (I49ff6, ‏ b/255323197)
  • ביצענו כמה עדכונים בממשק המשתמש של ה-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 ל-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 עכשיו ממוקם ומוגדר בגודל שמאפשר לו לתפוס רק את המקום שדרוש לו. לדוגמה, אם מוסיפים לו מידע סמנטי, 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).
    • פלייסהולדר – נוספה תמיכה ניסיונית בפלייסהולדרים. יש כאן שלושה אפקטים ויזואליים שונים שנועדו לפעול יחד.
    • קודם כל, אפקט מברשת של רקע זמני שמשמש במאגרי מידע כמו 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 internal 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 מכילה את הקומיטים האלה.

תכונות חדשות

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

שינויים ב-API

  • הוספנו תמיכה ב-fontWeight, ב-fontFamily, ב-fontStyle וב-fontSynthesis ב-CurvedTextStyle, שאפשר להשתמש בהם ב-curvedText וב-basicCurvedText. אפשר להשתמש בפרמטרים האלה כדי לציין את הגופן והסגנון שבהם יש להשתמש בטקסט המעוקל.(Iaa1a8),(I72759)
  • עדכנו את פרמטר ההיסט של 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 ממוקם עכשיו כך שהוא תופס רק את השטח שדרוש לו. לדוגמה, אם מוסיפים לו מידע סמנטי, 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, ורכיבים חדשים של 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% מהצבע הראשי ויסתיים ב-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 ההאצה כשהפריטים מגיעים לקצה המסך, כדי להתאים לעדכונים במפרט חוויית המשתמש. הערכים הישנים 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)
  • שיפורים בהחלקה מהקצה. כשמשתמשים ב-Modifier.edgeSwipeToDismiss ומבצעים החלקה שמאלה מאזור הקצה, ההחלקה לא גורמת יותר לסגירת האפליקציה כשמשנים את כיוון ההחלקה לימין. בעבר, היה אפשר להפעיל את התכונה 'החלקה לסגירה' על ידי החלקה שמאלה ואז החלקה ימינה.(I916ea)
  • HorizontalPageIndicator מוצגים עכשיו עד 6 עמודים במסך. אם יש יותר מ-6 דפים בסך הכול, מוצג אינדיקטור בגודל חצי בצד ימין או שמאל, עם מעבר חלק בין הדפים.(I2ac29)
  • שיפור התנהגות ברירת המחדל של הצמדה ב-ScalingLazyColumn וב-Picker (I49539)
  • שיפורים בהחלקה מהקצה. כשמשתמשים ב-Modifier.edgeSwipeToDismiss, התכונה 'החלקה לסגירה' מופעלת רק כשנוגעים בקצה המסך ומחליקים ימינה. בעבר, היה אפשר להפעיל את התכונה 'החלקה לסגירה' על ידי החלקה מכל חלק במסך אם הגלילה מגיעה להתחלה.(I8ca2a)

גרסה 1.0.0-beta01

11 במאי 2022

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

מה כולל Compose ל-Wear OS 1.0

הגרסה 1.0.0-beta01 של Compose ל-Wear OS היא אבן דרך חשובה, כי הספרייה כוללת את כל התכונות וה-API נעול.

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

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

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

  • ‫CurvedLayout – Wear Foundation CurvedLayout הוא פריסה שניתנת להגדרה (composable) וממקמת את הצאצאים שלה בקשת, ומסובבת אותם לפי הצורך. זה דומה לפריסת שורה שמעוקלת לפלח של טבעת. חשוב לציין שהתוכן של 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)
  • מוסיפים פרמטר מופעל ל-AppCard ול-TitleCard. עכשיו יש להם API דומה ל-androidx.compose.material Cards. אם הפרמטר מוגדר כ-false, אי אפשר ללחוץ על הכרטיס. (Idc48d, ‏ b/228869805)

תיקוני באגים

  • הוספנו ל-Stepper השבתה של לחצני ההגדלה וההקטנה כשהגענו למגבלות התחתונות או העליונות (והחלנו ContentAlpha.disabled על iconColor) (I4be9f)
  • הוספנו ריווח של 1dp מסביב לתוכן של הכלי לבחירת תאריכים כשמציירים אותו עם מעבר צבעים, כדי למנוע תנודות בטקסט שרואים כשמחליקים. (I0b7b9)
  • Add screenshot tests for 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 שלנו כדי לציין למפתחים מה ההנחות לגבי הפריסות. כך מפתחים יכולים להשתמש במגדירים נוספים בחלק מהתוכן של המשבצות, ולא צריכים לספק רכיבי פריסה נוספים. בנוסף, ביצענו כמה עדכונים קלים בצבעים של כרטיס האפליקציה או כרטיס הכותרת, כך שברירת המחדל של timeColor ושל appColor היא contentColor. עדיין אפשר לשנות את כל המאפיינים האלה בנפרד אם צריך. (I26b59)
  • הגדרת האובייקט SwipeToDismissBoxState.Companion כפרטי (I39e84)
  • תיקון סדר הפרמטרים עבור InlineSlider ו-Stepper. שינוי פשוט כדי לעמוד בהנחיות לשימוש בממשקי API (I11fec)
  • הסרנו את אובייקט החיסכון של SwipeToDismissBoxState כי הוא לא היה בשימוש. (Ifb54e)
  • עדכנו את CompactChip בהתאם למפרט העדכני של חוויית המשתמש. המרווח הפנימי צומצם לערכים הבאים: אופקי = 12dp ואנכי = 0dp. הגופן של התווית השתנה מלחצן ל-caption1. הגדלים המומלצים של סמלים הם 20x20 אם יש גם סמל וגם תווית, ו-24x24 אם יש רק סמל. במקרה השימוש של סמל בלבד, דאגנו גם שהסמל יהיה מיושר למרכז. (Iea2be)
  • הוספנו מספר שדות חדשים ל-ScalingLazyListLayoutInfo כדי לאפשר למפתחים לדעת את הסכום של contentPadding ושל autoCenteringPadding שהוחלו. הם יכולים להיות שימושיים למפתחים כשמחשבים תנועת החלקה או גלילה (I7577b)
  • הטמענו מעברים פנימה/החוצה ב-Dialog. נוסף פרמטר showDialog ועכשיו תיבת הדו-שיח שולטת בנראות שלה (היא יכולה להפעיל את אנימציות הפתיחה והסיום כשהיא מוצגת או מוסתרת). שימו לב: אנימציית הסיום לא מופעלת כשהמשתמש יוצא מתיבת הדו-שיח באמצעות החלקה לסגירה. בנוסף, הוספנו ערך ברירת מחדל למדינה בעומס היתר SwipeToDismissBox שנוסף לאחרונה. (I682a0)
  • כדי לשפר את התמיכה ב-i18n ובנגישות, שינינו את ToggleChip ואת SplitToggleChip כך שלא מוגדר להם יותר ערך ברירת מחדל למקום toggleControl. שינינו גם את ToggleChipDefaults כך שהשיטות הבאות מחזירות עכשיו ImageVector ולא Icon (שימו לב שהן כבר לא מחזירות @Composables ולכן הן מתחילות באותיות קטנות), SwitchIcon()->switchIcon(), ‏ CheckboxIcon->checkboxIcon() ו-RadioIcon()->radioIcon() – השינוי הזה מאפשר למפתחים ליצור קומפוזיציות משלהם של Icon() עם קבוצת contentDescription מתאימה. (I5bb5b)
  • הוספנו פרמטר SwipeDismissableNavHostState ל-SwipeDismissableNavHost. השינוי הזה תומך בשימוש בהחלקה מהקצה במסכים שמשמשים כיעדי ניווט, כי עכשיו אפשר להעביר את SwipeToDismissBoxState ולהשתמש בו כדי לאתחל גם את SwipeDismissableNavHostState וגם את Modifier.edgeSwipeToDismiss במסכים שדורשים החלקה מהקצה. (I819f5, ‏ b/228336555)

תיקוני באגים

  • מוודאים שפריסות מעוקלות מתעדכנות כשצריך. (Ie8bfa, b/229079150)
  • תיקון באג בכתובת https://issuetracker.google.com/issues/226648931 (Ia0a0a, ‏ b/226648931)
  • הוסרו הערות מיותרות של ניסויים (I88d7e)

גרסה 1.0.0-alpha20

‫6 באפריל 2022

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

תכונות חדשות

  • הוספת ערך מקדם edgeSwipeToDismiss ל-SwipeToDismiss. מאפשרת להפעיל את swipeToDismiss רק בקצה השמאלי של אזור התצוגה. הערך הזה משמש כשהמרכז של המסך צריך להיות מסוגל לטפל בהחלפה אופקית של דפים, כמו גלילה דו-ממדית במפה או החלקה אופקית בין דפים.(I3fcec, b/200699800)

שינויים ב-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 Runtime‏ (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)
  • הוספנו מצב קריאה בלבד לכלי לבחירת קבצים, למסכים עם כמה כלים לבחירת קבצים שרק אחד מהם ניתן לעריכה בכל פעם. כשבוחר האפשרויות הוא לקריאה בלבד, הוא מציג את האפשרות שנבחרה כרגע, ואת התווית אם סופקה כזו. (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() והסרנו את 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 ושל SplitToggleChip ל-toggleControl, כדי להתאים יותר ל-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.
  • הוספנו הדגמה של Date Picker ותיקנו באג ב-PickerState שבו האפשרות initiallySelectedOption לא הוחלה עד שה-Picker הוצג. (Id0d7e)
  • כדי לצמצם את החיתוך של פריטים רחבים יותר ScalingLazyColumn במסכים עגולים, הגדלנו את ריווח התוכן האופקי שמוגדר כברירת מחדל מ-8 ל-10 dp. (I0d609)
  • מוודאים שהסמל PositionIndicator מוצג כשגוללים. (Ied9a2)

גרסה 1.0.0-alpha17

23 בפברואר 2022

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

תכונות חדשות

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

שינויים ב-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. אפשר להשתמש ב-Alert וב-Confirmation כיעדי ניווט. בנוסף, הוספנו 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 רכיב לטיפול בלחיצה על כפתור החזרה, כך שלחיצה על הכפתור הזה תנווט לרמה הקודמת בהיררכיית הניווט. (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 כדי לקבל משאבי drawable בספריית 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 הוא אמצעי בקרה במסך מלא עם לחצני הגדלה והקטנה בחלק העליון והתחתון, ומשבצת באמצע (שצפוי להופיע בה רכיב Chip או טקסט). אפשר להתאים אישית את סמלי הלחצנים אם רוצים. (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 החדש!

שינויים ב-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 Color. (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 body ל-content והעברנו אותם לסוף רשימת המאפיינים כדי לאפשר לספק אותם כביטוי למבדא עוקב. בנוסף, שינינו את השם של bodyColor ל-contentColor כדי לשמור על עקביות עם השמות החדשים של המשבצות. (I57e78)

תיקוני באגים

  • נוספו קישורים למדריכים ב-developer.android.com מ-KDocs לרכיבים button, card, chip, theme, position indicator ו-scaling lazy column. (I22428)
  • תיקון של WearOS SwipeToDismissBox שלפעמים לא מטפל בהחלקות. (I9387e)
  • נוספו דוגמאות ל-Button, ‏ CompactButton,‏ Chip, ‏ CompactChip, ‏ AppCard, ‏ TitleCard,‏ ToggleButton, ‏ ToggleChip, ‏ SplitToggleChip ‏ (Iddc15)
  • נוספו בדיקות ביצועים של מיקרו-בנצ'מרק עבור Card, ‏ Chip, ‏ ToggleChip, ‏ TimeText ו-ScalingLazyColumn. (If2fe9)

גרסה 1.0.0-alpha07

‫29 בספטמבר 2021

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

תכונות חדשות

  • נוסף רכיב CurvedText ב-Material, רכיב שמאפשר למפתחים לכתוב בקלות טקסט מעוקל לפי העיקול של עיגול (בדרך כלל בקצה של מסך עגול). (I19593)

שינויים ב-API

  • נוספו בדיקות ל-TimeText (Idfead)
  • הופכים את ArcPaddingValues לממשק. (Iecd4c)
  • נוספה אנימציה ל-SwipeToDismissBox ‏ (I9ad1b)
  • נוסף פרמטר hasBackground ל-API של SwipeToDismissBox כדי שאפשר יהיה להשבית את תנועת ההחלקה כשאין תוכן רקע להצגה. (I313d8)
  • rememberNavController() מקבלת עכשיו קבוצה אופציונלית של מופעים של Navigator שיוספו ל-NavController שמוחזר כדי לתמוך טוב יותר ברכיבי ניווט אופציונליים כמו אלה של Accompanist Navigation Material. (I4619e)
  • מפנים אל NamedNavArgument מתוך navigation-common ומסירים את העותק מתוך wear.compose.navigation. (I43af6)

תיקוני באגים

  • תוקנה בעיה שגרמה לכך שבדיקת CurvedRow הייתה לא יציבה במכשירים קטנים יותר. (If7941)
  • תוקנה בעיה שגרמה להבהוב אפשרי ב-CurvedRow כשתוכן מתעדכן, והובטח שהמדידה של השורה המעוקלת תתבצע מחדש (Ie4e06)
  • הפונקציה ChipDefaults.gradientBackgroundChipColors() עודכנה בהתאם לשינויים במפרט חוויית המשתמש. המעבר ההדרגתי מתחיל עכשיו עם MaterialTheme.colors.primary עם אלפא של 32.5% ומסתיים עם MaterialTheme.colors.surface עם אלפא של 0% על רקע של MaterialTheme.colors.surface עם אלפא של 75%. (Id1548)
  • עדכנו את הצבעים של רכיבי ToggleChip כשהם במצב נבחר, בהתאם להנחיות העדכניות של 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. הוא מספק דרך פשוטה לנווט בין פונקציות @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)

תיקוני באגים

  • צמצמנו את המרווח בין הסמל לטקסט ברכיבים Chip ו-ToggleChip כדי להתאים אותם לעדכונים במפרט חוויית המשתמש. (I83802)

גרסה 1.0.0-alpha04

‫18 באוגוסט 2021

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

תכונות חדשות

  • נוספו SwipeToDismissBox ו-swipeable modifier שאפשר להשתמש בהם כדי לתמוך במחוות החלקה משמאל לימין לסגירה. למרות שהיא לא תלויה ברכיבי הניווט, היא אמורה לשמש ליציאה ממסך אחד ולניווט למסך אחר. נוספו בדיקות שילוב להדגמה של החלקה לסגירה. (I7bbaa)
  • הוספנו את הממשקים ScalingLazyColumnItemInfo ו-ScalingLazyColumnLayoutInfo למחלקה ScalingLazyColumnState כדי לאפשר למפתחים לדעת את המיקומים והגדלים בפועל של פריטים ב-ScalingLazyColumn אחרי שהשינוי בגודל בוצע. תיקנו גם באג שקשור לאופן שבו בוצע חישוב של שינוי הגודל כשריווח התוכן העליון הוחל על ScalingLazyColumn. (I27c07)

שינויים ב-API

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

תיקוני באגים

  • נוספו חומרי בדיקה ל-SwipeToDismissBox ‏ (I9febc)

גרסה 1.0.0-alpha03

4 באוגוסט 2021

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

שינויים ב-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) מאפשר להגדיר אותו ל-14.dp באופן עקבי, בלי קשר לשאלה אם יש לצ'יפ סמל או לא (הערך הקודם היה 12.dp אם יש סמל ו-14.dp אם אין סמל) (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 שתומכת בעיצוב Material ל-Wear, הרחבה של Material Design למכשירים לבישים עם WearOS. גרסת האלפא הראשונה הזו כוללת יישומים מוקדמים ופונקציונליים של התכונות הבאות:

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

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

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

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

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