AppsCorpus.java revision 2353e9c002c45c0adc8a979a49ff317cae5838b8
1574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert/*
2574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert * Copyright (C) 2010 The Android Open Source Project
3574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert *
4574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert * Licensed under the Apache License, Version 2.0 (the "License");
5574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert * you may not use this file except in compliance with the License.
6574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert * You may obtain a copy of the License at
7574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert *
8574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert *      http://www.apache.org/licenses/LICENSE-2.0
9574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert *
10574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert * Unless required by applicable law or agreed to in writing, software
11574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert * distributed under the License is distributed on an "AS IS" BASIS,
12574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert * See the License for the specific language governing permissions and
14574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert * limitations under the License.
15574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert */
16574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
17574cc4c7b12a766644353800e749719085badcf6Bjorn Bringertpackage com.android.quicksearchbox;
18574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
19574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
202353e9c002c45c0adc8a979a49ff317cae5838b8Bjorn Bringertimport com.android.quicksearchbox.util.Util;
212353e9c002c45c0adc8a979a49ff317cae5838b8Bjorn Bringert
22574cc4c7b12a766644353800e749719085badcf6Bjorn Bringertimport android.content.ContentResolver;
23574cc4c7b12a766644353800e749719085badcf6Bjorn Bringertimport android.content.Context;
24574cc4c7b12a766644353800e749719085badcf6Bjorn Bringertimport android.content.Intent;
25574cc4c7b12a766644353800e749719085badcf6Bjorn Bringertimport android.graphics.drawable.Drawable;
26574cc4c7b12a766644353800e749719085badcf6Bjorn Bringertimport android.net.Uri;
27574cc4c7b12a766644353800e749719085badcf6Bjorn Bringertimport android.os.Bundle;
28574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
29574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert/**
3072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert * The apps search source.
31574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert */
3272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringertpublic class AppsCorpus extends SingleSourceCorpus {
33574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
34574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    private static final String APPS_CORPUS_NAME = "apps";
35574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
3672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert    public AppsCorpus(Context context, Source appsSource) {
3772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert        super(context, appsSource);
38574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    }
39574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
4072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert    @Override
41574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    public CharSequence getLabel() {
42574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert        return getContext().getText(R.string.corpus_label_apps);
43574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    }
44574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
4572f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert    @Override
46574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    public CharSequence getHint() {
47574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert        return getContext().getText(R.string.corpus_hint_apps);
48574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    }
49574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
5072f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert    @Override
51574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    public Intent createSearchIntent(String query, Bundle appData) {
52574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert        // TODO: Start a Market search if Market is installed
53574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert        return null;
54574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    }
55574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
5672f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert    @Override
57574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    public Drawable getCorpusIcon() {
58574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert        // TODO: Should we have a different icon for the apps corpus?
59574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert        return getContext().getResources().getDrawable(android.R.drawable.sym_def_app_icon);
60574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    }
61574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
6272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert    @Override
63574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    public Uri getCorpusIconUri() {
642353e9c002c45c0adc8a979a49ff317cae5838b8Bjorn Bringert        return Util.getResourceUri(getContext(), android.R.drawable.sym_def_app_icon);
65574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    }
66574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
6772f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert    @Override
68574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    public String getName() {
69574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert        return APPS_CORPUS_NAME;
70574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    }
71574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
7272f9b08ce84d0e13daf2d1c112d4e6d1d3ada045Bjorn Bringert    @Override
73574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    public CharSequence getSettingsDescription() {
74574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert        return getContext().getText(R.string.corpus_description_apps);
75574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert    }
76574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert
77574cc4c7b12a766644353800e749719085badcf6Bjorn Bringert}
78