117f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chinpackage com.android.launcher3;
217f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin
33e9be43b6ea75c8b82b57aa58508a0c3e8e1d721Sunny Goyalimport android.content.pm.LauncherActivityInfo;
417f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chinimport android.graphics.drawable.Drawable;
53152827d3b81b7feb3e48f957376ed5794954175Hyunyoung Songimport android.os.Build;
617f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin
717f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chinimport java.util.Locale;
817f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin
917f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chinpublic class IconProvider {
1017f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin
1117f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    private static final boolean DBG = false;
1217f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    private static final String TAG = "IconProvider";
1317f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin
1417f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    protected String mSystemState;
1517f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin
1617f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    public IconProvider() {
1717f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin        updateSystemStateString();
1817f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    }
1917f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin
2017f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    public void updateSystemStateString() {
213152827d3b81b7feb3e48f957376ed5794954175Hyunyoung Song        mSystemState = Locale.getDefault().toString() + "," + Build.VERSION.SDK_INT;
2217f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    }
2317f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin
2417f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    public String getIconSystemState(String packageName) {
2517f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin        return mSystemState;
2617f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    }
2717f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin
281da138903bc8412615edacd7a447c6ffc25851d4Sunny Goyal    /**
291da138903bc8412615edacd7a447c6ffc25851d4Sunny Goyal     * @param flattenDrawable true if the caller does not care about the specification of the
301da138903bc8412615edacd7a447c6ffc25851d4Sunny Goyal     *                        original icon as long as the flattened version looks the same.
311da138903bc8412615edacd7a447c6ffc25851d4Sunny Goyal     */
321da138903bc8412615edacd7a447c6ffc25851d4Sunny Goyal    public Drawable getIcon(LauncherActivityInfo info, int iconDpi, boolean flattenDrawable) {
3317f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin        return info.getIcon(iconDpi);
3417f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin    }
3517f85951a58ce4f7694b8efaac429e46ca1e45a7Annie Chin}
36