diff --git a/app/build.gradle b/app/build.gradle index 4fc5bbab8c28529d4b557034da7af0a3ceea5783..46e60fe5f917a40475b589fead2d2f5939951a47 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -46,8 +46,8 @@ if (project.hasProperty("storeFile")) { release { signingConfig signingConfigs.release } - debug { - applicationIdSuffix ".debug" + beta { + signingConfig signingConfigs.release } } } @@ -61,7 +61,8 @@ if (versionPropsFile.exists() && versionPropsFile.canRead()) { versionProps.load(new FileInputStream(versionPropsFile)) def runTasks = gradle.startParameter.taskNames versionBuild = Integer.valueOf(versionProps['VERSION_BUILD'].toString()) - if ('assemble' in runTasks || 'assembleRelease' in runTasks || 'aR' in runTasks) { + if (!(':app:assembleDebug' in runTasks) && !('assembleDebug' in runTasks) && !('installDebug' in runTasks)) { + println "Increasing version number" versionBuild = versionBuild + 1 } versionProps['VERSION_BUILD'] = versionBuild.toString() @@ -93,6 +94,26 @@ android { minifyEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + + applicationVariants.all { variant -> + variant.outputs.each { output -> + if (output.zipAlign) { + def fileName = output.outputFile.name + .replace(".apk", String.format("-%s-build%d.apk", rawVersionName, versionBuild)) + .replace("app-", "QuasselDroidNG-") + output.outputFile = new File(output.outputFile.parent, fileName) + } + } + } + } + + beta { + initWith release + applicationIdSuffix ".beta" + } + + debug { + applicationIdSuffix ".debug" } } compileOptions { @@ -116,28 +137,6 @@ android { } } -def runTasks = gradle.startParameter.taskNames -if ('assemble' in runTasks || 'assembleRelease' in runTasks || 'aR' in runTasks) { - android { - buildTypes { - release { - //minifyEnabled true - //shrinkResources true - //proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - - applicationVariants.all { variant -> - variant.outputs.each { output -> - def fileName = output.outputFile.name - .replace(".apk", String.format("-%s-build%d.apk", rawVersionName, versionBuild)) - .replace("app-", "QuasselDroidNG-") - output.outputFile = new File(output.outputFile.parent, fileName) - } - } - } - } - } -} - dependencies { testCompile 'junit:junit:4.12' diff --git a/app/src/main/java/de/kuschku/libquassel/message/Message.java b/app/src/main/java/de/kuschku/libquassel/message/Message.java index 5b99b69522752c895821277327d0b708e78479dd..0fffb912a8d772673bfc2c512483171c4a6df40c 100644 --- a/app/src/main/java/de/kuschku/libquassel/message/Message.java +++ b/app/src/main/java/de/kuschku/libquassel/message/Message.java @@ -39,6 +39,7 @@ import java.util.Comparator; import de.kuschku.libquassel.localtypes.orm.ConnectedDatabase; import de.kuschku.libquassel.primitives.types.BufferInfo; +import de.kuschku.util.backports.Objects; import de.kuschku.util.observables.ContentComparable; @Table(database = ConnectedDatabase.class) @@ -100,7 +101,7 @@ public class Message extends BaseModel implements ContentComparable<Message> { @Override public boolean areContentsTheSame(@Nullable Message message) { - return message != null && this.id == message.id && this.sender.equals(message.sender) && this.type == message.type && this.time.equals(message.time) && this.content.equals(message.content) && this.flags == message.flags; + return message != null && this.id == message.id && Objects.equals(this.sender, message.sender) && this.type == message.type && Objects.equals(this.time, message.time) && Objects.equals(this.content, message.content) && this.flags == message.flags; } @Override diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/MainActivity.java b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/MainActivity.java index ea37f4ce9eaa8ee3c68f72a83c08e3560e075de2..3da3c2af92a5bb84137c05aaaadb06ce902b68cd 100644 --- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/MainActivity.java +++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/MainActivity.java @@ -49,6 +49,9 @@ import android.widget.Toast; import com.afollestad.materialdialogs.MaterialDialog; import com.jakewharton.rxbinding.support.v7.widget.RxSearchView; +import org.acra.ACRA; + +import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -164,27 +167,6 @@ public class MainActivity extends BoundActivity { } break; case R.id.action_manage_chat_lists: { - chatListToolbar.startActionMode(new ActionMode.Callback() { - @Override - public boolean onCreateActionMode(ActionMode actionMode, Menu menu) { - return false; - } - - @Override - public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) { - return false; - } - - @Override - public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) { - return false; - } - - @Override - public void onDestroyActionMode(ActionMode actionMode) { - - } - }); } } return false; @@ -209,9 +191,10 @@ public class MainActivity extends BoundActivity { @Override protected void onStop() { super.onStop(); - if (context.client() != null) + if (context.client() != null) { context.client().backlogManager().setOpen(-1); - context.client().backlogStorage().markBufferUnused(context.client().backlogManager().open()); + context.client().backlogStorage().markBufferUnused(context.client().backlogManager().open()); + } } @Override @@ -315,6 +298,8 @@ public class MainActivity extends BoundActivity { public void onEventMainThread(GeneralErrorEvent event) { Toast.makeText(getApplication(), event.exception.getClass().getSimpleName() + ": " + event.debugInfo, Toast.LENGTH_LONG).show(); + if (!(event.exception instanceof IOException)) + ACRA.getErrorReporter().handleSilentException(event.exception); } public void onEventMainThread(BufferChangeEvent event) { diff --git a/app/src/main/java/de/kuschku/util/ReflectionUtils.java b/app/src/main/java/de/kuschku/util/ReflectionUtils.java index 57f53b531fac9f225af58a7819c13d80f9556893..6da3581a25c2801b79cd749b5afdc1f8abf56e03 100644 --- a/app/src/main/java/de/kuschku/util/ReflectionUtils.java +++ b/app/src/main/java/de/kuschku/util/ReflectionUtils.java @@ -64,7 +64,7 @@ public class ReflectionUtils { try { m.invoke(o, argv); } catch (Exception e) { - throw new SyncInvocationException(e, String.format("Error invoking %s::%s with arguments %s and classes %s", o.getClass().getSimpleName(), name, Arrays.toString(argv), Arrays.toString(classes))); + throw new SyncInvocationException(e, String.format("Error invoking %s::%s with classes %s", o.getClass().getSimpleName(), name, Arrays.toString(classes))); } } diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 287a93a30d00af7a682962d1489931acf010afe3..e0b54724b2dc615f3f6614b20acc48c7dade591e 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -21,11 +21,6 @@ --> <resources> - <!-- - <color name="colorPrimary">#3F51B5</color> - <color name="colorPrimaryDark">#303F9F</color> - <color name="colorAccent">#FF4081</color> - --> <color name="colorPrimary">#0271B3</color> <color name="colorPrimaryDark">#02588c</color> <color name="colorAccent">#afb42b</color> diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 467286a158b9a2d452b77fe990bc99ef2e62722d..f5c1591a4d9e7e7c0e8c04176fa843321cb62f54 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -25,7 +25,7 @@ <dimen name="activity_vertical_margin">16dp</dimen> <dimen name="message_horizontal">8dp</dimen> - <dimen name="message_vertical">4dp</dimen> + <dimen name="message_vertical">2dp</dimen> <dimen name="circular_button_size">56dp</dimen>