Home | History | Annotate | Download | only in opp
      1 /*
      2  * Copyright (c) 2008-2009, Motorola, Inc.
      3  *
      4  * All rights reserved.
      5  *
      6  * Redistribution and use in source and binary forms, with or without
      7  * modification, are permitted provided that the following conditions are met:
      8  *
      9  * - Redistributions of source code must retain the above copyright notice,
     10  * this list of conditions and the following disclaimer.
     11  *
     12  * - Redistributions in binary form must reproduce the above copyright notice,
     13  * this list of conditions and the following disclaimer in the documentation
     14  * and/or other materials provided with the distribution.
     15  *
     16  * - Neither the name of the Motorola, Inc. nor the names of its contributors
     17  * may be used to endorse or promote products derived from this software
     18  * without specific prior written permission.
     19  *
     20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
     21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     23  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
     24  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     25  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     26  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     27  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     28  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     29  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     30  * POSSIBILITY OF SUCH DAMAGE.
     31  */
     32 
     33 package com.android.bluetooth.opp;
     34 
     35 import com.android.bluetooth.R;
     36 
     37 import android.app.Activity;
     38 import android.content.Context;
     39 import android.content.Intent;
     40 import android.net.Uri;
     41 import android.os.Bundle;
     42 import android.provider.LiveFolders;
     43 
     44 // TODO: To make livefolder work, process acore need BluetoothOppProvider permission
     45 // Or disable provider permission. Need Google's comments
     46 public class BluetoothOppLiveFolder extends Activity {
     47     public static final Uri CONTENT_URI = Uri
     48             .parse("content://com.android.bluetooth.opp/live_folders/received");
     49 
     50     @Override
     51     protected void onCreate(Bundle savedInstanceState) {
     52         super.onCreate(savedInstanceState);
     53 
     54         final Intent intent = getIntent();
     55         final String action = intent.getAction();
     56 
     57         if (LiveFolders.ACTION_CREATE_LIVE_FOLDER.equals(action)) {
     58             setResult(RESULT_OK, createLiveFolder(this, CONTENT_URI, this
     59                     .getString(R.string.btopp_live_folder),
     60                     R.drawable.ic_launcher_folder_bluetooth));
     61         } else {
     62             setResult(RESULT_CANCELED);
     63         }
     64 
     65         finish();
     66     }
     67 
     68     private static Intent createLiveFolder(Context context, Uri uri, String name, int icon) {
     69         final Intent intent = new Intent();
     70 
     71         intent.setDataAndNormalize(uri);
     72         intent.putExtra(LiveFolders.EXTRA_LIVE_FOLDER_BASE_INTENT, new Intent(
     73                 Constants.ACTION_OPEN, BluetoothShare.CONTENT_URI));
     74         intent.putExtra(LiveFolders.EXTRA_LIVE_FOLDER_NAME, name);
     75         intent.putExtra(LiveFolders.EXTRA_LIVE_FOLDER_ICON, Intent.ShortcutIconResource
     76                 .fromContext(context, icon));
     77         intent.putExtra(LiveFolders.EXTRA_LIVE_FOLDER_DISPLAY_MODE, LiveFolders.DISPLAY_MODE_LIST);
     78 
     79         return intent;
     80     }
     81 
     82 }
     83