1 package com.android.car.carlauncher; 2 3 import android.content.Context; 4 import android.graphics.drawable.Drawable; 5 import android.os.UserManager; 6 7 import androidx.lifecycle.LiveData; 8 9 /** A {@link LiveData} that returns placeholder weather {@link ContextualInfo}. */ 10 class WeatherContextualInfoLiveData extends LiveData<ContextualInfo> { 11 private final Context mContext; 12 WeatherContextualInfoLiveData(Context context)13 WeatherContextualInfoLiveData(Context context) { 14 mContext = context; 15 } 16 17 @Override onActive()18 protected void onActive() { 19 super.onActive(); 20 setValue( 21 new ContextualInfo( 22 getWeatherIcon(), 23 getGreeting(), 24 getTemperature(), 25 /* showClock= */ true, 26 /* onClickActivity= */ null)); 27 } 28 getWeatherIcon()29 private Drawable getWeatherIcon() { 30 return mContext.getDrawable(R.drawable.ic_partly_cloudy); 31 } 32 getGreeting()33 private CharSequence getGreeting() { 34 UserManager userManager = UserManager.get(mContext); 35 String userName = userManager.getUserName(); 36 37 if (userName != null) { 38 return mContext.getString(R.string.greeting, userName); 39 } else { 40 return ""; 41 } 42 } 43 getTemperature()44 private CharSequence getTemperature() { 45 return mContext.getText(R.string.temperature_empty); 46 } 47 } 48