diff --git a/demo/src/main/java/com/paypal/messagesdemo/XmlActivity.kt b/demo/src/main/java/com/paypal/messagesdemo/XmlActivity.kt index 5a44eca0..5cae6d48 100644 --- a/demo/src/main/java/com/paypal/messagesdemo/XmlActivity.kt +++ b/demo/src/main/java/com/paypal/messagesdemo/XmlActivity.kt @@ -5,10 +5,13 @@ import android.util.Log import android.view.View import android.view.ViewGroup.LayoutParams import android.widget.EditText +import android.widget.TextView import android.widget.Toast import androidx.appcompat.app.AppCompatActivity import androidx.compose.ui.graphics.Color import com.paypal.messages.PayPalMessageView +import com.paypal.messages.PayPalMessagesModalFragment +import com.paypal.messages.config.Channel import com.paypal.messages.config.PayPalEnvironment import com.paypal.messages.config.PayPalMessageOfferType import com.paypal.messages.config.PayPalMessagePageType @@ -18,6 +21,7 @@ import com.paypal.messages.config.message.PayPalMessageViewStateCallbacks import com.paypal.messages.config.message.style.PayPalMessageAlignment import com.paypal.messages.config.message.style.PayPalMessageColor import com.paypal.messages.config.message.style.PayPalMessageLogoType +import com.paypal.messages.config.modal.PayPalMessagesModalConfig import com.paypal.messages.io.Api import com.paypal.messagesdemo.databinding.ActivityMessageBinding @@ -35,6 +39,22 @@ class XmlActivity : AppCompatActivity() { binding = ActivityMessageBinding.inflate(layoutInflater) setContentView(binding.root) + val messagesModalText = binding.messagesModalText + val modalConfig = PayPalMessagesModalConfig( + clientID = getString(R.string.client_id), + environment = environment, + ) + val modal = PayPalMessagesModalFragment(context = this, config = modalConfig) + messagesModalText.setOnClickListener { + modal.show() + } + +// // XML can also be used +// val xmlModal = binding.xmlModal +// messagesModalText.setOnClickListener { +// xmlModal.show() +// } + val messageWrapper = binding.messageWrapper val progressBar = binding.progressBar val resetButton = binding.reset @@ -162,6 +182,12 @@ class XmlActivity : AppCompatActivity() { payPalMessage.color = color payPalMessage.logoType = logoType payPalMessage.textAlignment = textAlignment + + modal.clientID = clientId + modal.amount = amount + modal.buyerCountry = buyerCountry + modal.offerType = offerType + modal.environment = environment } // Restore default options and reset UI @@ -183,6 +209,13 @@ class XmlActivity : AppCompatActivity() { submitButton.setOnClickListener { updateMessageData() } } + @Override + private fun activityPaused() { + val modalConfig = PayPalMessagesModalConfig(clientID = "someClientID") + val modal = PayPalMessagesModalFragment(context = this, config = modalConfig) + modal.hide() + } + /** * Prevents unused warnings inside of PayPalMessageView and PayPalMessageConfig */ @@ -200,10 +233,35 @@ class XmlActivity : AppCompatActivity() { message.merchantID = "" message.partnerAttributionID = "" message.pageType = PayPalMessagePageType.CART + message.channel = Channel.UPSTREAM.toString() message.onClick = {} message.onApply = {} message.onLoading = {} message.onSuccess = {} message.onError = {} + + val modalConfig = PayPalMessagesModalConfig(clientID = "someClientID") + val modal = PayPalMessagesModalFragment(context = this, config = modalConfig) + modal.getConfig() + modal.setConfig(modalConfig) + modal.environment = PayPalEnvironment.SANDBOX + modal.clientID = "" + modal.merchantID = "" + modal.partnerAttributionID = "" + modal.channel = Channel.UPSTREAM.toString() + modal.pageType = PayPalMessagePageType.CART + modal.onClick = {} + modal.onApply = {} + modal.onLoading = {} + modal.onSuccess = {} + modal.onError = {} + modal.onCalculate = {} + modal.onShow = {} + modal.onClose = {} + + val textView = TextView(this) + textView.setOnClickListener { + modal.show() + } } } diff --git a/demo/src/main/res/layout/activity_message.xml b/demo/src/main/res/layout/activity_message.xml index cbe48de6..62118e8a 100644 --- a/demo/src/main/res/layout/activity_message.xml +++ b/demo/src/main/res/layout/activity_message.xml @@ -136,7 +136,7 @@ android:id="@+id/offerTypeLabel" android:paddingTop="12dp" android:paddingBottom="12dp" - android:layout_marginRight="12dp" + android:layout_marginEnd="12dp" android:textStyle="bold" android:textSize="16sp"/>