diff --git a/.gitignore b/.gitignore index aa724b770..358094700 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,5 @@ .externalNativeBuild .cxx local.properties +app/debug/ +app/release/ diff --git a/app/build.gradle b/app/build.gradle index 3f30b37df..3d42f947b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -53,8 +53,6 @@ dependencies { implementation 'androidx.core:core-ktx:1.10.1' implementation 'androidx.appcompat:appcompat:1.7.0-alpha03' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' - implementation 'androidx.navigation:navigation-ui-ktx:2.7.0' - implementation 'androidx.gridlayout:gridlayout:1.0.0' implementation 'androidx.recyclerview:recyclerview:1.3.1' implementation "androidx.slidingpanelayout:slidingpanelayout:1.2.0" @@ -69,9 +67,6 @@ dependencies { // https://github.com/material-components/material-components-android/blob/master/LICENSE Apache v2.0 implementation 'com.google.android.material:material:1.9.0' - // https://github.com/google/flexbox-layout/blob/main/LICENSE Apache v2.0 - implementation 'com.google.android.flexbox:flexbox:3.0.0' - // https://github.com/coil-kt/coil/blob/main/LICENSE.txt Apache v2.0 def coil_version = "2.4.0" implementation("io.coil-kt:coil:$coil_version") diff --git a/app/src/main/java/org/linphone/core/CorePreferences.kt b/app/src/main/java/org/linphone/core/CorePreferences.kt index 6ef49b00a..97f5e3734 100644 --- a/app/src/main/java/org/linphone/core/CorePreferences.kt +++ b/app/src/main/java/org/linphone/core/CorePreferences.kt @@ -57,6 +57,10 @@ class CorePreferences constructor(private val context: Context) { config.setBool("app", "publish_presence", value) } + // Will disable chat feature completely + val disableChat: Boolean + get() = config.getBool("app", "disable_chat_feature", false) + val defaultDomain: String get() = config.getString("app", "default_domain", "sip.linphone.org")!! diff --git a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactViewModel.kt b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactViewModel.kt index feba091f8..c07a1d56d 100644 --- a/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactViewModel.kt +++ b/app/src/main/java/org/linphone/ui/main/contacts/viewmodel/ContactViewModel.kt @@ -116,11 +116,11 @@ class ContactViewModel : ViewModel() { val organization = friend.organization if (!organization.isNullOrEmpty()) { - company.postValue(organization) + company.postValue(organization!!) } val jobTitle = friend.jobTitle if (!jobTitle.isNullOrEmpty()) { - title.postValue(jobTitle) + title.postValue(jobTitle!!) } val addressesAndNumbers = arrayListOf() diff --git a/app/src/main/java/org/linphone/ui/main/conversations/NewConversationFragment.kt b/app/src/main/java/org/linphone/ui/main/conversations/NewConversationFragment.kt index ff8dc25a4..26115a1a4 100644 --- a/app/src/main/java/org/linphone/ui/main/conversations/NewConversationFragment.kt +++ b/app/src/main/java/org/linphone/ui/main/conversations/NewConversationFragment.kt @@ -33,11 +33,11 @@ import androidx.recyclerview.widget.LinearLayoutManager import org.linphone.LinphoneApplication.Companion.coreContext import org.linphone.R import org.linphone.contacts.ContactsSelectionAdapter -import org.linphone.databinding.NewConversationFragmentBinding +import org.linphone.databinding.ConversationStartFragmentBinding import org.linphone.ui.main.conversations.viewmodel.NewConversationViewModel class NewConversationFragment : Fragment() { - private lateinit var binding: NewConversationFragmentBinding + private lateinit var binding: ConversationStartFragmentBinding private lateinit var adapter: ContactsSelectionAdapter private val viewModel: NewConversationViewModel by navGraphViewModels( R.id.conversationsFragment @@ -56,7 +56,7 @@ class NewConversationFragment : Fragment() { container: ViewGroup?, savedInstanceState: Bundle? ): View { - binding = NewConversationFragmentBinding.inflate(layoutInflater) + binding = ConversationStartFragmentBinding.inflate(layoutInflater) return binding.root } diff --git a/app/src/main/java/org/linphone/ui/main/fragment/BottomNavBarFragment.kt b/app/src/main/java/org/linphone/ui/main/fragment/BottomNavBarFragment.kt index 2c8169b4e..8a514210c 100644 --- a/app/src/main/java/org/linphone/ui/main/fragment/BottomNavBarFragment.kt +++ b/app/src/main/java/org/linphone/ui/main/fragment/BottomNavBarFragment.kt @@ -26,6 +26,7 @@ import android.view.View import android.view.ViewGroup import androidx.fragment.app.Fragment import androidx.lifecycle.ViewModelProvider +import org.linphone.LinphoneApplication.Companion.corePreferences import org.linphone.R import org.linphone.databinding.BottomNavBarBinding import org.linphone.ui.main.viewmodel.SharedMainViewModel @@ -87,5 +88,8 @@ class BottomNavBarFragment : Fragment() { binding.callsSelected = it == R.id.callsFragment binding.conversationsSelected = it == R.id.conversationsFragment } + + binding.hideConversations = corePreferences.disableChat || true // TODO + binding.hideMeetings = true // TODO } } diff --git a/app/src/main/res/layout-land/bottom_nav_bar.xml b/app/src/main/res/layout-land/bottom_nav_bar.xml index 44a4897d1..ec2cc1263 100644 --- a/app/src/main/res/layout-land/bottom_nav_bar.xml +++ b/app/src/main/res/layout-land/bottom_nav_bar.xml @@ -30,6 +30,12 @@ + + + + + tools:layout="@layout/conversation_start_fragment" >