浏览代码

Reformat

Signed-off-by: Mario Danic <mario@lovelyhq.com>
Mario Danic 6 年之前
父节点
当前提交
455601b5a6
共有 100 个文件被更改,包括 493 次插入860 次删除
  1. 1 1
      app/build.gradle
  2. 3 6
      app/src/main/java/com/nextcloud/talk/activities/MagicCallActivity.java
  3. 6 8
      app/src/main/java/com/nextcloud/talk/activities/MainActivity.java
  4. 7 14
      app/src/main/java/com/nextcloud/talk/adapters/items/AdvancedUserItem.java
  5. 4 6
      app/src/main/java/com/nextcloud/talk/adapters/items/AppItem.java
  6. 6 9
      app/src/main/java/com/nextcloud/talk/adapters/items/CallItem.java
  7. 5 8
      app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.java
  8. 4 7
      app/src/main/java/com/nextcloud/talk/adapters/items/GenericTextHeaderItem.java
  9. 3 6
      app/src/main/java/com/nextcloud/talk/adapters/items/MentionAutocompleteItem.java
  10. 4 6
      app/src/main/java/com/nextcloud/talk/adapters/items/MenuItem.java
  11. 4 6
      app/src/main/java/com/nextcloud/talk/adapters/items/NotificationSoundItem.java
  12. 11 13
      app/src/main/java/com/nextcloud/talk/adapters/items/ProgressItem.java
  13. 6 10
      app/src/main/java/com/nextcloud/talk/adapters/items/UserItem.java
  14. 5 8
      app/src/main/java/com/nextcloud/talk/adapters/messages/MagicIncomingTextMessageViewHolder.java
  15. 5 8
      app/src/main/java/com/nextcloud/talk/adapters/messages/MagicOutcomingTextMessageViewHolder.java
  16. 3 5
      app/src/main/java/com/nextcloud/talk/adapters/messages/MagicPreviewMessageViewHolder.java
  17. 1 3
      app/src/main/java/com/nextcloud/talk/adapters/messages/MagicSystemMessageViewHolder.java
  18. 5 16
      app/src/main/java/com/nextcloud/talk/api/NcApi.java
  19. 12 18
      app/src/main/java/com/nextcloud/talk/application/NextcloudTalkApplication.java
  20. 11 15
      app/src/main/java/com/nextcloud/talk/controllers/AccountVerificationController.java
  21. 21 62
      app/src/main/java/com/nextcloud/talk/controllers/CallController.java
  22. 12 20
      app/src/main/java/com/nextcloud/talk/controllers/CallNotificationController.java
  23. 3 6
      app/src/main/java/com/nextcloud/talk/controllers/ChatController.java
  24. 19 34
      app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java
  25. 13 27
      app/src/main/java/com/nextcloud/talk/controllers/ConversationInfoController.java
  26. 19 28
      app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java
  27. 10 13
      app/src/main/java/com/nextcloud/talk/controllers/RingtoneSelectionController.java
  28. 7 10
      app/src/main/java/com/nextcloud/talk/controllers/ServerSelectionController.java
  29. 12 15
      app/src/main/java/com/nextcloud/talk/controllers/SwitchAccountController.java
  30. 10 19
      app/src/main/java/com/nextcloud/talk/controllers/WebViewLoginController.java
  31. 5 8
      app/src/main/java/com/nextcloud/talk/controllers/base/BaseController.java
  32. 1 3
      app/src/main/java/com/nextcloud/talk/controllers/base/ButterKnifeController.java
  33. 9 13
      app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/CallMenuController.java
  34. 8 10
      app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.java
  35. 11 15
      app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/OperationsMenuController.java
  36. 2 3
      app/src/main/java/com/nextcloud/talk/dagger/modules/BusModule.java
  37. 0 1
      app/src/main/java/com/nextcloud/talk/dagger/modules/ContextModule.java
  38. 4 7
      app/src/main/java/com/nextcloud/talk/dagger/modules/DatabaseModule.java
  39. 36 48
      app/src/main/java/com/nextcloud/talk/dagger/modules/RestModule.java
  40. 1 3
      app/src/main/java/com/nextcloud/talk/events/CertificateEvent.java
  41. 1 2
      app/src/main/java/com/nextcloud/talk/events/MediaStreamEvent.java
  42. 0 1
      app/src/main/java/com/nextcloud/talk/events/MoreMenuClickEvent.java
  43. 2 4
      app/src/main/java/com/nextcloud/talk/events/SessionDescriptionSendEvent.java
  44. 2 2
      app/src/main/java/com/nextcloud/talk/events/WebSocketCommunicationEvent.java
  45. 10 13
      app/src/main/java/com/nextcloud/talk/jobs/AccountRemovalWorker.java
  46. 11 15
      app/src/main/java/com/nextcloud/talk/jobs/CapabilitiesWorker.java
  47. 15 19
      app/src/main/java/com/nextcloud/talk/jobs/NotificationWorker.java
  48. 1 3
      app/src/main/java/com/nextcloud/talk/jobs/PushRegistrationWorker.java
  49. 6 14
      app/src/main/java/com/nextcloud/talk/jobs/SignalingSettingsJob.java
  50. 5 8
      app/src/main/java/com/nextcloud/talk/jobs/WebsocketConnectionsWorker.java
  51. 1 3
      app/src/main/java/com/nextcloud/talk/models/ExternalSignalingServer.java
  52. 1 2
      app/src/main/java/com/nextcloud/talk/models/LoginData.java
  53. 1 2
      app/src/main/java/com/nextcloud/talk/models/RetrofitBucket.java
  54. 2 5
      app/src/main/java/com/nextcloud/talk/models/RingtoneSettings.java
  55. 1 3
      app/src/main/java/com/nextcloud/talk/models/SignatureVerification.java
  56. 2 3
      app/src/main/java/com/nextcloud/talk/models/database/ArbitraryStorage.java
  57. 3 5
      app/src/main/java/com/nextcloud/talk/models/database/User.java
  58. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/autocomplete/AutocompleteOCS.java
  59. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/autocomplete/AutocompleteOverall.java
  60. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/autocomplete/AutocompleteUser.java
  61. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/call/Call.java
  62. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/call/CallOCS.java
  63. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/call/CallOverall.java
  64. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/capabilities/Capabilities.java
  65. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/capabilities/CapabilitiesList.java
  66. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/capabilities/CapabilitiesOCS.java
  67. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/capabilities/CapabilitiesOverall.java
  68. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/capabilities/NotificationsCapability.java
  69. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/capabilities/SpreedCapability.java
  70. 65 78
      app/src/main/java/com/nextcloud/talk/models/json/chat/ChatMessage.java
  71. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/chat/ChatOCS.java
  72. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/chat/ChatOverall.java
  73. 1 16
      app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.java
  74. 0 1
      app/src/main/java/com/nextcloud/talk/models/json/converters/ObjectParcelConverter.java
  75. 0 1
      app/src/main/java/com/nextcloud/talk/models/json/converters/UriTypeConverter.java
  76. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/generic/GenericMeta.java
  77. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/generic/GenericOCS.java
  78. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/generic/GenericOverall.java
  79. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/generic/Status.java
  80. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/mention/Mention.java
  81. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/mention/MentionOCS.java
  82. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/mention/MentionOverall.java
  83. 3 19
      app/src/main/java/com/nextcloud/talk/models/json/notifications/Notification.java
  84. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationAction.java
  85. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationOCS.java
  86. 0 1
      app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationOverall.java
  87. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationRichObject.java
  88. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationsOCS.java
  89. 0 1
      app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationsOverall.java
  90. 0 1
      app/src/main/java/com/nextcloud/talk/models/json/participants/AddParticipantOverall.java
  91. 11 13
      app/src/main/java/com/nextcloud/talk/models/json/participants/Participant.java
  92. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/participants/ParticipantsOCS.java
  93. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/participants/ParticipantsOverall.java
  94. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/push/DecryptedPushMessage.java
  95. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/push/PushConfigurationState.java
  96. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/push/PushRegistration.java
  97. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/push/PushRegistrationOCS.java
  98. 1 3
      app/src/main/java/com/nextcloud/talk/models/json/push/PushRegistrationOverall.java
  99. 8 10
      app/src/main/java/com/nextcloud/talk/models/json/rooms/Conversation.java
  100. 0 1
      app/src/main/java/com/nextcloud/talk/models/json/rooms/RoomOCS.java

+ 1 - 1
app/build.gradle

@@ -17,7 +17,7 @@ android {
         targetSdkVersion 28
         testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
 
-        versionCode 82
+        versionCode 120
         versionName "3.2.3"
 
         flavorDimensions "default"

+ 3 - 6
app/src/main/java/com/nextcloud/talk/activities/MagicCallActivity.java

@@ -26,7 +26,9 @@ import android.view.View;
 import android.view.ViewGroup;
 import android.view.Window;
 import android.view.WindowManager;
-
+import autodagger.AutoInjector;
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.bluelinelabs.conductor.Conductor;
 import com.bluelinelabs.conductor.Router;
 import com.bluelinelabs.conductor.RouterTransaction;
@@ -37,15 +39,10 @@ import com.nextcloud.talk.controllers.CallController;
 import com.nextcloud.talk.controllers.CallNotificationController;
 import com.nextcloud.talk.events.ConfigurationChangeEvent;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
-
 import org.greenrobot.eventbus.EventBus;
 
 import javax.inject.Inject;
 
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import butterknife.ButterKnife;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class MagicCallActivity extends BaseActivity {
     private static final String TAG = "MagicCallActivity";

+ 6 - 8
app/src/main/java/com/nextcloud/talk/activities/MainActivity.java

@@ -23,7 +23,10 @@ package com.nextcloud.talk.activities;
 import android.content.Intent;
 import android.os.Bundle;
 import android.view.ViewGroup;
-
+import androidx.appcompat.widget.Toolbar;
+import autodagger.AutoInjector;
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.bluelinelabs.conductor.Conductor;
 import com.bluelinelabs.conductor.Router;
 import com.bluelinelabs.conductor.RouterTransaction;
@@ -37,17 +40,12 @@ import com.nextcloud.talk.controllers.ServerSelectionController;
 import com.nextcloud.talk.controllers.base.providers.ActionBarProvider;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
-
-import javax.inject.Inject;
-
-import androidx.appcompat.widget.Toolbar;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import butterknife.ButterKnife;
 import io.requery.Persistable;
 import io.requery.android.sqlcipher.SqlCipherDatabaseSource;
 import io.requery.reactivex.ReactiveEntityStore;
 
+import javax.inject.Inject;
+
 @AutoInjector(NextcloudTalkApplication.class)
 public final class MainActivity extends BaseActivity implements ActionBarProvider {
 

+ 7 - 14
app/src/main/java/com/nextcloud/talk/adapters/items/AdvancedUserItem.java

@@ -22,12 +22,10 @@ package com.nextcloud.talk.adapters.items;
 
 import android.accounts.Account;
 import android.view.View;
-import android.widget.ImageButton;
-import android.widget.ImageView;
-import android.widget.LinearLayout;
-import android.widget.RelativeLayout;
-import android.widget.TextView;
-
+import android.widget.*;
+import androidx.annotation.Nullable;
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.bumptech.glide.load.engine.DiskCacheStrategy;
 import com.bumptech.glide.load.model.GlideUrl;
 import com.bumptech.glide.load.model.LazyHeaders;
@@ -39,20 +37,15 @@ import com.nextcloud.talk.models.database.UserEntity;
 import com.nextcloud.talk.models.json.participants.Participant;
 import com.nextcloud.talk.utils.ApiUtils;
 import com.nextcloud.talk.utils.glide.GlideApp;
-
-import org.apache.commons.lang3.StringUtils;
-
-import java.util.List;
-
-import androidx.annotation.Nullable;
-import butterknife.BindView;
-import butterknife.ButterKnife;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import eu.davidea.flexibleadapter.items.IFilterable;
 import eu.davidea.flexibleadapter.utils.FlexibleUtils;
 import eu.davidea.flipview.FlipView;
 import eu.davidea.viewholders.FlexibleViewHolder;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.List;
 
 public class AdvancedUserItem extends AbstractFlexibleItem<AdvancedUserItem.UserItemViewHolder> implements
         IFilterable<String> {

+ 4 - 6
app/src/main/java/com/nextcloud/talk/adapters/items/AppItem.java

@@ -27,20 +27,18 @@ import android.text.style.ForegroundColorSpan;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
-
-import com.nextcloud.talk.R;
-import com.nextcloud.talk.application.NextcloudTalkApplication;
-
-import java.util.List;
-
 import androidx.annotation.Nullable;
 import butterknife.BindView;
 import butterknife.ButterKnife;
+import com.nextcloud.talk.R;
+import com.nextcloud.talk.application.NextcloudTalkApplication;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import eu.davidea.flexibleadapter.items.IFlexible;
 import eu.davidea.viewholders.FlexibleViewHolder;
 
+import java.util.List;
+
 public class AppItem extends AbstractFlexibleItem<AppItem.AppItemViewHolder> {
     private String title;
     private String packageName;

+ 6 - 9
app/src/main/java/com/nextcloud/talk/adapters/items/CallItem.java

@@ -27,7 +27,8 @@ import android.view.View;
 import android.widget.ImageButton;
 import android.widget.ImageView;
 import android.widget.TextView;
-
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.bumptech.glide.load.engine.DiskCacheStrategy;
 import com.bumptech.glide.load.model.GlideUrl;
 import com.bumptech.glide.load.model.LazyHeaders;
@@ -41,20 +42,16 @@ import com.nextcloud.talk.models.json.rooms.Conversation;
 import com.nextcloud.talk.utils.ApiUtils;
 import com.nextcloud.talk.utils.DisplayUtils;
 import com.nextcloud.talk.utils.glide.GlideApp;
-
-import org.apache.commons.lang3.StringUtils;
-import org.greenrobot.eventbus.EventBus;
-
-import java.util.List;
-
-import butterknife.BindView;
-import butterknife.ButterKnife;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import eu.davidea.flexibleadapter.items.IFilterable;
 import eu.davidea.flexibleadapter.utils.FlexibleUtils;
 import eu.davidea.flipview.FlipView;
 import eu.davidea.viewholders.FlexibleViewHolder;
+import org.apache.commons.lang3.StringUtils;
+import org.greenrobot.eventbus.EventBus;
+
+import java.util.List;
 
 public class CallItem extends AbstractFlexibleItem<CallItem.RoomItemViewHolder> implements IFilterable<String> {
 

+ 5 - 8
app/src/main/java/com/nextcloud/talk/adapters/items/ConversationItem.java

@@ -26,7 +26,8 @@ import android.text.format.DateUtils;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
-
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.amulyakhare.textdrawable.TextDrawable;
 import com.bumptech.glide.load.engine.DiskCacheStrategy;
 import com.bumptech.glide.load.model.GlideUrl;
@@ -42,19 +43,15 @@ import com.nextcloud.talk.utils.ApiUtils;
 import com.nextcloud.talk.utils.DisplayUtils;
 import com.nextcloud.talk.utils.glide.GlideApp;
 import com.vanniktech.emoji.EmojiTextView;
-
-import org.apache.commons.lang3.StringUtils;
-
-import java.util.List;
-
-import butterknife.BindView;
-import butterknife.ButterKnife;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import eu.davidea.flexibleadapter.items.IFilterable;
 import eu.davidea.flexibleadapter.items.IFlexible;
 import eu.davidea.flexibleadapter.utils.FlexibleUtils;
 import eu.davidea.viewholders.FlexibleViewHolder;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.List;
 
 public class ConversationItem extends AbstractFlexibleItem<ConversationItem.ConversationItemViewHolder> implements
         IFilterable<String> {

+ 4 - 7
app/src/main/java/com/nextcloud/talk/adapters/items/GenericTextHeaderItem.java

@@ -23,20 +23,17 @@ package com.nextcloud.talk.adapters.items;
 import android.util.Log;
 import android.view.View;
 import android.widget.TextView;
-
-import com.nextcloud.talk.R;
-
-import org.apache.commons.lang3.StringUtils;
-
-import java.util.List;
-
 import butterknife.BindView;
 import butterknife.ButterKnife;
+import com.nextcloud.talk.R;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.items.AbstractHeaderItem;
 import eu.davidea.flexibleadapter.items.IFilterable;
 import eu.davidea.flexibleadapter.items.IFlexible;
 import eu.davidea.viewholders.FlexibleViewHolder;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.List;
 
 public class GenericTextHeaderItem extends AbstractHeaderItem<GenericTextHeaderItem.HeaderViewHolder> implements IFilterable<String> {
     private static final String TAG = "GenericTextHeaderItem";

+ 3 - 6
app/src/main/java/com/nextcloud/talk/adapters/items/MentionAutocompleteItem.java

@@ -21,7 +21,6 @@
 package com.nextcloud.talk.adapters.items;
 
 import android.view.View;
-
 import com.bumptech.glide.load.engine.DiskCacheStrategy;
 import com.bumptech.glide.load.model.GlideUrl;
 import com.bumptech.glide.load.model.LazyHeaders;
@@ -32,16 +31,14 @@ import com.nextcloud.talk.application.NextcloudTalkApplication;
 import com.nextcloud.talk.models.database.UserEntity;
 import com.nextcloud.talk.utils.ApiUtils;
 import com.nextcloud.talk.utils.glide.GlideApp;
-
-import org.apache.commons.lang3.StringUtils;
-
-import java.util.List;
-
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import eu.davidea.flexibleadapter.items.IFilterable;
 import eu.davidea.flexibleadapter.items.IFlexible;
 import eu.davidea.flexibleadapter.utils.FlexibleUtils;
+import org.apache.commons.lang3.StringUtils;
+
+import java.util.List;
 
 public class MentionAutocompleteItem extends AbstractFlexibleItem<UserItem.UserItemViewHolder>
         implements IFilterable<String> {

+ 4 - 6
app/src/main/java/com/nextcloud/talk/adapters/items/MenuItem.java

@@ -29,19 +29,17 @@ import android.text.SpannableString;
 import android.text.style.ForegroundColorSpan;
 import android.view.View;
 import android.widget.TextView;
-
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.nextcloud.talk.R;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
 import com.nextcloud.talk.utils.DisplayUtils;
-
-import java.util.List;
-
-import butterknife.BindView;
-import butterknife.ButterKnife;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import eu.davidea.viewholders.FlexibleViewHolder;
 
+import java.util.List;
+
 public class MenuItem extends AbstractFlexibleItem<MenuItem.MenuItemViewHolder> {
     private String title;
     private Drawable icon;

+ 4 - 6
app/src/main/java/com/nextcloud/talk/adapters/items/NotificationSoundItem.java

@@ -22,19 +22,17 @@ package com.nextcloud.talk.adapters.items;
 
 import android.view.View;
 import android.widget.TextView;
-
-import com.nextcloud.talk.R;
-import com.nextcloud.talk.utils.MagicFlipView;
-
-import java.util.List;
-
 import butterknife.BindView;
 import butterknife.ButterKnife;
+import com.nextcloud.talk.R;
+import com.nextcloud.talk.utils.MagicFlipView;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import eu.davidea.flexibleadapter.items.IFlexible;
 import eu.davidea.viewholders.FlexibleViewHolder;
 
+import java.util.List;
+
 public class NotificationSoundItem extends AbstractFlexibleItem<NotificationSoundItem.NotificationSoundItemViewHolder> {
 
     private String notificationSoundName;

+ 11 - 13
app/src/main/java/com/nextcloud/talk/adapters/items/ProgressItem.java

@@ -29,14 +29,10 @@ import android.content.Context;
 import android.view.View;
 import android.widget.ProgressBar;
 import android.widget.TextView;
-
-import com.nextcloud.talk.R;
-
-import java.util.List;
-
 import androidx.annotation.NonNull;
 import butterknife.BindView;
 import butterknife.ButterKnife;
+import com.nextcloud.talk.R;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.Payload;
 import eu.davidea.flexibleadapter.helpers.AnimatorHelper;
@@ -44,6 +40,8 @@ import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import eu.davidea.flexibleadapter.items.IFlexible;
 import eu.davidea.viewholders.FlexibleViewHolder;
 
+import java.util.List;
+
 /**
  * @author Davide Steduto
  * @since 22/04/2016
@@ -115,6 +113,14 @@ public class ProgressItem extends AbstractFlexibleItem<ProgressItem.ProgressView
     }
 
 
+    public enum StatusEnum {
+        MORE_TO_LOAD, //Default = should have an empty Payload
+        DISABLE_ENDLESS, //Endless is disabled because user has set limits
+        NO_MORE_LOAD, //Non-empty Payload = Payload.NO_MORE_LOAD
+        ON_CANCEL,
+        ON_ERROR
+    }
+
     static class ProgressViewHolder extends FlexibleViewHolder {
 
         @BindView(R.id.progress_bar)
@@ -133,12 +139,4 @@ public class ProgressItem extends AbstractFlexibleItem<ProgressItem.ProgressView
         }
     }
 
-    public enum StatusEnum {
-        MORE_TO_LOAD, //Default = should have an empty Payload
-        DISABLE_ENDLESS, //Endless is disabled because user has set limits
-        NO_MORE_LOAD, //Non-empty Payload = Payload.NO_MORE_LOAD
-        ON_CANCEL,
-        ON_ERROR
-    }
-
 }

+ 6 - 10
app/src/main/java/com/nextcloud/talk/adapters/items/UserItem.java

@@ -25,7 +25,8 @@ import android.text.TextUtils;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
-
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.bumptech.glide.load.engine.DiskCacheStrategy;
 import com.bumptech.glide.load.model.GlideUrl;
 import com.bumptech.glide.load.model.LazyHeaders;
@@ -39,15 +40,6 @@ import com.nextcloud.talk.models.json.participants.Participant;
 import com.nextcloud.talk.utils.ApiUtils;
 import com.nextcloud.talk.utils.DisplayUtils;
 import com.nextcloud.talk.utils.glide.GlideApp;
-
-import org.apache.commons.lang3.StringUtils;
-
-import java.util.List;
-
-import javax.annotation.Nullable;
-
-import butterknife.BindView;
-import butterknife.ButterKnife;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import eu.davidea.flexibleadapter.items.IFilterable;
@@ -55,6 +47,10 @@ import eu.davidea.flexibleadapter.items.ISectionable;
 import eu.davidea.flexibleadapter.utils.FlexibleUtils;
 import eu.davidea.flipview.FlipView;
 import eu.davidea.viewholders.FlexibleViewHolder;
+import org.apache.commons.lang3.StringUtils;
+
+import javax.annotation.Nullable;
+import java.util.List;
 
 public class UserItem extends AbstractFlexibleItem<UserItem.UserItemViewHolder> implements
         ISectionable<UserItem.UserItemViewHolder, GenericTextHeaderItem>, IFilterable<String> {

+ 5 - 8
app/src/main/java/com/nextcloud/talk/adapters/messages/MagicIncomingTextMessageViewHolder.java

@@ -30,7 +30,10 @@ import android.text.SpannableString;
 import android.text.TextUtils;
 import android.view.View;
 import android.widget.TextView;
-
+import androidx.core.view.ViewCompat;
+import autodagger.AutoInjector;
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.amulyakhare.textdrawable.TextDrawable;
 import com.facebook.drawee.view.SimpleDraweeView;
 import com.google.android.flexbox.FlexboxLayout;
@@ -43,16 +46,10 @@ import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.stfalcon.chatkit.messages.MessageHolders;
 import com.vanniktech.emoji.EmojiTextView;
 
+import javax.inject.Inject;
 import java.util.HashMap;
 import java.util.Map;
 
-import javax.inject.Inject;
-
-import androidx.core.view.ViewCompat;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import butterknife.ButterKnife;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class MagicIncomingTextMessageViewHolder
         extends MessageHolders.IncomingTextMessageViewHolder<ChatMessage> {

+ 5 - 8
app/src/main/java/com/nextcloud/talk/adapters/messages/MagicOutcomingTextMessageViewHolder.java

@@ -29,7 +29,10 @@ import android.text.Spannable;
 import android.text.SpannableString;
 import android.view.View;
 import android.widget.TextView;
-
+import androidx.core.view.ViewCompat;
+import autodagger.AutoInjector;
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.google.android.flexbox.FlexboxLayout;
 import com.nextcloud.talk.R;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
@@ -40,16 +43,10 @@ import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.stfalcon.chatkit.messages.MessageHolders;
 import com.vanniktech.emoji.EmojiTextView;
 
+import javax.inject.Inject;
 import java.util.HashMap;
 import java.util.Map;
 
-import javax.inject.Inject;
-
-import androidx.core.view.ViewCompat;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import butterknife.ButterKnife;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class MagicOutcomingTextMessageViewHolder extends MessageHolders.OutcomingTextMessageViewHolder<ChatMessage> {
     @BindView(R.id.messageText)

+ 3 - 5
app/src/main/java/com/nextcloud/talk/adapters/messages/MagicPreviewMessageViewHolder.java

@@ -24,7 +24,8 @@ import android.annotation.SuppressLint;
 import android.content.Intent;
 import android.net.Uri;
 import android.view.View;
-
+import butterknife.BindView;
+import butterknife.ButterKnife;
 import com.nextcloud.talk.R;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
 import com.nextcloud.talk.models.json.chat.ChatMessage;
@@ -32,9 +33,6 @@ import com.nextcloud.talk.utils.DisplayUtils;
 import com.stfalcon.chatkit.messages.MessageHolders;
 import com.vanniktech.emoji.EmojiTextView;
 
-import butterknife.BindView;
-import butterknife.ButterKnife;
-
 public class MagicPreviewMessageViewHolder extends MessageHolders.IncomingImageMessageViewHolder<ChatMessage> {
 
     @BindView(R.id.messageText)
@@ -67,7 +65,7 @@ public class MagicPreviewMessageViewHolder extends MessageHolders.IncomingImageM
                 browserIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                 NextcloudTalkApplication.getSharedApplication().getApplicationContext().startActivity(browserIntent);
             });
-        } else if (message.getMessageType() == ChatMessage.MessageType.SINGLE_LINK_GIPHY_MESSAGE){
+        } else if (message.getMessageType() == ChatMessage.MessageType.SINGLE_LINK_GIPHY_MESSAGE) {
             messageText.setText("GIPHY");
             DisplayUtils.setClickableString("GIPHY", "https://giphy.com", messageText);
         } else if (message.getMessageType() == ChatMessage.MessageType.SINGLE_LINK_TENOR_MESSAGE) {

+ 1 - 3
app/src/main/java/com/nextcloud/talk/adapters/messages/MagicSystemMessageViewHolder.java

@@ -26,7 +26,7 @@ import android.graphics.drawable.Drawable;
 import android.text.Spannable;
 import android.text.SpannableString;
 import android.view.View;
-
+import androidx.core.view.ViewCompat;
 import com.nextcloud.talk.R;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
 import com.nextcloud.talk.models.json.chat.ChatMessage;
@@ -35,8 +35,6 @@ import com.stfalcon.chatkit.messages.MessageHolders;
 
 import java.util.Map;
 
-import androidx.core.view.ViewCompat;
-
 public class MagicSystemMessageViewHolder extends MessageHolders.IncomingTextMessageViewHolder<ChatMessage> {
 
     public MagicSystemMessageViewHolder(View itemView) {

+ 5 - 16
app/src/main/java/com/nextcloud/talk/api/NcApi.java

@@ -20,6 +20,7 @@
  */
 package com.nextcloud.talk.api;
 
+import androidx.annotation.Nullable;
 import com.nextcloud.talk.models.json.call.CallOverall;
 import com.nextcloud.talk.models.json.capabilities.CapabilitiesOverall;
 import com.nextcloud.talk.models.json.chat.ChatOverall;
@@ -35,25 +36,13 @@ import com.nextcloud.talk.models.json.rooms.RoomsOverall;
 import com.nextcloud.talk.models.json.signaling.SignalingOverall;
 import com.nextcloud.talk.models.json.signaling.settings.SignalingSettingsOverall;
 import com.nextcloud.talk.models.json.userprofile.UserProfileOverall;
-
-import java.util.List;
-import java.util.Map;
-
-import androidx.annotation.Nullable;
 import io.reactivex.Observable;
 import okhttp3.ResponseBody;
 import retrofit2.Response;
-import retrofit2.http.DELETE;
-import retrofit2.http.Field;
-import retrofit2.http.FieldMap;
-import retrofit2.http.FormUrlEncoded;
-import retrofit2.http.GET;
-import retrofit2.http.Header;
-import retrofit2.http.POST;
-import retrofit2.http.PUT;
-import retrofit2.http.Query;
-import retrofit2.http.QueryMap;
-import retrofit2.http.Url;
+import retrofit2.http.*;
+
+import java.util.List;
+import java.util.Map;
 
 public interface NcApi {
 

+ 12 - 18
app/src/main/java/com/nextcloud/talk/application/NextcloudTalkApplication.java

@@ -23,7 +23,14 @@ package com.nextcloud.talk.application;
 import android.content.Context;
 import android.os.Build;
 import android.util.Log;
-
+import androidx.lifecycle.LifecycleObserver;
+import androidx.multidex.MultiDex;
+import androidx.multidex.MultiDexApplication;
+import androidx.work.OneTimeWorkRequest;
+import androidx.work.PeriodicWorkRequest;
+import androidx.work.WorkManager;
+import autodagger.AutoComponent;
+import autodagger.AutoInjector;
 import com.facebook.cache.disk.DiskCacheConfig;
 import com.facebook.drawee.backends.pipeline.Fresco;
 import com.facebook.imagepipeline.core.ImagePipelineConfig;
@@ -44,25 +51,14 @@ import com.nextcloud.talk.utils.database.user.UserModule;
 import com.nextcloud.talk.webrtc.MagicWebRTCUtils;
 import com.vanniktech.emoji.EmojiManager;
 import com.vanniktech.emoji.twitter.TwitterEmojiProvider;
-
+import okhttp3.OkHttpClient;
 import org.webrtc.PeerConnectionFactory;
 import org.webrtc.voiceengine.WebRtcAudioManager;
 import org.webrtc.voiceengine.WebRtcAudioUtils;
 
-import java.util.concurrent.TimeUnit;
-
 import javax.inject.Inject;
 import javax.inject.Singleton;
-
-import androidx.lifecycle.LifecycleObserver;
-import androidx.multidex.MultiDex;
-import androidx.multidex.MultiDexApplication;
-import androidx.work.OneTimeWorkRequest;
-import androidx.work.PeriodicWorkRequest;
-import androidx.work.WorkManager;
-import autodagger.AutoComponent;
-import autodagger.AutoInjector;
-import okhttp3.OkHttpClient;
+import java.util.concurrent.TimeUnit;
 
 @AutoComponent(
         modules = {
@@ -78,15 +74,13 @@ import okhttp3.OkHttpClient;
 @Singleton
 @AutoInjector(NextcloudTalkApplication.class)
 public class NextcloudTalkApplication extends MultiDexApplication implements LifecycleObserver {
-    @Inject
-    OkHttpClient okHttpClient;
-
     private static final String TAG = NextcloudTalkApplication.class.getSimpleName();
-
     //region Singleton
     protected static NextcloudTalkApplication sharedApplication;
     //region Fields (components)
     protected NextcloudTalkApplicationComponent componentApplication;
+    @Inject
+    OkHttpClient okHttpClient;
     //endregion
 
     public static NextcloudTalkApplication getSharedApplication() {

+ 11 - 15
app/src/main/java/com/nextcloud/talk/controllers/AccountVerificationController.java

@@ -28,7 +28,12 @@ import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.TextView;
-
+import androidx.annotation.NonNull;
+import androidx.work.Data;
+import androidx.work.OneTimeWorkRequest;
+import androidx.work.WorkManager;
+import autodagger.AutoInjector;
+import butterknife.BindView;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.nextcloud.talk.R;
@@ -49,29 +54,20 @@ import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.nextcloud.talk.utils.preferences.AppPreferences;
 import com.nextcloud.talk.utils.singletons.ApplicationWideMessageHolder;
-
+import io.reactivex.CompletableObserver;
+import io.reactivex.Observer;
 import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.disposables.Disposable;
+import io.reactivex.schedulers.Schedulers;
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
 import org.greenrobot.eventbus.ThreadMode;
 
+import javax.inject.Inject;
 import java.net.CookieManager;
 import java.util.ArrayList;
 import java.util.List;
 
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.work.Data;
-import androidx.work.OneTimeWorkRequest;
-import androidx.work.WorkManager;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import io.reactivex.CompletableObserver;
-import io.reactivex.Observer;
-import io.reactivex.disposables.Disposable;
-import io.reactivex.schedulers.Schedulers;
-
 
 @AutoInjector(NextcloudTalkApplication.class)
 public class AccountVerificationController extends BaseController {

+ 21 - 62
app/src/main/java/com/nextcloud/talk/controllers/CallController.java

@@ -39,7 +39,13 @@ import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
-
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.appcompat.app.AppCompatActivity;
+import autodagger.AutoInjector;
+import butterknife.BindView;
+import butterknife.OnClick;
+import butterknife.OnLongClick;
 import com.bluelinelabs.logansquare.LoganSquare;
 import com.bumptech.glide.load.engine.DiskCacheStrategy;
 import com.bumptech.glide.load.resource.bitmap.CircleCrop;
@@ -48,11 +54,7 @@ import com.nextcloud.talk.R;
 import com.nextcloud.talk.api.NcApi;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
 import com.nextcloud.talk.controllers.base.BaseController;
-import com.nextcloud.talk.events.ConfigurationChangeEvent;
-import com.nextcloud.talk.events.MediaStreamEvent;
-import com.nextcloud.talk.events.PeerConnectionEvent;
-import com.nextcloud.talk.events.SessionDescriptionSendEvent;
-import com.nextcloud.talk.events.WebSocketCommunicationEvent;
+import com.nextcloud.talk.events.*;
 import com.nextcloud.talk.models.ExternalSignalingServer;
 import com.nextcloud.talk.models.database.UserEntity;
 import com.nextcloud.talk.models.json.call.CallOverall;
@@ -62,13 +64,7 @@ import com.nextcloud.talk.models.json.participants.Participant;
 import com.nextcloud.talk.models.json.participants.ParticipantsOverall;
 import com.nextcloud.talk.models.json.rooms.Conversation;
 import com.nextcloud.talk.models.json.rooms.RoomsOverall;
-import com.nextcloud.talk.models.json.signaling.DataChannelMessage;
-import com.nextcloud.talk.models.json.signaling.NCIceCandidate;
-import com.nextcloud.talk.models.json.signaling.NCMessagePayload;
-import com.nextcloud.talk.models.json.signaling.NCMessageWrapper;
-import com.nextcloud.talk.models.json.signaling.NCSignalingMessage;
-import com.nextcloud.talk.models.json.signaling.Signaling;
-import com.nextcloud.talk.models.json.signaling.SignalingOverall;
+import com.nextcloud.talk.models.json.signaling.*;
 import com.nextcloud.talk.models.json.signaling.settings.IceServer;
 import com.nextcloud.talk.models.json.signaling.settings.SignalingSettingsOverall;
 import com.nextcloud.talk.utils.ApiUtils;
@@ -80,56 +76,8 @@ import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.nextcloud.talk.utils.glide.GlideApp;
 import com.nextcloud.talk.utils.preferences.AppPreferences;
 import com.nextcloud.talk.utils.singletons.ApplicationWideCurrentRoomHolder;
-import com.nextcloud.talk.webrtc.MagicAudioManager;
-import com.nextcloud.talk.webrtc.MagicPeerConnectionWrapper;
-import com.nextcloud.talk.webrtc.MagicWebRTCUtils;
-import com.nextcloud.talk.webrtc.MagicWebSocketInstance;
-import com.nextcloud.talk.webrtc.WebSocketConnectionHelper;
+import com.nextcloud.talk.webrtc.*;
 import com.wooplr.spotlight.SpotlightView;
-
-import org.apache.commons.lang3.StringEscapeUtils;
-import org.greenrobot.eventbus.EventBus;
-import org.greenrobot.eventbus.Subscribe;
-import org.greenrobot.eventbus.ThreadMode;
-import org.parceler.Parcels;
-import org.webrtc.AudioSource;
-import org.webrtc.AudioTrack;
-import org.webrtc.Camera1Enumerator;
-import org.webrtc.Camera2Enumerator;
-import org.webrtc.CameraEnumerator;
-import org.webrtc.CameraVideoCapturer;
-import org.webrtc.EglBase;
-import org.webrtc.IceCandidate;
-import org.webrtc.Logging;
-import org.webrtc.MediaConstraints;
-import org.webrtc.MediaStream;
-import org.webrtc.PeerConnection;
-import org.webrtc.PeerConnectionFactory;
-import org.webrtc.RendererCommon;
-import org.webrtc.SessionDescription;
-import org.webrtc.SurfaceViewRenderer;
-import org.webrtc.VideoCapturer;
-import org.webrtc.VideoSource;
-import org.webrtc.VideoTrack;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.concurrent.TimeUnit;
-
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.appcompat.app.AppCompatActivity;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import butterknife.OnClick;
-import butterknife.OnLongClick;
 import eu.davidea.flipview.FlipView;
 import io.reactivex.Observable;
 import io.reactivex.Observer;
@@ -140,8 +88,19 @@ import me.zhanghai.android.effortlesspermissions.AfterPermissionDenied;
 import me.zhanghai.android.effortlesspermissions.EffortlessPermissions;
 import me.zhanghai.android.effortlesspermissions.OpenAppDetailsDialogFragment;
 import okhttp3.Cache;
+import org.apache.commons.lang3.StringEscapeUtils;
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
+import org.parceler.Parcels;
+import org.webrtc.*;
 import pub.devrel.easypermissions.AfterPermissionGranted;
 
+import javax.inject.Inject;
+import java.io.IOException;
+import java.util.*;
+import java.util.concurrent.TimeUnit;
+
 @AutoInjector(NextcloudTalkApplication.class)
 public class CallController extends BaseController {
 

+ 12 - 20
app/src/main/java/com/nextcloud/talk/controllers/CallNotificationController.java

@@ -29,11 +29,7 @@ import android.graphics.drawable.ColorDrawable;
 import android.media.AudioAttributes;
 import android.media.MediaPlayer;
 import android.net.Uri;
-import android.os.Build;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.VibrationEffect;
-import android.os.Vibrator;
+import android.os.*;
 import android.renderscript.Allocation;
 import android.renderscript.Element;
 import android.renderscript.RenderScript;
@@ -46,7 +42,11 @@ import android.view.ViewGroup;
 import android.widget.ImageView;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
-
+import androidx.annotation.NonNull;
+import androidx.constraintlayout.widget.ConstraintLayout;
+import autodagger.AutoInjector;
+import butterknife.BindView;
+import butterknife.OnClick;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.bluelinelabs.logansquare.LoganSquare;
@@ -76,30 +76,22 @@ import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.glide.GlideApp;
 import com.nextcloud.talk.utils.preferences.AppPreferences;
 import com.nextcloud.talk.utils.singletons.AvatarStatusCodeHolder;
-
+import io.reactivex.Observer;
+import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.disposables.Disposable;
+import io.reactivex.schedulers.Schedulers;
+import okhttp3.Cache;
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
 import org.greenrobot.eventbus.ThreadMode;
 import org.michaelevans.colorart.library.ColorArt;
 import org.parceler.Parcels;
 
+import javax.inject.Inject;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.constraintlayout.widget.ConstraintLayout;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import butterknife.OnClick;
-import io.reactivex.Observer;
-import io.reactivex.android.schedulers.AndroidSchedulers;
-import io.reactivex.disposables.Disposable;
-import io.reactivex.schedulers.Schedulers;
-import okhttp3.Cache;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class CallNotificationController extends BaseController {
 

+ 3 - 6
app/src/main/java/com/nextcloud/talk/controllers/ChatController.java

@@ -110,6 +110,7 @@ import java.util.concurrent.TimeUnit;
 public class ChatController extends BaseController implements MessagesListAdapter.OnLoadMoreListener,
         MessagesListAdapter.Formatter<Date>, MessagesListAdapter.OnMessageLongClickListener, MessageHolders.ContentChecker {
     private static final String TAG = "ChatController";
+    private static final byte CONTENT_TYPE_SYSTEM_MESSAGE = 1;
     @Inject
     NcApi ncApi;
     @Inject
@@ -154,11 +155,7 @@ public class ChatController extends BaseController implements MessagesListAdapte
     private boolean isFirstMessagesProcessing = true;
     private boolean isHelloClicked;
     private boolean isLeavingForConversation;
-
     private boolean isLinkPreviewAllowed;
-
-    private static final byte CONTENT_TYPE_SYSTEM_MESSAGE = 1;
-
     private boolean wasDetached;
     private EmojiPopup emojiPopup;
 
@@ -627,7 +624,7 @@ public class ChatController extends BaseController implements MessagesListAdapte
     private void leaveRoom() {
         ncApi.leaveRoom(credentials,
                 ApiUtils.getUrlForSettingMyselfAsActiveParticipant(conversationUser.getBaseUrl(),
-                roomToken))
+                        roomToken))
                 .subscribeOn(Schedulers.newThread())
                 .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new Observer<GenericOverall>() {
@@ -672,7 +669,7 @@ public class ChatController extends BaseController implements MessagesListAdapte
 
         ncApi.sendChatMessage(credentials, ApiUtils.getUrlForChat(conversationUser.getBaseUrl(), roomToken),
                 message, conversationUser
-                .getDisplayName())
+                        .getDisplayName())
                 .subscribeOn(Schedulers.newThread())
                 .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new Observer<GenericOverall>() {

+ 19 - 34
app/src/main/java/com/nextcloud/talk/controllers/ContactsController.java

@@ -29,16 +29,21 @@ import android.os.Handler;
 import android.text.InputType;
 import android.text.TextUtils;
 import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.Menu;
-import android.view.MenuInflater;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ViewGroup;
+import android.view.*;
 import android.view.inputmethod.EditorInfo;
 import android.widget.ProgressBar;
 import android.widget.RelativeLayout;
-
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.appcompat.widget.SearchView;
+import androidx.coordinatorlayout.widget.CoordinatorLayout;
+import androidx.core.view.MenuItemCompat;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
+import autodagger.AutoInjector;
+import butterknife.BindView;
+import butterknife.OnClick;
+import butterknife.Optional;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.bluelinelabs.conductor.changehandler.VerticalChangeHandler;
@@ -68,34 +73,7 @@ import com.nextcloud.talk.utils.ApiUtils;
 import com.nextcloud.talk.utils.KeyboardUtils;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
-
 import com.nextcloud.talk.utils.preferences.AppPreferences;
-import org.greenrobot.eventbus.EventBus;
-import org.greenrobot.eventbus.Subscribe;
-import org.greenrobot.eventbus.ThreadMode;
-import org.parceler.Parcels;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.appcompat.widget.SearchView;
-import androidx.coordinatorlayout.widget.CoordinatorLayout;
-import androidx.core.view.MenuItemCompat;
-import androidx.recyclerview.widget.RecyclerView;
-import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import butterknife.OnClick;
-import butterknife.Optional;
 import eu.davidea.fastscroller.FastScroller;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.SelectableAdapter;
@@ -108,8 +86,15 @@ import io.reactivex.android.schedulers.AndroidSchedulers;
 import io.reactivex.disposables.Disposable;
 import io.reactivex.schedulers.Schedulers;
 import okhttp3.ResponseBody;
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
+import org.parceler.Parcels;
 import retrofit2.HttpException;
 
+import javax.inject.Inject;
+import java.util.*;
+
 @AutoInjector(NextcloudTalkApplication.class)
 public class ContactsController extends BaseController implements SearchView.OnQueryTextListener,
         FlexibleAdapter.OnItemClickListener, FastScroller.OnScrollStateChangeListener, FlexibleAdapter.EndlessScrollListener {

+ 13 - 27
app/src/main/java/com/nextcloud/talk/controllers/ConversationInfoController.java

@@ -28,7 +28,10 @@ import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
 import android.widget.ProgressBar;
-
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
+import autodagger.AutoInjector;
+import butterknife.BindView;
 import com.facebook.drawee.backends.pipeline.Fresco;
 import com.facebook.drawee.interfaces.DraweeController;
 import com.facebook.drawee.view.SimpleDraweeView;
@@ -51,18 +54,6 @@ import com.vanniktech.emoji.EmojiTextView;
 import com.yarolegovich.mp.MaterialChoicePreference;
 import com.yarolegovich.mp.MaterialPreferenceCategory;
 import com.yarolegovich.mp.MaterialPreferenceScreen;
-
-import org.parceler.Parcels;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.recyclerview.widget.RecyclerView;
-import autodagger.AutoInjector;
-import butterknife.BindView;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.common.SmoothScrollLinearLayoutManager;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
@@ -70,43 +61,38 @@ import io.reactivex.Observer;
 import io.reactivex.android.schedulers.AndroidSchedulers;
 import io.reactivex.disposables.Disposable;
 import io.reactivex.schedulers.Schedulers;
+import org.parceler.Parcels;
+
+import javax.inject.Inject;
+import java.util.ArrayList;
+import java.util.List;
 
 
 @AutoInjector(NextcloudTalkApplication.class)
 public class ConversationInfoController extends BaseController {
 
-    private String baseUrl;
-    private String conversationToken;
-    private UserEntity conversationUser;
-    private String credentials;
-
     @BindView(R.id.notification_settings)
     MaterialPreferenceScreen materialPreferenceScreen;
-
     @BindView(R.id.progressBar)
     ProgressBar progressBar;
-
     @BindView(R.id.conversation_info_message_notifications)
     MaterialChoicePreference messageNotificationLevel;
-
     @BindView(R.id.conversation_info_name)
     MaterialPreferenceCategory nameCategoryView;
-
     @BindView(R.id.avatar_image)
     SimpleDraweeView conversationAvatarImageView;
-
     @BindView(R.id.display_name_text)
     EmojiTextView conversationDisplayName;
-
     @BindView(R.id.participants_list_category)
     MaterialPreferenceCategory participantsListCategory;
-
     @BindView(R.id.recycler_view)
     RecyclerView recyclerView;
-
     @Inject
     NcApi ncApi;
-
+    private String baseUrl;
+    private String conversationToken;
+    private UserEntity conversationUser;
+    private String credentials;
     private Disposable roomDisposable;
     private Disposable participantsDisposable;
 

+ 19 - 28
app/src/main/java/com/nextcloud/talk/controllers/ConversationsListController.java

@@ -30,16 +30,19 @@ import android.os.Bundle;
 import android.os.Handler;
 import android.text.InputType;
 import android.text.TextUtils;
-import android.view.LayoutInflater;
-import android.view.Menu;
-import android.view.MenuInflater;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ViewGroup;
+import android.view.*;
 import android.view.inputmethod.EditorInfo;
 import android.widget.ProgressBar;
 import android.widget.RelativeLayout;
-
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.appcompat.widget.SearchView;
+import androidx.core.view.MenuItemCompat;
+import androidx.recyclerview.widget.DividerItemDecoration;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
+import autodagger.AutoInjector;
+import butterknife.BindView;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.bluelinelabs.conductor.changehandler.TransitionChangeHandlerCompat;
@@ -74,38 +77,26 @@ import com.nextcloud.talk.utils.animations.SharedElementTransition;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.nextcloud.talk.utils.glide.GlideApp;
-
 import com.nextcloud.talk.utils.preferences.AppPreferences;
+import eu.davidea.fastscroller.FastScroller;
+import eu.davidea.flexibleadapter.FlexibleAdapter;
+import eu.davidea.flexibleadapter.common.SmoothScrollLinearLayoutManager;
+import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
+import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.disposables.Disposable;
+import io.reactivex.schedulers.Schedulers;
 import org.apache.commons.lang3.builder.CompareToBuilder;
 import org.greenrobot.eventbus.EventBus;
 import org.greenrobot.eventbus.Subscribe;
 import org.greenrobot.eventbus.ThreadMode;
 import org.parceler.Parcels;
+import retrofit2.HttpException;
 
+import javax.inject.Inject;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.appcompat.widget.SearchView;
-import androidx.core.view.MenuItemCompat;
-import androidx.recyclerview.widget.DividerItemDecoration;
-import androidx.recyclerview.widget.RecyclerView;
-import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import eu.davidea.fastscroller.FastScroller;
-import eu.davidea.flexibleadapter.FlexibleAdapter;
-import eu.davidea.flexibleadapter.common.SmoothScrollLinearLayoutManager;
-import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
-import io.reactivex.android.schedulers.AndroidSchedulers;
-import io.reactivex.disposables.Disposable;
-import io.reactivex.schedulers.Schedulers;
-import retrofit2.HttpException;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class ConversationsListController extends BaseController implements SearchView.OnQueryTextListener,
         FlexibleAdapter.OnItemClickListener, FlexibleAdapter.OnItemLongClickListener, FastScroller

+ 10 - 13
app/src/main/java/com/nextcloud/talk/controllers/RingtoneSelectionController.java

@@ -33,7 +33,11 @@ import android.view.LayoutInflater;
 import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
-
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
+import autodagger.AutoInjector;
+import butterknife.BindView;
 import com.bluelinelabs.logansquare.LoganSquare;
 import com.nextcloud.talk.R;
 import com.nextcloud.talk.adapters.items.NotificationSoundItem;
@@ -42,23 +46,16 @@ import com.nextcloud.talk.controllers.base.BaseController;
 import com.nextcloud.talk.models.RingtoneSettings;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.preferences.AppPreferences;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.recyclerview.widget.RecyclerView;
-import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
-import autodagger.AutoInjector;
-import butterknife.BindView;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.SelectableAdapter;
 import eu.davidea.flexibleadapter.common.SmoothScrollLinearLayoutManager;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 
+import javax.inject.Inject;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
 @AutoInjector(NextcloudTalkApplication.class)
 public class RingtoneSelectionController extends BaseController implements FlexibleAdapter.OnItemClickListener {
 

+ 7 - 10
app/src/main/java/com/nextcloud/talk/controllers/ServerSelectionController.java

@@ -35,7 +35,10 @@ import android.view.ViewGroup;
 import android.view.inputmethod.EditorInfo;
 import android.widget.ProgressBar;
 import android.widget.TextView;
-
+import androidx.annotation.NonNull;
+import autodagger.AutoInjector;
+import butterknife.BindView;
+import butterknife.OnClick;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.nextcloud.talk.R;
@@ -48,21 +51,15 @@ import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.nextcloud.talk.utils.preferences.AppPreferences;
 import com.nextcloud.talk.utils.singletons.ApplicationWideMessageHolder;
-
-import java.security.cert.CertificateException;
-
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import butterknife.OnClick;
 import io.reactivex.android.schedulers.AndroidSchedulers;
 import io.reactivex.disposables.Disposable;
 import io.reactivex.schedulers.Schedulers;
 import studio.carbonylgroup.textfieldboxes.ExtendedEditText;
 import studio.carbonylgroup.textfieldboxes.TextFieldBoxes;
 
+import javax.inject.Inject;
+import java.security.cert.CertificateException;
+
 @AutoInjector(NextcloudTalkApplication.class)
 public class ServerSelectionController extends BaseController {
 

+ 12 - 15
app/src/main/java/com/nextcloud/talk/controllers/SwitchAccountController.java

@@ -29,7 +29,13 @@ import android.view.LayoutInflater;
 import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
-
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.DividerItemDecoration;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
+import autodagger.AutoInjector;
+import butterknife.BindView;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.nextcloud.talk.R;
@@ -42,26 +48,17 @@ import com.nextcloud.talk.models.json.participants.Participant;
 import com.nextcloud.talk.utils.AccountUtils;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
-
-import java.net.CookieManager;
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.recyclerview.widget.DividerItemDecoration;
-import androidx.recyclerview.widget.LinearLayoutManager;
-import androidx.recyclerview.widget.RecyclerView;
-import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
-import autodagger.AutoInjector;
-import butterknife.BindView;
 import eu.davidea.flexibleadapter.FlexibleAdapter;
 import eu.davidea.flexibleadapter.common.SmoothScrollLinearLayoutManager;
 import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import io.reactivex.Observer;
 import io.reactivex.disposables.Disposable;
 
+import javax.inject.Inject;
+import java.net.CookieManager;
+import java.util.ArrayList;
+import java.util.List;
+
 @AutoInjector(NextcloudTalkApplication.class)
 public class SwitchAccountController extends BaseController {
 

+ 10 - 19
app/src/main/java/com/nextcloud/talk/controllers/WebViewLoginController.java

@@ -32,14 +32,11 @@ import android.text.TextUtils;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.webkit.ClientCertRequest;
-import android.webkit.CookieSyncManager;
-import android.webkit.SslErrorHandler;
-import android.webkit.WebSettings;
-import android.webkit.WebView;
-import android.webkit.WebViewClient;
+import android.webkit.*;
 import android.widget.ProgressBar;
-
+import androidx.annotation.NonNull;
+import autodagger.AutoInjector;
+import butterknife.BindView;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.nextcloud.talk.R;
@@ -53,9 +50,14 @@ import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.nextcloud.talk.utils.preferences.AppPreferences;
 import com.nextcloud.talk.utils.singletons.ApplicationWideMessageHolder;
 import com.nextcloud.talk.utils.ssl.MagicTrustManager;
-
+import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.disposables.Disposable;
+import io.reactivex.schedulers.Schedulers;
+import io.requery.Persistable;
+import io.requery.reactivex.ReactiveEntityStore;
 import org.greenrobot.eventbus.EventBus;
 
+import javax.inject.Inject;
 import java.lang.reflect.Field;
 import java.net.CookieManager;
 import java.net.URLDecoder;
@@ -66,17 +68,6 @@ import java.util.HashMap;
 import java.util.Locale;
 import java.util.Map;
 
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import io.reactivex.android.schedulers.AndroidSchedulers;
-import io.reactivex.disposables.Disposable;
-import io.reactivex.schedulers.Schedulers;
-import io.requery.Persistable;
-import io.requery.reactivex.ReactiveEntityStore;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class WebViewLoginController extends BaseController {
 

+ 5 - 8
app/src/main/java/com/nextcloud/talk/controllers/base/BaseController.java

@@ -24,12 +24,14 @@ import android.os.Bundle;
 import android.util.Log;
 import android.view.MenuItem;
 import android.view.View;
-
 import android.view.ViewGroup;
 import android.view.inputmethod.EditorInfo;
 import android.view.inputmethod.InputMethodManager;
 import android.widget.EditText;
+import androidx.annotation.NonNull;
 import androidx.annotation.RequiresApi;
+import androidx.appcompat.app.ActionBar;
+import autodagger.AutoInjector;
 import com.bluelinelabs.conductor.Controller;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
 import com.nextcloud.talk.controllers.AccountVerificationController;
@@ -39,15 +41,10 @@ import com.nextcloud.talk.controllers.WebViewLoginController;
 import com.nextcloud.talk.controllers.base.providers.ActionBarProvider;
 import com.nextcloud.talk.utils.preferences.AppPreferences;
 
+import javax.inject.Inject;
 import java.util.ArrayList;
 import java.util.List;
 
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.appcompat.app.ActionBar;
-import autodagger.AutoInjector;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public abstract class BaseController extends ButterKnifeController {
 
@@ -157,7 +154,7 @@ public abstract class BaseController extends ButterKnifeController {
         View view;
         EditText editText;
 
-        for(int i = 0; i < viewGroup.getChildCount(); i++) {
+        for (int i = 0; i < viewGroup.getChildCount(); i++) {
             view = viewGroup.getChildAt(i);
             if (view instanceof EditText) {
                 editText = (EditText) view;

+ 1 - 3
app/src/main/java/com/nextcloud/talk/controllers/base/ButterKnifeController.java

@@ -22,12 +22,10 @@ import android.os.Bundle;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-
-import com.bluelinelabs.conductor.Controller;
-
 import androidx.annotation.NonNull;
 import butterknife.ButterKnife;
 import butterknife.Unbinder;
+import com.bluelinelabs.conductor.Controller;
 
 public abstract class ButterKnifeController extends Controller {
 

+ 9 - 13
app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/CallMenuController.java

@@ -27,7 +27,11 @@ import android.text.TextUtils;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+import autodagger.AutoInjector;
+import butterknife.BindView;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.kennyc.bottomsheet.adapters.AppAdapter;
@@ -42,25 +46,17 @@ import com.nextcloud.talk.models.json.rooms.Conversation;
 import com.nextcloud.talk.utils.ShareUtils;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
-
+import eu.davidea.flexibleadapter.FlexibleAdapter;
+import eu.davidea.flexibleadapter.common.SmoothScrollLinearLayoutManager;
+import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
 import org.greenrobot.eventbus.EventBus;
 import org.parceler.Parcel;
 import org.parceler.Parcels;
 
+import javax.inject.Inject;
 import java.util.ArrayList;
 import java.util.List;
 
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.recyclerview.widget.LinearLayoutManager;
-import androidx.recyclerview.widget.RecyclerView;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import eu.davidea.flexibleadapter.FlexibleAdapter;
-import eu.davidea.flexibleadapter.common.SmoothScrollLinearLayoutManager;
-import eu.davidea.flexibleadapter.items.AbstractFlexibleItem;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class CallMenuController extends BaseController implements FlexibleAdapter.OnItemClickListener {
     @BindView(R.id.recycler_view)

+ 8 - 10
app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/EntryMenuController.java

@@ -32,7 +32,10 @@ import android.view.View;
 import android.view.ViewGroup;
 import android.view.inputmethod.EditorInfo;
 import android.widget.Button;
-
+import androidx.annotation.NonNull;
+import autodagger.AutoInjector;
+import butterknife.BindView;
+import butterknife.OnClick;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.nextcloud.talk.R;
@@ -44,19 +47,13 @@ import com.nextcloud.talk.utils.ShareUtils;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.nextcloud.talk.utils.singletons.ApplicationWideMessageHolder;
-
 import org.greenrobot.eventbus.EventBus;
 import org.parceler.Parcels;
-
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import autodagger.AutoInjector;
-import butterknife.BindView;
-import butterknife.OnClick;
 import studio.carbonylgroup.textfieldboxes.ExtendedEditText;
 import studio.carbonylgroup.textfieldboxes.TextFieldBoxes;
 
+import javax.inject.Inject;
+
 @AutoInjector(NextcloudTalkApplication.class)
 public class EntryMenuController extends BaseController {
 
@@ -131,7 +128,8 @@ public class EntryMenuController extends BaseController {
             bundle.putString(BundleKeys.KEY_CALL_URL, callUrl);
             bundle.putString(BundleKeys.KEY_CONVERSATION_PASSWORD, editText.getText().toString());
             bundle.putInt(BundleKeys.KEY_OPERATION_CODE, operationCode);
-            if (originalBundle.containsKey(BundleKeys.KEY_SERVER_CAPABILITIES)) { bundle.putParcelable(BundleKeys.KEY_SERVER_CAPABILITIES, originalBundle.getParcelable(BundleKeys.KEY_SERVER_CAPABILITIES));
+            if (originalBundle.containsKey(BundleKeys.KEY_SERVER_CAPABILITIES)) {
+                bundle.putParcelable(BundleKeys.KEY_SERVER_CAPABILITIES, originalBundle.getParcelable(BundleKeys.KEY_SERVER_CAPABILITIES));
             }
 
             getRouter().pushController(RouterTransaction.with(new OperationsMenuController(bundle))

+ 11 - 15
app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/OperationsMenuController.java

@@ -35,7 +35,10 @@ import android.widget.Button;
 import android.widget.ImageView;
 import android.widget.ProgressBar;
 import android.widget.TextView;
-
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import autodagger.AutoInjector;
+import butterknife.BindView;
 import com.bluelinelabs.conductor.RouterTransaction;
 import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler;
 import com.bluelinelabs.logansquare.LoganSquare;
@@ -61,25 +64,18 @@ import com.nextcloud.talk.utils.DisplayUtils;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.nextcloud.talk.utils.singletons.ApplicationWideMessageHolder;
-
-import org.greenrobot.eventbus.EventBus;
-import org.parceler.Parcels;
-
-import java.io.IOException;
-import java.util.ArrayList;
-
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import autodagger.AutoInjector;
-import butterknife.BindView;
 import io.reactivex.Observer;
 import io.reactivex.android.schedulers.AndroidSchedulers;
 import io.reactivex.disposables.Disposable;
 import io.reactivex.schedulers.Schedulers;
+import org.greenrobot.eventbus.EventBus;
+import org.parceler.Parcels;
 import retrofit2.HttpException;
 
+import javax.inject.Inject;
+import java.io.IOException;
+import java.util.ArrayList;
+
 @AutoInjector(NextcloudTalkApplication.class)
 public class OperationsMenuController extends BaseController {
 
@@ -614,7 +610,7 @@ public class OperationsMenuController extends BaseController {
 
         if (baseUrl != null && !baseUrl.equals(currentUser.getBaseUrl())) {
             isGuestUser = true;
-            hasChatCapability = capabilities != null && capabilities.getSpreedCapability() != null && capabilities.getSpreedCapability().getFeatures() != null &&  capabilities.getSpreedCapability().getFeatures().contains("chat-v2");
+            hasChatCapability = capabilities != null && capabilities.getSpreedCapability() != null && capabilities.getSpreedCapability().getFeatures() != null && capabilities.getSpreedCapability().getFeatures().contains("chat-v2");
         } else {
             hasChatCapability = currentUser.hasSpreedCapabilityWithName("chat-v2");
         }

+ 2 - 3
app/src/main/java/com/nextcloud/talk/dagger/modules/BusModule.java

@@ -20,13 +20,12 @@
  */
 package com.nextcloud.talk.dagger.modules;
 
+import dagger.Module;
+import dagger.Provides;
 import org.greenrobot.eventbus.EventBus;
 
 import javax.inject.Singleton;
 
-import dagger.Module;
-import dagger.Provides;
-
 @Module
 public class BusModule {
 

+ 0 - 1
app/src/main/java/com/nextcloud/talk/dagger/modules/ContextModule.java

@@ -21,7 +21,6 @@
 package com.nextcloud.talk.dagger.modules;
 
 import android.content.Context;
-
 import androidx.annotation.NonNull;
 import dagger.Module;
 import dagger.Provides;

+ 4 - 7
app/src/main/java/com/nextcloud/talk/dagger/modules/DatabaseModule.java

@@ -21,16 +21,10 @@
 package com.nextcloud.talk.dagger.modules;
 
 import android.content.Context;
-
+import androidx.annotation.NonNull;
 import com.nextcloud.talk.R;
 import com.nextcloud.talk.models.database.Models;
 import com.nextcloud.talk.utils.preferences.AppPreferences;
-
-import net.orange_box.storebox.StoreBox;
-
-import javax.inject.Singleton;
-
-import androidx.annotation.NonNull;
 import dagger.Module;
 import dagger.Provides;
 import io.requery.Persistable;
@@ -39,6 +33,9 @@ import io.requery.reactivex.ReactiveEntityStore;
 import io.requery.reactivex.ReactiveSupport;
 import io.requery.sql.Configuration;
 import io.requery.sql.EntityDataStore;
+import net.orange_box.storebox.StoreBox;
+
+import javax.inject.Singleton;
 
 @Module
 public class DatabaseModule {

+ 36 - 48
app/src/main/java/com/nextcloud/talk/dagger/modules/RestModule.java

@@ -22,7 +22,8 @@ package com.nextcloud.talk.dagger.modules;
 
 import android.text.TextUtils;
 import android.util.Log;
-
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
 import com.github.aurae.retrofit2.LoganSquareConverterFactory;
 import com.nextcloud.talk.BuildConfig;
 import com.nextcloud.talk.api.NcApi;
@@ -34,7 +35,18 @@ import com.nextcloud.talk.utils.singletons.AvatarStatusCodeHolder;
 import com.nextcloud.talk.utils.ssl.MagicKeyManager;
 import com.nextcloud.talk.utils.ssl.MagicTrustManager;
 import com.nextcloud.talk.utils.ssl.SSLSocketFactoryCompat;
+import dagger.Module;
+import dagger.Provides;
+import io.reactivex.schedulers.Schedulers;
+import okhttp3.*;
+import okhttp3.internal.tls.OkHostnameVerifier;
+import okhttp3.logging.HttpLoggingInterceptor;
+import retrofit2.Retrofit;
+import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory;
 
+import javax.inject.Singleton;
+import javax.net.ssl.KeyManagerFactory;
+import javax.net.ssl.X509KeyManager;
 import java.io.IOException;
 import java.net.CookieManager;
 import java.net.InetSocketAddress;
@@ -46,30 +58,6 @@ import java.security.UnrecoverableKeyException;
 import java.security.cert.CertificateException;
 import java.util.concurrent.TimeUnit;
 
-import javax.inject.Singleton;
-import javax.net.ssl.KeyManagerFactory;
-import javax.net.ssl.X509KeyManager;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import dagger.Module;
-import dagger.Provides;
-import io.reactivex.schedulers.Schedulers;
-import okhttp3.Authenticator;
-import okhttp3.Cache;
-import okhttp3.Credentials;
-import okhttp3.Dispatcher;
-import okhttp3.Interceptor;
-import okhttp3.JavaNetCookieJar;
-import okhttp3.OkHttpClient;
-import okhttp3.Request;
-import okhttp3.Response;
-import okhttp3.Route;
-import okhttp3.internal.tls.OkHostnameVerifier;
-import okhttp3.logging.HttpLoggingInterceptor;
-import retrofit2.Retrofit;
-import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory;
-
 @Module(includes = DatabaseModule.class)
 public class RestModule {
 
@@ -220,6 +208,29 @@ public class RestModule {
         return httpClient.build();
     }
 
+    public static class HeadersInterceptor implements Interceptor {
+
+        @Override
+        public Response intercept(@NonNull Chain chain) throws IOException {
+            Request original = chain.request();
+
+            Request request = original.newBuilder()
+                    .header("User-Agent", ApiUtils.getUserAgent())
+                    .header("Accept", "application/json")
+                    .header("OCS-APIRequest", "true")
+                    .method(original.method(), original.body())
+                    .build();
+
+            Response response = chain.proceed(request);
+
+            if (request.url().encodedPath().contains("/avatar/")) {
+                AvatarStatusCodeHolder.getInstance().setStatusCode(response.code());
+            }
+
+            return response;
+        }
+    }
+
     private class ProxyAuthenticator implements Authenticator {
 
         private String credentials;
@@ -251,29 +262,6 @@ public class RestModule {
         }
     }
 
-    public static class HeadersInterceptor implements Interceptor {
-
-        @Override
-        public Response intercept(@NonNull Chain chain) throws IOException {
-            Request original = chain.request();
-
-            Request request = original.newBuilder()
-                    .header("User-Agent", ApiUtils.getUserAgent())
-                    .header("Accept", "application/json")
-                    .header("OCS-APIRequest", "true")
-                    .method(original.method(), original.body())
-                    .build();
-
-            Response response = chain.proceed(request);
-
-            if (request.url().encodedPath().contains("/avatar/")) {
-                AvatarStatusCodeHolder.getInstance().setStatusCode(response.code());
-            }
-
-            return response;
-        }
-    }
-
     private class GetProxyRunnable implements Runnable {
         private volatile Proxy proxy;
         private AppPreferences appPreferences;

+ 1 - 3
app/src/main/java/com/nextcloud/talk/events/CertificateEvent.java

@@ -21,13 +21,11 @@
 package com.nextcloud.talk.events;
 
 import android.webkit.SslErrorHandler;
-
+import androidx.annotation.Nullable;
 import com.nextcloud.talk.utils.ssl.MagicTrustManager;
 
 import java.security.cert.X509Certificate;
 
-import androidx.annotation.Nullable;
-
 public class CertificateEvent {
     private final X509Certificate x509Certificate;
     private final MagicTrustManager magicTrustManager;

+ 1 - 2
app/src/main/java/com/nextcloud/talk/events/MediaStreamEvent.java

@@ -20,10 +20,9 @@
 
 package com.nextcloud.talk.events;
 
-import org.webrtc.MediaStream;
-
 import androidx.annotation.Nullable;
 import lombok.Data;
+import org.webrtc.MediaStream;
 
 @Data
 public class MediaStreamEvent {

+ 0 - 1
app/src/main/java/com/nextcloud/talk/events/MoreMenuClickEvent.java

@@ -21,7 +21,6 @@
 package com.nextcloud.talk.events;
 
 import com.nextcloud.talk.models.json.rooms.Conversation;
-
 import lombok.Data;
 
 @Data

+ 2 - 4
app/src/main/java/com/nextcloud/talk/events/SessionDescriptionSendEvent.java

@@ -20,12 +20,10 @@
 
 package com.nextcloud.talk.events;
 
-import com.nextcloud.talk.models.json.signaling.NCIceCandidate;
-
-import org.webrtc.SessionDescription;
-
 import androidx.annotation.Nullable;
+import com.nextcloud.talk.models.json.signaling.NCIceCandidate;
 import lombok.Data;
+import org.webrtc.SessionDescription;
 
 @Data
 public class SessionDescriptionSendEvent {

+ 2 - 2
app/src/main/java/com/nextcloud/talk/events/WebSocketCommunicationEvent.java

@@ -20,11 +20,11 @@
 
 package com.nextcloud.talk.events;
 
-import java.util.HashMap;
-
 import androidx.annotation.Nullable;
 import lombok.Data;
 
+import java.util.HashMap;
+
 @Data
 public class WebSocketCommunicationEvent {
     public final String type;

+ 10 - 13
app/src/main/java/com/nextcloud/talk/jobs/AccountRemovalWorker.java

@@ -26,7 +26,10 @@ import android.content.Context;
 import android.os.Build;
 import android.text.TextUtils;
 import android.util.Log;
-
+import androidx.annotation.NonNull;
+import androidx.work.Worker;
+import androidx.work.WorkerParameters;
+import autodagger.AutoInjector;
 import com.bluelinelabs.logansquare.LoganSquare;
 import com.nextcloud.talk.R;
 import com.nextcloud.talk.api.NcApi;
@@ -38,18 +41,6 @@ import com.nextcloud.talk.utils.ApiUtils;
 import com.nextcloud.talk.utils.database.arbitrarystorage.ArbitraryStorageUtils;
 import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.nextcloud.talk.webrtc.WebSocketConnectionHelper;
-
-import java.io.IOException;
-import java.net.CookieManager;
-import java.util.HashMap;
-import java.util.zip.CRC32;
-
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.work.Worker;
-import androidx.work.WorkerParameters;
-import autodagger.AutoInjector;
 import io.reactivex.CompletableObserver;
 import io.reactivex.Observer;
 import io.reactivex.disposables.Disposable;
@@ -57,6 +48,12 @@ import okhttp3.JavaNetCookieJar;
 import okhttp3.OkHttpClient;
 import retrofit2.Retrofit;
 
+import javax.inject.Inject;
+import java.io.IOException;
+import java.net.CookieManager;
+import java.util.HashMap;
+import java.util.zip.CRC32;
+
 @AutoInjector(NextcloudTalkApplication.class)
 public class AccountRemovalWorker extends Worker {
     public static final String TAG = "AccountRemovalWorker";

+ 11 - 15
app/src/main/java/com/nextcloud/talk/jobs/CapabilitiesWorker.java

@@ -22,7 +22,11 @@ package com.nextcloud.talk.jobs;
 
 import android.content.Context;
 import android.util.Log;
-
+import androidx.annotation.NonNull;
+import androidx.work.Data;
+import androidx.work.Worker;
+import androidx.work.WorkerParameters;
+import autodagger.AutoInjector;
 import com.bluelinelabs.logansquare.LoganSquare;
 import com.nextcloud.talk.api.NcApi;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
@@ -32,27 +36,19 @@ import com.nextcloud.talk.models.json.capabilities.CapabilitiesOverall;
 import com.nextcloud.talk.utils.ApiUtils;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
-
+import io.reactivex.Observer;
+import io.reactivex.disposables.Disposable;
+import okhttp3.JavaNetCookieJar;
+import okhttp3.OkHttpClient;
 import org.greenrobot.eventbus.EventBus;
+import retrofit2.Retrofit;
 
+import javax.inject.Inject;
 import java.io.IOException;
 import java.net.CookieManager;
 import java.util.ArrayList;
 import java.util.List;
 
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.work.Data;
-import androidx.work.Worker;
-import androidx.work.WorkerParameters;
-import autodagger.AutoInjector;
-import io.reactivex.Observer;
-import io.reactivex.disposables.Disposable;
-import okhttp3.JavaNetCookieJar;
-import okhttp3.OkHttpClient;
-import retrofit2.Retrofit;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class CapabilitiesWorker extends Worker {
     public static final String TAG = "CapabilitiesWorker";

+ 15 - 19
app/src/main/java/com/nextcloud/talk/jobs/NotificationWorker.java

@@ -37,7 +37,13 @@ import android.os.Vibrator;
 import android.text.TextUtils;
 import android.util.Base64;
 import android.util.Log;
-
+import androidx.annotation.NonNull;
+import androidx.core.app.NotificationCompat;
+import androidx.core.app.NotificationManagerCompat;
+import androidx.work.Data;
+import androidx.work.Worker;
+import androidx.work.WorkerParameters;
+import autodagger.AutoInjector;
 import com.bluelinelabs.logansquare.LoganSquare;
 import com.nextcloud.talk.R;
 import com.nextcloud.talk.activities.MagicCallActivity;
@@ -61,9 +67,16 @@ import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.arbitrarystorage.ArbitraryStorageUtils;
 import com.nextcloud.talk.utils.preferences.AppPreferences;
 import com.nextcloud.talk.utils.singletons.ApplicationWideCurrentRoomHolder;
-
+import io.reactivex.Observer;
+import io.reactivex.disposables.Disposable;
+import okhttp3.JavaNetCookieJar;
+import okhttp3.OkHttpClient;
 import org.parceler.Parcels;
+import retrofit2.Retrofit;
 
+import javax.crypto.Cipher;
+import javax.crypto.NoSuchPaddingException;
+import javax.inject.Inject;
 import java.io.IOException;
 import java.net.CookieManager;
 import java.security.InvalidKeyException;
@@ -73,23 +86,6 @@ import java.util.Calendar;
 import java.util.HashMap;
 import java.util.zip.CRC32;
 
-import javax.crypto.Cipher;
-import javax.crypto.NoSuchPaddingException;
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.core.app.NotificationCompat;
-import androidx.core.app.NotificationManagerCompat;
-import androidx.work.Data;
-import androidx.work.Worker;
-import androidx.work.WorkerParameters;
-import autodagger.AutoInjector;
-import io.reactivex.Observer;
-import io.reactivex.disposables.Disposable;
-import okhttp3.JavaNetCookieJar;
-import okhttp3.OkHttpClient;
-import retrofit2.Retrofit;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class NotificationWorker extends Worker {
     public static final String TAG = "NotificationWorker";

+ 1 - 3
app/src/main/java/com/nextcloud/talk/jobs/PushRegistrationWorker.java

@@ -21,12 +21,10 @@
 package com.nextcloud.talk.jobs;
 
 import android.content.Context;
-
-import com.nextcloud.talk.utils.PushUtils;
-
 import androidx.annotation.NonNull;
 import androidx.work.Worker;
 import androidx.work.WorkerParameters;
+import com.nextcloud.talk.utils.PushUtils;
 
 public class PushRegistrationWorker extends Worker {
     public static final String TAG = "PushRegistrationWorker";

+ 6 - 14
app/src/main/java/com/nextcloud/talk/jobs/SignalingSettingsJob.java

@@ -23,7 +23,9 @@ package com.nextcloud.talk.jobs;
 import android.content.Context;
 import android.text.TextUtils;
 import android.util.Log;
-
+import androidx.annotation.NonNull;
+import androidx.work.*;
+import autodagger.AutoInjector;
 import com.bluelinelabs.logansquare.LoganSquare;
 import com.nextcloud.talk.api.NcApi;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
@@ -34,25 +36,15 @@ import com.nextcloud.talk.models.json.signaling.settings.SignalingSettingsOveral
 import com.nextcloud.talk.utils.ApiUtils;
 import com.nextcloud.talk.utils.bundle.BundleKeys;
 import com.nextcloud.talk.utils.database.user.UserUtils;
-
+import io.reactivex.Observer;
+import io.reactivex.disposables.Disposable;
 import org.greenrobot.eventbus.EventBus;
 
+import javax.inject.Inject;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.work.Data;
-import androidx.work.OneTimeWorkRequest;
-import androidx.work.WorkManager;
-import androidx.work.Worker;
-import androidx.work.WorkerParameters;
-import autodagger.AutoInjector;
-import io.reactivex.Observer;
-import io.reactivex.disposables.Disposable;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class SignalingSettingsJob extends Worker {
     private static final String TAG = "SignalingSettingsJob";

+ 5 - 8
app/src/main/java/com/nextcloud/talk/jobs/WebsocketConnectionsWorker.java

@@ -24,7 +24,10 @@ import android.annotation.SuppressLint;
 import android.content.Context;
 import android.text.TextUtils;
 import android.util.Log;
-
+import androidx.annotation.NonNull;
+import androidx.work.Worker;
+import androidx.work.WorkerParameters;
+import autodagger.AutoInjector;
 import com.bluelinelabs.logansquare.LoganSquare;
 import com.nextcloud.talk.application.NextcloudTalkApplication;
 import com.nextcloud.talk.models.ExternalSignalingServer;
@@ -32,16 +35,10 @@ import com.nextcloud.talk.models.database.UserEntity;
 import com.nextcloud.talk.utils.database.user.UserUtils;
 import com.nextcloud.talk.webrtc.WebSocketConnectionHelper;
 
+import javax.inject.Inject;
 import java.io.IOException;
 import java.util.List;
 
-import javax.inject.Inject;
-
-import androidx.annotation.NonNull;
-import androidx.work.Worker;
-import androidx.work.WorkerParameters;
-import autodagger.AutoInjector;
-
 @AutoInjector(NextcloudTalkApplication.class)
 public class WebsocketConnectionsWorker extends Worker {
 

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/ExternalSignalingServer.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 2
app/src/main/java/com/nextcloud/talk/models/LoginData.java

@@ -20,9 +20,8 @@
  */
 package com.nextcloud.talk.models;
 
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 2
app/src/main/java/com/nextcloud/talk/models/RetrofitBucket.java

@@ -19,12 +19,11 @@
  */
 package com.nextcloud.talk.models;
 
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.Map;
 
-import lombok.Data;
-
 @Parcel
 @Data
 public class RetrofitBucket {

+ 2 - 5
app/src/main/java/com/nextcloud/talk/models/RingtoneSettings.java

@@ -21,15 +21,12 @@
 package com.nextcloud.talk.models;
 
 import android.net.Uri;
-
+import androidx.annotation.Nullable;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.converters.UriTypeConverter;
-
-import org.parceler.Parcel;
-
-import androidx.annotation.Nullable;
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @JsonObject

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/SignatureVerification.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models;
 
 
 import com.nextcloud.talk.models.database.UserEntity;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 2 - 3
app/src/main/java/com/nextcloud/talk/models/database/ArbitraryStorage.java

@@ -21,13 +21,12 @@
 package com.nextcloud.talk.models.database;
 
 import android.os.Parcelable;
-
-import java.io.Serializable;
-
 import io.requery.Entity;
 import io.requery.Key;
 import io.requery.Persistable;
 
+import java.io.Serializable;
+
 @Entity
 public interface ArbitraryStorage extends Parcelable, Persistable, Serializable {
     @Key

+ 3 - 5
app/src/main/java/com/nextcloud/talk/models/database/User.java

@@ -21,18 +21,16 @@ package com.nextcloud.talk.models.database;
 
 import android.os.Parcelable;
 import android.util.Log;
-
 import com.bluelinelabs.logansquare.LoganSquare;
 import com.nextcloud.talk.models.json.capabilities.Capabilities;
-
-import java.io.IOException;
-import java.io.Serializable;
-
 import io.requery.Entity;
 import io.requery.Generated;
 import io.requery.Key;
 import io.requery.Persistable;
 
+import java.io.IOException;
+import java.io.Serializable;
+
 @Entity
 public interface User extends Parcelable, Persistable, Serializable {
     static final String TAG = "UserEntity";

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/autocomplete/AutocompleteOCS.java

@@ -23,13 +23,11 @@ package com.nextcloud.talk.models.json.autocomplete;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.List;
 
-import lombok.Data;
-
 @Parcel
 @Data
 @JsonObject

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/autocomplete/AutocompleteOverall.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.autocomplete;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/autocomplete/AutocompleteUser.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.autocomplete;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/call/Call.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.call;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/call/CallOCS.java

@@ -23,10 +23,8 @@ package com.nextcloud.talk.models.json.call;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/call/CallOverall.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.call;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/capabilities/Capabilities.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.capabilities;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/capabilities/CapabilitiesList.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.capabilities;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/capabilities/CapabilitiesOCS.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.capabilities;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/capabilities/CapabilitiesOverall.java

@@ -21,10 +21,8 @@ package com.nextcloud.talk.models.json.capabilities;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/capabilities/NotificationsCapability.java

@@ -22,13 +22,11 @@ package com.nextcloud.talk.models.json.capabilities;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.List;
 
-import lombok.Data;
-
 @Parcel
 @Data
 @JsonObject

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/capabilities/SpreedCapability.java

@@ -22,13 +22,11 @@ package com.nextcloud.talk.models.json.capabilities;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.List;
 
-import lombok.Data;
-
 @Parcel
 @Data
 @JsonObject

+ 65 - 78
app/src/main/java/com/nextcloud/talk/models/json/chat/ChatMessage.java

@@ -20,8 +20,7 @@
 package com.nextcloud.talk.models.json.chat;
 
 import android.text.TextUtils;
-import android.util.Log;
-
+import androidx.annotation.Nullable;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonIgnore;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
@@ -33,26 +32,48 @@ import com.nextcloud.talk.utils.TextMatchers;
 import com.stfalcon.chatkit.commons.models.IMessage;
 import com.stfalcon.chatkit.commons.models.IUser;
 import com.stfalcon.chatkit.commons.models.MessageContentType;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
-import java.util.Arrays;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-
-import androidx.annotation.Nullable;
-import lombok.Data;
+import java.util.*;
 
 @Parcel
 @Data
 @JsonObject
 public class ChatMessage implements IMessage, MessageContentType, MessageContentType.Image {
+    @JsonIgnore
+    public boolean isGrouped;
+    @JsonIgnore
+    public String activeUserId;
+    @JsonIgnore
+    public Map<String, String> selectedIndividualHashMap;
+    @JsonIgnore
+    public boolean isLinkPreviewAllowed;
     List<MessageType> messageTypesToIgnore = Arrays.asList(MessageType.REGULAR_TEXT_MESSAGE,
             MessageType.SYSTEM_MESSAGE, MessageType.SINGLE_LINK_VIDEO_MESSAGE,
             MessageType.SINGLE_LINK_AUDIO_MESSAGE, MessageType.SINGLE_LINK_MESSAGE);
+    String baseUrl;
+    @JsonField(name = "id")
+    int jsonMessageId;
+    @JsonField(name = "token")
+    String token;
+    // guests or users
+    @JsonField(name = "actorType")
+    String actorType;
+    @JsonField(name = "actorId")
+    String actorId;
+    // send when crafting a message
+    @JsonField(name = "actorDisplayName")
+    String actorDisplayName;
+    @JsonField(name = "timestamp")
+    long timestamp;
+    // send when crafting a message, max 1000 lines
+    @JsonField(name = "message")
+    String message;
+    @JsonField(name = "messageParameters")
+    HashMap<String, HashMap<String, String>> messageParameters;
+    @JsonField(name = "systemMessage", typeConverter = EnumSystemMessageTypeConverter.class)
+    SystemMessageType systemMessageType;
 
     private boolean hasFileAttachment() {
         if (messageParameters != null && messageParameters.size() > 0) {
@@ -101,72 +122,6 @@ public class ChatMessage implements IMessage, MessageContentType, MessageContent
         return TextMatchers.getMessageTypeFromString(getText());
     }
 
-    public enum MessageType {
-        REGULAR_TEXT_MESSAGE,
-        SYSTEM_MESSAGE,
-        SINGLE_LINK_GIPHY_MESSAGE,
-        SINGLE_LINK_TENOR_MESSAGE,
-        SINGLE_LINK_GIF_MESSAGE,
-        SINGLE_LINK_MESSAGE,
-        SINGLE_LINK_VIDEO_MESSAGE,
-        SINGLE_LINK_IMAGE_MESSAGE,
-        SINGLE_LINK_AUDIO_MESSAGE,
-        SINGLE_NC_ATTACHMENT_MESSAGE,
-    }
-
-    public enum SystemMessageType {
-        DUMMY,
-        CONVERSATION_CREATED,
-        CONVERSATION_RENAMED,
-        CALL_STARTED,
-        CALL_JOINED,
-        CALL_LEFT,
-        CALL_ENDED,
-        GUESTS_ALLOWED,
-        GUESTS_DISALLOWED,
-        PASSWORD_SET,
-        PASSWORD_REMOVED,
-        USER_ADDED,
-        USER_REMOVED,
-        MODERATOR_PROMOTED,
-        MODERATOR_DEMOTED,
-        FILE_SHARED,
-    }
-
-    String baseUrl;
-    @JsonField(name = "id")
-    int jsonMessageId;
-    @JsonField(name = "token")
-    String token;
-    // guests or users
-    @JsonField(name = "actorType")
-    String actorType;
-    @JsonField(name = "actorId")
-    String actorId;
-    // send when crafting a message
-    @JsonField(name = "actorDisplayName")
-    String actorDisplayName;
-    @JsonField(name = "timestamp")
-    long timestamp;
-    // send when crafting a message, max 1000 lines
-    @JsonField(name = "message")
-    String message;
-    @JsonField(name = "messageParameters")
-    HashMap<String, HashMap<String, String>> messageParameters;
-
-    @JsonField(name = "systemMessage", typeConverter = EnumSystemMessageTypeConverter.class)
-    SystemMessageType systemMessageType;
-
-    @JsonIgnore
-    public boolean isGrouped;
-    @JsonIgnore
-    public String activeUserId;
-    @JsonIgnore
-    public Map<String, String> selectedIndividualHashMap;
-    @JsonIgnore
-    public boolean isLinkPreviewAllowed;
-
-
     public Map<String, String> getSelectedIndividualHashMap() {
         return selectedIndividualHashMap;
     }
@@ -280,4 +235,36 @@ public class ChatMessage implements IMessage, MessageContentType, MessageContent
     public String getSystemMessage() {
         return new EnumSystemMessageTypeConverter().convertToString(getSystemMessageType());
     }
+
+    public enum MessageType {
+        REGULAR_TEXT_MESSAGE,
+        SYSTEM_MESSAGE,
+        SINGLE_LINK_GIPHY_MESSAGE,
+        SINGLE_LINK_TENOR_MESSAGE,
+        SINGLE_LINK_GIF_MESSAGE,
+        SINGLE_LINK_MESSAGE,
+        SINGLE_LINK_VIDEO_MESSAGE,
+        SINGLE_LINK_IMAGE_MESSAGE,
+        SINGLE_LINK_AUDIO_MESSAGE,
+        SINGLE_NC_ATTACHMENT_MESSAGE,
+    }
+
+    public enum SystemMessageType {
+        DUMMY,
+        CONVERSATION_CREATED,
+        CONVERSATION_RENAMED,
+        CALL_STARTED,
+        CALL_JOINED,
+        CALL_LEFT,
+        CALL_ENDED,
+        GUESTS_ALLOWED,
+        GUESTS_DISALLOWED,
+        PASSWORD_SET,
+        PASSWORD_REMOVED,
+        USER_ADDED,
+        USER_REMOVED,
+        MODERATOR_PROMOTED,
+        MODERATOR_DEMOTED,
+        FILE_SHARED,
+    }
 }

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/chat/ChatOCS.java

@@ -22,13 +22,11 @@ package com.nextcloud.talk.models.json.chat;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.List;
 
-import lombok.Data;
-
 @Data
 @Parcel
 @JsonObject

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/chat/ChatOverall.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.chat;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 16
app/src/main/java/com/nextcloud/talk/models/json/converters/EnumSystemMessageTypeConverter.java

@@ -23,22 +23,7 @@ package com.nextcloud.talk.models.json.converters;
 import com.bluelinelabs.logansquare.typeconverters.StringBasedTypeConverter;
 import com.nextcloud.talk.models.json.chat.ChatMessage;
 
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.CALL_ENDED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.CALL_JOINED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.CALL_LEFT;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.CALL_STARTED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.CONVERSATION_CREATED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.CONVERSATION_RENAMED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.DUMMY;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.FILE_SHARED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.GUESTS_ALLOWED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.GUESTS_DISALLOWED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.MODERATOR_DEMOTED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.MODERATOR_PROMOTED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.PASSWORD_REMOVED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.PASSWORD_SET;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.USER_ADDED;
-import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.USER_REMOVED;
+import static com.nextcloud.talk.models.json.chat.ChatMessage.SystemMessageType.*;
 
 /*
 

+ 0 - 1
app/src/main/java/com/nextcloud/talk/models/json/converters/ObjectParcelConverter.java

@@ -21,7 +21,6 @@
 package com.nextcloud.talk.models.json.converters;
 
 import android.os.Parcel;
-
 import org.parceler.ParcelConverter;
 import org.parceler.Parcels;
 

+ 0 - 1
app/src/main/java/com/nextcloud/talk/models/json/converters/UriTypeConverter.java

@@ -22,7 +22,6 @@ package com.nextcloud.talk.models.json.converters;
 
 import android.net.Uri;
 import android.text.TextUtils;
-
 import com.bluelinelabs.logansquare.typeconverters.StringBasedTypeConverter;
 
 public class UriTypeConverter extends StringBasedTypeConverter<Uri> {

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/generic/GenericMeta.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.generic;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/generic/GenericOCS.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.generic;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/generic/GenericOverall.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.generic;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/generic/Status.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.generic;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/mention/Mention.java

@@ -21,10 +21,8 @@ package com.nextcloud.talk.models.json.mention;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/mention/MentionOCS.java

@@ -22,13 +22,11 @@ package com.nextcloud.talk.models.json.mention;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.List;
 
-import lombok.Data;
-
 @Data
 @Parcel
 @JsonObject

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/mention/MentionOverall.java

@@ -21,10 +21,8 @@ package com.nextcloud.talk.models.json.mention;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 3 - 19
app/src/main/java/com/nextcloud/talk/models/json/notifications/Notification.java

@@ -22,61 +22,45 @@ package com.nextcloud.talk.models.json.notifications;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 
-import lombok.Data;
-
 @Data
 @Parcel
 @JsonObject
 public class Notification {
+    @JsonField(name = "icon")
+    public String icon;
     @JsonField(name = "notification_id")
     int notificationId;
-
     @JsonField(name = "app")
     String app;
-
     @JsonField(name = "user")
     String user;
-
     @JsonField(name = "datetime")
     Date datetime;
-
     @JsonField(name = "object_type")
     String objectType;
-
     @JsonField(name = "object_id")
     String objectId;
-
     @JsonField(name = "subject")
     String subject;
-
     @JsonField(name = "subjectRich")
     String subjectRich;
-
     @JsonField(name = "subjectRichParameters")
     HashMap<String, HashMap<String, String>> subjectRichParameters;
-
     @JsonField(name = "message")
     String message;
-
     @JsonField(name = "messageRich")
     String messageRich;
-
     @JsonField(name = "messageRichParameters")
     HashMap<String, HashMap<String, String>> messageRichParameters;
-
     @JsonField(name = "link")
     String link;
-
-    @JsonField(name = "icon")
-    public String icon;
-
     @JsonField(name = "actions")
     List<NotificationAction> actions;
 }

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationAction.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.notifications;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationOCS.java

@@ -23,10 +23,8 @@ package com.nextcloud.talk.models.json.notifications;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 0 - 1
app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationOverall.java

@@ -21,7 +21,6 @@ package com.nextcloud.talk.models.json.notifications;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
 import lombok.Data;
 
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationRichObject.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.notifications;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationsOCS.java

@@ -23,13 +23,11 @@ package com.nextcloud.talk.models.json.notifications;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.List;
 
-import lombok.Data;
-
 @Data
 @Parcel
 @JsonObject

+ 0 - 1
app/src/main/java/com/nextcloud/talk/models/json/notifications/NotificationsOverall.java

@@ -21,7 +21,6 @@ package com.nextcloud.talk.models.json.notifications;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
 import lombok.Data;
 
 @Data

+ 0 - 1
app/src/main/java/com/nextcloud/talk/models/json/participants/AddParticipantOverall.java

@@ -23,7 +23,6 @@ package com.nextcloud.talk.models.json.participants;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.rooms.RoomsOCS;
-
 import lombok.Data;
 
 @Data

+ 11 - 13
app/src/main/java/com/nextcloud/talk/models/json/participants/Participant.java

@@ -24,12 +24,10 @@ import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.converters.EnumParticipantTypeConverter;
 import com.nextcloud.talk.models.json.converters.ObjectParcelConverter;
-
+import lombok.Data;
 import org.parceler.Parcel;
 import org.parceler.ParcelPropertyConverter;
 
-import lombok.Data;
-
 @Parcel
 @Data
 @JsonObject
@@ -58,6 +56,7 @@ public class Participant {
     @ParcelPropertyConverter(ObjectParcelConverter.class)
     @JsonField(name = "inCall")
     Object inCall;
+    String source;
 
     public ParticipantFlags getParticipantFlags() {
         ParticipantFlags participantFlags = ParticipantFlags.NOT_IN_CALL;
@@ -75,7 +74,6 @@ public class Participant {
 
         return participantFlags;
     }
-    String source;
 
     public enum ParticipantType {
         DUMMY,
@@ -87,11 +85,11 @@ public class Participant {
     }
 
     public enum ParticipantFlags {
-        NOT_IN_CALL (0),
-        IN_CALL (1),
-        IN_CALL_WITH_AUDIO (3),
-        IN_CALL_WITH_VIDEO (5),
-        IN_CALL_WITH_AUDIO_AND_VIDEO (7);
+        NOT_IN_CALL(0),
+        IN_CALL(1),
+        IN_CALL_WITH_AUDIO(3),
+        IN_CALL_WITH_VIDEO(5),
+        IN_CALL_WITH_AUDIO_AND_VIDEO(7);
 
         private long value;
 
@@ -99,10 +97,6 @@ public class Participant {
             this.value = value;
         }
 
-        public long getValue() {
-            return value;
-        }
-
         public static ParticipantFlags fromValue(long value) {
             if (value == 0) {
                 return NOT_IN_CALL;
@@ -119,5 +113,9 @@ public class Participant {
             }
         }
 
+        public long getValue() {
+            return value;
+        }
+
     }
 }

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/participants/ParticipantsOCS.java

@@ -23,13 +23,11 @@ package com.nextcloud.talk.models.json.participants;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.List;
 
-import lombok.Data;
-
 @Parcel
 @Data
 @JsonObject

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/participants/ParticipantsOverall.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.participants;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/push/DecryptedPushMessage.java

@@ -23,10 +23,8 @@ package com.nextcloud.talk.models.json.push;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonIgnore;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/push/PushConfigurationState.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.push;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Parcel
 @Data

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/push/PushRegistration.java

@@ -23,10 +23,8 @@ package com.nextcloud.talk.models.json.push;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/push/PushRegistrationOCS.java

@@ -23,10 +23,8 @@ package com.nextcloud.talk.models.json.push;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 1 - 3
app/src/main/java/com/nextcloud/talk/models/json/push/PushRegistrationOverall.java

@@ -22,10 +22,8 @@ package com.nextcloud.talk.models.json.push;
 
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
-
-import org.parceler.Parcel;
-
 import lombok.Data;
+import org.parceler.Parcel;
 
 @Data
 @Parcel

+ 8 - 10
app/src/main/java/com/nextcloud/talk/models/json/rooms/Conversation.java

@@ -27,13 +27,11 @@ import com.nextcloud.talk.models.json.converters.EnumNotificationLevelConverter;
 import com.nextcloud.talk.models.json.converters.EnumParticipantTypeConverter;
 import com.nextcloud.talk.models.json.converters.EnumRoomTypeConverter;
 import com.nextcloud.talk.models.json.participants.Participant;
-
+import lombok.Data;
 import org.parceler.Parcel;
 
 import java.util.HashMap;
 
-import lombok.Data;
-
 @Parcel
 @Data
 @JsonObject
@@ -80,13 +78,6 @@ public class Conversation {
     @JsonField(name = "notificationLevel", typeConverter = EnumNotificationLevelConverter.class)
     NotificationLevel notificationLevel;
 
-    public enum NotificationLevel {
-        DEFAULT,
-        ALWAYS,
-        MENTION,
-        NEVER
-    }
-
     public boolean isPublic() {
         return (RoomType.ROOM_PUBLIC_CALL.equals(type));
     }
@@ -109,6 +100,13 @@ public class Conversation {
         return (canModerate() && ((participants != null && participants.size() > 2) || numberOfGuests > 0));
     }
 
+    public enum NotificationLevel {
+        DEFAULT,
+        ALWAYS,
+        MENTION,
+        NEVER
+    }
+
     @Parcel
     public enum RoomType {
         DUMMY,

+ 0 - 1
app/src/main/java/com/nextcloud/talk/models/json/rooms/RoomOCS.java

@@ -23,7 +23,6 @@ package com.nextcloud.talk.models.json.rooms;
 import com.bluelinelabs.logansquare.annotation.JsonField;
 import com.bluelinelabs.logansquare.annotation.JsonObject;
 import com.nextcloud.talk.models.json.generic.GenericOCS;
-
 import lombok.Data;
 
 @Data

部分文件因为文件数量过多而无法显示