Search in sources :

Example 1 with StructIGSticker

use of net.iGap.fragments.emoji.struct.StructIGSticker in project iGap-Android by KianIranian-STDG.

the class StickerDialogFragment method onViewCreated.

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    RecyclerView stickerRecyclerView = view.findViewById(R.id.rv_stickerDialog);
    progressBar = view.findViewById(R.id.fl_stickerDialog_progressContainer);
    groupNameTv = view.findViewById(R.id.tv_stickerDialog_groupName);
    addOrRemoveTv = view.findViewById(R.id.tv_stickerDialog_add);
    previewIv = view.findViewById(R.id.iv_stickerDialog_preview);
    stickerCell = view.findViewById(R.id.iv_stickerDialog_lottiePreview);
    retryView = view.findViewById(R.id.retryView);
    addOrRemoveProgressBar = view.findViewById(R.id.pb_stickerDialog_addOrRemove);
    addOrRemoveProgressBar.getIndeterminateDrawable().setColorFilter(getResources().getColor(R.color.white), PorterDuff.Mode.SRC_IN);
    progressBar.getIndeterminateDrawable().setColorFilter(new Theme().getPrimaryDarkColor(getContext()), PorterDuff.Mode.SRC_IN);
    stickerRecyclerView.setAdapter(adapter);
    stickerCell.setFailureListener(result -> Log.e(TAG, "setFailureListener: ", result));
    viewModel.getProgressMutableLiveData().observe(getViewLifecycleOwner(), visibility -> progressBar.setVisibility(visibility));
    viewModel.getStickersMutableLiveData().observe(getViewLifecycleOwner(), structIGStickerGroup -> {
        if (!stickerGroup.hasData())
            stickerGroup = structIGStickerGroup;
        adapter.setIgStickers(structIGStickerGroup.getStickers());
        groupNameTv.setText(structIGStickerGroup.getName());
    });
    viewModel.getAddOrRemoveStickerLiveData().observe(getViewLifecycleOwner(), resourceId -> {
        addOrRemoveTv.setText(getResources().getString(resourceId, HelperCalander.isPersianUnicode ? HelperCalander.convertToUnicodeFarsiNumber(String.valueOf(stickerGroup.getStickersSize())) : String.valueOf(stickerGroup.getStickersSize())));
        addOrRemoveTv.setVisibility(View.VISIBLE);
    });
    adapter.setListener(new StickerAdapter.AddStickerDialogListener() {

        @Override
        public void onStickerClick(StructIGSticker structIGSticker) {
            viewModel.onStickerInListModeClick(structIGSticker);
        }

        @Override
        public void onStickerLongClick(StructIGSticker structIGSticker) {
        }
    });
    viewModel.getOpenPreviewViewLiveData().observe(getViewLifecycleOwner(), structIGSticker -> {
        // TODO: 12/8/19  must create custom dialog for add just once view for handle stickers view type
        if (structIGSticker != null && previewIv.getVisibility() == View.GONE) {
            if (structIGSticker.getType() == StructIGSticker.ANIMATED_STICKER) {
                stickerCell.playAnimation(structIGSticker.getPath());
                stickerCell.animate().alpha(1.0f).setDuration(100).setListener(new AnimatorListenerAdapter() {

                    @Override
                    public void onAnimationEnd(Animator animation) {
                        super.onAnimationEnd(animation);
                        stickerCell.setVisibility(View.VISIBLE);
                    }
                });
            } else if (structIGSticker.getType() == StructIGSticker.NORMAL_STICKER) {
                if (getContext() != null)
                    Glide.with(getContext()).load(structIGSticker.getPath()).into(previewIv);
                previewIv.animate().alpha(1.0f).setDuration(100).setListener(new AnimatorListenerAdapter() {

                    @Override
                    public void onAnimationEnd(Animator animation) {
                        super.onAnimationEnd(animation);
                        previewIv.setVisibility(View.VISIBLE);
                    }
                });
            }
            if (readOnlyChat) {
                addOrRemoveTv.setVisibility(View.GONE);
            } else {
                addOrRemoveTv.setText(getResources().getString(R.string.send));
                addOrRemoveTv.setVisibility(View.VISIBLE);
            }
        } else if (previewIv.getVisibility() == View.VISIBLE) {
            previewIv.animate().alpha(0.0f).setDuration(150).setListener(new AnimatorListenerAdapter() {

                @Override
                public void onAnimationEnd(Animator animation) {
                    super.onAnimationEnd(animation);
                    previewIv.setVisibility(View.GONE);
                }
            });
        } else if (stickerCell.getVisibility() == View.VISIBLE) {
            stickerCell.animate().alpha(0.0f).setDuration(150).setListener(new AnimatorListenerAdapter() {

                @Override
                public void onAnimationEnd(Animator animation) {
                    super.onAnimationEnd(animation);
                    stickerCell.setVisibility(View.GONE);
                }
            });
        }
    });
    viewModel.getSendMessageLiveData().observe(getViewLifecycleOwner(), structIGSticker -> {
        if (listener != null) {
            listener.sendMessage(structIGSticker);
            dismiss();
        }
    });
    viewModel.getAddOrRemoveProgressLiveData().observe(getViewLifecycleOwner(), visibility -> addOrRemoveProgressBar.setVisibility(visibility));
    viewModel.getRetryViewLiveData().observe(getViewLifecycleOwner(), visibility -> retryView.setVisibility(visibility));
    previewIv.setOnClickListener(v -> viewModel.onPreviewImageClicked());
    stickerCell.setOnClickListener(v -> viewModel.onPreviewImageClicked());
    viewModel.getCloseDialogMutableLiveData().observe(getViewLifecycleOwner(), close -> dismiss());
    addOrRemoveTv.setOnClickListener(v -> viewModel.onAddOrRemoveStickerClicked());
    retryView.setOnClickListener(v -> viewModel.onRetryViewClicked());
    viewModel.getSticker();
}
Also used : StructIGSticker(net.iGap.fragments.emoji.struct.StructIGSticker) Animator(android.animation.Animator) AnimatorListenerAdapter(android.animation.AnimatorListenerAdapter) Theme(net.iGap.module.Theme) RecyclerView(androidx.recyclerview.widget.RecyclerView)

Example 2 with StructIGSticker

use of net.iGap.fragments.emoji.struct.StructIGSticker in project iGap-Android by KianIranian-STDG.

the class StickerRepository method getStickerByEmoji.

public Flowable<List<StructIGSticker>> getStickerByEmoji(String unicode) {
    return DbManager.getInstance().doRealmTask(realm -> {
        return realm.where(RealmStickerItem.class).equalTo("name", unicode).sort("recentTime", Sort.DESCENDING).findAll().asFlowable().filter(RealmResults::isLoaded).map(realmStickers -> {
            List<StructIGSticker> stickers = new ArrayList<>();
            for (int i = 0; i < realmStickers.size(); i++) {
                RealmStickerItem stickerItem = realmStickers.get(i);
                if (stickerItem != null) {
                    StructIGSticker sticker = new StructIGSticker(stickerItem);
                    stickers.add(sticker);
                }
            }
            return stickers;
        });
    });
}
Also used : StructIGSticker(net.iGap.fragments.emoji.struct.StructIGSticker) ArrayList(java.util.ArrayList) RealmStickerItem(net.iGap.realm.RealmStickerItem)

Example 3 with StructIGSticker

use of net.iGap.fragments.emoji.struct.StructIGSticker in project iGap-Android by KianIranian-STDG.

the class StickerRepository method getStickerGroupWithRecentTabForEmojiView.

public Flowable<List<StructIGStickerGroup>> getStickerGroupWithRecentTabForEmojiView() {
    return DbManager.getInstance().doRealmTask(realm -> {
        return realm.where(RealmStickerGroup.class).findAllAsync().asFlowable().filter(RealmResults::isLoaded).map(realmStickers -> {
            List<StructIGStickerGroup> structIGStickerGroups = new ArrayList<>();
            for (int i = 0; i < realmStickers.size(); i++) {
                StructIGStickerGroup stickerGroup = new StructIGStickerGroup(realmStickers.get(i));
                structIGStickerGroups.add(stickerGroup);
            }
            return structIGStickerGroups;
        }).map(structIGStickerGroups -> {
            StructIGStickerGroup stickerGroup = new StructIGStickerGroup(StructIGStickerGroup.RECENT_GROUP);
            stickerGroup.setName(G.context.getResources().getString(R.string.recently));
            RealmResults<RealmStickerItem> realmStickersDetails = realm.where(RealmStickerItem.class).limit(RECENT_STICKER_LIMIT).notEqualTo("recentTime", 0).sort("recentTime", Sort.DESCENDING).findAll();
            List<StructIGSticker> stickers = new ArrayList<>();
            for (int i = 0; i < realmStickersDetails.size(); i++) {
                RealmStickerItem stickerItem = realmStickersDetails.get(i);
                if (stickerItem != null) {
                    stickers.add(new StructIGSticker(stickerItem));
                }
            }
            stickerGroup.setStickers(stickers);
            if (stickers.size() > 0) {
                structIGStickerGroups.add(0, stickerGroup);
            }
            return structIGStickerGroups;
        }).map(structIGStickerGroups -> {
            StructIGStickerGroup favoriteStickerGroup = new StructIGStickerGroup(StructIGStickerGroup.FAVORITE_GROUP);
            favoriteStickerGroup.setName(G.context.getResources().getString(R.string.beeptunesÙ€favorite_song));
            RealmResults<RealmStickerItem> stickerItems = realm.where(RealmStickerItem.class).limit(FAVORITE_STICKER_LIMIT).equalTo("isFavorite", true).sort("recentTime", Sort.DESCENDING).findAll();
            if (stickerItems != null) {
                List<StructIGSticker> stickers = new ArrayList<>();
                for (int i = 0; i < stickerItems.size(); i++) {
                    RealmStickerItem stickerItem = stickerItems.get(i);
                    if (stickerItem != null) {
                        stickers.add(new StructIGSticker(stickerItem));
                    }
                }
                favoriteStickerGroup.setStickers(stickers);
            // boolean hasRecent = structIGStickerGroups.get(0).getGroupId().equals(StructIGStickerGroup.RECENT_GROUP);
            // if (stickers.size() > 0) {
            // structIGStickerGroups.add(hasRecent ? 1 : 0, favoriteStickerGroup);
            // }
            }
            return structIGStickerGroups;
        });
    });
}
Also used : JsonObject(com.google.gson.JsonObject) SingleSource(io.reactivex.SingleSource) StickerCategoryGroupDataModel(net.iGap.fragments.emoji.apiModels.StickerCategoryGroupDataModel) FileLog(net.iGap.helper.FileLog) Completable(io.reactivex.Completable) AESCrypt(net.iGap.module.AESCrypt) Single(io.reactivex.Single) AndroidSchedulers(io.reactivex.android.schedulers.AndroidSchedulers) StructIGStickerCategory(net.iGap.fragments.emoji.struct.StructIGStickerCategory) RealmStickerItem(net.iGap.realm.RealmStickerItem) G(net.iGap.G) ArrayList(java.util.ArrayList) HashSet(java.util.HashSet) SliderDataModel(net.iGap.fragments.emoji.apiModels.SliderDataModel) Flowable(io.reactivex.Flowable) Gson(com.google.gson.Gson) Schedulers(io.reactivex.schedulers.Schedulers) RsaDataModel(net.iGap.fragments.emoji.apiModels.RsaDataModel) IGSingleObserver(net.iGap.observers.rx.IGSingleObserver) CardStatusDataModel(net.iGap.fragments.emoji.apiModels.CardStatusDataModel) HelperNumerical(net.iGap.helper.HelperNumerical) Ids(net.iGap.fragments.emoji.apiModels.Ids) CompletableObserver(io.reactivex.CompletableObserver) RealmResults(io.realm.RealmResults) StructIGStickerGroup(net.iGap.fragments.emoji.struct.StructIGStickerGroup) StickerApi(net.iGap.api.StickerApi) UserGiftStickersDataModel(net.iGap.fragments.emoji.apiModels.UserGiftStickersDataModel) File(java.io.File) List(java.util.List) CompositeDisposable(io.reactivex.disposables.CompositeDisposable) Disposable(io.reactivex.disposables.Disposable) RetrofitFactory(net.iGap.api.apiService.RetrofitFactory) StructIGSticker(net.iGap.fragments.emoji.struct.StructIGSticker) Sort(io.realm.Sort) Base64(android.util.Base64) CardDetailDataModel(net.iGap.fragments.emoji.apiModels.CardDetailDataModel) IssueDataModel(net.iGap.fragments.emoji.apiModels.IssueDataModel) R(net.iGap.R) RealmStickerGroup(net.iGap.realm.RealmStickerGroup) ResponseCallback(net.iGap.observers.interfaces.ResponseCallback) NotNull(org.jetbrains.annotations.NotNull) DbManager(net.iGap.module.accountManager.DbManager) StructIGSticker(net.iGap.fragments.emoji.struct.StructIGSticker) ArrayList(java.util.ArrayList) ArrayList(java.util.ArrayList) List(java.util.List) StructIGStickerGroup(net.iGap.fragments.emoji.struct.StructIGStickerGroup) RealmResults(io.realm.RealmResults) RealmStickerItem(net.iGap.realm.RealmStickerItem)

Example 4 with StructIGSticker

use of net.iGap.fragments.emoji.struct.StructIGSticker in project iGap-Android by KianIranian-STDG.

the class RealmStickerGroup method getIGGroupStickers.

public List<StructIGSticker> getIGGroupStickers() {
    if (getStickerItems() == null || getStickerItems().size() <= 0 || !getStickerItems().isValid())
        return new ArrayList<>();
    List<StructIGSticker> stickerDetails = new ArrayList<>();
    for (RealmStickerItem stickerItem : getStickerItems()) {
        StructIGSticker structIGSticker = new StructIGSticker(stickerItem);
        stickerDetails.add(structIGSticker);
    }
    return stickerDetails;
}
Also used : StructIGSticker(net.iGap.fragments.emoji.struct.StructIGSticker) ArrayList(java.util.ArrayList)

Example 5 with StructIGSticker

use of net.iGap.fragments.emoji.struct.StructIGSticker in project iGap-Android by KianIranian-STDG.

the class FragmentChat method initMain.

private void initMain() {
    HelperGetMessageState.clearMessageViews();
    initPinedMessage();
    viewMicRecorder = rootView.findViewById(R.id.layout_mic_recorde);
    prgWaiting = rootView.findViewById(R.id.chl_prgWaiting);
    AppUtils.setProgresColler(prgWaiting);
    voiceRecord = new VoiceRecord(G.fragmentActivity, viewMicRecorder, viewAttachFile, this);
    prgWaiting.setVisibility(View.VISIBLE);
    txtEmptyMessages = rootView.findViewById(R.id.empty_messages);
    if (isBot) {
        txtEmptyMessages.setText(G.fragmentActivity.getResources().getString(R.string.empty_text_dr_bot));
        txtChannelMute.setText(R.string.start);
        iconChannelMute.setText("");
    }
    lastDateCalendar.clear();
    locationManager = (LocationManager) G.fragmentActivity.getSystemService(LOCATION_SERVICE);
    /**
     * Hint: don't need to get info here. currently do this action in {{@link #startPageFastInitialize()}}
     *         Bundle extras = getArguments();
     *         if (extras != null) {
     *         mRoomId = extras.getLong("RoomId");
     *         isGoingFromUserLink = extras.getBoolean("GoingFromUserLink");
     *         isNotJoin = extras.getBoolean("ISNotJoin");
     *         userName = extras.getString("UserName");
     *         messageId = extras.getLong("MessageId");
     *         }
     */
    /**
     * get userId . use in chat set action.
     */
    RealmUserInfo realmUserInfo = DbManager.getInstance().doRealmTask(realm -> {
        return realm.where(RealmUserInfo.class).findFirst();
    });
    if (realmUserInfo == null) {
        // finish();
        finishChat();
        return;
    }
    userId = realmUserInfo.getUserId();
    managedRoom = getRoom();
    if (managedRoom != null) {
        // room exist
        title = managedRoom.getTitle();
        initialize = managedRoom.getInitials();
        color = managedRoom.getColor();
        isChatReadOnly = managedRoom.getReadOnly();
        unreadCount = managedRoom.getUnreadCount();
        savedScrollMessageId = managedRoom.getLastScrollPositionMessageId();
        savedScrollDocumentId = managedRoom.getLastScrollPositionDocumentId();
        firstVisiblePositionOffset = managedRoom.getLastScrollPositionOffset();
        if (messageId != 0) {
            savedScrollMessageId = messageId;
            savedScrollDocumentId = documentId;
            firstVisiblePositionOffset = 0;
        }
        if (chatType == CHAT) {
            RealmRegisteredInfo realmRegisteredInfo = DbManager.getInstance().doRealmTask(realm -> {
                return RealmRegisteredInfo.getRegistrationInfo(realm, chatPeerId);
            });
            if (realmRegisteredInfo != null) {
                initialize = realmRegisteredInfo.getInitials();
                color = realmRegisteredInfo.getColor();
                phoneNumber = realmRegisteredInfo.getPhoneNumber();
                if (realmRegisteredInfo.getId() == Config.drIgapPeerId) {
                    // if (realmRegisteredInfo.getUsername().equalsIgnoreCase("")) {
                    initDrBot();
                }
            } else {
                title = managedRoom.getTitle();
                initialize = managedRoom.getInitials();
                color = managedRoom.getColor();
                userStatus = G.fragmentActivity.getResources().getString(R.string.last_seen_recently);
            }
        } else if (chatType == GROUP) {
            RealmGroupRoom realmGroupRoom = managedRoom.getGroupRoom();
            groupRole = realmGroupRoom.getRole();
            groupParticipantsCountLabel = realmGroupRoom.getParticipantsCountLabel();
        } else if (chatType == CHANNEL) {
            RealmChannelRoom realmChannelRoom = managedRoom.getChannelRoom();
            channelRole = realmChannelRoom.getRole();
            channelParticipantsCountLabel = realmChannelRoom.getParticipantsCountLabel();
        }
    } else {
        // chatPeerId = extras.getLong("peerId");
        chatType = CHAT;
        RealmRegisteredInfo realmRegisteredInfo = DbManager.getInstance().doRealmTask(realm -> {
            return RealmRegisteredInfo.getRegistrationInfo(realm, chatPeerId);
        });
        if (realmRegisteredInfo != null) {
            title = realmRegisteredInfo.getDisplayName();
            initialize = realmRegisteredInfo.getInitials();
            color = realmRegisteredInfo.getColor();
            lastSeen = realmRegisteredInfo.getLastSeen();
            userStatus = realmRegisteredInfo.getStatus();
        }
    }
    initComponent();
    initAppbarSelected();
    getDraft();
    getUserInfo();
    insertSharedData();
    if (structIGSticker != null) {
        G.handler.postDelayed(() -> sendStickerAsMessage(structIGSticker), 1000);
    }
    RealmRoomMessage rm = null;
    RealmResults<RealmRoomMessage> result = DbManager.getInstance().doRealmTask(realm -> {
        return realm.where(RealmRoomMessage.class).equalTo("roomId", mRoomId).findAll();
    });
    if (result.size() > 0) {
        rm = result.last();
        if (rm != null && rm.getMessage() != null) {
            if (rm.getRealmAdditional() != null && (rm.getRealmAdditional().getAdditionalType() == Additional.WEB_VIEW.getAdditional())) {
                String additionalData = rm.getRealmAdditional().getAdditionalData();
                if (!additionalData.isEmpty())
                    openWebViewForSpecialUrlChat(additionalData);
            }
        }
    }
    FragmentShearedMedia.goToPositionFromShardMedia = new FragmentShearedMedia.GoToPositionFromShardMedia() {

        @Override
        public void goToPosition(Long messageId, long documentId) {
            if (messageId != 0) {
                savedScrollMessageId = messageId;
                savedScrollDocumentId = documentId;
                firstVisiblePositionOffset = 0;
                if (goToPositionWithAnimation(savedScrollMessageId, 2000)) {
                    savedScrollMessageId = 0;
                    savedScrollDocumentId = 0;
                } else {
                    RealmRoomMessage rm = DbManager.getInstance().doRealmTask(realm -> {
                        return realm.where(RealmRoomMessage.class).equalTo("messageId", messageId).findFirst();
                    });
                    rm = RealmRoomMessage.getFinalMessage(rm);
                    if (rm != null) {
                        resetMessagingValue();
                        savedScrollMessageId = FragmentChat.messageId = messageId;
                        savedScrollDocumentId = FragmentChat.documentId = documentId;
                        firstVisiblePositionOffset = 0;
                        getMessages();
                    }
                }
            }
        }
    };
    sendChatTracker();
}
Also used : RealmUserInfo(net.iGap.realm.RealmUserInfo) ThumbnailUtils(android.media.ThumbnailUtils) Bundle(android.os.Bundle) HelperNotification(net.iGap.helper.HelperNotification) StructBottomSheetForward(net.iGap.module.structs.StructBottomSheetForward) ProgressBar(android.widget.ProgressBar) NonNull(androidx.annotation.NonNull) FileLog(net.iGap.helper.FileLog) UploadObject(net.iGap.module.upload.UploadObject) IMAGE_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.IMAGE_VALUE) ToolbarItem(net.iGap.messenger.ui.toolBar.ToolbarItem) AppCompatCheckBox(androidx.appcompat.widget.AppCompatCheckBox) NewChatItemHolder(net.iGap.adapter.items.chat.NewChatItemHolder) GroupChatRole(net.iGap.module.enums.GroupChatRole) HelperSetAction(net.iGap.helper.HelperSetAction) OnBotClick(net.iGap.observers.interfaces.OnBotClick) Handler(android.os.Handler) MediaStore(android.provider.MediaStore) Map(java.util.Map) OnChatSendMessageResponse(net.iGap.observers.interfaces.OnChatSendMessageResponse) ClipboardManager(android.content.ClipboardManager) CallActivity(net.iGap.activities.CallActivity) HelperError(net.iGap.helper.HelperError) DOWN(net.iGap.proto.ProtoClientGetRoomHistory.ClientGetRoomHistory.Direction.DOWN) GIF_TEXT(net.iGap.proto.ProtoGlobal.RoomMessageType.GIF_TEXT) RequestClientSubscribeToRoom(net.iGap.request.RequestClientSubscribeToRoom) ContextCompat(androidx.core.content.ContextCompat) HelperFragment(net.iGap.helper.HelperFragment) Log(android.util.Log) R.id.ac_ll_parent(net.iGap.R.id.ac_ll_parent) Realm(io.realm.Realm) HelperCalander(net.iGap.helper.HelperCalander) NumberTextView(net.iGap.messenger.ui.toolBar.NumberTextView) RealmObjectChangeListener(io.realm.RealmObjectChangeListener) RealmRoom(net.iGap.realm.RealmRoom) CHAT(net.iGap.proto.ProtoGlobal.Room.Type.CHAT) VIDEO(net.iGap.proto.ProtoGlobal.RoomMessageType.VIDEO) CHANNEL(net.iGap.proto.ProtoGlobal.Room.Type.CHANNEL) SoundPool(android.media.SoundPool) CountDownLatch(java.util.concurrent.CountDownLatch) RequestChatUpdateDraft(net.iGap.request.RequestChatUpdateDraft) OnHelperSetAction(net.iGap.observers.interfaces.OnHelperSetAction) AttachFile.getFilePathFromUri(net.iGap.module.AttachFile.getFilePathFromUri) CLIPBOARD_SERVICE(android.content.Context.CLIPBOARD_SERVICE) RequestChatGetRoom(net.iGap.request.RequestChatGetRoom) RealmCallConfig(net.iGap.realm.RealmCallConfig) SuggestedStickerAdapter(net.iGap.fragments.emoji.SuggestedStickerAdapter) ActivityMain(net.iGap.activities.ActivityMain) BottomSheetBehavior(com.google.android.material.bottomsheet.BottomSheetBehavior) HelperUrl(net.iGap.helper.HelperUrl) AccountManager(net.iGap.module.accountManager.AccountManager) ChatAttachmentPopup(net.iGap.module.dialog.ChatAttachmentPopup) RealmContacts(net.iGap.realm.RealmContacts) ParamWithInitBitmap(net.iGap.helper.avatar.ParamWithInitBitmap) Calendar(java.util.Calendar) WebSettings(android.webkit.WebSettings) ItemTouchHelper(androidx.recyclerview.widget.ItemTouchHelper) Toast(android.widget.Toast) ImageLoadingServiceInjector(net.iGap.module.imageLoaderService.ImageLoadingServiceInjector) IMAGE_TEXT(net.iGap.proto.ProtoGlobal.RoomMessageType.IMAGE_TEXT) AudioItem(net.iGap.adapter.items.chat.AudioItem) RealmRoomAccess(net.iGap.realm.RealmRoomAccess) MessageObject(net.iGap.structs.MessageObject) VideoWithTextItem(net.iGap.adapter.items.chat.VideoWithTextItem) G.twoPaneMode(net.iGap.G.twoPaneMode) AppCompatDelegate(androidx.appcompat.app.AppCompatDelegate) AttachFile.request_code_VIDEO_CAPTURED(net.iGap.module.AttachFile.request_code_VIDEO_CAPTURED) IOException(java.io.IOException) FragmentMediaContainer(net.iGap.messenger.ui.components.FragmentMediaContainer) IResendMessage(net.iGap.observers.interfaces.IResendMessage) EventEditText(net.iGap.module.customView.EventEditText) SharedPreferences(android.content.SharedPreferences) AUDIO_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.AUDIO_VALUE) HelperMimeType(net.iGap.helper.HelperMimeType) RoomObject(net.iGap.helper.RoomObject) NotifyFrameLayout(net.iGap.libs.emojiKeyboard.NotifyFrameLayout) EditText(android.widget.EditText) FileListerDialog(net.iGap.module.FileListerDialog.FileListerDialog) RequestUserContactsBlock(net.iGap.request.RequestUserContactsBlock) ISendPosition(net.iGap.observers.interfaces.ISendPosition) BottomSheetDialog(com.google.android.material.bottomsheet.BottomSheetDialog) JsonObject(com.google.gson.JsonObject) LinearLayout(android.widget.LinearLayout) RequestClientUnsubscribeFromRoom(net.iGap.request.RequestClientUnsubscribeFromRoom) AppUtils(net.iGap.module.AppUtils) PackageManager(android.content.pm.PackageManager) WindowManager(android.view.WindowManager) StickerDialogFragment(net.iGap.fragments.emoji.add.StickerDialogFragment) Animator(android.animation.Animator) Theme(net.iGap.module.Theme) GIF_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.GIF_VALUE) G(net.iGap.G) StatusTextFragment(net.iGap.story.StatusTextFragment) AccelerateDecelerateInterpolator(android.view.animation.AccelerateDecelerateInterpolator) RequestClientGetRoomHistory(net.iGap.request.RequestClientGetRoomHistory) IntentRequests(net.iGap.module.IntentRequests) RealmUserInfo(net.iGap.realm.RealmUserInfo) ACTION_STATE_SWIPE(androidx.recyclerview.widget.ItemTouchHelper.ACTION_STATE_SWIPE) ContentResolver(android.content.ContentResolver) UnreadMessage(net.iGap.adapter.items.chat.UnreadMessage) HelperPermission(net.iGap.helper.HelperPermission) IMessageItem(net.iGap.observers.interfaces.IMessageItem) Gson(com.google.gson.Gson) KeyboardView(net.iGap.libs.emojiKeyboard.KeyboardView) RecyclerView(androidx.recyclerview.widget.RecyclerView) RealmString(net.iGap.realm.RealmString) HelperImageBackColor(net.iGap.helper.HelperImageBackColor) VIDEO_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.VIDEO_VALUE) ParamWithAvatarType(net.iGap.helper.avatar.ParamWithAvatarType) UP(net.iGap.proto.ProtoClientGetRoomHistory.ClientGetRoomHistory.Direction.UP) ProgressWaiting(net.iGap.adapter.items.chat.ProgressWaiting) VIDEO_TEXT(net.iGap.proto.ProtoGlobal.RoomMessageType.VIDEO_TEXT) MessageController(net.iGap.controllers.MessageController) Status(net.iGap.module.downloader.Status) ProtoChannelGetMessagesStats(net.iGap.proto.ProtoChannelGetMessagesStats) ItemBottomSheetForward(net.iGap.adapter.items.ItemBottomSheetForward) DisplayMetrics(android.util.DisplayMetrics) GIF_TEXT_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.GIF_TEXT_VALUE) STORY_REPLY_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.STORY_REPLY_VALUE) OnClientGetRoomMessage(net.iGap.observers.interfaces.OnClientGetRoomMessage) Disposable(io.reactivex.disposables.Disposable) RealmRegisteredInfo(net.iGap.realm.RealmRegisteredInfo) MusicPlayer(net.iGap.module.MusicPlayer) OnGetPermission(net.iGap.observers.interfaces.OnGetPermission) StickerRepository(net.iGap.repository.StickerRepository) ActivityTrimVideo(net.iGap.activities.ActivityTrimVideo) LocationManager(android.location.LocationManager) EditorInfo(android.view.inputmethod.EditorInfo) IOnBackPressed(net.iGap.observers.interfaces.IOnBackPressed) RealmRoomMessageLocation(net.iGap.realm.RealmRoomMessageLocation) AppCompatTextView(androidx.appcompat.widget.AppCompatTextView) ActivityManager(android.app.ActivityManager) GridLayoutManager(androidx.recyclerview.widget.GridLayoutManager) CallManager(net.iGap.viewmodel.controllers.CallManager) HelperGetMessageState(net.iGap.helper.HelperGetMessageState) OnVoiceRecord(net.iGap.observers.interfaces.OnVoiceRecord) RealmList(io.realm.RealmList) RequestClientGetFavoriteMenu(net.iGap.request.RequestClientGetFavoriteMenu) RealmRoomMessage.makeUnreadMessage(net.iGap.realm.RealmRoomMessage.makeUnreadMessage) TimeUtils(net.iGap.module.TimeUtils) AudioManager(android.media.AudioManager) InputMethodManager(android.view.inputmethod.InputMethodManager) FragmentActivity(androidx.fragment.app.FragmentActivity) AnimationUtils(android.view.animation.AnimationUtils) HelperCalander.convertToUnicodeFarsiNumber(net.iGap.helper.HelperCalander.convertToUnicodeFarsiNumber) RequestUserContactsUnblock(net.iGap.request.RequestUserContactsUnblock) MODE_PRIVATE(android.content.Context.MODE_PRIVATE) Build(android.os.Build) RequestUserInfo(net.iGap.request.RequestUserInfo) EmojiView(net.iGap.libs.emojiKeyboard.EmojiView) RequestChannelUpdateDraft(net.iGap.request.RequestChannelUpdateDraft) RealmAdditional(net.iGap.realm.RealmAdditional) JsonSyntaxException(com.google.gson.JsonSyntaxException) LayoutInflater(android.view.LayoutInflater) BadgeView(net.iGap.adapter.items.chat.BadgeView) RealmResults(io.realm.RealmResults) DialogAction(com.afollestad.materialdialogs.DialogAction) MaterialDesignTextView(net.iGap.module.MaterialDesignTextView) IDispatchTochEvent(net.iGap.observers.interfaces.IDispatchTochEvent) Color(android.graphics.Color) CountDownTimer(android.os.CountDownTimer) FileItem(net.iGap.adapter.items.chat.FileItem) StructMessageOption(net.iGap.module.structs.StructMessageOption) Bitmap(android.graphics.Bitmap) HelperSaveFile(net.iGap.helper.HelperSaveFile) STICKER_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.STICKER_VALUE) ViewTreeObserver(android.view.ViewTreeObserver) VIDEO_TEXT_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.VIDEO_TEXT_VALUE) VOICE_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.VOICE_VALUE) R(net.iGap.R) OnConnectionChangeStateChat(net.iGap.observers.interfaces.OnConnectionChangeStateChat) ProtoClientGetRoomHistory(net.iGap.proto.ProtoClientGetRoomHistory) StickerItem(net.iGap.adapter.items.chat.StickerItem) SHOW(net.iGap.module.enums.ProgressState.SHOW) Vibrator(android.os.Vibrator) Activity(android.app.Activity) FastItemAdapter(com.mikepenz.fastadapter.commons.adapters.FastItemAdapter) Arrays(java.util.Arrays) MyLinearLayoutManager(net.iGap.module.MyLinearLayoutManager) RequestClientJoinByUsername(net.iGap.request.RequestClientJoinByUsername) VoiceRecord(net.iGap.module.VoiceRecord) ProtoFileDownload(net.iGap.proto.ProtoFileDownload) Uri(android.net.Uri) FrameLayout(android.widget.FrameLayout) ImageView(android.widget.ImageView) LastSeenTimeUtil(net.iGap.module.LastSeenTimeUtil) Drawable(android.graphics.drawable.Drawable) Manifest(android.Manifest) ProtoClientRoomReport(net.iGap.proto.ProtoClientRoomReport) AdditionalType(net.iGap.module.additionalData.AdditionalType) HelperPermission.showDeniedPermissionMessage(net.iGap.helper.HelperPermission.showDeniedPermissionMessage) Looper(android.os.Looper) DialogAnimation(net.iGap.module.DialogAnimation) Fragment(androidx.fragment.app.Fragment) OnSetAction(net.iGap.observers.interfaces.OnSetAction) Canvas(android.graphics.Canvas) ProgressState(net.iGap.module.enums.ProgressState) RealmConstants(net.iGap.realm.RealmConstants) CardView(androidx.cardview.widget.CardView) OnDeleteChatFinishActivity(net.iGap.observers.interfaces.OnDeleteChatFinishActivity) HelperTracker(net.iGap.helper.HelperTracker) RequestGroupUpdateDraft(net.iGap.request.RequestGroupUpdateDraft) OnLastSeenUpdateTiming(net.iGap.observers.interfaces.OnLastSeenUpdateTiming) OnComplete(net.iGap.observers.interfaces.OnComplete) RealmRoomDraft(net.iGap.realm.RealmRoomDraft) WALLET_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.WALLET_VALUE) Set(java.util.Set) ChatSendMessageUtil(net.iGap.module.ChatSendMessageUtil) ChatMoreItem(net.iGap.model.ChatMoreItem) BotInit(net.iGap.module.BotInit) AnimatorListenerAdapter(android.animation.AnimatorListenerAdapter) RealmGroupRoom(net.iGap.realm.RealmGroupRoom) Uploader(net.iGap.module.upload.Uploader) StringRes(androidx.annotation.StringRes) JsonArray(com.google.gson.JsonArray) FontIconTextView(net.iGap.module.FontIconTextView) Nullable(androidx.annotation.Nullable) BackDrawable(net.iGap.messenger.ui.toolBar.BackDrawable) HIDE(net.iGap.module.enums.ProgressState.HIDE) Tuple(net.iGap.libs.Tuple) OnGroupAvatarResponse(net.iGap.observers.interfaces.OnGroupAvatarResponse) SHP_SETTING(net.iGap.module.SHP_SETTING) Sort(io.realm.Sort) MyWebViewClient(net.iGap.libs.MyWebViewClient) LinearLayoutManager(androidx.recyclerview.widget.LinearLayoutManager) VoiceItem(net.iGap.adapter.items.chat.VoiceItem) InputFilter(android.text.InputFilter) EventManager(net.iGap.observers.eventbus.EventManager) DownloadObject(net.iGap.module.downloader.DownloadObject) TextWatcher(android.text.TextWatcher) OnMessageReceive(net.iGap.observers.interfaces.OnMessageReceive) EmojiManager(net.iGap.libs.emojiKeyboard.emoji.EmojiManager) Config(net.iGap.Config) AttachmentObject(net.iGap.structs.AttachmentObject) StoryViewFragment(net.iGap.story.viewPager.StoryViewFragment) AttachFile.request_code_pic_audi(net.iGap.module.AttachFile.request_code_pic_audi) ImageSpan(android.text.style.ImageSpan) Environment(android.os.Environment) RequestClientGetRoomMessage(net.iGap.request.RequestClientGetRoomMessage) OnChatMessageRemove(net.iGap.observers.interfaces.OnChatMessageRemove) Editable(android.text.Editable) LOCATION_SERVICE(android.content.Context.LOCATION_SERVICE) ArrayList(java.util.ArrayList) VibrationEffect(android.os.VibrationEffect) LOCATION_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.LOCATION_VALUE) RealmChannelExtra(net.iGap.realm.RealmChannelExtra) ConnectionState(net.iGap.module.enums.ConnectionState) HelperGetAction(net.iGap.helper.HelperGetAction) LayoutCreator(net.iGap.helper.LayoutCreator) IMAGE_TEXT_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.IMAGE_TEXT_VALUE) WebChromeClient(android.webkit.WebChromeClient) Toolbar(net.iGap.messenger.ui.toolBar.Toolbar) LogWallet(net.iGap.adapter.items.chat.LogWallet) AvatarHandler(net.iGap.helper.avatar.AvatarHandler) RESULT_CANCELED(android.app.Activity.RESULT_CANCELED) StructWebView(net.iGap.module.structs.StructWebView) StickerSettingFragment(net.iGap.fragments.emoji.remove.StickerSettingFragment) AnimatedStickerItem(net.iGap.adapter.items.chat.AnimatedStickerItem) OnChatEditMessageResponse(net.iGap.observers.interfaces.OnChatEditMessageResponse) File(java.io.File) IItemAdapter(com.mikepenz.fastadapter.IItemAdapter) Gravity(android.view.Gravity) StructIGSticker(net.iGap.fragments.emoji.struct.StructIGSticker) Configuration(android.content.res.Configuration) LocationListener(net.iGap.observers.interfaces.LocationListener) LocationItem(net.iGap.adapter.items.chat.LocationItem) DbManager(net.iGap.module.accountManager.DbManager) CardToCardItem(net.iGap.adapter.items.chat.CardToCardItem) ValueAnimator(android.animation.ValueAnimator) FILE_TEXT_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.FILE_TEXT_VALUE) ImageHelper(net.iGap.helper.ImageHelper) AttachFile.request_code_pic_file(net.iGap.module.AttachFile.request_code_pic_file) IMAGE(net.iGap.proto.ProtoGlobal.RoomMessageType.IMAGE) RealmRoomMessage.makeSeenAllMessageOfRoom(net.iGap.realm.RealmRoomMessage.makeSeenAllMessageOfRoom) AppCompatImageView(androidx.appcompat.widget.AppCompatImageView) ResendMessage(net.iGap.module.ResendMessage) AttachFile(net.iGap.module.AttachFile) LOG_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.LOG_VALUE) LogWalletCardToCard(net.iGap.adapter.items.chat.LogWalletCardToCard) OnGetFavoriteMenu(net.iGap.observers.interfaces.OnGetFavoriteMenu) RealmChannelRoom(net.iGap.realm.RealmChannelRoom) AUDIO_TEXT_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.AUDIO_TEXT_VALUE) ContactItem(net.iGap.adapter.items.chat.ContactItem) LISTENED_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageStatus.LISTENED_VALUE) BottomSheetFragment(net.iGap.module.dialog.bottomsheet.BottomSheetFragment) View(android.view.View) Animation(android.view.animation.Animation) WebView(android.webkit.WebView) OnChatMessageSelectionChanged(net.iGap.observers.interfaces.OnChatMessageSelectionChanged) RealmRoomMessageContact(net.iGap.realm.RealmRoomMessageContact) StoryPagerFragment(net.iGap.story.StoryPagerFragment) ContactUtils(net.iGap.module.ContactUtils) ParentChatMoneyTransferFragment(net.iGap.fragments.chatMoneyTransfer.ParentChatMoneyTransferFragment) MessagesAdapter(net.iGap.adapter.MessagesAdapter) FILE_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.FILE_VALUE) AdapterDrBot(net.iGap.adapter.AdapterDrBot) OnUpdateUserOrRoomInfo(net.iGap.observers.interfaces.OnUpdateUserOrRoomInfo) RequestClientRoomReport(net.iGap.request.RequestClientRoomReport) HelperGetDataFromOtherApp(net.iGap.helper.HelperGetDataFromOtherApp) ObjectAnimator(android.animation.ObjectAnimator) PassCode(net.iGap.model.PassCode) StructMessageInfo(net.iGap.module.structs.StructMessageInfo) InputType(android.text.InputType) StructIGStickerGroup(net.iGap.fragments.emoji.struct.StructIGStickerGroup) ViewStubCompat(androidx.appcompat.widget.ViewStubCompat) Additional(net.iGap.module.enums.Additional) TEXT_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.TEXT_VALUE) LogWalletTopup(net.iGap.adapter.items.chat.LogWalletTopup) ViewGroup(android.view.ViewGroup) OnForwardBottomSheet(net.iGap.observers.interfaces.OnForwardBottomSheet) OnUserUpdateStatus(net.iGap.observers.interfaces.OnUserUpdateStatus) HelperLog(net.iGap.helper.HelperLog) OnChatSendMessage(net.iGap.observers.interfaces.OnChatSendMessage) List(java.util.List) CompositeDisposable(io.reactivex.disposables.CompositeDisposable) TextView(android.widget.TextView) FragmentSettingAddStickers(net.iGap.fragments.emoji.add.FragmentSettingAddStickers) CONTACT_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageType.CONTACT_VALUE) RequestQueue(net.iGap.request.RequestQueue) RelativeLayout(android.widget.RelativeLayout) TextItem(net.iGap.adapter.items.chat.TextItem) IUpdateLogItem(net.iGap.observers.interfaces.IUpdateLogItem) MaterialDialog(com.afollestad.materialdialogs.MaterialDialog) NotNull(org.jetbrains.annotations.NotNull) OpenBottomSheetItem(net.iGap.observers.interfaces.OpenBottomSheetItem) Context(android.content.Context) AndroidUtils(net.iGap.module.AndroidUtils) SEEN_VALUE(net.iGap.proto.ProtoGlobal.RoomMessageStatus.SEEN_VALUE) KeyEvent(android.view.KeyEvent) ResourcesCompat(androidx.core.content.res.ResourcesCompat) GifWithTextItem(net.iGap.adapter.items.chat.GifWithTextItem) RequestSignalingGetConfiguration(net.iGap.request.RequestSignalingGetConfiguration) OnChatDelete(net.iGap.observers.interfaces.OnChatDelete) Intent(android.content.Intent) HashMap(java.util.HashMap) RealmStickerItem(net.iGap.realm.RealmStickerItem) SUID(net.iGap.module.SUID) ClipData(android.content.ClipData) OnUserInfoResponse(net.iGap.observers.interfaces.OnUserInfoResponse) SuppressLint(android.annotation.SuppressLint) MotionEvent(android.view.MotionEvent) AnimatorSet(android.animation.AnimatorSet) TimeItem(net.iGap.adapter.items.chat.TimeItem) RealmRoomMessage(net.iGap.realm.RealmRoomMessage) Cursor(android.database.Cursor) LogWalletBill(net.iGap.adapter.items.chat.LogWalletBill) ACTIVITY_SERVICE(android.content.Context.ACTIVITY_SERVICE) CONTACT(net.iGap.proto.ProtoGlobal.RoomMessageType.CONTACT) ToolbarItems(net.iGap.messenger.ui.toolBar.ToolbarItems) FileWriter(java.io.FileWriter) ProtoResponse(net.iGap.proto.ProtoResponse) MessageLoader(net.iGap.module.MessageLoader) LogItem(net.iGap.adapter.items.chat.LogItem) HelperString(net.iGap.helper.HelperString) ViewMaker(net.iGap.adapter.items.chat.ViewMaker) StructBottomSheet(net.iGap.module.structs.StructBottomSheet) OnFileSelectedListener(net.iGap.module.FileListerDialog.OnFileSelectedListener) ProtoGlobal(net.iGap.proto.ProtoGlobal) ImageWithTextItem(net.iGap.adapter.items.chat.ImageWithTextItem) ChannelChatRole(net.iGap.module.enums.ChannelChatRole) GROUP(net.iGap.proto.ProtoGlobal.Room.Type.GROUP) Collections(java.util.Collections) MimeTypeMap(android.webkit.MimeTypeMap) AbstractMessage(net.iGap.adapter.items.chat.AbstractMessage) RealmAttachment(net.iGap.realm.RealmAttachment) RealmQuery(io.realm.RealmQuery) RealmString(net.iGap.realm.RealmString) HelperString(net.iGap.helper.HelperString) RealmRegisteredInfo(net.iGap.realm.RealmRegisteredInfo) OnVoiceRecord(net.iGap.observers.interfaces.OnVoiceRecord) VoiceRecord(net.iGap.module.VoiceRecord) RealmGroupRoom(net.iGap.realm.RealmGroupRoom) RealmChannelRoom(net.iGap.realm.RealmChannelRoom) RealmRoomMessage(net.iGap.realm.RealmRoomMessage)

Aggregations

StructIGSticker (net.iGap.fragments.emoji.struct.StructIGSticker)15 KeyEvent (android.view.KeyEvent)6 Gson (com.google.gson.Gson)6 ArrayList (java.util.ArrayList)5 G (net.iGap.G)5 DbManager (net.iGap.module.accountManager.DbManager)5 Animator (android.animation.Animator)4 EmojiView (net.iGap.libs.emojiKeyboard.EmojiView)4 RealmStickerItem (net.iGap.realm.RealmStickerItem)4 AnimatorListenerAdapter (android.animation.AnimatorListenerAdapter)3 AnimatorSet (android.animation.AnimatorSet)3 ObjectAnimator (android.animation.ObjectAnimator)3 SuppressLint (android.annotation.SuppressLint)3 Context (android.content.Context)3 MODE_PRIVATE (android.content.Context.MODE_PRIVATE)3 SharedPreferences (android.content.SharedPreferences)3 RecyclerView (androidx.recyclerview.widget.RecyclerView)3 JsonObject (com.google.gson.JsonObject)3 CompositeDisposable (io.reactivex.disposables.CompositeDisposable)3 Disposable (io.reactivex.disposables.Disposable)3