Browse Source

SMS clickability

master
Chris Smith 14 years ago
parent
commit
95f1bc7194

BIN
code/ContextHome/dist/ContextHome.apk View File


+ 2
- 2
code/ContextHome/src/uk/co/md87/android/contexthome/ContextHome.java View File

62
     private void initLayout() {
62
     private void initLayout() {
63
         layout.removeAllViews();
63
         layout.removeAllViews();
64
 
64
 
65
-        int i = 0;
65
+        int i = 1;
66
         for (Module module : modules) {
66
         for (Module module : modules) {
67
             final LayoutParams params = new LayoutParams(MODULE_PARAMS);
67
             final LayoutParams params = new LayoutParams(MODULE_PARAMS);
68
-            params.weight = (float) ++i / 10;
68
+            params.weight = ++i > 3 ? (float) i / 11 : 1;
69
             layout.addView(module.getView(this, i), params);
69
             layout.addView(module.getView(this, i), params);
70
         }
70
         }
71
     }
71
     }

+ 18
- 3
code/ContextHome/src/uk/co/md87/android/contexthome/modules/SmsModule.java View File

24
 
24
 
25
 import android.content.ContentUris;
25
 import android.content.ContentUris;
26
 import android.content.Context;
26
 import android.content.Context;
27
+import android.content.Intent;
27
 import android.database.Cursor;
28
 import android.database.Cursor;
28
 import android.net.Uri;
29
 import android.net.Uri;
29
 import android.provider.Contacts;
30
 import android.provider.Contacts;
54
         layout.setOrientation(LinearLayout.VERTICAL);
55
         layout.setOrientation(LinearLayout.VERTICAL);
55
 
56
 
56
         final Cursor cursor = context.getContentResolver().query(INBOX_URI,
57
         final Cursor cursor = context.getContentResolver().query(INBOX_URI,
57
-                new String[] { "_id", "date", "body", "address" }, null, null, "date DESC");
58
+                new String[] { "thread_id", "date", "body", "address" }, null, null, "date DESC");
59
+        final int idIndex = cursor.getColumnIndex("thread_id");
58
         final int bodyIndex = cursor.getColumnIndex("body");
60
         final int bodyIndex = cursor.getColumnIndex("body");
59
         final int addressIndex = cursor.getColumnIndex("address");
61
         final int addressIndex = cursor.getColumnIndex("address");
60
 
62
 
67
             final String body = cursor.getString(bodyIndex);
69
             final String body = cursor.getString(bodyIndex);
68
             final String address = cursor.getString(addressIndex);
70
             final String address = cursor.getString(addressIndex);
69
 
71
 
70
-            layout.addView(getView(context, layout, body, address), params);
72
+            layout.addView(getView(context, layout, body, address, cursor.getLong(idIndex)),
73
+                    params);
71
 
74
 
72
             success = cursor.moveToNext();
75
             success = cursor.moveToNext();
73
         }
76
         }
77
         return layout;
80
         return layout;
78
     }
81
     }
79
 
82
 
80
-    private View getView(Context context, ViewGroup layout, String text, String address) {
83
+    private View getView(final Context context, ViewGroup layout, String text,
84
+            String address, final long threadId) {
81
         final View view = View.inflate(context, R.layout.titledimage, null);
85
         final View view = View.inflate(context, R.layout.titledimage, null);
86
+        view.setClickable(true);
87
+        view.setFocusable(true);
88
+        view.setOnClickListener(new View.OnClickListener() {
89
+
90
+            public void onClick(View arg0) {
91
+                final Intent intent = new Intent();
92
+                intent.setAction(Intent.ACTION_VIEW);
93
+                intent.setData(Uri.parse("content://mms-sms/conversations/" + threadId));
94
+                context.startActivity(intent);
95
+            }
96
+        });
82
 
97
 
83
         final Uri contactUri = Uri.withAppendedPath(Contacts.Phones.CONTENT_FILTER_URL,
98
         final Uri contactUri = Uri.withAppendedPath(Contacts.Phones.CONTENT_FILTER_URL,
84
                 Uri.encode(address));
99
                 Uri.encode(address));

+ 3
- 4
code/PlacesDisplay/src/uk/co/md87/android/placesdisplay/JourneysOverlay.java View File

26
 import android.database.Cursor;
26
 import android.database.Cursor;
27
 import android.graphics.Canvas;
27
 import android.graphics.Canvas;
28
 import android.graphics.Paint;
28
 import android.graphics.Paint;
29
-import android.graphics.Path;
30
 import android.graphics.Point;
29
 import android.graphics.Point;
31
-import android.util.Log;
30
+
32
 import com.google.android.maps.MapView;
31
 import com.google.android.maps.MapView;
33
 import com.google.android.maps.Overlay;
32
 import com.google.android.maps.Overlay;
34
 import com.google.android.maps.OverlayItem;
33
 import com.google.android.maps.OverlayItem;
35
-import java.util.ArrayList;
34
+
36
 import java.util.HashMap;
35
 import java.util.HashMap;
37
-import java.util.List;
38
 import java.util.Map;
36
 import java.util.Map;
37
+
39
 import uk.co.md87.android.contextapi.ContextApi;
38
 import uk.co.md87.android.contextapi.ContextApi;
40
 import uk.co.md87.android.contextapi.ContextApi.Journeys.ColumnNames;
39
 import uk.co.md87.android.contextapi.ContextApi.Journeys.ColumnNames;
41
 
40
 

Loading…
Cancel
Save