Skip to content

Commit

Permalink
Merge branch 'master' of git://github.com/appcelerator/titanium_mobile
Browse files Browse the repository at this point in the history
  • Loading branch information
sptramer committed Oct 23, 2010
2 parents 7ef6a86 + d560ef6 commit a24aa5b
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 17 deletions.
Expand Up @@ -8,21 +8,21 @@
import java.util.HashMap;
import java.util.concurrent.CountDownLatch;

import org.appcelerator.kroll.KrollModule;
import org.appcelerator.kroll.KrollObject;
import org.appcelerator.titanium.ITiMenuDispatcherListener;
import org.appcelerator.titanium.TiApplication;
import org.appcelerator.titanium.TiContext;
import org.appcelerator.titanium.TiRootActivity;
import org.appcelerator.titanium.kroll.KrollBridge;
import org.appcelerator.titanium.kroll.KrollContext;
import org.appcelerator.titanium.proxy.TiActivityWindowProxy;
import org.appcelerator.titanium.util.Log;
import org.appcelerator.titanium.util.TiActivityResultHandler;
import org.appcelerator.titanium.util.TiActivitySupport;
import org.appcelerator.titanium.util.TiActivitySupportHelper;
import org.appcelerator.titanium.util.TiConfig;
import org.appcelerator.titanium.util.TiConvert;
import org.appcelerator.titanium.util.TiFileHelper;
import org.appcelerator.titanium.view.TiCompositeLayout;
import org.appcelerator.titanium.view.TiUIActivityWindow;
import org.mozilla.javascript.Scriptable;

import android.app.Activity;
import android.app.Application;
Expand All @@ -35,7 +35,8 @@
import android.view.Window;
import android.view.WindowManager;

public abstract class TiBaseActivity extends Activity
public abstract class TiBaseActivity extends Activity
implements TiActivitySupport
{
private static final String LCAT = "TiBaseActivity";
private static boolean DBG = TiConfig.LOGD;
Expand All @@ -46,6 +47,7 @@ public abstract class TiBaseActivity extends Activity
protected ActivityProxy currentActivity;
protected IntentProxy currentIntent;
protected TiActivityWindowProxy currentWindow;
protected TiActivitySupportHelper supportHelper;

private HashMap<Integer, MenuItemProxy> itemMap;

Expand Down Expand Up @@ -317,4 +319,30 @@ public boolean onPrepareOptionsMenu(Menu menu)
}
return false;
}

// Activity Support
public int getUniqueResultCode() {
if (supportHelper == null) {
this.supportHelper = new TiActivitySupportHelper(this);
}
return supportHelper.getUniqueResultCode();
}

public void launchActivityForResult(Intent intent, int code, TiActivityResultHandler resultHandler)
{
if (supportHelper == null) {
this.supportHelper = new TiActivitySupportHelper(this);
}
supportHelper.launchActivityForResult(intent, code, resultHandler);
}

public void setMenuDispatchListener(ITiMenuDispatcherListener listener) {
// TODO This just a no-op for now, remove when we refactor
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
supportHelper.onActivityResult(requestCode, resultCode, data);
}
}
Expand Up @@ -15,14 +15,11 @@
import org.appcelerator.kroll.KrollDict;
import org.appcelerator.kroll.KrollInvocation;
import org.appcelerator.kroll.KrollMethod;
import org.appcelerator.kroll.KrollReflectionProperty;
import org.appcelerator.kroll.KrollProxy;
import org.appcelerator.titanium.TiContext;
import org.appcelerator.titanium.util.Log;
import org.json.JSONException;
import org.json.JSONObject;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;

import ti.modules.titanium.api.APIModule;
import ti.modules.titanium.app.AppModule;
Expand All @@ -45,7 +42,7 @@ public TiWebViewBinding(TiContext context, WebView webView)
webView.addJavascriptInterface(apiBinding, "TiAPI");
webView.addJavascriptInterface(appBinding, "TiApp");
webView.addJavascriptInterface(new TiReturn(), "_TiReturn");
insertApiBindings();
insertApiBindings();
}

public void insertApiBindings()
Expand All @@ -55,7 +52,6 @@ public void insertApiBindings()
}

public void destroy() {
appBinding.module.onDestroy();
}

private void evalJS(InputStream stream)
Expand Down Expand Up @@ -93,7 +89,7 @@ public String getJSValue(String expression)
return null;
}


@SuppressWarnings("unused")
private class TiReturn {
public void setValue(String value) {
if (value != null) {
Expand All @@ -103,6 +99,7 @@ public void setValue(String value) {
}
}

@SuppressWarnings("serial")
private class WebViewCallback extends KrollMethod
{
private int id;
Expand All @@ -122,11 +119,12 @@ public Object invoke(KrollInvocation invocation, Object[] args) {
}
}

@SuppressWarnings("unused")
private class APIBinding
{
private APIModule module;
public APIBinding(TiContext context) {
module = new APIModule(context);
module = context.getTiApp().getModuleByClass(APIModule.class);
}
public void critical(String msg) {
module.critical(msg);
Expand Down Expand Up @@ -156,14 +154,15 @@ public void warn(String msg) {
module.warn(msg);
}
}


@SuppressWarnings("unused")
private class AppBinding
{
private AppModule module;

public AppBinding(TiContext context)
{
module = new AppModule(context);
module = context.getTiApp().getModuleByClass(AppModule.class);
}

public void fireEvent(String event, String json)
Expand Down
23 changes: 20 additions & 3 deletions iphone/Classes/TiUIImageViewProxy.m
Expand Up @@ -11,6 +11,7 @@
#import "OperationQueue.h"
#import "ASIHTTPRequest.h"
#import "TiApp.h"
#import "TiFile.h"
#import "TiBlob.h"

@implementation TiUIImageViewProxy
Expand Down Expand Up @@ -91,10 +92,26 @@ - (void) dealloc

-(id)toBlob:(id)args
{
id url = [self valueForKey:@"url"];
if (url!=nil)
id imageValue = [self valueForKey:@"image"];
if (imageValue == nil)
{
NSURL *url_ = [TiUtils toURL:url proxy:self];
imageValue = [self valueForKey:@"url"];
}

if ([imageValue isKindOfClass:[TiBlob class]])
{
//We already have it right here already!
return imageValue;
}

if ([imageValue isKindOfClass:[TiFile class]])
{
return [(TiFile *)imageValue toBlob:nil];
}

if (imageValue!=nil)
{
NSURL *url_ = [TiUtils toURL:imageValue proxy:self];
UIImage *image = [[ImageLoader sharedLoader] loadImmediateImage:url_];

if (image!=nil)
Expand Down

0 comments on commit a24aa5b

Please sign in to comment.