• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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