mirror of
https://gitlab.linphone.org/BC/public/linphone-android.git
synced 2026-05-03 06:46:25 +00:00
Renamed history related code & layout
This commit is contained in:
parent
8011bd997c
commit
856e3542e8
49 changed files with 163 additions and 163 deletions
|
|
@ -41,11 +41,11 @@ import org.linphone.R
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.databinding.ContactFragmentBinding
|
import org.linphone.databinding.ContactFragmentBinding
|
||||||
import org.linphone.ui.main.MainActivity
|
import org.linphone.ui.main.MainActivity
|
||||||
import org.linphone.ui.main.calls.model.ConfirmationDialogModel
|
|
||||||
import org.linphone.ui.main.contacts.model.NumberOrAddressPickerDialogModel
|
import org.linphone.ui.main.contacts.model.NumberOrAddressPickerDialogModel
|
||||||
import org.linphone.ui.main.contacts.model.TrustCallDialogModel
|
import org.linphone.ui.main.contacts.model.TrustCallDialogModel
|
||||||
import org.linphone.ui.main.contacts.viewmodel.ContactViewModel
|
import org.linphone.ui.main.contacts.viewmodel.ContactViewModel
|
||||||
import org.linphone.ui.main.fragment.GenericFragment
|
import org.linphone.ui.main.fragment.GenericFragment
|
||||||
|
import org.linphone.ui.main.history.model.ConfirmationDialogModel
|
||||||
import org.linphone.utils.DialogUtils
|
import org.linphone.utils.DialogUtils
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -140,7 +140,7 @@ class ContactsFragment : GenericFragment() {
|
||||||
// To prevent any previously seen contact to show up when navigating back to here later
|
// To prevent any previously seen contact to show up when navigating back to here later
|
||||||
binding.contactsNavContainer.findNavController().popBackStack()
|
binding.contactsNavContainer.findNavController().popBackStack()
|
||||||
|
|
||||||
val action = ContactsFragmentDirections.actionContactsFragmentToCallsFragment()
|
val action = ContactsFragmentDirections.actionContactsFragmentToHistoryFragment()
|
||||||
findNavController().navigate(action)
|
findNavController().navigate(action)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -41,10 +41,10 @@ import org.linphone.R
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.databinding.ContactNewOrEditFragmentBinding
|
import org.linphone.databinding.ContactNewOrEditFragmentBinding
|
||||||
import org.linphone.ui.main.MainActivity
|
import org.linphone.ui.main.MainActivity
|
||||||
import org.linphone.ui.main.calls.model.ConfirmationDialogModel
|
|
||||||
import org.linphone.ui.main.contacts.model.NewOrEditNumberOrAddressModel
|
import org.linphone.ui.main.contacts.model.NewOrEditNumberOrAddressModel
|
||||||
import org.linphone.ui.main.contacts.viewmodel.ContactNewOrEditViewModel
|
import org.linphone.ui.main.contacts.viewmodel.ContactNewOrEditViewModel
|
||||||
import org.linphone.ui.main.fragment.GenericFragment
|
import org.linphone.ui.main.fragment.GenericFragment
|
||||||
|
import org.linphone.ui.main.history.model.ConfirmationDialogModel
|
||||||
import org.linphone.utils.DialogUtils
|
import org.linphone.utils.DialogUtils
|
||||||
import org.linphone.utils.FileUtils
|
import org.linphone.utils.FileUtils
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -40,10 +40,10 @@ import org.linphone.R
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.databinding.ContactNewOrEditFragmentBinding
|
import org.linphone.databinding.ContactNewOrEditFragmentBinding
|
||||||
import org.linphone.ui.main.MainActivity
|
import org.linphone.ui.main.MainActivity
|
||||||
import org.linphone.ui.main.calls.model.ConfirmationDialogModel
|
|
||||||
import org.linphone.ui.main.contacts.model.NewOrEditNumberOrAddressModel
|
import org.linphone.ui.main.contacts.model.NewOrEditNumberOrAddressModel
|
||||||
import org.linphone.ui.main.contacts.viewmodel.ContactNewOrEditViewModel
|
import org.linphone.ui.main.contacts.viewmodel.ContactNewOrEditViewModel
|
||||||
import org.linphone.ui.main.fragment.GenericFragment
|
import org.linphone.ui.main.fragment.GenericFragment
|
||||||
|
import org.linphone.ui.main.history.model.ConfirmationDialogModel
|
||||||
import org.linphone.utils.DialogUtils
|
import org.linphone.utils.DialogUtils
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
import org.linphone.utils.FileUtils
|
import org.linphone.utils.FileUtils
|
||||||
|
|
|
||||||
|
|
@ -77,7 +77,7 @@ class BottomNavBarFragment : Fragment() {
|
||||||
}
|
}
|
||||||
|
|
||||||
binding.setOnCallsClicked {
|
binding.setOnCallsClicked {
|
||||||
if (sharedViewModel.currentlyDisplayedFragment.value != R.id.callsFragment) {
|
if (sharedViewModel.currentlyDisplayedFragment.value != R.id.historyFragment) {
|
||||||
sharedViewModel.navigateToCallsEvent.value = Event(true)
|
sharedViewModel.navigateToCallsEvent.value = Event(true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -92,7 +92,7 @@ class BottomNavBarFragment : Fragment() {
|
||||||
|
|
||||||
sharedViewModel.currentlyDisplayedFragment.observe(viewLifecycleOwner) {
|
sharedViewModel.currentlyDisplayedFragment.observe(viewLifecycleOwner) {
|
||||||
viewModel.contactsSelected.value = it == R.id.contactsFragment
|
viewModel.contactsSelected.value = it == R.id.contactsFragment
|
||||||
viewModel.callsSelected.value = it == R.id.callsFragment
|
viewModel.callsSelected.value = it == R.id.historyFragment
|
||||||
}
|
}
|
||||||
|
|
||||||
sharedViewModel.resetMissedCallsCountEvent.observe(viewLifecycleOwner) {
|
sharedViewModel.resetMissedCallsCountEvent.observe(viewLifecycleOwner) {
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.adapter
|
package org.linphone.ui.main.history.adapter
|
||||||
|
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
|
|
@ -28,16 +28,16 @@ import androidx.recyclerview.widget.DiffUtil
|
||||||
import androidx.recyclerview.widget.ListAdapter
|
import androidx.recyclerview.widget.ListAdapter
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.databinding.CallHistoryListCellBinding
|
import org.linphone.databinding.HistoryContactListCellBinding
|
||||||
import org.linphone.ui.main.calls.model.CallLogHistoryModel
|
import org.linphone.ui.main.history.model.CallLogHistoryModel
|
||||||
|
|
||||||
class CallHistoryListAdapter(
|
class ContactHistoryListAdapter(
|
||||||
private val viewLifecycleOwner: LifecycleOwner
|
private val viewLifecycleOwner: LifecycleOwner
|
||||||
) : ListAdapter<CallLogHistoryModel, RecyclerView.ViewHolder>(CallHistoryDiffCallback()) {
|
) : ListAdapter<CallLogHistoryModel, RecyclerView.ViewHolder>(CallHistoryDiffCallback()) {
|
||||||
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
|
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
|
||||||
val binding: CallHistoryListCellBinding = DataBindingUtil.inflate(
|
val binding: HistoryContactListCellBinding = DataBindingUtil.inflate(
|
||||||
LayoutInflater.from(parent.context),
|
LayoutInflater.from(parent.context),
|
||||||
R.layout.call_history_list_cell,
|
R.layout.history_contact_list_cell,
|
||||||
parent,
|
parent,
|
||||||
false
|
false
|
||||||
)
|
)
|
||||||
|
|
@ -45,11 +45,11 @@ class CallHistoryListAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
|
override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
|
||||||
(holder as CallHistoryListAdapter.ViewHolder).bind(getItem(position))
|
(holder as ContactHistoryListAdapter.ViewHolder).bind(getItem(position))
|
||||||
}
|
}
|
||||||
|
|
||||||
inner class ViewHolder(
|
inner class ViewHolder(
|
||||||
val binding: CallHistoryListCellBinding
|
val binding: HistoryContactListCellBinding
|
||||||
) : RecyclerView.ViewHolder(binding.root) {
|
) : RecyclerView.ViewHolder(binding.root) {
|
||||||
@UiThread
|
@UiThread
|
||||||
fun bind(callLogHistoryModel: CallLogHistoryModel) {
|
fun bind(callLogHistoryModel: CallLogHistoryModel) {
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package org.linphone.ui.main.calls.adapter
|
package org.linphone.ui.main.history.adapter
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
|
|
@ -12,10 +12,10 @@ import androidx.recyclerview.widget.DiffUtil
|
||||||
import androidx.recyclerview.widget.ListAdapter
|
import androidx.recyclerview.widget.ListAdapter
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.databinding.CallSuggestionListCellBinding
|
|
||||||
import org.linphone.databinding.CallSuggestionListDecorationBinding
|
|
||||||
import org.linphone.databinding.ContactListCellBinding
|
import org.linphone.databinding.ContactListCellBinding
|
||||||
import org.linphone.ui.main.calls.model.ContactOrSuggestionModel
|
import org.linphone.databinding.StartCallSuggestionListCellBinding
|
||||||
|
import org.linphone.databinding.StartCallSuggestionListDecorationBinding
|
||||||
|
import org.linphone.ui.main.history.model.ContactOrSuggestionModel
|
||||||
import org.linphone.utils.AppUtils
|
import org.linphone.utils.AppUtils
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
import org.linphone.utils.HeaderAdapter
|
import org.linphone.utils.HeaderAdapter
|
||||||
|
|
@ -50,7 +50,7 @@ class ContactsAndSuggestionsListAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getHeaderViewForPosition(context: Context, position: Int): View {
|
override fun getHeaderViewForPosition(context: Context, position: Int): View {
|
||||||
val binding = CallSuggestionListDecorationBinding.inflate(LayoutInflater.from(context))
|
val binding = StartCallSuggestionListDecorationBinding.inflate(LayoutInflater.from(context))
|
||||||
binding.header.text = if (position == 0) {
|
binding.header.text = if (position == 0) {
|
||||||
AppUtils.getString(R.string.call_start_contacts_list_title)
|
AppUtils.getString(R.string.call_start_contacts_list_title)
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -76,9 +76,9 @@ class ContactsAndSuggestionsListAdapter(
|
||||||
ContactViewHolder(binding)
|
ContactViewHolder(binding)
|
||||||
}
|
}
|
||||||
else -> {
|
else -> {
|
||||||
val binding: CallSuggestionListCellBinding = DataBindingUtil.inflate(
|
val binding: StartCallSuggestionListCellBinding = DataBindingUtil.inflate(
|
||||||
LayoutInflater.from(parent.context),
|
LayoutInflater.from(parent.context),
|
||||||
R.layout.call_suggestion_list_cell,
|
R.layout.start_call_suggestion_list_cell,
|
||||||
parent,
|
parent,
|
||||||
false
|
false
|
||||||
)
|
)
|
||||||
|
|
@ -116,7 +116,7 @@ class ContactsAndSuggestionsListAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
inner class SuggestionViewHolder(
|
inner class SuggestionViewHolder(
|
||||||
val binding: CallSuggestionListCellBinding
|
val binding: StartCallSuggestionListCellBinding
|
||||||
) : RecyclerView.ViewHolder(binding.root) {
|
) : RecyclerView.ViewHolder(binding.root) {
|
||||||
@UiThread
|
@UiThread
|
||||||
fun bind(contactOrSuggestionModel: ContactOrSuggestionModel) {
|
fun bind(contactOrSuggestionModel: ContactOrSuggestionModel) {
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package org.linphone.ui.main.calls.adapter
|
package org.linphone.ui.main.history.adapter
|
||||||
|
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
|
|
@ -10,11 +10,11 @@ import androidx.recyclerview.widget.DiffUtil
|
||||||
import androidx.recyclerview.widget.ListAdapter
|
import androidx.recyclerview.widget.ListAdapter
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.databinding.CallListCellBinding
|
import org.linphone.databinding.HistoryListCellBinding
|
||||||
import org.linphone.ui.main.calls.model.CallLogModel
|
import org.linphone.ui.main.history.model.CallLogModel
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
|
|
||||||
class CallsListAdapter(
|
class HistoryListAdapter(
|
||||||
private val viewLifecycleOwner: LifecycleOwner
|
private val viewLifecycleOwner: LifecycleOwner
|
||||||
) : ListAdapter<CallLogModel, RecyclerView.ViewHolder>(CallLogDiffCallback()) {
|
) : ListAdapter<CallLogModel, RecyclerView.ViewHolder>(CallLogDiffCallback()) {
|
||||||
var selectedAdapterPosition = -1
|
var selectedAdapterPosition = -1
|
||||||
|
|
@ -32,9 +32,9 @@ class CallsListAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
|
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
|
||||||
val binding: CallListCellBinding = DataBindingUtil.inflate(
|
val binding: HistoryListCellBinding = DataBindingUtil.inflate(
|
||||||
LayoutInflater.from(parent.context),
|
LayoutInflater.from(parent.context),
|
||||||
R.layout.call_list_cell,
|
R.layout.history_list_cell,
|
||||||
parent,
|
parent,
|
||||||
false
|
false
|
||||||
)
|
)
|
||||||
|
|
@ -51,7 +51,7 @@ class CallsListAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
inner class ViewHolder(
|
inner class ViewHolder(
|
||||||
val binding: CallListCellBinding
|
val binding: HistoryListCellBinding
|
||||||
) : RecyclerView.ViewHolder(binding.root) {
|
) : RecyclerView.ViewHolder(binding.root) {
|
||||||
@UiThread
|
@UiThread
|
||||||
fun bind(callLogModel: CallLogModel) {
|
fun bind(callLogModel: CallLogModel) {
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.fragment
|
package org.linphone.ui.main.history.fragment
|
||||||
|
|
||||||
import android.content.ClipData
|
import android.content.ClipData
|
||||||
import android.content.ClipboardManager
|
import android.content.ClipboardManager
|
||||||
|
|
@ -37,34 +37,34 @@ import androidx.navigation.fragment.navArgs
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.databinding.CallFragmentBinding
|
import org.linphone.databinding.HistoryContactFragmentBinding
|
||||||
import org.linphone.databinding.CallPopupMenuBinding
|
import org.linphone.databinding.HistoryContactPopupMenuBinding
|
||||||
import org.linphone.ui.main.MainActivity
|
import org.linphone.ui.main.MainActivity
|
||||||
import org.linphone.ui.main.calls.adapter.CallHistoryListAdapter
|
|
||||||
import org.linphone.ui.main.calls.model.ConfirmationDialogModel
|
|
||||||
import org.linphone.ui.main.calls.viewmodel.CallLogViewModel
|
|
||||||
import org.linphone.ui.main.fragment.GenericFragment
|
import org.linphone.ui.main.fragment.GenericFragment
|
||||||
|
import org.linphone.ui.main.history.adapter.ContactHistoryListAdapter
|
||||||
|
import org.linphone.ui.main.history.model.ConfirmationDialogModel
|
||||||
|
import org.linphone.ui.main.history.viewmodel.ContactHistoryViewModel
|
||||||
import org.linphone.utils.DialogUtils
|
import org.linphone.utils.DialogUtils
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
|
|
||||||
@UiThread
|
@UiThread
|
||||||
class CallFragment : GenericFragment() {
|
class HistoryContactFragment : GenericFragment() {
|
||||||
companion object {
|
companion object {
|
||||||
private const val TAG = "[Call Fragment]"
|
private const val TAG = "[Call Fragment]"
|
||||||
}
|
}
|
||||||
|
|
||||||
private lateinit var binding: CallFragmentBinding
|
private lateinit var binding: HistoryContactFragmentBinding
|
||||||
private lateinit var viewModel: CallLogViewModel
|
private lateinit var viewModel: ContactHistoryViewModel
|
||||||
private lateinit var adapter: CallHistoryListAdapter
|
private lateinit var adapter: ContactHistoryListAdapter
|
||||||
|
|
||||||
private val args: CallFragmentArgs by navArgs()
|
private val args: HistoryContactFragmentArgs by navArgs()
|
||||||
|
|
||||||
override fun onCreateView(
|
override fun onCreateView(
|
||||||
inflater: LayoutInflater,
|
inflater: LayoutInflater,
|
||||||
container: ViewGroup?,
|
container: ViewGroup?,
|
||||||
savedInstanceState: Bundle?
|
savedInstanceState: Bundle?
|
||||||
): View {
|
): View {
|
||||||
binding = CallFragmentBinding.inflate(layoutInflater)
|
binding = HistoryContactFragmentBinding.inflate(layoutInflater)
|
||||||
return binding.root
|
return binding.root
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -80,14 +80,14 @@ class CallFragment : GenericFragment() {
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
|
|
||||||
viewModel = ViewModelProvider(this)[CallLogViewModel::class.java]
|
viewModel = ViewModelProvider(this)[ContactHistoryViewModel::class.java]
|
||||||
binding.viewModel = viewModel
|
binding.viewModel = viewModel
|
||||||
|
|
||||||
val callId = args.callId
|
val callId = args.callId
|
||||||
Log.i("$TAG Looking up for call log with call id [$callId]")
|
Log.i("$TAG Looking up for call log with call id [$callId]")
|
||||||
viewModel.findCallLogByCallId(callId)
|
viewModel.findCallLogByCallId(callId)
|
||||||
|
|
||||||
adapter = CallHistoryListAdapter(viewLifecycleOwner)
|
adapter = ContactHistoryListAdapter(viewLifecycleOwner)
|
||||||
binding.callHistory.setHasFixedSize(true)
|
binding.callHistory.setHasFixedSize(true)
|
||||||
binding.callHistory.adapter = adapter
|
binding.callHistory.adapter = adapter
|
||||||
|
|
||||||
|
|
@ -144,9 +144,9 @@ class CallFragment : GenericFragment() {
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun showPopupMenu() {
|
private fun showPopupMenu() {
|
||||||
val popupView: CallPopupMenuBinding = DataBindingUtil.inflate(
|
val popupView: HistoryContactPopupMenuBinding = DataBindingUtil.inflate(
|
||||||
LayoutInflater.from(requireContext()),
|
LayoutInflater.from(requireContext()),
|
||||||
R.layout.call_popup_menu,
|
R.layout.history_contact_popup_menu,
|
||||||
null,
|
null,
|
||||||
false
|
false
|
||||||
)
|
)
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.fragment
|
package org.linphone.ui.main.history.fragment
|
||||||
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
|
|
@ -32,24 +32,24 @@ import androidx.navigation.fragment.findNavController
|
||||||
import androidx.slidingpanelayout.widget.SlidingPaneLayout
|
import androidx.slidingpanelayout.widget.SlidingPaneLayout
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.databinding.CallsFragmentBinding
|
import org.linphone.databinding.HistoryFragmentBinding
|
||||||
import org.linphone.ui.main.fragment.GenericFragment
|
import org.linphone.ui.main.fragment.GenericFragment
|
||||||
import org.linphone.utils.SlidingPaneBackPressedCallback
|
import org.linphone.utils.SlidingPaneBackPressedCallback
|
||||||
|
|
||||||
@UiThread
|
@UiThread
|
||||||
class CallsFragment : GenericFragment() {
|
class HistoryFragment : GenericFragment() {
|
||||||
companion object {
|
companion object {
|
||||||
private const val TAG = "[Calls Fragment]"
|
private const val TAG = "[Calls Fragment]"
|
||||||
}
|
}
|
||||||
|
|
||||||
private lateinit var binding: CallsFragmentBinding
|
private lateinit var binding: HistoryFragmentBinding
|
||||||
|
|
||||||
override fun onCreateView(
|
override fun onCreateView(
|
||||||
inflater: LayoutInflater,
|
inflater: LayoutInflater,
|
||||||
container: ViewGroup?,
|
container: ViewGroup?,
|
||||||
savedInstanceState: Bundle?
|
savedInstanceState: Bundle?
|
||||||
): View {
|
): View {
|
||||||
binding = CallsFragmentBinding.inflate(layoutInflater)
|
binding = HistoryFragmentBinding.inflate(layoutInflater)
|
||||||
return binding.root
|
return binding.root
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -116,8 +116,8 @@ class CallsFragment : GenericFragment() {
|
||||||
) {
|
) {
|
||||||
it.consume { callId ->
|
it.consume { callId ->
|
||||||
Log.i("$TAG Displaying call log with call ID [$callId]")
|
Log.i("$TAG Displaying call log with call ID [$callId]")
|
||||||
val navController = binding.callsNavContainer.findNavController()
|
val navController = binding.historyNavContainer.findNavController()
|
||||||
val action = CallFragmentDirections.actionGlobalCallFragment(
|
val action = HistoryContactFragmentDirections.actionGlobalHistoryContactFragment(
|
||||||
callId
|
callId
|
||||||
)
|
)
|
||||||
navController.navigate(action)
|
navController.navigate(action)
|
||||||
|
|
@ -126,11 +126,11 @@ class CallsFragment : GenericFragment() {
|
||||||
|
|
||||||
sharedViewModel.navigateToContactsEvent.observe(viewLifecycleOwner) {
|
sharedViewModel.navigateToContactsEvent.observe(viewLifecycleOwner) {
|
||||||
it.consume {
|
it.consume {
|
||||||
if (findNavController().currentDestination?.id == R.id.callsFragment) {
|
if (findNavController().currentDestination?.id == R.id.historyFragment) {
|
||||||
// To prevent any previously seen contact to show up when navigating back to here later
|
// To prevent any previously seen contact to show up when navigating back to here later
|
||||||
binding.callsNavContainer.findNavController().popBackStack()
|
binding.historyNavContainer.findNavController().popBackStack()
|
||||||
|
|
||||||
val action = CallsFragmentDirections.actionCallsFragmentToContactsFragment()
|
val action = HistoryFragmentDirections.actionHistoryFragmentToContactsFragment()
|
||||||
findNavController().navigate(action)
|
findNavController().navigate(action)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -139,6 +139,6 @@ class CallsFragment : GenericFragment() {
|
||||||
|
|
||||||
override fun onResume() {
|
override fun onResume() {
|
||||||
super.onResume()
|
super.onResume()
|
||||||
sharedViewModel.currentlyDisplayedFragment.value = R.id.callsFragment
|
sharedViewModel.currentlyDisplayedFragment.value = R.id.historyFragment
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.fragment
|
package org.linphone.ui.main.history.fragment
|
||||||
|
|
||||||
import android.content.ClipData
|
import android.content.ClipData
|
||||||
import android.content.ClipboardManager
|
import android.content.ClipboardManager
|
||||||
|
|
@ -36,36 +36,36 @@ import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import org.linphone.LinphoneApplication.Companion.coreContext
|
import org.linphone.LinphoneApplication.Companion.coreContext
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.databinding.CallsListFragmentBinding
|
import org.linphone.databinding.HistoryListFragmentBinding
|
||||||
import org.linphone.databinding.CallsListPopupMenuBinding
|
import org.linphone.databinding.HistoryListPopupMenuBinding
|
||||||
import org.linphone.ui.main.MainActivity
|
import org.linphone.ui.main.MainActivity
|
||||||
import org.linphone.ui.main.calls.adapter.CallsListAdapter
|
|
||||||
import org.linphone.ui.main.calls.model.ConfirmationDialogModel
|
|
||||||
import org.linphone.ui.main.calls.viewmodel.CallsListViewModel
|
|
||||||
import org.linphone.ui.main.fragment.AbstractTopBarFragment
|
import org.linphone.ui.main.fragment.AbstractTopBarFragment
|
||||||
|
import org.linphone.ui.main.history.adapter.HistoryListAdapter
|
||||||
|
import org.linphone.ui.main.history.model.ConfirmationDialogModel
|
||||||
|
import org.linphone.ui.main.history.viewmodel.HistoryListViewModel
|
||||||
import org.linphone.utils.DialogUtils
|
import org.linphone.utils.DialogUtils
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
import org.linphone.utils.hideKeyboard
|
import org.linphone.utils.hideKeyboard
|
||||||
import org.linphone.utils.showKeyboard
|
import org.linphone.utils.showKeyboard
|
||||||
|
|
||||||
@UiThread
|
@UiThread
|
||||||
class CallsListFragment : AbstractTopBarFragment() {
|
class HistoryListFragment : AbstractTopBarFragment() {
|
||||||
companion object {
|
companion object {
|
||||||
private const val TAG = "[Calls List Fragment]"
|
private const val TAG = "[Calls List Fragment]"
|
||||||
}
|
}
|
||||||
|
|
||||||
private lateinit var binding: CallsListFragmentBinding
|
private lateinit var binding: HistoryListFragmentBinding
|
||||||
|
|
||||||
private lateinit var listViewModel: CallsListViewModel
|
private lateinit var listViewModel: HistoryListViewModel
|
||||||
|
|
||||||
private lateinit var adapter: CallsListAdapter
|
private lateinit var adapter: HistoryListAdapter
|
||||||
|
|
||||||
override fun onCreateView(
|
override fun onCreateView(
|
||||||
inflater: LayoutInflater,
|
inflater: LayoutInflater,
|
||||||
container: ViewGroup?,
|
container: ViewGroup?,
|
||||||
savedInstanceState: Bundle?
|
savedInstanceState: Bundle?
|
||||||
): View {
|
): View {
|
||||||
binding = CallsListFragmentBinding.inflate(layoutInflater)
|
binding = HistoryListFragmentBinding.inflate(layoutInflater)
|
||||||
return binding.root
|
return binding.root
|
||||||
}
|
}
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
|
|
@ -73,19 +73,19 @@ class CallsListFragment : AbstractTopBarFragment() {
|
||||||
postponeEnterTransition()
|
postponeEnterTransition()
|
||||||
|
|
||||||
listViewModel = requireActivity().run {
|
listViewModel = requireActivity().run {
|
||||||
ViewModelProvider(this)[CallsListViewModel::class.java]
|
ViewModelProvider(this)[HistoryListViewModel::class.java]
|
||||||
}
|
}
|
||||||
|
|
||||||
binding.lifecycleOwner = viewLifecycleOwner
|
binding.lifecycleOwner = viewLifecycleOwner
|
||||||
binding.viewModel = listViewModel
|
binding.viewModel = listViewModel
|
||||||
|
|
||||||
adapter = CallsListAdapter(viewLifecycleOwner)
|
adapter = HistoryListAdapter(viewLifecycleOwner)
|
||||||
binding.callsList.setHasFixedSize(true)
|
binding.historyList.setHasFixedSize(true)
|
||||||
binding.callsList.adapter = adapter
|
binding.historyList.adapter = adapter
|
||||||
|
|
||||||
adapter.callLogLongClickedEvent.observe(viewLifecycleOwner) {
|
adapter.callLogLongClickedEvent.observe(viewLifecycleOwner) {
|
||||||
it.consume { model ->
|
it.consume { model ->
|
||||||
val modalBottomSheet = CallsListMenuDialogFragment(
|
val modalBottomSheet = HistoryMenuDialogFragment(
|
||||||
model.friendExists,
|
model.friendExists,
|
||||||
{ // onDismiss
|
{ // onDismiss
|
||||||
adapter.resetSelection()
|
adapter.resetSelection()
|
||||||
|
|
@ -124,7 +124,7 @@ class CallsListFragment : AbstractTopBarFragment() {
|
||||||
listViewModel.applyFilter()
|
listViewModel.applyFilter()
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
modalBottomSheet.show(parentFragmentManager, CallsListMenuDialogFragment.TAG)
|
modalBottomSheet.show(parentFragmentManager, HistoryMenuDialogFragment.TAG)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -145,7 +145,7 @@ class CallsListFragment : AbstractTopBarFragment() {
|
||||||
}
|
}
|
||||||
|
|
||||||
val layoutManager = LinearLayoutManager(requireContext())
|
val layoutManager = LinearLayoutManager(requireContext())
|
||||||
binding.callsList.layoutManager = layoutManager
|
binding.historyList.layoutManager = layoutManager
|
||||||
|
|
||||||
listViewModel.callLogs.observe(viewLifecycleOwner) {
|
listViewModel.callLogs.observe(viewLifecycleOwner) {
|
||||||
val currentCount = adapter.itemCount
|
val currentCount = adapter.itemCount
|
||||||
|
|
@ -158,7 +158,7 @@ class CallsListFragment : AbstractTopBarFragment() {
|
||||||
sharedViewModel.callsListReadyToBeDisplayedEvent.value = Event(true)
|
sharedViewModel.callsListReadyToBeDisplayedEvent.value = Event(true)
|
||||||
}
|
}
|
||||||
} else if (currentCount < it.size) {
|
} else if (currentCount < it.size) {
|
||||||
binding.callsList.scrollToPosition(0)
|
binding.historyList.scrollToPosition(0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -235,9 +235,9 @@ class CallsListFragment : AbstractTopBarFragment() {
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun showPopupMenu() {
|
private fun showPopupMenu() {
|
||||||
val popupView: CallsListPopupMenuBinding = DataBindingUtil.inflate(
|
val popupView: HistoryListPopupMenuBinding = DataBindingUtil.inflate(
|
||||||
LayoutInflater.from(requireContext()),
|
LayoutInflater.from(requireContext()),
|
||||||
R.layout.calls_list_popup_menu,
|
R.layout.history_list_popup_menu,
|
||||||
null,
|
null,
|
||||||
false
|
false
|
||||||
)
|
)
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.fragment
|
package org.linphone.ui.main.history.fragment
|
||||||
|
|
||||||
import android.content.DialogInterface
|
import android.content.DialogInterface
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
|
@ -26,10 +26,10 @@ import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import androidx.annotation.UiThread
|
import androidx.annotation.UiThread
|
||||||
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
|
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
|
||||||
import org.linphone.databinding.CallsListLongPressMenuBinding
|
import org.linphone.databinding.HistoryListLongPressMenuBinding
|
||||||
|
|
||||||
@UiThread
|
@UiThread
|
||||||
class CallsListMenuDialogFragment(
|
class HistoryMenuDialogFragment(
|
||||||
private val contactExists: Boolean,
|
private val contactExists: Boolean,
|
||||||
private val onDismiss: (() -> Unit)? = null,
|
private val onDismiss: (() -> Unit)? = null,
|
||||||
private val onAddToContact: (() -> Unit)? = null,
|
private val onAddToContact: (() -> Unit)? = null,
|
||||||
|
|
@ -56,7 +56,7 @@ class CallsListMenuDialogFragment(
|
||||||
container: ViewGroup?,
|
container: ViewGroup?,
|
||||||
savedInstanceState: Bundle?
|
savedInstanceState: Bundle?
|
||||||
): View {
|
): View {
|
||||||
val view = CallsListLongPressMenuBinding.inflate(layoutInflater)
|
val view = HistoryListLongPressMenuBinding.inflate(layoutInflater)
|
||||||
view.contactExists = contactExists
|
view.contactExists = contactExists
|
||||||
|
|
||||||
view.setCopyNumberClickListener {
|
view.setCopyNumberClickListener {
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.fragment
|
package org.linphone.ui.main.history.fragment
|
||||||
|
|
||||||
import android.app.Dialog
|
import android.app.Dialog
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
|
@ -33,14 +33,14 @@ import org.linphone.LinphoneApplication.Companion.coreContext
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.contacts.getListOfSipAddressesAndPhoneNumbers
|
import org.linphone.contacts.getListOfSipAddressesAndPhoneNumbers
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.databinding.CallStartFragmentBinding
|
import org.linphone.databinding.StartCallFragmentBinding
|
||||||
import org.linphone.ui.main.calls.adapter.ContactsAndSuggestionsListAdapter
|
|
||||||
import org.linphone.ui.main.calls.model.ContactOrSuggestionModel
|
|
||||||
import org.linphone.ui.main.calls.viewmodel.StartCallViewModel
|
|
||||||
import org.linphone.ui.main.contacts.model.ContactNumberOrAddressClickListener
|
import org.linphone.ui.main.contacts.model.ContactNumberOrAddressClickListener
|
||||||
import org.linphone.ui.main.contacts.model.ContactNumberOrAddressModel
|
import org.linphone.ui.main.contacts.model.ContactNumberOrAddressModel
|
||||||
import org.linphone.ui.main.contacts.model.NumberOrAddressPickerDialogModel
|
import org.linphone.ui.main.contacts.model.NumberOrAddressPickerDialogModel
|
||||||
import org.linphone.ui.main.fragment.GenericFragment
|
import org.linphone.ui.main.fragment.GenericFragment
|
||||||
|
import org.linphone.ui.main.history.adapter.ContactsAndSuggestionsListAdapter
|
||||||
|
import org.linphone.ui.main.history.model.ContactOrSuggestionModel
|
||||||
|
import org.linphone.ui.main.history.viewmodel.StartCallViewModel
|
||||||
import org.linphone.ui.main.model.isInSecureMode
|
import org.linphone.ui.main.model.isInSecureMode
|
||||||
import org.linphone.utils.DialogUtils
|
import org.linphone.utils.DialogUtils
|
||||||
import org.linphone.utils.RecyclerViewHeaderDecoration
|
import org.linphone.utils.RecyclerViewHeaderDecoration
|
||||||
|
|
@ -54,7 +54,7 @@ class StartCallFragment : GenericFragment() {
|
||||||
private const val TAG = "[Start Call Fragment]"
|
private const val TAG = "[Start Call Fragment]"
|
||||||
}
|
}
|
||||||
|
|
||||||
private lateinit var binding: CallStartFragmentBinding
|
private lateinit var binding: StartCallFragmentBinding
|
||||||
|
|
||||||
private val viewModel: StartCallViewModel by navGraphViewModels(
|
private val viewModel: StartCallViewModel by navGraphViewModels(
|
||||||
R.id.main_nav_graph
|
R.id.main_nav_graph
|
||||||
|
|
@ -85,7 +85,7 @@ class StartCallFragment : GenericFragment() {
|
||||||
container: ViewGroup?,
|
container: ViewGroup?,
|
||||||
savedInstanceState: Bundle?
|
savedInstanceState: Bundle?
|
||||||
): View {
|
): View {
|
||||||
binding = CallStartFragmentBinding.inflate(layoutInflater)
|
binding = StartCallFragmentBinding.inflate(layoutInflater)
|
||||||
return binding.root
|
return binding.root
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package org.linphone.ui.main.calls.model
|
package org.linphone.ui.main.history.model
|
||||||
|
|
||||||
import androidx.annotation.IntegerRes
|
import androidx.annotation.IntegerRes
|
||||||
import androidx.annotation.WorkerThread
|
import androidx.annotation.WorkerThread
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package org.linphone.ui.main.calls.model
|
package org.linphone.ui.main.history.model
|
||||||
|
|
||||||
import androidx.annotation.IntegerRes
|
import androidx.annotation.IntegerRes
|
||||||
import androidx.annotation.UiThread
|
import androidx.annotation.UiThread
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.model
|
package org.linphone.ui.main.history.model
|
||||||
|
|
||||||
import androidx.annotation.UiThread
|
import androidx.annotation.UiThread
|
||||||
import androidx.lifecycle.MutableLiveData
|
import androidx.lifecycle.MutableLiveData
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.model
|
package org.linphone.ui.main.history.model
|
||||||
|
|
||||||
import androidx.annotation.UiThread
|
import androidx.annotation.UiThread
|
||||||
import androidx.annotation.WorkerThread
|
import androidx.annotation.WorkerThread
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.model
|
package org.linphone.ui.main.history.model
|
||||||
|
|
||||||
import androidx.annotation.UiThread
|
import androidx.annotation.UiThread
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package org.linphone.ui.main.calls.viewmodel
|
package org.linphone.ui.main.history.viewmodel
|
||||||
|
|
||||||
import androidx.annotation.UiThread
|
import androidx.annotation.UiThread
|
||||||
import androidx.lifecycle.MutableLiveData
|
import androidx.lifecycle.MutableLiveData
|
||||||
|
|
@ -7,12 +7,12 @@ import org.linphone.LinphoneApplication.Companion.coreContext
|
||||||
import org.linphone.LinphoneApplication.Companion.corePreferences
|
import org.linphone.LinphoneApplication.Companion.corePreferences
|
||||||
import org.linphone.core.Address
|
import org.linphone.core.Address
|
||||||
import org.linphone.core.Call
|
import org.linphone.core.Call
|
||||||
import org.linphone.ui.main.calls.model.CallLogHistoryModel
|
import org.linphone.ui.main.history.model.CallLogHistoryModel
|
||||||
import org.linphone.ui.main.calls.model.CallLogModel
|
import org.linphone.ui.main.history.model.CallLogModel
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
import org.linphone.utils.LinphoneUtils
|
import org.linphone.utils.LinphoneUtils
|
||||||
|
|
||||||
class CallLogViewModel @UiThread constructor() : ViewModel() {
|
class ContactHistoryViewModel @UiThread constructor() : ViewModel() {
|
||||||
val showBackButton = MutableLiveData<Boolean>()
|
val showBackButton = MutableLiveData<Boolean>()
|
||||||
|
|
||||||
val callLogModel = MutableLiveData<CallLogModel>()
|
val callLogModel = MutableLiveData<CallLogModel>()
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.viewmodel
|
package org.linphone.ui.main.history.viewmodel
|
||||||
|
|
||||||
import androidx.annotation.UiThread
|
import androidx.annotation.UiThread
|
||||||
import androidx.annotation.WorkerThread
|
import androidx.annotation.WorkerThread
|
||||||
|
|
@ -28,12 +28,12 @@ import org.linphone.core.CallLog
|
||||||
import org.linphone.core.Core
|
import org.linphone.core.Core
|
||||||
import org.linphone.core.CoreListenerStub
|
import org.linphone.core.CoreListenerStub
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.ui.main.calls.model.CallLogModel
|
import org.linphone.ui.main.history.model.CallLogModel
|
||||||
import org.linphone.ui.main.viewmodel.AbstractTopBarViewModel
|
import org.linphone.ui.main.viewmodel.AbstractTopBarViewModel
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
import org.linphone.utils.LinphoneUtils
|
import org.linphone.utils.LinphoneUtils
|
||||||
|
|
||||||
class CallsListViewModel @UiThread constructor() : AbstractTopBarViewModel() {
|
class HistoryListViewModel @UiThread constructor() : AbstractTopBarViewModel() {
|
||||||
companion object {
|
companion object {
|
||||||
private const val TAG = "[Calls List ViewModel]"
|
private const val TAG = "[Calls List ViewModel]"
|
||||||
}
|
}
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
package org.linphone.ui.main.calls.viewmodel
|
package org.linphone.ui.main.history.viewmodel
|
||||||
|
|
||||||
import androidx.annotation.UiThread
|
import androidx.annotation.UiThread
|
||||||
import androidx.annotation.WorkerThread
|
import androidx.annotation.WorkerThread
|
||||||
|
|
@ -34,9 +34,9 @@ import org.linphone.core.MagicSearch
|
||||||
import org.linphone.core.MagicSearchListenerStub
|
import org.linphone.core.MagicSearchListenerStub
|
||||||
import org.linphone.core.SearchResult
|
import org.linphone.core.SearchResult
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.ui.main.calls.model.ContactOrSuggestionModel
|
|
||||||
import org.linphone.ui.main.calls.model.NumpadModel
|
|
||||||
import org.linphone.ui.main.contacts.model.ContactAvatarModel
|
import org.linphone.ui.main.contacts.model.ContactAvatarModel
|
||||||
|
import org.linphone.ui.main.history.model.ContactOrSuggestionModel
|
||||||
|
import org.linphone.ui.main.history.model.NumpadModel
|
||||||
import org.linphone.ui.main.model.isInSecureMode
|
import org.linphone.ui.main.model.isInSecureMode
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
|
|
||||||
|
|
@ -16,8 +16,8 @@ import kotlinx.coroutines.launch
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.databinding.AccountProfileFragmentBinding
|
import org.linphone.databinding.AccountProfileFragmentBinding
|
||||||
import org.linphone.ui.main.calls.model.ConfirmationDialogModel
|
|
||||||
import org.linphone.ui.main.fragment.GenericFragment
|
import org.linphone.ui.main.fragment.GenericFragment
|
||||||
|
import org.linphone.ui.main.history.model.ConfirmationDialogModel
|
||||||
import org.linphone.ui.main.settings.viewmodel.AccountProfileViewModel
|
import org.linphone.ui.main.settings.viewmodel.AccountProfileViewModel
|
||||||
import org.linphone.utils.DialogUtils
|
import org.linphone.utils.DialogUtils
|
||||||
import org.linphone.utils.Event
|
import org.linphone.utils.Event
|
||||||
|
|
|
||||||
|
|
@ -34,14 +34,14 @@ import org.linphone.LinphoneApplication.Companion.coreContext
|
||||||
import org.linphone.R
|
import org.linphone.R
|
||||||
import org.linphone.contacts.getListOfSipAddressesAndPhoneNumbers
|
import org.linphone.contacts.getListOfSipAddressesAndPhoneNumbers
|
||||||
import org.linphone.core.tools.Log
|
import org.linphone.core.tools.Log
|
||||||
import org.linphone.databinding.CallStartFragmentBinding
|
import org.linphone.databinding.StartCallFragmentBinding
|
||||||
import org.linphone.ui.main.calls.adapter.ContactsAndSuggestionsListAdapter
|
|
||||||
import org.linphone.ui.main.calls.model.ContactOrSuggestionModel
|
|
||||||
import org.linphone.ui.main.calls.viewmodel.StartCallViewModel
|
|
||||||
import org.linphone.ui.main.contacts.model.ContactNumberOrAddressClickListener
|
import org.linphone.ui.main.contacts.model.ContactNumberOrAddressClickListener
|
||||||
import org.linphone.ui.main.contacts.model.ContactNumberOrAddressModel
|
import org.linphone.ui.main.contacts.model.ContactNumberOrAddressModel
|
||||||
import org.linphone.ui.main.contacts.model.NumberOrAddressPickerDialogModel
|
import org.linphone.ui.main.contacts.model.NumberOrAddressPickerDialogModel
|
||||||
import org.linphone.ui.main.fragment.GenericFragment
|
import org.linphone.ui.main.fragment.GenericFragment
|
||||||
|
import org.linphone.ui.main.history.adapter.ContactsAndSuggestionsListAdapter
|
||||||
|
import org.linphone.ui.main.history.model.ContactOrSuggestionModel
|
||||||
|
import org.linphone.ui.main.history.viewmodel.StartCallViewModel
|
||||||
import org.linphone.ui.main.model.isInSecureMode
|
import org.linphone.ui.main.model.isInSecureMode
|
||||||
import org.linphone.utils.DialogUtils
|
import org.linphone.utils.DialogUtils
|
||||||
import org.linphone.utils.RecyclerViewHeaderDecoration
|
import org.linphone.utils.RecyclerViewHeaderDecoration
|
||||||
|
|
@ -55,7 +55,7 @@ class NewCallFragment : GenericFragment() {
|
||||||
private const val TAG = "[New Call Fragment]"
|
private const val TAG = "[New Call Fragment]"
|
||||||
}
|
}
|
||||||
|
|
||||||
private lateinit var binding: CallStartFragmentBinding
|
private lateinit var binding: StartCallFragmentBinding
|
||||||
|
|
||||||
private val viewModel: StartCallViewModel by navGraphViewModels(
|
private val viewModel: StartCallViewModel by navGraphViewModels(
|
||||||
R.id.voip_nav_graph
|
R.id.voip_nav_graph
|
||||||
|
|
@ -87,7 +87,7 @@ class NewCallFragment : GenericFragment() {
|
||||||
container: ViewGroup?,
|
container: ViewGroup?,
|
||||||
savedInstanceState: Bundle?
|
savedInstanceState: Bundle?
|
||||||
): View {
|
): View {
|
||||||
binding = CallStartFragmentBinding.inflate(layoutInflater)
|
binding = StartCallFragmentBinding.inflate(layoutInflater)
|
||||||
return binding.root
|
return binding.root
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,9 +46,9 @@ import org.linphone.databinding.DialogRemoveAllCallLogsBinding
|
||||||
import org.linphone.databinding.DialogRemoveCallLogsBinding
|
import org.linphone.databinding.DialogRemoveCallLogsBinding
|
||||||
import org.linphone.ui.assistant.model.AcceptConditionsAndPolicyDialogModel
|
import org.linphone.ui.assistant.model.AcceptConditionsAndPolicyDialogModel
|
||||||
import org.linphone.ui.assistant.model.ConfirmPhoneNumberDialogModel
|
import org.linphone.ui.assistant.model.ConfirmPhoneNumberDialogModel
|
||||||
import org.linphone.ui.main.calls.model.ConfirmationDialogModel
|
|
||||||
import org.linphone.ui.main.contacts.model.NumberOrAddressPickerDialogModel
|
import org.linphone.ui.main.contacts.model.NumberOrAddressPickerDialogModel
|
||||||
import org.linphone.ui.main.contacts.model.TrustCallDialogModel
|
import org.linphone.ui.main.contacts.model.TrustCallDialogModel
|
||||||
|
import org.linphone.ui.main.history.model.ConfirmationDialogModel
|
||||||
import org.linphone.ui.voip.model.ZrtpSasConfirmationDialogModel
|
import org.linphone.ui.voip.model.ZrtpSasConfirmationDialogModel
|
||||||
|
|
||||||
class DialogUtils {
|
class DialogUtils {
|
||||||
|
|
|
||||||
|
|
@ -20,20 +20,20 @@
|
||||||
app:layout_constraintEnd_toEndOf="parent">
|
app:layout_constraintEnd_toEndOf="parent">
|
||||||
|
|
||||||
<androidx.fragment.app.FragmentContainerView
|
<androidx.fragment.app.FragmentContainerView
|
||||||
android:id="@+id/calls_list"
|
android:id="@+id/history_list"
|
||||||
android:name="org.linphone.ui.main.calls.fragment.CallsListFragment"
|
android:name="org.linphone.ui.main.history.fragment.HistoryListFragment"
|
||||||
android:layout_width="@dimen/sliding_pane_left_fragment_with_nav_width"
|
android:layout_width="@dimen/sliding_pane_left_fragment_with_nav_width"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
app:layout="@layout/calls_list_fragment"/>
|
app:layout="@layout/history_list_fragment"/>
|
||||||
|
|
||||||
<androidx.fragment.app.FragmentContainerView
|
<androidx.fragment.app.FragmentContainerView
|
||||||
android:id="@+id/calls_nav_container"
|
android:id="@+id/history_nav_container"
|
||||||
android:name="androidx.navigation.fragment.NavHostFragment"
|
android:name="androidx.navigation.fragment.NavHostFragment"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:defaultNavHost="false"
|
app:defaultNavHost="false"
|
||||||
app:navGraph="@navigation/calls_nav_graph"/>
|
app:navGraph="@navigation/history_nav_graph"/>
|
||||||
|
|
||||||
</androidx.slidingpanelayout.widget.SlidingPaneLayout>
|
</androidx.slidingpanelayout.widget.SlidingPaneLayout>
|
||||||
|
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
type="View.OnClickListener" />
|
type="View.OnClickListener" />
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="org.linphone.ui.main.calls.viewmodel.CallsListViewModel" />
|
type="org.linphone.ui.main.history.viewmodel.HistoryListViewModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
@ -103,7 +103,7 @@
|
||||||
app:layout_constraintTop_toBottomOf="@id/no_calls_image" />
|
app:layout_constraintTop_toBottomOf="@id/no_calls_image" />
|
||||||
|
|
||||||
<androidx.recyclerview.widget.RecyclerView
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
android:id="@+id/calls_list"
|
android:id="@+id/history_list"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
android:layout_marginStart="16dp"
|
android:layout_marginStart="16dp"
|
||||||
|
|
@ -68,7 +68,7 @@
|
||||||
app:tint="@color/white" />
|
app:tint="@color/white" />
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/calls_list"
|
android:id="@+id/history_list"
|
||||||
android:onClick="@{callsListClickListener}"
|
android:onClick="@{callsListClickListener}"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="@dimen/voip_button_size"
|
android:layout_height="@dimen/voip_button_size"
|
||||||
|
|
@ -172,7 +172,7 @@
|
||||||
android:text="@string/voip_action_go_to_calls_list"
|
android:text="@string/voip_action_go_to_calls_list"
|
||||||
app:layout_constraintEnd_toStartOf="@id/dialer_label"
|
app:layout_constraintEnd_toStartOf="@id/dialer_label"
|
||||||
app:layout_constraintStart_toEndOf="@id/new_call_label"
|
app:layout_constraintStart_toEndOf="@id/new_call_label"
|
||||||
app:layout_constraintTop_toBottomOf="@id/calls_list"/>
|
app:layout_constraintTop_toBottomOf="@id/history_list"/>
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatTextView
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
style="@style/in_call_extra_action_label_style"
|
style="@style/in_call_extra_action_label_style"
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<import type="android.graphics.Typeface" />
|
<import type="android.graphics.Typeface" />
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="org.linphone.ui.main.calls.model.ConfirmationDialogModel" />
|
type="org.linphone.ui.main.history.model.ConfirmationDialogModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<import type="android.graphics.Typeface" />
|
<import type="android.graphics.Typeface" />
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="org.linphone.ui.main.calls.model.ConfirmationDialogModel" />
|
type="org.linphone.ui.main.history.model.ConfirmationDialogModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<import type="android.graphics.Typeface" />
|
<import type="android.graphics.Typeface" />
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="org.linphone.ui.main.calls.model.ConfirmationDialogModel" />
|
type="org.linphone.ui.main.history.model.ConfirmationDialogModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<import type="android.graphics.Typeface" />
|
<import type="android.graphics.Typeface" />
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="org.linphone.ui.main.calls.model.ConfirmationDialogModel" />
|
type="org.linphone.ui.main.history.model.ConfirmationDialogModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<import type="android.graphics.Typeface" />
|
<import type="android.graphics.Typeface" />
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="org.linphone.ui.main.calls.model.ConfirmationDialogModel" />
|
type="org.linphone.ui.main.history.model.ConfirmationDialogModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
type="View.OnClickListener" />
|
type="View.OnClickListener" />
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="org.linphone.ui.main.calls.viewmodel.CallLogViewModel" />
|
type="org.linphone.ui.main.history.viewmodel.ContactHistoryViewModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
@ -8,7 +8,7 @@
|
||||||
<import type="android.graphics.Typeface" />
|
<import type="android.graphics.Typeface" />
|
||||||
<variable
|
<variable
|
||||||
name="model"
|
name="model"
|
||||||
type="org.linphone.ui.main.calls.model.CallLogHistoryModel" />
|
type="org.linphone.ui.main.history.model.CallLogHistoryModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
@ -12,20 +12,20 @@
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
<androidx.fragment.app.FragmentContainerView
|
<androidx.fragment.app.FragmentContainerView
|
||||||
android:id="@+id/calls_list"
|
android:id="@+id/history_list"
|
||||||
android:name="org.linphone.ui.main.calls.fragment.CallsListFragment"
|
android:name="org.linphone.ui.main.history.fragment.HistoryListFragment"
|
||||||
android:layout_width="@dimen/sliding_pane_left_fragment_width"
|
android:layout_width="@dimen/sliding_pane_left_fragment_width"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
app:layout="@layout/calls_list_fragment" />
|
app:layout="@layout/history_list_fragment" />
|
||||||
|
|
||||||
<androidx.fragment.app.FragmentContainerView
|
<androidx.fragment.app.FragmentContainerView
|
||||||
android:id="@+id/calls_nav_container"
|
android:id="@+id/history_nav_container"
|
||||||
android:name="androidx.navigation.fragment.NavHostFragment"
|
android:name="androidx.navigation.fragment.NavHostFragment"
|
||||||
android:layout_width="@dimen/sliding_pane_right_fragment_width"
|
android:layout_width="@dimen/sliding_pane_right_fragment_width"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
app:defaultNavHost="false"
|
app:defaultNavHost="false"
|
||||||
app:navGraph="@navigation/calls_nav_graph"/>
|
app:navGraph="@navigation/history_nav_graph"/>
|
||||||
|
|
||||||
</androidx.slidingpanelayout.widget.SlidingPaneLayout>
|
</androidx.slidingpanelayout.widget.SlidingPaneLayout>
|
||||||
|
|
||||||
|
|
@ -9,7 +9,7 @@
|
||||||
<import type="org.linphone.core.ConsolidatedPresence" />
|
<import type="org.linphone.core.ConsolidatedPresence" />
|
||||||
<variable
|
<variable
|
||||||
name="model"
|
name="model"
|
||||||
type="org.linphone.ui.main.calls.model.CallLogModel" />
|
type="org.linphone.ui.main.history.model.CallLogModel" />
|
||||||
<variable
|
<variable
|
||||||
name="onClickListener"
|
name="onClickListener"
|
||||||
type="View.OnClickListener" />
|
type="View.OnClickListener" />
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
type="View.OnClickListener" />
|
type="View.OnClickListener" />
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="org.linphone.ui.main.calls.viewmodel.CallsListViewModel" />
|
type="org.linphone.ui.main.history.viewmodel.HistoryListViewModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
@ -103,7 +103,7 @@
|
||||||
app:layout_constraintTop_toBottomOf="@id/no_calls_image" />
|
app:layout_constraintTop_toBottomOf="@id/no_calls_image" />
|
||||||
|
|
||||||
<androidx.recyclerview.widget.RecyclerView
|
<androidx.recyclerview.widget.RecyclerView
|
||||||
android:id="@+id/calls_list"
|
android:id="@+id/history_list"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
android:layout_marginStart="16dp"
|
android:layout_marginStart="16dp"
|
||||||
|
|
@ -16,7 +16,7 @@
|
||||||
type="Boolean" />
|
type="Boolean" />
|
||||||
<variable
|
<variable
|
||||||
name="viewModel"
|
name="viewModel"
|
||||||
type="org.linphone.ui.main.calls.viewmodel.StartCallViewModel" />
|
type="org.linphone.ui.main.history.viewmodel.StartCallViewModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||||
|
|
@ -209,7 +209,7 @@
|
||||||
android:id="@+id/numpad_layout"
|
android:id="@+id/numpad_layout"
|
||||||
bind:handleClickedListener="@{hideNumpadClickListener}"
|
bind:handleClickedListener="@{hideNumpadClickListener}"
|
||||||
bind:model="@{viewModel.numpadModel}"
|
bind:model="@{viewModel.numpadModel}"
|
||||||
layout="@layout/call_start_numpad" />
|
layout="@layout/start_call_numpad" />
|
||||||
|
|
||||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||||
|
|
||||||
|
|
@ -9,7 +9,7 @@
|
||||||
type="View.OnClickListener" />
|
type="View.OnClickListener" />
|
||||||
<variable
|
<variable
|
||||||
name="model"
|
name="model"
|
||||||
type="org.linphone.ui.main.calls.model.NumpadModel" />
|
type="org.linphone.ui.main.history.model.NumpadModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
type="View.OnClickListener" />
|
type="View.OnClickListener" />
|
||||||
<variable
|
<variable
|
||||||
name="model"
|
name="model"
|
||||||
type="org.linphone.ui.main.calls.model.ContactOrSuggestionModel" />
|
type="org.linphone.ui.main.history.model.ContactOrSuggestionModel" />
|
||||||
</data>
|
</data>
|
||||||
|
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout
|
||||||
|
|
@ -68,7 +68,7 @@
|
||||||
app:layout_constraintTop_toBottomOf="@id/main_actions" />
|
app:layout_constraintTop_toBottomOf="@id/main_actions" />
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/calls_list"
|
android:id="@+id/history_list"
|
||||||
android:onClick="@{callsListClickListener}"
|
android:onClick="@{callsListClickListener}"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="@dimen/voip_button_size"
|
android:layout_height="@dimen/voip_button_size"
|
||||||
|
|
@ -135,8 +135,8 @@
|
||||||
app:tint="@color/white"
|
app:tint="@color/white"
|
||||||
app:layout_constraintDimensionRatio="1:1"
|
app:layout_constraintDimensionRatio="1:1"
|
||||||
app:layout_constraintTop_toBottomOf="@id/calls_list_label"
|
app:layout_constraintTop_toBottomOf="@id/calls_list_label"
|
||||||
app:layout_constraintStart_toStartOf="@id/calls_list"
|
app:layout_constraintStart_toStartOf="@id/history_list"
|
||||||
app:layout_constraintEnd_toEndOf="@id/calls_list" />
|
app:layout_constraintEnd_toEndOf="@id/history_list" />
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatTextView
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
style="@style/in_call_extra_action_label_style"
|
style="@style/in_call_extra_action_label_style"
|
||||||
|
|
@ -167,7 +167,7 @@
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@string/voip_action_go_to_calls_list"
|
android:text="@string/voip_action_go_to_calls_list"
|
||||||
app:layout_constraintTop_toBottomOf="@id/calls_list"
|
app:layout_constraintTop_toBottomOf="@id/history_list"
|
||||||
app:layout_constraintStart_toEndOf="@id/new_call_label"
|
app:layout_constraintStart_toEndOf="@id/new_call_label"
|
||||||
app:layout_constraintEnd_toStartOf="@id/dialer_label" />
|
app:layout_constraintEnd_toStartOf="@id/dialer_label" />
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@
|
||||||
app:layout_constraintTop_toTopOf="parent"/>
|
app:layout_constraintTop_toTopOf="parent"/>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/calls_list"
|
android:id="@+id/history_list"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
|
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:id="@+id/calls_nav_graph"
|
android:id="@+id/history_nav_graph"
|
||||||
app:startDestination="@id/emptyFragment">
|
app:startDestination="@id/emptyFragment">
|
||||||
|
|
||||||
<fragment
|
<fragment
|
||||||
|
|
@ -13,18 +13,18 @@
|
||||||
tools:layout="@layout/empty_fragment"/>
|
tools:layout="@layout/empty_fragment"/>
|
||||||
|
|
||||||
<fragment
|
<fragment
|
||||||
android:id="@+id/callFragment"
|
android:id="@+id/historyContactFragment"
|
||||||
android:name="org.linphone.ui.main.calls.fragment.CallFragment"
|
android:name="org.linphone.ui.main.history.fragment.HistoryContactFragment"
|
||||||
android:label="CallFragment"
|
android:label="HistoryContactFragment"
|
||||||
tools:layout="@layout/call_fragment">
|
tools:layout="@layout/history_contact_fragment">
|
||||||
<argument
|
<argument
|
||||||
android:name="callId"
|
android:name="callId"
|
||||||
app:argType="string" />
|
app:argType="string" />
|
||||||
</fragment>
|
</fragment>
|
||||||
|
|
||||||
<action
|
<action
|
||||||
android:id="@+id/action_global_callFragment"
|
android:id="@+id/action_global_historyContactFragment"
|
||||||
app:destination="@id/callFragment"
|
app:destination="@id/historyContactFragment"
|
||||||
app:launchSingleTop="true" />
|
app:launchSingleTop="true" />
|
||||||
|
|
||||||
</navigation>
|
</navigation>
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:id="@+id/main_nav_graph"
|
android:id="@+id/main_nav_graph"
|
||||||
app:startDestination="@id/callsFragment">
|
app:startDestination="@id/historyFragment">
|
||||||
|
|
||||||
<fragment
|
<fragment
|
||||||
android:id="@+id/contactsFragment"
|
android:id="@+id/contactsFragment"
|
||||||
|
|
@ -12,23 +12,23 @@
|
||||||
android:label="ContactsFragment"
|
android:label="ContactsFragment"
|
||||||
tools:layout="@layout/contacts_fragment">
|
tools:layout="@layout/contacts_fragment">
|
||||||
<action
|
<action
|
||||||
android:id="@+id/action_contactsFragment_to_callsFragment"
|
android:id="@+id/action_contactsFragment_to_historyFragment"
|
||||||
app:destination="@id/callsFragment"
|
app:destination="@id/historyFragment"
|
||||||
app:launchSingleTop="true"
|
app:launchSingleTop="true"
|
||||||
app:popUpTo="@id/contactsFragment"
|
app:popUpTo="@id/contactsFragment"
|
||||||
app:popUpToInclusive="true" />
|
app:popUpToInclusive="true" />
|
||||||
</fragment>
|
</fragment>
|
||||||
|
|
||||||
<fragment
|
<fragment
|
||||||
android:id="@+id/callsFragment"
|
android:id="@+id/historyFragment"
|
||||||
android:name="org.linphone.ui.main.calls.fragment.CallsFragment"
|
android:name="org.linphone.ui.main.history.fragment.HistoryFragment"
|
||||||
android:label="CallsFragment"
|
android:label="HistoryFragment"
|
||||||
tools:layout="@layout/calls_fragment">
|
tools:layout="@layout/history_fragment">
|
||||||
<action
|
<action
|
||||||
android:id="@+id/action_callsFragment_to_contactsFragment"
|
android:id="@+id/action_historyFragment_to_contactsFragment"
|
||||||
app:destination="@id/contactsFragment"
|
app:destination="@id/contactsFragment"
|
||||||
app:launchSingleTop="true"
|
app:launchSingleTop="true"
|
||||||
app:popUpTo="@id/callsFragment"
|
app:popUpTo="@id/historyFragment"
|
||||||
app:popUpToInclusive="true" />
|
app:popUpToInclusive="true" />
|
||||||
</fragment>
|
</fragment>
|
||||||
|
|
||||||
|
|
@ -100,9 +100,9 @@
|
||||||
|
|
||||||
<fragment
|
<fragment
|
||||||
android:id="@+id/startCallFragment"
|
android:id="@+id/startCallFragment"
|
||||||
android:name="org.linphone.ui.main.calls.fragment.StartCallFragment"
|
android:name="org.linphone.ui.main.history.fragment.StartCallFragment"
|
||||||
android:label="StartCallFragment"
|
android:label="StartCallFragment"
|
||||||
tools:layout="@layout/call_start_fragment" />
|
tools:layout="@layout/start_call_fragment" />
|
||||||
|
|
||||||
<action
|
<action
|
||||||
android:id="@+id/action_global_startCallFragment"
|
android:id="@+id/action_global_startCallFragment"
|
||||||
|
|
|
||||||
|
|
@ -72,7 +72,7 @@
|
||||||
android:id="@+id/newCallFragment"
|
android:id="@+id/newCallFragment"
|
||||||
android:name="org.linphone.ui.voip.fragment.NewCallFragment"
|
android:name="org.linphone.ui.voip.fragment.NewCallFragment"
|
||||||
android:label="NewCallFragment"
|
android:label="NewCallFragment"
|
||||||
tools:layout="@layout/call_start_fragment" />
|
tools:layout="@layout/start_call_fragment" />
|
||||||
|
|
||||||
<fragment
|
<fragment
|
||||||
android:id="@+id/callsListFragment"
|
android:id="@+id/callsListFragment"
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue