پوشیدن آهنگسازی

برنامه‌های Jetpack Compose را برای دستگاه‌های پوشیدنی با ارائه عملکردی برای پشتیبانی از دستگاه‌های پوشیدنی خاص، اندازه‌ها، اشکال و حرکات ناوبری بنویسید.
آخرین به روز رسانی انتشار پایدار کاندید را آزاد کنید نسخه بتا انتشار آلفا
13 نوامبر 2024 1.4.0 - - 1.5.0-alpha06

اعلام وابستگی ها

برای افزودن وابستگی به Wear، باید مخزن Google Maven را به پروژه خود اضافه کنید. برای اطلاعات بیشتر، مخزن Maven Google را بخوانید.

وابستگی‌های مصنوعات مورد نیاز خود را در فایل build.gradle برای برنامه یا ماژول خود اضافه کنید:

Groovy

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

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

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

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

Kotlin

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

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

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

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

برای اطلاعات بیشتر درباره وابستگی‌ها، به افزودن وابستگی‌های ساخت نگاه کنید.

بازخورد

بازخورد شما به بهتر شدن Jetpack کمک می کند. اگر مسائل جدیدی کشف کردید یا ایده هایی برای بهبود این کتابخانه دارید، به ما اطلاع دهید. لطفاً قبل از ایجاد کتابخانه جدید، به مسائل موجود در این کتابخانه نگاهی بیندازید. با کلیک کردن روی دکمه ستاره می توانید رای خود را به یک موضوع موجود اضافه کنید.

یک شماره جدید ایجاد کنید

برای اطلاعات بیشتر به مستندات ردیاب مشکل مراجعه کنید.

Wear Compose Material3 نسخه 1.0

نسخه 1.0.0-alpha29

13 نوامبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha29 منتشر شد. نسخه 1.0.0-alpha29 حاوی این commit ها است.

تغییرات API

  • ما TimeText برای ارائه محتوای پیش فرض که زمان را نشان می دهد به روز کرده ایم. ( ID23b3 )
  • ما ScrollInfoProvider را برای PagerState با حذف پارامتر orientation که دیگر مورد نیاز نیست، ساده کرده ایم. رفتار جدید این است که TimeText برای صفحه‌بندی افقی و عمودی در جای خود باقی بماند. ( I71767 )
  • LocalHapticFeedback اکنون زمانی که Vibrator API نشان می دهد که هاپتیک ها پشتیبانی می شوند، یک اجرای پیش فرض HapticFeedback ارائه می دهد. موارد زیر به HapticFeedbackType اضافه شده است - Confirm , ContextClick , GestureEnd , GestureThresholdActivate , Reject , SegmentFrequentTick , SegmentTick , ToggleOn , ToggleOff , VirtualKey . اجزای Wear Compose با قابلیت کلیک طولانی مانند Button ، IconButton ، TextButton و Card اکنون هنگام ارائه یک کنترلر با کلیک طولانی، لمسی LONG_PRESS را انجام می دهند. ( I5083d )

رفع اشکال

  • ما حرکت برای تأیید را به روز کرده ایم. ( I04bff )
  • ما حداقل وابستگی API را برای کتابخانه های Compose به 1.7.4 به روز کرده ایم. ( I88b46 )
  • حرکت جدیدی برای گفتگوی OpenOnPhone اضافه شد. ( I1e10a )
  • ما یک اشکال در LevelIndicator را برطرف کرده ایم به طوری که اکنون به درستی با سطح صفر نمایش داده می شود. ( Ie95a4 )
  • ما انیمیشن های HorizontalPageIndicator و VerticalPageIndicator را به روز کرده ایم. ( I5c8f3 )
  • ما یک انیمیشن کوچک به نقطه را به ArcProgressIndicator نامشخص اضافه کرده ایم. ( I9fd51 )

نسخه 1.0.0-alpha28

30 اکتبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha28 منتشر شد. نسخه 1.0.0-alpha28 حاوی این تعهدات است.

تغییرات API

  • ما یک تغییر قوس بر روی نشانگر پیشرفت دایره ای نامشخص ( I2efc1 ) اضافه کرده ایم.
  • ما ترکیب‌های ترکیبی AlertDialogContent و Dialog را که AlertDialog API را تشکیل می‌دهند، عمومی کرده‌ایم، به طوری که در صورت لزوم می‌توان سفارشی‌سازی را اضافه کرد (مانند سفارشی کردن انیمیشن AlertDialog در حالی که طرح‌بندی محتوای توصیه‌شده را حفظ می‌کند). علاوه بر این، ما پارامترهای Modifier و Color را به اعضای EdgeButton ، ConfirmButton و DismissButton در AlertDialogDefaults اضافه کرده‌ایم. ( I4eb71 )
  • ما API Placeholder PlaceholderDefaults.Shape به صورت زیر به‌روزرسانی کردیم: PlaceholderState.startPlaceholderAnimation به PlaceholderState.animatePlaceholder ، PlaceholderState.isShowContent به PlaceholderState.isHidden ، و PlaceholderDefaults.shape . نام پارامتر painter را در painterWithPlaceholderOverlayBackgroundBrush به originalPainter تغییر داد. نمایان بودن PlaceholderState.placeholderProgression را از عمومی به داخلی تغییر داد و نام آن را به placeholderShimmerProgression تغییر داد. ثابت‌های مدت زمان انیمیشن متغیرهایی را به PlaceholderDefaults اضافه کرد. ( Ie5a59 )
  • ما API EdgeButton به صورت زیر به‌روزرسانی کرده‌ایم: نام پارامتر روی ScreenScaffold از bottomButton به edgeButton تغییر دادیم. EdgeButtonSize به یک کلاس ارزش تبدیل کرد. ( Ieef15 )
  • ما نمایان بودن copy() را در کلاس‌های wear material3 Colors به ​​public تغییر داده‌ایم ( I0287f )

رفع اشکال

  • اضافه شدن حداقل مدت زمان انیمیشن برای IconToggleButton و TextToggleButton با کلیک ( Ieb333 )
  • حداقل مدت زمان اضافه شده در انیمیشن شکل IconButton و TextButton ( Iebcee )
  • وضعیت گزینه تکرار DatePicker اصلاح شد. ( I3587c )
  • حرکت برای گفتگوهای هشدار و تأیید اضافه شده است. ( I173b1 )

نسخه 1.0.0-alpha27

16 اکتبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha27 منتشر شد. نسخه 1.0.0-alpha27 حاوی این تعهدات است.

تغییرات API

  • ما ScreenScaffold و ScrollIndicator به دنبال تغییر نام Wear Compose Foundation LazyColumn به TransformingLazyColumn به روز کردیم. ( I0608b )
  • پارامتر preferredHeight EdgeButton به buttonSize تغییر نام داده است و مقدار آن را فقط می توان از بین 4 ثابت در کلاس ارزش EdgeButtonSize تازه معرفی شده انتخاب کرد. ( Icdd70 )
  • ما نام ListSubheader را به ListSubHeader تغییر داده‌ایم و مقادیر پیش‌فرض قابل دسترسی عمومی را برای ListHeader و ListSubHeader اضافه کرده‌ایم. ( I96730 )
  • ما مؤلفه‌های HorizontalPagerScaffold و VerticalPagerScaffold جدیدی را برای Wear اضافه کرده‌ایم که انیمیشن‌های جدید و هماهنگی بین متن زمان و مؤلفه‌های نشانگر صفحه را ارائه می‌دهند. ( Iff7d0 )
  • ما پشتیبانی چرخشی را به HorizontalPagerScaffold و VerticalPagerScaffold اضافه کرده‌ایم که به کاربران امکان می‌دهد با استفاده از دستگاه‌های ورودی چرخشی پیجرها را پیمایش کنند. ( I9770d )
  • ما تغییرات MotionScheme API را برای ساده کردن استفاده و بهبود ثبات ایجاد کرده ایم. توابع حافظه داخلی را حذف کرد و طرح‌های حرکت داخلی را به یک شیء همراه اختصاصی MotionScheme منتقل کرد. standardMotionScheme و expressiveMotionScheme را به استاندارد و رسا تغییر نام داد. ( I5fd45 )
  • ما پشتیبانی از یک طرح رنگ پویا بر اساس رنگ های سیستم را اضافه کرده ایم. ( I073e9 )
  • ما Stepper را به آخرین مشخصات UX به روز کرده ایم. ( I622bb )

رفع اشکال

  • ما تایپوگرافی و بالشتک های اجزای کارت را به روز کرده ایم. ( I3ae48 )
  • ما padding را در AlertDialog بین دکمه‌های تأیید/رد کردن و بقیه محتوا از 8dp به 12dp با توجه به مشخصات UX تغییر داده‌ایم ( Ie55f0 )
  • ما کدورت رنگ را برای مولفه Slider به روز کرده ایم. ( IDb383 )

نسخه 1.0.0-alpha26

2 اکتبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha26 منتشر شد. نسخه 1.0.0-alpha26 حاوی این تعهدات است.

تغییرات API

  • ما API و ظاهر HorizontalPageIndicator را به روز کرده ایم و VerticalPageIndicator برای استفاده با VerticalPager اضافه کرده ایم ( Ic9309 )
  • AlertDialog اکنون از قابلیت حذف دکمه پایین پیش‌فرض از تنوع پشته دکمه‌ها، برای طرح‌بندی‌های سفارشی که در آنها EdgeButton لازم نیست، پشتیبانی می‌کند. ( I34fa9 )
  • ما یک جزء SwipeToReveal برای Wear Material 3 ( Ic38b2 ) اضافه کرده ایم.
  • ما برای موارد نادری که صفحه فعلی از کشیدن انگشت برای رد کردن پشتیبانی نمی‌کند، در SwipeToReveal پشتیبانی از کشیدن انگشت دو طرفه اضافه کرده‌ایم. حالت پیش‌فرض همچنان تنها در کشیدن انگشت‌ها از راست به چپ است و توصیه می‌شود برای جلوگیری از تضاد با کشیدن انگشت برای رد کردن، به رفتار پیش‌فرض احترام بگذارید. ( Ifac04 )
  • ما پارامتر buttonHeight را EdgeButton به preferredHeight تغییر نام دادیم. ( I4fab3 )
  • نسخه Kotlin به 1.9 ( I1a14c ) به روز شده است.
  • ما OpenOnPhoneDialogDefaults.Icon را به OpenOnPhoneDialogDefaults.OpenOnPhoneIcon تغییر نام دادیم تا از درگیری با Icon جلوگیری کنیم ( I0f391 )
  • ما پشتیبانی از ScrollIndicator در LazyColumn اضافه کرده ایم. ( Ia546a )
  • ما مقادیر پیش فرض را برای TextToggleButton و IconToggleButton به روز کرده ایم. ( I7aaa9 )
  • ما Picker و PickerGroup API را ساده کرده ایم. ( شناسه 0653 )
  • ما CardDefaults.Shape و CardDefaults.Height را اضافه کرده‌ایم که (توکن‌ها) برای توسعه‌دهندگانی که از کتابخانه استفاده می‌کنند خصوصی بودند. ( I1594a , b/347649765 )
  • ما پارامتر پیشرفت را برای نشانگر پیشرفت دایره ای تقسیم بندی شده باینری به segmentValue تغییر نام داده ایم. ( Ib72d9 )
  • ما رنگ ها و طرح بندی اسلایدر را به روز کرده ایم. ( IC3eec )

رفع اشکال

  • ما انیمیشن نماد openOnPhone ( I66f85 ) را به روز کرده ایم.
  • ما اکنون از نمادهای Google Symbols در Slider , TimePicker و DatePicker استفاده می کنیم . ( I46c7c )
  • ما بالشتک ها را در Confirmation و OpenOnPhoneDialog به روز کرده ایم. ( Iaa82e )

نسخه 1.0.0-alpha25

18 سپتامبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha25 منتشر شد. نسخه 1.0.0-alpha25 حاوی این تعهدات است.

تغییرات API

  • ما یک نشانگر پیشرفت دایره ای نامشخص اضافه کرده ایم. ( I427a7 )
  • ما پشتیبانی برای سرریز پیشرفت (پیشرفت بیش از 100٪) را برای CircularProgressIndicator و SegmentedCircularProgressIndicator اضافه کرده‌ایم. وقتی پیشرفت از 1.0 بیشتر شد، با رنگ جدید overflowTrack نشان داده می شود. ( Iaaa3d )
  • دایره IconToggleButton و TextToggleButton اکنون از یک تنوع انیمیشن شکل جدید پشتیبانی می‌کنند که در آن اشکال مختلف حالت‌های علامت‌دار، بدون علامت و فشار داده شده را نشان می‌دهند. تغییر شکل متحرک قبلی برای حالت تازه فشار داده شده همچنان پشتیبانی می شود. ( I29f03 )
  • ما پشتیبانی از استفاده EdgeButton با Column را به دلیل نیاز به مشخص کردن ارتفاع EdgeButton به طور صریح در ScreenScaffold حذف کردیم. ( Ie353d )
  • ما پشتیبانی از Wear Compose LazyColumn با ScreenScaffold خود اضافه کرده ایم (و پیاده سازی ScrollInfoProvider را برای LazyColumnState اضافه کرده ایم). ( Ib8d29 )
  • ما LocalTextMaxLines ، LocalTextAlign ، LocalTextOverflow در یک ترکیب LocalTextConfiguration واحد ترکیب کرده‌ایم تا راه‌حلی مقیاس‌پذیرتر را در آینده ارائه کنیم. ( I5edbc )
  • ما arc-large را به عنوان مقیاس نوع اضافی اضافه کرده‌ایم که برای رشته‌های متنی سرصفحه کوتاه در بالا یا پایین صفحه، مانند همپوشانی‌های تأیید، رزرو شده است. ( I60e3e )
  • ما پیش‌فرض‌هایی را برای اندازه‌های آیکون بزرگ و فوق‌العاده توصیه شده و پد محتوا به دکمه اضافه کرده‌ایم. ( I84675 )

رفع اشکال

  • ما رنگ‌های IconButton و TextButton را به‌روزرسانی کرده‌ایم. ( I48324 )
  • ما اضافه بارهای دکمه پایه را برای هماهنگی با سایر اضافه بارها به صورت عمودی در مرکز قرار داده ایم. برای بازیابی رفتار قبلی، از Modifier.align از RowScope استفاده کنید. ( I66e57 )

نسخه 1.0.0-alpha24

4 سپتامبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha24 منتشر شد. نسخه 1.0.0-alpha24 حاوی این تعهدات است.

تغییرات API

  • ما یک طرح حرکت را به موضوع Material3 اضافه کرده ایم. این توسط اجزاء در سراسر کتابخانه برای اعمال مشخصات انیمیشن مانند فنر برای حرکت بیانی استفاده می شود. ( I54ff3 )
  • ما اجزای AppScaffold و ScreenScaffold را به کتابخانه Material3 اضافه کرده‌ایم که شامل عملکردی برای هماهنگ کردن لایه‌بندی و انتقال TimeText و ScrollIndicator است. AppScaffold سطح بالایی از اجزای داربست را ارائه می دهد که در بالای همه صفحه ها قرار می گیرند. به این ترتیب، افزودن TimeText به AppScaffold به آن اجازه می‌دهد هنگام کشیدن انگشت بین صفحه‌ها در جای خود باقی بماند. صفحه نمایش ها می توانند خود متن زمان را لغو یا پنهان کنند. ScreenScaffold شکافی را برای ScrollIndicator فراهم می کند و به طور خودکار نشانگر اسکرول را هنگام پیمایش متحرک می کند، از جمله تایم اوت برای پنهان کردن نشانگر اسکرول پس از عدم فعالیت. ( I047d6 )
  • ما ScrollIndicator با طراحی جدید Material3 اضافه کرده‌ایم. این یک اندازه انگشت شست ثابت بر اساس محتویات لیست اولیه دارد، تا از تغییرات اندازه در هنگام بارگذاری محتوای تنبل در لیست جلوگیری شود. ( IC228d )
  • ما API ScrollAway را طوری تغییر داده‌ایم که ScreenStage به جای کلاس enum یک کلاس مقدار باشد تا در صورت نیاز مراحل بعدی اضافه شود. ( I48c93 )
  • ما EdgeButton اضافه کرده‌ایم، یک دکمه متمایز مخصوص Wear با شکلی که از انحنای پایین صفحه پیروی می‌کند ( I16369 )
  • ما یک شکاف جدید به ScreenScaffold برای دکمه پایین (مانند EdgeButton ) اضافه کرده‌ایم که بسته به محتوای پیمایش نشان داده می‌شود و اندازه آن تغییر می‌کند ( I032eb )
  • ما Modifier.scrollTransform و Modifier.targetMorphingHeight را اضافه کرده‌ایم تا جلوه‌های حرکتی Material3 را به موارد در LazyColumn اضافه کنیم. ( Ie229a )
  • ما SegmentedCircularProgressIndicator به عنوان یک تغییر در CircularProgressIndicator اضافه کرده‌ایم. تنوع بخش‌بندی شده یا یک مقدار پیشرفت واحد را در تمام بخش‌ها نشان می‌دهد یا هر بخش را به‌صورت روشن/خاموش نشان می‌دهد. ( I6e059 )
  • ما LinearProgressIndicator به عنوان جایگزینی برای CircularProgressIndicator موجود اضافه کرده ایم. ( I89182 )
  • ما AlertDialog اضافه کرده‌ایم و طرح‌بندی‌هایی را برای ارائه درخواست‌های مهم به کاربر ارائه می‌کنیم. تغییرات برای یک جفت دکمه تأیید/رد کردن یا یک دکمه پایین (معمولاً EdgeButton) در زیر مجموعه ای از گزینه ها گنجانده شده است. هر دو نسخه دارای شکاف هایی برای نماد، عنوان و متن اضافی برای ارائه جزئیات بیشتر هستند. ( Ieb873 )
  • ما OpenOnPhoneDialog اضافه کرده‌ایم که باید برای نشان دادن عملکردی که در تلفن کاربر ادامه می‌یابد استفاده شود. OpenOnPhoneDialog پس از مهلت زمانی مشخص رد می شود. ( I978fd )
  • ما Confirmation اضافه کرده‌ایم، یک مؤلفه گفتگو که دارای شکاف‌هایی برای نماد و متن منحنی یا خطی است. تغییرات خاصی برای پیام های موفقیت/شکست ارائه شده است. تأییدیه‌ها به‌طور خودکار پس از مهلت زمانی رد می‌شوند. ( Ib43e8 )
  • ما یک پس‌زمینه به TimeText اضافه کرده‌ایم تا مشکلاتی را که محتوای اصلی و TimeText همپوشانی دارند و زمان را مبهم می‌کنند، کاهش دهیم. ( Ia11fd )
  • ما LevelIndicator اضافه کرده‌ایم که مقدار تنظیمی مانند ولوم را نشان می‌دهد و می‌تواند با مولفه Stepper موجود برای ساخت یک صفحه صدا استفاده شود. LevelIndicator شبیه ScrollIndicator است، اما در سمت مقابل صفحه نمایش داده می‌شود و به طور پیش‌فرض دارای پهنای حرکت گسترده‌تر و رنگ نشانگر متفاوت است. ( I8a4ac )
  • ما TimePicker با طرح‌بندی‌هایی برای ۲۴ ساعت (با یا بدون ثانیه)، یا زمان ۱۲ ساعت با انتخاب صبح/عصر اضافه کرده‌ایم. ( Ia5124 )
  • ما DatePicker با پیکربندی برای ترتیب ستون (به عنوان مثال روز-ماه-سال، ماه-روز-سال یا سال-ماه-روز) و حداقل/حداکثر تاریخ‌های اختیاری اضافه کرده‌ایم. ( IBF13b )
  • ما یک پارامتر وزن به تابع text TimeText اضافه کرده ایم. در مواردی که TimeText از بیش از یک عنصر متن تشکیل شده است، این امکان کنترل نحوه توزیع فضا را فراهم می کند. ( I36700 )
  • ما RadioButton و SplitRadioButton اضافه کرده‌ایم - این مؤلفه‌ها API قبلی را با ترکیب هر دو (Split) SelectableButton و کنترل رادیویی کودک ( If7ae8 ) ساده می‌کنند.
  • ما CheckboxButton و SplitCheckboxButton اضافه کرده‌ایم - این مؤلفه‌ها API قبلی را با ترکیب هر دو (Split) ToggleButton و کنترل Checkbox فرزند ( Ia8f70 ) ساده می‌کنند.
  • ما SwitchButton و SplitSwitchButton اضافه کرده‌ایم - این مؤلفه‌ها API قبلی را با ترکیب هر دو (Split)ToggleButton و کنترل سوئیچ فرزند ( I0d349 ) ساده می‌کنند.
  • ما مستندات AnimatedText را به‌روزرسانی کرده‌ایم تا رفتار بیش از حد را توضیح دهیم. ( Iff30a )
  • ما ButtonGroup اضافه کرده ایم تا 2 یا 3 دکمه را با هم ترکیب کنیم تا با فشار دادن دکمه ها یک انیمیشن هماهنگ تولید شود. ( Ie27db )
  • هنگامی که فشار داده می شود، انیمیشن شکل اختیاری را برای IconButton و TextButton اضافه کرده ایم. ( Iffca5 )
  • ما یک تنوع رنگ اضافی، FilledVariant ، به Button ، IconButton ، TextButton ، CompactButton و EdgeButton اضافه کرده‌ایم ( I65fc3 )
  • ما پارامتر forcedSize را به ImageWithScrimPainter اضافه کرده‌ایم، به طوری که پس‌زمینه‌های تصویر Button اکنون اندازه مؤلفه خود را به‌طور پیش‌فرض حفظ می‌کنند. تنظیم forcedSize = null به جای Painter.instrinsicSize استفاده می شود. ( IC57af )
  • ما کلیک طولانی را به دکمه ها اضافه کرده ایم ( Ib613d )
  • پشتیبانی از کلیک طولانی نیز به IconButton و TextButton اضافه شده است. ( I38891 )
  • پشتیبانی از کلیک طولانی به کارت ها اضافه شده است. ( I305d5 )
  • ما LocalTextMaxLines ، LocalTextAlign ، LocalTextOverflow به عنوان CompositionLocals اضافه کرده‌ایم و از آنها به عنوان پیش‌فرض پارامتر در Text استفاده کرده‌ایم. اکنون می‌توان از ترکیب‌بندی‌های محلی توسط مؤلفه‌هایی مانند CheckboxButton ، SwitchButton ، RadioButton برای پیاده‌سازی راهنمای UX استفاده کرد، اما در صورت لزوم، توسعه‌دهندگان می‌توانند این پارامترها را لغو کنند. ( Iab841 )
  • ما Placeholder اضافه کرده‌ایم تا به پوشاندن محتوای مؤلفه‌هایی مانند دکمه‌ها و کارت‌ها کمک کند تا زمانی که داده‌ها بارگیری شوند. ( I1a532 )
  • ما IconToggleButtonColors و TextToggleButtonColors برای جایگزینی ToggleButtonColors اضافه کرده‌ایم. ( Ie0bf1 )

رفع اشکال

  • ما Button ، FilledTonalButton ، OutlinedButton ، ChildButton ، CompactButton برای استفاده از CompositionLocals جدید LocalTextMaxLines ، LocalTextAlign ، LocalTextOverflow برای پیاده‌سازی راهنمای UX به‌روزرسانی کرده‌ایم - این پارامترها می‌توانند توسط توسعه‌دهندگان در صورت لزوم مستقیماً در Texte15 لغو شوند ( 7 )
  • ما عرض stroke پیش‌فرض LevelIndicator را به 6dp تغییر داده‌ایم تا آن را از ScrollIndicator که دارای عرض stroke 4dp است متمایز کنیم. ( If6f63 )
  • ما یک مشکل را در TimeText حل کرده‌ایم تا از زوایای جابجایی بزرگ‌تر پشتیبانی شود. ( Ie489f )
  • مشکلی در حین ترکیب مجدد EdgeButton برطرف شد. ( I4cdca )
  • طرح‌بندی‌های اصلاح شده دکمه‌های جابجایی تقسیم‌بندی شده هنگام ارائه محتوای سفارشی‌شده. ( Ia33d3 )
  • مقادیر کوچک پیشرفت را حداقل به عرض خط نشانگر پیشرفت گرد کرد. ( I3bd84 )

نسخه 1.0.0-alpha23

14 مه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha23 منتشر شد. نسخه 1.0.0-alpha23 حاوی این تعهدات است.

تغییرات API

  • ما APIهای ToggleButton و RadioButton به‌روزرسانی کرده‌ایم تا رنگ‌های غیرفعال را بتوان پیکربندی کرد. ( If13a7 )
  • ما یک CircularProgressIndicator جدید برای Material3 اضافه کرده ایم. ( Ib3bd7 )

رفع اشکال

  • ما اشکالی را برطرف کرده‌ایم که در آن دکمه‌های قابل انتخاب دوبار ضربه زدن را برای تغییر زمانی که قبلاً انتخاب شده بود اعلام می‌کردند. ( I7ed88 )

نسخه 1.0.0-alpha22

1 مه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha22 منتشر شد. نسخه 1.0.0-alpha22 حاوی این تعهدات است.

تغییرات API

  • ما Material3 ColorScheme به روز کرده ایم. ( I7b2b8 )
  • ما سوئیچ Material3 را به‌روزرسانی کرده‌ایم - و همچنین برخی از تغییرات رنگ، تیک اکنون با آنچه برای چک باکس استفاده می‌شود مطابقت دارد. ( Icac7b )

رفع اشکال

  • تمام دموهای یکپارچه سازی را برای استفاده از اصلاح کننده جدید rotaryScrollable به روز کنید. ( I25090 )

نسخه 1.0.0-alpha21

17 آوریل 2024

androidx.wear.compose:compose-material3:1.0.0-alpha21 منتشر شد. نسخه 1.0.0-alpha21 حاوی این تعهدات است.

  • این نسخه به دلیل یک مشکل فنی در نسخه قبلی که منجر به از دست رفتن jar های منبع شد، راه اندازی شد. هیچ تعهد جدیدی در این نسخه وجود ندارد.

نسخه 1.0.0-alpha20

3 آوریل 2024

androidx.wear.compose:compose-material3:1.0.0-alpha20 منتشر شد. نسخه 1.0.0-alpha20 حاوی این تعهدات است.

رفع اشکال

  • ما آلفاهای حالت فشرده و متمرکز ریپل را برای کنتراست تنظیم کرده ایم. ( I59f0a )
  • ما فاصله بین برچسب‌های اصلی و ثانویه را در Button ، ToggleButton و RadioButton ، به دنبال آخرین تغییرات در سبک‌های تایپوگرافی و ارتفاع خط اضافه کرده‌ایم. ( I2c0ba )

نسخه 1.0.0-alpha19

6 مارس 2024

androidx.wear.compose:compose-material3:1.0.0-alpha19 منتشر شد. نسخه 1.0.0-alpha19 حاوی این تعهدات است.

تغییرات API

  • ما TimeText به کتابخانه Wear Compose Material3 اضافه کرده ایم. این مؤلفه زمان فعلی (و وضعیت اضافی) را در بالای صفحه نمایش می دهد. API جدید و مختصر Material3 از تکرار بین محتوای خطی و منحنی جلوگیری می کند. ( I4d7c3 )
  • ما نام پارامترها را از onSelected به onSelect برای RadioButton به روز کرده ایم. ( I1a971 )
  • RadioButton و SplitRadioButton را توکن کنید و همچنین روش‌های موجود را برای کاهش میزان جستجوی CompositionLocal با افزودن نمونه‌های کش شده رنگ‌ها و ایجاد روش‌های RadioButtonColors و SplitRadioButtonColors اصلاح کنید. ( I02b33 )

نسخه 1.0.0-alpha18

21 فوریه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha18 منتشر شد. نسخه 1.0.0-alpha18 حاوی این commit ها است.

تغییرات API

  • ما الگوی پیش‌فرض را برای CardColors ، ToggleButtonColors و SplitToggleButtonColors با ایجاد نمونه‌های ذخیره‌سازی شده در داخل و کاهش استفاده از CompositionLocal بازسازی کرده‌ایم. ( If3fec )

نسخه 1.0.0-alpha17

7 فوریه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha17 منتشر شد. نسخه 1.0.0-alpha17 حاوی این commit ها است.

تغییرات API

  • ما دکمه API را برای استفاده از buttonColors به ​​طور پیش‌فرض به‌روزرسانی کرده‌ایم و filledButtonColors تکراری را حذف کرده‌ایم. ( I4fe3b )
  • ما الگوهای پیش فرض را برای ButtonColors ، IconButtonColors و TextButtonColors با ایجاد یک نمونه کش داخلی و کاهش استفاده از CompositionLocal بازسازی کرده ایم. ( I5f51c )
  • ما سربار rememberUpdatedState را در کلاس‌های رنگ خاص Component حذف کرده‌ایم و روش‌های دسترسی را در کلاس‌های رنگی به‌عنوان داخلی علامت‌گذاری کرده‌ایم. ( If6571 )

رفع اشکال

  • ما Modifier.minimumInteractiveComponentSize برای استفاده از Modifier.node به روز کرده ایم. ( Iba6b7 )

نسخه 1.0.0-alpha16

24 ژانویه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha16 منتشر شد. نسخه 1.0.0-alpha16 حاوی این commit ها است.

ویژگی های جدید

  • ما CompactButton اضافه کرده‌ایم که می‌تواند از همان رنگ‌های پر شده، پر شده و طرح‌ریزی شده مانند Button استفاده کند. ( I05df0 )

تغییرات API

  • ما RadioButton / SplitRadioButton به عنوان محفظه هایی برای کنترل های انتخاب، مانند کنترل رادیو، اضافه کرده ایم. این با ToggleButton موجود متفاوت است زیرا RadioButton قابل انتخاب است (و در یک گروه انتخاب عمل می کند) در حالی که ToggleButton قابل تغییر است (و مستقل است). ( I61275 )
  • برای سازگاری با کتابخانه Compose Material3، LocalContentAlpha از کتابخانه Wear Compose Material3 حذف می کنیم. ( I49a0a )
  • Wear Material و Wear Material3 که یک MutableInteractionSource را در API خود نشان می‌دهند، به‌روزرسانی شده‌اند تا اکنون یک MutableInteractionSource قابل تهی را که پیش‌فرض آن null است، در معرض نمایش بگذارد. هیچ تغییر معنایی در اینجا وجود ندارد: عبور از null به این معنی است که شما نمی خواهید MutableInteractionSource را بالا ببرید و در صورت نیاز در داخل کامپوننت ایجاد می شود. تغییر به null به برخی از مؤلفه‌ها اجازه می‌دهد تا هرگز یک MutableInteractionSource تخصیص ندهند، و به سایر مؤلفه‌ها اجازه می‌دهد فقط در صورت نیاز، نمونه‌ای را ایجاد کنند، که عملکرد این مؤلفه‌ها را بهبود می‌بخشد. اگر از MutableInteractionSource که به این مؤلفه ها منتقل می کنید استفاده نمی کنید، توصیه می شود به جای آن، null را ارسال کنید. همچنین توصیه می شود که تغییرات مشابهی را در اجزای خود ایجاد کنید. ( Ib90fc , b/298048146 )
  • API ریپل جدید را در کتابخانه های wear:compose-material و wear:compose-material3 اضافه می کند که جایگزین rememberRipple منسوخ شده است. همچنین یک CompositionLocal موقت، LocalUseFallbackRippleImplementation را اضافه می کند تا اجزای Material را به استفاده از APIهای منسوخ rememberRipple/RippleTheme برگرداند. این مورد در نسخه پایدار بعدی حذف می‌شود و فقط به عنوان کمکی موقت برای مهاجرت برای مواردی در نظر گرفته شده است که یک RippleTheme سفارشی ارائه می‌کنید. برای اطلاعات مهاجرت و اطلاعات بیشتر در زمینه این تغییر به developer.android.com مراجعه کنید. ( af92b21 )
  • ما پیشرفت های جزئی در api HorizontalPageIndicator و مستندات آن ایجاد کرده ایم. ( I60efc )
  • ما ColorScheme به‌روزرسانی کرده‌ایم که تغییر ناپذیر باشد، به‌روزرسانی‌های رنگی را کمتر کارآمد می‌کنیم، اما استفاده رایج‌تر از رنگ‌ها را کارآمدتر می‌کنیم. دلیل این تغییر این است که اکثر برنامه‌ها به‌روزرسانی رنگ‌های جداگانه را به عنوان یک مورد استفاده اصلی ندارند. این هنوز امکان پذیر است، اما بیش از قبل دوباره ترکیب می شود، به نوبه خود میزان اشتراک های حالت را از طریق همه کدهای مواد به طور قابل توجهی کاهش می دهیم و بر مقدار اولیه و هزینه زمان اجرا موارد استفاده استاندارد بیشتر تأثیر می گذارد. ( Ibc2d6 )
  • API های ToggleButton و SplitToggleButton به روز کرد تا امکان سفارشی سازی رنگ های غیرفعال را فراهم کند. علاوه بر این، نشانه های طراحی متریال اکنون برای مقادیر رنگ و تایپوگرافی استفاده می شود. ( If087c )
  • رنگ‌های پس‌زمینه تصویر دکمه‌ها را برای استفاده از نشانه‌های طراحی متریال به‌روزرسانی کرد. ( Iba215 )
  • ما مولفه‌های Checkbox ، Switch و RadioButton را با حذف کنترل کلیک تغییر داده‌ایم تا فقط نمایشگر باشند. انتظار می‌رود این مؤلفه‌ها در (Split)ToggleButton که کلیک را کنترل می‌کند، استفاده شوند، بنابراین مؤلفه‌ها اکنون به وضوح به‌عنوان فقط نمایشگر نشان داده می‌شوند (و برای استفاده مستقل در Wear در نظر گرفته نشده‌اند). ( I2322e )

رفع اشکال

  • ما توکن‌هایی را برای مقادیر حرکت مدت‌ها و کاهش‌ها در Wear Compose Material 3 اضافه کرده‌ایم. ( I437cd )
  • ما یک اشکال را در ToggleButton ، SplitToggleButton ، Checkbox ، Switch و RadioButton برطرف کرده‌ایم تا اعلامیه‌های دسترسی تکرار نشوند (قبلاً نقش‌های معنایی تکراری بودند). ( ICA281 )
  • برای بهبود عملکرد، لایه materialcore را برای CompactButton حذف کرده‌ایم. ( 7902858 )

نسخه 1.0.0-alpha15

15 نوامبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha15 منتشر شد. نسخه 1.0.0-alpha15 حاوی این commit ها است.

تغییرات API

  • ما سطح پایه را SwipeToDismissBox به BasicSwipeToDismissBox تغییر نام دادیم. این تمایز بین مؤلفه سطح پایه و SwipeToDismissBox سطح Material3 را واضح تر می کند. دومی رنگ‌ها را از MaterialTheme می‌کشد تا در اسکریم‌ها استفاده شود و اجرای باقی‌مانده را به BasicSwipeToDismissBox محول می‌کند. ( Ibecfc )

رفع اشکال

  • برای بهبود عملکرد، لایه ماده هسته را برای دکمه Material3 حذف کرده‌ایم. ( I55555 )

نسخه 1.0.0-alpha14

18 اکتبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha14 منتشر شد. نسخه 1.0.0-alpha14 حاوی این commit ها است.

تغییرات API

  • ما پارامتر indicatorStyle از Material3 HorizontalPageIndicator حذف کرده ایم - در عوض، از شکل صفحه نمایش دستگاه (خطی یا گرد) پیروی می کند. ( I83728 )
  • با افزودن یک کلاس جدید SplitToggleButtonColors ، رنگ‌های SplitToggleButton را از ToggleButton جدا کرده‌ایم. ( I78bee )

نسخه 1.0.0-alpha13

4 اکتبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha13 منتشر شد. نسخه 1.0.0-alpha13 حاوی این commit ها است.

تغییرات API

  • ما یک قسمت زیرنویس اختیاری به TitleCard اضافه کرده‌ایم. ( Ifc45a )
  • ما نشانه های رنگی Material Design را برای TextButton اضافه کرده ایم. ( I769dc )

نسخه 1.0.0-alpha12

20 سپتامبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha12 منتشر شد. نسخه 1.0.0-alpha12 حاوی این commit ها است.

تغییرات API

  • ما IconButton برای استفاده از نشانه های طراحی متریال به روز کرده ایم. ( I3f137 )
  • ما IconToggleButton برای استفاده از نشانه های طراحی متریال به روز کرده ایم. ( I7d263 )
  • ما سازنده‌های CheckboxColors ، RadioButtonColors ، SwitchColors را عمومی کرده‌ایم. ( I82b73 )

نسخه 1.0.0-alpha11

6 سپتامبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha11 منتشر شد. نسخه 1.0.0-alpha11 حاوی این commit ها است.

رفع اشکال

  • ما تایپوگرافی کارت های Material3 را به TitleMedium به روز کردیم. ( I597bd )
  • ما تایپوگرافی و تراز را برای Material3 ListHeader و ListSubheader خود به روز کرده ایم. ( IB5ceb )

نسخه 1.0.0-alpha10

23 آگوست 2023

androidx.wear.compose:compose-material3:1.0.0-alpha10 منتشر شد. نسخه 1.0.0-alpha10 حاوی این commit ها است.

ویژگی های جدید

  • HorizontalPageIndicator در کتابخانه Wear Material3 اضافه کنید. ( Ifee99 )

تغییرات API

  • برای استفاده از توکن های طراحی Material3، کد دکمه ها را به روز کنید. ( I92fe4 )
  • اعلان Wear Material 3 Stepper و Slider به عنوان آزمایشی به عنوان جزئیات رابط کاربری هنوز در حال نهایی شدن است. ( I84d54 )
  • اندازه‌های ExtraSmall را از TextButton و TextToggleButton دور حذف کرده‌ایم زیرا آن اندازه فقط برای IconButton اعمال می‌شود. ( IBC7d5 )

رفع اشکال

  • ما راهنمای تایپوگرافی TextToggleButton را برای استفاده از LabelLarge برای LargeButtonSize ( Ib10fa ) به روز کرده ایم.
  • ما راهنمای تایپوگرافی را برای TextButton به روز کرده ایم تا از LabelLarge برای LargeButtonSize استفاده کنیم ( I8f3a7 )
  • ما حداقل هدف لمسی کارت را 48dp برای دسترسی تنظیم کرده ایم. ( Ieb9b1 )
  • افزودن AppCard با نسخه نمایشی تصویر، حذف AppCard با نسخه نمایشی پس زمینه ( Id735f )
  • رفع اشکال در دکمه های گرد که در آن اصلاح کننده ها به درستی زنجیر نشده بودند. ( I5e162 )

نسخه 1.0.0-alpha09

9 آگوست 2023

androidx.wear.compose:compose-material3:1.0.0-alpha09 منتشر شد. نسخه 1.0.0-alpha09 حاوی این commit ها است.

ویژگی های جدید

  • ما ToggleButton برای material3 اضافه کرده‌ایم ( I6bed6 )

تغییرات API

  • حاشیه‌نویسی FloatRange را به‌عنوان محدودیت‌های API، که قبلاً در نظرات بیان شده بود، روشن کرده‌ایم. ( ICB401 )
  • ما تایپوگرافی Wear Material3 را برای رعایت آخرین دستورالعمل های Material3 به روز کرده ایم. ( I1bad6 )

رفع اشکال

  • ما رنگ‌های Button ، IconButton و TextButton مطابق با طراحی Material3 به‌روزرسانی کرده‌ایم. ( Ib2495 )
  • ما نمایان بودن تیک چک باکس را در حالت‌های غیرفعال ثابت کرده‌ایم. ( IB25bf )

نسخه 1.0.0-alpha08

26 جولای 2023

androidx.wear.compose:compose-material3:1.0.0-alpha08 منتشر شد. نسخه 1.0.0-alpha08 حاوی این commit ها است.

ویژگی های جدید

  • ما کنترل های انتخاب زیر را برای Material3 - Switch ، Checkbox ، RadioButton اضافه کرده ایم. ( Ib918c )
  • ما IconToggleButton و TextToggleButton به Material3 اضافه کرده‌ایم، یک دکمه جابجایی دایره‌ای با یک شکاف برای نماد و متن به ترتیب. برای اندازه‌های مختلف ToggleButton ، توصیه می‌کنیم از Modifier.touchTargetAwareSize با اندازه‌های ارائه‌شده در دکمه‌های جابجایی مربوطه استفاده کنید. ( I9f015 )
  • ما ListHeader و ListSubheader به اجزای Material3 خود اضافه کرده ایم. ( ایبایفه )
  • ما Material3 SwipeToDismissBox اضافه کرده‌ایم که بنیاد جدید را SwipeToDismissBox می‌نامد و مقادیر رنگی پیش‌فرض را از موضوع آن ارائه می‌کند. ( I275fb )
  • ما Material3 InlineSlider به Wear Compose اضافه کرده‌ایم. این به کاربران امکان می دهد از طیف وسیعی از مقادیر انتخاب کنند. محدوده انتخاب‌ها به‌عنوان نواری بین حداقل و حداکثر مقادیر محدوده نشان داده می‌شود که کاربران می‌توانند یک مقدار واحد را انتخاب کنند. InlineSlider برای تنظیم تنظیماتی مانند صدا یا روشنایی ایده آل است. ( I7085f )

تغییرات API

  • ما تم Shapes in Wear Material 3 را به‌روزرسانی کرده‌ایم تا از RoundedCornerShape به جای Shape استفاده کنیم. ( Idb133 )
  • ما ثابت‌های ارتفاع را برای Button عمومی کرده‌ایم ( Idbfde )
  • فایل های API به روز شده برای حاشیه نویسی حذف سازگاری ( I8e87a , b/287516207 )
  • ما InlineSliderColors در Wear Compose Material 3 به‌روزرسانی کرده‌ایم تا ویژگی‌های سازنده عمومی و عمومی داشته باشد. ( I6b632 )
  • ما تمام کلاس‌های رنگ را در Wear Compose Material 3 به‌روزرسانی کرده‌ایم تا سازنده‌های عمومی و ویژگی‌های عمومی داشته باشیم. ( I17702 )
  • ما ثابت های لایه افقی و عمودی دکمه را عمومی کرده ایم. ( Ieeaf7 )

رفع اشکال

  • دکمه اکنون ارتفاع خود را تنظیم می‌کند تا محتوایی را که به دلیل فونت‌های بزرگ برای دسترسی افزایش یافته است، در صورت لزوم تنظیم کند ( Iaf302 )
  • ما تعدادی دمو دکمه را برای رسیدگی به مشکلات دسترسی به روز کرده ایم. ( I61ce9 )
  • Stepper و InlineSlider اکنون از کلیک‌های مکرر در فشار طولانی پشتیبانی می‌کنند تا بتوانید با نگه داشتن دکمه‌های + یا - به سرعت مقدار Stepper و InlineSlider را افزایش/کاهش دهید ( I27359 )

نسخه 1.0.0-alpha07

21 ژوئن 2023

androidx.wear.compose:compose-material3:1.0.0-alpha07 منتشر شد. نسخه 1.0.0-alpha07 حاوی این commit ها است.

ویژگی های جدید

  • ما جزء Stepper را به کتابخانه Compose for Wear OS Material 3 خود اضافه کرده ایم. این شبیه به نسخه قبلی Material است، اما به دنبال بازخورد توسعه‌دهندگان، به‌طور پیش‌فرض معنای محدوده را حذف نمی‌کند. ما Modifier.rangeSemantics مواردی را که به معنای محدوده مورد نیاز است ارائه می کنیم. ( IC39fd )
  • ما curvedText به کتابخانه Compose for Wear OS Material 3 خود اضافه کرده‌ایم. ( Ia8ae3 )

رفع اشکال

  • ما wear.compose.foundation به‌روزرسانی کرده‌ایم تا وابستگی API مربوط به wear.compose.material3 باشد ( I72004 , b/285404743 )

نسخه 1.0.0-alpha06

7 ژوئن 2023

androidx.wear.compose:compose-material3:1.0.0-alpha06 منتشر شد. نسخه 1.0.0-alpha06 حاوی این commit ها است.

رفع اشکال

  • ما TextButton برای استفاده از تابع پسوند toDisabledColor برای صحیح مقادیر آلفای غیرفعال شده به روز کرده ایم. ( I814c8 )

نسخه 1.0.0-alpha05

24 مه 2023

androidx.wear.compose:compose-material3:1.0.0-alpha05 منتشر شد. نسخه 1.0.0-alpha05 حاوی این commit ها است.

ویژگی های جدید

  • ما TextButton به Material3 اضافه کرده‌ایم، یک دکمه دایره‌ای با یک شکاف برای متن. برای اندازه های مختلف TextButton ، توصیه می کنیم از Modifier.touchTargetAwareSize و ExtraSmallButtonSize ، SmallButtonSize ، DefaultButtonSize و LargeButtonSizeIcon ارائه شده در TextButtonDefaults استفاده کنید. TextButton پیش‌فرض هیچ حاشیه و پس‌زمینه شفافی برای اقدامات با تاکید کم ندارد. برای اقداماتی که نیاز به تاکید زیاد دارند، از filledTextButtonColors استفاده کنید. برای تاکید متوسط، که TextButton مشخص شده است، مرز را روی ButtonDefaults.outlinedButtonBorder تنظیم کنید. برای حد وسط بین خطوط مشخص و پر شده، از filledTonalTextButtonColors استفاده کنید. ( I667e4 )
  • ما Card ، OutlinedCard ، AppCard و TitleCard به کتابخانه Wear Compose Material3 اضافه کرده‌ایم. AppCard و TitleCard همچنین می‌توانند با استفاده از CardDefaults.outlinedCardColors و CardDefaults.outlinedCardBorder ظاهر مشخصی داشته باشند ( I80e72 )

تغییرات API

  • ما پارامتر برچسب Button را به انتها منتقل کرده ایم تا از نحو لامبدا انتهایی پشتیبانی کند و پارامتر نقش را حذف کرده ایم (زیرا می توان با استفاده از Modifier.semantics این را نادیده گرفت). سازنده های ButtonColors اکنون عمومی هستند. ( Ie1b6d )

نسخه 1.0.0-alpha04

10 مه 2023

androidx.wear.compose:compose-material3:1.0.0-alpha04 منتشر شد. نسخه 1.0.0-alpha04 حاوی این commit ها است.

ویژگی های جدید

  • ما IconButton به Material3 اضافه کرده‌ایم، یک دکمه دایره‌ای با یک شکاف برای نماد/تصویر. چهار تغییر وجود دارد: IconButton ، FilledIconButton ، FilledTonalIconButton و OutlinedIconButton . برای اندازه های مختلف IconButton ، توصیه می کنیم از Modifier.touchTargetAwareSize و ExtraSmallButtonSize ، SmallButtonSize ، DefaultButtonSize و LargeButtonSizeIcon ارائه شده در IconButtonDefaults استفاده کنید. ما همچنین IconButtonDefaults.iconSizeFor را برای تعیین اندازه نماد توصیه شده برای اندازه دکمه مشخص ارائه می دهیم. ( I721d4 )

نسخه 1.0.0-alpha03

19 آوریل 2023

androidx.wear.compose:compose-material3:1.0.0-alpha03 منتشر شد. نسخه 1.0.0-alpha03 حاوی این commit ها است.

تغییرات API

  • ما مولفه Material 3 Button را اضافه کرده‌ایم - این دکمه استادیوم شکل ما است و قبلاً Chip در کتابخانه Wear Compose Material نامیده می‌شد (برای سازگاری با کتابخانه Compose Material 3 به Button تغییر نام داده است). دکمه پیش‌فرض دارای پس‌زمینه پر شده است و تغییرات دکمه‌ای برای FilledTonal (پس‌زمینه خاموش)، Outlined (شفاف با حاشیه نازک) و Child (پس‌زمینه شفاف و بدون حاشیه، برای اقدامات تکمیلی با کمترین میزان برجستگی استفاده می‌شود) وجود دارد. دکمه‌های گرد برای آیکون ساده و محتوای متنی در نسخه بعدی دنبال خواهند شد. ( Ia6942 )

نسخه 1.0.0-alpha02

5 آوریل 2023

androidx.wear.compose:compose-material3:1.0.0-alpha02 منتشر شد. نسخه 1.0.0-alpha02 حاوی این commit ها است.

رفع اشکال

  • ما یک DefaultTextStyle به Wear Compose Material 3 اضافه کرده‌ایم که PlatformTextStyle.includeFontPadding را به‌طور پیش‌فرض به true (تنظیم فعلی) می‌دهد. این به ما این امکان را می‌دهد که در آینده خاموش کردن پد فونت را به‌طور پیش‌فرض با کتابخانه‌های Compose همگام‌سازی کنیم ( برای پس‌زمینه به رفع پد فونت در Compose مراجعه کنید). ( I7e461 )

نسخه 1.0.0-alpha01

22 مارس 2023

androidx.wear.compose:compose-material3:1.0.0-alpha01 منتشر شد. نسخه 1.0.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • Material 3 تکامل بعدی متریال دیزاین است و شامل تم به روز شده و اجزای بازطراحی شده است. Material 3 on Wear Compose طوری طراحی شده است که با کتابخانه Material 3 Compose در Android منسجم باشد. این اولین نسخه آلفا شامل اجرای اولیه و کاربردی موارد زیر است:

    • موضوع مواد - طرح رنگ، تایپوگرافی و اشکال را به طور پیوسته در اجزای کتابخانه پیکربندی می کند. تم Material3 رنگ‌هایی را اصلاح کرده است که کنتراست قابل دسترس را پشتیبانی می‌کنند. ( I84005 )
    • متن/آیکون - بلوک‌های ساختمان برای برنامه‌های Wear Compose ( I8e06a )
  • ما به توسعه Wear Material ( androidx.wear.compose:compose-material ) و Wear Material 3 ( androidx.wear.compose:compose-material3 ) به صورت موازی ادامه خواهیم داد. نسخه‌های بعدی Material3 مجموعه ویجت را گسترش می‌دهد تا سایر اجزای آشنا از Compose for Wear OS مانند دکمه‌ها، انتخاب‌کننده‌ها و لغزنده‌ها را در بر بگیرد.

  • کتابخانه‌های Wear Material و Wear Material 3 متقابلا انحصاری هستند و نباید در یک برنامه ترکیب شوند، در درجه اول به این دلیل که به مضامین مختلفی اشاره می‌کنند که منجر به تناقضات غیرمنتظره می‌شود.

Wear Compose نسخه 1.5

نسخه 1.5.0-alpha06

13 نوامبر 2024

androidx.wear.compose:compose-*:1.5.0-alpha06 منتشر شد. نسخه 1.5.0-alpha06 حاوی این commit ها است.

تغییرات API

  • ما ScrollInfoProvider را برای PagerState با حذف پارامتر orientation که دیگر مورد نیاز نیست، ساده کرده ایم. رفتار جدید این است که TimeText برای صفحه‌بندی افقی و عمودی در جای خود باقی بماند. ( I71767 )
  • TransformingLazyColumn در نسخه های قبلی معرفی شده بود. اکنون نام مستعار LazyColumn Wear را حذف می کنیم (که به TransformingLazyColumn ارسال می شد) به نفع نام جدید TransformingLazyColumn . همچنین ویژگی height TransformingLazyColumnVisibleItemInfo را حذف کرده‌ایم - لطفاً به‌جای آن از measuredHeight استفاده کنید. ( I0ea1e )
  • ما PagerDefaults.snapFlingBehavior snapAnimationSpec از Tween به یک Spring تغییر داده‌ایم. ( I10d02 , b/349781047 , b/303807950 )
  • ما LocalReduceMotion CompositionLocal به پایدار ارتقا داده ایم ( Ia6f32 )

رفع اشکال

  • ما Modifier.rotaryScrollable برای استفاده از focusTargetWithSemantics برای پشتیبانی معنایی بهتر در چرخش به روز کرده ایم. ( Ief0a0 )
  • ما حداقل وابستگی API را برای کتابخانه های Compose به 1.7.4 به روز کرده ایم. ( I88b46 )
  • ما شکل‌بندی عرض را در TransformingLazyColumn به‌عنوان راه‌حلی برای یک اشکال برش غیرفعال کرده‌ایم. ( I3dfb8 )
  • ما با TransformingLazyColumn ( Id7668 ) اشکالی را که باعث ناپدید شدن موارد پس از اسکرول می‌شد، برطرف کردیم.
  • ما LazyLayoutSemantics برای TransformingLazyColumn اضافه کرده ایم. ( Ia8f56 )

نسخه 1.5.0-alpha05

30 اکتبر 2024

androidx.wear.compose:compose-*:1.5.0-alpha05 منتشر شد. نسخه 1.5.0-alpha05 حاوی این commit ها است.

تغییرات 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 حاوی این commit ها است.

تغییرات API

  • ما برای موارد نادری که صفحه فعلی از کشیدن انگشت برای رد کردن پشتیبانی نمی‌کند، در SwipeToReveal پشتیبانی از کشیدن انگشت دو طرفه اضافه کرده‌ایم. . حالت پیش‌فرض همچنان تنها در کشیدن انگشت‌ها از راست به چپ است و توصیه می‌شود برای جلوگیری از تضاد با کشیدن انگشت برای رد کردن، به رفتار پیش‌فرض احترام بگذارید. ( Ifac04 )
  • ما LazyColumnState به‌روزرسانی کرده‌ایم تا canScrollForward و canScrollBackward لغو کنیم - وقتی اولین یا آخرین مورد دقیقاً در مرکز صفحه باشد پیمایش متوقف می‌شود. ( Ia77d7 )
  • ما مؤلفه‌های HorizontalPager و VerticalPager جدیدی اضافه کرده‌ایم که به مشکلات رایج، مانند مدیریت فوکوس و تعامل با کشیدن سیستم برای رد کردن مواردی که ممکن است در Wear رخ دهد، رسیدگی می‌کنند. ( I2902b )
  • ما پشتیبانی LazyColumn را اضافه کرده‌ایم تا key مشتری و contentType از طریق layoutItems نشان دهیم. ( I1bd9c )

رفع اشکال

  • ما انیمیشن‌های متن منحنی را با استفاده از پرچم‌های رنگ به‌روزرسانی کرده‌ایم تا روان‌تر شوند. ( I73a15 )
  • ما اسناد گفتگوی مواد را به‌روزرسانی کرده‌ایم تا نشان دهد که onDismissRequest پس از تنظیم پرچم نمایش روی نادرست فراخوانی نمی‌شود. ( Ifd8d6 )
  • ما یک اشکال را در انیمیشن Vignette در گفتگوی مواد ( 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 )

رفع اشکال

  • ما یک اشکال را برطرف کرده‌ایم تا زمانی که پرچم userScrollEnabled روی false تنظیم شده باشد، اسکرول چرخشی اکنون در ScalingLazyColumn غیرفعال است. ( I490ab , b/360295825 )
  • ما یک رفع اشکال برای پرداختن به پدهای عمودی غیرمنتظره در متن منحنی ایجاد کرده‌ایم. ارتفاع متن منحنی اکنون بیشتر با فضای واقعی استفاده شده توسط متن مطابقت دارد. لطفاً توجه داشته باشید که این احتمالاً تست های اسکرین شات را که شامل متن منحنی هستند ( Iaa6ef ) می کند.
  • ما یک رفع اشکال را به Dialog برگردانده‌ایم که در آن زمانی که showDialog روی نادرست تنظیم شده بود، پاسخ به تماس onDismissRequest فراخوانی شد، زیرا در برخی موارد باعث می‌شود که 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 را به عنوان بخشی از LazyColumn API جدید به LazyColumnScope اضافه کرده ایم. ( Ib4a57 )
  • ما اصلاح‌کننده‌های LazyColumn را اضافه کرده‌ایم تا از رفتارهای مقیاس‌بندی و شکل‌گیری پشتیبانی کنیم. ( Ie229a )
  • HierarchicalFocusCoordinator به پایدار ارتقا یافته است. ( I31035 )
  • ما پشتیبانی از فاصله حروف را به متن منحنی اضافه کرده ایم. ( I3c740 )
  • یک پارامتر rotationLocked به CurvedLayout.curvedComposable اضافه کرد تا چرخش اجزا را متوقف کند. ( I66898 )
  • API موقت LocalUseFallbackRippleImplementation از مواد سایش و سایش مواد3 حذف شده است ( I62282 )
  • WearDevices.SQUARE از پیش‌نمایش چندگانه @WearPreviewDevices حذف کرد ( I11c02 )

رفع اشکال

  • SwipeToReveal اکنون موارد آشکار شده را در قسمت قابل مشاهده صفحه نمایش قرار می دهد، این به زمانی کمک می کند که SwipeToReveal در یک لیست استفاده شود، بنابراین موارد همیشه قابل تعامل هستند و هرگز خارج از صفحه نمایش قرار نمی گیرند. ( I38929 )
  • اکنون SwipeToReveal پس از تکمیل animatedTo lastActionType را به None بازنشانی می‌کند. ( I59b03 )
  • اسناد را برای پارامتر جدید rotationLocked در curvedComposable بهبود بخشید. ( Ifbd57 )
  • خرابی هنگام عبور NaN به ScalingLazyColumnSnapFlingBehavior 's performFling رفع شد. ( IC13da )
  • رفع اشکال در اصلاح کننده اندازه طرح منحنی ( I0fedf )
  • ما برای فاصله حروف مشخص شده در 'sp' پشتیبانی اضافه کرده ایم. ( I9f6e3 )
  • ما یک اشکال در گفتگوی Material2 را برطرف کرده‌ایم که در آن هنگام نامرئی شدن گفتگو، پاسخ تماس onDismissRequest فراخوانی نمی‌شد ( I64656 )
  • تغییر نام LayoutCoordinates.introducesFrameOfReference به LayoutCoordinates.introducesMotionFrameOfReference برای انعکاس بهتر هدف آن. تغییر نام تابع مرتبط برای محاسبه مختصات بر اساس آن پرچم. ( I3a330 )

نسخه 1.4

نسخه 1.4.0

4 سپتامبر 2024

androidx.wear.compose:compose-*:1.4.0 منتشر شد. نسخه 1.4.0 حاوی این تعهدات است.

تغییرات مهم از 1.3.0

  • ScalingLazyColumn و Picker اکنون به طور پیش‌فرض از ورودی چرخشی پشتیبانی می‌کنند - توصیه می‌شود کنترل چرخشی صریح را حذف کنید و به رفتار سیستم پیش‌فرض موکول کنید. در صورت لزوم، از پارامتر rotaryScrollableBehavior برای پیکربندی رفتار اسکرول یا snap استفاده کنید - برای رفتار snap، توصیه می‌شود با استفاده از پارامتر 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 حاوی این commit ها است.

  • ما وابستگی های 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 for Wear OS نشان می دهد که این نسخه از کتابخانه کامل شده است و API قفل شده است (به جز مواردی که به عنوان آزمایشی علامت گذاری شده است). Wear Compose 1.4 شامل عملکرد جدید زیر است:

  • Modifier.rotaryScrollable اضافه کرده‌ایم، یک اصلاح‌کننده جدید که رویدادهای چرخشی را با ظروف قابل پیمایش متصل می‌کند و به کاربران امکان می‌دهد از طریق یک تاج یا یک قاب چرخان در دستگاه Wear OS خود پیمایش کنند. علاوه بر این، ScalingLazyColumn و Picker اکنون به طور پیش فرض از ورودی چرخشی پشتیبانی می کنند. از پارامتر rotaryScrollableBehavior برای پیکربندی رفتار اسکرول یا اسنپ استفاده کنید. برای رفتار snap، توصیه می‌شود که از طریق پارامتر flingBehavior و همچنین برای اسکرول لمسی، Snap را ارائه دهید.
  • 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 حاوی این commit ها است.

تغییرات API

  • ما تغییرات زیر را در API چرخشی جدید ایجاد کرده‌ایم: Modifier.rotary به Modifier.rotaryScrollable تغییر نام داد. رابط RotaryBehavior را به RotaryScrollableBehavior و تابع آن handleScrollEvent به performScroll تغییر نام داد. RotaryScrollableAdapter به RotaryScrollableLayoutInfoProvider تغییر نام داد و ویژگی scrollableState را حذف کرد. ( I0c8a6 )
  • ما تغییرات بیشتری در API چرخشی ایجاد کرده‌ایم: RotaryScrollableLayoutInfoProvider به RotarySnapLayoutInfoProvider تغییر نام داد (زیرا این ارائه‌دهنده فقط برای چرخش با snap مورد نیاز است). نوع پارامتر snapOffset را در RotaryScrollableDefaults.snapBehavior snapOffset از Int به Dp تغییر داد. ( Iddebe )
  • ما پارامتر clickInteractionSource را در SplitSelectableChip به containerInteractionSource تغییر نام دادیم. ( Ia8f84 )
  • ما نام پارامترهای بازگشت به تماس کلیک را برای 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 حاوی این commit ها است.

تغییرات API

  • Modifier.rotary اضافه کرده‌ایم، یک اصلاح‌کننده جدید که رویدادهای چرخشی را با محفظه‌های قابل پیمایش متصل می‌کند و به کاربران امکان می‌دهد از طریق یک تاج یا یک قاب چرخان در دستگاه Wear OS خود پیمایش کنند. علاوه بر این، ScalingLazyColumn و Picker اکنون به طور پیش‌فرض از ورودی چرخشی پشتیبانی می‌کنند، با اضافه‌بارهای جدید که شامل پارامتر rotaryBehavior برای تعیین پیکربندی اسکرول یا اسنپ است. اگر پارامتر rotaryBehavior روی snap تنظیم شده است، توصیه می‌شود برای پیمایش لمسی، Snap را از طریق پارامتر flingBehavior نیز ارائه دهید. ( I2ef6f )
  • منابع NestedScroll Drag and Fling با UserInput و SideEffect جایگزین می‌شوند تا با تعریف گسترده این منابع که اکنون شامل انیمیشن‌ها (اثر جانبی) و چرخ ماوس و صفحه کلید (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 حاوی این commit ها است.

رفع اشکال

  • ما یک پیش نویس داخلی از پشتیبانی چرخشی را به عنوان بخشی از تلاش بزرگتر برای انتقال رفتار روتاری به 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 حاوی این commit ها است.

تغییرات API

  • ما یک اضافه بار جدید برای ToggleChip و SplitToggleChip اضافه کرده ایم که به جای پارامتر toggleControl یک پارامتر selectionControl می گیرد. این باید با کنترل 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 حاوی این commit ها است.

تغییرات API

  • پوشش Modifier.inspectable منسوخ شده است. این API بیش از حد لازم برای اصلاح‌کننده شما باطل می‌شود، بنابراین استفاده از آن در حال حاضر ممنوع است. اگر می‌خواهند ویژگی‌های اصلاح‌کننده را در معرض ابزار قرار دهند، به توسعه‌دهندگان توصیه می‌شود که متد inspectableProperties() را روی ModifierNodeElement پیاده‌سازی کنند. ( IB3236 )

رفع اشکال

  • ما یک اشکال مستندات را برای حاشیه‌نویسی‌های WearPreview* برطرف کرده‌ایم. ( ID526d )

نسخه 1.4.0-alpha02

7 فوریه 2024

androidx.wear.compose:compose-*:1.4.0-alpha02 منتشر شد. نسخه 1.4.0-alpha02 حاوی این commit ها است.

رفع اشکال

  • ما یک اشکال را در Swipe-to-Reveal برطرف کرده‌ایم، که در آن می‌توان با شروع به کشیدن یک مورد دیگر، با یک اقدام متعهد در یک مورد تعامل (و لغو) کرد. ( Ide059 )
  • ما ListHeader برای پشتیبانی از تنظیمات ارتفاع به‌روزرسانی کرده‌ایم، زمانی که محتویات به ارتفاع اضافی برای قرار دادن اندازه‌های فونت بزرگ نیاز دارند. ( I7290c , b/251166127 )

نسخه 1.4.0-alpha01

24 ژانویه 2024

androidx.wear.compose:compose-*:1.4.0-alpha01 منتشر شد. نسخه 1.4.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • ما انیمیشن ورودی را برای انتقال درون برنامه ای به SwipeDismissableNavHost اضافه کرده ایم. ( cfeb79a )
  • اکنون هنگامی که صفحه ای برای اولین بار نمایش داده می شود، PositionIndicator به طور پیش فرض نشان داده می شود. این تغییر به منظور کمک به رعایت دستورالعمل‌های کیفیت پوشیدن معرفی شد. متأسفانه، به این معنی است که آزمایش‌های اسکرین‌شات باید در صفحه‌هایی که شامل PositionIndicator هستند، به‌روزرسانی شوند، زیرا PositionIndicator قبلاً نمایش داده نمی‌شد. ( 419cef7 )

تغییرات API

  • ما یک Ripple 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 قابل تهی را که پیش‌فرض آن null است، در معرض نمایش بگذارد. هیچ تغییر معنایی در اینجا وجود ندارد: عبور از null به این معنی است که شما نمی خواهید MutableInteractionSource را بالا ببرید و در صورت نیاز در داخل کامپوننت ایجاد می شود. تغییر به null به برخی از مؤلفه‌ها اجازه می‌دهد تا هرگز یک MutableInteractionSource تخصیص ندهند، و به سایر مؤلفه‌ها اجازه می‌دهد فقط در صورت نیاز، نمونه‌ای را ایجاد کنند، که عملکرد این مؤلفه‌ها را بهبود می‌بخشد. اگر از MutableInteractionSource که به این مؤلفه ها منتقل می کنید استفاده نمی کنید، توصیه می شود به جای آن، null را ارسال کنید. همچنین توصیه می شود که تغییرات مشابهی را در اجزای خود ایجاد کنید. ( f8fa920 )
  • ما rememberExpandableState برای ذخیره حالت قابل ارتقا به روز کرده ایم. این تضمین می کند که داده ها هنگام پیمایش به صفحه دیگری ذخیره می شوند و هنگام بازگشت به صفحه اصلی بازیابی می شوند. ( 5c80095 )

رفع اشکال

  • ما تنظیمات ReduceMotion را برای استفاده از شنونده آگاه از چرخه حیات به‌روزرسانی کرده‌ایم. ( 7c6b122 )
  • ما شنونده TouchExplorationStateProvider را به روز کرده ایم تا از چرخه حیات آگاه باشیم ( be28b01 )
  • برای بهبود عملکرد، لایه materialcore را برای CompactButton حذف کرده‌ایم ( 25db8e9 )
  • ما BasicSwipeToDismissBox برای جلوگیری از استثنائات ( b983739 ) نسبت به جبران‌های NaN قوی‌تر کرده‌ایم.
  • ما 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 حاوی این commit ها است.

رفع اشکال

  • ما یک اشکال را در Swipe-to-Reveal برطرف کرده‌ایم که در آن می‌توان با شروع به کشیدن یک مورد دیگر با یک عمل متعهد در یک مورد تعامل (و لغو) کرد. ( Ide059 )

نسخه 1.3.0

24 ژانویه 2024

androidx.wear.compose:compose-*:1.3.0 منتشر شد. نسخه 1.3.0 حاوی این commit ها است.

تغییرات مهم از 1.2.0

  • کلاس SwipeToDismissBoxState ، SwipeToDismissValue enumeration، و تابع برنامه افزودنی Modifier.edgeSwipeToDismiss اکنون هر کدام بخشی از بسته androidx.wear.compose.foundation هستند، به جای بسته androidx.wear.compose.material . این معماری به روز شده به شما امکان می دهد تا مدیریت ژست را مستقل از سایر ملاحظات طراحی پیاده سازی کنید. جریان کار طراحی متریال، مانند اعمال رنگ ها از یک موضوع پیکربندی شده، به طور جداگانه انجام می شود.
  • کلاس‌های SwipeToRevealCard و SwipeToRevealChip به شما کمک می‌کنند recommended swipe-to-reveal guidance پیاده‌سازی کنید. کلاس SwipeToRevealSample نحوه استفاده از این مؤلفه ها را نشان می دهد.
  • نسخه 1.3.0-alpha02 ما تغییری را ایجاد کرد که باعث می‌شود اشیاء Chip و ToggleChip برای پشتیبانی بهتر از مقیاس فونت انتخاب‌شده توسط کاربر، در ارتفاع رشد کنند. این می تواند باعث ایجاد برخی از برش ها شود. برای رفع این مشکل، شکل large MaterialTheme اکنون از شعاع گوشه بزرگ‌تری استفاده می‌کند (26 dp به جای 24 dp). اشیاء Chip و ToggleChip از این شعاع گوشه جدید برای جلوگیری از برش محتوا در گوشه‌های Chip و ToggleChip استفاده می‌کنند.

    • با توجه به ارتفاع پیش‌فرض 52 dp، اکثر Chips و ToggleChips بدون تغییر هستند. با این حال، اشیاء 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 حاوی این commit ها است.

رفع اشکال

  • ما شکل بزرگ 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 ، همراه با اجرای زیربنایی Swipe-to- BasicSwipeToDismissBox منتقل شده اند. این اجازه می‌دهد تا کنترل اشاره‌ای برای تند کشیدن برای رد کردن، مستقل از طراحی متریال، برای مثال از SwipeDismissableNavHost در androidx.wear.compose.navigation استفاده شود. SwipeToDismissBox از androidx.wear.compose.material همچنان برای استفاده با Material Design توصیه می‌شود، زیرا رنگ‌ها را از MaterialTheme می‌کشد، سپس اجرای باقی‌مانده را به BasicSwipeToDismissBox محول می‌کند.
  • SwipeDismissableNavHost اکنون از یک پارامتر userSwipeEnabled جدید پشتیبانی می‌کند تا بتوان کنترل کشیدن انگشت را برای صفحه‌هایی که نیازی به آن نیست، خاموش کرد.
  • BasicSwipeToDismissBox مدیریت تمرکز را با استفاده از HierarchicalFocusCoordinator بهبود داده است.
  • SwipeToReveal دارای SwipeToRevealCard و SwipeToRevealChip جدید در Material است که از دستورالعمل UX توصیه شده برای Card و Chip پیروی می کنند. همچنین برای عمل ثانویه پشتیبانی از لغو را دارد.
  • DefaultTextStyle اکنون padding فونت را خاموش می‌کند تا در سراسر پلتفرم Android سازگار باشد.
  • Chip و ToggleChip اکنون ارتفاع خود را تنظیم می‌کنند تا محتوایی را که به دلیل فونت‌های بزرگ برای دسترسی افزایش یافته است، در خود جای دهد.
  • PositionIndicator اکنون دارای مشخصات انیمیشن جداگانه برای انیمیشن های محو، محو شدن و تغییر موقعیت است. به دلایل عملکرد، توصیه می کنیم هنگام استفاده از لیست های قابل پیمایش، محو شدن و تغییر موقعیت غیرفعال شوند.
  • ExpandableStateMapping راه جدیدی را برای ایجاد ExpandableStates در مواقعی که نیاز به ایجاد آن‌ها در صورت تقاضا و نه لزوماً با دامنه @Composable است، ارائه می‌کند.
  • در صورتی که محتوا دیگر در حالت آماده نباشد، اکنون Placeholder امکان تنظیم مجدد را می دهد. همچنین، اکنون تنظیم کاهش حرکت برای جلوه درخشان و حرکت پاک کردن در Placeholder اعمال می‌شود.

مسائل شناخته شده

  • هنگامی که برای اولین بار یک صفحه نمایش داده می شود، PositionIndicator در ابتدا نشان داده نمی شود. ما قصد داریم در آلفای اولیه 1.4 تغییری ایجاد کنیم تا در ابتدا نمایش داده شود، اما بدون انیمیشن.

تغییرات API

  • ما سطح پایه را SwipeToDismissBox به BasicSwipeToDismissBox تغییر نام دادیم. این تمایز بین مؤلفه سطح پایه و سطح مواد SwipeToDismissBox را واضح تر می کند. دومی رنگ‌ها را از MaterialTheme می‌کشد تا در اسکریم‌ها استفاده شود و اجرای باقی‌مانده را به BasicSwipeToDismissBox محول می‌کند. ( Ibecfc )
  • ما rememberExpandableStateMapping به عنوان آزمایشی علامت‌گذاری کرده‌ایم و عملکرد expandableItem را بهبود بخشیده‌ایم. ( I5f6bc )
  • ما کلاس SwipeToRevealAction را در کارت SwipeToReveal Material و API های تراشه با یک API مبتنی بر شکاف با استفاده از SwipeToRevealPrimaryAction ، SwipeToRevealSecondaryAction و SwipeToRevealUndoAction Composables جایگزین کرده ایم. لطفاً برای نمونه هایی در مورد نحوه استفاده از 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 قبلی مستهجن شده و تماس های جدید را به طرف جدید ارسال کرده است. به دلایل عملکرد و برای قوام UX ، هنگامی که از PositionIndicator با لیست قابل پیمایش استفاده می شود ، توصیه می کنیم پرچم های showFadeInAnimation و showPositionAnimation خاموش کنید. اگر PositionIndicator به عنوان یک شاخص مستقل استفاده می شود ، به عنوان مثال برای تغییر حجم ، پس توصیه می کنیم هر 3 انیمیشن را روشن کنید. ( i44294 )
  • ما به دنبال مهاجرت عملکرد کشش به دیسمیس به wear.compose.foundation ، ما SwipeToDismissBoxState ، SwipeToDismissValue و edgeSwipeToDismiss کاهش داده ایم. لطفاً معادل های wear.compose.foundation را جایگزین کنید. ( IEE8C9 )

رفع اشکال

  • ما پروفایل های پایه برای Wear Foundation ، کتابخانه های مواد و ناوبری را به روز کرده ایم. ( IDB060 )
  • ما یک تغییر رفتاری را برای PositionIndicator معرفی شده در یک CL قبلی برگردانیم ، به گونه ای که هنگام نمایش یک صفحه نمایش ، PositionIndicator متحرک شد. ما قصد داریم در یک آلفای اولیه 1.4 تغییر مشابهی ایجاد کنیم ، به طوری که در ابتدا PositionIndicator نمایش داده می شود ، اما بدون هیچ انیمیشن. ( i41843 )
  • ما به برخی از مشکلات عملکرد در PositionIndicator پرداخته ایم. ( i1c654 ، b/302399827 )
  • ما عملکرد پیش فرض ارائه دهنده ارائه دهنده وضعیت اکتشاف Touch را بهینه کرده ایم تا به جای وضعیت مشتق شده به 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 قبلی مستهجن شده و تماس های جدید را به طرف جدید ارسال کرده است. به دلایل عملکرد و برای قوام UX ، هنگامی که از 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 را اضافه کرده ایم. EdgesWipetodismiss با SwipeToReveal . ( i95774 ، b/293444286 )
  • ما نمونه هایی را برای مواد SwipeToRevealChip و SwipeToRevealCard اضافه کرده ایم. ( IEB974 )
  • ما پروفایل های پایه را برای بنیاد آهنگسازی و کتابخانه های مواد به روز کرده ایم. ( 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 )
  • به روز شده سایش ابزار پیش نمایش را برای استفاده از کتابخانه androidx.wear.tooling.preview . ( IB036E )

رفع اشکال

  • رفع اشکال در دکمه های گرد که در آن اصلاح کننده ها به درستی زنجیر نشده بودند. ( i5e162 )

نسخه 1.3.0-alpha03

9 آگوست 2023

androidx.wear.compose:compose-*:1.3.0-alpha03 منتشر می شود. نسخه 1.3.0-alpha03 حاوی این commit ها است.

API تغییر می کند

  • ما دو ترکیب جدید را در مواد برای اجرای SwipeToReveal با کارت و تراشه اضافه کرده ایم. این ترکیبات از راهنمایی UX توصیه شده در مورد این مؤلفه پیروی می کنند و اجرای SwipeToReveal را با اجزای موجود در مواد سایش آسان تر می کنند. ( i7ec65 )
  • ما حاشیه نویسی FloatRange را به عنوان محدودیت های API روشن کرده ایم ، که قبلاً در نظرات بیان شده بود. ( ICB401 )

رفع اشکال

  • ما منطق پیمایش اولیه ScalingLazyColumn را در داخل onGloballyPositioned() جابجا کرده ایم. ( IC90F1 )
  • اکنون برای بهینه سازی تخصیص سکته مغزی drawWithCache در PositionIndicator ، ProgressIndicator و SelectionControls استفاده می کنیم. ( i5f225 ، b/288234617 )
  • ما نمایان بودن تیک چک باکس را در حالت‌های غیرفعال ثابت کرده‌ایم. ( IB25bf )
  • ما Placeholder به روز کرده ایم تا اجازه دهید مجدداً تنظیم مجدد محل را نشان دهد اگر محتوای دیگر در حالت آماده نباشد. ( IBD820 )
  • ما برخی از تست های Placeholder پوسته پوسته شده را انجام داده ایم ( IDB560 )

نسخه 1.3.0-alpha02

26 جولای 2023

androidx.wear.compose:compose-*:1.3.0-alpha02 منتشر می شود. نسخه 1.3.0-alpha02 حاوی این commit ها است.

API تغییر می کند

  • ما ExpandableStateMapping ، یک روش جدید برای تولید ExpandableStates را ارائه داده ایم ، برای مواردی که در آن نیاز به ایجاد تقاضا دارند ، نه لزوماً در یک دامنه @Composable ( IFF9E0 )
  • SwipeToDismissBox از androidx.wear.compose.material به androidx.wear.compose.foundation منتقل شده است. ( I275fb )
  • پرونده های API به روز شده برای حاشیه نویسی سرکوب سازگاری. ( i8e87a ، b/287516207 )
  • ما ثابت های ارتفاع را برای Chip ، CompactChip و ToggleChip Public ( IDBFDE ) ساخته ایم
  • ما بسته های افقی و عمودی را برای Chip و CompactChip عمومی درست کرده ایم. ( Ieeaf7 )
  • قابلیت های اضافه شده برای خاموش کردن دست زدن به کش رفتن در SwipeDismissableNavHost از طریق پارامتر جدید userSwipeEnabled . ( id2a0b ، b/230865655 )
  • ما کتابخانه ناوبری Wear Compose را برای استفاده از SwipeToDismissBox جدید از بنیاد Wear Compose به روز کرده ایم. ( i4ff8e )

رفع اشکال

  • ما یک اشکال Z مرتبه را برطرف کرده ایم که expandedItem بعد از کلیک بر روی رفتار یک دکمه هنگام داشتن دکمه ، محتوای صحیح را نشان نداد. ( i1899d ، b/289991514 )
  • بهبود تمرکز تمرکز SwipeToDismissBox (و از این رو SwipeDismissableNavHost ) با استفاده از HierarchicalFocusCoordinator ( I45362 ، B/277852486 )
  • ما در SwipeableV2 به حرکت در ژست رسیدیم. ( i89737 )
  • ما پروفایل های پایه را برای انتشار 1.2 خود نهایی کرده ایم. ( id5740 )
  • پس از مهاجرت SwipeToDismissBox به پایه و اساس ، اجرای Material SwipeToDismissBox اکنون به بنیاد پیش می رود و مقادیر رنگی پیش فرض را از موضوع خود تهیه می کند. ( IF8451 )
  • ما معنایی عنوان را به ListHeader اضافه کرده ایم. ( IC5420 )
  • Chip و ToggleChip اکنون در صورت لزوم ، ارتفاع خود را تنظیم می کنند تا محتوایی را که به دلیل فونت های بزرگ برای دسترسی به آن رشد کرده است ، در خود جای دهد. ( IAF302 )
  • رفع اشکال در نقش معنایی منطقه قابل حمل SplitToggleChip ، برای دسترسی. ( IEED3a )
  • تنظیم حرکت کاهش اکنون اثر لرزان را خاموش کرده و حرکت را از بین می برد. ( I91046 )
  • اکنون Stepper و InlineSlider از کلیک های مکرر روی مطبوعات طولانی پشتیبانی می کنند تا بتوانید با نگه داشتن دکمه های + یا - - به سرعت مقدار Stepper و InlineSlider را افزایش یا کاهش دهید. ( I27359 )

نسخه 1.3.0-alpha01

21 ژوئن 2023

androidx.wear.compose:compose-*:1.3.0-alpha01 منتشر شده است. نسخه 1.3.0-alpha01 حاوی این commit ها است.

رفع اشکال

  • همانطور که در 1.2.0-alpha07 و 1.2.0-alpha10 اعلام شده است ، اکنون ما در حال تغییر DefaultTextStyle هستیم تا Padding Font را خاموش کنیم تا در پلت فرم Android سازگار باشد. این موارد برخی از موارد قطع متن با اندازه های بزرگ قلم را برطرف می کند و همچنین ممکن است روی طرح های صفحه تأثیر بگذارد ، به طوری که باید آزمایشات تصویر به روز شود. به عنوان مثال ، ما متن را در اینجا می بینیم ( IC6A86 )
متن قطع شده با اندازه بزرگ فونت
شکل 1 : متن قطع شده.
  • دیگر هنگام خاموش شدن فونت وجود ندارد:
متن با اندازه قلم بزرگ قطع نشده است
شکل 2 : متن قطع نشده است.
  • ما wear.compose.foundation به روز کرده ایم wear.compose.material
  • ما یک اشکال در SwipeToDismissBox برطرف کرده ایم. کلیدهای پس زمینه و محتوا اکنون به بلوک یادآوری منتقل می شوند تا هنگام تغییر محتوا یا پس زمینه ، اصلاح کننده های جدید ایجاد شوند. ( IB876C ، B/280392104 )
  • ما TimeText به روز کرده ایم تا هنگام انتخاب قالب برای زمان 12 یا 24 ساعته از محلی استفاده کنیم. ( if4a3d )
  • ما ناسازگاری در پارامترهای contentScrimColor فرض SwipeToDismissBox را ثابت کرده ایم. ( i2d70f )
  • ما حرکت حرکت را در SwipeToReveal بهبود بخشیده ایم. ( I28FB7 )

مسائل شناخته شده

  • پشتیبانی از اندازه قلم با تنظیم کاربر یک نیاز دسترسی است. ما می دانیم که تراشه های چند لایه می توانند هنگام نمایش با اندازه های بزرگ با اندازه های بزرگ ، منجر به بریدن متن شوند ، بنابراین ما تراشه را در نسخه اولیه 1.3 آلفا به روز می کنیم تا در این موارد تنظیمات ارتفاع را انجام دهیم.

نسخه 1.2

نسخه 1.2.1

18 اکتبر 2023

androidx.wear.compose:compose-*:1.2.1 منتشر شده است. نسخه 1.2.1 حاوی این commit ها است.

رفع اشکال

  • رفع اشکال هنگامی که PositionIndicator از بین برود. ( 7a167f )

نسخه 1.2.0

9 آگوست 2023

androidx.wear.compose:compose-*:1.2.0 منتشر می شود. نسخه 1.2.0 حاوی این commit ها است.

تغییرات مهم از 1.1.0

نسخه 1.2.0-rc01

26 جولای 2023

androidx.wear.compose:compose-*:1.2.0-rc01 منتشر شده است. نسخه 1.2.0-rc01 حاوی این commit ها است.

رفع اشکال

  • ما پروفایل های پایه را برای نسخه 1.2 ما نهایی کرده ایم ( ID5740 )

نسخه 1.2.0-beta02

7 ژوئن 2023

androidx.wear.compose:compose-*:1.2.0-beta02 منتشر می شود. نسخه 1.2.0-beta02 شامل این تعهدات است.

ویژگی های جدید

  • ما متغیر جدید CompositionLocal LocalReduceMotion تجربی را اضافه کرده ایم که مقیاس بندی و محو شدن در ScalingLazyColumn غیرفعال می کند. ( i58024 )

رفع اشکال

  • ما پروفایل های پایه را برای بنیاد Wear Compose و کتابخانه های مواد ( 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 حاوی این تعهدات است.

آنچه در آهنگسازی برای پوشیدن سیستم عامل 1.2 است

نسخه 1.2-beta01 آهنگسازی برای سیستم عامل Wear نشان می دهد که این نسخه از کتابخانه کامل است و API قفل شده است (به جز جایی که به عنوان آزمایشی مشخص شده است). Wear Compose 1.2 شامل عملکرد جدید زیر است:

  • expandableItem و expandableItems دو مؤلفه جدید Foundation هستند که از گسترش موارد در یک ScalingLazyColumn پشتیبانی می کنند. برای یک مورد قابل ارتقاء ، مانند متن که در آن تعداد خطوط وجود دارد ، از expandableItem استفاده کنید. برای ساده کردن ایجاد دکمه ای که پس از گسترش محتوا فرو می ریزد ، برای گروهی از موارد قابل ارتقاء و expandableItems expandableButton استفاده کنید.
  • HierarchicalFocusCoordinator - این ترکیب آزمایشی باعث می شود که زیر درختان زیر ترکیب را به عنوان تمرکز فعال یا غیرفعال کنید.
  • Picker - API اکنون برای کنترل اینکه آیا انتخاب کننده برای پیمایش کاربر فعال است ، از userScrollEnabled استفاده می کند.
  • PickerGroup - یک ترکیب جدید برای دستیابی به چند انتخاب کننده با هم. این مرکز با استفاده از HierarchicalFocusCoordinator API بین انتخاب کنندگان تمرکز می کند و مرکز خودکار وسایل انتخابی را امکان پذیر می کند.
  • Placeholder - ما به روزرسانی هایی را برای انیمیشن های Shimmer و "پاک کردن" انجام داده ایم. اثر پاک کردن اکنون بلافاصله هنگام آماده شدن محتوا اعمال می شود.
  • ScalingLazyColumn - ما کلاسهای ScalingLazyColumn و مرتبط از androidx.wear.compose.material.ScalingLazyColumn to androidx.wear.compose.foundation.lazy.ScalingLazyColumn را مهاجرت کرده ایم. لطفاً برای استفاده از نسخه Foundation.Lazy به روز کنید.
  • SwipeToReveal ما پشتیبانی آزمایشی برای کش رفتن به یک رژیم به عنوان ابزاری برای دسترسی به اقدامات ثانویه ، تکمیل الگوی "مطبوعات طولانی" موجود را اضافه کرده ایم.
  • Stepper - اکنون دارای یک بار اضافه با یک پارامتر enableRangeSemantics اضافی برای تسهیل غیرفعال کردن معناشناسی دامنه پیش فرض است.
  • Previews - ما حاشیه نویسی های سفارشی زیر را برای پیش نمایش آهنگ سازی در صفحه های سایش اضافه کرده ایم: WearPreviewSmallRound پیش نمایش های این دستگاه را در یک دستگاه کوچک و گرد. WearPreviewLargeRound پیش نمایش ترکیب در یک دستگاه گرد بزرگ ؛ WearPreviewSquare پیش نمایش ترکیب در یک دستگاه مربع. همچنین ، حاشیه نویسی های زیر و چند منظوره: WearPreviewFontScales پیش نمایش ترکیبات موجود در دستگاه Wear با اندازه های مختلف فونت را نشان می دهد ، در حالی که WearPreviewDevices پیش نمایش ترکیبات موجود در دستگاه های مختلف را دارد.
  • ما یک DefaultTextStyle را برای پوشیدن پوشیدن که به طور پیش فرض PlatformTextStyle.includeFontPadding را به True اضافه کرده است اضافه کرده ایم (این تنظیم فعلی است). این به ما امکان می دهد تا به طور پیش فرض با کتابخانه های آهنگسازی در نسخه اولیه 1.3 آلفای همگام سازی کنید - برای کسب اطلاعات بیشتر به 1.2.0 -alpha10 مراجعه کنید.

ویژگی های جدید

  • ما هنگام روشن شدن تنظیمات reduction_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 به ترکیبات Action در SwipeToReveal اضافه کرده ایم ، که دسترسی به جبران هایی را که در آن اقدامات اضافی فاش می شود ، فراهم می کند. ( i3fd56 )

رفع اشکال

  • مسئله ای که ScalingLazyColumn در Wear API 33 پس از پرواز ( IC4599 ) گیر کرده بود ، رفع کرد
  • ما برخی از عملکردهای عملکرد را برای کاهش JANK در PositionIndicator انجام داده ایم. ( i35e92 )
  • ما یک اشکال را در تراشه و CompactChip برطرف کرده ایم که در آن نقش معنایی دیگر در Role.Button قرار نگرفته است. ( i93f91 ، b/277326264 )

مسائل شناخته شده

  • ما یک اشکال در استودیوی اندرویدی را شناسایی کرده ایم که باعث خرابی در ارائه پیش نمایش در هنگام حاشیه نویسی با wearpreviewdevice و wwearpreviewfontscales می شود - یک راه حل به زودی برای انتشار برنامه ریزی شده است. لطفاً توجه داشته باشید که دیگر حاشیه نویسی های پیش نمایش Wear همانطور که در Android Studio Giraffe 2022.3.1 و فراتر از آن در نظر گرفته شده است.

  • در نسخه 1.2.0 -alpha07 ما به طور DEFAULTTEXTSTYLE برای پوشیدن آهنگسازی اضافه کردیم ، و با حفظ مقدار موجود PlatformTextStyle.includefontpadding به عنوان درست - برای پس زمینه ، به Fix Font Font Padding در آهنگسازی مراجعه کنید. ما در حال تغییر 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 تغییر می کند

  • برای تنظیم عرض زاویه ای در DP ( I89A52 ) به API CurvedModifier به angularSizeDp اضافه کنید (I89A52)

رفع اشکال

  • ما مشکلات دسترسی ثابت را در نسخه های نمایشی Time Picker ( 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 به روز شده برای جلوگیری از بازپرداختهای اضافی هنگام حرکات دستی رنگ ها با استفاده از حالت. ( i5d319 )

نسخه 1.2.0-alpha07

22 مارس 2023

androidx.wear.compose:compose-*:1.2.0-alpha07 منتشر شده است. نسخه 1.2.0-alpha07 شامل این تعهدات است.

API تغییر می کند

  • ما اجزای مورد قابل ارتقاء (اضافه شده در 1.2.0-alpha06) را از مواد به بنیاد منتقل کرده ایم ، زیرا آنها هیچ اشاره ای معنی دار به MaterialTheme ندارند. ( IB0525 )

رفع اشکال

  • ما با اطمینان از اینکه PickerGroup به درستی تمرکز می کنند ، هنگامی که هیچ انتخابی تمرکز ندارد ، تصادف را که در یک صفحه با استفاده از PickerGroup رخ داده است ، برطرف کرده ایم. همچنین پشتیبانی از پیمایش RSB در نسخه های نمایشی انتخابی ما اضافه شد. ( IF8C19 )
  • ما انتقال گفتگو را بهبود بخشیده ایم - انتقال مقدمه اکنون برای مطابقت با انتقال Outro صاف تر است. ( IB5AF9 )
  • ما یک DefaultTextStyle را برای پوشیدن پوشیدن که به طور پیش فرض PlatformTextStyle.includeFontPadding را به True اضافه کرده است اضافه کرده ایم (این تنظیم فعلی است). این امر به ما امکان می دهد تا به طور پیش فرض با کتابخانه های آهنگسازی در آینده همگام سازی کنید - برای پس زمینه ، به ( Fix Fix Font Font in Compose ) مراجعه کنید. ( i2aee8 )
  • یک وابستگی پیش نمایش UpsideDownCake از طریق فعالیت-که برنامه های انتشار را به فروشگاه 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 )
  • ما حاشیه نویسی های سفارشی زیر را برای پیش نمایش ترکیبات روی صفحه های سایش اضافه کرده ایم: WearPreviewSmallRound پیش نمایش های سازنده در یک دستگاه کوچک و گرد. WearPreviewLargeRound پیش نمایش ترکیب در یک دستگاه گرد بزرگ ؛ WearPreviewSquare پیش نمایش ترکیب در یک دستگاه مربع. همچنین ، حاشیه نویسی های زیر و چند منظوره: WearPreviewFontScales پیش نمایش ترکیبات موجود در دستگاه Wear با اندازه های مختلف فونت را نشان می دهد ، در حالی که WearPreviewDevices پیش نمایش ترکیبات موجود در دستگاه های مختلف را دارد. برای استفاده از این پیش نمایش ها ، شما باید از جدیدترین استودیوی Android (Giraffe Canary 6) یا فراتر از آن استفاده کنید. لطفاً توجه داشته باشید که اگر این حاشیه نویسی ها متناسب با هدف شما نباشد ، هنوز می توان از پیش نمایش استفاده کرد و از طریق پارامترها از سفارشی های بیشتر پشتیبانی می کند. ( i397ff )
  • ما با توجه به کاربرد گسترده آن ، ما HierarchicalFocusCoordinator به عنوان تجربی مشخص کرده ایم که به عنوان نامزد در نظر گرفته می شود که به کتابخانه های اصلی آهنگسازی منتقل شود. ( i3a768 )

رفع اشکال

  • رفع اشکال در HierarchicalFocusCoordinator ، هنگامی که Lambda برای پارامتر focusEnabled تغییر کرد ، ما اکنون به درستی از یک مورد جدید استفاده می کنیم. ( ICB353 )
  • ما هنگام استفاده از رنگهای اولیه به عنوان پس زمینه در Button ، CompactButton ، Chip ، CompactChip و ToggleButton رنگ محتوای غیرفعال پیش فرض را به پس زمینه به روز کرده ایم. این تضاد برای دسترسی را بهبود می بخشد. ( i527cc )

نسخه 1.2.0-alpha05

22 فوریه 2023

androidx.wear.compose:compose-*:1.2.0-alpha05 منتشر شده است. نسخه 1.2.0-alpha05 شامل این تعهدات است.

API تغییر می کند

  • به روز شده PickerGroup API اجازه می دهد تا محدودیت های MIN را به صورت اختیاری پخش کنید. هنگامی که درست تنظیم شود ، حداقل محدودیت های منتقل شده از ترکیب والدین در PickerGroup مجاز خواهد بود. اگر به عنوان نادرست تنظیم شود ، PickerGroup حداقل محدودیت ها را مجدداً تنظیم می کند. ( i3e046 )
  • ما به منظور پشتیبانی از انیمیشن برنامه ای به گزینه خاص انتخاب کننده ( I6Fe67 ) ، animateScrollToOption به API انتخاب کرده ایم (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 Focus. این تمرکز بین انتخاب کننده های مختلف را کنترل می کند ، بر اساس پارامترها ، مرکز خودکار انتخاب را امکان پذیر می کند و به توسعه دهندگان این امکان را می دهد تا ضمن رسیدگی به رویدادهای گروه ، تمرکز بین انتخاب های مختلف را تغییر دهند. در حالت Talkback ، PickerGroup با انتقال تمرکز به انتخاب کننده انتخاب شده از گروه ، تمرکز Talkback را کنترل می کند. ( i60840 )

API تغییر می کند

  • ما به منظور تسهیل غیرفعال کردن معناشناسی دامنه پیش فرض ( IA61D4 ) ، ما یک بار اضافه بار به Stepper با یک پارامتر enableRangeSemantics اضافه کرده ایم (IA61D4)

رفع اشکال

  • اجازه دهید ScalingLazyColumn در یک صفحه پیمایش افقی توخالی شود ( IEC3F8 ، B/266555016 )
  • بهبود پاکسازی KDOC های استپ و تست های 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 و طبیعی تر است زیرا این یک مؤلفه مواد نظر نیست. این تغییر اکنون در آماده سازی برای یک کتابخانه جدید Material3 اتفاق می افتد ، که ما به موازات کتابخانه مادی موجود روی آن کار خواهیم کرد. ( I060E7 )

تغییرات زیر بخشی از مهاجرت ScalingLazyColumn از مواد به Foundation.Lazy است.

  • API های PositionIndicator ScalingLazyColumn Material Targeting مستهلک شده اند - لطفاً به بروزرسانی در Foundation.Lazy ScalingLazyColumn . علاوه بر این ، میدان anchorType به ScalingLazyListLayoutInfo اضافه شد. ( I29D95 )
  • ScalingLazyColumn به عنوان در بسته بندی مواد سازنده سایش ( I16D34 ) مشخص شده است
  • ما اصلاح کننده ScrollAway را به روز کرده ایم تا ScalingLazyListState ScalingLazyListState از Foundation.Lazy Wear استفاده کنیم. ( IFC42C )
  • ما API های گفتگو را به روز کرده ایم تا ScalingLazyListState از Foundation.Lazy استفاده کنیم و اضافه بار که از مواد ScalingLazyListState استفاده کرده است ( IC8960 )
  • ما API های انتخابی را به روز کرده ایم تا ScalingParams از Foundation.Lazy استفاده کنیم و اضافه بار را که از ScalingParams مواد استفاده می کردند ، کاهش داد. ( IDC3D8 )

رفع اشکال

  • ما یک اشکال را برطرف کرده ایم که باعث ایجاد مجدد غیر ضروری در ScalingLazyListState.centerItemIndex شده است با اطمینان از اینکه فقط وقتی مقدار تغییر می کند به روزرسانی ها را تحت فشار قرار می دهد ( IA9F38 )
  • ما عملکرد SwipeToDismissBox ( i3933b ) را بهبود بخشیده ایم
  • تست های معیار اضافه شده برای ScalingLazyColumn در بنیاد آهنگسازی Wear ( IE00F9 )
  • ما برخی از روشهای کلاسهای داخلی ScalingLazyColumn را در مواد به روز کرده ایم تا از معادل آنها از Foundation.Lazy ( I38AAB ) استفاده کنیم
  • ما برخی از مشکلات را در تست های انتخاب کننده برطرف کرده ایم و تست های بیشتری را برای بررسی پیمایش با افست اضافه کرده ایم ( i6ac34 )
  • ما به نمایشگاه های ادغام ScalingLazyColumn مهاجرت کردیم تا به پایه Foundation.Lazy بستگی ScalingLazyColumn باشیم.
  • ما پارامترهای fromDate/toDate اختیاری را به نسخه ی نمایشی DatePicker خود اضافه کرده ایم ( I961CD )

نسخه 1.2.0-alpha02

11 ژانویه 2023

androidx.wear.compose:compose-*:1.2.0-alpha02 منتشر می شود. نسخه 1.2.0-alpha02 شامل این تعهدات است.

API تغییر می کند

  • تست های UI Android Compose UI اکنون هنگام اجرای فریم ها برای رسیدن به بیکار (به عنوان مثال از طریق waitForIdle ) ، برای هر فریم پاس های چیدمان را برای هر فریم اجرا می کنند. این ممکن است بر تست هایی که بر فریم های انفرادی انیمیشن های طرح بندی ادعا می کنند ، تأثیر بگذارد. ( i8ea08 ، b/222093277 )
  • پارامتر minLines برای پوشیدن متن برای رفتار مداوم با BasicText اضافه می شود ( I24874 )
  • CompactChipTapTargetPadding علنی شده است به طوری که در مستندات ظاهر می شود ( IF1E70 ، B/234119038 )

رفع اشکال

  • غیرفعال کردن ساختهای Multiplatform برای بسته های wear.compose ( IAD3D7 )
  • رفع KDOCs برای scrollToOption ( i6f9a0 )
  • PlaceholderState.rememberPlaceholderState() به روز شده برای استفاده از rememberUpdatedState برای اینکه دولت در صورت Lambda onContentReady به روز شود. ( I02635 ، B/260343754 )
  • ما با استفاده از استراتژی جدید آهنگسازی که به Modifier.graphicsLayer اضافه شده است ، یک مسئله تکان دهنده متنی را که در مؤلفه Picker مشاهده می شود ، برطرف کرده ایم. ( 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 حاوی این commit ها است.

ویژگی های جدید

  • ما عملکردهای نگهدارنده محل آزمایش را به روز کرده ایم تا هنگام آماده شدن محتوا به جای اینکه منتظر شروع حلقه انیمیشن بعدی باشد ، بلافاصله اثر "پاک کردن" اعمال می شود. ما همچنین به روزرسانی هایی را در مورد Shimmer و پاک کردن انیمیشن ها انجام داده ایم. ( i5a7f4 )

API تغییر می کند

  • ما یک ترکیب HierarchicalFocusCoordinator را اضافه کرده ایم تا بتوانیم زیر درختان زیر ترکیب را به عنوان فوکوس فعال یا غیرفعال فعال کنیم. ( i827cb )
  • ما یک ویژگی جدید برای غلبه بر نقش معنایی برای ToggleButton اضافه کرده ایم. ( I67132 )
  • ما TimeTextDefaults.TimeFormat12Hours به روز کرده ایم تا AM/PM را در TimeText حذف کنیم. این مقدار پیش فرض پارامترهای timeSource را در API TimeText تغییر می دهد. ( i1eb7f )
  • ما API Picker را برای بهبود دسترسی به صفحه نمایش های دارای چند گلیکر گسترش داده ایم. برای کنترل اینکه آیا انتخاب کننده برای پیمایش کاربر فعال است ، یک userScrollEnabled جدید وجود دارد. ( i3c3aa )

رفع اشکال

  • ما عرض پیش فرض مرز را برای یک OutlinedButton/OutlinedCompactButton از 2.DP به 1.dp تغییر داده ایم تا مشخصات UX نهایی را مطابقت دهد. ( ICF84D )
  • به منظور کاهش تأثیر اولین مورد اضافه شده به یک ScalingLazyColumn خالی که برای حرکت در جای خود ظاهر می شود ، ما در صورت خالی بودن محتویات ، یک autoCentering topPadding تخمین زده شده اضافه کرده ایم. این تغییر با فرض یک مورد اولیه ارتفاع 0.dp ، میزان بالشتک مورد نیاز را محاسبه می کند. برای ScalingLazyListAnchorType.ItemStart این بالشتک صحیح را محاسبه می کند ، برای ScalingLazyListAnchorType.ItemCenter این محاسبه نادرست خواهد بود زیرا ارتفاع موارد برای اندازه گیری صحیح محتویات و در نتیجه یک پیمایش کوچک بر اساس ارتفاع واقعی مورد نیاز است (( i239a4 )
  • ما Scrim پس زمینه اعمال شده برای انیمیشن SwipeToDismiss را برای مطابقت با پلت فرم Wear به روز کرده ایم. ( i9003e )
  • ما برای استفاده از خطاهای صفر ، دست زدن به PositionIndicator از LazyListState و ScalingLazyListState را برای لیست موارد اندازه 0 ثابت کرده ایم. ( IC28DD )

نسخه 1.1

نسخه 1.1.2

8 فوریه 2023

androidx.wear.compose:compose-foundation:1.1.2 ، androidx.wear.compose:compose-material:1.1.2 ، و androidx.wear.compose:compose-navigation:1.1.2 منتشر می شود. نسخه 1.1.2 شامل این تعهدات است.

رفع اشکال

  • ما یک اشکال را برطرف کرده ایم که باعث ایجاد مجدد غیر ضروری در ScalingLazyListState.centerItemIndex شده است با اطمینان از اینکه فقط وقتی مقدار تغییر می کند به روزرسانی ها را تحت فشار قرار می دهد ( IA9F38 )

نسخه 1.1.1

11 ژانویه 2023

androidx.wear.compose:compose-foundation:1.1.1 ، androidx.wear.compose:compose-material:1.1.1 ، and 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 حاوی این commit ها است.

تغییرات مهم از 1.0.0

ویژگی های جدید

  • ما عملکردهای نگهدارنده محل آزمایش را به روز کرده ایم تا هنگام آماده شدن محتوا به جای اینکه منتظر شروع حلقه انیمیشن بعدی باشد ، بلافاصله اثر "پاک کردن" اعمال می شود. ما همچنین به روزرسانی هایی را در مورد Shimmer و پاک کردن انیمیشن ها انجام داده ایم. ( i5a7f4 )

رفع اشکال

  • ما عرض پیش فرض مرز را برای یک OutlinedButton/OutlinedCompactButton از 2.DP به 1.dp تغییر داده ایم تا مشخصات UX نهایی را مطابقت دهد. ( ICF84D )
  • به منظور کاهش تأثیر اولین مورد اضافه شده به یک ScalingLazyColumn خالی که برای حرکت در جای خود ظاهر می شود ، ما در صورت خالی بودن محتویات ، یک autoCentering topPadding تخمین زده شده اضافه کرده ایم. این تغییر با فرض یک مورد اولیه ارتفاع 0.dp ، میزان بالشتک مورد نیاز را محاسبه می کند. برای ScalingLazyListAnchorType.ItemStart این بالشتک صحیح را محاسبه می کند ، برای ScalingLazyListAnchorType.ItemCenter این محاسبه نادرست خواهد بود زیرا ارتفاع موارد برای اندازه گیری صحیح محتویات و در نتیجه یک پیمایش کوچک بر اساس ارتفاع واقعی مورد نیاز است (( i239a4 )
  • ما Scrim پس زمینه را برای انیمیشن SwipeToDismiss به روز کرده ایم تا با سکوی Wear مطابقت داشته باشد. ( I9003E )
  • ما برای استفاده از خطاهای صفر ، دست زدن به PositionIndicator از LazyListState و ScalingLazyListState را برای لیست موارد اندازه 0 ثابت کرده ایم. ( IC28DD )

نسخه 1.1.0-rc01

9 نوامبر 2022

androidx.wear.compose:compose-foundation:1.1.0-rc01 ، androidx.wear.compose:compose-material:1.1.0-rc01 ، و androidx.wear.compose:compose-navigation:1.1.0-rc01 آزاد می شود . نسخه 1.1.0-rc01 حاوی این commit ها است.

رفع اشکال

  • ما قوانین مشخصات پایه را برای Placeholders ، ScrollAway ، RadioButton ، Switch ، Checkbox ، OutlinedButton ، OutlinedCompactButton ، OutlinedChip و OutlinedCompactChip اضافه کرده ایم. ( i8249c )
  • ما یک اشکال را در Modifier.scrollAway حل کرده ایم. scrollaway به طوری که اگر itemIndex مشخص شده نامعتبر باشد (به عنوان مثال ، اگر آن شاخص مورد از محدوده خارج باشد) ، پس از آن هنوز TimeText نمایش داده می شود. ( i2137a )
  • ما انیمیشن SwipeToDismissBox را به روز کرده ایم تا با اجرای پلتفرم مطابقت داشته باشد. پس از انیمیشن اولیه فشرده ، پس از برکناری ، صفحه نمایش اکنون به سمت راست می رود. ( i41d34 )
  • به عنوان یک scrollState سازی ، ما Modifier.scrollAway به روز کرده ایم. ( i4c6f1 )
  • ما مستندات و نمونه ای را به متغیرهای متداول اضافه کرده ایم تا ترتیب صحیح برای Modifier.placeholder را نشان دهیم. محلول و Modifier.placeholderShimmer هنگام استفاده در همان آهنگسازی. ( IE96F4 ، B/256583229 )
  • ما عرض مرز پیش فرض را برای یک OutlinedCompactChip/OutlinedChip از 2.DP به 1.dp تغییر داده ایم تا مشخصات نهایی UX را مطابقت دهد. ( ib3d8e )
  • ما یک اشکال را در rememberPickerState برطرف کرده ایم که ورودی های به روز شده ذخیره نشده اند ، به طوری که ترکیبات پس از تغییر در ورودی ها به روز نشوند. ( i49ff6 ، b/255323197 )
  • We have made some UI updates to the placeholders, 1) change the shimmer gradient to 1.5x the screen size, 2) add easing (cubic bezier) of the shimmer progression and 3) speed up the wipe-off animation (250ms). ( Id29c1 )
  • We have corrected a UI bug in the placeholder wipeOff effect where Chip and Card backgrounds were wiping off slightly early due to not taking the component's position on screen into account. ( I2c7cb )
  • We have updated the placeholder background drawing to merge colors rather than layer them where possible to reduce the risk of alpha blending of the different cropped layers from allowing underlying colors to bleed through at the placeholder background edges. ( I2ea26 )
  • We have corrected the calculation of ScalingLazyListState.centerItemIndex/centerItemOffset so that if two items sit either side of the viewport center line the one that is closest will be considered as the centerItem . ( I30709 , b/254257769 )
  • We have corrected a bug in the ScalingLazyListState.layoutInfo.visibleItemsInfo which was reporting incorrect offsets during ScalingLazyColumn initialization. Now an empty list will be returned until all list items are visible and have the correct offsets. Check for ScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty() will confirm that the ScalingLazyColumn initialization is complete and items are visible. ( 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 , and androidx.wear.compose:compose-navigation:1.1.0-beta01 are released . نسخه 1.1.0-beta01 حاوی این تعهدات است.

What's in Compose for Wear OS 1.1

The 1.1.0-beta01 of Compose for Wear OS indicated that this release of the library is feature complete and the API locked.

  • Wear Compose 1.1 release includes the following new functionality:
    • Picker - Accessibility improvements to Picker so that multi-picker screens are navigable with screen readers and the content description is accessible
    • Picker contentDescription parameter is now used only for the selected Picker option and takes a nullable String (in the previous commit, it was necessary to pass a mapping from option to the content description, but only the selected option was used).
    • Picker items are now always center-aligned, fixing a bug when setting gradientRatio to zero had the side-effect of changing the alignment.
    • Chip/ToggleChip - We have updated the default gradients for Chip/ToggleChip to bring them in line with the latest UX spec. ChipDefaults.gradientBackgroundChipColors has been updated to start from 50% of primary rather than 32.5%.
    • Chip/ToggleChip - Added overloads for modifying Chip shapes
    • Chip/Button/ToggleButton - Added a new outlined style for Chips and Buttons and new OutlinedChip and OutlinedButton composables that provide a transparent Chip/Button with a thin border.
    • Card - Updated the default gradients for Cards to bring them in line with the latest UX spec. CardDefaults.cardBackgroundPainter has been updated to start from 30% of primary and end at 20% of onSurfaceVariant (was previously 20% to 10% onSurfaceVariant ). ToggleChip.toggleChipColors changes from a linear gradient of 75% surface to 32.5% primary to 0% surface to 50% primary.
    • Button/ToggleButton - Added properties for modifying button shapes.
    • Theme - Updated a number of the default colors in the MaterialTheme in order to improve accessibility as the original colors did not have sufficient contrast resulting in difficulties for users to differentiate chip/card/button backgrounds from the theme background color.
    • InlineSlider/Stepper - Button roles added so that Talkback can recognise them as buttons.
    • Scaffold - PositionIndicator now is positioned and sized so that it only takes the space needed. This is useful, for example, if semantic information is added to it, talkback now gets the correct bounds of the PositionIndicator on screen.
    • CurvedText/TimeText - Added Modifier.scrollAway , which scrolls an item vertically in/out of view, based on scroll state (with overloads to work with Column , LazyColumn and ScalingLazyColumn ). ScrollAway is typically used to scroll a TimeText out of view as the user starts to scroll a list of items upwards.
    • CurvedText/TimeText - Added support for fontFamily , fontStyle and fontSynthesis in CurvedTextStyle , usable on curvedText and basicCurvedText
    • CurvedText/TimeText - Added fontWeight to the constructor and copy method on CurvedTextStyle
    • ToggleControls - Added animated Checkbox , Switch and RadioButton toggle controls for use with ToggleChip and SplitToggleChip . These can be used instead of the static icons provided by ToggleChipDefaults ( switchIcon , checkboxIcon and radioIcon ).
    • Placeholder - Added experimental placeholder support. This has three distinct visual effects designed to work together.
    • Firstly a placeholder background brush effect used in containers such as Chip and Cards to draw over the normal background when waiting for content to load.
    • Secondly a modifier ( Modifier.placeholder() ) to draw a stadium shaped placeholder widget over the top of content that is being loaded.
    • Thirdly a modifier gradient/shimmer effect ( Modifier.placeholderShimmer() ) that is drawn over the top of the other effects to indicate to users that we are waiting for data to load.
      • All of these effects are designed to be coordinated and shimmer and wipe-off in an orchestrated fashion.
  • Core Compose dependencies updated from 1.2 to 1.3

API Changes

  • Font parameters ( fontFamily , fontWeight , fontStyle & fontSynthesis ) can now be specified directly as parameters of curvedText ( Idc422 )

رفع اشکال

  • curveText and basicCurvedText will now work properly with talkback (the have a properly sized and placed (but empty) compose-ui node associated with them, using the text as content description) ( I7af7c , b/210721259 )
  • Bug fix to the Picker when PickerState.repeatedItems = false to add an explicit setting of autoCentering params on the Pickers internal ScalingLazyColumn to ensure that it is possible to scroll the zero'th option to the center of the view. ( I8a4d7 )

Version 1.1.0-alpha07

5 اکتبر 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha07 , androidx.wear.compose:compose-material:1.1.0-alpha07 , and androidx.wear.compose:compose-navigation:1.1.0-alpha07 are released . Version 1.1.0-alpha07 contains these commits.

ویژگی های جدید

  • We have added experimental placeholder support. This has three distinct visual effects designed to work together. Firstly a placeholder background brush effect used in containers such as Chip and Cards to draw over the normal background when waiting for content to load. Secondly a modifier ( Modifier.placeholder() ) to draw a stadium shaped placeholder widget over the top of content that is being loaded. Thirdly a modifier gradient/shimmer effect ( Modifier.placeholderShimmer() ) that is drawn over the top of the other effects to indicate to users that we are waiting for data to load. All of these effects are designed to be coordinated and shimmer and wipe-off in an orchestrated fashion. ( I3c339 )

API Changes

  • Added support for fontWeight , fontFamily , fontStyle and fontSynthesis in CurvedTextStyle , usable on curvedText and basicCurvedText . Those parameter can be used to specify the font and style to use on the curved text.( Iaa1a8 ),( I72759 )
  • Updated Modifier.scrollAway 's offset parameter to Dp for consistency with Modifier.offset (previously it was in pixels). Also, refactored as a LayoutModifier for efficiency. ( I9f94b )
  • As part of the new toggle controls API, we have renamed RadioButton's circleColor to ringColor . ( I28fa9 )
  • We have added animated Checkbox , Switch and RadioButton toggle controls for use with ToggleChip and SplitToggleChip . These can be used instead of the static icons provided by ToggleChipDefaults ( switchIcon , checkboxIcon and radioIcon ). ( I8a8c4 )

Version 1.1.0-alpha06

21 سپتامبر 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha06 , androidx.wear.compose:compose-material:1.1.0-alpha06 , and androidx.wear.compose:compose-navigation:1.1.0-alpha06 are released . Version 1.1.0-alpha06 contains these commits.

ویژگی های جدید

  • We have added Modifier.scrollAway , which scrolls an item vertically in/out of view, based on scroll state (with overloads to work with Column , LazyColumn and ScalingLazyColumn ). ScrollAway is typically used to scroll a TimeText out of view as the user starts to scroll a list of items upwards. ( I61766 )

رفع اشکال

  • The PositionIndicator now is positioned and sized so that it only takes the space needed. This is useful, for example, if semantic information is added to it, talkback now gets the correct bounds of the PositionIndicator on screen. ( Ie6106 , b/244409133 )

Version 1.1.0-alpha05

7 سپتامبر 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha05 , androidx.wear.compose:compose-material:1.1.0-alpha05 , and androidx.wear.compose:compose-navigation:1.1.0-alpha05 are released . Version 1.1.0-alpha05 contains these commits.

رفع اشکال

  • Button roles were added to InlineSlider and Stepper so that Talkback can recognise them as buttons. ( Icb46c , b/244260275 )
  • We have corrected the z-order of position and page indicators in the Scaffold. The indicators will now sit on top of the vignette and so will not be obscured by the vignette if it is present. ( Ib988f , b/244207528 )

Version 1.1.0-alpha04

24 آگوست 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha04 , androidx.wear.compose:compose-material:1.1.0-alpha04 , and androidx.wear.compose:compose-navigation:1.1.0-alpha04 are released . Version 1.1.0-alpha04 contains these commits.

API Changes

  • We have updated a number of the default colors in the MaterialTheme in order to improve accessibility as the original colors did not have sufficient contrast resulting in difficulties for users to differentiate chip/card/button backgrounds from the theme background color. The updated colors are surface(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F8) and onError(0xFF202124->0xFF000000). The changes in colors though relatively subtle may impact existing screenshot tests. ( 81ab09 )

رفع اشکال

  • Fix a logic bug in ScalingLazyColumn that could result in lists with a small (typically exactly 2) number of list items not completing initialization and as a result being transparent. ( 504347 )

Version 1.1.0-alpha03

10 آگوست 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha03 , androidx.wear.compose:compose-material:1.1.0-alpha03 , and androidx.wear.compose:compose-navigation:1.1.0-alpha03 are released . Version 1.1.0-alpha03 contains these commits.

ویژگی های جدید

  • We have added a new outlined style for Chips and Buttons and new OutlinedChip and OutlinedButton composables that provide a transparent Chip/Button with a thin border. ( Id5972 )

API Changes

  • Added overloads for modifying button shapes ( Icccde )

رفع اشکال

  • We have corrected the size of the toggle control area of the ToggleChip as it was not matching its UX spec. The UX Spec calls for a 4.dp spacer between the label and a 24x24.dp toggle control icon area giving a total 28.dp width. However the implementation is incorrectly giving 36x24.dp toggle control area. This results in taking away 8.dp of usable text label area. NOTE: This bug fix gives additional space for the text label and as result can (positively) impact the text layout for overflowing text. If you have screenshot tests including ToggleChips they may need to be updated. ( 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 , and androidx.wear.compose:compose-navigation:1.1.0-alpha02 are released . Version 1.1.0-alpha02 contains these commits.

ویژگی های جدید

  • We have switched Compose for Wear OS dependencies on core Compose libraries from 1.2.0 to 1.3.0-alpha0X

API Changes

  • Added overloads for modifying chip shapes ( I02e87 )

رفع اشکال

  • We have animated the visibility of the vignette when showing/hiding Dialog, to be consistent with the existing scaling animation. ( Ida33e )
  • We have fixed a bug where a divide-by-zero could occur with some fling behavior when scrolling. ( I86cb6 )
  • Fixed a bug in the ChipDefaults.childChipColor() to ensure that the disabled background color is fully transparent. ( 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 , and androidx.wear.compose:compose-navigation:1.1.0-alpha01 are released . نسخه 1.1.0-alpha01 حاوی این commit ها است.

API Changes

  • Picker's contentDescription parameter is now used only for the selected Picker option and takes a nullable String (previously, it was necessary to pass a mapping from option to the content description, but only the selected option was used). ( Ife6a7 )
  • We have made accessibility improvements to Picker so that multi-picker screens are navigable with screen readers and the content description is accessible ( I64edb )

رفع اشکال

  • We have updated the baseline profile rules packaged with the Wear Compose library ( I9c694 )
  • We have corrected the direction of the gradient for Chips in right to left mode. Was top left->bottom right, is now top right->bottom left. ( Ic2e77 )
  • We have updated the default gradients for Chip/ToggleChip/Card to bring them in line with latest UX spec. ChipDefaults.gradientBackgroundChipColors has been updated to start from 50% of primary rather than 32.5%. CardDefaults.cardBackgroundPainter has been updated to start from 30% of primary and end at 20% of onSurfaceVariant (was previously 20% to 10% onSurfaceVariant ). ToggleChip.toggleChipColors changes from a linear gradient of 75% surface to 32.5% primary to 0% surface to 50% primary. ( I43bbd )
  • We have added a background color ( MaterialTheme.color.surface ) behind Chip/ToggleChips that have gradient backgrounds in order to ensure that they are properly visible in the unlikely event that a light color is used behind them. ( Ibe1a4 , b/235937657 )
  • Picker items are now always center-aligned, fixing a bug when setting gradientRatio to zero had the side-effect of changing the alignment. ( I712b8 )

نسخه 1.0

نسخه 1.0.2

7 سپتامبر 2022

androidx.wear.compose:compose-foundation:1.0.2 , androidx.wear.compose:compose-material:1.0.2 , and androidx.wear.compose:compose-navigation:1.0.2 are released. Version 1.0.2 contains these commits.

رفع اشکال

  • We have corrected the z-order of position and page indicators in the Scaffold. The indicators will now sit on top of the vignette and so will not be obscured by the vignette if it is present. ( Ib988f , b/244207528 )

نسخه 1.0.1

24 آگوست 2022

androidx.wear.compose:compose-foundation:1.0.1 , androidx.wear.compose:compose-material:1.0.1 , and androidx.wear.compose:compose-navigation:1.0.1 are released. Version 1.0.1 contains these commits.

رفع اشکال

  • Fix a logic bug in ScalingLazyColumn that could result in lists with a small (typically exactly 2) number of list items not completing initialization and as a result being transparent. ( 076c61 )

نسخه 1.0.0

27 جولای 2022

androidx.wear.compose:compose-foundation:1.0.0 , androidx.wear.compose:compose-material:1.0.0 , and androidx.wear.compose:compose-navigation:1.0.0 are released. نسخه 1.0.0 حاوی این commit ها است.

Major features of 1.0.0

  • This is the first stable release of Compose for Wear OS ( read more ).
  • Compose for Wear OS builds upon the core Compose libraries providing additional wearable-specific components and, where appropriate, alternate implementations of core Compose components tailored to wearable devices.
  • For a list of the key components in Wear Compose see the release notes for ( Compose for Wear OS Beta01 ).

رفع اشکال

  • We have animated the visibility of the vignette when showing/hiding Dialog, to be consistent with the existing scaling animation. ( Ida33e )
  • We have fixed a bug where a divide-by-zero could occur with some fling behavior when scrolling. ( I86cb6 )
  • Fixed a bug in the ChipDefaults.childChipColor() to ensure that the disabled background color is fully transparent. ( I2b3c3 , b/238057342 )

Version 1.0.0-rc02

22 ژوئن 2022

androidx.wear.compose:compose-foundation:1.0.0-rc02 , androidx.wear.compose:compose-material:1.0.0-rc02 , and androidx.wear.compose:compose-navigation:1.0.0-rc02 are released . Version 1.0.0-rc02 contains these commits.

رفع اشکال

  • We have corrected the direction of the gradient for Cards in right to left (RTL) mode. It was top left->bottom right, and it is now top right->bottom left. ( Ic2e77 )
  • We have updated the default gradients for Chip/ToggleChip/Card to bring them in line with the latest UX spec. ChipDefaults.gradientBackgroundChipColors has been updated to start from 50% of primary rather than 32.5%. CardDefaults.cardBackgroundPainter has been updated to start from 30% of primary and end at 20% of onSurfaceVariant (was previously 20% to 10% onSurfaceVariant). ToggleChip.toggleChipColors changes from a linear gradient of 75% surface to 32.5% primary to 0% surface to 50% primary. ( I43bbd )
  • We have added a background color ( MaterialTheme.color.surface ) behind Chip/ToggleChips that have gradient backgrounds in order to ensure that they are properly visible in the unlikely event that a light color is used behind them. ( Ibe1a4 , b/235937657 )
  • We have updated the baseline profile rules packaged with the Wear Compose library ( I9c694 )

Version 1.0.0-rc01

15 ژوئن 2022

androidx.wear.compose:compose-foundation:1.0.0-rc01 , androidx.wear.compose:compose-material:1.0.0-rc01 , and androidx.wear.compose:compose-navigation:1.0.0-rc01 are released . نسخه 1.0.0-rc01 حاوی این commit ها است.

API Changes

  • Interfaces in compose libraries are now built using jdk8 default interface methods ( I5bcf1 )

رفع اشکال

  • We have removed the explicit call to fillMaxWidth() on list header as it is not needed and can result in problems if a ScalinglazyColumn has a mixture of ListHeader() and Chip() components as the width will tend to grow/shrink as ListHeader items are scrolled in/out of view. ( I37144 , b/235074035 )
  • We have fixed a bug in the ScalingLazyColumn that could result in the list items not drawing correctly until scrolled if the 0th list item was large enough (including padding) ( Ic6159 , b/234328517 )
  • We have made a small adjustment in the ScalingLazyColumn easing as items reach the edge of the screen to match UX spec updates. Old values CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f) -> new values CubicBezierEasing(0.3f, 0f, 0.7f, 1f) . To keep the old behavior you can override the scalingParams of ScalingLazyColumn ( Ie375c )
  • We have added padding to the CompactChip in order to ensure that its tap target size is at least 48.dp high to meet the Material accessibility guidelines. This might impact any layouts you have using CompactChips as they will be taking up additional space. ( I3d57c )

Version 1.0.0-beta03

1 ژوئن 2022

androidx.wear.compose:compose-foundation:1.0.0-beta03 , androidx.wear.compose:compose-material:1.0.0-beta03 , and androidx.wear.compose:compose-navigation:1.0.0-beta03 are released . Version 1.0.0-beta03 contains these commits.

ویژگی های جدید

  • We have made ScalingLazyColumn work in Compose @Preview mode. ( I3b3b6 , b/232947354 )

API Changes

  • We have changed the default value for the ScalingLazyColumn.horizontalAlignment property from Start to CenterHorizontally to ensure that when list items do not fill the entire width of the column they will be aligned for maximum visibility. To switch back to the previous behavior set horizontalAlignment = Alignment.Start .( I9ed4b )

مسائل شناخته شده

  • CompactChip's tap/touch height is smaller than Material accessibility guidelines. This will be corrected in the next release (15th June) . If you are using CompactChip this will affect your layouts as CompactChips will now have additional padding above and below. Please adjust and test your layouts or see the bug comments for a workaround to use the existing behavior. ( b/234332135 )

رفع اشکال

  • New demo to animate adding or removing a start text on a TimeText . ( I16d75 )
  • Add tests for HorizontalPageIndicator.PagesState ( I64ed0 )
  • Updating TimeText closer to UX specs ( Ib7ea1 )

Version 1.0.0-beta02

18 مه 2022

androidx.wear.compose:compose-foundation:1.0.0-beta02 , androidx.wear.compose:compose-material:1.0.0-beta02 , and androidx.wear.compose:compose-navigation:1.0.0-beta02 are released . Version 1.0.0-beta02 contains these commits.

ویژگی های جدید

  • Picker now always responds to scroll events even when in read-only mode. This avoids the need for users to first select a Picker by tapping, before they can scroll. In read-only mode, options other than that currently selected are obscured by a shim in gradientColor . ( I72925 )
  • We have changed the UX behavior of Chip/ToggleChip/CompactChip/SplitToggleChip to stop them from doing fillMaxWidth by default. Instead they will grow to fit their contents. To keep the previous behavior simply add modifier = Modifier.fillMaxWidth() ( I60a2c , b/232206371 )

رفع اشکال

  • CurvedTextStyle constructor taking a TextStyle now also respects the fontWeight (This may be added to the constructor and copy methods in future revisions of the API) ( Ieebb9 )
  • Edge swiping improvements. When Modifier.edgeSwipeToDismiss is used and a swipe to the left is triggered from the edge area, it no longer triggers swipe-to-dismiss when swipe direction changes to the right. Previously, it was possible to trigger swipe-to-dismiss by swiping to the left and then swiping to the right.( I916ea )
  • HorizontalPageIndicator now shows up to 6 pages on the screen. If there are more than 6 pages in total, it shows a half-size indicator on the left or right, with a smooth transition between pages.( I2ac29 )
  • Improved default snap behavior on ScalingLazyColumn and Picker ( I49539 )
  • Edge swiping improvements. When Modifier.edgeSwipeToDismiss is used, swipe-to-dismiss only triggers when first touch lands on the edge and swiped to the right, Previously it was possible to trigger swipe-to-dismiss by swiping from any part of the screen if a scroll reaches the start.( 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 , and androidx.wear.compose:compose-navigation:1.0.0-beta01 are released . نسخه 1.0.0-beta01 حاوی این تعهدات است.

What's in Compose for Wear OS 1.0

The 1.0.0-beta01 of Compose for Wear OS marks an important milestone as the library is feature complete and the API locked.

Wear Compose Material components in the 1.0 release include:

  • Material Theme - used as a replacement for the Compose for Mobile MaterialTheme , provides the colors, shapes and typography for building components on Wearables that implement the Wear Material Design UX guidelines out of the box.
  • Button , CompactButton and ToggleButton - Button offers a single slot to take an icon, image or short text (3 characters max). Circular in shape with recommended sizes for default, large or small buttons. CompactButton offers a single slot to take any content (icon, image or text) and is circular in shape with background size extra small. CompactButton has optional transparent padding around the background that increases the clickable area. ToggleButton is a button that offers a single slot to take any content (short text, icon or image) and has on/off (checked/unchecked) states with coloring and different icons to show whether checked or not
  • Cards - used to display information about applications such as notifications. Flexible design for different use cases with AppCard and TitleCard giving different layouts and support for images as either card contents or backgrounds.
  • Chips - stadium shaped components similar to buttons, but with a larger area and multiple slots to allow for labels, secondary labels and icons. In different sizes and with support for images as backgrounds.
  • ToggleChips and SplitToggleChips - a Chip with a checked/unchecked state and the addition of a ToggleControl slot to show an icon such as a switch or radio button to show the checked state of the component. In addition, the SplitToggleChip has two tappable areas, one clickable and one toggleable.
  • CircularProgressIndicator - Wear Material progress indicator with two variations. The first expresses the proportion of completion of an ongoing task and supports a gap in the circular track between start and end angles. The second indicates indeterminate progress for an unspecified wait time.
  • curvedText - forms part of the DSL for describing CurvedLayouts , along with curvedRow and curvedColumn , to lay out components around circular devices. See Wear Component Foundation below for more details on CurvedLayout and CurvedModifier (this plays a similar role to Modifiers in the non curved world and allows for configuration of various aspects of layout, padding, gradients, etc).
  • Dialog, Alert and Confirmation - Dialog displays a full-screen dialog, layered over any other content, and supports swipe-to-dismiss. It takes a single slot which is expected to be opinionated Wear Material dialog content such as Alert or Confirmation. Alert is opinionated dialog content with slots for icon, title and message. It has overloads for either two negative and positive buttons shown side-by-side or a slot for one or more vertically stacked chips. Confirmation is opinionated dialog content that displays a message for a given duration. It has a slot for an icon or image (that could be animated).
  • HorizontalPageIndicator - shows horizontal page position in a fashion appropriate to the Wearable form factor. Designed to take the full screen and show a curved indicator on round devices. Can be used with the Accompanist page viewer.
  • Icon - A Wear implementation of Icon which takes color and alpha from the Wear Material Theme. For a clickable icon, see Button or Chip.
  • Picker - displays a scrollable list of items from which to pick. By default, items will be repeated 'infinitely' in both directions. Can be displayed in read-only mode to hide unselected options.
  • PositionIndicator - shows scroll position or other positional indication in a fashion appropriate to the Wearable form factor. Designed to take the full screen and shows a curved indicator on round devices.
  • Scaffold - implements the basic Wear Material Design visual layout structure. This component provides an API to put together several Wear Material components (such as TimeText , PositionIndicator and Vignette ) constructing the screen, ensuring proper layout strategy for them and collecting necessary data so these components will work together correctly.
  • ScalingLazyColumn - a scrolling scaling/fisheye list component that forms a key part of the Wear Material Design language. Provides scaling and transparency effects to the content items. ScalingLazyColumn is designed to be able to handle potentially large numbers of content items, which are only materialized and composed when needed.
  • Slider - allows users to make a selection from a range of values. The range of selections is shown as a bar, which can optionally be displayed with separators.
  • Stepper - a full-screen component that allows users to make a selection from a range of values, using increase/decrease buttons at the top and bottom of the screen, with a slot in the middle for Text or a Chip.
  • SwipeToDismissBox - handles the swipe-to-dismiss gesture. It takes a single slot for the background (only displayed during the swipe gesture) and the foreground content. Can optionally be combined with the androidx navigation library by using SwipeDismissableNavHost (see Wear Compose Navigation library below).
  • Text - A Wear implementation of the Compose Material Text component, taking color and alpha from the Wear Material Theme
  • TimeText - a component for showing Time and application status at the top of the screen. Adjusts to screen shape by using curved text on round screens.
  • Vignette - a screen treatment for use in the Scaffold that blurs top and bottom of screen when scrollable content is in use.

  • The following components are also included from Wear Compose Foundation:

  • CurvedLayout - Wear Foundation CurvedLayout is a layout composable that places its children in an arc, rotating them as needed. This is similar to a Row layout curved into a segment of an annulus. Note that the content of a CurvedLayout is not a composable lambda - rather, it is a DSL (domain-specific language). All elements in the CurvedLayout's DSL support an optional modifier parameter, created from CurvedModifier .

  • basicCurvedText - an element in the CurvedLayout DSL, basicCurvedText allows developers to easily write curved text following the curvature of a circle (usually at the edge of a circular screen). basicCurvedText can be only created within the CurvedLayout to ensure the best experience, like being able to specify the positioning, and using CurvedModifiers . Note that in most cases curvedText should be used instead, since it uses Material theming.

  • curvedComposable - wraps normal composable content so that it can be used with CurvedLayout . If curvedComposable has several elements inside, they will be drawn on top of each other (like a Box). To put several composables along a curve, wrap each one with curvedComposable .

  • curvedRow and curvedColumn - similar to Row and Column, curvedRow and curvedColumn can be nested inside a CurvedLayout to lay elements out as needed. For a curvedRow , the angular layout direction and radial alignment may be specified. For a curvedColumn , the angular alignment and radial direction may be specified.

  • CurvedModifier - all curved components accept a modifier parameter that can be created using CurvedModifier : background, size, weight and padding are supported.

  • The following component is also included from Wear Compose Navigation:

  • SwipeDismissableNavHost - provides a place in the Compose hierarchy for self-contained navigation to occur, with backwards navigation provided by a swipe gesture. Content is displayed within a SwipeToDismissBox , showing the current navigation level. During a swipe-to-dismiss gesture, the previous navigation level (if any) is shown in the background.

  • See previous release notes for the various Alpha releases for more details of what has been delivered.

API Changes

  • Added CurvedModifier.padding* functions. These are used to specify additional space to be added around a curved component. ( I4dbb4 )
  • Removed CompositionLocal internal class ( I42490 )
  • We have added constant values for Button , CompactButton and ToggleButton icon sizes, as guidance ( I57cab )
  • Add enabled parameter to AppCard and TitleCard . Now they have a similar API to androidx.compose.material Cards. When the parameter is set to false, the card will not be clickable. ( Idc48d , b/228869805 )

رفع اشکال

  • Stepper now disables the decrease and increase buttons when the lower/upper limits have been reached (and applies ContentAlpha.disabled to the iconColor) ( I4be9f )
  • We have added 1dp padding around Picker contents when drawn with a gradient to prevent jitter on text seen when swiping. ( I0b7b9 )
  • Add screenshot tests for PositionIndicator ( I5e8bc )
  • Add more tests for AppCard and 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha21 are released . Version 1.0.0-alpha21 contains these commits.

ویژگی های جدید

  • Added new curved modifiers to specify the background of a curved element: CurvedModifier.background , .radialGradientBackground and .angularGradientBackground ( I8f392 )
  • Allow curved text overflow mode (clip/ellipsis/visible) to be specified. ( I8e7aa )
  • Added CurvedModifier.weight modifier, similar to the one in Compose. This can be used on children of curvedRow and CurvedLayout (for width) and children of curvedColumn (for height). ( I8abbd )
  • Added CurvedModifier.size , .angularSize and .radialSize modifiers to specify the size of a curved element. ( I623c7 )

API Changes

  • Reorder parameters to ensure background is before color consistently across the Wear Compose API ( I43208 )
  • Removed clockwise & insideOut parameters and replaced with more expressive constants on new classes. Curved layout direction can now be LayoutDirection aware, and it is inherited when not specified ( If0e6a )
  • We have replaced autoCenter: Boolean with autoCenter: AutoCentringParams in order to fix an API issue with the ScalingLazyColumn . ( Ia9c90 )
  • We have renamed iconTintColor and toggleControlTintColor to iconColor and toggleControlColor throughout the API (Chip/ToggleChip/Dialog/Slider/Stepper/...) as the color is applied to the icon/toggleControl slot. ( Ied238 )
  • Rewrite PageIndicatorStyle enum into value class ( I2dc72 )
  • We have added RowScope/ColumnScope/BoxScope to some of the slots in our Composables to indicate to developers what the layouts assumptions are. This will allow developers to use additional modifiers on some slot content and avoid the need to provide extra layout elements. Additionally we have made some minor updates to the AppCard/TitleCard colors so that timeColor and appColor default to contentColor , these properties can still all be individually overridden if needed. ( I26b59 )
  • Made SwipeToDismissBoxState.Companion object private ( I39e84 )
  • Fix parameters order for InlineSlider and Stepper . A simple change to follow api guidelines ( I11fec )
  • We have removed the Saver object for SwipeToDismissBoxState as it was not used. ( Ifb54e )
  • We have updated CompactChip to bring it inline with the latest UX Specification. Padding has been reduced to horizontal = 12.dp and vertical = 0.dp. The font for label has been changed from button to caption1. The recommended icon sizes are 20x20 when both icon and label are present and 24x24 for an icon only compact chip. For the icon only use case we have also ensured that the icon is center aligned. ( Iea2be )
  • We have added a number of new fields to ScalingLazyListLayoutInfo to enable developers to know the amount of contentPadding and autoCenteringPadding that has been applied. These can be useful for developers when calculating fling/scroll ( I7577b )
  • We have implemented in/out transitions for Dialog. A showDialog parameter has been added and the Dialog now controls its own visibility (this enables Dialog to run the intro and outro animations when the Dialog is shown/hidden). Note that the outro animation is not performed when the user leaves the dialog via swipe-to-dismiss. We have also added a default value for state in the recently added SwipeToDismissBox overload. ( I682a0 )
  • In order to better support i18n and a11y we have changed ToggleChip and SplitToggleChip so that they no longer have a default for the toggleControl slot. We have also changed ToggleChipDefaults so that the following methods now return ImageVector rather than Icon (note that as they no longer return @Composables they have changed to start with lower case), SwitchIcon()->switchIcon() , CheckboxIcon->checkboxIcon() and RadioIcon()->radioIcon() - this allows and encourages developers to create their own Icon() composables with an appropriate contentDescription set. ( I5bb5b )
  • We have added a SwipeDismissableNavHostState parameter to SwipeDismissableNavHost . This supports use of edge-swiping on screens used as navigation destinations, because SwipeToDismissBoxState can now be hoisted and used to initialize both SwipeDismissableNavHostState and Modifier.edgeSwipeToDismiss on screens that require edge-swiping. ( I819f5 , b/228336555 )

رفع اشکال

  • Ensure curved layouts are updated when needed. ( Ie8bfa , b/229079150 )
  • Bug fix for https://issuetracker.google.com/issues/226648931 ( Ia0a0a , b/226648931 )
  • Removed unnecessary experimental annotations ( I88d7e )

Version 1.0.0-alpha20

6 آوریل 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha20 , androidx.wear.compose:compose-material:1.0.0-alpha20 , and androidx.wear.compose:compose-navigation:1.0.0-alpha20 are released . Version 1.0.0-alpha20 contains these commits.

ویژگی های جدید

  • Add edgeSwipeToDismiss modifier for SwipeToDismiss . Allows swipeToDismiss to be active only on the left edge of the viewport. Used when the center of the screen needs to be able to handle horizontal paging, such as 2-d scrolling a Map or swiping horizontally between pages.( I3fcec , b/200699800 )

API Changes

  • Base implementation of CurvedModifiers , this opens the way to introduce ways to customize curved content (but no CurvedModifiers are provided yet, and the ability to create custom modifiers may be available later) ( I9b8df )
  • EdgeSwipe modifier documentation and default values update for better understanding .( I6d00d )
  • Add PageIndicator slot into Scaffold. By adding PageIndicator directly into Scaffold we might assure that it will be correctly shown on circular devices. ( Ia6042 )
  • Remove default Icons from InlineSlider and Stepper parameters. This will help developers to be more attentive to localization and accessibility requirements. Usages of default icons were shown in demos and samples. ( I7e6fd )
  • Replace Trailing and Leading parameter names with Start and End in TimeText ( Iaac32 )
  • We have added a SwipeToDismissBox overload with an onDismissed parameter to support the common usage of triggering a navigation event when the swipe gesture has completed. ( I50353 , b/226565726 )
  • Removed ExperimentalWearMaterialApi annotations from TimeText usage ( Ide520 )
  • We have marked ScalingLazyList/Column scope and info interfaces as sealed as they are not intended for external developers to implement and this will allow us to add new members in them in future without binary breaking changes. ( I7d99f )
  • We have added a new flingBehaviour property to the Picker and a PickerDefaults.flingBehaviour() method to enable configuration of the fling behavior such as adding RSB support. PickerState now implements the ScrollableState interface. ( Ib89c7 )

رفع اشکال

  • Update the Android Runtime (ART) baseline profile rules for Wear Compose libraries. ART can leverage profile rules on devices in order to compile ahead-of-time a specific subset of the application to improve the performance of the application. Note that this will have no effect on debuggable applications. ( Iaa8ef )
  • Improve documentation ( I2c051 )

Version 1.0.0-alpha19

23 مارس 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha19 , androidx.wear.compose:compose-material:1.0.0-alpha19 , and androidx.wear.compose:compose-navigation:1.0.0-alpha19 are released . Version 1.0.0-alpha19 contains these commits.

API Changes

  • Renamed CurvedRow to CurvedLayout , and reworked to be a scope with a DSL. Using this DSL, more complex curved layouts can be specified using a series of nested curvedRow and curvedColumn (Which are the curved layout equivalents of Row and Column). Inside these layout elements, three elements can be used: curvedComposable (to add any @Composable), basicCurvedText (foundation's curved text) and curvedText (wear material aware curved text). ( Ib776a )
  • Make the side for the PositionIndicator configurable. The basic PositionIndicator's position can now be configured to be End (layout direction-aware), OppositeRsb (takes into account screen rotation, to position itself opposite to the physical RSB), or the absolutes Left & Right. ( I2f1f3 )
  • For SwipeToDismissBox , we have renamed SwipeDismissTarget .Original to SwipeToDismissValue.Default and SwipeDismissTarget.Dismissal to SwipeToDismissValue.Dismissed . We have also moved SwipeToDismissBoxDefaults.BackgroundKey and SwipeToDismissBoxDefaults.ContentKey to SwipeToDismissKeys.Background , SwipeToDismissKeys.Content respectively. ( I47a36 )
  • We have added a read-only mode to Picker, for screens with multiple Pickers where only one Picker is editable at a time. When the Picker is read-only, it displays the currently selected option, and a label if one has been provided. ( I879de )
  • SwipeToDismissBoxState has been refactored to restrict the scope of ExperimentalWearMaterialApi to Modifier.swipeable and SwipeableState , which are now used internally. SwipeToDismissBoxState now has currentValue , targetValue , isAnimationRunning and snapTo members to support common use cases - please let us know if you require any further properties to be made available. Also fixed the behavior of SwipeableState in the case where the swipe offset is within a rounding error of an anchor. ( I58302 )

رفع اشکال

  • Simplified and fixed code to detect if the content of a ScalingLazyColumn can be scrolled (used to decide if we display a scrollbar or not) ( I7bce0 )
  • Fixed a bug on Position Indicator when used with more than one state and switching between them ( I320b5 )
  • We have updated the default Compose for Wear OS theme typography/fonts to match our latest UX guidance. Of note display1 (40.sp) and display2 (34.sp) are now smaller than their previous values and various other minor updates to line height and line spacing have been made. ( Ie3077 )
  • We have added resistance to SwipeToDismissBox so that motion only happens when swiping to dismiss and not at all in the opposite direction. ( Ifdfb9 )
  • We have changed some of the default parameter values for the CircularProgressIndicator functions to bring them in-line with Wear Material Design UX guidance. For the Spinner/Indeterminant version the size (40->24.dp), indicatorColor (primary->onBackground), trackColor transparency (30%->10%) and stroke width (4->3dp) have been updated. For the Progress/Determinate version the trackColor transparency (30%->10%) has been updated. ( I659cc )
  • We have updated the default scaling params of the ScalingLazyColumn in-line with the latest Wear Material Design UX specifications. Visually this results in list items starting to be scaled closer to the list center, but being less scaled at the list edge than before. ( Ica8f3 )
  • Some adjustments to ScalingLazyColumnDefaults.snapFlingBehavior to improve the end of the animation ( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha18 are released . نسخه 1.0.0-alpha18 حاوی این commit ها است.

API Changes

  • Several improvements to PositionIndicator: ShowResult renamed PositionIndicatorVisibility. Some performance improvements to avoid recomputations when not needed ( Iaed9d )
  • The recommended coloring for the SplitToggleChip has been updated. SplitToggleChip's now have a solid colored background when checked or unchecked with the coloring of the ToggleControl being the primary indication of whether the component is checked or not. We have added a new ToggleDefaults.splitToggleChipColors() to support the new color scheme. We have also simplified the toggleChipColors() methods removing the splitBackgroundOverlayColor ( I7e66e )
  • We have added unadjustedSize to the ScalingLazyListItemInfo as it is not safe to calculate the original item size using the scaled size and scaling factor due to float maths precision. ( I54657 , b/221079441 )
  • Add HorizontalPageIndicator . It represents a total number of pages and a selected page. Might be linear or curved, depending on the shape of the device. It also supports custom indicator shape, which defines how each indicator is visually represented. ( Iac898 )
  • We have updated PickerState so that the numberOfOptions can be updated. This supports use-cases such as a DatePicker , when the number of days in the month changes depending on the month selected. The constructor parameter for PickerState has changed to initialNumberOfOptions accordingly. ( Iad066 )
  • Hide the PositionIndicator when is a scrollbar and can't scroll. ( Id0a7f )
  • For consistency with Scaffold, our full-screen Dialog component now displays a PositionIndicator and a Vignette . We are also now using ScalingLazyColumn instead of Column , which means that the Dialog contents are now in ScalingLazyListScope (and typically need to be enclosed by item { /* content */ }). Dialog supports the verticalArrangement parameter accordingly. ( Idea13 )
  • We have changed the name of ToggleChip and SplitToggleChip toggleIcon property to toggleControl to better align with Material Design in order to help designers and developers navigate the API. ( If5921 , b/220129803 )
  • We have added a new entry caption3 to the Wear Material Theme Typology.Caption3 is a small font used for the extra long-form writing like legal texts. ( I74b13 , b/220128356 )

رفع اشکال

  • Stop the snapping animation when we are there. ( Idb69d )
  • Animate changes in PositionIndicator. ( I94cb9 )
  • Based on UI/UX feedback we have changed the ScalingLazyColumn autoCentering so that it will provide only enough space to make sure the items with index ScalingLazyListState.initialCenterItemIndex or higher will be able to be fully scrolled to the center of the viewport. This allows developers to place one or two items about the item initially in the center which are not scrollable into the middle. This will mean that an autoCenter'ing ScalingLazyColumn will not be able to scroll above the initialCenterItemIndex/initialCenterItemScrollOffset ( I22ee2 )
  • We have added a demo for a Date Picker and fixed a bug in PickerState where the initiallySelectedOption was not applied until the Picker had been displayed. ( Id0d7e )
  • In order to reduce the clipping of wider ScalingLazyColumn items on circular screens we have increased the default horizontal content padding from 8 to 10 dp. ( I0d609 )
  • Ensure the PositionIndicator is shown when scrolling. ( Ied9a2 )

Version 1.0.0-alpha17

23 فوریه 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha17 , androidx.wear.compose:compose-material:1.0.0-alpha17 , and androidx.wear.compose:compose-navigation:1.0.0-alpha17 are released . نسخه 1.0.0-alpha17 حاوی این commit ها است.

ویژگی های جدید

  • We have added snap support that can be used with ScalingLazyColumn . Set flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) to enable snap support. ( I068d3 , b/217377069 )
  • We have added demos for Picker used to select a time in either 24 hour or 12 hour clock. ( Ie5552 )

API Changes

  • Fix an issue with TimeText custom fonts & styles on square device ( Iea76e )
  • ScalingLazyListLayoutInfo now has reverseLayout , viewportSize and orientation properties matching those from LazyListLayoutInfo ( I4f258 , b/217917020 )
  • ScalingLazyColumn now has a userScrollEnabled property matching that from LazyList ( I164d0 , b/217912513 )
  • Pickers now have a gradient on the top and bottom by default ( Iab92a )

رفع اشکال

  • We have modified ScalingLazyColumn so that it no longer greedily fills all of the space in its parent. Instead it will take its size from the size of its contents. This makes it consistent with the behaviour of LazyColumn . If you want to reinstate the old behaviour then pass Modifier.fillMaxWidth()/width()/widthIn() to the ScalingLazyColumn ( I51bf8 )
  • We have improved the exception message in SwipeDismissableNavHost.kt that was triggered if the navigation backstack was empty. ( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha16 are released . نسخه 1.0.0-alpha16 حاوی این commit ها است.

ویژگی های جدید

  • Add CircularProgressIndicator . Progress indicators display the length of a process or an unspecified wait time. Supports a gap (cutout) for TimeText or other components if used full-screen. ( Iab8da )

API Changes

  • Pickers now have a flingBehavior parameter, the default value makes them snap to the closest option when scrolling/flinging. ( I09000 )
  • Additional integer API for InlineSlider and Stepper ( I1b5d6 )

رفع اشکال

  • We have changed the default initialCenterItemIndex for the ScalingLazyListState from 0->1. This means that unless overridden on state construction with ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex = ) then the 2nd list item (index == 1) will be placed in the center of the viewport at initialization and the 1st (index == 0) item will be placed before it. This allows for a better default visual effect out of the box as most of the viewport will be filled with list items. ( I0c623 , b/217344252 )
  • We have reduced the ScalingLazyColumn default extraPadding that is provided to ensure that there are plenty of list items to draw (even when we are scaling some of them down in size) from 10% to 5%. This will avoid composing extra list items that might not appear in the viewport. If non standard scalingParams are being used (more extreme scaling for instance) the developer can adjust extra padding using viewportVerticalOffsetResolver . ( I76be4 )
  • Fix an issue with TimeText on multiple lines on square device ( Ibd3fb )
  • We have modified ScalingLazyColumn so that it no longer greedily fills all of the space in its parent. Instead it will take its size from the size of its contents. This makes it consistent with the behavior of LazyColumn . If you want to reinstate the old behavior then pass Modifier.fillMaxSize() to the ScalingLazyColumn - NOTE: This change is incomplete and will be addressed in a follow up change in the next Alpha release. ( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha15 are released . نسخه 1.0.0-alpha15 حاوی این commit ها است.

API Changes

  • We have added a new property autoCentering to the ScalingLazyColumn . When true (the default) this will ensure that all items including the first and last can be scrolled so that they are visible in the center of the lists viewport. Note that if using auto-centering you will probably want to set vertical content padding to 0.dp. If both autoCentering and vertical content padding are provided then they will both result in additional space being available before the first and after the last list items allowing them to be scrolled even further. ( I2a282 , b/214922490 )
  • We have added a Dialog component that enables any composable to trigger a full screen dialog that sits on top of other content. When shown, the dialog supports swipe-to-dismiss and will show its parent's content in the background during the swipe gesture. The dialog content is expected to be Alert or Confirmation (renamed from earlier components AlertDialog and ConfirmationDialog ) - Alert , Confirmation and Dialog are all in the androidx.wear.compose.material.dialog package. Alert and Confirmation can be used as navigation destinations. Also, added ColumnScope to Alert and Confirmation parameters as necessary. ( Ia9014 )
  • We have removed onSurfaceVariant2 from the Compose for WearOS Material Theme Colors and replaced uses in the library with onSurfaceVariant . ( Icd592 )
  • Added a method to programmatically select an option on the PickerState , the initially selected option can now also be specified when creating a PickerState . ( I92bdf )
  • We have added support for customizing the fling behavior of the ScalingLazyColumn . ( I1ad2e , b/208842968 )
  • We have added NavController.currentBackStackEntryAsState() to the Wear.Compose.Navigation library. ( If9028 , b/212739653 )
  • Added Modifier.onRotaryScrollEvent() and Modifier.onPreRotaryScrollEvent() for Wear devices with a rotating side button.( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha14 are released . نسخه 1.0.0-alpha14 حاوی این commit ها است.

ویژگی های جدید

  • We have added a number of methods to ScalingLazyListState to allow developer control over scrolling to specific list items and also setting the initial list item and offset.

    As part of this change we have also modified the ScalingLazyList so that it is oriented around the center of the viewport of the ScalingLazyList rather than the start of the viewport.

    A new property anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter has been added to the ScalingLazyList to control whether the center ( ScalingLazyListAnchorType.ItemCenter ) or Edge ( ScalingLazyListAnchorType.ItemStart ) should be aligned to the viewport's centerline.

    As a result the ScalingLazyListItemInfo.offset and ScalingLazyListItemInfo.adjustedOffset have changed and will now reflect the offset of the item with respect to both the position of the list item and the anchorType of the list. Eg for a ScalingLazyColumn with anchorType of ItemCenter and an list item positioned with its center on the centerline of the viewport the offset would be 0 .

    The new methods are scrollTo , animatedScrollTo , centerItemIndex , and centerItemOffset . ( I61b61 )

  • We have added a back button handler to SwipeDismissableNavHost , so that pressing back navigates to the previous level in the navigation hierarchy. ( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha13 are released . نسخه 1.0.0-alpha13 حاوی این commit ها است.

API Changes

  • We have made RangeIcons internal (referenced internally by InlineSlider and Stepper ). ( I927ec )

رفع اشکال

  • Fixed an issue where SwipeDismissableNavHost would add a destination to the Compose hierarchy before it has reached the CREATED Lifecycle state, resulting in an IllegalStateException . This fix was a prerequisite to updating dependency on navigation-compose to 2.4.0-beta02 and beyond. ( I40a2b , b/207328687 )

  • Added a Drawables enum class for getting drawable resources within the Wear Compose library, so that reflection is no longer needed. This fixes a bug where library drawables were removed when minifyEnabled=true or shrinkResources=true ). ( Ib2a98 )

  • Added tests for Stepper in Wear Compose ( I2d03a )

  • Added samples for SwipeDismissableNavHost in 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha12 are released . نسخه 1.0.0-alpha12 حاوی این commit ها است.

ویژگی های جدید

  • We have added a Stepper component which allows users to make a selection from a range of values. Stepper is a full-screen control with increase and decrease buttons at the top and bottom, and a slot in the middle (expected to take either a Chip or Text). The button icons can be customized if required. ( I625fe )

  • We have added 2 new composables for displaying dialogs: AlertDialog waits for a response from the user and displays a title, icon, message and either a) two buttons for simple positive/negative choices or b) vertically stacked chips or toggle chips for more flexible choices, ConfirmationDialog displays an acknowledgement with a timeout. This simple dialog has slots for a title and an (animated) icon. ( Ic2cf8 )

API Changes

  • Add units (millis) to suggested dialog duration values. ( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha11 are released . نسخه 1.0.0-alpha11 حاوی این commit ها است.

ویژگی های جدید

  • We have added a picker component that lets the user select an item from a scrolling list. By default, the list of selectable items is repeated 'infinitely' in both directions, to give the impression of a rotating cylinder seen from the side. Two features will be added in later releases: snapping to a value after a swipe/fling; adding a function to PickerState to set/scroll to the current value. ( I6461b )

API Changes

  • Added a ScalingLazyItemScope and some new modifiers fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight to allow list items to be sized based on the size of the parent container. Items can be set to fill all or a fraction of the parent's size. This exposes functionality already available in the LazyRow/Column ( I4612f )
  • Added support to ScalingLazyColumn to allow items to have a key. Also added convenience methods to allow adding of items from Arrays and Lists. ( Ic1f89 )

رفع اشکال

  • Additional examples for 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha10 are released . نسخه 1.0.0-alpha10 حاوی این commit ها است.

ویژگی های جدید

  • Added an InlineSlider for wear compose. InlineSlider allows users to make a selection from a range of values. محدوده انتخاب‌ها به‌عنوان نواری بین حداقل و حداکثر مقادیر محدوده نشان داده می‌شود که کاربران می‌توانند یک مقدار واحد را انتخاب کنند. ( If0148 )

  • Check out the new Compose for WearOS Codelab !

API Changes

  • Macrobenchmark now has a minSdkVersion of 23 . ( If2655 )

رفع اشکال

  • Update transition handling in SwipeDismissableNavHost in a SideEffect ( I04994 , b/202863359 )
  • Update transition handling in 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha09 are released . Version 1.0.0-alpha09 contains these commits.

ویژگی های جدید

  • We have launched the Developer Preview of Compose on Wear OS - see our blog post which reviews the main composables and links to further resources to starting using them.

API Changes

  • We have added support for developers to be able to customize all of the colors in the Wear Material Design Color theme. ( I4759b , b/199754668 )

رفع اشکال

  • Added SwipeToDismissBox samples that persist state ( Ibaffe )
  • Added links to developer.android.com guides from KDocs for CurvedText, TimeText and SwipeToDismissBox. ( I399d4 )
  • SwipeDismissableNavHost now throws if there's no current destination (indicates that the NavGraph was not built with the wear.compose.navigation.composable utility function) ( I91403 )
  • Added additional documentation and examples for time source usage in 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha08 are released . نسخه 1.0.0-alpha08 حاوی این commit ها است.

API Changes

  • We have renamed AppCard and TitleCard body properties to content and moved them to the end of the property list to allow them to be provided as a trailing lambda. Also renamed bodyColor to contentColor for consistency with the new slot names. ( I57e78 )

رفع اشکال

  • Added links to developer.android.com guides from KDocs for button, card, chip, theme, position indicator and scaling lazy column components. ( I22428 )
  • Fix WearOS SwipeToDismissBox sometimes not handling swipes. ( I9387e )
  • Added samples for Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip, SplitToggleChip ( Iddc15 )
  • Added microbenchmark performance tests for Card, Chip, ToggleChip, TimeText and 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha07 are released . نسخه 1.0.0-alpha07 حاوی این commit ها است.

ویژگی های جدید

  • Added a CurvedText component in material, a component allowing developers to easily write curved text following the curvature of a circle (usually at the edge of a circular screen). ( I19593 )

API Changes

  • Added tests for TimeText ( Idfead )
  • Transform ArcPaddingValues into an interface. ( Iecd4c )
  • Added animation to SwipeToDismissBox ( I9ad1b )
  • Added hasBackground parameter to the SwipeToDismissBox API so that the swipe gesture can be disabled when there is no background content to display. ( I313d8 )
  • rememberNavController() اکنون مجموعه ای از موارد اختیاری از Navigator را انتخاب می کند که برای پشتیبانی بهتر از ناوبرهای اختیاری مانند مواردی که از مواد ناوبری همراهی استفاده می شود ، به NavController برگشتی اضافه می شود. ( i4619e )
  • Reference NamedNavArgument from navigation-common and remove copy from wear.compose.navigation. ( I43af6 )

رفع اشکال

  • Fixed CurvedRow test flakiness on smaller devices. ( If7941 )
  • Fixed possible flickering on CurvedRow when the content updates, and ensures the curved row is remeasured ( Ie4e06 )
  • ChipDefaults.gradientBackgroundChipColors() has been updated in line with UX Spec changes. The gradient now starts with MaterialTheme.colors.primary with alpha 32.5% and ends with MaterialTheme.colors.surface with alpha @ 0% over a background of MaterialTheme.colors.surface @ 75% alpha. ( Id1548 )
  • We have updated the colors for ToggleChips when in the selected state to match the latest Wear Material Design UX Spec guidance. When selected ToggleChips now have a gradient background from MaterialTheme.color.surface @ 0% alpha, top left, to MaterialTheme.color.primary @ 32% alpha, bottom right, over a background of MaterialTheme.color.surface @ 75% alpha. This results in a more subtle difference between checked and unchecked for the 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha06 are released . نسخه 1.0.0-alpha06 حاوی این commit ها است.

ویژگی های جدید

  • We have added Scaffold a top level application composable that provides a structure for handling PositionIndicators (like Scroll or Volume) position, an area at the top of the screen for displaying the time and application status, and also supports a Vignette to blur the screen top and bottom edge for scrollable content. The main area of the Scaffold is where the application contents are placed. ( I5e0bf )
  • Added TimeText implementation for Wear Compose ( I5654c )

Wear Compose Navigation Library

  • We have added the first release of the Wear Compose Navigation library, which provides integration between the Wear Compose and Androidx Navigation libraries. It provides a simple means to navigate between @Composable functions as the destinations in your application.

  • این نسخه اولیه ارائه می دهد:

    • A SwipeDismissableNavHost composable that hosts a navigation graph and provides backwards navigation via swipe gestures
    • NavGraphBuilder.composable extension to assist with constructing navigation graphs
    • rememberSwipeDismissableNavController() to allow hoisting state
  • Example usage where we create two screens and navigate between them:

    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 is packaged as a separate library so that simple WearCompose applications that implement their own hand-rolled navigation are not required to depend on the Androidx Navigation library.

API Changes

  • Updated SwipeDismissableNavHost to support rememberSaveable by setting the key identity for background and content ( I746fd )
  • We have added a PositionIndicator adapter that can handle LazyListState ( I21b88 )
  • Updated SwipeToDismissBox to support rememberSaveable ( Ie728b )
  • We have added reverseLayout support to the ScalingLazyColumn. This allows for the reversing of the direction of scrolling and layout ( I9e2fc )
  • Deprecated performGesture and GestureScope , which have been replaced by performTouchInput and TouchInjectionScope . ( Ia5f3f , b/190493367 )
  • We have renamed VignetteValue to VignettePosition and renamed VignetteValue.Both renamed to VignettePosition.TopAndBottom. ( I57ad7 )
  • We have renamed ScalingLazyColumnState to ScalingLazyListState, ScalingLazyColumnItemInfo to ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo to ScalingLazyListLayoutInfo and ScalingLazyColumnScope to ScalingLazyListScope in case we decide to add a ScalingLazyRow implementation in the future. ( I22734 )

رفع اشکال

  • Updated CompactChip documentation to describe what happens if neither an icon nor a label is provided. ( I4ba88 )
  • We have made some adjustments to the Wear card components. ( I6b3d0 )
    1. TitleCard spacing between Title and Body reduced from 8.dp to 2.dp.
    2. TitleCard header font changed from body to title3.
    3. Card background gradient changed to make the background appear darker.

نسخه 1.0.0-alpha05

1 سپتامبر 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha05 and androidx.wear.compose:compose-material:1.0.0-alpha05 are released. نسخه 1.0.0-alpha05 حاوی این commit ها است.

API Changes

  • Mark ArcPaddingValues as @Stable ( I57deb )
  • ScalingLazyColumnState now implements the ScrollableState interface giving developers programmatic access to scroll the component. ( I47dbc )

رفع اشکال

  • We have reduced the spacing between Icon and Text in Chip and ToggleChip to bring them in line with updates to the UX Spec. ( I83802 )

نسخه 1.0.0-alpha04

18 آگوست 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha04 and androidx.wear.compose:compose-material:1.0.0-alpha04 are released. نسخه 1.0.0-alpha04 حاوی این commit ها است.

ویژگی های جدید

  • Added a SwipeToDismissBox and swipeable modifier that can be used to support a left-to-right swipe-to-dismiss gesture. Although independent of navigation components, this is expected to be used to exit one screen and navigate to another. Added integration tests to demo swipe-to-dismiss. ( I7bbaa )
  • We have added ScalingLazyColumnItemInfo and ScalingLazyColumnLayoutInfo interfaces to ScalingLazyColumnState class to enable developers to know the actual positions and sizes of items in the ScalingLazyColumn after scaling has been applied. We have also fixed a bug with the way that scaling was calculated when 'top' content padding is applied to the ScalingLazyColumn. ( I27c07 )

API Changes

  • Add CurvedTextStyle class to specify curved text styling Options. Similar to TextStyle, but now only supports color, fontSize and background. More styling options will be added in the future. ( I96ac3 )
  • We have added ScalingLazyColumnItemInfo and ScalingLazyColumnLayoutInfo interfaces to ScalingLazyColumnState class to enable developers to know the actual positions and sizes of items in the ScalingLazyColumn after scaling has been applied. We have also fixed a bug with the way that scaling was calculated when 'top' content padding is applied to the ScalingLazyColumn. ( I27c07 )
  • Added @ExperimentalWearMaterialApi to SwipeDismissTarget enum, part of the SwipeToDismissBox API. ( I48b5e )

رفع اشکال

  • Added test material for SwipeToDismissBox ( I9febc )

نسخه 1.0.0-alpha03

4 آگوست 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha03 and androidx.wear.compose:compose-material:1.0.0-alpha03 are released. نسخه 1.0.0-alpha03 حاوی این commit ها است.

API Changes

  • Added CurvedText component, that allows developers to easily write text following the curvature a circle (usually at the edge of a circular screen) ( Id1267 )
  • We have renamed CardDefaults.imageBackgroundPainter() to CardDefaults.imageWithScrimBackgroundPainter() to make it clear that the background image with have a scrim drawn over it. ( I53206 )
  • Adding ScalingLazyColumn component that provides a list component for Wear Material that gives a fisheye view with the list contents scaling down in size and becoming transparent as they scale towards the edge of the component. ( I7070c )

رفع اشکال

  • We changed the default color of the appName content in AppCard in response to a UX Spec update. The default color for the appName is now MaterialTheme.colors.onSurfaceVariant . Additionally added a missing parameter doc description for the title slot. ( Ic4ad1 )

نسخه 1.0.0-alpha02

21 جولای 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha02 and androidx.wear.compose:compose-material:1.0.0-alpha02 are released. نسخه 1.0.0-alpha02 حاوی این commit ها است.

ویژگی های جدید

  • Added a new class CurvedRow to laid out composables in an arc ( I29941 )
  • Added a new type of card for use in applications (TitleCard), also add support for having images as the background to Cards to emphasize their contents ( I53b0f )

API Changes

  • Add support for radial alignment to CurvedRow (similar to the vertical alignment in a row) ( Id9de5 )
  • Add a new class CurvedRow to laid out composables in an arc ( I29941 )
  • Added a new type of card for use in applications (TitleCard), also add support for having images as the background to Cards to emphasize their contents ( I53b0f )
  • Added toggle icons (checkbox, switch and radio buttons) to ToggleChipDefaults to make it easier for developers to configure ToggleChip and SplitToggleChips ( I7b639 )
  • The start and end content padding for Chips has been updated so that it is consistently 14.dp regardless of whether the Chip has an icon present or not (was previously 12.dp if icon present and 14.dp if not) ( I34c86 )

رفع اشکال

  • Add tests for CurvedRow ( I93cdb )
  • Tying Wear Compose dependencies to Compose 1.0.0-rc01. ( Ie6bc9 )
  • Changed the handing of background image painting in Cards and Chips so that the image is Cropped rather than being stretched in order to maintain image proportions. ( I29b41 )
  • Added more demos and integration tests for Button and ToggleButton. ( 5e27ed2 )
  • Added more Chip tests to cover the content colors for imageBackgroundChips ( Ia9183 )

Version 1.0.0-alpha01

1 ژوئیه 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha01 and androidx.wear.compose:compose-material:1.0.0-alpha01 are released. نسخه 1.0.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

Wear Compose is a Kotlin, Compose-based library that supports Wear Material design, an extension of Material Design for WearOS wearables. This first alpha release contains early, functional implementations of the following:

  • Material theme - configures the colors, typography and shapes consistently across the components used from this library.
  • Chip, CompactChip - chips are stadium shaped and variations are available to take icon, label and secondary label content.
  • - ToggleChip, SplitToggleChip - a specialized type of chip that includes a slot for a bi-state toggle icon such as a radio button or checkbox. In addition, the SplitToggleChip has two tappable areas, one clickable and one toggleable.
  • Button, CompactButton - buttons are circular in shape, with a single content slot for an icon or minimal text (maximum 3 characters).
  • ToggleButton - a button that turns an action on or off, with a single slot for icon or minimal text (maximum 3 characters).
  • Card, AppCard - rectangular shaped with rounded corners, offering slots for content such as app icon, time, title and body.

Future releases will extend the Widget set adding support for Wear Material Design pickers, sliders, lists, page indicators, dialogs, scroll rsb indicators, toasts and more.

Additionally support will be provided for other Wearable Specific features such as curved layouts and text, as well as scaffolding to make it easy for developers to build Wearable apps/overlays.

Wear Compose Material is designed with the same principles as Compose Material, although being targeted at wearables. The Wear Compose Material library should be used in place of the Compose Material library when building for a Wearable device.

The two “Material” libraries should be considered mutually exclusive and should not be mixed in the same app. If developers find themselves including the Compose Material library in their dependencies it would suggest that either a) there are components missing from the Wear Compose Material library, please let us know what you need, or b) are using a component that we do not recommend for use on a Wearable Device.

،

پوشیدن آهنگسازی

برنامه‌های Jetpack Compose را برای دستگاه‌های پوشیدنی با ارائه عملکردی برای پشتیبانی از دستگاه‌های پوشیدنی خاص، اندازه‌ها، اشکال و حرکات ناوبری بنویسید.
آخرین به روز رسانی انتشار پایدار کاندید را آزاد کنید نسخه بتا Alpha Release
13 نوامبر 2024 1.4.0 - - 1.5.0-alpha06

Declaring dependencies

To add a dependency on Wear, you must add the Google Maven repository to your project. برای اطلاعات بیشتر، مخزن Maven Google را بخوانید.

Add the dependencies for the artifacts you need in the build.gradle file for your app or module:

Groovy

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

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

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

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

Kotlin

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

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

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

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

برای اطلاعات بیشتر درباره وابستگی‌ها، به افزودن وابستگی‌های ساخت نگاه کنید.

بازخورد

Your feedback helps make Jetpack better. Let us know if you discover new issues or have ideas for improving this library. Please take a look at the existing issues in this library before you create a new one. You can add your vote to an existing issue by clicking the star button.

Create a new issue

See the Issue Tracker documentation for more information.

Wear Compose Material3 نسخه 1.0

Version 1.0.0-alpha29

13 نوامبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha29 is released. Version 1.0.0-alpha29 contains these commits .

API Changes

  • We have updated TimeText to provide default content that shows the time. ( Id23b3 )
  • We have simplified the ScrollInfoProvider for PagerState by removing the orientation parameter, which is no longer needed. The new behavior is for TimeText to remain in place for both horizontal and vertical paging. ( I71767 )
  • LocalHapticFeedback now provides a default HapticFeedback implementation when the Vibrator API indicates that haptics are supported. The following have been added to the HapticFeedbackType - Confirm , ContextClick , GestureEnd , GestureThresholdActivate , Reject , SegmentFrequentTick , SegmentTick , ToggleOn , ToggleOff , VirtualKey . Wear Compose long-clickable components such as Button , IconButton , TextButton , and Card now perform the LONG_PRESS haptic when a long-click handler has been supplied. ( I5083d )

رفع اشکال

  • We have updated the motion for Confirmations. ( I04bff )
  • We have updated the minimum API dependency to 1.7.4 for Compose libraries. ( I88b46 )
  • New motion was added for the OpenOnPhone dialog. ( I1e10a )
  • We have fixed a bug in the LevelIndicator so that it is now correctly displayed with the level is zero. ( Ie95a4 )
  • We have updated the HorizontalPageIndicator and VerticalPageIndicator animations. ( I5c8f3 )
  • We have added a shrink-to-dot animation to the indeterminate ArcProgressIndicator . ( I9fd51 )

نسخه 1.0.0-alpha28

30 اکتبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha28 منتشر شد. نسخه 1.0.0-alpha28 حاوی این تعهدات است.

API Changes

  • ما یک تغییر قوس بر روی نشانگر پیشرفت دایره ای نامشخص ( I2efc1 ) اضافه کرده ایم.
  • ما ترکیب‌های ترکیبی AlertDialogContent و Dialog را که AlertDialog API را تشکیل می‌دهند، عمومی کرده‌ایم، به طوری که در صورت لزوم می‌توان سفارشی‌سازی را اضافه کرد (مانند سفارشی کردن انیمیشن AlertDialog در حالی که طرح‌بندی محتوای توصیه‌شده را حفظ می‌کند). علاوه بر این، ما پارامترهای Modifier و Color را به اعضای EdgeButton ، ConfirmButton و DismissButton در AlertDialogDefaults اضافه کرده‌ایم. ( I4eb71 )
  • ما API Placeholder PlaceholderDefaults.Shape به صورت زیر به‌روزرسانی کردیم: PlaceholderState.startPlaceholderAnimation به PlaceholderState.animatePlaceholder ، PlaceholderState.isShowContent به PlaceholderState.isHidden ، و PlaceholderDefaults.shape . نام پارامتر painter را در painterWithPlaceholderOverlayBackgroundBrush به originalPainter تغییر داد. نمایان بودن PlaceholderState.placeholderProgression را از عمومی به داخلی تغییر داد و نام آن را به placeholderShimmerProgression تغییر داد. ثابت‌های مدت زمان انیمیشن متغیرهایی را به PlaceholderDefaults اضافه کرد. ( Ie5a59 )
  • ما API EdgeButton به صورت زیر به‌روزرسانی کرده‌ایم: نام پارامتر روی ScreenScaffold از bottomButton به edgeButton تغییر دادیم. EdgeButtonSize به یک کلاس ارزش تبدیل کرد. ( Ieef15 )
  • ما نمایان بودن copy() را در کلاس‌های wear material3 Colors به ​​public تغییر داده‌ایم ( I0287f )

رفع اشکال

  • اضافه شدن حداقل مدت زمان انیمیشن برای IconToggleButton و TextToggleButton با کلیک ( Ieb333 )
  • حداقل مدت زمان اضافه شده در انیمیشن شکل IconButton و TextButton ( Iebcee )
  • وضعیت گزینه تکرار DatePicker اصلاح شد. ( I3587c )
  • حرکت برای گفتگوهای هشدار و تأیید اضافه شده است. ( I173b1 )

نسخه 1.0.0-alpha27

16 اکتبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha27 is released. نسخه 1.0.0-alpha27 حاوی این تعهدات است.

API Changes

  • ما ScreenScaffold و ScrollIndicator به دنبال تغییر نام Wear Compose Foundation LazyColumn به TransformingLazyColumn به روز کردیم. ( I0608b )
  • پارامتر preferredHeight EdgeButton به buttonSize تغییر نام داده است و مقدار آن را فقط می توان از بین 4 ثابت در کلاس ارزش EdgeButtonSize تازه معرفی شده انتخاب کرد. ( Icdd70 )
  • ما نام ListSubheader را به ListSubHeader تغییر داده‌ایم و مقادیر پیش‌فرض قابل دسترسی عمومی را برای ListHeader و ListSubHeader اضافه کرده‌ایم. ( I96730 )
  • We have added new HorizontalPagerScaffold and VerticalPagerScaffold components for Wear which provide new animations and coordination between time text and page indicator components. ( Iff7d0 )
  • ما پشتیبانی چرخشی را به HorizontalPagerScaffold و VerticalPagerScaffold اضافه کرده‌ایم که به کاربران امکان می‌دهد با استفاده از دستگاه‌های ورودی چرخشی پیجرها را پیمایش کنند. ( I9770d )
  • ما تغییرات MotionScheme API را برای ساده کردن استفاده و بهبود ثبات ایجاد کرده ایم. توابع حافظه داخلی را حذف کرد و طرح‌های حرکت داخلی را به یک شیء همراه اختصاصی MotionScheme منتقل کرد. standardMotionScheme و expressiveMotionScheme را به استاندارد و رسا تغییر نام داد. ( I5fd45 )
  • ما پشتیبانی از یک طرح رنگ پویا بر اساس رنگ های سیستم را اضافه کرده ایم. ( I073e9 )
  • ما Stepper را به آخرین مشخصات UX به روز کرده ایم. ( I622bb )

رفع اشکال

  • ما تایپوگرافی و بالشتک های اجزای کارت را به روز کرده ایم. ( I3ae48 )
  • ما padding را در AlertDialog بین دکمه‌های تأیید/رد کردن و بقیه محتوا از 8dp به 12dp با توجه به مشخصات UX تغییر داده‌ایم ( Ie55f0 )
  • ما کدورت رنگ را برای مولفه Slider به روز کرده ایم. ( IDb383 )

نسخه 1.0.0-alpha26

2 اکتبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha26 منتشر شد. نسخه 1.0.0-alpha26 حاوی این تعهدات است.

API Changes

  • ما API و ظاهر HorizontalPageIndicator را به روز کرده ایم و VerticalPageIndicator برای استفاده با VerticalPager اضافه کرده ایم ( Ic9309 )
  • AlertDialog اکنون از قابلیت حذف دکمه پایین پیش‌فرض از تنوع پشته دکمه‌ها، برای طرح‌بندی‌های سفارشی که در آنها EdgeButton لازم نیست، پشتیبانی می‌کند. ( I34fa9 )
  • ما یک جزء SwipeToReveal برای Wear Material 3 ( Ic38b2 ) اضافه کرده ایم.
  • ما برای موارد نادری که صفحه فعلی از کشیدن انگشت برای رد کردن پشتیبانی نمی‌کند، در SwipeToReveal پشتیبانی از کشیدن انگشت دو طرفه اضافه کرده‌ایم. حالت پیش‌فرض همچنان تنها در کشیدن انگشت‌ها از راست به چپ است و توصیه می‌شود برای جلوگیری از تضاد با کشیدن انگشت برای رد کردن، به رفتار پیش‌فرض احترام بگذارید. ( Ifac04 )
  • ما پارامتر buttonHeight را EdgeButton به preferredHeight تغییر نام دادیم. ( I4fab3 )
  • نسخه Kotlin به 1.9 ( I1a14c ) به روز شده است.
  • ما OpenOnPhoneDialogDefaults.Icon را به OpenOnPhoneDialogDefaults.OpenOnPhoneIcon تغییر نام دادیم تا از درگیری با Icon جلوگیری کنیم ( I0f391 )
  • ما پشتیبانی از ScrollIndicator در LazyColumn اضافه کرده ایم. ( Ia546a )
  • ما مقادیر پیش فرض را برای TextToggleButton و IconToggleButton به روز کرده ایم. ( I7aaa9 )
  • ما Picker و PickerGroup API را ساده کرده ایم. ( شناسه 0653 )
  • ما CardDefaults.Shape و CardDefaults.Height را اضافه کرده‌ایم که (توکن‌ها) برای توسعه‌دهندگانی که از کتابخانه استفاده می‌کنند خصوصی بودند. ( I1594a , b/347649765 )
  • ما پارامتر پیشرفت را برای نشانگر پیشرفت دایره ای تقسیم بندی شده باینری به segmentValue تغییر نام داده ایم. ( Ib72d9 )
  • ما رنگ ها و طرح بندی اسلایدر را به روز کرده ایم. ( IC3eec )

رفع اشکال

  • ما انیمیشن نماد openOnPhone ( I66f85 ) را به روز کرده ایم.
  • We are now using Google Symbols icons in Slider , TimePicker and DatePicker . ( I46c7c )
  • ما بالشتک ها را در Confirmation و OpenOnPhoneDialog به روز کرده ایم. ( Iaa82e )

نسخه 1.0.0-alpha25

18 سپتامبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha25 منتشر شد. Version 1.0.0-alpha25 contains these commits .

API Changes

  • ما یک نشانگر پیشرفت دایره ای نامشخص اضافه کرده ایم. ( I427a7 )
  • ما پشتیبانی برای سرریز پیشرفت (پیشرفت بیش از 100٪) را برای CircularProgressIndicator و SegmentedCircularProgressIndicator اضافه کرده‌ایم. وقتی پیشرفت از 1.0 بیشتر شد، با رنگ جدید overflowTrack نشان داده می شود. ( Iaaa3d )
  • دایره IconToggleButton و TextToggleButton اکنون از یک تنوع انیمیشن شکل جدید پشتیبانی می‌کنند که در آن اشکال مختلف حالت‌های علامت‌دار، بدون علامت و فشار داده شده را نشان می‌دهند. تغییر شکل متحرک قبلی برای حالت تازه فشار داده شده همچنان پشتیبانی می شود. ( I29f03 )
  • ما پشتیبانی از استفاده EdgeButton با Column را به دلیل نیاز به مشخص کردن ارتفاع EdgeButton به طور صریح در ScreenScaffold حذف کردیم. ( Ie353d )
  • ما پشتیبانی از Wear Compose LazyColumn با ScreenScaffold خود اضافه کرده ایم (و پیاده سازی ScrollInfoProvider را برای LazyColumnState اضافه کرده ایم). ( Ib8d29 )
  • ما LocalTextMaxLines ، LocalTextAlign ، LocalTextOverflow در یک ترکیب LocalTextConfiguration واحد ترکیب کرده‌ایم تا راه‌حلی مقیاس‌پذیرتر را در آینده ارائه کنیم. ( I5edbc )
  • ما arc-large را به عنوان مقیاس نوع اضافی اضافه کرده‌ایم که برای رشته‌های متنی سرصفحه کوتاه در بالا یا پایین صفحه، مانند همپوشانی‌های تأیید، رزرو شده است. ( I60e3e )
  • We have added defaults to Button for recommended large and extra large icon sizes and content padding. ( I84675 )

رفع اشکال

  • ما رنگ‌های IconButton و TextButton را به‌روزرسانی کرده‌ایم. ( I48324 )
  • ما اضافه بارهای دکمه پایه را برای هماهنگی با سایر اضافه بارها به صورت عمودی در مرکز قرار داده ایم. برای بازیابی رفتار قبلی، از Modifier.align از RowScope استفاده کنید. ( I66e57 )

نسخه 1.0.0-alpha24

4 سپتامبر 2024

androidx.wear.compose:compose-material3:1.0.0-alpha24 منتشر شد. نسخه 1.0.0-alpha24 حاوی این تعهدات است.

API Changes

  • ما یک طرح حرکت را به موضوع Material3 اضافه کرده ایم. این توسط اجزاء در سراسر کتابخانه برای اعمال مشخصات انیمیشن مانند فنر برای حرکت بیانی استفاده می شود. ( I54ff3 )
  • ما اجزای AppScaffold و ScreenScaffold را به کتابخانه Material3 اضافه کرده‌ایم که شامل عملکردی برای هماهنگ کردن لایه‌بندی و انتقال TimeText و ScrollIndicator است. AppScaffold provides a top level of scaffold components that sit on top of all screens. به این ترتیب، افزودن TimeText به AppScaffold به آن اجازه می‌دهد هنگام کشیدن انگشت بین صفحه‌ها در جای خود باقی بماند. صفحه نمایش ها می توانند خود متن زمان را لغو یا پنهان کنند. ScreenScaffold شکافی را برای ScrollIndicator فراهم می کند و به طور خودکار نشانگر اسکرول را هنگام پیمایش متحرک می کند، از جمله تایم اوت برای پنهان کردن نشانگر اسکرول پس از عدم فعالیت. ( I047d6 )
  • ما ScrollIndicator با طراحی جدید Material3 اضافه کرده‌ایم. این یک اندازه انگشت شست ثابت بر اساس محتویات لیست اولیه دارد، تا از تغییرات اندازه در هنگام بارگذاری محتوای تنبل در لیست جلوگیری شود. ( IC228d )
  • We have changed the ScrollAway API such that ScreenStage is a value class instead of an enum class, to allow for additional stages to be added as needed going forwards. ( I48c93 )
  • ما EdgeButton اضافه کرده‌ایم، یک دکمه متمایز مخصوص Wear با شکلی که از انحنای پایین صفحه پیروی می‌کند ( I16369 )
  • ما یک شکاف جدید به ScreenScaffold برای دکمه پایین (مانند EdgeButton ) اضافه کرده‌ایم که بسته به محتوای پیمایش نشان داده می‌شود و اندازه آن تغییر می‌کند ( I032eb )
  • ما Modifier.scrollTransform و Modifier.targetMorphingHeight را اضافه کرده‌ایم تا جلوه‌های حرکتی Material3 را به موارد در LazyColumn اضافه کنیم. ( Ie229a )
  • ما SegmentedCircularProgressIndicator به عنوان یک تغییر در CircularProgressIndicator اضافه کرده‌ایم. تنوع بخش‌بندی شده یا یک مقدار پیشرفت واحد را در تمام بخش‌ها نشان می‌دهد یا هر بخش را به‌صورت روشن/خاموش نشان می‌دهد. ( I6e059 )
  • ما LinearProgressIndicator به عنوان جایگزینی برای CircularProgressIndicator موجود اضافه کرده ایم. ( I89182 )
  • ما AlertDialog اضافه کرده‌ایم و طرح‌بندی‌هایی را برای ارائه درخواست‌های مهم به کاربر ارائه می‌کنیم. تغییرات برای یک جفت دکمه تأیید/رد کردن یا یک دکمه پایین (معمولاً EdgeButton) در زیر مجموعه ای از گزینه ها گنجانده شده است. هر دو نسخه دارای شکاف هایی برای نماد، عنوان و متن اضافی برای ارائه جزئیات بیشتر هستند. ( Ieb873 )
  • ما OpenOnPhoneDialog اضافه کرده‌ایم که باید برای نشان دادن عملکردی که در تلفن کاربر ادامه می‌یابد استفاده شود. OpenOnPhoneDialog پس از مهلت زمانی مشخص رد می شود. ( I978fd )
  • ما Confirmation اضافه کرده‌ایم، یک مؤلفه گفتگو که دارای شکاف‌هایی برای نماد و متن منحنی یا خطی است. تغییرات خاصی برای پیام های موفقیت/شکست ارائه شده است. تأییدیه‌ها به‌طور خودکار پس از مهلت زمانی رد می‌شوند. ( Ib43e8 )
  • ما یک پس‌زمینه به TimeText اضافه کرده‌ایم تا مشکلاتی را که محتوای اصلی و TimeText همپوشانی دارند و زمان را مبهم می‌کنند، کاهش دهیم. ( Ia11fd )
  • ما LevelIndicator اضافه کرده‌ایم که مقدار تنظیمی مانند ولوم را نشان می‌دهد و می‌تواند با مولفه Stepper موجود برای ساخت یک صفحه صدا استفاده شود. LevelIndicator شبیه ScrollIndicator است، اما در سمت مقابل صفحه نمایش داده می‌شود و به طور پیش‌فرض دارای پهنای حرکت گسترده‌تر و رنگ نشانگر متفاوت است. ( I8a4ac )
  • ما TimePicker با طرح‌بندی‌هایی برای ۲۴ ساعت (با یا بدون ثانیه)، یا زمان ۱۲ ساعت با انتخاب صبح/عصر اضافه کرده‌ایم. ( Ia5124 )
  • ما DatePicker با پیکربندی برای ترتیب ستون (به عنوان مثال روز-ماه-سال، ماه-روز-سال یا سال-ماه-روز) و حداقل/حداکثر تاریخ‌های اختیاری اضافه کرده‌ایم. ( IBF13b )
  • We have added a weight parameter to the TimeText 's text function. در مواردی که TimeText از بیش از یک عنصر متن تشکیل شده است، این امکان کنترل نحوه توزیع فضا را فراهم می کند. ( I36700 )
  • ما RadioButton و SplitRadioButton اضافه کرده‌ایم - این مؤلفه‌ها API قبلی را با ترکیب هر دو (Split) SelectableButton و کنترل رادیویی کودک ( If7ae8 ) ساده می‌کنند.
  • We have added CheckboxButton and SplitCheckboxButton - these components simplify the previous API by combining both the (Split) ToggleButton and the child Checkbox control ( Ia8f70 )
  • ما SwitchButton و SplitSwitchButton اضافه کرده‌ایم - این مؤلفه‌ها API قبلی را با ترکیب هر دو (Split)ToggleButton و کنترل سوئیچ فرزند ( I0d349 ) ساده می‌کنند.
  • ما مستندات AnimatedText را به‌روزرسانی کرده‌ایم تا رفتار بیش از حد را توضیح دهیم. ( Iff30a )
  • We have added ButtonGroup to combine 2 or 3 buttons such that button presses produce a coordinated animation. ( Ie27db )
  • We have added optional shape animation for IconButton and TextButton when pressed. ( Iffca5 )
  • ما یک تنوع رنگ اضافی، FilledVariant ، به Button ، IconButton ، TextButton ، CompactButton و EdgeButton اضافه کرده‌ایم ( I65fc3 )
  • ما پارامتر forcedSize را به ImageWithScrimPainter اضافه کرده‌ایم، به طوری که پس‌زمینه‌های تصویر Button اکنون اندازه مؤلفه خود را به‌طور پیش‌فرض حفظ می‌کنند. تنظیم forcedSize = null به جای Painter.instrinsicSize استفاده می شود. ( Ic57af )
  • ما کلیک طولانی را به دکمه ها اضافه کرده ایم ( Ib613d )
  • پشتیبانی از کلیک طولانی نیز به IconButton و TextButton اضافه شده است. ( I38891 )
  • پشتیبانی از کلیک طولانی به کارت ها اضافه شده است. ( I305d5 )
  • ما LocalTextMaxLines ، LocalTextAlign ، LocalTextOverflow به عنوان CompositionLocals اضافه کرده‌ایم و از آنها به عنوان پیش‌فرض پارامتر در Text استفاده کرده‌ایم. اکنون می‌توان از ترکیب‌بندی‌های محلی توسط مؤلفه‌هایی مانند CheckboxButton ، SwitchButton ، RadioButton برای پیاده‌سازی راهنمای UX استفاده کرد، اما در صورت لزوم، توسعه‌دهندگان می‌توانند این پارامترها را لغو کنند. ( Iab841 )
  • ما Placeholder اضافه کرده‌ایم تا به پوشاندن محتوای مؤلفه‌هایی مانند دکمه‌ها و کارت‌ها کمک کند تا زمانی که داده‌ها بارگیری شوند. ( I1a532 )
  • ما IconToggleButtonColors و TextToggleButtonColors برای جایگزینی ToggleButtonColors اضافه کرده‌ایم. ( Ie0bf1 )

رفع اشکال

  • ما Button ، FilledTonalButton ، OutlinedButton ، ChildButton ، CompactButton برای استفاده از CompositionLocals جدید LocalTextMaxLines ، LocalTextAlign ، LocalTextOverflow برای پیاده‌سازی راهنمای UX به‌روزرسانی کرده‌ایم - این پارامترها می‌توانند توسط توسعه‌دهندگان در صورت لزوم مستقیماً در Texte15 لغو شوند ( 7 )
  • We have changed the default stroke width of the LevelIndicator to 6dp to differentiate it from the ScrollIndicator which has a stroke width of 4dp . ( If6f63 )
  • ما یک مشکل را در TimeText حل کرده‌ایم تا از زوایای جابجایی بزرگ‌تر پشتیبانی شود. ( Ie489f )
  • مشکلی در حین ترکیب مجدد EdgeButton برطرف شد. ( I4cdca )
  • طرح‌بندی‌های اصلاح شده دکمه‌های جابجایی تقسیم‌بندی شده هنگام ارائه محتوای سفارشی‌شده. ( Ia33d3 )
  • مقادیر کوچک پیشرفت را حداقل به عرض خط نشانگر پیشرفت گرد کرد. ( I3bd84 )

نسخه 1.0.0-alpha23

14 مه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha23 منتشر شد. Version 1.0.0-alpha23 contains these commits .

API Changes

  • ما APIهای ToggleButton و RadioButton به‌روزرسانی کرده‌ایم تا رنگ‌های غیرفعال را بتوان پیکربندی کرد. ( If13a7 )
  • ما یک CircularProgressIndicator جدید برای Material3 اضافه کرده ایم. ( Ib3bd7 )

رفع اشکال

  • ما اشکالی را برطرف کرده‌ایم که در آن دکمه‌های قابل انتخاب دوبار ضربه زدن را برای تغییر زمانی که قبلاً انتخاب شده بود اعلام می‌کردند. ( I7ed88 )

نسخه 1.0.0-alpha22

1 مه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha22 منتشر شد. نسخه 1.0.0-alpha22 حاوی این تعهدات است.

API Changes

  • ما Material3 ColorScheme به روز کرده ایم. ( I7b2b8 )
  • ما سوئیچ Material3 را به‌روزرسانی کرده‌ایم - و همچنین برخی از تغییرات رنگ، تیک اکنون با آنچه برای چک باکس استفاده می‌شود مطابقت دارد. ( Icac7b )

رفع اشکال

  • تمام دموهای یکپارچه سازی را برای استفاده از اصلاح کننده جدید rotaryScrollable به روز کنید. ( I25090 )

نسخه 1.0.0-alpha21

17 آوریل 2024

androidx.wear.compose:compose-material3:1.0.0-alpha21 منتشر شد. نسخه 1.0.0-alpha21 حاوی این تعهدات است.

  • This release was triggered due to a technical issue in the previous release that resulted in missing source jars. هیچ تعهد جدیدی در این نسخه وجود ندارد.

Version 1.0.0-alpha20

3 آوریل 2024

androidx.wear.compose:compose-material3:1.0.0-alpha20 منتشر شد. نسخه 1.0.0-alpha20 حاوی این تعهدات است.

رفع اشکال

  • ما آلفاهای حالت فشرده و متمرکز ریپل را برای کنتراست تنظیم کرده ایم. ( I59f0a )
  • ما فاصله بین برچسب‌های اصلی و ثانویه را در Button ، ToggleButton و RadioButton ، به دنبال آخرین تغییرات در سبک‌های تایپوگرافی و ارتفاع خط اضافه کرده‌ایم. ( I2c0ba )

Version 1.0.0-alpha19

6 مارس 2024

androidx.wear.compose:compose-material3:1.0.0-alpha19 منتشر شد. نسخه 1.0.0-alpha19 حاوی این تعهدات است.

API Changes

  • ما TimeText به کتابخانه Wear Compose Material3 اضافه کرده ایم. این مؤلفه زمان فعلی (و وضعیت اضافی) را در بالای صفحه نمایش می دهد. The new, concise Material3 API avoids duplication between linear and curved content. ( I4d7c3 )
  • We have updated parameter names from onSelected to onSelect for RadioButton . ( I1a971 )
  • RadioButton و SplitRadioButton را توکن کنید و همچنین روش‌های موجود را برای کاهش میزان جستجوی CompositionLocal با افزودن نمونه‌های کش شده رنگ‌ها و ایجاد روش‌های RadioButtonColors و SplitRadioButtonColors اصلاح کنید. ( I02b33 )

نسخه 1.0.0-alpha18

21 فوریه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha18 منتشر شد. نسخه 1.0.0-alpha18 حاوی این commit ها است.

API Changes

  • ما الگوی پیش‌فرض را برای CardColors ، ToggleButtonColors و SplitToggleButtonColors با ایجاد نمونه‌های ذخیره‌سازی شده در داخل و کاهش استفاده از CompositionLocal بازسازی کرده‌ایم. ( If3fec )

Version 1.0.0-alpha17

7 فوریه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha17 منتشر شد. نسخه 1.0.0-alpha17 حاوی این commit ها است.

API Changes

  • ما دکمه API را برای استفاده از buttonColors به ​​طور پیش‌فرض به‌روزرسانی کرده‌ایم و filledButtonColors تکراری را حذف کرده‌ایم. ( I4fe3b )
  • ما الگوهای پیش فرض را برای ButtonColors ، IconButtonColors و TextButtonColors با ایجاد یک نمونه کش داخلی و کاهش استفاده از CompositionLocal بازسازی کرده ایم. ( I5f51c )
  • ما سربار rememberUpdatedState را در کلاس‌های رنگ خاص Component حذف کرده‌ایم و روش‌های دسترسی را در کلاس‌های رنگی به‌عنوان داخلی علامت‌گذاری کرده‌ایم. ( If6571 )

رفع اشکال

  • ما Modifier.minimumInteractiveComponentSize برای استفاده از Modifier.node به روز کرده ایم. ( Iba6b7 )

نسخه 1.0.0-alpha16

24 ژانویه 2024

androidx.wear.compose:compose-material3:1.0.0-alpha16 منتشر شد. نسخه 1.0.0-alpha16 حاوی این commit ها است.

ویژگی های جدید

  • We have added CompactButton , which can use the same filled, filled tonal and outlined colors as Button.( I05df0 )

API Changes

  • ما RadioButton / SplitRadioButton به عنوان محفظه هایی برای کنترل های انتخاب، مانند کنترل رادیو، اضافه کرده ایم. This differs from the existing ToggleButton in that RadioButton is selectable (and operates within a selection group) whereas ToggleButton is toggleable (and is independent). ( I61275 )
  • برای سازگاری با کتابخانه Compose Material3، LocalContentAlpha از کتابخانه Wear Compose Material3 حذف می کنیم. ( I49a0a )
  • Wear Material و Wear Material3 که یک MutableInteractionSource را در API خود نشان می‌دهند، به‌روزرسانی شده‌اند تا اکنون یک MutableInteractionSource قابل تهی را که پیش‌فرض آن null است، در معرض نمایش بگذارد. هیچ تغییر معنایی در اینجا وجود ندارد: عبور از null به این معنی است که شما نمی خواهید MutableInteractionSource را بالا ببرید و در صورت نیاز در داخل کامپوننت ایجاد می شود. تغییر به null به برخی از مؤلفه‌ها اجازه می‌دهد تا هرگز یک MutableInteractionSource تخصیص ندهند، و به سایر مؤلفه‌ها اجازه می‌دهد فقط در صورت نیاز، نمونه‌ای را ایجاد کنند، که عملکرد این مؤلفه‌ها را بهبود می‌بخشد. اگر از MutableInteractionSource که به این مؤلفه ها منتقل می کنید استفاده نمی کنید، توصیه می شود به جای آن، null را ارسال کنید. همچنین توصیه می شود که تغییرات مشابهی را در اجزای خود ایجاد کنید. ( Ib90fc , b/298048146 )
  • API ریپل جدید را در کتابخانه های wear:compose-material و wear:compose-material3 اضافه می کند که جایگزین rememberRipple منسوخ شده است. همچنین یک CompositionLocal موقت، LocalUseFallbackRippleImplementation را اضافه می کند تا اجزای Material را به استفاده از APIهای منسوخ rememberRipple/RippleTheme برگرداند. این مورد در نسخه پایدار بعدی حذف می‌شود و فقط به عنوان کمکی موقت برای مهاجرت برای مواردی در نظر گرفته شده است که یک RippleTheme سفارشی ارائه می‌کنید. برای اطلاعات مهاجرت و اطلاعات بیشتر در زمینه این تغییر به developer.android.com مراجعه کنید. ( af92b21 )
  • ما پیشرفت های جزئی در api HorizontalPageIndicator و مستندات آن ایجاد کرده ایم. ( I60efc )
  • ما ColorScheme به‌روزرسانی کرده‌ایم که تغییر ناپذیر باشد، به‌روزرسانی‌های رنگی را کمتر کارآمد می‌کنیم، اما استفاده رایج‌تر از رنگ‌ها را کارآمدتر می‌کنیم. دلیل این تغییر این است که اکثر برنامه‌ها به‌روزرسانی رنگ‌های جداگانه را به عنوان یک مورد استفاده اصلی ندارند. این هنوز امکان پذیر است، اما بیش از قبل دوباره ترکیب می شود، به نوبه خود میزان اشتراک های حالت را از طریق همه کدهای مواد به طور قابل توجهی کاهش می دهیم و بر مقدار اولیه و هزینه زمان اجرا موارد استفاده استاندارد بیشتر تأثیر می گذارد. ( Ibc2d6 )
  • API های ToggleButton و SplitToggleButton به روز کرد تا امکان سفارشی سازی رنگ های غیرفعال را فراهم کند. علاوه بر این، نشانه های طراحی متریال اکنون برای مقادیر رنگ و تایپوگرافی استفاده می شود. ( If087c )
  • رنگ‌های پس‌زمینه تصویر دکمه‌ها را برای استفاده از نشانه‌های طراحی متریال به‌روزرسانی کرد. ( Iba215 )
  • ما مولفه‌های Checkbox ، Switch و RadioButton را با حذف کنترل کلیک تغییر داده‌ایم تا فقط نمایشگر باشند. انتظار می‌رود این مؤلفه‌ها در (Split)ToggleButton که کلیک را کنترل می‌کند، استفاده شوند، بنابراین مؤلفه‌ها اکنون به وضوح به‌عنوان فقط نمایشگر نشان داده می‌شوند (و برای استفاده مستقل در Wear در نظر گرفته نشده‌اند). ( I2322e )

رفع اشکال

  • ما توکن‌هایی را برای مقادیر حرکت مدت‌ها و کاهش‌ها در Wear Compose Material 3 اضافه کرده‌ایم. ( I437cd )
  • ما یک اشکال را در ToggleButton ، SplitToggleButton ، Checkbox ، Switch و RadioButton برطرف کرده‌ایم تا اعلامیه‌های دسترسی تکرار نشوند (قبلاً نقش‌های معنایی تکراری بودند). ( ICA281 )
  • برای بهبود عملکرد، لایه materialcore را برای CompactButton حذف کرده‌ایم. ( 7902858 )

نسخه 1.0.0-alpha15

15 نوامبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha15 منتشر شد. نسخه 1.0.0-alpha15 حاوی این commit ها است.

API Changes

  • ما سطح پایه را SwipeToDismissBox به BasicSwipeToDismissBox تغییر نام دادیم. این تمایز بین مؤلفه سطح پایه و SwipeToDismissBox سطح Material3 را واضح تر می کند. The latter pulls colors from the MaterialTheme to be used in scrims and delegates the remaining implementation to the BasicSwipeToDismissBox . ( Ibecfc )

رفع اشکال

  • We have removed the material-core layer for Material3 Button to improve performance. ( I55555 )

نسخه 1.0.0-alpha14

18 اکتبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha14 منتشر شد. نسخه 1.0.0-alpha14 حاوی این commit ها است.

API Changes

  • ما پارامتر indicatorStyle از Material3 HorizontalPageIndicator حذف کرده ایم - در عوض، از شکل صفحه نمایش دستگاه (خطی یا گرد) پیروی می کند. ( I83728 )
  • با افزودن یک کلاس جدید SplitToggleButtonColors ، رنگ‌های SplitToggleButton را از ToggleButton جدا کرده‌ایم. ( I78bee )

نسخه 1.0.0-alpha13

4 اکتبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha13 منتشر شد. نسخه 1.0.0-alpha13 حاوی این commit ها است.

API Changes

  • ما یک قسمت زیرنویس اختیاری به TitleCard اضافه کرده‌ایم. ( Ifc45a )
  • ما نشانه های رنگی Material Design را برای TextButton اضافه کرده ایم. ( I769dc )

نسخه 1.0.0-alpha12

20 سپتامبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha12 منتشر شد. نسخه 1.0.0-alpha12 حاوی این commit ها است.

API Changes

  • ما IconButton برای استفاده از نشانه های طراحی متریال به روز کرده ایم. ( I3f137 )
  • We have updated IconToggleButton to use Material Design tokens. ( I7d263 )
  • ما سازنده‌های CheckboxColors ، RadioButtonColors ، SwitchColors را عمومی کرده‌ایم. ( I82b73 )

نسخه 1.0.0-alpha11

6 سپتامبر 2023

androidx.wear.compose:compose-material3:1.0.0-alpha11 منتشر شد. نسخه 1.0.0-alpha11 حاوی این commit ها است.

رفع اشکال

  • We update updated the typography for Material3 Cards to TitleMedium . ( I597bd )
  • We have updated the typography and alignment for our Material3 ListHeader and ListSubheader . ( IB5ceb )

نسخه 1.0.0-alpha10

23 آگوست 2023

androidx.wear.compose:compose-material3:1.0.0-alpha10 منتشر شد. نسخه 1.0.0-alpha10 حاوی این commit ها است.

ویژگی های جدید

  • HorizontalPageIndicator در کتابخانه Wear Material3 اضافه کنید. ( Ifee99 )

API Changes

  • برای استفاده از توکن های طراحی Material3، کد دکمه ها را به روز کنید. ( I92fe4 )
  • اعلان Wear Material 3 Stepper و Slider به عنوان آزمایشی به عنوان جزئیات رابط کاربری هنوز در حال نهایی شدن است. ( I84d54 )
  • اندازه‌های ExtraSmall را از TextButton و TextToggleButton دور حذف کرده‌ایم زیرا آن اندازه فقط برای IconButton اعمال می‌شود. ( IBC7d5 )

رفع اشکال

  • ما راهنمای تایپوگرافی TextToggleButton را برای استفاده از LabelLarge برای LargeButtonSize ( Ib10fa ) به روز کرده ایم.
  • We have updated the guidance on typography for TextButton to use LabelLarge for LargeButtonSize ( I8f3a7 )
  • ما حداقل هدف لمسی کارت را 48dp برای دسترسی تنظیم کرده ایم. ( Ieb9b1 )
  • افزودن AppCard با نسخه نمایشی تصویر، حذف AppCard با نسخه نمایشی پس زمینه ( Id735f )
  • رفع اشکال در دکمه های گرد که در آن اصلاح کننده ها به درستی زنجیر نشده بودند. ( I5e162 )

نسخه 1.0.0-alpha09

9 آگوست 2023

androidx.wear.compose:compose-material3:1.0.0-alpha09 منتشر شد. Version 1.0.0-alpha09 contains these commits.

ویژگی های جدید

  • ما ToggleButton برای material3 اضافه کرده‌ایم ( I6bed6 )

API Changes

  • حاشیه‌نویسی FloatRange را به‌عنوان محدودیت‌های API، که قبلاً در نظرات بیان شده بود، روشن کرده‌ایم. ( ICB401 )
  • ما تایپوگرافی Wear Material3 را برای رعایت آخرین دستورالعمل های Material3 به روز کرده ایم. ( I1bad6 )

رفع اشکال

  • ما رنگ‌های Button ، IconButton و TextButton مطابق با طراحی Material3 به‌روزرسانی کرده‌ایم. ( Ib2495 )
  • ما نمایان بودن تیک چک باکس را در حالت‌های غیرفعال ثابت کرده‌ایم. ( IB25bf )

نسخه 1.0.0-alpha08

26 جولای 2023

androidx.wear.compose:compose-material3:1.0.0-alpha08 منتشر شد. نسخه 1.0.0-alpha08 حاوی این commit ها است.

ویژگی های جدید

  • ما کنترل های انتخاب زیر را برای Material3 - Switch ، Checkbox ، RadioButton اضافه کرده ایم. ( Ib918c )
  • ما IconToggleButton و TextToggleButton به Material3 اضافه کرده‌ایم، یک دکمه جابجایی دایره‌ای با یک شکاف برای نماد و متن به ترتیب. برای اندازه‌های مختلف ToggleButton ، توصیه می‌کنیم از Modifier.touchTargetAwareSize با اندازه‌های ارائه‌شده در دکمه‌های جابجایی مربوطه استفاده کنید. ( I9f015 )
  • ما ListHeader و ListSubheader به اجزای Material3 خود اضافه کرده ایم. ( Ibaefe )
  • ما Material3 SwipeToDismissBox اضافه کرده‌ایم که بنیاد جدید را SwipeToDismissBox می‌نامد و مقادیر رنگی پیش‌فرض را از موضوع آن ارائه می‌کند. ( I275fb )
  • ما Material3 InlineSlider به Wear Compose اضافه کرده‌ایم. این به کاربران امکان می دهد از طیف وسیعی از مقادیر انتخاب کنند. محدوده انتخاب‌ها به‌عنوان نواری بین حداقل و حداکثر مقادیر محدوده نشان داده می‌شود که کاربران می‌توانند یک مقدار واحد را انتخاب کنند. InlineSlider برای تنظیم تنظیماتی مانند صدا یا روشنایی ایده آل است. ( I7085f )

API Changes

  • ما تم Shapes in Wear Material 3 را به‌روزرسانی کرده‌ایم تا از RoundedCornerShape به جای Shape استفاده کنیم. ( Idb133 )
  • ما ثابت‌های ارتفاع را برای Button عمومی کرده‌ایم ( Idbfde )
  • فایل های API به روز شده برای حاشیه نویسی حذف سازگاری ( I8e87a , b/287516207 )
  • ما InlineSliderColors در Wear Compose Material 3 به‌روزرسانی کرده‌ایم تا ویژگی‌های سازنده عمومی و عمومی داشته باشد. ( I6b632 )
  • ما تمام کلاس‌های رنگ را در Wear Compose Material 3 به‌روزرسانی کرده‌ایم تا سازنده‌های عمومی و ویژگی‌های عمومی داشته باشیم. ( I17702 )
  • ما ثابت های لایه افقی و عمودی دکمه را عمومی کرده ایم. ( Ieeaf7 )

Bug Fixes

  • دکمه اکنون ارتفاع خود را تنظیم می‌کند تا محتوایی را که به دلیل فونت‌های بزرگ برای دسترسی افزایش یافته است، در صورت لزوم تنظیم کند ( Iaf302 )
  • ما تعدادی دمو دکمه را برای رسیدگی به مشکلات دسترسی به روز کرده ایم. ( I61ce9 )
  • Stepper and InlineSlider now support repeated clicks on long press so that you can quickly increase/decrease value of Stepper and InlineSlider by holding the + or - buttons ( I27359 )

نسخه 1.0.0-alpha07

21 ژوئن 2023

androidx.wear.compose:compose-material3:1.0.0-alpha07 is released. نسخه 1.0.0-alpha07 حاوی این commit ها است.

ویژگی های جدید

  • ما جزء Stepper را به کتابخانه Compose for Wear OS Material 3 خود اضافه کرده ایم. This is similar to the previous Material version, but omits range semantics by default, following developer feedback. ما Modifier.rangeSemantics مواردی را که به معنای محدوده مورد نیاز است ارائه می کنیم. ( IC39fd )
  • ما curvedText به کتابخانه Compose for Wear OS Material 3 خود اضافه کرده‌ایم. ( Ia8ae3 )

رفع اشکال

  • ما wear.compose.foundation به‌روزرسانی کرده‌ایم تا وابستگی API مربوط به wear.compose.material3 باشد ( I72004 , b/285404743 )

نسخه 1.0.0-alpha06

7 ژوئن 2023

androidx.wear.compose:compose-material3:1.0.0-alpha06 is released. نسخه 1.0.0-alpha06 حاوی این commit ها است.

رفع اشکال

  • ما TextButton برای استفاده از تابع پسوند toDisabledColor برای صحیح مقادیر آلفای غیرفعال شده به روز کرده ایم. ( I814c8 )

نسخه 1.0.0-alpha05

24 مه 2023

androidx.wear.compose:compose-material3:1.0.0-alpha05 منتشر شد. نسخه 1.0.0-alpha05 حاوی این commit ها است.

ویژگی های جدید

  • ما TextButton به Material3 اضافه کرده‌ایم، یک دکمه دایره‌ای با یک شکاف برای متن. برای اندازه های مختلف TextButton ، توصیه می کنیم از Modifier.touchTargetAwareSize و ExtraSmallButtonSize ، SmallButtonSize ، DefaultButtonSize و LargeButtonSizeIcon ارائه شده در TextButtonDefaults استفاده کنید. TextButton پیش‌فرض هیچ حاشیه و پس‌زمینه شفافی برای اقدامات با تاکید کم ندارد. For actions that require high emphasis, use filledTextButtonColors ; for a medium-emphasis, outlined TextButton , set the border to ButtonDefaults.outlinedButtonBorder ; for a middle ground between outlined and filled, use filledTonalTextButtonColors . ( I667e4 )
  • ما Card ، OutlinedCard ، AppCard و TitleCard به کتابخانه Wear Compose Material3 اضافه کرده‌ایم. AppCard و TitleCard همچنین می‌توانند با استفاده از CardDefaults.outlinedCardColors و CardDefaults.outlinedCardBorder ظاهر مشخصی داشته باشند ( I80e72 )

API Changes

  • We have moved the Button label parameter to the end to support trailing lambda syntax and removed the role parameter (as this can be overridden using Modifier.semantics ). سازنده های ButtonColors اکنون عمومی هستند. ( Ie1b6d )

نسخه 1.0.0-alpha04

10 مه 2023

androidx.wear.compose:compose-material3:1.0.0-alpha04 is released. نسخه 1.0.0-alpha04 حاوی این commit ها است.

ویژگی های جدید

  • ما IconButton به Material3 اضافه کرده‌ایم، یک دکمه دایره‌ای با یک شکاف برای نماد/تصویر. There are four variations: IconButton , FilledIconButton , FilledTonalIconButton and OutlinedIconButton . برای اندازه های مختلف IconButton ، توصیه می کنیم از Modifier.touchTargetAwareSize و ExtraSmallButtonSize ، SmallButtonSize ، DefaultButtonSize و LargeButtonSizeIcon ارائه شده در IconButtonDefaults استفاده کنید. ما همچنین IconButtonDefaults.iconSizeFor را برای تعیین اندازه نماد توصیه شده برای اندازه دکمه مشخص ارائه می دهیم. ( I721d4 )

نسخه 1.0.0-alpha03

19 آوریل 2023

androidx.wear.compose:compose-material3:1.0.0-alpha03 منتشر شد. نسخه 1.0.0-alpha03 حاوی این commit ها است.

API Changes

  • ما مولفه Material 3 Button را اضافه کرده‌ایم - این دکمه استادیوم شکل ما است و قبلاً Chip در کتابخانه Wear Compose Material نامیده می‌شد (برای سازگاری با کتابخانه Compose Material 3 به Button تغییر نام داده است). دکمه پیش‌فرض دارای پس‌زمینه پر شده است و تغییرات دکمه‌ای برای FilledTonal (پس‌زمینه خاموش)، Outlined (شفاف با حاشیه نازک) و Child (پس‌زمینه شفاف و بدون حاشیه، برای اقدامات تکمیلی با کمترین میزان برجستگی استفاده می‌شود) وجود دارد. Round buttons for simple icon and text content will follow in a future release.( Ia6942 )

نسخه 1.0.0-alpha02

5 آوریل 2023

androidx.wear.compose:compose-material3:1.0.0-alpha02 منتشر شد. نسخه 1.0.0-alpha02 حاوی این commit ها است.

Bug Fixes

  • ما یک DefaultTextStyle به Wear Compose Material 3 اضافه کرده‌ایم که PlatformTextStyle.includeFontPadding را به‌طور پیش‌فرض به true (تنظیم فعلی) می‌دهد. این به ما این امکان را می‌دهد که در آینده خاموش کردن پد فونت را به‌طور پیش‌فرض با کتابخانه‌های Compose همگام‌سازی کنیم ( برای پس‌زمینه به رفع پد فونت در Compose مراجعه کنید). ( I7e461 )

Version 1.0.0-alpha01

22 مارس 2023

androidx.wear.compose:compose-material3:1.0.0-alpha01 منتشر شد. نسخه 1.0.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • Material 3 تکامل بعدی متریال دیزاین است و شامل تم به روز شده و اجزای بازطراحی شده است. Material 3 on Wear Compose طوری طراحی شده است که با کتابخانه Material 3 Compose در Android منسجم باشد. This first alpha release contains early, functional implementations of the following:

    • Material theme - configures the color scheme, typography and shapes consistently across components in the library. The Material3 theme has revised colors which support accessible contrast. ( I84005 )
    • Text/Icon - building blocks for Wear Compose apps ( I8e06a )
  • We will continue to develop Wear Material ( androidx.wear.compose:compose-material ) and Wear Material 3 ( androidx.wear.compose:compose-material3 ) in parallel. Future material3 releases will extend the widget set to include other familiar components from Compose for Wear OS, such as buttons, pickers, and sliders.

  • The Wear Material and Wear Material 3 libraries are mutually exclusive and should not be mixed in the same app, primarily because they reference different themes which would lead to unexpected inconsistencies.

Wear Compose Version 1.5

Version 1.5.0-alpha06

13 نوامبر 2024

androidx.wear.compose:compose-*:1.5.0-alpha06 is released. Version 1.5.0-alpha06 contains these commits .

API Changes

  • We have simplified the ScrollInfoProvider for PagerState by removing the orientation parameter, which is no longer needed. The new behavior is for TimeText to remain in place for both horizontal and vertical paging. ( I71767 )
  • TransformingLazyColumn was introduced in earlier releases. We are now removing Wear's LazyColumn aliases (which were forwarding to TransformingLazyColumn ) in favor of the new name TransformingLazyColumn . We have also removed TransformingLazyColumnVisibleItemInfo 's height property - please use measuredHeight instead. ( I0ea1e )
  • We have changed the PagerDefaults.snapFlingBehavior snapAnimationSpec from a Tween to a Spring spec.( I10d02 , b/349781047 , b/303807950 )
  • We have promoted the LocalReduceMotion CompositionLocal to stable ( Ia6f32 )

Bug Fixes

  • We have updated Modifier.rotaryScrollable to use focusTargetWithSemantics for better semantics support in rotary. ( Ief0a0 )
  • We have updated the minimum API dependency to 1.7.4 for Compose libraries. ( I88b46 )
  • We have disabled width morphing in TransformingLazyColumn as a workaround to a clipping bug. ( I3dfb8 )
  • We have fixed a bug that caused disappearing items after overscroll with TransformingLazyColumn ( Id7668 )
  • We have added LazyLayoutSemantics for TransformingLazyColumn . ( Ia8f56 )

Version 1.5.0-alpha05

30 اکتبر 2024

androidx.wear.compose:compose-*:1.5.0-alpha05 is released. Version 1.5.0-alpha05 contains these commits .

API Changes

  • We have added support for animateScrollTo on TransformingLazyColumnState so that scrolling to an item can be animated. ( I4097d )
  • We have added requestScrollTo on TransformingLazyColumnState to defer scrolling to the next measurement. ( I20a5e )
  • We have added support for contentPadding in TransformingLazyColumn . ( I3a69c )

Bug Fixes

  • We have fixed a bug in rendering the TransformingLazyColumn when the content height is shorter than the screen height. ( I6c3e1 )
  • The ScrollInfoProvder for TransformingLazyColumn now correctly tracks the first item. ( I1e4a3 )
  • TransformingLazyColumnState now saves its state ( anchorItemIndex and anchorItemScrollOffset ). ( I3d265 )

Version 1.5.0-alpha04

16 اکتبر 2024

androidx.wear.compose:compose-*:1.5.0-alpha04 is released. Version 1.5.0-alpha04 contains these commits .

API Changes

  • We have renamed the Wear Compose Foundation LazyColumn to TransformingLazyColumn so that the distinction is clearer between this and the Compose Foundation LazyColumn . ( I0608b )
  • Added rotary support for Horizontal/Vertical pagers, enabling users to navigate pagers using rotary input devices. ( I9770d )
  • We have updated the new PagerDefaults to make clear that the pager will snap-to-page by default. ( Iff7d0 )
  • TransformingLazyColumnItemScrollProgress is now a value class which should improve the performance. ( Ic399e )
  • TransformingLazyColumn now supports rotary out of the box. ( I05206 )
  • TransformingLazyColumnState now supports scrollToItem . ( I507b3 )
  • Removed @ExperimentalWearFoundationApi from SwipeToReveal API ( I34a66 )

Version 1.5.0-alpha03

2 اکتبر 2024

androidx.wear.compose:compose-*:1.5.0-alpha03 is released. Version 1.5.0-alpha03 contains these commits .

API Changes

  • ما برای موارد نادری که صفحه فعلی از کشیدن انگشت برای رد کردن پشتیبانی نمی‌کند، در SwipeToReveal پشتیبانی از کشیدن انگشت دو طرفه اضافه کرده‌ایم. . The default is still to swipe-to-reveal only on right-to-left swipes and it is strongly advised to respect the default behavior to avoid conflict with swipe to dismiss. ( Ifac04 )
  • We have updated LazyColumnState to override canScrollForward and canScrollBackward - this now stops scrolling when the first or last item is exactly at the center of the screen. ( Ia77d7 )
  • We have added new HorizontalPager and VerticalPager components which address common issues, such as focus handling and interacting with system swipe to dismiss that could occur on Wear. ( I2902b )
  • We have added support for LazyColumn to expose the client's key and contentType through layoutItems . ( I1bd9c )

رفع اشکال

  • We have updated the curved text animations to be smoother, using paint flags. ( I73a15 )
  • We have updated the Material Dialog documentation to reflect that onDismissRequest is not called after show flag is set to false. ( Ifd8d6 )
  • We have fixed a bug with the vignette animation in the Material Dialog ( I126bf )

Version 1.5.0-alpha02

18 سپتامبر 2024

androidx.wear.compose:compose-*:1.5.0-alpha02 is released. Version 1.5.0-alpha02 contains these commits .

API Changes

  • ما پشتیبانی از Wear Compose LazyColumn با ScreenScaffold خود اضافه کرده ایم (و پیاده سازی ScrollInfoProvider را برای LazyColumnState اضافه کرده ایم). ( Ib8d29 )
  • We have added viewportSize to LazyColumnLayoutInfo . ( I4187f )

Bug Fixes

  • We have fixed a bug so that rotary scrolling is now disabled in ScalingLazyColumn when the userScrollEnabled flag is set to false . ( I490ab , b/360295825 )
  • We have made a bug fix to address unexpected vertical padding on curved text. The curved text height now more closely matches the actual space used by the text. Please note that this is likely to break screenshot tests that involve curved text ( Iaa6ef )
  • We have reverted a bug fix to Dialog where the onDismissRequest callback was called when showDialog was set to false, because in some cases this resulted in onDismissRequest being called multiple times. ( I64656 )

نسخه 1.5.0-alpha01

4 سپتامبر 2024

androidx.wear.compose:compose-*:1.5.0-alpha01 is released. Version 1.5.0-alpha01 contains these commits .

API Changes

  • We have added a new LazyColumn into the Wear Compose Foundation library with associated LazyColumnState and LazyColumnScope APIs. This serves as the foundation for building customisable scaling and morphing effects with Wear Compose. ( Ib3b22 )
  • We have added an indexed version of itemsIndexed into LazyColumnScope as part of the new LazyColumn API. ( Ib4a57 )
  • We have added LazyColumn modifiers in order to support scaling and morphing behaviors. ( Ie229a )
  • HierarchicalFocusCoordinator has been promoted to stable. ( I31035 )
  • We have added support for letter spacing to curved text. ( I3c740 )
  • Added a rotationLocked parameter to CurvedLayout.curvedComposable to stop components being rotated. ( I66898 )
  • The temporary LocalUseFallbackRippleImplementation API from wear material and wear material3 has been removed ( I62282 )
  • Removed WearDevices.SQUARE from the @WearPreviewDevices multi-preview ( I11c02 )

Bug Fixes

  • SwipeToReveal now positions the revealed items on the visible portion of the screen, this helps when SwipeToReveal is used within a list, so the items are always interactable and never fall outside the screen. ( I38929 )
  • SwipeToReveal now resets the lastActionType to None when animatedTo has completed. ( I59b03 )
  • Improved the documentation for the new rotationLocked parameter on curvedComposable . ( Ifbd57 )
  • Fixed a crash when passing NaN into ScalingLazyColumnSnapFlingBehavior 's performFling . ( Ic13da )
  • Fixed bug on curved layout size modifier ( I0fedf )
  • We have added support for letter spacing specified in 'sp'. ( I9f6e3 )
  • We have fixed a bug in Material2 Dialog where the onDismissRequest callback was not being called when the dialog became invisible ( I64656 )
  • Renamed LayoutCoordinates.introducesFrameOfReference to LayoutCoordinates.introducesMotionFrameOfReference to better reflect its purpose. Renamed related function to calculate coordinates based on that flag. ( I3a330 )

نسخه 1.4

نسخه 1.4.0

4 سپتامبر 2024

androidx.wear.compose:compose-*:1.4.0 is released. Version 1.4.0 contains these commits .

Important changes since 1.3.0

  • ScalingLazyColumn and Picker now support rotary input by default - it is recommended to remove explicit rotary handling and defer to the default system behavior. If necessary, use the rotaryScrollableBehavior parameter to configure either scroll or snap behavior - for snap behavior, it is recommended to provide snap behavior and touch scrolling capabilities using the flingBehavior parameter.
  • Modifier.rotaryScrollable is a new modifier that connects rotary events with scrollable containers, allowing users to scroll using a crown or a rotating bezel on their Wear OS device.
  • SwipeDismissableNavHost now provides an entry animation for in-app transitions.
  • PositionIndicator is now shown by default when a screen is first displayed.

Additional changes

نسخه 1.4.0-rc01

21 آگوست 2024

androidx.wear.compose:compose-*:1.4.0-rc01 is released. Version 1.4.0-rc01 contains these commits .

  • We have updated the Compose dependencies to 1.7.0-rc01 and pinned Wear Compose Navigation to androidx.lifecycle 2.8.3

Version 1.4.0-beta03

12 ژوئن 2024

androidx.wear.compose:compose-*:1.4.0-beta03 is released. Version 1.4.0-beta03 contains these commits .

Bug Fixes

  • We have updated Modifier.rotaryScrollable to replace use of 'focusable' with 'focusTarget' which improves performance. ( Id294b )
  • We have fixed an issue where the ProgressIndicator repeated its announcement under TalkBack . ( I94563 )
  • We have updated the Wear Compose library baseline profiles. ( I3cbc3 )

Version 1.4.0-beta02

29 مه 2024

androidx.wear.compose:compose-*:1.4.0-beta02 is released. Version 1.4.0-beta02 contains these commits .

Bug Fixes

  • We have increased the boundary width passed to screen readers from curved text in order to address issues with truncation ( Id865f ).
  • We have constrained the boundary of the HorizontalPageIndicator that was passed to screen readers - previously the indicator occupied the full screen ( Id8d7a ).

نسخه 1.4.0-beta01

14 مه 2024

androidx.wear.compose:compose-*:1.4.0-beta01 is released. Version 1.4.0-beta01 contains these commits .

The 1.4-beta01 release of Compose for Wear OS indicates that this release of the library is feature complete and the API is locked (except where marked as experimental). Wear Compose 1.4 includes the following new functionality:

  • We have added Modifier.rotaryScrollable , a new modifier that connects rotary events with scrollable containers, allowing users to scroll via a crown or a rotating bezel on their Wear OS device. In addition, ScalingLazyColumn and Picker now support rotary input by default. Use the rotaryScrollableBehavior parameter to configure either scroll or snap behavior. For snap behavior, it is recommended to provide snap via the flingBehavior parameter as well for touch scrolling.
  • SwipeDismissableNavHost now provides an entry animation for in-app transitions.
  • PositionIndicator is now shown by default when a screen is first displayed.
  • SelectableChip and SplitSelectableChip have been added as a variation on ToggleChip - use this with RadioButton in order to provide selectable semantics instead of toggleable semantics for accessibility
  • ListHeader now supports height adjustments when contents need extra height to accommodate large font sizes.

Bug Fixes

  • We have fixed a bug where selectable chips announced double tap to toggle when already selected. ( I7ed88 )

Version 1.4.0-alpha08

1 مه 2024

androidx.wear.compose:compose-*:1.4.0-alpha08 is released. Version 1.4.0-alpha08 contains these commits .

API Changes

  • We have made the following changes to the new rotary API: renamed Modifier.rotary to Modifier.rotaryScrollable ; renamed the RotaryBehavior interface to RotaryScrollableBehavior and its function handleScrollEvent to performScroll ; renamed RotaryScrollableAdapter to RotaryScrollableLayoutInfoProvider and removed the scrollableState property. ( I0c8a6 )
  • We have made additional changes to the rotary API: renamed RotaryScrollableLayoutInfoProvider to RotarySnapLayoutInfoProvider (because this provider is only needed for rotary with snap); changed the type of the snapOffset parameter in RotaryScrollableDefaults.snapBehavior snapOffset from Int to Dp. ( Iddebe )
  • We have renamed the clickInteractionSource parameter on SplitSelectableChip to containerInteractionSource . ( Ia8f84 )
  • We have updated the click callback parameter names for SplitSelectableChip - from onClick to onSelectionClick and from onBodyClick to onContainerClick . ( I32237 )

Bug Fixes

  • We have updated the horizontal padding for PositionIndicator to 2dp (was 5dp), in order to fix a bug where the PositionIndicator (scroll bar) overlaps scrollable content. Please note that this change is expected to break existing screenshots that include the PositionIndicator due to the change of padding. ( I57472 )
  • We have improved the documentation for the new rotary API by describing the differences between low-res and hi-res rotary devices. ( I63abe )
  • We have addressed an out-of-range exception in SwipeDismissableNavHost that could be triggered when interpolated alpha values were less than zero. ( Ib75a1 , b/335782510 )

Version 1.4.0-alpha07

17 آوریل 2024

androidx.wear.compose:compose-*:1.4.0-alpha07 is released. Version 1.4.0-alpha07 contains these commits .

API Changes

  • We have added Modifier.rotary , a new modifier that connects rotary events with scrollable containers, allowing users to scroll via a crown or a rotating bezel on their Wear OS device. In addition, ScalingLazyColumn and Picker now support rotary input by default, with new overloads that include the rotaryBehavior parameter for specifying the configuration of either scroll or snap. If the rotaryBehavior parameter is set to snap, then it is recommended to provide snap via the flingBehavior parameter as well, for touch scrolling. ( I2ef6f )
  • NestedScroll sources Drag and Fling are being replaced by UserInput and SideEffect to accommodate for the extended definition of these sources that now include animations (Side Effect) and Mouse Wheel and Keyboard (UserInput). ( I40579 )
  • We have added SelectableChip and SplitSelectableChip to make the distinction clearer between toggle controls such as Switch/Checkbox and selectable controls such as RadioButton . This replaces the previously added overloads of ToggleChip/SplitToggleChip with selectionControl parameters. ( Ia0217 )
  • Updated visibility modifier of IndeterminateStrokeWidth in ProgressIndicatorDefaults to public. ( I5b5a4 )

Version 1.4.0-alpha06

3 آوریل 2024

androidx.wear.compose:compose-*:1.4.0-alpha06 is released. Version 1.4.0-alpha06 contains these commits .

رفع اشکال

  • We have added an internal draft of rotary support, as part of the larger effort of migrating Rotary behavior into AndroidX from Horologist. ( I617d1 )
  • We have added an internal draft of haptics support, as part of the larger effort of migrating Rotary behavior into AndroidX from Horologist. ( I5568a )

Version 1.4.0-alpha05

20 مارس 2024

androidx.wear.compose:compose-*:1.4.0-alpha05 is released. Version 1.4.0-alpha05 contains these commits .

API Changes

  • We have made the initialCenterItemIndex and initialCenterItemScrollOffset properties of ScalingLazyListState public. ( I0c616 )
  • We have made the FullScreenStrokeWidth from ProgressIndicatorDefaults public. ( Ibea23 )

Bug Fixes

  • We have improved the performance of PositionIndicator by decreasing the number of calls to layoutInfo from ScalingLazyColumn . ( Idc83d )

Version 1.4.0-alpha04

6 مارس 2024

androidx.wear.compose:compose-*:1.4.0-alpha04 is released. Version 1.4.0-alpha04 contains these commits .

API Changes

  • We have added a new overload for ToggleChip and SplitToggleChip that takes a selectionControl parameter instead of the toggleControl parameter. This should be used with the RadioButton control in order to provide selectable semantics instead of toggleable semantics for accessibility ( I1d6d9 )
  • We have updated parameter names for the new selectionControl overload from onSelected to onSelect for ToggleChip and SplitToggleChip ( I1a971 )

Version 1.4.0-alpha03

21 فوریه 2024

androidx.wear.compose:compose-*:1.4.0-alpha03 is released. Version 1.4.0-alpha03 contains these commits.

API Changes

  • The Modifier.inspectable wrapper has been deprecated. This API will create more invalidations of your modifier than necessary, so its use is now discouraged. Developers are encouraged to implement the inspectableProperties() method on ModifierNodeElement if they would like to expose modifier properties to tooling. ( Ib3236 )

Bug Fixes

  • We have fixed a documentation bug for WearPreview* annotations. ( Id526d )

Version 1.4.0-alpha02

February 7, 2024

androidx.wear.compose:compose-*:1.4.0-alpha02 is released. Version 1.4.0-alpha02 contains these commits.

Bug Fixes

  • We have fixed a bug in swipe-to-reveal, where it was possible to interact with (and cancel) a committed action on one item by starting to swipe another item.( Ide059 )
  • We have updated the ListHeader to support height adjustments when contents need extra height to accommodate large font sizes. ( I7290c , b/251166127 )

نسخه 1.4.0-alpha01

24 ژانویه 2024

androidx.wear.compose:compose-*:1.4.0-alpha01 is released. نسخه 1.4.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • We have added entry animation to SwipeDismissableNavHost for in-app transitions.( cfeb79a )
  • PositionIndicator is now shown by default when a screen is first displayed. This change was introduced in order to help meet Wear Quality guidelines. Unfortunately, it means that screenshot tests will need to be updated on screens that include PositionIndicator , as the PositionIndicator would not previously have been displayed. ( 419cef7 )

API Changes

  • We have added a new ripple API in wear:compose-material and wear:compose-material3 libraries which replaces the deprecated rememberRipple . همچنین یک CompositionLocal موقت، LocalUseFallbackRippleImplementation را اضافه می کند تا اجزای Material را به استفاده از APIهای منسوخ rememberRipple/RippleTheme برگرداند. این مورد در نسخه پایدار بعدی حذف می‌شود و فقط به عنوان کمکی موقت برای مهاجرت برای مواردی در نظر گرفته شده است که یک RippleTheme سفارشی ارائه می‌کنید. برای اطلاعات مهاجرت و اطلاعات بیشتر در زمینه این تغییر به developer.android.com مراجعه کنید. ( af92b21 )
  • ما ColorScheme به‌روزرسانی کرده‌ایم که تغییر ناپذیر باشد، به‌روزرسانی‌های رنگی را کمتر کارآمد می‌کنیم، اما استفاده رایج‌تر از رنگ‌ها را کارآمدتر می‌کنیم. The reasoning behind this change is that the majority of apps wouldn't have updating individual colors as a main use case. This is still possible but it will recompose more than before, in turn we significantly decrease the amount of state subscriptions through all of the material code and will impact initialization and runtime cost of more standard use cases. ( f5c48b7 )
  • Wear material and Wear material3 components exposing a MutableInteractionSource in their API have been updated to now expose a nullable MutableInteractionSource that defaults to null. هیچ تغییر معنایی در اینجا وجود ندارد: عبور از null به این معنی است که شما نمی خواهید MutableInteractionSource را بالا ببرید و در صورت نیاز در داخل کامپوننت ایجاد می شود. تغییر به null به برخی از مؤلفه‌ها اجازه می‌دهد تا هرگز یک MutableInteractionSource تخصیص ندهند، و به سایر مؤلفه‌ها اجازه می‌دهد فقط در صورت نیاز، نمونه‌ای را ایجاد کنند، که عملکرد این مؤلفه‌ها را بهبود می‌بخشد. اگر از MutableInteractionSource که به این مؤلفه ها منتقل می کنید استفاده نمی کنید، توصیه می شود به جای آن، null را ارسال کنید. همچنین توصیه می شود که تغییرات مشابهی را در اجزای خود ایجاد کنید. ( f8fa920 )
  • We have updated rememberExpandableState to save expandable state. This ensures that data is stored when navigating to another screen and restored when coming back to the original screen. ( 5c80095 )

Bug Fixes

  • We have updated the ReduceMotion setting to use a lifecycle aware listener. ( 7c6b122 )
  • We have updated TouchExplorationStateProvider 's Listener to be lifecycle aware ( be28b01 )
  • We have removed the materialcore layer for CompactButton to improve performance ( 25db8e9 )
  • We have made BasicSwipeToDismissBox more robust to NaN offsets to avoid exceptions ( b983739 )
  • We have updated BasicSwipeToDismissBox to ensure alpha values are within the range 0,1
  • We have fixed a bug in the ToggleButton , SplitToggleButton , Checkbox , Switch and RadioButton so that accessibility announcements are not repeated (previously, semantic roles were duplicated) ( d11eeb7 )

نسخه 1.3

نسخه 1.3.1

3 آوریل 2024

androidx.wear.compose:compose-*:1.3.1 is released. Version 1.3.1 contains these commits .

Bug Fixes

  • We have fixed a bug in swipe-to-reveal, where it was possible to interact with (and cancel) a committed action on one item by starting to swipe another item. ( Ide059 )

نسخه 1.3.0

24 ژانویه 2024

androidx.wear.compose:compose-*:1.3.0 is released. نسخه 1.3.0 حاوی این commit ها است.

Important changes since 1.2.0

  • The SwipeToDismissBoxState class, SwipeToDismissValue enumeration, and Modifier.edgeSwipeToDismiss extension function are now each part of the androidx.wear.compose.foundation package, instead of the androidx.wear.compose.material package. This updated architecture allows you to implement gesture handling independently from other design considerations. Material Design workflows, such as applying colors from a configured theme, are handled separately.
  • The SwipeToRevealCard and SwipeToRevealChip classes help you implement the recommended swipe-to-reveal guidance . The SwipeToRevealSample class demonstrates how to use these components.
  • Our 1.3.0-alpha02 release introduced a change that causes Chip and ToggleChip objects to grow in height to better support user-selected font scaling. This can cause some clipping to occur. To fix this issue, the large shape for MaterialTheme now uses a larger corner radius (26 dp instead of 24 dp). Chip and ToggleChip objects use this new corner radius to avoid clipping content on the corners of Chip and ToggleChip .

    • Most Chips and ToggleChips are unchanged, given their default 52 dp height. However, Chip and ToggleChip objects that contain multiple lines of primary or secondary label text, or for which the height has been overridden, could cause screenshot tests to break.

Additional changes

For a more complete set of the changes introduced in version 1.3.0, see the beta01 release notes .

Recommendations for implementation

  • If your app allows users to pan around the screen's content, such as in a map-based app, turn off swipe handling by setting userSwipeEnabled to false in the SwipeDismissableNavHost composable, and include a button that allows users to go to the previous screen.
  • To turn off animations for a position indicator during fade-in and position-change animations within a scrolling list, use a SnapSpec object.
  • While waiting for a media app to load content for playback, show a blank Placeholder composable.
  • To create a collection of expandable items on demand, consider using the experimental ExpandableStateMapping class.

نسخه 1.3.0-rc01

10 ژانویه 2024

androidx.wear.compose:compose-*:1.3.0-rc01 is released. نسخه 1.3.0-rc01 حاوی این commit ها است.

Bug Fixes

  • We have updated the MaterialTheme large shape to use a 26dp rounded corner radius and this will now be used by Chip and ToggleChip . This change is needed to support height adjustments when contents need extra height to accommodate large font sizes—otherwise, the existing stadium shape clips some text content.

    Text clipped on corners
    Figure 1 : Text clipped on corners.
    Text not clipped
    Figure 2 : Text not clipped.

    This change may cause a breakage in screenshot tests. ( I2e6ae )

Version 1.3.0-beta02

13 دسامبر 2023

androidx.wear.compose:compose-*:1.3.0-beta02 is released. Version 1.3.0-beta02 contains these commits.

رفع اشکال

  • We have restored the intended swipe motion in BasicSwipeToDismissBox . This had been altered in a previous release, such that the slide part of the transition occurred while the finger was touching the screen. ( Id8e76 )

نسخه 1.3.0-beta01

15 نوامبر 2023

androidx.wear.compose:compose-*:1.3.0-beta01 is released. نسخه 1.3.0-beta01 حاوی این تعهدات است.

The 1.3-beta01 release of Compose for Wear OS indicates that this release of the library is feature complete and the API is locked (except where marked as experimental). Wear Compose 1.3 includes the following new functionality:

  • SwipeToDismissBoxState , SwipeToDismissValue and Modifier.edgeSwipeToDismiss have been migrated from androidx.wear.compose.material to androidx.wear.compose.foundation , along with the underlying swipe-to-dismiss implementation in BasicSwipeToDismissBox . This allows the gesture handling for swipe-to-dismiss to be used independently of Material Design, for example from the SwipeDismissableNavHost in androidx.wear.compose.navigation . SwipeToDismissBox from androidx.wear.compose.material is still recommended to be used with Material Design, because it pulls colors from the MaterialTheme , then delegates the remaining implementation to the BasicSwipeToDismissBox .
  • SwipeDismissableNavHost now supports a new userSwipeEnabled parameter so that swipe handling can be turned off for screens where it is not required.
  • BasicSwipeToDismissBox has improved focus handling using HierarchicalFocusCoordinator .
  • SwipeToReveal has new SwipeToRevealCard and SwipeToRevealChip composables in Material that follow the recommended UX guidance for Card and Chip . It also has undo support for the secondary action.
  • DefaultTextStyle now turns off font padding to be consistent across the Android Platform.
  • Chip and ToggleChip now adjust their height to accommodate content that has grown due to large fonts for accessibility
  • PositionIndicator now has individual animation specs for the fade-in, fade-out and position-change animations. For performance reasons, we recommend that fade-in and position-change are turned off when used with scrollable lists.
  • ExpandableStateMapping provides a new way to generate ExpandableStates when they need to be created on demand and not necessarily with a @Composable scope.
  • Placeholder now allows resetting if the content is no longer in the ready state. Also, the reduce motion setting now applies to the shimmering effect and wipe-off motion on Placeholder .

مسائل شناخته شده

  • PositionIndicator is not initially shown when a screen is first displayed. We intend to make a change in an early 1.4 alpha so that it will be initially shown, but without any animation.

API Changes

  • ما سطح پایه را SwipeToDismissBox به BasicSwipeToDismissBox تغییر نام دادیم. This makes the distinction clearer between the Foundation level component and the Material level SwipeToDismissBox . The latter pulls colors from the MaterialTheme to be used in scrims and delegates the remaining implementation to the BasicSwipeToDismissBox . ( Ibecfc )
  • We have marked rememberExpandableStateMapping as experimental and improved the performance of expandableItem . ( I5f6bc )
  • We have replaced the SwipeToRevealAction class in the Material SwipeToReveal Card and Chip APIs with a slot-based API using SwipeToRevealPrimaryAction , SwipeToRevealSecondaryAction and SwipeToRevealUndoAction composables. Please see sample code for examples on how to use the new API. ( Ia8943 )
  • We have replaced the PositionIndicator animation flags with AnimationSpec parameters. The individual animations can be disabled by passing snap as the AnimationSpec . ( I6c523 )

Bug Fixes

  • We have fixed a bug triggered by limited curved text when size is limited ( I50efe )
  • We have addressed a potential NaN crash related to curvedComposable ( I970eb )
  • We have reverted the removal of the position change highlight animation on PositionIndicator . ( Ieb424 )
  • We have removed the material-core layer for material Chip to improve its performance. ( If2dcb )

Version 1.3.0-alpha08

18 اکتبر 2023

androidx.wear.compose:compose-*:1.3.0-alpha08 is released. Version 1.3.0-alpha08 contains these commits.

API Changes

  • We have added individual flags to PositionIndicator overloads, to control different animations: showFadeInAnimation , showFadeOutAnimation and showPositionAnimation . The previous API has been deprecated and forwards calls to the new one. For performance reasons and for UX consistency, when the PositionIndicator is used with a scrollable list, we recommend switching off showFadeInAnimation and showPositionAnimation flags. If PositionIndicator is used as a standalone indicator, for example for volume change, then we recommend having all 3 animations turned on. ( I44294 )
  • We have deprecated the Material SwipeToDismissBoxState , SwipeToDismissValue and edgeSwipeToDismiss following the migration of Swipe-to-Dismiss functionality to wear.compose.foundation . Please replace with the wear.compose.foundation equivalents. ( Iee8c9 )

Bug Fixes

  • We have updated the baseline profiles for wear compose foundation, material and navigation libraries. ( Idb060 )
  • We have reverted a behavioral change for PositionIndicator introduced in a previous CL, such that the PositionIndicator was animated when a screen was initially displayed. We intend to make a similar change in an early 1.4 alpha, so that the PositionIndicator is initially displayed, but without any animation. ( I41843 )
  • We have addressed some performance issues in PositionIndicator . ( I1c654 , b/302399827 )
  • We have optimized performance of the touch exploration state provider default implementation to rely on State<Boolean> rather than derived state. ( Ieec4d )
  • We have set systemGestureExclusion rectangles for Android 13 and higher. ( Ib1f4b )

Version 1.3.0-alpha07

4 اکتبر 2023

androidx.wear.compose:compose-*:1.3.0-alpha07 is released. Version 1.3.0-alpha07 contains these commits.

API Changes

  • We have added individual flags to PositionIndicator to control different animations: showFadeInAnimation , showFadeOutAnimation and showPositionAnimation . The previous API has been deprecated and forwards calls to the new one. For performance reasons and for UX consistency, when the PositionIndicator is used with a scrollable list, we recommend switching off showFadeInAnimation and showPositionAnimation flags. If PositionIndicator is used as a standalone indicator, for example for volume change, then we recommend having all 3 animations turned on. ( Ia2d63 )

Bug Fixes

  • We have made improvements to the swipe to reveal motion by adding a fade animation to the primary action text, and fading the secondary action/changing the icon scale on full swipe expansion. ( Ib7223 )
  • It is recommended that Swipe to Reveal actions are made accessible and we have added custom accessibility actions to our Swipe to Reveal samples. ( I42224 )
  • We have improved the performance of SwipeToDismissBox , including refactoring to ensure that the initial logic does not trigger a recomposition. The SwipeToDismissBox is now drawn as the full screen size. ( Ie0aa2 )
  • We have fixed a bug when the PositionIndicator incorrectly disappeared. ( I2091a )
  • Improved performance of PositionIndicator by optimizing recompositions. New flags to control the animations ( fadeIn , fadeOut and positionChange ) have been added subsequently (see API Changes) ( Ifac7d )
  • We have added Microbenchmark tests for PositionIndicator ( Idf875 )

Version 1.3.0-alpha06

20 سپتامبر 2023

androidx.wear.compose:compose-*:1.3.0-alpha06 is released. Version 1.3.0-alpha06 contains these commits.

Bug Fixes

  • We have added support for Modifier.edgeSwipeToDismiss with SwipeToReveal . ( I95774 , b/293444286 )
  • We have added samples for the Material SwipeToRevealChip and SwipeToRevealCard . ( Ieb974 )
  • We have updated the baseline profiles for Wear Compose Foundation and Material libraries. ( I1dd1f )

نسخه 1.3.0-alpha05

6 سپتامبر 2023

androidx.wear.compose:compose-*:1.3.0-alpha05 is released. Version 1.3.0-alpha05 contains these commits.

Bug Fixes

  • We have added handling in Swipe to Reveal so that only one item at a time can be swiped. ( I3cd7a )
  • Improved the documentation of ScalingLazyColumnDefaults to better match its actual behavior. ( I886d3 )

Version 1.3.0-alpha04

23 آگوست 2023

androidx.wear.compose:compose-*:1.3.0-alpha04 is released. Version 1.3.0-alpha04 contains these commits.

ویژگی های جدید

  • We have added undo support for the secondary action of SwipeToReveal . ( I7a22d )

API Changes

  • HorizontalPageIndicator در کتابخانه Wear Material3 اضافه کنید. ( Ifee99 )
  • Updated Wear Compose preview tooling to use the androidx.wear.tooling.preview library. ( Ib036e )

Bug Fixes

  • رفع اشکال در دکمه های گرد که در آن اصلاح کننده ها به درستی زنجیر نشده بودند. ( I5e162 )

نسخه 1.3.0-alpha03

9 آگوست 2023

androidx.wear.compose:compose-*:1.3.0-alpha03 is released. نسخه 1.3.0-alpha03 حاوی این commit ها است.

API Changes

  • We have added two new composables in Material for implementing SwipeToReveal with Cards and Chips. These composables follow the recommended UX guidance on the component and make it easier for developers to implement SwipeToReveal with the existing components in Wear Material. ( I7ec65 )
  • We have turned on the FloatRange annotations as API constraints, which were previously stated in comments. ( ICB401 )

Bug Fixes

  • We have moved the initial scrolling logic of ScalingLazyColumn inside onGloballyPositioned() . ( Ic90f1 )
  • We are now using drawWithCache in PositionIndicator , ProgressIndicator , and SelectionControls to optimize stroke allocations. ( I5f225 , b/288234617 )
  • ما نمایان بودن تیک چک باکس را در حالت‌های غیرفعال ثابت کرده‌ایم. ( IB25bf )
  • We have updated Placeholder to allow resetting to show the placeholder if the content is no longer in the ready state. ( Ibd820 )
  • We have made some fixes to flaky Placeholder tests ( Idb560 )

Version 1.3.0-alpha02

26 جولای 2023

androidx.wear.compose:compose-*:1.3.0-alpha02 is released. نسخه 1.3.0-alpha02 حاوی این commit ها است.

API Changes

  • We have provided ExpandableStateMapping , a new way to generate ExpandableStates , for cases in which they need to be created on demand, not necessarily within a @Composable scope ( Iff9e0 )
  • SwipeToDismissBox has been migrated from androidx.wear.compose.material to androidx.wear.compose.foundation package. ( I275fb )
  • Updated API files to annotate compatibility suppression. ( I8e87a , b/287516207 )
  • We have made the height constants for Chip , CompactChip and ToggleChip public ( Idbfde )
  • We have made the horizontal and vertical paddings for Chip and CompactChip public. ( Ieeaf7 )
  • Added functionality to turn off swipe handling in SwipeDismissableNavHost via the new userSwipeEnabled parameter. ( Id2a0b , b/230865655 )
  • We have updated the Wear Compose Navigation library to use the new SwipeToDismissBox from Wear Compose Foundation. ( I4ff8e )

Bug Fixes

  • We have fixed a z-order bug where expandedItem did not show the correct content after clicking a button's behavior when they have buttons. ( I1899d , b/289991514 )
  • Improve focus handling of SwipeToDismissBox (and hence SwipeDismissableNavHost ) using the HierarchicalFocusCoordinator ( I45362 , b/277852486 )
  • We have made a fix to the gesture handling in SwipeableV2 . ( I89737 )
  • We have finalized the baseline profiles for our 1.2 release. ( Id5740 )
  • Following the migration of SwipeToDismissBox to Foundation, the Material SwipeToDismissBox implementation now forwards to Foundation and supplies default color values from its theme.( If8451 )
  • We have added heading semantics to ListHeader . ( Ic5420 )
  • Chip and ToggleChip will now adjust their height to accommodate content that has grown due to large fonts for accessibility, when required. ( Iaf302 )
  • Fixed a bug in the semantic role of SplitToggleChip 's tappable area, for accessibility. ( Ieed3a )
  • The reduce motion setting now turns off the shimmering effect and wipe-off motion on placeholders. ( I91046 )
  • Stepper and InlineSlider now support repeated clicks on long press so that you can quickly increase/decrease value of Stepper and InlineSlider by holding the + or - buttons. ( I27359 )

Version 1.3.0-alpha01

21 ژوئن 2023

androidx.wear.compose:compose-*:1.3.0-alpha01 is released. نسخه 1.3.0-alpha01 حاوی این commit ها است.

رفع اشکال

  • As announced in 1.2.0-alpha07 and 1.2.0-alpha10 , we are now changing the DefaultTextStyle to turn off font padding to be consistent across the Android Platform. This will address some cases of text clipping with large font sizes and may also impact screen layouts, so that screenshot tests need to be updated. For example, we see text clipping here ( Ic6a86 )
Text clipped with large font size
Figure 1 : Text clipped.
  • It is no longer present when font padding is turned off:
Text not clipped with large font size
Figure 2 : Text not clipped.
  • We have updated wear.compose.foundation to be an API dependency of wear.compose.material ( I72004 , b/285404743 )
  • We have fixed a bug in SwipeToDismissBox . Background and content keys are now passed to the remember block so that new modifiers are created when the content or background changes. ( Ib876c , b/280392104 )
  • We have updated TimeText to use the locale when choosing the format for 12 or 24 hour time. ( If4a3d )
  • We have fixed an inconsistency in SwipeToDismissBox contentScrimColor default parameters. ( I2d70f )
  • We have improved the motion handling in SwipeToReveal . ( I28fb7 )

مسائل شناخته شده

  • Supporting user-configured font sizes is an accessibility requirement. We know that multiline Chips can lead to text-clipping when displayed with large font sizes, so we will be updating Chip in an early 1.3 alpha version to make height adjustments in those cases.

نسخه 1.2

Version 1.2.1

18 اکتبر 2023

androidx.wear.compose:compose-*:1.2.1 is released. نسخه 1.2.1 حاوی این commit ها است.

Bug Fixes

  • Fixed a bug when the PositionIndicator incorrectly disappeared. ( 7a167f )

نسخه 1.2.0

9 آگوست 2023

androidx.wear.compose:compose-*:1.2.0 is released. نسخه 1.2.0 حاوی این commit ها است.

تغییرات مهم از 1.1.0

نسخه 1.2.0-rc01

26 جولای 2023

androidx.wear.compose:compose-*:1.2.0-rc01 is released. نسخه 1.2.0-rc01 حاوی این commit ها است.

Bug Fixes

  • We have finalized the baseline profiles for our 1.2 release ( Id5740 )

Version 1.2.0-beta02

7 ژوئن 2023

androidx.wear.compose:compose-*:1.2.0-beta02 is released. Version 1.2.0-beta02 contains these commits.

ویژگی های جدید

  • We have added the new experimental LocalReduceMotion CompositionLocal variable which disables scaling and fading on ScalingLazyColumn . ( I58024 )

Bug Fixes

  • We have updated the baseline profiles for the wear compose foundation and material libraries( I4725d )
  • We have fixed an inconsistency in the default values for SwipeToDismissBox contentScrimColor parameters ( I2d70f )
  • We have fixed the DefaultTextStyle default value used for the IncludeFontPadding setting ( I737ed )

نسخه 1.2.0-beta01

24 مه 2023

androidx.wear.compose:compose-*:1.2.0-beta01 is released. نسخه 1.2.0-beta01 حاوی این تعهدات است.

What's in Compose for Wear OS 1.2

The 1.2-beta01 release of Compose for Wear OS indicates that this release of the library is feature complete and the API is locked (except where marked as experimental). Wear Compose 1.2 includes the following new functionality:

  • expandableItem and expandableItems are two new Foundation components that support expanding items within a ScalingLazyColumn . Use expandableItem for a single expandable item, such as Text in which the number of lines. Use expandableItems for a group of expandable items and expandableButton to simplify creating a button that collapses after the content is expanded.
  • HierarchicalFocusCoordinator - this experimental composable enables marking sub-trees of the composition as focus enabled or focus disabled.
  • Picker - the API now includes userScrollEnabled to control whether the picker is active for user scrolling.
  • PickerGroup - a new composable for handling multiple pickers together. It handles focus between the pickers using the HierarchicalFocusCoordinator API and enables auto-centering of picker items.
  • Placeholder - we have made updates to the shimmer and 'Wipe Off' animations. The wipe-off effect is now immediately applied when the content is ready.
  • ScalingLazyColumn - we have migrated ScalingLazyColumn and associated classes from androidx.wear.compose.material.ScalingLazyColumn to androidx.wear.compose.foundation.lazy.ScalingLazyColumn . Please update to use the Foundation.Lazy version.
  • SwipeToReveal - we have added experimental support for swipe-to-reveal as a means to access secondary actions, supplementing the existing 'long press' pattern.
  • Stepper - now has an overload with an additional enableRangeSemantics parameter to facilitate disabling the default range semantics.
  • Previews - we have added the following custom annotations for previewing composables on Wear screens: WearPreviewSmallRound previews the composable on a small, round device; WearPreviewLargeRound previews the composable on a large round device; WearPreviewSquare previews the composable on a square device. Also, the following and multi-preview annotations: WearPreviewFontScales previews the composables on a wear device with multiple font sizes, while WearPreviewDevices previews the composables on different wear devices.
  • We have added a DefaultTextStyle to Wear Compose which defaults the PlatformTextStyle.includeFontPadding property to true (this is the current setting). This will allow us to synchronize turning off font padding by default with the Compose libraries in an early 1.3 alpha version - see 1.2.0-alpha10 for more information.

ویژگی های جدید

  • We have added experimental support for disabled scaling and fading animation when reduce_motion setting is switched on. ( I58024 )

Bug Fixes

  • Improved documentation for angularWidthDp in CurvedSize.kt ( Iab75c )
  • SwipeDismissableNavHost now logs a warning with potential causes of empty backstack. This is done to prevent unexpected crashes caused because of IllegalArgumentException which was thrown when the backstack was empty. ( I04a81 , b/277700155 )

Version 1.2.0-alpha10

10 مه 2023

androidx.wear.compose:compose-*:1.2.0-alpha10 is released. Version 1.2.0-alpha10 contains these commits.

ویژگی های جدید

  • We have added support for Swipe to Reveal, as a means to access secondary actions. This pattern supplements the 'long press' pattern, the existing way a user could reveal (different) secondary actions. ( I60862 )

API Changes

  • We have added RevealScope to action composables in SwipeToReveal , which gives access to the offset at which additional actions are revealed. ( I3fd56 )

Bug Fixes

  • Fixed an issue with ScalingLazyColumn being stuck on Wear API 33 after fling ( Ic4599 )
  • We have made some performance improvements to PositionIndicator for jank reduction. ( I35e92 )
  • We have fixed a bug in Chip and CompactChip where the semantic role was no longer being set to Role.Button . ( I93f91 , b/277326264 )

مسائل شناخته شده

  • We have identified a bug in Android Studio which causes failure in rendering preview when annotated with @WearPreviewDevices and @WearPreviewFontScales - a fix is planned for release soon. Please note that the other wear preview annotations work as intended in Android Studio Giraffe 2022.3.1 and beyond.

  • In version 1.2.0-alpha07 we added DefaultTextStyle to Wear Compose, maintaining the existing PlatformTextStyle.includeFontPadding value as true - for background, see Fix font padding in Compose . We will be changing the DefaultTextStyle to turn off font padding in an early 1.3 alpha version, to be consistent across the Android Platform. This will address some cases of text clipping with large font sizes and may also impact screen layouts, so that screenshot tests need updating. For example, with large font sizes we see text clipping here:

Text clipped with large font size
Figure 1 : Text clipped.
  • It is no longer present when font padding is turned off:
Text not clipped with large font size
Figure 2 : Text not clipped.

The new setting can be adopted now by overriding the typography in your theme - see example code .

Version 1.2.0-alpha09

19 آوریل 2023

androidx.wear.compose:compose-*:1.2.0-alpha09 is released. Version 1.2.0-alpha09 contains these commits.

API Changes

  • Add angularSizeDp to the CurvedModifier api for setting angular width in DP ( I89a52 )

Bug Fixes

  • We have fixed accessibility issues in our time picker demos( Id0eb7 )

Version 1.2.0-alpha08

5 آوریل 2023

androidx.wear.compose:compose-*:1.2.0-alpha08 is released. Version 1.2.0-alpha08 contains these commits.

API Changes

  • We have renamed ExpandableItemsState to ExpandableState . ( If85ea )
  • We have added expandableButton to simplify creating a button that collapses when the content is expanded and also updated the expandables examples. ( Iae309 )

Bug Fixes

  • Improved expandable samples to show more possibilities. Modified animation of expandableItem to keep its content centered through the animation. ( I2f637 )
  • Updated ToggleControls to avoid extra recompositions when manually animating the colors using State. ( I5d319 )

Version 1.2.0-alpha07

22 مارس 2023

androidx.wear.compose:compose-*:1.2.0-alpha07 is released. Version 1.2.0-alpha07 contains these commits.

API Changes

  • We have moved the Expandable Item components (added in 1.2.0-alpha06) from material to foundation, since they had no meaningful reference to the MaterialTheme . ( Ib0525 )

Bug Fixes

  • We have fixed a crash that occurred in a screen using PickerGroup , by ensuring that PickerGroup handles focus correctly when no Picker has the focus. Also added support for RSB scrolling in our Picker demos. ( If8c19 )
  • We have improved the dialog transitions - the intro transition is now smoother to match the outro transition. ( Ib5af9 )
  • We have added a DefaultTextStyle to Wear Compose which defaults the PlatformTextStyle.includeFontPadding property to true (this is the current setting). This will allows us to synchronize turning off font padding by default with the Compose libraries in the future - see ( Fix font padding in Compose ) for background. ( I2aee8 )
  • Reverted an UpsideDownCake preview dependency via activity-compose that blocked publishing apps to the Google Play Store. ( I6443d )

Version 1.2.0-alpha06

8 مارس 2023

androidx.wear.compose:compose-*:1.2.0-alpha06 is released. Version 1.2.0-alpha06 contains these commits.

API Changes

  • Add CurvedBox component, which places components on top of each other in the curved world. ( I29200 )
  • Added Expandable Item(s) - two new components to support either a group of expandable items in a ScalingLazyColumn , or an expandable single item, such as Text in which the number of lines expands. ( I95dd5 )
  • We have added the following custom annotations for previewing composables on Wear screens: WearPreviewSmallRound previews the composable on a small, round device; WearPreviewLargeRound previews the composable on a large round device; WearPreviewSquare previews the composable on a square device. Also, the following and multi-preview annotations: WearPreviewFontScales previews the composables on a wear device with multiple font sizes, while WearPreviewDevices previews the composables on different wear devices. To use these previews, you must be using the latest Android Studio (Giraffe Canary 6) or beyond. Please note that if these annotations do not suit your purpose, Preview can still be used and supports further customisations via parameters. ( I397ff )
  • We have marked HierarchicalFocusCoordinator as experimental while it is considered as a candidate to be moved into core compose libraries, given its wide applicability. ( I3a768 )

Bug Fixes

  • Fixed a bug on HierarchicalFocusCoordinator , when the lambda passed in for the focusEnabled parameter is changed, we now correctly use the new one. ( Icb353 )
  • We have updated the default disabled content color to Background when using primary colors as the background in Button , CompactButton , Chip , CompactChip and ToggleButton . This improves the contrast for accessibility. ( I527cc )

Version 1.2.0-alpha05

22 فوریه 2023

androidx.wear.compose:compose-*:1.2.0-alpha05 is released. Version 1.2.0-alpha05 contains these commits.

API Changes

  • Updated PickerGroup API to allow propagating the min constraints to the composable optionally. When set as true, the minimum constraints passed from the parent composable will be allowed on the PickerGroup . If set as false, PickerGroup will reset the minimum constraints. ( I3e046 )
  • We have added animateScrollToOption to the Picker API in order to support programmatic animation to a specific Picker option ( I6fe67 )

Bug Fixes

  • We have updated HorizontalPageIndicator to support right-to-left layouts. ( Ia4359 )
  • Added Screenshot tests for right-to-left layout in HorizontalPageIndicator ( I6fbb8 )
  • Added further tests to SwipeDismissableNavHostTest that use TestNavHostController ( I61d54 )

Version 1.2.0-alpha04

8 فوریه 2023

androidx.wear.compose:compose-*:1.2.0-alpha04 is released. Version 1.2.0-alpha04 contains these commits.

ویژگی های جدید

  • PickerGroup for handling multiple pickers together using the focus API. It handles the focus between the different pickers, enables auto-centering of the pickers based on parameters and allows developers to change the focus between different pickers while handling the events from the group. In talkback mode, the PickerGroup handles the talkback focus by moving the focus to the selected Picker from the group. ( I60840 )

API Changes

  • We have added an overload to Stepper with an additional enableRangeSemantics parameter in order to facilitate disabling the default range semantics ( Ia61d4 )

Bug Fixes

  • Allow ScalingLazyColumn to be nested within a horizontally scrolling page ( Iec3f8 , b/266555016 )
  • Improvement of Stepper kdocs and StepperTest tests clean-up. ( Ic118e )
  • Updated androidx.navigation dependency to version 2.5.3 ( If58ed )

Version 1.2.0-alpha03

January 25, 2023

androidx.wear.compose:compose-*:1.2.0-alpha03 is released. Version 1.2.0-alpha03 contains these commits.

API Changes

  • We have migrated ScalingLazyColumn (and associated classes) from androidx.wear.compose.material.ScalingLazyColumn to andrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn (see this example for migration). This new location more closely matches that of compose.foundation.lazy.LazyColumn and is more natural as it is not an opinionated Material component. The change is happening now in preparation for a new Material3 library, which we will be working on in parallel with the existing Material library. ( I060e7 )

The following changes are part of the ScalingLazyColumn migration from Material to Foundation.Lazy :

  • PositionIndicator apis targeting Material ScalingLazyColumn have been deprecated - please update to Foundation.Lazy ScalingLazyColumn . Additionally anchorType field was added to ScalingLazyListLayoutInfo . ( I29d95 )
  • ScalingLazyColumn has been marked as deprecated in the Wear Compose Material package ( I16d34 )
  • We have updated the ScrollAway modifier to use ScalingLazyListState from Wear Compose Foundation.Lazy and deprecated the overload that took ScalingLazyListState from Wear Compose Material. ( Ifc42c )
  • We have updated the Dialog APIs to use ScalingLazyListState from Foundation.Lazy and deprecated the overloads that used Material ScalingLazyListState ( Ic8960 )
  • We have updated the Picker APIs to use ScalingParams from Foundation.Lazy and deprecated the overloads that used Material ScalingParams . ( Idc3d8 )

Bug Fixes

  • We have fixed a bug that caused unnecessary recompositions in ScalingLazyListState.centerItemIndex by ensuring that it only pushes updates when the value actually changes ( Ia9f38 )
  • We have improved the performance of SwipeToDismissBox ( I3933b )
  • Added benchmark tests for ScalingLazyColumn in Wear Compose Foundation ( Ie00f9 )
  • We have updated some internal ScalingLazyColumn classes methods in Material to use their equivalents from Foundation.Lazy ( I38aab )
  • We have fixed some issues in Picker tests and add more tests for checking scroll with offset ( I6ac34 )
  • We migrated the ScalingLazyColumn Integration Demos to depend on Foundation.Lazy instead of Material ScalingLazyColumn ( Ic6caa )
  • We have added optional fromDate/toDate parameters to our DatePicker demo ( I961cd )

نسخه 1.2.0-alpha02

11 ژانویه 2023

androidx.wear.compose:compose-*:1.2.0-alpha02 is released. Version 1.2.0-alpha02 contains these commits.

API Changes

  • Android Compose UI tests will now run layout passes for each frame when executing frames to get to idle (eg via waitForIdle ). This may affect tests that assert on individual frames of layout animations. ( I8ea08 , b/222093277 )
  • The parameter minLines is added to Wear Text for consistent behaviour with BasicText ( I24874 )
  • CompactChipTapTargetPadding has been made public so that it appears in the documentation ( If1e70 , b/234119038 )

Bug Fixes

  • Disable multiplatform builds for wear.compose packages ( Iad3d7 )
  • Fix kdocs for scrollToOption ( I6f9a0 )
  • PlaceholderState.rememberPlaceholderState() updated to use rememberUpdatedState to that the state will update if the onContentReady lambda. ( I02635 , b/260343754 )
  • We have fixed a text jittering issue seen in the Picker component by leveraging the new compositing strategy added to Modifier.graphicsLayer . ( I99302 )
  • We have fixed a bug that caused flickering in our DatePicker demo ( I660bd )
  • We have improved the accessibility for the 12-hour time and date picker demos ( I05e12 )
  • We have updated our time and date picker demos so that the pickers are not affected by RSB changes when unselected ( I4aecb )

نسخه 1.2.0-alpha01

7 دسامبر 2022

androidx.wear.compose:compose-*:1.2.0-alpha01 is released. نسخه 1.2.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

  • We've updated the experimental Placeholder functionality so that the “Wipe Off” effect is immediately applied when the content is ready rather than waiting for the next animation loop to start. We have also made some updates to the shimmer and wipe off animations. ( I5a7f4 )

API Changes

  • We have added a HierarchicalFocusCoordinator composable to enable marking sub-trees of the composition as focus enabled or focus disabled.( I827cb )
  • We have added a new property to override the semantic role for ToggleButton .( I67132 )
  • We have updated TimeTextDefaults.TimeFormat12Hours to remove AM/PM in TimeText . This will change the default value of timeSource parameters in TimeText API. ( I1eb7f )
  • We have extended the Picker API to improve accessibility for screens with multi-picker. There is a new property userScrollEnabled to control whether the picker is active for user scrolling. ( I3c3aa )

Bug Fixes

  • We have changed the default border width for an OutlinedButton/OutlinedCompactButton from 2.dp to 1.dp to match final UX specs. ( Icf84d )
  • In order to reduce the effect of the first item added to an empty ScalingLazyColumn appearing to scroll into place we have added an estimated autoCentering topPadding when the contents are empty. This change calculates the amount of top padding needed by assuming an initial item of height 0.dp. For ScalingLazyListAnchorType.ItemStart this will calculate the correct top padding, for ScalingLazyListAnchorType.ItemCenter this calculation will be incorrect as the height of the items is needed to correctly size the contents resulting in a small scroll into place effect based on the items real height.( I239a4 )
  • We have updated the background scrim applied to the SwipeToDismiss animation to match the Wear platform. ( I9003e )
  • We have fixed PositionIndicator handling of LazyListState and ScalingLazyListState for list items of size 0 to avoid divide by zero errors.( Ic28dd )

نسخه 1.1

نسخه 1.1.2

8 فوریه 2023

androidx.wear.compose:compose-foundation:1.1.2 , androidx.wear.compose:compose-material:1.1.2 , and androidx.wear.compose:compose-navigation:1.1.2 are released. Version 1.1.2 contains these commits.

رفع اشکال

  • We have fixed a bug that caused unnecessary recompositions in ScalingLazyListState.centerItemIndex by ensuring that it only pushes updates when the value actually changes ( Ia9f38 )

نسخه 1.1.1

11 ژانویه 2023

androidx.wear.compose:compose-foundation:1.1.1 , androidx.wear.compose:compose-material:1.1.1 , and androidx.wear.compose:compose-navigation:1.1.1 are released. Version 1.1.1 contains these commits.

Bug Fixes

  • PlaceholderState.rememberPlaceholderState() updated to use rememberUpdatedState to that the state will update if the onContentReady lambda. ( I02635 , b/260343754 )

نسخه 1.1.0

7 دسامبر 2022

androidx.wear.compose:compose-foundation:1.1.0 , androidx.wear.compose:compose-material:1.1.0 , and androidx.wear.compose:compose-navigation:1.1.0 are released. نسخه 1.1.0 حاوی این commit ها است.

تغییرات مهم از 1.0.0

ویژگی های جدید

  • We've updated the experimental Placeholder functionality so that the “Wipe Off” effect is immediately applied when the content is ready rather than waiting for the next animation loop to start. We have also made some updates to the shimmer and wipe off animations. ( I5a7f4 )

Bug Fixes

  • We have changed the default border width for an OutlinedButton/OutlinedCompactButton from 2.dp to 1.dp to match final UX specs. ( Icf84d )
  • In order to reduce the effect of the first item added to an empty ScalingLazyColumn appearing to scroll into place we have added an estimated autoCentering topPadding when the contents are empty. This change calculates the amount of top padding needed by assuming an initial item of height 0.dp. For ScalingLazyListAnchorType.ItemStart this will calculate the correct top padding, for ScalingLazyListAnchorType.ItemCenter this calculation will be incorrect as the height of the items is needed to correctly size the contents resulting in a small scroll into place effect based on the items real height.( I239a4 )
  • We have updated the background scrim applied to the SwipeToDismiss animation to match the Wear platform.( I9003e )
  • We have fixed PositionIndicator handling of LazyListState and ScalingLazyListState for list items of size 0 to avoid divide by zero errors.( Ic28dd )

نسخه 1.1.0-rc01

9 نوامبر 2022

androidx.wear.compose:compose-foundation:1.1.0-rc01 , androidx.wear.compose:compose-material:1.1.0-rc01 , and androidx.wear.compose:compose-navigation:1.1.0-rc01 are released . نسخه 1.1.0-rc01 حاوی این commit ها است.

Bug Fixes

  • We have added baseline profile rules for Placeholders , ScrollAway , RadioButton , Switch , Checkbox , OutlinedButton , OutlinedCompactButton , OutlinedChip and OutlinedCompactChip . ( I8249c )
  • We have fixed a bug in Modifier.scrollAway so that if the specified itemIndex is invalid (for example, if that item index is out of range), then the TimeText will now still be displayed. ( I2137a )
  • We have updated the SwipeToDismissBox animation to match the platform implementation. After the initial squeeze animation, the screen now slides off to the right once the dismissal has been triggered. ( I41d34 )
  • As an optimization, we have updated Modifier.scrollAway to only read the scrollState inside the measure block to avoid recomposing the modifier after each remeasure. ( I4c6f1 )
  • We have added documentation and a sample to placeholders to show the correct ordering for Modifier.placeholder and Modifier.placeholderShimmer when applied to the same composable. ( Ie96f4 , b/256583229 )
  • We have changed the default border width for an OutlinedCompactChip/OutlinedChip from 2.dp to 1.dp to match final UX specs. ( Ib3d8e )
  • We have fixed a bug in rememberPickerState where updated inputs were not saved, so that composables were not updated after changes to the inputs. ( I49ff6 , b/255323197 )
  • We have made some UI updates to the placeholders, 1) change the shimmer gradient to 1.5x the screen size, 2) add easing (cubic bezier) of the shimmer progression and 3) speed up the wipe-off animation (250ms). ( Id29c1 )
  • We have corrected a UI bug in the placeholder wipeOff effect where Chip and Card backgrounds were wiping off slightly early due to not taking the component's position on screen into account. ( I2c7cb )
  • We have updated the placeholder background drawing to merge colors rather than layer them where possible to reduce the risk of alpha blending of the different cropped layers from allowing underlying colors to bleed through at the placeholder background edges. ( I2ea26 )
  • We have corrected the calculation of ScalingLazyListState.centerItemIndex/centerItemOffset so that if two items sit either side of the viewport center line the one that is closest will be considered as the centerItem . ( I30709 , b/254257769 )
  • We have corrected a bug in the ScalingLazyListState.layoutInfo.visibleItemsInfo which was reporting incorrect offsets during ScalingLazyColumn initialization. Now an empty list will be returned until all list items are visible and have the correct offsets. Check for ScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty() will confirm that the ScalingLazyColumn initialization is complete and items are visible. ( I3a3b8 )

Version 1.1.0-beta01

24 اکتبر 2022

androidx.wear.compose:compose-foundation:1.1.0-beta01 , androidx.wear.compose:compose-material:1.1.0-beta01 , and androidx.wear.compose:compose-navigation:1.1.0-beta01 are released . نسخه 1.1.0-beta01 حاوی این تعهدات است.

What's in Compose for Wear OS 1.1

The 1.1.0-beta01 of Compose for Wear OS indicated that this release of the library is feature complete and the API locked.

  • Wear Compose 1.1 release includes the following new functionality:
    • Picker - Accessibility improvements to Picker so that multi-picker screens are navigable with screen readers and the content description is accessible
    • Picker contentDescription parameter is now used only for the selected Picker option and takes a nullable String (in the previous commit, it was necessary to pass a mapping from option to the content description, but only the selected option was used).
    • Picker items are now always center-aligned, fixing a bug when setting gradientRatio to zero had the side-effect of changing the alignment.
    • Chip/ToggleChip - We have updated the default gradients for Chip/ToggleChip to bring them in line with the latest UX spec. ChipDefaults.gradientBackgroundChipColors has been updated to start from 50% of primary rather than 32.5%.
    • Chip/ToggleChip - Added overloads for modifying Chip shapes
    • Chip/Button/ToggleButton - Added a new outlined style for Chips and Buttons and new OutlinedChip and OutlinedButton composables that provide a transparent Chip/Button with a thin border.
    • Card - Updated the default gradients for Cards to bring them in line with the latest UX spec. CardDefaults.cardBackgroundPainter has been updated to start from 30% of primary and end at 20% of onSurfaceVariant (was previously 20% to 10% onSurfaceVariant ). ToggleChip.toggleChipColors changes from a linear gradient of 75% surface to 32.5% primary to 0% surface to 50% primary.
    • Button/ToggleButton - Added properties for modifying button shapes.
    • Theme - Updated a number of the default colors in the MaterialTheme in order to improve accessibility as the original colors did not have sufficient contrast resulting in difficulties for users to differentiate chip/card/button backgrounds from the theme background color.
    • InlineSlider/Stepper - Button roles added so that Talkback can recognise them as buttons.
    • Scaffold - PositionIndicator now is positioned and sized so that it only takes the space needed. This is useful, for example, if semantic information is added to it, talkback now gets the correct bounds of the PositionIndicator on screen.
    • CurvedText/TimeText - Added Modifier.scrollAway , which scrolls an item vertically in/out of view, based on scroll state (with overloads to work with Column , LazyColumn and ScalingLazyColumn ). ScrollAway is typically used to scroll a TimeText out of view as the user starts to scroll a list of items upwards.
    • CurvedText/TimeText - Added support for fontFamily , fontStyle and fontSynthesis in CurvedTextStyle , usable on curvedText and basicCurvedText
    • CurvedText/TimeText - Added fontWeight to the constructor and copy method on CurvedTextStyle
    • ToggleControls - Added animated Checkbox , Switch and RadioButton toggle controls for use with ToggleChip and SplitToggleChip . These can be used instead of the static icons provided by ToggleChipDefaults ( switchIcon , checkboxIcon and radioIcon ).
    • Placeholder - Added experimental placeholder support. This has three distinct visual effects designed to work together.
    • Firstly a placeholder background brush effect used in containers such as Chip and Cards to draw over the normal background when waiting for content to load.
    • Secondly a modifier ( Modifier.placeholder() ) to draw a stadium shaped placeholder widget over the top of content that is being loaded.
    • Thirdly a modifier gradient/shimmer effect ( Modifier.placeholderShimmer() ) that is drawn over the top of the other effects to indicate to users that we are waiting for data to load.
      • All of these effects are designed to be coordinated and shimmer and wipe-off in an orchestrated fashion.
  • Core Compose dependencies updated from 1.2 to 1.3

API Changes

  • Font parameters ( fontFamily , fontWeight , fontStyle & fontSynthesis ) can now be specified directly as parameters of curvedText ( Idc422 )

Bug Fixes

  • curveText and basicCurvedText will now work properly with talkback (the have a properly sized and placed (but empty) compose-ui node associated with them, using the text as content description) ( I7af7c , b/210721259 )
  • Bug fix to the Picker when PickerState.repeatedItems = false to add an explicit setting of autoCentering params on the Pickers internal ScalingLazyColumn to ensure that it is possible to scroll the zero'th option to the center of the view. ( I8a4d7 )

Version 1.1.0-alpha07

5 اکتبر 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha07 , androidx.wear.compose:compose-material:1.1.0-alpha07 , and androidx.wear.compose:compose-navigation:1.1.0-alpha07 are released . Version 1.1.0-alpha07 contains these commits.

ویژگی های جدید

  • We have added experimental placeholder support. This has three distinct visual effects designed to work together. Firstly a placeholder background brush effect used in containers such as Chip and Cards to draw over the normal background when waiting for content to load. Secondly a modifier ( Modifier.placeholder() ) to draw a stadium shaped placeholder widget over the top of content that is being loaded. Thirdly a modifier gradient/shimmer effect ( Modifier.placeholderShimmer() ) that is drawn over the top of the other effects to indicate to users that we are waiting for data to load. All of these effects are designed to be coordinated and shimmer and wipe-off in an orchestrated fashion. ( I3c339 )

API Changes

  • Added support for fontWeight , fontFamily , fontStyle and fontSynthesis in CurvedTextStyle , usable on curvedText and basicCurvedText . Those parameter can be used to specify the font and style to use on the curved text.( Iaa1a8 ),( I72759 )
  • Updated Modifier.scrollAway 's offset parameter to Dp for consistency with Modifier.offset (previously it was in pixels). Also, refactored as a LayoutModifier for efficiency. ( I9f94b )
  • As part of the new toggle controls API, we have renamed RadioButton's circleColor to ringColor . ( I28fa9 )
  • We have added animated Checkbox , Switch and RadioButton toggle controls for use with ToggleChip and SplitToggleChip . These can be used instead of the static icons provided by ToggleChipDefaults ( switchIcon , checkboxIcon and radioIcon ). ( I8a8c4 )

Version 1.1.0-alpha06

21 سپتامبر 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha06 , androidx.wear.compose:compose-material:1.1.0-alpha06 , and androidx.wear.compose:compose-navigation:1.1.0-alpha06 are released . Version 1.1.0-alpha06 contains these commits.

ویژگی های جدید

  • We have added Modifier.scrollAway , which scrolls an item vertically in/out of view, based on scroll state (with overloads to work with Column , LazyColumn and ScalingLazyColumn ). ScrollAway is typically used to scroll a TimeText out of view as the user starts to scroll a list of items upwards. ( I61766 )

Bug Fixes

  • The PositionIndicator now is positioned and sized so that it only takes the space needed. This is useful, for example, if semantic information is added to it, talkback now gets the correct bounds of the PositionIndicator on screen. ( Ie6106 , b/244409133 )

Version 1.1.0-alpha05

7 سپتامبر 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha05 , androidx.wear.compose:compose-material:1.1.0-alpha05 , and androidx.wear.compose:compose-navigation:1.1.0-alpha05 are released . Version 1.1.0-alpha05 contains these commits.

Bug Fixes

  • Button roles were added to InlineSlider and Stepper so that Talkback can recognise them as buttons. ( Icb46c , b/244260275 )
  • We have corrected the z-order of position and page indicators in the Scaffold. The indicators will now sit on top of the vignette and so will not be obscured by the vignette if it is present. ( Ib988f , b/244207528 )

Version 1.1.0-alpha04

24 آگوست 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha04 , androidx.wear.compose:compose-material:1.1.0-alpha04 , and androidx.wear.compose:compose-navigation:1.1.0-alpha04 are released . Version 1.1.0-alpha04 contains these commits.

API Changes

  • We have updated a number of the default colors in the MaterialTheme in order to improve accessibility as the original colors did not have sufficient contrast resulting in difficulties for users to differentiate chip/card/button backgrounds from the theme background color. The updated colors are surface(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F8) and onError(0xFF202124->0xFF000000). The changes in colors though relatively subtle may impact existing screenshot tests. ( 81ab09 )

Bug Fixes

  • Fix a logic bug in ScalingLazyColumn that could result in lists with a small (typically exactly 2) number of list items not completing initialization and as a result being transparent. ( 504347 )

Version 1.1.0-alpha03

10 آگوست 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha03 , androidx.wear.compose:compose-material:1.1.0-alpha03 , and androidx.wear.compose:compose-navigation:1.1.0-alpha03 are released . Version 1.1.0-alpha03 contains these commits.

ویژگی های جدید

  • We have added a new outlined style for Chips and Buttons and new OutlinedChip and OutlinedButton composables that provide a transparent Chip/Button with a thin border. ( Id5972 )

API Changes

  • Added overloads for modifying button shapes ( Icccde )

رفع اشکال

  • We have corrected the size of the toggle control area of the ToggleChip as it was not matching its UX spec. The UX Spec calls for a 4.dp spacer between the label and a 24x24.dp toggle control icon area giving a total 28.dp width. However the implementation is incorrectly giving 36x24.dp toggle control area. This results in taking away 8.dp of usable text label area. NOTE: This bug fix gives additional space for the text label and as result can (positively) impact the text layout for overflowing text. If you have screenshot tests including ToggleChips they may need to be updated. ( 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 , and androidx.wear.compose:compose-navigation:1.1.0-alpha02 are released . Version 1.1.0-alpha02 contains these commits.

ویژگی های جدید

  • We have switched Compose for Wear OS dependencies on core Compose libraries from 1.2.0 to 1.3.0-alpha0X

API Changes

  • Added overloads for modifying chip shapes ( I02e87 )

Bug Fixes

  • We have animated the visibility of the vignette when showing/hiding Dialog, to be consistent with the existing scaling animation. ( Ida33e )
  • We have fixed a bug where a divide-by-zero could occur with some fling behavior when scrolling. ( I86cb6 )
  • Fixed a bug in the ChipDefaults.childChipColor() to ensure that the disabled background color is fully transparent. ( 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 , and androidx.wear.compose:compose-navigation:1.1.0-alpha01 are released . نسخه 1.1.0-alpha01 حاوی این commit ها است.

API Changes

  • Picker's contentDescription parameter is now used only for the selected Picker option and takes a nullable String (previously, it was necessary to pass a mapping from option to the content description, but only the selected option was used). ( Ife6a7 )
  • We have made accessibility improvements to Picker so that multi-picker screens are navigable with screen readers and the content description is accessible ( I64edb )

Bug Fixes

  • We have updated the baseline profile rules packaged with the Wear Compose library ( I9c694 )
  • We have corrected the direction of the gradient for Chips in right to left mode. Was top left->bottom right, is now top right->bottom left. ( Ic2e77 )
  • We have updated the default gradients for Chip/ToggleChip/Card to bring them in line with latest UX spec. ChipDefaults.gradientBackgroundChipColors has been updated to start from 50% of primary rather than 32.5%. CardDefaults.cardBackgroundPainter has been updated to start from 30% of primary and end at 20% of onSurfaceVariant (was previously 20% to 10% onSurfaceVariant ). ToggleChip.toggleChipColors changes from a linear gradient of 75% surface to 32.5% primary to 0% surface to 50% primary. ( I43bbd )
  • We have added a background color ( MaterialTheme.color.surface ) behind Chip/ToggleChips that have gradient backgrounds in order to ensure that they are properly visible in the unlikely event that a light color is used behind them. ( Ibe1a4 , b/235937657 )
  • Picker items are now always center-aligned, fixing a bug when setting gradientRatio to zero had the side-effect of changing the alignment. ( I712b8 )

نسخه 1.0

نسخه 1.0.2

7 سپتامبر 2022

androidx.wear.compose:compose-foundation:1.0.2 , androidx.wear.compose:compose-material:1.0.2 , and androidx.wear.compose:compose-navigation:1.0.2 are released. Version 1.0.2 contains these commits.

Bug Fixes

  • We have corrected the z-order of position and page indicators in the Scaffold. The indicators will now sit on top of the vignette and so will not be obscured by the vignette if it is present. ( Ib988f , b/244207528 )

نسخه 1.0.1

24 آگوست 2022

androidx.wear.compose:compose-foundation:1.0.1 , androidx.wear.compose:compose-material:1.0.1 , and androidx.wear.compose:compose-navigation:1.0.1 are released. Version 1.0.1 contains these commits.

Bug Fixes

  • Fix a logic bug in ScalingLazyColumn that could result in lists with a small (typically exactly 2) number of list items not completing initialization and as a result being transparent. ( 076c61 )

نسخه 1.0.0

27 جولای 2022

androidx.wear.compose:compose-foundation:1.0.0 , androidx.wear.compose:compose-material:1.0.0 , and androidx.wear.compose:compose-navigation:1.0.0 are released. نسخه 1.0.0 حاوی این commit ها است.

Major features of 1.0.0

  • This is the first stable release of Compose for Wear OS ( read more ).
  • Compose for Wear OS builds upon the core Compose libraries providing additional wearable-specific components and, where appropriate, alternate implementations of core Compose components tailored to wearable devices.
  • For a list of the key components in Wear Compose see the release notes for ( Compose for Wear OS Beta01 ).

Bug Fixes

  • We have animated the visibility of the vignette when showing/hiding Dialog, to be consistent with the existing scaling animation. ( Ida33e )
  • We have fixed a bug where a divide-by-zero could occur with some fling behavior when scrolling. ( I86cb6 )
  • Fixed a bug in the ChipDefaults.childChipColor() to ensure that the disabled background color is fully transparent. ( I2b3c3 , b/238057342 )

Version 1.0.0-rc02

22 ژوئن 2022

androidx.wear.compose:compose-foundation:1.0.0-rc02 , androidx.wear.compose:compose-material:1.0.0-rc02 , and androidx.wear.compose:compose-navigation:1.0.0-rc02 are released . Version 1.0.0-rc02 contains these commits.

رفع اشکال

  • We have corrected the direction of the gradient for Cards in right to left (RTL) mode. It was top left->bottom right, and it is now top right->bottom left. ( Ic2e77 )
  • We have updated the default gradients for Chip/ToggleChip/Card to bring them in line with the latest UX spec. ChipDefaults.gradientBackgroundChipColors has been updated to start from 50% of primary rather than 32.5%. CardDefaults.cardBackgroundPainter has been updated to start from 30% of primary and end at 20% of onSurfaceVariant (was previously 20% to 10% onSurfaceVariant). ToggleChip.toggleChipColors changes from a linear gradient of 75% surface to 32.5% primary to 0% surface to 50% primary. ( I43bbd )
  • We have added a background color ( MaterialTheme.color.surface ) behind Chip/ToggleChips that have gradient backgrounds in order to ensure that they are properly visible in the unlikely event that a light color is used behind them. ( Ibe1a4 , b/235937657 )
  • We have updated the baseline profile rules packaged with the Wear Compose library ( I9c694 )

Version 1.0.0-rc01

15 ژوئن 2022

androidx.wear.compose:compose-foundation:1.0.0-rc01 , androidx.wear.compose:compose-material:1.0.0-rc01 , and androidx.wear.compose:compose-navigation:1.0.0-rc01 are released . نسخه 1.0.0-rc01 حاوی این commit ها است.

API Changes

  • Interfaces in compose libraries are now built using jdk8 default interface methods ( I5bcf1 )

Bug Fixes

  • We have removed the explicit call to fillMaxWidth() on list header as it is not needed and can result in problems if a ScalinglazyColumn has a mixture of ListHeader() and Chip() components as the width will tend to grow/shrink as ListHeader items are scrolled in/out of view. ( I37144 , b/235074035 )
  • We have fixed a bug in the ScalingLazyColumn that could result in the list items not drawing correctly until scrolled if the 0th list item was large enough (including padding) ( Ic6159 , b/234328517 )
  • We have made a small adjustment in the ScalingLazyColumn easing as items reach the edge of the screen to match UX spec updates. Old values CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f) -> new values CubicBezierEasing(0.3f, 0f, 0.7f, 1f) . To keep the old behavior you can override the scalingParams of ScalingLazyColumn ( Ie375c )
  • We have added padding to the CompactChip in order to ensure that its tap target size is at least 48.dp high to meet the Material accessibility guidelines. This might impact any layouts you have using CompactChips as they will be taking up additional space. ( I3d57c )

Version 1.0.0-beta03

1 ژوئن 2022

androidx.wear.compose:compose-foundation:1.0.0-beta03 , androidx.wear.compose:compose-material:1.0.0-beta03 , and androidx.wear.compose:compose-navigation:1.0.0-beta03 are released . Version 1.0.0-beta03 contains these commits.

ویژگی های جدید

  • We have made ScalingLazyColumn work in Compose @Preview mode. ( I3b3b6 , b/232947354 )

API Changes

  • We have changed the default value for the ScalingLazyColumn.horizontalAlignment property from Start to CenterHorizontally to ensure that when list items do not fill the entire width of the column they will be aligned for maximum visibility. To switch back to the previous behavior set horizontalAlignment = Alignment.Start .( I9ed4b )

مسائل شناخته شده

  • CompactChip's tap/touch height is smaller than Material accessibility guidelines. This will be corrected in the next release (15th June) . If you are using CompactChip this will affect your layouts as CompactChips will now have additional padding above and below. Please adjust and test your layouts or see the bug comments for a workaround to use the existing behavior. ( b/234332135 )

Bug Fixes

  • New demo to animate adding or removing a start text on a TimeText . ( I16d75 )
  • Add tests for HorizontalPageIndicator.PagesState ( I64ed0 )
  • Updating TimeText closer to UX specs ( Ib7ea1 )

Version 1.0.0-beta02

18 مه 2022

androidx.wear.compose:compose-foundation:1.0.0-beta02 , androidx.wear.compose:compose-material:1.0.0-beta02 , and androidx.wear.compose:compose-navigation:1.0.0-beta02 are released . Version 1.0.0-beta02 contains these commits.

ویژگی های جدید

  • Picker now always responds to scroll events even when in read-only mode. This avoids the need for users to first select a Picker by tapping, before they can scroll. In read-only mode, options other than that currently selected are obscured by a shim in gradientColor . ( I72925 )
  • We have changed the UX behavior of Chip/ToggleChip/CompactChip/SplitToggleChip to stop them from doing fillMaxWidth by default. Instead they will grow to fit their contents. To keep the previous behavior simply add modifier = Modifier.fillMaxWidth() ( I60a2c , b/232206371 )

Bug Fixes

  • CurvedTextStyle constructor taking a TextStyle now also respects the fontWeight (This may be added to the constructor and copy methods in future revisions of the API) ( Ieebb9 )
  • Edge swiping improvements. When Modifier.edgeSwipeToDismiss is used and a swipe to the left is triggered from the edge area, it no longer triggers swipe-to-dismiss when swipe direction changes to the right. Previously, it was possible to trigger swipe-to-dismiss by swiping to the left and then swiping to the right.( I916ea )
  • HorizontalPageIndicator now shows up to 6 pages on the screen. If there are more than 6 pages in total, it shows a half-size indicator on the left or right, with a smooth transition between pages.( I2ac29 )
  • Improved default snap behavior on ScalingLazyColumn and Picker ( I49539 )
  • Edge swiping improvements. When Modifier.edgeSwipeToDismiss is used, swipe-to-dismiss only triggers when first touch lands on the edge and swiped to the right, Previously it was possible to trigger swipe-to-dismiss by swiping from any part of the screen if a scroll reaches the start.( 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 , and androidx.wear.compose:compose-navigation:1.0.0-beta01 are released . نسخه 1.0.0-beta01 حاوی این تعهدات است.

What's in Compose for Wear OS 1.0

The 1.0.0-beta01 of Compose for Wear OS marks an important milestone as the library is feature complete and the API locked.

Wear Compose Material components in the 1.0 release include:

  • Material Theme - used as a replacement for the Compose for Mobile MaterialTheme , provides the colors, shapes and typography for building components on Wearables that implement the Wear Material Design UX guidelines out of the box.
  • Button , CompactButton and ToggleButton - Button offers a single slot to take an icon, image or short text (3 characters max). Circular in shape with recommended sizes for default, large or small buttons. CompactButton offers a single slot to take any content (icon, image or text) and is circular in shape with background size extra small. CompactButton has optional transparent padding around the background that increases the clickable area. ToggleButton is a button that offers a single slot to take any content (short text, icon or image) and has on/off (checked/unchecked) states with coloring and different icons to show whether checked or not
  • Cards - used to display information about applications such as notifications. Flexible design for different use cases with AppCard and TitleCard giving different layouts and support for images as either card contents or backgrounds.
  • Chips - stadium shaped components similar to buttons, but with a larger area and multiple slots to allow for labels, secondary labels and icons. In different sizes and with support for images as backgrounds.
  • ToggleChips and SplitToggleChips - a Chip with a checked/unchecked state and the addition of a ToggleControl slot to show an icon such as a switch or radio button to show the checked state of the component. In addition, the SplitToggleChip has two tappable areas, one clickable and one toggleable.
  • CircularProgressIndicator - Wear Material progress indicator with two variations. The first expresses the proportion of completion of an ongoing task and supports a gap in the circular track between start and end angles. The second indicates indeterminate progress for an unspecified wait time.
  • curvedText - forms part of the DSL for describing CurvedLayouts , along with curvedRow and curvedColumn , to lay out components around circular devices. See Wear Component Foundation below for more details on CurvedLayout and CurvedModifier (this plays a similar role to Modifiers in the non curved world and allows for configuration of various aspects of layout, padding, gradients, etc).
  • Dialog, Alert and Confirmation - Dialog displays a full-screen dialog, layered over any other content, and supports swipe-to-dismiss. It takes a single slot which is expected to be opinionated Wear Material dialog content such as Alert or Confirmation. Alert is opinionated dialog content with slots for icon, title and message. It has overloads for either two negative and positive buttons shown side-by-side or a slot for one or more vertically stacked chips. Confirmation is opinionated dialog content that displays a message for a given duration. It has a slot for an icon or image (that could be animated).
  • HorizontalPageIndicator - shows horizontal page position in a fashion appropriate to the Wearable form factor. Designed to take the full screen and show a curved indicator on round devices. Can be used with the Accompanist page viewer.
  • Icon - A Wear implementation of Icon which takes color and alpha from the Wear Material Theme. For a clickable icon, see Button or Chip.
  • Picker - displays a scrollable list of items from which to pick. By default, items will be repeated 'infinitely' in both directions. Can be displayed in read-only mode to hide unselected options.
  • PositionIndicator - shows scroll position or other positional indication in a fashion appropriate to the Wearable form factor. Designed to take the full screen and shows a curved indicator on round devices.
  • Scaffold - implements the basic Wear Material Design visual layout structure. This component provides an API to put together several Wear Material components (such as TimeText , PositionIndicator and Vignette ) constructing the screen, ensuring proper layout strategy for them and collecting necessary data so these components will work together correctly.
  • ScalingLazyColumn - a scrolling scaling/fisheye list component that forms a key part of the Wear Material Design language. Provides scaling and transparency effects to the content items. ScalingLazyColumn is designed to be able to handle potentially large numbers of content items, which are only materialized and composed when needed.
  • Slider - allows users to make a selection from a range of values. The range of selections is shown as a bar, which can optionally be displayed with separators.
  • Stepper - a full-screen component that allows users to make a selection from a range of values, using increase/decrease buttons at the top and bottom of the screen, with a slot in the middle for Text or a Chip.
  • SwipeToDismissBox - handles the swipe-to-dismiss gesture. It takes a single slot for the background (only displayed during the swipe gesture) and the foreground content. Can optionally be combined with the androidx navigation library by using SwipeDismissableNavHost (see Wear Compose Navigation library below).
  • Text - A Wear implementation of the Compose Material Text component, taking color and alpha from the Wear Material Theme
  • TimeText - a component for showing Time and application status at the top of the screen. Adjusts to screen shape by using curved text on round screens.
  • Vignette - a screen treatment for use in the Scaffold that blurs top and bottom of screen when scrollable content is in use.

  • The following components are also included from Wear Compose Foundation:

  • CurvedLayout - Wear Foundation CurvedLayout is a layout composable that places its children in an arc, rotating them as needed. This is similar to a Row layout curved into a segment of an annulus. Note that the content of a CurvedLayout is not a composable lambda - rather, it is a DSL (domain-specific language). All elements in the CurvedLayout's DSL support an optional modifier parameter, created from CurvedModifier .

  • basicCurvedText - an element in the CurvedLayout DSL, basicCurvedText allows developers to easily write curved text following the curvature of a circle (usually at the edge of a circular screen). basicCurvedText can be only created within the CurvedLayout to ensure the best experience, like being able to specify the positioning, and using CurvedModifiers . Note that in most cases curvedText should be used instead, since it uses Material theming.

  • curvedComposable - wraps normal composable content so that it can be used with CurvedLayout . If curvedComposable has several elements inside, they will be drawn on top of each other (like a Box). To put several composables along a curve, wrap each one with curvedComposable .

  • curvedRow and curvedColumn - similar to Row and Column, curvedRow and curvedColumn can be nested inside a CurvedLayout to lay elements out as needed. For a curvedRow , the angular layout direction and radial alignment may be specified. For a curvedColumn , the angular alignment and radial direction may be specified.

  • CurvedModifier - all curved components accept a modifier parameter that can be created using CurvedModifier : background, size, weight and padding are supported.

  • The following component is also included from Wear Compose Navigation:

  • SwipeDismissableNavHost - provides a place in the Compose hierarchy for self-contained navigation to occur, with backwards navigation provided by a swipe gesture. Content is displayed within a SwipeToDismissBox , showing the current navigation level. During a swipe-to-dismiss gesture, the previous navigation level (if any) is shown in the background.

  • See previous release notes for the various Alpha releases for more details of what has been delivered.

API Changes

  • Added CurvedModifier.padding* functions. These are used to specify additional space to be added around a curved component. ( I4dbb4 )
  • Removed CompositionLocal internal class ( I42490 )
  • We have added constant values for Button , CompactButton and ToggleButton icon sizes, as guidance ( I57cab )
  • Add enabled parameter to AppCard and TitleCard . Now they have a similar API to androidx.compose.material Cards. When the parameter is set to false, the card will not be clickable. ( Idc48d , b/228869805 )

Bug Fixes

  • Stepper now disables the decrease and increase buttons when the lower/upper limits have been reached (and applies ContentAlpha.disabled to the iconColor) ( I4be9f )
  • We have added 1dp padding around Picker contents when drawn with a gradient to prevent jitter on text seen when swiping. ( I0b7b9 )
  • Add screenshot tests for PositionIndicator ( I5e8bc )
  • Add more tests for AppCard and 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha21 are released . Version 1.0.0-alpha21 contains these commits.

ویژگی های جدید

  • Added new curved modifiers to specify the background of a curved element: CurvedModifier.background , .radialGradientBackground and .angularGradientBackground ( I8f392 )
  • Allow curved text overflow mode (clip/ellipsis/visible) to be specified. ( I8e7aa )
  • Added CurvedModifier.weight modifier, similar to the one in Compose. This can be used on children of curvedRow and CurvedLayout (for width) and children of curvedColumn (for height). ( I8abbd )
  • Added CurvedModifier.size , .angularSize and .radialSize modifiers to specify the size of a curved element. ( I623c7 )

API Changes

  • Reorder parameters to ensure background is before color consistently across the Wear Compose API ( I43208 )
  • Removed clockwise & insideOut parameters and replaced with more expressive constants on new classes. Curved layout direction can now be LayoutDirection aware, and it is inherited when not specified ( If0e6a )
  • We have replaced autoCenter: Boolean with autoCenter: AutoCentringParams in order to fix an API issue with the ScalingLazyColumn . ( Ia9c90 )
  • We have renamed iconTintColor and toggleControlTintColor to iconColor and toggleControlColor throughout the API (Chip/ToggleChip/Dialog/Slider/Stepper/...) as the color is applied to the icon/toggleControl slot. ( Ied238 )
  • Rewrite PageIndicatorStyle enum into value class ( I2dc72 )
  • We have added RowScope/ColumnScope/BoxScope to some of the slots in our Composables to indicate to developers what the layouts assumptions are. This will allow developers to use additional modifiers on some slot content and avoid the need to provide extra layout elements. Additionally we have made some minor updates to the AppCard/TitleCard colors so that timeColor and appColor default to contentColor , these properties can still all be individually overridden if needed. ( I26b59 )
  • Made SwipeToDismissBoxState.Companion object private ( I39e84 )
  • Fix parameters order for InlineSlider and Stepper . A simple change to follow api guidelines ( I11fec )
  • We have removed the Saver object for SwipeToDismissBoxState as it was not used. ( Ifb54e )
  • We have updated CompactChip to bring it inline with the latest UX Specification. Padding has been reduced to horizontal = 12.dp and vertical = 0.dp. The font for label has been changed from button to caption1. The recommended icon sizes are 20x20 when both icon and label are present and 24x24 for an icon only compact chip. For the icon only use case we have also ensured that the icon is center aligned. ( Iea2be )
  • We have added a number of new fields to ScalingLazyListLayoutInfo to enable developers to know the amount of contentPadding and autoCenteringPadding that has been applied. These can be useful for developers when calculating fling/scroll ( I7577b )
  • We have implemented in/out transitions for Dialog. A showDialog parameter has been added and the Dialog now controls its own visibility (this enables Dialog to run the intro and outro animations when the Dialog is shown/hidden). Note that the outro animation is not performed when the user leaves the dialog via swipe-to-dismiss. We have also added a default value for state in the recently added SwipeToDismissBox overload. ( I682a0 )
  • In order to better support i18n and a11y we have changed ToggleChip and SplitToggleChip so that they no longer have a default for the toggleControl slot. We have also changed ToggleChipDefaults so that the following methods now return ImageVector rather than Icon (note that as they no longer return @Composables they have changed to start with lower case), SwitchIcon()->switchIcon() , CheckboxIcon->checkboxIcon() and RadioIcon()->radioIcon() - this allows and encourages developers to create their own Icon() composables with an appropriate contentDescription set. ( I5bb5b )
  • We have added a SwipeDismissableNavHostState parameter to SwipeDismissableNavHost . This supports use of edge-swiping on screens used as navigation destinations, because SwipeToDismissBoxState can now be hoisted and used to initialize both SwipeDismissableNavHostState and Modifier.edgeSwipeToDismiss on screens that require edge-swiping. ( I819f5 , b/228336555 )

Bug Fixes

  • Ensure curved layouts are updated when needed. ( Ie8bfa , b/229079150 )
  • Bug fix for https://issuetracker.google.com/issues/226648931 ( Ia0a0a , b/226648931 )
  • Removed unnecessary experimental annotations ( I88d7e )

Version 1.0.0-alpha20

6 آوریل 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha20 , androidx.wear.compose:compose-material:1.0.0-alpha20 , and androidx.wear.compose:compose-navigation:1.0.0-alpha20 are released . Version 1.0.0-alpha20 contains these commits.

ویژگی های جدید

  • Add edgeSwipeToDismiss modifier for SwipeToDismiss . Allows swipeToDismiss to be active only on the left edge of the viewport. Used when the center of the screen needs to be able to handle horizontal paging, such as 2-d scrolling a Map or swiping horizontally between pages.( I3fcec , b/200699800 )

API Changes

  • Base implementation of CurvedModifiers , this opens the way to introduce ways to customize curved content (but no CurvedModifiers are provided yet, and the ability to create custom modifiers may be available later) ( I9b8df )
  • EdgeSwipe modifier documentation and default values update for better understanding .( I6d00d )
  • Add PageIndicator slot into Scaffold. By adding PageIndicator directly into Scaffold we might assure that it will be correctly shown on circular devices. ( Ia6042 )
  • Remove default Icons from InlineSlider and Stepper parameters. This will help developers to be more attentive to localization and accessibility requirements. Usages of default icons were shown in demos and samples. ( I7e6fd )
  • Replace Trailing and Leading parameter names with Start and End in TimeText ( Iaac32 )
  • We have added a SwipeToDismissBox overload with an onDismissed parameter to support the common usage of triggering a navigation event when the swipe gesture has completed. ( I50353 , b/226565726 )
  • Removed ExperimentalWearMaterialApi annotations from TimeText usage ( Ide520 )
  • We have marked ScalingLazyList/Column scope and info interfaces as sealed as they are not intended for external developers to implement and this will allow us to add new members in them in future without binary breaking changes. ( I7d99f )
  • We have added a new flingBehaviour property to the Picker and a PickerDefaults.flingBehaviour() method to enable configuration of the fling behavior such as adding RSB support. PickerState now implements the ScrollableState interface. ( Ib89c7 )

Bug Fixes

  • Update the Android Runtime (ART) baseline profile rules for Wear Compose libraries. ART can leverage profile rules on devices in order to compile ahead-of-time a specific subset of the application to improve the performance of the application. Note that this will have no effect on debuggable applications. ( Iaa8ef )
  • Improve documentation ( I2c051 )

Version 1.0.0-alpha19

23 مارس 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha19 , androidx.wear.compose:compose-material:1.0.0-alpha19 , and androidx.wear.compose:compose-navigation:1.0.0-alpha19 are released . Version 1.0.0-alpha19 contains these commits.

API Changes

  • Renamed CurvedRow to CurvedLayout , and reworked to be a scope with a DSL. Using this DSL, more complex curved layouts can be specified using a series of nested curvedRow and curvedColumn (Which are the curved layout equivalents of Row and Column). Inside these layout elements, three elements can be used: curvedComposable (to add any @Composable), basicCurvedText (foundation's curved text) and curvedText (wear material aware curved text). ( Ib776a )
  • Make the side for the PositionIndicator configurable. The basic PositionIndicator's position can now be configured to be End (layout direction-aware), OppositeRsb (takes into account screen rotation, to position itself opposite to the physical RSB), or the absolutes Left & Right. ( I2f1f3 )
  • For SwipeToDismissBox , we have renamed SwipeDismissTarget .Original to SwipeToDismissValue.Default and SwipeDismissTarget.Dismissal to SwipeToDismissValue.Dismissed . We have also moved SwipeToDismissBoxDefaults.BackgroundKey and SwipeToDismissBoxDefaults.ContentKey to SwipeToDismissKeys.Background , SwipeToDismissKeys.Content respectively. ( I47a36 )
  • We have added a read-only mode to Picker, for screens with multiple Pickers where only one Picker is editable at a time. When the Picker is read-only, it displays the currently selected option, and a label if one has been provided. ( I879de )
  • SwipeToDismissBoxState has been refactored to restrict the scope of ExperimentalWearMaterialApi to Modifier.swipeable and SwipeableState , which are now used internally. SwipeToDismissBoxState now has currentValue , targetValue , isAnimationRunning and snapTo members to support common use cases - please let us know if you require any further properties to be made available. Also fixed the behavior of SwipeableState in the case where the swipe offset is within a rounding error of an anchor. ( I58302 )

رفع اشکال

  • Simplified and fixed code to detect if the content of a ScalingLazyColumn can be scrolled (used to decide if we display a scrollbar or not) ( I7bce0 )
  • Fixed a bug on Position Indicator when used with more than one state and switching between them ( I320b5 )
  • We have updated the default Compose for Wear OS theme typography/fonts to match our latest UX guidance. Of note display1 (40.sp) and display2 (34.sp) are now smaller than their previous values and various other minor updates to line height and line spacing have been made. ( Ie3077 )
  • We have added resistance to SwipeToDismissBox so that motion only happens when swiping to dismiss and not at all in the opposite direction. ( Ifdfb9 )
  • We have changed some of the default parameter values for the CircularProgressIndicator functions to bring them in-line with Wear Material Design UX guidance. For the Spinner/Indeterminant version the size (40->24.dp), indicatorColor (primary->onBackground), trackColor transparency (30%->10%) and stroke width (4->3dp) have been updated. For the Progress/Determinate version the trackColor transparency (30%->10%) has been updated. ( I659cc )
  • We have updated the default scaling params of the ScalingLazyColumn in-line with the latest Wear Material Design UX specifications. Visually this results in list items starting to be scaled closer to the list center, but being less scaled at the list edge than before. ( Ica8f3 )
  • Some adjustments to ScalingLazyColumnDefaults.snapFlingBehavior to improve the end of the animation ( If3260 )

Version 1.0.0-alpha18

9 مارس 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha18 , androidx.wear.compose:compose-material:1.0.0-alpha18 , and androidx.wear.compose:compose-navigation:1.0.0-alpha18 are released . نسخه 1.0.0-alpha18 حاوی این commit ها است.

API Changes

  • Several improvements to PositionIndicator: ShowResult renamed PositionIndicatorVisibility. Some performance improvements to avoid recomputations when not needed ( Iaed9d )
  • The recommended coloring for the SplitToggleChip has been updated. SplitToggleChip's now have a solid colored background when checked or unchecked with the coloring of the ToggleControl being the primary indication of whether the component is checked or not. We have added a new ToggleDefaults.splitToggleChipColors() to support the new color scheme. We have also simplified the toggleChipColors() methods removing the splitBackgroundOverlayColor ( I7e66e )
  • We have added unadjustedSize to the ScalingLazyListItemInfo as it is not safe to calculate the original item size using the scaled size and scaling factor due to float maths precision. ( I54657 , b/221079441 )
  • Add HorizontalPageIndicator . It represents a total number of pages and a selected page. Might be linear or curved, depending on the shape of the device. It also supports custom indicator shape, which defines how each indicator is visually represented. ( Iac898 )
  • We have updated PickerState so that the numberOfOptions can be updated. This supports use-cases such as a DatePicker , when the number of days in the month changes depending on the month selected. The constructor parameter for PickerState has changed to initialNumberOfOptions accordingly. ( Iad066 )
  • Hide the PositionIndicator when is a scrollbar and can't scroll. ( Id0a7f )
  • For consistency with Scaffold, our full-screen Dialog component now displays a PositionIndicator and a Vignette . We are also now using ScalingLazyColumn instead of Column , which means that the Dialog contents are now in ScalingLazyListScope (and typically need to be enclosed by item { /* content */ }). Dialog supports the verticalArrangement parameter accordingly. ( Idea13 )
  • We have changed the name of ToggleChip and SplitToggleChip toggleIcon property to toggleControl to better align with Material Design in order to help designers and developers navigate the API. ( If5921 , b/220129803 )
  • We have added a new entry caption3 to the Wear Material Theme Typology.Caption3 is a small font used for the extra long-form writing like legal texts. ( I74b13 , b/220128356 )

Bug Fixes

  • Stop the snapping animation when we are there. ( Idb69d )
  • Animate changes in PositionIndicator. ( I94cb9 )
  • Based on UI/UX feedback we have changed the ScalingLazyColumn autoCentering so that it will provide only enough space to make sure the items with index ScalingLazyListState.initialCenterItemIndex or higher will be able to be fully scrolled to the center of the viewport. This allows developers to place one or two items about the item initially in the center which are not scrollable into the middle. This will mean that an autoCenter'ing ScalingLazyColumn will not be able to scroll above the initialCenterItemIndex/initialCenterItemScrollOffset ( I22ee2 )
  • We have added a demo for a Date Picker and fixed a bug in PickerState where the initiallySelectedOption was not applied until the Picker had been displayed. ( Id0d7e )
  • In order to reduce the clipping of wider ScalingLazyColumn items on circular screens we have increased the default horizontal content padding from 8 to 10 dp. ( I0d609 )
  • Ensure the PositionIndicator is shown when scrolling. ( Ied9a2 )

Version 1.0.0-alpha17

23 فوریه 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha17 , androidx.wear.compose:compose-material:1.0.0-alpha17 , and androidx.wear.compose:compose-navigation:1.0.0-alpha17 are released . نسخه 1.0.0-alpha17 حاوی این commit ها است.

ویژگی های جدید

  • We have added snap support that can be used with ScalingLazyColumn . Set flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) to enable snap support. ( I068d3 , b/217377069 )
  • We have added demos for Picker used to select a time in either 24 hour or 12 hour clock. ( Ie5552 )

API Changes

  • Fix an issue with TimeText custom fonts & styles on square device ( Iea76e )
  • ScalingLazyListLayoutInfo now has reverseLayout , viewportSize and orientation properties matching those from LazyListLayoutInfo ( I4f258 , b/217917020 )
  • ScalingLazyColumn now has a userScrollEnabled property matching that from LazyList ( I164d0 , b/217912513 )
  • Pickers now have a gradient on the top and bottom by default ( Iab92a )

Bug Fixes

  • We have modified ScalingLazyColumn so that it no longer greedily fills all of the space in its parent. Instead it will take its size from the size of its contents. This makes it consistent with the behaviour of LazyColumn . If you want to reinstate the old behaviour then pass Modifier.fillMaxWidth()/width()/widthIn() to the ScalingLazyColumn ( I51bf8 )
  • We have improved the exception message in SwipeDismissableNavHost.kt that was triggered if the navigation backstack was empty. ( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha16 are released . نسخه 1.0.0-alpha16 حاوی این commit ها است.

ویژگی های جدید

  • Add CircularProgressIndicator . Progress indicators display the length of a process or an unspecified wait time. Supports a gap (cutout) for TimeText or other components if used full-screen. ( Iab8da )

API Changes

  • Pickers now have a flingBehavior parameter, the default value makes them snap to the closest option when scrolling/flinging. ( I09000 )
  • Additional integer API for InlineSlider and Stepper ( I1b5d6 )

Bug Fixes

  • We have changed the default initialCenterItemIndex for the ScalingLazyListState from 0->1. This means that unless overridden on state construction with ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex = ) then the 2nd list item (index == 1) will be placed in the center of the viewport at initialization and the 1st (index == 0) item will be placed before it. This allows for a better default visual effect out of the box as most of the viewport will be filled with list items. ( I0c623 , b/217344252 )
  • We have reduced the ScalingLazyColumn default extraPadding that is provided to ensure that there are plenty of list items to draw (even when we are scaling some of them down in size) from 10% to 5%. This will avoid composing extra list items that might not appear in the viewport. If non standard scalingParams are being used (more extreme scaling for instance) the developer can adjust extra padding using viewportVerticalOffsetResolver . ( I76be4 )
  • Fix an issue with TimeText on multiple lines on square device ( Ibd3fb )
  • We have modified ScalingLazyColumn so that it no longer greedily fills all of the space in its parent. Instead it will take its size from the size of its contents. This makes it consistent with the behavior of LazyColumn . If you want to reinstate the old behavior then pass Modifier.fillMaxSize() to the ScalingLazyColumn - NOTE: This change is incomplete and will be addressed in a follow up change in the next Alpha release. ( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha15 are released . نسخه 1.0.0-alpha15 حاوی این commit ها است.

API Changes

  • We have added a new property autoCentering to the ScalingLazyColumn . When true (the default) this will ensure that all items including the first and last can be scrolled so that they are visible in the center of the lists viewport. Note that if using auto-centering you will probably want to set vertical content padding to 0.dp. If both autoCentering and vertical content padding are provided then they will both result in additional space being available before the first and after the last list items allowing them to be scrolled even further. ( I2a282 , b/214922490 )
  • We have added a Dialog component that enables any composable to trigger a full screen dialog that sits on top of other content. When shown, the dialog supports swipe-to-dismiss and will show its parent's content in the background during the swipe gesture. The dialog content is expected to be Alert or Confirmation (renamed from earlier components AlertDialog and ConfirmationDialog ) - Alert , Confirmation and Dialog are all in the androidx.wear.compose.material.dialog package. Alert and Confirmation can be used as navigation destinations. Also, added ColumnScope to Alert and Confirmation parameters as necessary. ( Ia9014 )
  • We have removed onSurfaceVariant2 from the Compose for WearOS Material Theme Colors and replaced uses in the library with onSurfaceVariant . ( Icd592 )
  • Added a method to programmatically select an option on the PickerState , the initially selected option can now also be specified when creating a PickerState . ( I92bdf )
  • We have added support for customizing the fling behavior of the ScalingLazyColumn . ( I1ad2e , b/208842968 )
  • We have added NavController.currentBackStackEntryAsState() to the Wear.Compose.Navigation library. ( If9028 , b/212739653 )
  • Added Modifier.onRotaryScrollEvent() and Modifier.onPreRotaryScrollEvent() for Wear devices with a rotating side button.( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha14 are released . نسخه 1.0.0-alpha14 حاوی این commit ها است.

ویژگی های جدید

  • We have added a number of methods to ScalingLazyListState to allow developer control over scrolling to specific list items and also setting the initial list item and offset.

    As part of this change we have also modified the ScalingLazyList so that it is oriented around the center of the viewport of the ScalingLazyList rather than the start of the viewport.

    A new property anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter has been added to the ScalingLazyList to control whether the center ( ScalingLazyListAnchorType.ItemCenter ) or Edge ( ScalingLazyListAnchorType.ItemStart ) should be aligned to the viewport's centerline.

    As a result the ScalingLazyListItemInfo.offset and ScalingLazyListItemInfo.adjustedOffset have changed and will now reflect the offset of the item with respect to both the position of the list item and the anchorType of the list. Eg for a ScalingLazyColumn with anchorType of ItemCenter and an list item positioned with its center on the centerline of the viewport the offset would be 0 .

    The new methods are scrollTo , animatedScrollTo , centerItemIndex , and centerItemOffset . ( I61b61 )

  • We have added a back button handler to SwipeDismissableNavHost , so that pressing back navigates to the previous level in the navigation hierarchy. ( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha13 are released . نسخه 1.0.0-alpha13 حاوی این commit ها است.

API Changes

  • We have made RangeIcons internal (referenced internally by InlineSlider and Stepper ). ( I927ec )

رفع اشکال

  • Fixed an issue where SwipeDismissableNavHost would add a destination to the Compose hierarchy before it has reached the CREATED Lifecycle state, resulting in an IllegalStateException . This fix was a prerequisite to updating dependency on navigation-compose to 2.4.0-beta02 and beyond. ( I40a2b , b/207328687 )

  • Added a Drawables enum class for getting drawable resources within the Wear Compose library, so that reflection is no longer needed. This fixes a bug where library drawables were removed when minifyEnabled=true or shrinkResources=true ). ( Ib2a98 )

  • Added tests for Stepper in Wear Compose ( I2d03a )

  • Added samples for SwipeDismissableNavHost in 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha12 are released . نسخه 1.0.0-alpha12 حاوی این commit ها است.

ویژگی های جدید

  • We have added a Stepper component which allows users to make a selection from a range of values. Stepper is a full-screen control with increase and decrease buttons at the top and bottom, and a slot in the middle (expected to take either a Chip or Text). The button icons can be customized if required. ( I625fe )

  • We have added 2 new composables for displaying dialogs: AlertDialog waits for a response from the user and displays a title, icon, message and either a) two buttons for simple positive/negative choices or b) vertically stacked chips or toggle chips for more flexible choices, ConfirmationDialog displays an acknowledgement with a timeout. This simple dialog has slots for a title and an (animated) icon. ( Ic2cf8 )

API Changes

  • Add units (millis) to suggested dialog duration values. ( 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha11 are released . نسخه 1.0.0-alpha11 حاوی این commit ها است.

ویژگی های جدید

  • We have added a picker component that lets the user select an item from a scrolling list. By default, the list of selectable items is repeated 'infinitely' in both directions, to give the impression of a rotating cylinder seen from the side. Two features will be added in later releases: snapping to a value after a swipe/fling; adding a function to PickerState to set/scroll to the current value. ( I6461b )

API Changes

  • Added a ScalingLazyItemScope and some new modifiers fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight to allow list items to be sized based on the size of the parent container. Items can be set to fill all or a fraction of the parent's size. This exposes functionality already available in the LazyRow/Column ( I4612f )
  • Added support to ScalingLazyColumn to allow items to have a key. Also added convenience methods to allow adding of items from Arrays and Lists. ( Ic1f89 )

Bug Fixes

  • Additional examples for 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha10 are released . نسخه 1.0.0-alpha10 حاوی این commit ها است.

ویژگی های جدید

  • Added an InlineSlider for wear compose. InlineSlider allows users to make a selection from a range of values. محدوده انتخاب‌ها به‌عنوان نواری بین حداقل و حداکثر مقادیر محدوده نشان داده می‌شود که کاربران می‌توانند یک مقدار واحد را انتخاب کنند. ( If0148 )

  • Check out the new Compose for WearOS Codelab !

API Changes

  • Macrobenchmark now has a minSdkVersion of 23 . ( If2655 )

Bug Fixes

  • Update transition handling in SwipeDismissableNavHost in a SideEffect ( I04994 , b/202863359 )
  • Update transition handling in 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha09 are released . Version 1.0.0-alpha09 contains these commits.

ویژگی های جدید

  • We have launched the Developer Preview of Compose on Wear OS - see our blog post which reviews the main composables and links to further resources to starting using them.

API Changes

  • We have added support for developers to be able to customize all of the colors in the Wear Material Design Color theme. ( I4759b , b/199754668 )

Bug Fixes

  • Added SwipeToDismissBox samples that persist state ( Ibaffe )
  • Added links to developer.android.com guides from KDocs for CurvedText, TimeText and SwipeToDismissBox. ( I399d4 )
  • SwipeDismissableNavHost now throws if there's no current destination (indicates that the NavGraph was not built with the wear.compose.navigation.composable utility function) ( I91403 )
  • Added additional documentation and examples for time source usage in 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha08 are released . نسخه 1.0.0-alpha08 حاوی این commit ها است.

API Changes

  • We have renamed AppCard and TitleCard body properties to content and moved them to the end of the property list to allow them to be provided as a trailing lambda. Also renamed bodyColor to contentColor for consistency with the new slot names. ( I57e78 )

Bug Fixes

  • Added links to developer.android.com guides from KDocs for button, card, chip, theme, position indicator and scaling lazy column components. ( I22428 )
  • Fix WearOS SwipeToDismissBox sometimes not handling swipes. ( I9387e )
  • Added samples for Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip, SplitToggleChip ( Iddc15 )
  • Added microbenchmark performance tests for Card, Chip, ToggleChip, TimeText and 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha07 are released . نسخه 1.0.0-alpha07 حاوی این commit ها است.

ویژگی های جدید

  • Added a CurvedText component in material, a component allowing developers to easily write curved text following the curvature of a circle (usually at the edge of a circular screen). ( I19593 )

API Changes

  • Added tests for TimeText ( Idfead )
  • Transform ArcPaddingValues into an interface. ( Iecd4c )
  • Added animation to SwipeToDismissBox ( I9ad1b )
  • Added hasBackground parameter to the SwipeToDismissBox API so that the swipe gesture can be disabled when there is no background content to display. ( I313d8 )
  • rememberNavController() اکنون مجموعه ای از موارد اختیاری از Navigator را انتخاب می کند که برای پشتیبانی بهتر از ناوبرهای اختیاری مانند مواردی که از مواد ناوبری همراهی استفاده می شود ، به NavController برگشتی اضافه می شود. ( i4619e )
  • Reference NamedNavArgument from navigation-common and remove copy from wear.compose.navigation. ( I43af6 )

Bug Fixes

  • Fixed CurvedRow test flakiness on smaller devices. ( If7941 )
  • Fixed possible flickering on CurvedRow when the content updates, and ensures the curved row is remeasured ( Ie4e06 )
  • ChipDefaults.gradientBackgroundChipColors() has been updated in line with UX Spec changes. The gradient now starts with MaterialTheme.colors.primary with alpha 32.5% and ends with MaterialTheme.colors.surface with alpha @ 0% over a background of MaterialTheme.colors.surface @ 75% alpha. ( Id1548 )
  • We have updated the colors for ToggleChips when in the selected state to match the latest Wear Material Design UX Spec guidance. When selected ToggleChips now have a gradient background from MaterialTheme.color.surface @ 0% alpha, top left, to MaterialTheme.color.primary @ 32% alpha, bottom right, over a background of MaterialTheme.color.surface @ 75% alpha. This results in a more subtle difference between checked and unchecked for the 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 , and androidx.wear.compose:compose-navigation:1.0.0-alpha06 are released . نسخه 1.0.0-alpha06 حاوی این commit ها است.

ویژگی های جدید

  • We have added Scaffold a top level application composable that provides a structure for handling PositionIndicators (like Scroll or Volume) position, an area at the top of the screen for displaying the time and application status, and also supports a Vignette to blur the screen top and bottom edge for scrollable content. The main area of the Scaffold is where the application contents are placed. ( I5e0bf )
  • Added TimeText implementation for Wear Compose ( I5654c )

Wear Compose Navigation Library

  • We have added the first release of the Wear Compose Navigation library, which provides integration between the Wear Compose and Androidx Navigation libraries. It provides a simple means to navigate between @Composable functions as the destinations in your application.

  • این نسخه اولیه ارائه می دهد:

    • A SwipeDismissableNavHost composable that hosts a navigation graph and provides backwards navigation via swipe gestures
    • NavGraphBuilder.composable extension to assist with constructing navigation graphs
    • rememberSwipeDismissableNavController() to allow hoisting state
  • Example usage where we create two screens and navigate between them:

    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 is packaged as a separate library so that simple WearCompose applications that implement their own hand-rolled navigation are not required to depend on the Androidx Navigation library.

API Changes

  • Updated SwipeDismissableNavHost to support rememberSaveable by setting the key identity for background and content ( I746fd )
  • We have added a PositionIndicator adapter that can handle LazyListState ( I21b88 )
  • Updated SwipeToDismissBox to support rememberSaveable ( Ie728b )
  • We have added reverseLayout support to the ScalingLazyColumn. This allows for the reversing of the direction of scrolling and layout ( I9e2fc )
  • Deprecated performGesture and GestureScope , which have been replaced by performTouchInput and TouchInjectionScope . ( Ia5f3f , b/190493367 )
  • We have renamed VignetteValue to VignettePosition and renamed VignetteValue.Both renamed to VignettePosition.TopAndBottom. ( I57ad7 )
  • We have renamed ScalingLazyColumnState to ScalingLazyListState, ScalingLazyColumnItemInfo to ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo to ScalingLazyListLayoutInfo and ScalingLazyColumnScope to ScalingLazyListScope in case we decide to add a ScalingLazyRow implementation in the future. ( I22734 )

Bug Fixes

  • Updated CompactChip documentation to describe what happens if neither an icon nor a label is provided. ( I4ba88 )
  • We have made some adjustments to the Wear card components. ( I6b3d0 )
    1. TitleCard spacing between Title and Body reduced from 8.dp to 2.dp.
    2. TitleCard header font changed from body to title3.
    3. Card background gradient changed to make the background appear darker.

نسخه 1.0.0-alpha05

1 سپتامبر 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha05 and androidx.wear.compose:compose-material:1.0.0-alpha05 are released. نسخه 1.0.0-alpha05 حاوی این commit ها است.

API Changes

  • Mark ArcPaddingValues as @Stable ( I57deb )
  • ScalingLazyColumnState now implements the ScrollableState interface giving developers programmatic access to scroll the component. ( I47dbc )

Bug Fixes

  • We have reduced the spacing between Icon and Text in Chip and ToggleChip to bring them in line with updates to the UX Spec. ( I83802 )

نسخه 1.0.0-alpha04

18 آگوست 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha04 and androidx.wear.compose:compose-material:1.0.0-alpha04 are released. نسخه 1.0.0-alpha04 حاوی این commit ها است.

ویژگی های جدید

  • Added a SwipeToDismissBox and swipeable modifier that can be used to support a left-to-right swipe-to-dismiss gesture. Although independent of navigation components, this is expected to be used to exit one screen and navigate to another. Added integration tests to demo swipe-to-dismiss. ( I7bbaa )
  • We have added ScalingLazyColumnItemInfo and ScalingLazyColumnLayoutInfo interfaces to ScalingLazyColumnState class to enable developers to know the actual positions and sizes of items in the ScalingLazyColumn after scaling has been applied. We have also fixed a bug with the way that scaling was calculated when 'top' content padding is applied to the ScalingLazyColumn. ( I27c07 )

API Changes

  • Add CurvedTextStyle class to specify curved text styling Options. Similar to TextStyle, but now only supports color, fontSize and background. More styling options will be added in the future. ( I96ac3 )
  • We have added ScalingLazyColumnItemInfo and ScalingLazyColumnLayoutInfo interfaces to ScalingLazyColumnState class to enable developers to know the actual positions and sizes of items in the ScalingLazyColumn after scaling has been applied. We have also fixed a bug with the way that scaling was calculated when 'top' content padding is applied to the ScalingLazyColumn. ( I27c07 )
  • Added @ExperimentalWearMaterialApi to SwipeDismissTarget enum, part of the SwipeToDismissBox API. ( I48b5e )

Bug Fixes

  • Added test material for SwipeToDismissBox ( I9febc )

نسخه 1.0.0-alpha03

4 آگوست 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha03 and androidx.wear.compose:compose-material:1.0.0-alpha03 are released. نسخه 1.0.0-alpha03 حاوی این commit ها است.

API Changes

  • Added CurvedText component, that allows developers to easily write text following the curvature a circle (usually at the edge of a circular screen) ( Id1267 )
  • We have renamed CardDefaults.imageBackgroundPainter() to CardDefaults.imageWithScrimBackgroundPainter() to make it clear that the background image with have a scrim drawn over it. ( I53206 )
  • Adding ScalingLazyColumn component that provides a list component for Wear Material that gives a fisheye view with the list contents scaling down in size and becoming transparent as they scale towards the edge of the component. ( I7070c )

Bug Fixes

  • We changed the default color of the appName content in AppCard in response to a UX Spec update. The default color for the appName is now MaterialTheme.colors.onSurfaceVariant . Additionally added a missing parameter doc description for the title slot. ( Ic4ad1 )

نسخه 1.0.0-alpha02

21 جولای 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha02 and androidx.wear.compose:compose-material:1.0.0-alpha02 are released. نسخه 1.0.0-alpha02 حاوی این commit ها است.

ویژگی های جدید

  • Added a new class CurvedRow to laid out composables in an arc ( I29941 )
  • Added a new type of card for use in applications (TitleCard), also add support for having images as the background to Cards to emphasize their contents ( I53b0f )

API Changes

  • Add support for radial alignment to CurvedRow (similar to the vertical alignment in a row) ( Id9de5 )
  • Add a new class CurvedRow to laid out composables in an arc ( I29941 )
  • Added a new type of card for use in applications (TitleCard), also add support for having images as the background to Cards to emphasize their contents ( I53b0f )
  • Added toggle icons (checkbox, switch and radio buttons) to ToggleChipDefaults to make it easier for developers to configure ToggleChip and SplitToggleChips ( I7b639 )
  • The start and end content padding for Chips has been updated so that it is consistently 14.dp regardless of whether the Chip has an icon present or not (was previously 12.dp if icon present and 14.dp if not) ( I34c86 )

Bug Fixes

  • Add tests for CurvedRow ( I93cdb )
  • Tying Wear Compose dependencies to Compose 1.0.0-rc01. ( Ie6bc9 )
  • Changed the handing of background image painting in Cards and Chips so that the image is Cropped rather than being stretched in order to maintain image proportions. ( I29b41 )
  • Added more demos and integration tests for Button and ToggleButton. ( 5e27ed2 )
  • Added more Chip tests to cover the content colors for imageBackgroundChips ( Ia9183 )

Version 1.0.0-alpha01

1 ژوئیه 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha01 and androidx.wear.compose:compose-material:1.0.0-alpha01 are released. نسخه 1.0.0-alpha01 حاوی این commit ها است.

ویژگی های جدید

Wear Compose is a Kotlin, Compose-based library that supports Wear Material design, an extension of Material Design for WearOS wearables. This first alpha release contains early, functional implementations of the following:

  • Material theme - configures the colors, typography and shapes consistently across the components used from this library.
  • Chip, CompactChip - chips are stadium shaped and variations are available to take icon, label and secondary label content.
  • - ToggleChip, SplitToggleChip - a specialized type of chip that includes a slot for a bi-state toggle icon such as a radio button or checkbox. In addition, the SplitToggleChip has two tappable areas, one clickable and one toggleable.
  • Button, CompactButton - buttons are circular in shape, with a single content slot for an icon or minimal text (maximum 3 characters).
  • ToggleButton - a button that turns an action on or off, with a single slot for icon or minimal text (maximum 3 characters).
  • Card, AppCard - rectangular shaped with rounded corners, offering slots for content such as app icon, time, title and body.

Future releases will extend the Widget set adding support for Wear Material Design pickers, sliders, lists, page indicators, dialogs, scroll rsb indicators, toasts and more.

Additionally support will be provided for other Wearable Specific features such as curved layouts and text, as well as scaffolding to make it easy for developers to build Wearable apps/overlays.

Wear Compose Material is designed with the same principles as Compose Material, although being targeted at wearables. The Wear Compose Material library should be used in place of the Compose Material library when building for a Wearable device.

The two “Material” libraries should be considered mutually exclusive and should not be mixed in the same app. If developers find themselves including the Compose Material library in their dependencies it would suggest that either a) there are components missing from the Wear Compose Material library, please let us know what you need, or b) are using a component that we do not recommend for use on a Wearable Device.