Added ActionBarSherlock library compatiblity support

This commit is contained in:
YuviPanda 2012-11-05 20:17:28 +05:30
parent f4fe37cee6
commit 6d105f4844
374 changed files with 34299 additions and 25 deletions

View file

@ -7,6 +7,9 @@ import javax.xml.transform.*;
import android.accounts.*;
import android.app.Application;
import android.os.AsyncTask;
import android.os.Build;
import org.mediawiki.api.*;
import org.w3c.dom.Node;
import org.wikimedia.commons.auth.WikiAccountAuthenticator;
@ -103,4 +106,14 @@ public class CommonsApplication extends Application {
}
return outputStream.toString();
}
static public <T> void executeAsyncTask(AsyncTask<T, ?, ?> task,
T... params) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, params);
}
else {
task.execute(params);
}
}
}

View file

@ -2,25 +2,23 @@ package org.wikimedia.commons;
import java.io.*;
import org.mediawiki.api.ApiResult;
import org.mediawiki.api.MWApi;
import org.wikimedia.commons.auth.AuthenticatedActivity;
import org.wikimedia.commons.auth.LoginActivity;
import org.wikimedia.commons.auth.WikiAccountAuthenticator;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.IBinder;
import android.app.*;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
import android.util.Log;
import android.view.*;
import android.widget.*;
import android.widget.ImageView;
import android.support.v4.app.NavUtils;
import com.actionbarsherlock.view.Menu;
import com.actionbarsherlock.view.MenuItem;
import com.actionbarsherlock.view.Window;
import android.widget.*;
import android.view.*;
public class ShareActivity extends AuthenticatedActivity {
@ -85,8 +83,7 @@ public class ShareActivity extends AuthenticatedActivity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Actionbar overlay on top of imageview (should be called before .setcontentview)
getWindow().requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
getActionBar().setDisplayShowTitleEnabled(false);
requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
setContentView(R.layout.activity_share);
@ -109,7 +106,7 @@ public class ShareActivity extends AuthenticatedActivity {
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_share, menu);
getSupportMenuInflater().inflate(R.menu.activity_share, menu);
return true;
}

View file

@ -4,15 +4,13 @@ import java.io.IOException;
import org.wikimedia.commons.CommonsApplication;
import com.actionbarsherlock.app.*;
import android.accounts.*;
import android.app.Activity;
import android.content.*;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.util.Log;
public class AuthenticatedActivity extends Activity {
public class AuthenticatedActivity extends SherlockActivity {
String accountType;
@ -115,23 +113,19 @@ public class AuthenticatedActivity extends Activity {
// returns, we have a deadlock!
// Fixed by explicitly asking this to be executed in parallel
// See: https://groups.google.com/forum/?fromgroups=#!topic/android-developers/8M0RTFfO7-M
addAccountTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
CommonsApplication.executeAsyncTask(addAccountTask);
} else {
GetAuthCookieTask task = new GetAuthCookieTask(curAccount, accountManager);
task.execute();
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
app = (CommonsApplication)this.getApplicationContext();
}
protected void onAuthCookieAcquired(String authCookie) {
}

View file

@ -119,7 +119,7 @@ public class LoginActivity extends AccountAuthenticatorActivity {
Log.d("Commons", "Login to start!");
LoginTask task = new LoginTask(that);
task.execute(canonicalUsername, password);
task.execute(canonicalUsername, password);
}
});
}