OSDN Git Service

Fix rendering of digitalClock/Gallery in Eclipse editors.
authorXavier Ducrohet <xav@android.com>
Tue, 26 Oct 2010 21:01:41 +0000 (14:01 -0700)
committerXavier Ducrohet <xav@android.com>
Tue, 26 Oct 2010 21:29:23 +0000 (14:29 -0700)
Change-Id: Iedcd3184cd9f34be8d0695a51eda953ac68683ce

tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
tools/layoutlib/bridge/src/com/android/layoutlib/bridge/BridgeContext.java
tools/layoutlib/create/src/com/android/tools/layoutlib/create/Main.java

index d89dba9..a063455 100644 (file)
 
 package com.android.layoutlib.bridge;
 
+import android.content.ContentProviderOperation;
+import android.content.ContentProviderResult;
 import android.content.ContentResolver;
+import android.content.ContentValues;
 import android.content.Context;
 import android.content.IContentProvider;
+import android.content.OperationApplicationException;
+import android.content.res.AssetFileDescriptor;
 import android.database.ContentObserver;
+import android.database.Cursor;
+import android.database.CursorWindow;
+import android.database.IBulkCursor;
+import android.database.IContentObserver;
 import android.net.Uri;
 import android.os.Bundle;
+import android.os.IBinder;
+import android.os.ParcelFileDescriptor;
+import android.os.RemoteException;
+
+import java.io.FileNotFoundException;
+import java.util.ArrayList;
 
 /**
  * A mock content resolver for the LayoutLib Bridge.
@@ -32,20 +47,109 @@ import android.os.Bundle;
  */
 public class BridgeContentResolver extends ContentResolver {
 
+    private BridgeContentProvider mProvider = null;
+
+    public static final class BridgeContentProvider implements IContentProvider {
+
+        public ContentProviderResult[] applyBatch(ArrayList<ContentProviderOperation> arg0)
+                throws RemoteException, OperationApplicationException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public int bulkInsert(Uri arg0, ContentValues[] arg1) throws RemoteException {
+            // TODO Auto-generated method stub
+            return 0;
+        }
+
+        public IBulkCursor bulkQuery(Uri arg0, String[] arg1, String arg2, String[] arg3,
+                String arg4, IContentObserver arg5, CursorWindow arg6) throws RemoteException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public Bundle call(String arg0, String arg1, Bundle arg2) throws RemoteException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public int delete(Uri arg0, String arg1, String[] arg2) throws RemoteException {
+            // TODO Auto-generated method stub
+            return 0;
+        }
+
+        public String getType(Uri arg0) throws RemoteException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public Uri insert(Uri arg0, ContentValues arg1) throws RemoteException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public AssetFileDescriptor openAssetFile(Uri arg0, String arg1) throws RemoteException,
+                FileNotFoundException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public ParcelFileDescriptor openFile(Uri arg0, String arg1) throws RemoteException,
+                FileNotFoundException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public Cursor query(Uri arg0, String[] arg1, String arg2, String[] arg3, String arg4)
+                throws RemoteException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public int update(Uri arg0, ContentValues arg1, String arg2, String[] arg3)
+                throws RemoteException {
+            // TODO Auto-generated method stub
+            return 0;
+        }
+
+        public IBinder asBinder() {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public String[] getStreamTypes(Uri arg0, String arg1) throws RemoteException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+        public AssetFileDescriptor openTypedAssetFile(Uri arg0, String arg1, Bundle arg2)
+                throws RemoteException, FileNotFoundException {
+            // TODO Auto-generated method stub
+            return null;
+        }
+
+    }
+
     public BridgeContentResolver(Context context) {
         super(context);
     }
 
     @Override
     public IContentProvider acquireProvider(Context c, String name) {
-        // ignore
-        return null;
+        if (mProvider == null) {
+            mProvider = new BridgeContentProvider();
+        }
+
+        return mProvider;
     }
 
     @Override
     public IContentProvider acquireExistingProvider(Context c, String name) {
-        // ignore
-        return null;
+        if (mProvider == null) {
+            mProvider = new BridgeContentProvider();
+        }
+
+        return mProvider;
     }
 
     @Override
@@ -53,7 +157,7 @@ public class BridgeContentResolver extends ContentResolver {
         // ignore
         return false;
     }
-    
+
     /**
      * Stub for the layoutlib bridge content resolver.
      */
@@ -62,7 +166,7 @@ public class BridgeContentResolver extends ContentResolver {
             ContentObserver observer) {
         // pass
     }
-    
+
     /**
      * Stub for the layoutlib bridge content resolver.
      */
@@ -70,7 +174,7 @@ public class BridgeContentResolver extends ContentResolver {
     public void unregisterContentObserver(ContentObserver observer) {
         // pass
     }
-    
+
     /**
      * Stub for the layoutlib bridge content resolver.
      */
@@ -78,7 +182,7 @@ public class BridgeContentResolver extends ContentResolver {
     public void notifyChange(Uri uri, ContentObserver observer, boolean syncToNetwork) {
         // pass
     }
-    
+
     /**
      * Stub for the layoutlib bridge content resolver.
      */
@@ -86,7 +190,7 @@ public class BridgeContentResolver extends ContentResolver {
     public void startSync(Uri uri, Bundle extras) {
         // pass
     }
-    
+
     /**
      * Stub for the layoutlib bridge content resolver.
      */
index f501459..106d7ed 100644 (file)
@@ -998,8 +998,7 @@ public final class BridgeContext extends Context {
 
     @Override
     public ApplicationInfo getApplicationInfo() {
-        // TODO Auto-generated method stub
-        return null;
+        return new ApplicationInfo();
     }
 
     @Override
index 4adaff9..43f2971 100644 (file)
@@ -83,6 +83,7 @@ public class Main {
                         "com.android.internal.R**",
                         "android.pim.*", // for datepicker
                         "android.os.*",  // for android.os.Handler
+                        "android.database.ContentObserver", // for Digital clock
                         });
             aa.analyze();
             agen.generate();