recorte funcionando desde el pcb

parent b3e5306e
Showing with 268 additions and 282 deletions
...@@ -181,7 +181,6 @@ public class Device extends SQLiteOpenHelper { ...@@ -181,7 +181,6 @@ public class Device extends SQLiteOpenHelper {
SQLiteDatabase db = this.getReadableDatabase(); SQLiteDatabase db = this.getReadableDatabase();
Vector<User> users = new Vector<>(); Vector<User> users = new Vector<>();
Cursor cursor = db.query("users_detail", null, null, null, null, null, null, null); Cursor cursor = db.query("users_detail", null, null, null, null, null, null, null);
while (cursor.moveToNext()) while (cursor.moveToNext())
if (cursor.getInt(9) == id_sup) if (cursor.getInt(9) == id_sup)
users.add(new User(cursor.getInt(0), cursor.getString(1), cursor.getString(2), cursor.getString(3), cursor.getString(4), cursor.getString(5), cursor.getString(6), cursor.getString(7), cursor.getString(8), users.add(new User(cursor.getInt(0), cursor.getString(1), cursor.getString(2), cursor.getString(3), cursor.getString(4), cursor.getString(5), cursor.getString(6), cursor.getString(7), cursor.getString(8),
......
...@@ -153,10 +153,10 @@ public class PCBDBHelper extends SQLiteOpenHelper { ...@@ -153,10 +153,10 @@ public class PCBDBHelper extends SQLiteOpenHelper {
Cursor cursor = db.query("collection_detail", null, "id_stu=?", new String[]{String.valueOf(id_stu)}, null, null, null, null); Cursor cursor = db.query("collection_detail", null, "id_stu=?", new String[]{String.valueOf(id_stu)}, null, null, null, null);
Log.i(LOG_TAG, "Local recovering " + cursor.getCount() + " pictos for student " + id_stu + " from local DB"); Log.i(LOG_TAG, "Local recovering " + cursor.getCount() + " pictos for student " + id_stu + " from local DB");
cursor.moveToFirst(); cursor.moveToFirst();
while (cursor.moveToNext()) { do{
Picto picto = new Picto(cursor.getInt(1), cursor.getString(2), cursor.getString(3), cursor.getString(4)); Picto picto = new Picto(cursor.getInt(1), cursor.getString(2), cursor.getString(3), cursor.getString(4));
vocabulary.loadPicto(picto); vocabulary.loadPicto(picto);
} }while (cursor.moveToNext());
cursor.close(); cursor.close();
db.close(); db.close();
......
...@@ -131,7 +131,7 @@ public class UserLogin { ...@@ -131,7 +131,7 @@ public class UserLogin {
Class PictogramActivity, Class LoginActivity) { Class PictogramActivity, Class LoginActivity) {
try { try {
Vector<User> localUsers = PCBcontext.getDevice().findUser(email, password); Vector<User> localUsers = PCBcontext.getDevice().findUser(email, password);
Log.i(this.getClass().getCanonicalName(), "Offline login request for supervisor "+email); Log.i(this.getClass().getCanonicalName(), "Offline login request for supervisor "+email+localUsers.elementAt(0).get_email_sup()+localUsers.elementAt(0).is_supervisor());
if (localUsers.size() == 1) { if (localUsers.size() == 1) {
PCBcontext.set_user(localUsers.elementAt(0), null, null); PCBcontext.set_user(localUsers.elementAt(0), null, null);
......
...@@ -36,7 +36,8 @@ import java.util.Vector; ...@@ -36,7 +36,8 @@ import java.util.Vector;
public class Vocabulary implements Iterable<Picto> { public class Vocabulary implements Iterable<Picto> {
Hashtable<Integer,LinkedList<Picto>> pictos; private static final String LOG_TAG = Vocabulary.class.getName();
Hashtable<Integer,LinkedList<Picto>> pictos;
static int DEFAULT_VOCABULARY_SIZE=200; static int DEFAULT_VOCABULARY_SIZE=200;
ImgDownloader.iImgDownloaderListener imgListener; ImgDownloader.iImgDownloaderListener imgListener;
private ActionTalk actionTalk; private ActionTalk actionTalk;
...@@ -335,7 +336,7 @@ public class Vocabulary implements Iterable<Picto> { ...@@ -335,7 +336,7 @@ public class Vocabulary implements Iterable<Picto> {
* @seealso com.yottacode.pictogram.dao.PCBDBHelper.getStudentVocabulary * @seealso com.yottacode.pictogram.dao.PCBDBHelper.getStudentVocabulary
*/ */
public void loadPicto(Picto picto) { public void loadPicto(Picto picto) {
Log.i(LOG_TAG, "load picto "+picto.get_translation());
LinkedList<Picto> pictos_cat; LinkedList<Picto> pictos_cat;
if (this.pictos.containsKey(picto.get_category())) if (this.pictos.containsKey(picto.get_category()))
pictos_cat = pictos.get(picto.get_category()); pictos_cat = pictos.get(picto.get_category());
......
...@@ -22,7 +22,6 @@ import org.json.JSONObject; ...@@ -22,7 +22,6 @@ import org.json.JSONObject;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.io.UnsupportedEncodingException; import java.io.UnsupportedEncodingException;
import java.net.HttpRetryException;
import java.util.Hashtable; import java.util.Hashtable;
import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutionException;
...@@ -190,21 +189,22 @@ public class PictoUploader { ...@@ -190,21 +189,22 @@ public class PictoUploader {
**/ **/
public void upload(final Context context) throws IOException { public void upload(final Context context) throws IOException {
final int local_img_id = this.picto.get_id(); final int local_img_id = this.picto.get_id();
final boolean imgUpload_success = uploadImg(this.picto); final boolean imgUpload_success = uploadImg(this.picto);
iPictoUploaderListener listener = new iPictoUploaderListener() { iPictoUploaderListener listener = new iPictoUploaderListener() {
int elements_uploaded = 0; int elements_uploaded = 0;
@Override @Override
public void success(boolean success) { public void success(boolean success) {
if (success) elements_uploaded++; if (success) elements_uploaded++;
else else
GUITools.show_alert(context, R.string.upload_error,PictoUploader.this.picto.get_translation()); GUITools.show_alert(PCBcontext.getActivityContext(), R.string.upload_error,PictoUploader.this.picto.get_translation());
if (elements_uploaded == 2) { if (elements_uploaded == 2) {
PCBcontext.getPcbdb().deletePicto(local_img_id); PCBcontext.getPcbdb().deletePicto(local_img_id);
PictoUploader.this.picto.delete_bitmap(PCBcontext.getContext()); PictoUploader.this.picto.delete_bitmap(PCBcontext.getContext());
PCBcontext.getRoom().emit(new VocabularyAction(VocabularyAction.ADD, PictoUploader.this.picto)); PCBcontext.getRoom().emit(new VocabularyAction(VocabularyAction.ADD, PictoUploader.this.picto));
GUITools.show_alert(context, R.string.upload_ok,PictoUploader.this.picto.get_translation()); GUITools.show_alert(PCBcontext.getContext(), R.string.upload_ok,PictoUploader.this.picto.get_translation());
} }
} }
}; };
...@@ -213,7 +213,7 @@ public class PictoUploader { ...@@ -213,7 +213,7 @@ public class PictoUploader {
uploadTranslation(picto.get_id(), listener); uploadTranslation(picto.get_id(), listener);
} }
else { else {
GUITools.show_alert(context, R.string.upload_error, PictoUploader.this.picto.get_translation()); GUITools.show_alert(PCBcontext.getActivityContext(), R.string.upload_error, PictoUploader.this.picto.get_translation());
} }
} }
......
...@@ -64,7 +64,7 @@ public final class PCBcontext { ...@@ -64,7 +64,7 @@ public final class PCBcontext {
throw new java.lang.AssertionError("init must be called once previously "); throw new java.lang.AssertionError("init must be called once previously ");
} }
Log.i(PCBcontext.class.getCanonicalName(), "User set at student " + student.get_name_stu()); Log.i(PCBcontext.class.getCanonicalName(), "User set at student " + student.get_name_stu()+ (student.is_supervisor() ? " with supervisor "+student.get_name_sup():"."));
wrapper.setToken(token); wrapper.setToken(token);
pcbdb = new PCBDBHelper(null, 2, student); pcbdb = new PCBDBHelper(null, 2, student);
pcbdb.user_online(token!=null); pcbdb.user_online(token!=null);
......
package com.yottacode.tools; package com.yottacode.tools;
import android.app.Activity;
import android.app.AlertDialog; import android.app.AlertDialog;
import android.content.Context; import android.content.Context;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.graphics.Point;
import android.util.Log; import android.util.Log;
import android.view.Display;
/** /**
* Created by Fernando on 01/04/2016. * Created by Fernando on 01/04/2016.
...@@ -35,4 +38,10 @@ public class GUITools { ...@@ -35,4 +38,10 @@ public class GUITools {
public static void show_alert(Context context, int resource_msg, String additional_msg) { public static void show_alert(Context context, int resource_msg, String additional_msg) {
show_alert(context, resource_msg, additional_msg,null); show_alert(context, resource_msg, additional_msg,null);
} }
public static Point getScreenSize(Activity context){
Display display = context.getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
return size;
}
} }
...@@ -301,6 +301,17 @@ BEGIN ...@@ -301,6 +301,17 @@ BEGIN
END END
;-- ;--
CREATE TRIGGER trg_update_supervisor
BEFORE UPDATE ON supervisor
FOR EACH ROW
WHEN NEW.id=-1
BEGIN
SELECT RAISE( ABORT,
'Null supervisor -1 is not updatable'
);
END
;--
DROP TRIGGER IF EXISTS trg_delete_collection DROP TRIGGER IF EXISTS trg_delete_collection
;-- ;--
......
...@@ -73,4 +73,9 @@ ...@@ -73,4 +73,9 @@
<string name="default_tts_engine">com.google.android.tts</string> <string name="default_tts_engine">com.google.android.tts</string>
<string name="default_tts_voice_male">en-gb-x-rjs#male_1-local</string> <string name="default_tts_voice_male">en-gb-x-rjs#male_1-local</string>
<string name="default_tts_voice_female">en-gb-x-fis#female_1-local</string> <string name="default_tts_voice_female">en-gb-x-fis#female_1-local</string>
<string name="crop_TextRequired">Please, introduce a message for the pictogram</string>
<string name="crop">Crop</string>
<string name="titleCropper">New pictogram</string>
<string name="uploadingImage">Uploading image</string>
</resources> </resources>
...@@ -42,6 +42,13 @@ ...@@ -42,6 +42,13 @@
<sourceFolder url="file://$MODULE_DIR$/src/CIFlavorDebug/jni" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/CIFlavorDebug/jni" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/CIFlavorDebug/rs" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/CIFlavorDebug/rs" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/CIFlavorDebug/shaders" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/CIFlavorDebug/shaders" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/CIFlavor/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/CIFlavor/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/res" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/resources" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/assets" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/assets" type="java-test-resource" />
...@@ -50,13 +57,6 @@ ...@@ -50,13 +57,6 @@
<sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/jni" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/rs" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/shaders" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/testCIFlavorDebug/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/CIFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/CIFlavor/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/CIFlavor/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/CIFlavor/res" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/CIFlavor/res" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/CIFlavor/resources" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/CIFlavor/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/CIFlavor/assets" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/CIFlavor/assets" type="java-resource" />
...@@ -121,10 +121,7 @@ ...@@ -121,10 +121,7 @@
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/animated-vector-drawable/24.2.1/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/animated-vector-drawable/24.2.1/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/appcompat-v7/24.2.1/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/appcompat-v7/24.2.1/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-compat/24.2.1/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-compat/24.2.1/jars" />
...@@ -135,17 +132,11 @@ ...@@ -135,17 +132,11 @@
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/24.2.1/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/24.2.1/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-vector-drawable/24.2.1/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-vector-drawable/24.2.1/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-safeguard" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
<excludeFolder url="file://$MODULE_DIR$/build/outputs" /> <excludeFolder url="file://$MODULE_DIR$/build/outputs" />
<excludeFolder url="file://$MODULE_DIR$/build/tmp" />
</content> </content>
<orderEntry type="jdk" jdkName="Android API 24 Platform" jdkType="Android SDK" /> <orderEntry type="jdk" jdkName="Android API 24 Platform" jdkType="Android SDK" />
<orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="sourceFolder" forTests="false" />
......
...@@ -12,6 +12,7 @@ import android.database.Cursor; ...@@ -12,6 +12,7 @@ import android.database.Cursor;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.graphics.BitmapFactory; import android.graphics.BitmapFactory;
import android.graphics.PixelFormat; import android.graphics.PixelFormat;
import android.graphics.Point;
import android.media.Ringtone; import android.media.Ringtone;
import android.media.RingtoneManager; import android.media.RingtoneManager;
import android.net.Uri; import android.net.Uri;
...@@ -52,7 +53,7 @@ import com.yottacode.pictogram.net.PictoUploader; ...@@ -52,7 +53,7 @@ import com.yottacode.pictogram.net.PictoUploader;
import com.yottacode.pictogram.net.websockets.ActionTalk; import com.yottacode.pictogram.net.websockets.ActionTalk;
import com.yottacode.pictogram.net.websockets.VocabularyTalk; import com.yottacode.pictogram.net.websockets.VocabularyTalk;
import com.yottacode.pictogram.tabletlibrary.R; import com.yottacode.pictogram.tabletlibrary.R;
import com.yottacode.pictogram.tabletlibrary.cropper.EditPictoActivity; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.EditPictoActivity;
import com.yottacode.pictogram.tabletlibrary.gui.login.SerialActivity; import com.yottacode.pictogram.tabletlibrary.gui.login.SerialActivity;
import com.yottacode.pictogram.tabletlibrary.gui.session.SessionActivity; import com.yottacode.pictogram.tabletlibrary.gui.session.SessionActivity;
import com.yottacode.pictogram.tabletlibrary.net.NetServiceTablet; import com.yottacode.pictogram.tabletlibrary.net.NetServiceTablet;
...@@ -80,9 +81,6 @@ public class PictogramActivity extends Activity implements VocabularyTalk.iVocab ...@@ -80,9 +81,6 @@ public class PictogramActivity extends Activity implements VocabularyTalk.iVocab
private static final int CAMERA_PIC_REQUEST = 1; private static final int CAMERA_PIC_REQUEST = 1;
private static final int GALLERY_PIC_REQUEST = 2; private static final int GALLERY_PIC_REQUEST = 2;
private static final int MAX_WIDTH = 700;
private static final int MAX_HEIGHT = 350;
// Main layout for this activity // Main layout for this activity
RelativeLayout mainLayout; RelativeLayout mainLayout;
// Adapter for de grid showing the categories grid (and main pictos) // Adapter for de grid showing the categories grid (and main pictos)
...@@ -1102,26 +1100,20 @@ protected void showOnlyTape(boolean onlyTape) { ...@@ -1102,26 +1100,20 @@ protected void showOnlyTape(boolean onlyTape) {
*/ */
protected void onActivityResult(int requestCode, int resultCode, Intent data) { protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data); super.onActivityResult(requestCode, resultCode, data);
Log.e(LOG_TAG,"CTSA prec (onACR)"+requestCode+" "+resultCode);
int row = getIntent().getIntExtra(Picto.JSON_ATTTRS.ROW, -1); int row = getIntent().getIntExtra(Picto.JSON_ATTTRS.ROW, -1);
int col = getIntent().getIntExtra(Picto.JSON_ATTTRS.COLUMN, -1); int col = getIntent().getIntExtra(Picto.JSON_ATTTRS.COLUMN, -1);
int freeRow = getIntent().getIntExtra(Picto.JSON_ATTTRS.FREE_ROW, -1); int freeRow = getIntent().getIntExtra(Picto.JSON_ATTTRS.FREE_ROW, -1);
int freeColumn = getIntent().getIntExtra(Picto.JSON_ATTTRS.FREE_COLUMN, -1); int freeColumn = getIntent().getIntExtra(Picto.JSON_ATTTRS.FREE_COLUMN, -1);
int cat = getIntent().getIntExtra("cat", -1); int cat = getIntent().getIntExtra("cat", -1);
Log.i(LOG_TAG, "Picto nuevo en: " + " fila: " + row + " col: " + col + " cat: "+cat);
Bitmap imagen = null; Bitmap imagen = null;
switch(requestCode) { switch(requestCode) {
case CAMERA_PIC_REQUEST: //Captura de foto case CAMERA_PIC_REQUEST: //Captura de foto
if (data != null && resultCode==RESULT_OK) { if (data != null && resultCode==RESULT_OK) {
imagen = (Bitmap) data.getExtras().get("data"); imagen = (Bitmap) data.getExtras().get("data");
this.launchActivity(imagen); this.launchEditPictoActivity(imagen);
} else {
if(resultCode!=RESULT_OK) //Si no quieres la foto que has echado
startActivityForResult(new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE),CAMERA_PIC_REQUEST);
if(data==null) //Si te sales de la camara dandole al boton atras de android
startActivity(new Intent(this, PictogramActivity.class));
} }
break; break;
case GALLERY_PIC_REQUEST: //Galeria case GALLERY_PIC_REQUEST: //Galeria
...@@ -1137,17 +1129,12 @@ protected void showOnlyTape(boolean onlyTape) { ...@@ -1137,17 +1129,12 @@ protected void showOnlyTape(boolean onlyTape) {
cursor.close(); cursor.close();
imagen = BitmapFactory.decodeFile(filePath); imagen = BitmapFactory.decodeFile(filePath);
this.launchActivity(imagen); this.launchEditPictoActivity(imagen);
}else{
startActivity(new Intent(this, PictogramActivity.class));
} }
break; break;
case EditPictoActivity.EDIT_PICTO_REQUEST: case EditPictoActivity.EDIT_PICTO_REQUEST:
Log.i(LOG_TAG, "Llega el intent de recorte->" + data.getExtras().getString(EditPictoActivity.TRANSCRIPTION));
if (resultCode == RESULT_OK) { if (resultCode == RESULT_OK) {
Log.i(LOG_TAG, "Llega el intent de recorte 2, texto: " + data.getExtras().getString(EditPictoActivity.TRANSCRIPTION));
String path = data.getExtras().getString(EditPictoActivity.PATH); String path = data.getExtras().getString(EditPictoActivity.PATH);
Log.i(LOG_TAG, "Path de la imagen tras llamar a gestionarlo: " + path);
String legend = data.getExtras().getString(EditPictoActivity.TRANSCRIPTION); String legend = data.getExtras().getString(EditPictoActivity.TRANSCRIPTION);
chooseTextAndSavePicto(path, row, col, freeRow, freeColumn, cat, legend); chooseTextAndSavePicto(path, row, col, freeRow, freeColumn, cat, legend);
} }
...@@ -1164,8 +1151,7 @@ protected void showOnlyTape(boolean onlyTape) { ...@@ -1164,8 +1151,7 @@ protected void showOnlyTape(boolean onlyTape) {
// Set up the buttons // Set up the buttons
int cat = category != -1 ? category : Picto.NO_CATEGORY; int cat = category != -1 ? category : Picto.NO_CATEGORY;
Log.e(LOG_TAG,"CTSA 1");
Log.i("DETALLES","Path de la imagen: "+ selectedImagePath);
PCBcontext.getVocabulary().saveLocalPicto( PCBcontext.getVocabulary().saveLocalPicto(
selectedImagePath, selectedImagePath,
legend, legend,
...@@ -1177,6 +1163,7 @@ protected void showOnlyTape(boolean onlyTape) { ...@@ -1177,6 +1163,7 @@ protected void showOnlyTape(boolean onlyTape) {
new iLocalPicto() { new iLocalPicto() {
@Override @Override
public void saved(Picto localPicto) { public void saved(Picto localPicto) {
Log.e(LOG_TAG,"CTSA 2");
refresh(); refresh();
try { try {
if (PCBcontext.is_user_online()) if (PCBcontext.is_user_online())
...@@ -1191,28 +1178,21 @@ protected void showOnlyTape(boolean onlyTape) { ...@@ -1191,28 +1178,21 @@ protected void showOnlyTape(boolean onlyTape) {
/**Para cambiar la activity de PictogramActivity a EditPictoActivity /**Para cambiar la activity de PictogramActivity a EditPictoActivity
* @param image * @param image
*/ */
public void launchActivity(Bitmap image){ public void launchEditPictoActivity(Bitmap image){
Intent intent = new Intent(this, EditPictoActivity.class); Intent intent = new Intent(this, EditPictoActivity.class);
if(image!=null) { if(image!=null) {
float aspectFactor = 1; Point size=GUITools.getScreenSize(this);
float bWidth = image.getWidth(); float bWidth = image.getWidth();
float bHeight = image.getHeight(); float bHeight = image.getHeight();
float factorX=size.x*0.7f/bWidth;
//Reducir la imagen a la mitad de su aspect ratio que viene de galería(Suele ser mayor que el tamaño maximo) float factorY=size.y*0.7f/bHeight;
if(bWidth>MAX_WIDTH || bHeight>MAX_HEIGHT){ float factor= factorY>factorX ? factorX : factorY;
image = Bitmap.createScaledBitmap(image,(int) bWidth/2,(int) bHeight/2,true);
bWidth = image.getWidth(); Log.i(LOG_TAG,"Reescalando tamaño máximo de "+size.x+" "+bWidth+"-->"+bWidth*factor);
bHeight = image.getHeight(); Log.i(LOG_TAG,"Reescalando tamaño máximo de "+size.y+" "+bHeight+"-->"+bHeight*factor);
} bWidth=bWidth*factor;
bHeight=bHeight*factor;
//Ir ampliando el alto y ancho hasta lo máximo posible (sin perder el ratio original), sin pasarse de los límites
while(bWidth < MAX_WIDTH && bHeight<MAX_HEIGHT){
bWidth = bWidth * aspectFactor;
bHeight = bHeight * aspectFactor;
aspectFactor += 0.1;
}
Bitmap rescaled = Bitmap.createScaledBitmap(image,(int) bWidth, (int) bHeight, true); Bitmap rescaled = Bitmap.createScaledBitmap(image,(int) bWidth, (int) bHeight, true);
ByteArrayOutputStream stream = new ByteArrayOutputStream(); ByteArrayOutputStream stream = new ByteArrayOutputStream();
......
package com.yottacode.pictogram.tabletlibrary.cropper; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper;
import android.content.Context; import android.content.Context;
import android.content.res.Resources; import android.content.res.Resources;
...@@ -15,18 +15,15 @@ import android.graphics.drawable.Drawable; ...@@ -15,18 +15,15 @@ import android.graphics.drawable.Drawable;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import android.support.annotation.Nullable; import android.support.annotation.Nullable;
import android.util.AttributeSet; import android.util.AttributeSet;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.MotionEvent; import android.view.MotionEvent;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.RelativeLayout;
import com.yottacode.pictogram.tabletlibrary.R; import com.yottacode.pictogram.tabletlibrary.R;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge.Edge; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge.Edge;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.handle.Handle; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.handle.Handle;
import com.yottacode.pictogram.tabletlibrary.cropper.util.AspectRatioUtil; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util.AspectRatioUtil;
import com.yottacode.pictogram.tabletlibrary.cropper.util.HandleUtil; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util.HandleUtil;
import com.yottacode.pictogram.tabletlibrary.cropper.util.PaintUtil; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util.PaintUtil;
/** /**
...@@ -36,12 +33,7 @@ import com.yottacode.pictogram.tabletlibrary.cropper.util.PaintUtil; ...@@ -36,12 +33,7 @@ import com.yottacode.pictogram.tabletlibrary.cropper.util.PaintUtil;
*/ */
public class CropImageView extends ImageView { public class CropImageView extends ImageView {
// Private Constants ///////////////////////////////////////////////////////////////////////////
private static final int CAMERA_PIC_REQUEST = 1;
private static final int GALLERY_PIC_REQUEST = 2;
private static final int VERTICAL_ORIENTATION = 200;
private static final int HORIZONTAL_ORIENTATION = 300;
@SuppressWarnings("unused") @SuppressWarnings("unused")
private static final String TAG = CropImageView.class.getName(); private static final String TAG = CropImageView.class.getName();
......
package com.yottacode.pictogram.tabletlibrary.cropper; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper;
import android.app.Activity; import android.app.Activity;
import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.graphics.BitmapFactory; import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.net.Uri; import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.provider.MediaStore; import android.provider.MediaStore;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View; import android.view.View;
import android.view.Window; import android.view.Window;
import android.widget.Button; import android.view.inputmethod.EditorInfo;
import android.view.inputmethod.InputMethodManager;
import android.widget.EditText; import android.widget.EditText;
import android.widget.ImageView; import android.widget.ImageButton;
import android.widget.TextView;
import android.widget.Toast;
import com.yottacode.pictogram.tabletlibrary.R; import com.yottacode.pictogram.tabletlibrary.R;
import com.yottacode.pictogram.tools.PCBcontext; import com.yottacode.pictogram.tools.PCBcontext;
...@@ -31,6 +37,7 @@ public class EditPictoActivity extends Activity { ...@@ -31,6 +37,7 @@ public class EditPictoActivity extends Activity {
public static final String TRANSCRIPTION = "textPicto"; public static final String TRANSCRIPTION = "textPicto";
public static final String PATH = "pathImage"; public static final String PATH = "pathImage";
public static final String IMAGE_PICTO = "imagePicto"; public static final String IMAGE_PICTO = "imagePicto";
private static final String LOG_PATH = EditPictoActivity.class.getName();
// Activity Methods //////////////////////////////////////////////////////////////////////////// // Activity Methods ////////////////////////////////////////////////////////////////////////////
@Override @Override
...@@ -42,57 +49,63 @@ public class EditPictoActivity extends Activity { ...@@ -42,57 +49,63 @@ public class EditPictoActivity extends Activity {
// Initialize Views. // Initialize Views.
final CropImageView cropImageView = (CropImageView) findViewById(R.id.CropImageView); final CropImageView cropImageView = (CropImageView) findViewById(R.id.CropImageView);
final EditText legend = (EditText) findViewById(R.id.legend); final EditText legend = (EditText) findViewById(R.id.edtLegend);
final Button okButton = (Button) findViewById(R.id.okButton); final ImageButton okButton = (ImageButton) findViewById(R.id.okButton);
final Button cancelButton = (Button) findViewById(R.id.cancelButton); final ImageButton cancelButton = (ImageButton) findViewById(R.id.cancelButton);
cropImageView.setFixedAspectRatio(true); cropImageView.setFixedAspectRatio(true);
cropImageView.setGuidelines(2); cropImageView.setGuidelines(2);
cropImageView.setAspectRatio(1,1); cropImageView.setAspectRatio(1,1);
legend.setOnEditorActionListener(new TextView.OnEditorActionListener() {
//Obtener leyenda @Override
String legendText = getIntent().getExtras().getString(EditPictoActivity.TRANSCRIPTION); public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if(legendText != null) { //Si tenia leyenda(editarlo) if ((actionId== EditorInfo.IME_ACTION_DONE ) )
legend.setText(legendText); {
}else{ //Si no tenia el picto leyenda //Toast.makeText(getActivity(), "call",45).show();
legend.setTextColor(Color.GRAY); // hide virtual keyboard
legend.setOnClickListener(new View.OnClickListener() { InputMethodManager imm = (InputMethodManager)EditPictoActivity.this.getSystemService(Context.INPUT_METHOD_SERVICE);
@Override imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
public void onClick(View v) { okButton.setImageAlpha(legend.getText().toString().trim().length()>0 ? 255 : 30);
legend.setText(""); return true;
} }
}); return false;
}
}
});
//Obtener imagen del intent //Obtener imagen del intent
byte[] byteArray = getIntent().getByteArrayExtra(EditPictoActivity.IMAGE_PICTO); byte[] byteArray = getIntent().getByteArrayExtra(EditPictoActivity.IMAGE_PICTO);
Bitmap imagePicto = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length); Bitmap imagePicto = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);
cropImageView.setImageBitmap(imagePicto); cropImageView.setImageBitmap(imagePicto);
cropImageView.setMaxWidth(imagePicto.getWidth());
cropImageView.setMaxHeight(imagePicto.getHeight());
//Gestion de botones //Gestion de botones
okButton.setOnClickListener(new View.OnClickListener() { okButton.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
final Bitmap croppedImage = cropImageView.getCroppedImage(); if (legend.getText().toString().trim().length()>0) {
//Escalar imagen final Bitmap croppedImage = cropImageView.getCroppedImage();
Bitmap finalImage = croppedImage.createScaledBitmap(croppedImage,96,96,true); //Escalar imagen
Bitmap finalImage = croppedImage.createScaledBitmap(croppedImage, 96, 96, true);
//Guardar imagen en galeria y obtener la ruta
ByteArrayOutputStream bytes = new ByteArrayOutputStream(); //Guardar imagen en galeria y obtener la ruta
finalImage.compress(Bitmap.CompressFormat.JPEG, 100, bytes); ByteArrayOutputStream bytes = new ByteArrayOutputStream();
String path = MediaStore.Images.Media.insertImage(PCBcontext.getContext().getContentResolver(), finalImage, legend.getText()+"-recorte", null); finalImage.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
Uri pathImage = Uri.parse(path); String title = getResources().getString(R.string.app_name) + ' ' + legend.getText().toString();
String path = MediaStore.Images.Media.insertImage(PCBcontext.getContext().getContentResolver(), finalImage, title, null);
Intent intent = getIntent(); //Mandar a pictogram activity el path y el texto de la imagen path = getRealPathFromURI(Uri.parse(path));
intent.putExtra(PATH,pathImage.toString()); Log.i(LOG_PATH, " New image " + title + " saved at " + path);
intent.putExtra(TRANSCRIPTION,legend.getText().toString()); Intent intent = getIntent(); //Mandar a pictogram activity el path y el texto de la imagen
intent.putExtra(PATH, path);
cropImageView.setImageBitmap(finalImage); intent.putExtra(TRANSCRIPTION, legend.getText().toString());
setResult(RESULT_OK,intent);
finish(); //Termina la actividad de editar cropImageView.setImageBitmap(finalImage);
setResult(RESULT_OK, intent);
finish(); //Termina la actividad de editar
}
else Toast.makeText(getBaseContext(),R.string.crop_TextRequired, Toast.LENGTH_LONG).show();
} }
}); });
...@@ -100,37 +113,25 @@ public class EditPictoActivity extends Activity { ...@@ -100,37 +113,25 @@ public class EditPictoActivity extends Activity {
cancelButton.setOnClickListener(new View.OnClickListener() { cancelButton.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
setResult(RESULT_CANCELED,getIntent());
finish(); finish();
setResult(RESULT_CANCELED,getIntent());
} }
}); });
} }
/** public String getRealPathFromURI(Uri contentUri) {
* To set background image for simulate the pictogramActivity Cursor cursor = null;
* @param bm try {
*/ String[] proj = { MediaStore.Images.Media.DATA };
/*public void setBackgroundImage(Bitmap bm){ cursor = this.getContentResolver().query(contentUri, proj, null, null, null);
ImageView backgroundImage = (ImageView) findViewById(R.id.backgroundImage); int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
backgroundImage.setImageBitmap(bm); cursor.moveToFirst();
}*/ return cursor.getString(column_index);
} finally {
/** if (cursor != null) {
* To set the image to crop cursor.close();
* @param bm }
*/ }
public void setCropImage(Bitmap bm){
ImageView cropImage = (ImageView) findViewById(R.id.CropImageView);
cropImage.setImageBitmap(bm);
}
/**
* To set the image to crop
* @param text
*/
public void setLegendImage(String text){
EditText legend = (EditText) findViewById(R.id.legend);
legend.setText(text.toString());
} }
} }
...@@ -11,12 +11,12 @@ ...@@ -11,12 +11,12 @@
* governing permissions and limitations under the License. * governing permissions and limitations under the License.
*/ */
package com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge;
import android.graphics.RectF; import android.graphics.RectF;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import com.yottacode.pictogram.tabletlibrary.cropper.util.AspectRatioUtil; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util.AspectRatioUtil;
/** /**
* Enum representing an edge in the crop window. * Enum representing an edge in the crop window.
......
package com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge;
/** /**
* Simple class to hold a pair of Edges. * Simple class to hold a pair of Edges.
......
package com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.handle; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.handle;
import android.graphics.RectF; import android.graphics.RectF;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge.Edge; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge.Edge;
/** /**
* HandleHelper class to handle the center handle. * HandleHelper class to handle the center handle.
......
package com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.handle; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.handle;
import android.graphics.RectF; import android.graphics.RectF;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge.Edge; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge.Edge;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge.EdgePair; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge.EdgePair;
/** /**
* HandleHelper class to handle corner Handles (i.e. top-left, top-right, bottom-left, and * HandleHelper class to handle corner Handles (i.e. top-left, top-right, bottom-left, and
......
package com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.handle; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.handle;
import android.graphics.RectF; import android.graphics.RectF;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge.Edge; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge.Edge;
/** /**
* Enum representing a pressable, draggable Handle on the crop window. * Enum representing a pressable, draggable Handle on the crop window.
......
package com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.handle; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.handle;
import android.graphics.RectF; import android.graphics.RectF;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge.Edge; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge.Edge;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge.EdgePair; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge.EdgePair;
import com.yottacode.pictogram.tabletlibrary.cropper.util.AspectRatioUtil; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util.AspectRatioUtil;
/** /**
* Abstract helper class to handle operations on a crop window Handle. * Abstract helper class to handle operations on a crop window Handle.
......
package com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.handle; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.handle;
import android.graphics.RectF; import android.graphics.RectF;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge.Edge; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge.Edge;
import com.yottacode.pictogram.tabletlibrary.cropper.util.AspectRatioUtil; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util.AspectRatioUtil;
/** /**
* Handle helper class to handle horizontal handles (i.e. top and bottom handles). * Handle helper class to handle horizontal handles (i.e. top and bottom handles).
......
package com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.handle; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.handle;
import android.graphics.RectF; import android.graphics.RectF;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.edge.Edge; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.edge.Edge;
import com.yottacode.pictogram.tabletlibrary.cropper.util.AspectRatioUtil; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util.AspectRatioUtil;
/** /**
* HandleHelper class to handle vertical handles (i.e. left and right handles). * HandleHelper class to handle vertical handles (i.e. left and right handles).
......
package com.yottacode.pictogram.tabletlibrary.cropper.util; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util;
import android.graphics.RectF; import android.graphics.RectF;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
......
package com.yottacode.pictogram.tabletlibrary.cropper.util; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util;
import android.graphics.PointF; import android.graphics.PointF;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import com.yottacode.pictogram.tabletlibrary.cropper.cropwindow.handle.Handle; import com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.cropwindow.handle.Handle;
/** /**
* Utility class to perform basic operations with Handles. * Utility class to perform basic operations with Handles.
......
package com.yottacode.pictogram.tabletlibrary.cropper.util; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util;
public class MathUtil { public class MathUtil {
......
package com.yottacode.pictogram.tabletlibrary.cropper.util; package com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.util;
import android.content.res.Resources; import android.content.res.Resources;
import android.graphics.Paint; import android.graphics.Paint;
......
...@@ -22,109 +22,99 @@ ...@@ -22,109 +22,99 @@
android:id="@+id/backgroundImage" android:id="@+id/backgroundImage"
app:srcCompat="@color/black_translucent" />--> app:srcCompat="@color/black_translucent" />-->
<RelativeLayout <LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:orientation="horizontal" android:orientation="vertical"
android:id="@+id/TotalLayout" android:id="@+id/TotalLayout"
android:background="@color/black_translucent"> android:background="@color/black_translucent">
<TextView <TextView
android:id="@+id/title" android:paddingTop="@dimen/content_padding"
android:layout_width="match_parent" android:id="@+id/crop_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="@string/titleCropper" android:text="@string/titleCropper"
android:textSize="24sp" android:textSize="24sp"
android:textStyle="bold" android:textStyle="bold"
android:textColor="@android:color/white" android:textColor="@android:color/holo_blue_light"
android:layout_weight="1"
android:layout_gravity="top"
android:textAlignment="center" android:textAlignment="center"
android:layout_alignParentTop="true" android:layout_gravity="center_horizontal"
android:layout_alignParentEnd="true" />
android:layout_marginTop="@dimen/activity_vertical_margin"
android:layout_alignStart="@+id/linearLayout2"
android:layout_centerVertical="false"
android:layout_centerHorizontal="true" />
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="false"
android:layout_centerHorizontal="true">
<com.yottacode.pictogram.tabletlibrary.cropper.CropImageView <GridLayout
android:orientation="horizontal"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:id="@+id/crop_legend"
android:layout_gravity="center_horizontal"
android:paddingLeft="@dimen/content_padding"
android:paddingTop="@dimen/content_padding"
>
<com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.CropImageView
android:id="@+id/CropImageView" android:id="@+id/CropImageView"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal" android:orientation="horizontal"
android:adjustViewBounds="true" android:adjustViewBounds="true"
android:scaleType="centerInside" android:scaleType="centerInside"
android:layout_below="@+id/title"
android:layout_alignParentStart="true"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:maxHeight="350px" android:cropToPadding="false"
android:maxWidth="700px" /> android:layout_row="1"
android:layout_column="1"
<EditText android:layout_columnSpan="2"
android:layout_width="wrap_content" />
android:layout_height="wrap_content" <TextView
android:inputType="textPersonName" android:layout_gravity="right"
android:text="@string/legendText"
android:ems="10"
android:id="@+id/legend"
android:textAlignment="center"
android:textColor="@android:color/white"
android:layout_above="@+id/linearLayout"
android:layout_centerHorizontal="true"
android:gravity="center_vertical|center_horizontal"
android:layout_gravity="center_horizontal" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="13dp">
<Button
android:id="@+id/okButton"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:minWidth="120dp"
android:text="@string/accept"
android:textColor="#33B5E5" android:textColor="#33B5E5"
android:textSize="20sp" android:textSize="20sp"
android:textAlignment="center" android:text="@string/legendText"
android:layout_alignParentBottom="true" android:layout_width="wrap_content"
android:layout_toStartOf="@+id/cancelButton" android:layout_height="wrap_content"
android:width="70dp" android:id="@+id/textLegend"
android:layout_marginRight="10dp" /> android:layout_row="2"
android:layout_column="1"
/>
<Button <EditText
android:id="@+id/cancelButton" android:layout_gravity="center_horizontal"
android:layout_width="wrap_content" android:textSize="20sp"
android:layout_height="match_parent" android:imeOptions="actionDone"
android:minWidth="120dp" android:inputType="textImeMultiLine"
android:text="@string/cancel" android:layout_width="wrap_content"
android:textColor="#33B5E5" android:layout_height="wrap_content"
android:textSize="20sp" android:ems="10"
android:textAlignment="center" android:id="@+id/edtLegend"
android:layout_alignBaseline="@+id/okButton" android:textColor="@android:color/white"
android:layout_alignBottom="@+id/okButton" android:layout_row="2"
android:layout_toEndOf="@+id/CropImageView" android:layout_column="2"
android:width="70dp" />
android:layout_marginLeft="10dp" /> <ImageButton
</LinearLayout> android:id="@+id/okButton"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_marginTop="10dp"
android:layout_marginLeft="10dp"
android:background="@drawable/session_ok"
android:clickable="false"
android:layout_row="1"
android:layout_column="3"
android:elevation="1dp" />
<ImageButton
android:id="@+id/cancelButton"
android:layout_width="80dp"
android:layout_height="80dp"
android:background="@drawable/session_fail"
android:layout_gravity="bottom"
android:layout_marginBottom="10dp"
android:layout_row="1"
android:layout_column="3"/>
</RelativeLayout> </GridLayout>
</LinearLayout>
<!--</FrameLayout>--> <!--</FrameLayout>-->
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<!---session--> <!---session-->
<string name="session_method">Método</string> <string name="session_method">Método</string>
<string name="session_insrtuction">Instrucción</string> <string name="session_instruction">Instrucción</string>
<string name="session_header">Seleccion de método e instrucción</string> <string name="session_header">Seleccion de método e instrucción</string>
<string name="session_error">Error de conexión</string> <string name="session_error">Error de conexión</string>
<string name="session_noinstructions">Alumno sin ninguna instrucción asignada. Por favor, asigne al menos una instrucción al alumno desde Pictogram Web</string> <string name="session_noinstructions">Alumno sin ninguna instrucción asignada. Por favor, asigne al menos una instrucción al alumno desde Pictogram Web</string>
...@@ -35,13 +35,12 @@ ...@@ -35,13 +35,12 @@
<string name="session_eval_notevuated">no evaluado</string> <string name="session_eval_notevuated">no evaluado</string>
<string name="session_eval_discarded">inválido</string> <string name="session_eval_discarded">inválido</string>
<string name="crop">Recortar</string> <string name="crop">Recortar</string>
<string name="titleCropper">Editar Picto</string> <string name="titleCropper">Nuevo Pictograma</string>
<string name="croppedImageDesc">Vista Previa</string> <string name="crop_TextRequired">Por favor, introduzca una leyenda para el pictograma</string>
<string name="cancel">Cancelar</string> <string name="legendText">Leyenda:</string>
<string name="accept">Aceptar</string>
<string name="legendText">Leyenda</string>
<string name="dialogCamera">Hacer Foto</string> <string name="dialogCamera">Hacer Foto</string>
<string name="dialogGallery">Seleccionar de Galería</string> <string name="dialogGallery">Seleccionar de Galería</string>
<string name="dialogTitle">Seleccionar Método</string> <string name="dialogTitle">Seleccionar Método</string>
<string name="dialogCancel">Cancelar</string> <string name="dialogCancel">Cancelar</string>
<string name="uploadingImage">Subiendo imagen al servidor</string>
</resources> </resources>
...@@ -44,15 +44,16 @@ ...@@ -44,15 +44,16 @@
<string name="dialogGallery">Seleccionar de Galería</string> <string name="dialogGallery">Seleccionar de Galería</string>
<string name="dialogCancel">Cancelar</string> <string name="dialogCancel">Cancelar</string>
<!-- Cropper --> <!-- Cropper -->
<string name="legendText">Leyenda</string> <string name="legendText">Leyenda:</string>
<string name="titleCropper">Editar Picto</string>
<string name="fixedAspectRatio">fixedAspectRatio =\u0020</string> <string name="fixedAspectRatio">fixedAspectRatio =\u0020</string>
<string name="aspectRatioXHeader">aspectRatioX =\u0020</string> <string name="aspectRatioXHeader">aspectRatioX =\u0020</string>
<string name="aspectRatioYHeader">aspectRatioY =\u0020</string> <string name="aspectRatioYHeader">aspectRatioY =\u0020</string>
<string name="showGuidelines">showGuidelines =\u0020</string> <string name="showGuidelines">showGuidelines =\u0020</string>
<string name="accept">Aceptar</string> <string name="crop">Recortar</string>
<string name="cancel">Cancel</string> <string name="titleCropper">Nuevo Pictograma</string>
<string name="croppedImageDesc">Vista Previa</string> <string name="crop_TextRequired">Por favor, introduzca una leyenda para el pictograma</string>
<string name="uploadingImage">Subiendo imagen al servidor</string>
<string-array name="showGuidelinesArray"> <string-array name="showGuidelinesArray">
<item>Off</item> <item>Off</item>
......
...@@ -74,7 +74,7 @@ ...@@ -74,7 +74,7 @@
android:screenOrientation="landscape" /> android:screenOrientation="landscape" />
<activity <activity
android:name="com.yottacode.pictogram.tabletlibrary.cropper.EditPictoActivity" android:name="com.yottacode.pictogram.tabletlibrary.gui.communicator.cropper.EditPictoActivity"
android:exported="true" android:exported="true"
android:label="@string/app_name" android:label="@string/app_name"
android:launchMode="singleInstance" android:launchMode="singleInstance"
......
...@@ -42,6 +42,13 @@ ...@@ -42,6 +42,13 @@
<sourceFolder url="file://$MODULE_DIR$/src/DevFlavorDebug/jni" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/DevFlavorDebug/jni" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/DevFlavorDebug/rs" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/DevFlavorDebug/rs" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/DevFlavorDebug/shaders" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/DevFlavorDebug/shaders" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/DevFlavor/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/DevFlavor/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/res" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/resources" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/assets" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/assets" type="java-test-resource" />
...@@ -50,13 +57,6 @@ ...@@ -50,13 +57,6 @@
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/jni" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/rs" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/shaders" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/testDevFlavorDebug/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/DevFlavor/debug" isTestSource="true" generated="true" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/DevFlavor/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/DevFlavor/debug" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/res" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/res" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/resources" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/assets" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/assets" type="java-resource" />
...@@ -65,14 +65,6 @@ ...@@ -65,14 +65,6 @@
<sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/jni" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/jni" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/rs" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/rs" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/shaders" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/DevFlavor/shaders" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/assets" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/aidl" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/res" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/resources" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/assets" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/assets" type="java-test-resource" />
...@@ -81,6 +73,14 @@ ...@@ -81,6 +73,14 @@
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/jni" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/rs" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/shaders" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/androidTestDevFlavor/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/assets" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/aidl" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/testDevFlavor/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
...@@ -105,14 +105,6 @@ ...@@ -105,14 +105,6 @@
<sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
...@@ -121,8 +113,17 @@ ...@@ -121,8 +113,17 @@
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/animated-vector-drawable/24.2.1/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/animated-vector-drawable/24.2.1/jars" />
...@@ -135,11 +136,17 @@ ...@@ -135,11 +136,17 @@
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/24.2.1/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-v4/24.2.1/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-vector-drawable/24.2.1/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.android.support/support-vector-drawable/24.2.1/jars" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-safeguard" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-safeguard" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-resources" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-support" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/restart-dex" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment