Skip to content

Commit

Permalink
#89 [FIX] : change comment hidekeyboard
Browse files Browse the repository at this point in the history
  • Loading branch information
sohyun127 committed Sep 30, 2024
1 parent 9d9e5b6 commit 9cdd48e
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package com.teamwable.homedetail

import android.content.res.ColorStateList
import android.os.Bundle
import android.view.MotionEvent
import androidx.core.widget.doAfterTextChanged
import androidx.fragment.app.viewModels
import androidx.lifecycle.flowWithLifecycle
Expand All @@ -11,6 +12,7 @@ import androidx.navigation.fragment.navArgs
import androidx.paging.LoadState
import androidx.paging.map
import androidx.recyclerview.widget.ConcatAdapter
import androidx.recyclerview.widget.RecyclerView
import com.teamwable.common.util.AmplitudeHomeTag.CLICK_WRITE_COMMENT
import com.teamwable.common.util.AmplitudeUtil.trackEvent
import com.teamwable.home.R
Expand Down Expand Up @@ -117,6 +119,7 @@ class HomeDetailFragment : BindingFragment<FragmentHomeDetailBinding>(FragmentHo
scrollToBottomOnCommentAdded()
initEditTextHint(feed.postAuthorNickname)
initEditTextBtn(feed.feedId, commentSnackbar)
initRvClickListenerToHideKeyboard()
}

private fun initEditTextHint(nickname: String) {
Expand Down Expand Up @@ -177,7 +180,9 @@ class HomeDetailFragment : BindingFragment<FragmentHomeDetailBinding>(FragmentHo
}

private fun onClickFeedItem() = object : FeedClickListener {
override fun onItemClick(feed: Feed) {}
override fun onItemClick(feed: Feed) {
requireActivity().hideKeyboard(binding.root)
}

override fun onGhostBtnClick(postAuthorId: Long, feedId: Long) {
feedActionHandler.onGhostBtnClick(DialogType.TRANSPARENCY) {
Expand Down Expand Up @@ -243,7 +248,9 @@ class HomeDetailFragment : BindingFragment<FragmentHomeDetailBinding>(FragmentHo
)
}

override fun onItemClick(feedId: Long) {}
override fun onItemClick(feedId: Long) {
requireActivity().hideKeyboard(binding.root)
}
}

private fun handleProfileNavigation(id: Long) {
Expand Down Expand Up @@ -274,7 +281,7 @@ class HomeDetailFragment : BindingFragment<FragmentHomeDetailBinding>(FragmentHo
val transformedPagingData = pagingData.map {
val transformedFeed = FeedTransformer.handleCommentsData(it, binding.root.context)
val isAuth = viewModel.fetchUserType(transformedFeed.postAuthorId) == ProfileUserType.AUTH
transformedFeed.copy(isAuth = isAuth)
transformedFeed.copy(isAuth = isAuth, feedId = feed.feedId)
}
commentAdapter.submitData(transformedPagingData)
}
Expand Down Expand Up @@ -332,6 +339,23 @@ class HomeDetailFragment : BindingFragment<FragmentHomeDetailBinding>(FragmentHo
)
}

private fun initRvClickListenerToHideKeyboard() {
binding.rvHomeDetail.addOnItemTouchListener(object : RecyclerView.OnItemTouchListener {
override fun onInterceptTouchEvent(rv: RecyclerView, e: MotionEvent): Boolean {
val child = rv.findChildViewUnder(e.x, e.y)
if (child == null) {
requireActivity().hideKeyboard(binding.root)
return true
}
return false
}

override fun onTouchEvent(rv: RecyclerView, e: MotionEvent) {}

override fun onRequestDisallowInterceptTouchEvent(disallowIntercept: Boolean) {}
})
}

companion object {
const val POSTING_MAX = 499
}
Expand Down
8 changes: 0 additions & 8 deletions feature/main/src/main/java/com/teamwable/main/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ import android.content.Context
import android.content.Intent
import android.content.pm.ActivityInfo
import android.os.Bundle
import android.view.MotionEvent
import android.view.View
import androidx.activity.result.contract.ActivityResultContracts
import androidx.activity.viewModels
import androidx.appcompat.app.AppCompatActivity
Expand All @@ -26,7 +24,6 @@ import com.teamwable.common.util.AmplitudeUtil.trackEvent
import com.teamwable.home.HomeFragment
import com.teamwable.main.databinding.ActivityMainBinding
import com.teamwable.ui.extensions.colorOf
import com.teamwable.ui.extensions.hideKeyboard
import com.teamwable.ui.extensions.toast
import com.teamwable.ui.extensions.visible
import com.teamwable.ui.util.Navigation
Expand Down Expand Up @@ -67,11 +64,6 @@ class MainActivity : AppCompatActivity(), Navigation {
appUpdateHelper.resumeUpdateIfNeeded(activityResultLauncher)
}

override fun dispatchTouchEvent(ev: MotionEvent?): Boolean {
hideKeyboard(currentFocus ?: View(this))
return super.dispatchTouchEvent(ev)
}

private fun setInAppUpdate() {
appUpdateHelper = AppUpdateHandler(this)
appUpdateHelper.checkForAppUpdate(activityResultLauncher)
Expand Down

0 comments on commit 9cdd48e

Please sign in to comment.