package android.support.v4.app;
import java.io.File;
import java.io.FileDescriptor;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import com.actionbarsherlock.internal.app.SherlockActivity;
import android.app.Activity;
import android.app.Application;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.ComponentName;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.ServiceConnection;
import android.content.SharedPreferences;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.res.AssetManager;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.content.res.TypedArray;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.support.v4.view.ActionMode;
import android.support.v4.view.Menu;
import android.support.v4.view.MenuItem;
import android.util.AttributeSet;
import android.view.ContextMenu;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.MenuInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.view.WindowManager;
import android.view.accessibility.AccessibilityEvent;
/**
* <p>Instances of this interface represent an activity provided by the support
* library (e.g., {@link FragmentActivity}).</p>
*
* <p>Provided are all of the methods which would be available if you were
* accessing the underlying activity directly and you can safely assume that
* any instances of this interface can be cast to an {@link Activity}. It is
* preferred, however, that you call {@link #asActivity()} instead.</p>
*/
public interface SupportActivity extends SherlockActivity {
public static abstract class InternalCallbacks {
abstract Handler getHandler();
abstract FragmentManagerImpl getFragments();
abstract LoaderManagerImpl getLoaderManager(int index, boolean started, boolean create);
abstract void invalidateSupportFragmentIndex(int index);
abstract boolean getRetaining();
}
InternalCallbacks getInternalCallbacks();
Activity asActivity();
/*** Activity methods ***/
void addContentView(View view, ViewGroup.LayoutParams params);
void closeContextMenu();
void closeOptionsMenu();
PendingIntent createPendingResult(int requestCode, Intent data, int flags);
void dismissDialog(int id);
boolean dispatchKeyEvent(KeyEvent event);
boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event);
boolean dispatchTouchEvent(MotionEvent ev);
boolean dispatchTrackballEvent(MotionEvent ev);
View findViewById(int id);
void finish();
void finishActivity(int requestCode);
void finishActivityFromChild(Activity child, int requestCode);
void finishFromChild(Activity child);
Application getApplication();
ComponentName getCallingActivity();
String getCallingPackage();
int getChangingConfigurations();
ComponentName getComponentName();
View getCurrentFocus();
Intent getIntent();
Object getLastNonConfigurationInstance();
LayoutInflater getLayoutInflater();
String getLocalClassName();
MenuInflater getMenuInflater();
Activity getParent();
SharedPreferences getPreferences(int mode);
int getRequestedOrientation();
Object getSystemService(String name);
int getTaskId();
CharSequence getTitle();
int getTitleColor();
int getVolumeControlStream();
Window getWindow();
WindowManager getWindowManager();
boolean hasWindowFocus();
boolean isChild();
boolean isFinishing();
boolean isTaskRoot();
Cursor managedQuery(Uri uri, String[] projection, String selection, String[] selectionArgs, String sortOrder);
boolean moveTaskToBack(boolean nonRoot);
void onConfigurationChanged(Configuration newConfig);
void onContentChanged();
boolean onContextItemSelected(android.view.MenuItem item);
void onContextMenuClosed(android.view.Menu menu);
void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo);
CharSequence onCreateDescription();
boolean onCreateOptionsMenu(android.view.Menu menu);
boolean onCreatePanelMenu(int featureId, android.view.Menu menu);
View onCreatePanelView(int featureId);
boolean onCreateThumbnail(Bitmap outBitmap, Canvas canvas);
View onCreateView(String name, Context context, AttributeSet attrs);
boolean onKeyDown(int keyCode, KeyEvent event);
boolean onKeyMultiple(int keyCode, int repeatCount, KeyEvent event);
boolean onKeyUp(int keyCode, KeyEvent event);
void onLowMemory();
boolean onMenuItemSelected(int featureId, android.view.MenuItem item);
boolean onMenuOpened(int featureId, android.view.Menu menu);
boolean onOptionsItemSelected(android.view.MenuItem item);
void onOptionsMenuClosed(android.view.Menu menu);
void onPanelClosed(int featureId, android.view.Menu menu);
boolean onPrepareOptionsMenu(android.view.Menu menu);
boolean onPreparePanel(int featureId, View view, android.view.Menu menu);
Object onRetainNonConfigurationInstance();
boolean onSearchRequested();
boolean onTouchEvent(MotionEvent event);
boolean onTrackballEvent(MotionEvent event);
void onUserInteraction();
void onWindowAttributesChanged(WindowManager.LayoutParams params);
void onWindowFocusChanged(boolean hasFocus);
void openContextMenu(View view);
void openOptionsMenu();
void registerForContextMenu(View view);
void removeDialog(int id);
boolean requestWindowFeature(int featureId);
void runOnUiThread(Runnable action);
void setContentView(int layoutResId);
void setContentView(View view);
void setContentView(View view, ViewGroup.LayoutParams params);
void setDefaultKeyMode(int mode);
void setFeatureDrawable(int featureId, Drawable drawable);
void setFeatureDrawableAlpha(int featureId, int alpha);
void setFeatureDrawableResource(int featureId, int resId);
void setFeatureDrawableUri(int featureId, Uri uri);
void setIntent(Intent newIntent);
void setProgress(int progress);
void setProgressBarIndeterminate(boolean indeterminate);
void setProgressBarIndeterminateVisibility(boolean visible);
void setProgressBarVisibility(boolean visible);
void setRequestedOrientation(int requestedOrientation);
void setResult(int resultCode);
void setResult(int resultCode, Intent data);
void setSecondaryProgress(int secondaryProgress);
void setTitle(int titleId);
void setTitle(CharSequence title);
void setTitleColor(int textColor);
void setVisible(boolean visible);
void setVolumeControlStream(int streamType);
void showDialog(int id);
void startActivity(Intent intent);
void startActivityForResult(Intent intent, int requestCode);
void startActivityFromChild(Activity child, Intent intent, int requestCode);
boolean startActivityIfNeeded(Intent intent, int requestCode);
void startManagingCursor(Cursor c);
boolean startNextMatchingActivity(Intent intent);
void startSearch(String initialQuery, boolean selectInitialQuery, Bundle appSearchDate, boolean globalSearch);
void stopManagingCursor(Cursor c);
void takeKeyEvents(boolean get);
void unregisterForContextMenu(View view);
/*** ContextThemeWrapper methods ***/
//Object getSystemService(String name);
Resources.Theme getTheme();
void setTheme(int resId);
/*** ContextWrapper methods ***/
//void attachBaseContext(Context base);
boolean bindService(Intent service, ServiceConnection conn, int flags);
int checkCallingOrSelfPermission(String permission);
int checkCallingOrSelfUriPermission(Uri uri, int modeFlags);
int checkCallingPermission(String permission);
int checkCallingUriPermission(Uri uri, int modeFlags);
int checkPermission(String permission, int pid, int uid);
int checkUriPermission(Uri uri, int pid, int uid, int modeFlags);
int checkUriPermission(Uri uri, String readPermission, String writePermission, int pid, int uid, int modeFlags);
@Deprecated void clearWallpaper() throws IOException;
Context createPackageContext(String packageName, int flags) throws NameNotFoundException;
String[] databaseList();
boolean deleteDatabase(String name);
boolean deleteFile(String name);
void enforceCallingOrSelfPermission(String permission, String message);
void enforceCallingOrSelfUriPermission(Uri uri, int modeFlags, String message);
void enforceCallingPermission(String permission, String message);
void enforceCallingUriPermission(Uri uri, int modeFlags, String message);
void enforcePermission(String permission, int pid, int uid, String message);
void enforceUriPermission(Uri uri, int pid, int uid, int modeFlags, String message);
void enforceUriPermission(Uri uri, String readPermission, String writePermission, int pid, int uid, int modeFlags, String message);
String[] fileList();
Context getApplicationContext();
ApplicationInfo getApplicationInfo();
AssetManager getAssets();
Context getBaseContext();
File getCacheDir();
ClassLoader getClassLoader();
ContentResolver getContentResolver();
File getDatabasePath(String name);
File getDir(String name, int mode);
File getFileStreamPath(String name);
File getFilesDir();
Looper getMainLooper();
String getPackageCodePath();
PackageManager getPackageManager();
String getPackageName();
String getPackageResourcePath();
Resources getResources();
SharedPreferences getSharedPreferences(String name, int mode);
//Object getSystemService(String name);
//Resources.Theme getTheme();
Drawable getWallpaper();
int getWallpaperDesiredMinimumHeight();
int getWallpaperDesiredMinimumWidth();
void grantUriPermission(String toPackage, Uri uri, int modeFlags);
boolean isRestricted();
FileInputStream openFileInput(String name) throws FileNotFoundException;
FileOutputStream openFileOutput(String name, int mode) throws FileNotFoundException;
SQLiteDatabase openOrCreateDatabase(String name, int mode, SQLiteDatabase.CursorFactory factory);
@Deprecated Drawable peekWallpaper();
Intent registerReceiver(BroadcastReceiver receiver, IntentFilter filter);
Intent registerReceiver(BroadcastReceiver receiver, IntentFilter filter, String broadcastPermission, Handler scheduler);
void removeStickyBroadcast(Intent intent);
void revokeUriPermission(Uri uri, int modeFlags);
void sendBroadcast(Intent intent);
void sendBroadcast(Intent intent, String receiverPermission);
void sendOrderedBroadcast(Intent intent, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras);
void sendOrderedBroadcast(Intent intent, String receiverPermission);
void sendStickyBroadcast(Intent intent);
//void setTheme(int resid);
void setWallpaper(Bitmap bitmap) throws IOException;
void setWallpaper(InputStream data) throws IOException;
//void startActivity(Intent intent);
boolean startInstrumentation(ComponentName className, String profileFile, Bundle arguments);
ComponentName startService(Intent service);
boolean stopService(Intent name);
void unbindService(ServiceConnection conn);
void unregisterReceiver(BroadcastReceiver receiver);
/*** Context methods ***/
String getString(int resId);
String getString(int resId, Object... formatArgs);
CharSequence getText(int resId);
//boolean isRestricted();
TypedArray obtainStyledAttributes(int[] attrs);
TypedArray obtainStyledAttributes(AttributeSet set, int[] attrs);
TypedArray obtainStyledAttributes(int resId, int[] attrs);
TypedArray obtainStyledAttributes(AttributeSet set, int[] attrs, int defStyleAttr, int defStyleRes);
/*** Activity methods (emulated API 5+) ***/
void onBackPressed();
/*** Activity methods (emulated API 11+) ***/
void dump(String prefix, FileDescriptor fd, PrintWriter writer, String[] args);
ActionBar getSupportActionBar(); //getActionBar()
FragmentManager getSupportFragmentManager(); //getFragmentManager()
LoaderManager getSupportLoaderManager(); //getLoaderManager()
void invalidateOptionsMenu();
void onActionModeFinished(ActionMode mode);
void onActionModeStarted(ActionMode mode);
void onAttachFragment(Fragment fragment);
boolean onCreateOptionsMenu(Menu menu);
boolean onMenuItemSelected(int featureId, MenuItem item);
boolean onOptionsItemSelected(MenuItem item);
boolean onPrepareOptionsMenu(Menu menu);
ActionMode onWindowStartingActionMode(ActionMode.Callback callback);
void recreate();
ActionMode startActionMode(ActionMode.Callback callback);
void startActivityFromFragment(Fragment fragment, Intent intent, int requestCode);
/*** Parallel helper methods ***/
boolean requestWindowFeature(long featureId);
void setProgressBarIndeterminateVisibility(Boolean visible);
}