diff --git a/.classpath b/.classpath index 609aa00..6aed2eb 100644 --- a/.classpath +++ b/.classpath @@ -3,5 +3,6 @@ - + + diff --git a/build.properties b/build.properties index 6537540..c2b6927 100644 --- a/build.properties +++ b/build.properties @@ -1,2 +1,2 @@ -key.store=/home/mathieu/mathieu/Android/keys/KeyOpenWide +key.store=/home/mathieu/Android/Keys/KeyOpenWide key.alias=openwide diff --git a/default.properties b/default.properties deleted file mode 100644 index 0b9250e..0000000 --- a/default.properties +++ /dev/null @@ -1,11 +0,0 @@ -# This file is automatically generated by Android Tools. -# Do not modify this file -- YOUR CHANGES WILL BE ERASED! -# -# This file must be checked in Version Control Systems. -# -# To customize properties used by the Ant build system use, -# "build.properties", and override values to adapt the script to your -# project structure. - -# Project target. -target=android-8 diff --git a/proguard.cfg b/proguard.cfg deleted file mode 100644 index 12dd039..0000000 --- a/proguard.cfg +++ /dev/null @@ -1,36 +0,0 @@ --optimizationpasses 5 --dontusemixedcaseclassnames --dontskipnonpubliclibraryclasses --dontpreverify --verbose --optimizations !code/simplification/arithmetic,!field/*,!class/merging/* - --keep public class * extends android.app.Activity --keep public class * extends android.app.Application --keep public class * extends android.app.Service --keep public class * extends android.content.BroadcastReceiver --keep public class * extends android.content.ContentProvider --keep public class * extends android.app.backup.BackupAgentHelper --keep public class * extends android.preference.Preference --keep public class com.android.vending.licensing.ILicensingService - --keepclasseswithmembernames class * { - native ; -} - --keepclasseswithmembernames class * { - public (android.content.Context, android.util.AttributeSet); -} - --keepclasseswithmembernames class * { - public (android.content.Context, android.util.AttributeSet, int); -} - --keepclassmembers enum * { - public static **[] values(); - public static ** valueOf(java.lang.String); -} - --keep class * implements android.os.Parcelable { - public static final android.os.Parcelable$Creator *; -} diff --git a/res/layout/entry_list.xml b/res/layout/entry_list.xml index df21540..fb08be6 100644 --- a/res/layout/entry_list.xml +++ b/res/layout/entry_list.xml @@ -2,8 +2,10 @@ - + diff --git a/res/layout/main.xml b/res/layout/main.xml index 9dc92c7..a699631 100644 --- a/res/layout/main.xml +++ b/res/layout/main.xml @@ -17,7 +17,7 @@ - - + android:id="@+id/row_background" + android:layout_width="fill_parent" + android:layout_height="wrap_content" + android:orientation="horizontal" > + + + + + + + + + + + + - - - - \ No newline at end of file diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml index 700502c..3bf70f8 100644 --- a/res/values-pt/strings.xml +++ b/res/values-pt/strings.xml @@ -29,4 +29,5 @@ Messagen(s) enviadas Digite o número ou selecione o contato através do ícone Você está prestes a enviar mais de 50 mensagens, isso poderá causar um erro no aplicativo, ocorrerá uma pausa entre o envio das mensagens. Deseja continuar o envio? + Você está pronto para 50 mensagens mais? diff --git a/src/com/hectorone/multismssender/ContactRow.java b/src/com/hectorone/multismssender/ContactRow.java deleted file mode 100644 index 2fc93e7..0000000 --- a/src/com/hectorone/multismssender/ContactRow.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.hectorone.multismssender; - -import android.content.Context; -import android.view.View; -import android.widget.CheckBox; -import android.widget.LinearLayout; -import android.widget.TextView; - -public class ContactRow extends LinearLayout { - - CheckBox mSelectedCheckBox; - TextView mNameTextView; - TextView mNumberView; - LinearLayout mInfoLayout; - Long mId; - - public ContactRow(Context context) { - super(context); - - mSelectedCheckBox = new CheckBox(context); - mInfoLayout = new LinearLayout(context); - - mNameTextView = new TextView(context); - mNumberView = new TextView(context); - - mNameTextView.setTextSize(30,0); - mNumberView.setTextSize(18,0); - - - mSelectedCheckBox.setText(""); - mSelectedCheckBox.setFocusable(false); - - - this.addView(mSelectedCheckBox, new LayoutParams(LayoutParams.WRAP_CONTENT, - LayoutParams.FILL_PARENT)); - mInfoLayout.setOrientation(LinearLayout.VERTICAL); - mInfoLayout.addView(mNameTextView, new LayoutParams(LayoutParams.FILL_PARENT, - LayoutParams.WRAP_CONTENT)); - mInfoLayout.addView(mNumberView, new LayoutParams(LayoutParams.FILL_PARENT, - LayoutParams.WRAP_CONTENT)); - - this.addView(mInfoLayout, new LayoutParams(LayoutParams.WRAP_CONTENT, - LayoutParams.FILL_PARENT)); - - this.setOnClickListener(new OnClickListener() { - - public void onClick(View v) { - mSelectedCheckBox.performClick(); - - } - }); - - - } - - - public void display(String name, String number, boolean isSelected) { - mNameTextView.setText(name); - mNumberView.setText(number); - mSelectedCheckBox.setChecked(isSelected); - } - - public void display(String name, String number, boolean isSelected, long id) { - display( name, number, isSelected); - mId = id; - - } - - -} diff --git a/src/com/hectorone/multismssender/GroupEditActivity.java b/src/com/hectorone/multismssender/GroupEditActivity.java index c85c36c..ad59ea5 100644 --- a/src/com/hectorone/multismssender/GroupEditActivity.java +++ b/src/com/hectorone/multismssender/GroupEditActivity.java @@ -17,6 +17,7 @@ import android.view.ViewGroup; import android.widget.Button; import android.widget.CheckBox; import android.widget.EditText; +import android.widget.LinearLayout; import android.widget.SimpleCursorAdapter; public class GroupEditActivity extends ListActivity { @@ -148,42 +149,52 @@ public class GroupEditActivity extends ListActivity { Cursor c = getCursor(); startManagingCursor(c); c.moveToPosition(position); - String name = c.getString(nameidx); - String number = c.getString(numberidx); +// String name = c.getString(nameidx); + String contactNumber = c.getString(numberidx); long id = c.getLong(idIdx); - ContactRow contact; - if (convertView == null) { - contact = new ContactRow(mContext); - }else { - contact = (ContactRow) convertView; - } - contact.display(name, number, selected.contains(number), id); - contact.mSelectedCheckBox.setOnClickListener(new addNumberToGroupClickListener(contact)); - return contact; + View v = super.getView(position, convertView, parent); + LinearLayout background = (LinearLayout)v.findViewById(R.id.row_background); + + CheckBox checkbox = (CheckBox)v.findViewById(R.id.CheckBox); + checkbox.setOnClickListener(new addNumberToGroupClickListener(id)); + checkbox.setChecked(selected.contains(contactNumber)); + + + background.setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View v) { + CheckBox checkbox = (CheckBox)v.findViewById(R.id.CheckBox); + checkbox.performClick(); + + } + }); + return v; + + } } private class addNumberToGroupClickListener implements OnClickListener{ - ContactRow mContact; + Long mId; - public addNumberToGroupClickListener(ContactRow mContact) { + public addNumberToGroupClickListener(Long id) { super(); - this.mContact = mContact; + this.mId = id; } public void onClick(View v) { CheckBox cBox = (CheckBox)v; createGroup(); - long phoneId = mContact.mId; if(cBox.isChecked()) { - mDb.addPhoneToGroup(mGid, phoneId); + mDb.addPhoneToGroup(mGid, mId); }else { - mDb.removePhoneToGroup(mGid, phoneId); + mDb.removePhoneToGroup(mGid, mId); } } diff --git a/src/com/hectorone/multismssender/ListEntryActivity.java b/src/com/hectorone/multismssender/ListEntryActivity.java index 0b69a7c..3a2cd3d 100644 --- a/src/com/hectorone/multismssender/ListEntryActivity.java +++ b/src/com/hectorone/multismssender/ListEntryActivity.java @@ -81,6 +81,7 @@ public class ListEntryActivity extends ListActivity { public EntryCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to) { super(context, layout, c, from, to); + //TODO this.getCursor() this.c = c; deliveredIdx = c.getColumnIndex(DeliveryDbAdapter.KEY_DELIVERY_ENTRY_DELIVERED); } diff --git a/src/com/hectorone/multismssender/PhoneNumberSelection.java b/src/com/hectorone/multismssender/PhoneNumberSelection.java index 78da9fd..187d03d 100644 --- a/src/com/hectorone/multismssender/PhoneNumberSelection.java +++ b/src/com/hectorone/multismssender/PhoneNumberSelection.java @@ -2,7 +2,6 @@ package com.hectorone.multismssender; import java.util.HashSet; - import android.app.ListActivity; import android.content.Context; import android.content.Intent; @@ -18,7 +17,9 @@ import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.Button; import android.widget.CheckBox; +import android.widget.LinearLayout; import android.widget.SimpleCursorAdapter; +import android.widget.TextView; public class PhoneNumberSelection extends ListActivity @@ -85,11 +86,6 @@ public class PhoneNumberSelection extends ListActivity Contacts.DISPLAY_NAME, Phone.NUMBER }, new int[] {R.id.name, R.id.phone}, mSelectedSet); - /*Cursor c = getContentResolver().query(Phones.CONTENT_URI, null, null, null, Phones.NAME); - startManagingCursor(c); - mAdpater = new PhoneDataListAdapter(this, R.layout.number_row, c, new String[] { - Phones.NAME, Phones.NUMBER - }, new int[] {R.id.name, R.id.phone}, mSelectedSet);*/ setListAdapter(mAdpater); } @@ -97,7 +93,6 @@ public class PhoneNumberSelection extends ListActivity @Override public boolean onCreateOptionsMenu(Menu menu) { super.onCreateOptionsMenu(menu); - //menu.add(0, INSERT_ID,0, R.string.add_group); menu.add(0, SELECT_ALL_ID, 0, R.string.select_all); menu.add(0, DESELECT_ALL_ID, 0, R.string.deselect_all); return true; @@ -161,53 +156,51 @@ public class PhoneNumberSelection extends ListActivity public class PhoneDataListAdapter extends SimpleCursorAdapter{ - int nameidx; - int numberidx; - Context mContext; - public PhoneDataListAdapter(Context context, int layout, Cursor c, String[] from, int[] to, HashSet selected) { super(context, layout, c, from, to); - nameidx = c.getColumnIndex(Contacts.DISPLAY_NAME); - numberidx = c.getColumnIndex(Phone.NUMBER); - mContext = context; - - } + public View getView(int position, View convertView, ViewGroup parent) { - Cursor c = getCursor(); - c.moveToPosition(position); - String name = c.getString(nameidx); - String number = c.getString(numberidx); - ContactRow contact; - if (convertView == null) { - contact = new ContactRow(mContext); - }else { - contact = (ContactRow) convertView; - } - contact.display(name, number, mSelectedSet.contains(number)); - contact.mSelectedCheckBox.setOnClickListener(new addNumberToSelectedClickListener(contact)); - return contact; + View v = super.getView(position, convertView, parent); + LinearLayout background = (LinearLayout)v.findViewById(R.id.row_background); + String contactNumber = ((TextView)v.findViewById(R.id.phone)).getText().toString(); + + CheckBox checkbox = (CheckBox)v.findViewById(R.id.CheckBox); + checkbox.setOnClickListener(new addNumberToSelectedClickListener(contactNumber)); + checkbox.setChecked(mSelectedSet.contains(contactNumber)); + + + background.setOnClickListener(new OnClickListener() { + + @Override + public void onClick(View v) { + CheckBox checkbox = (CheckBox)v.findViewById(R.id.CheckBox); + checkbox.performClick(); + + } + }); + return v; } } private class addNumberToSelectedClickListener implements OnClickListener{ - ContactRow contact; + String contactNumber; - public addNumberToSelectedClickListener(ContactRow contact) { - this.contact = contact; + public addNumberToSelectedClickListener(String contact) { + this.contactNumber = contact; } public void onClick(View v) { CheckBox checkBox = (CheckBox)v; if(checkBox.isChecked()) { - mSelectedSet.add(contact.mNumberView.getText().toString()); + mSelectedSet.add(contactNumber); }else { - mSelectedSet.remove(contact.mNumberView.getText().toString()); + mSelectedSet.remove(contactNumber); } }