mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-13 15:54:59 +01:00
Reformat
Signed-off-by: Mario Danic <mario@lovelyhq.com>
This commit is contained in:
parent
7f0912299f
commit
455601b5a6
@ -17,7 +17,7 @@ android {
|
||||
targetSdkVersion 28
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
|
||||
versionCode 82
|
||||
versionCode 120
|
||||
versionName "3.2.3"
|
||||
|
||||
flavorDimensions "default"
|
||||
|
@ -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";
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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> {
|
||||
|
@ -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;
|
||||
|
@ -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> {
|
||||
|
||||
|
@ -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> {
|
||||
|
@ -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";
|
||||
|
@ -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> {
|
||||
|
@ -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;
|
||||
|
@ -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;
|
||||
|
@ -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
|
||||
}
|
||||
|
||||
}
|
@ -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> {
|
||||
|
@ -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> {
|
||||
|
@ -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)
|
||||
|
@ -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) {
|
||||
|
@ -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) {
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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() {
|
||||
|
@ -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 {
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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>() {
|
||||
|
@ -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 {
|
||||
|
@ -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 {
|
||||
|
||||
@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;
|
||||
|
||||
@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 Disposable roomDisposable;
|
||||
private Disposable participantsDisposable;
|
||||
|
||||
|
@ -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,29 +77,7 @@ 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 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 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;
|
||||
@ -104,8 +85,18 @@ 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;
|
||||
|
||||
@AutoInjector(NextcloudTalkApplication.class)
|
||||
public class ConversationsListController extends BaseController implements SearchView.OnQueryTextListener,
|
||||
FlexibleAdapter.OnItemClickListener, FlexibleAdapter.OnItemLongClickListener, FastScroller
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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)
|
||||
|
@ -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))
|
||||
|
@ -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");
|
||||
}
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -21,7 +21,6 @@
|
||||
package com.nextcloud.talk.dagger.modules;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import dagger.Module;
|
||||
import dagger.Provides;
|
||||
|
@ -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 {
|
||||
|
@ -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;
|
||||
|
@ -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;
|
||||
|
@ -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 {
|
||||
|
@ -21,7 +21,6 @@
|
||||
package com.nextcloud.talk.events;
|
||||
|
||||
import com.nextcloud.talk.models.json.rooms.Conversation;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
|
@ -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 {
|
||||
|
@ -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;
|
||||
|
@ -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";
|
||||
|
@ -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 org.greenrobot.eventbus.EventBus;
|
||||
|
||||
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 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;
|
||||
|
||||
@AutoInjector(NextcloudTalkApplication.class)
|
||||
public class CapabilitiesWorker extends Worker {
|
||||
public static final String TAG = "CapabilitiesWorker";
|
||||
|
@ -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";
|
||||
|
@ -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";
|
||||
|
@ -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";
|
||||
|
@ -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 {
|
||||
|
||||
|
@ -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
|
||||
|
@ -20,9 +20,8 @@
|
||||
*/
|
||||
package com.nextcloud.talk.models;
|
||||
|
||||
import org.parceler.Parcel;
|
||||
|
||||
import lombok.Data;
|
||||
import org.parceler.Parcel;
|
||||
|
||||
@Parcel
|
||||
@Data
|
||||
|
@ -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 {
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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";
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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,
|
||||
}
|
||||
}
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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.*;
|
||||
|
||||
/*
|
||||
|
||||
|
@ -21,7 +21,6 @@
|
||||
package com.nextcloud.talk.models.json.converters;
|
||||
|
||||
import android.os.Parcel;
|
||||
|
||||
import org.parceler.ParcelConverter;
|
||||
import org.parceler.Parcels;
|
||||
|
||||
|
@ -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> {
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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 = "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 = "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 = "actions")
|
||||
List<NotificationAction> actions;
|
||||
}
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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,
|
||||
|
@ -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
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user