1 /*
2  * Copyright (C) 2007 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.camera;
18 
19 import android.content.Intent;
20 import android.net.Uri;
21 import android.os.Bundle;
22 
23 /**
24  * Wallpaper picker for the camera application. This just redirects to the
25  * standard pick action.
26  */
27 public class Wallpaper extends NoSearchActivity {
28     @SuppressWarnings("unused")
29     private static final String TAG = "Wallpaper";
30     private static final int PHOTO_PICKED = 1;
31     private static final int CROP_DONE = 2;
32 
33     @Override
onCreate(Bundle icicle)34     protected void onCreate(Bundle icicle) {
35         super.onCreate(icicle);
36 
37         Uri imageToUse = getIntent().getData();
38         if (imageToUse != null) {
39             Intent intent = new Intent();
40             intent.setClass(this, CropImage.class);
41             intent.setData(imageToUse);
42             formatIntent(intent);
43             startActivityForResult(intent, CROP_DONE);
44         } else {
45             Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null);
46             intent.setType("image/*");
47             intent.putExtra("crop", "true");
48             formatIntent(intent);
49             startActivityForResult(intent, PHOTO_PICKED);
50         }
51     }
52 
formatIntent(Intent intent)53     protected void formatIntent(Intent intent) {
54         int width = getWallpaperDesiredMinimumWidth();
55         int height = getWallpaperDesiredMinimumHeight();
56         intent.putExtra("outputX",         width);
57         intent.putExtra("outputY",         height);
58         intent.putExtra("aspectX",         width);
59         intent.putExtra("aspectY",         height);
60         intent.putExtra("scale",           true);
61         intent.putExtra("noFaceDetection", true);
62         intent.putExtra("setWallpaper",    true);
63     }
64 
65     @Override
onActivityResult(int requestCode, int resultCode, Intent data)66     protected void onActivityResult(int requestCode, int resultCode,
67                                     Intent data) {
68         if ((requestCode == PHOTO_PICKED || requestCode == CROP_DONE)) {
69             setResult(resultCode);
70             finish();
71         }
72     }
73 }
74