Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b7b0b1ec authored by PixelFault's avatar PixelFault
Browse files

add: new version of the app design

parent 64bb3c5a
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -7,8 +7,8 @@ android {
    buildToolsVersion "29.0.3"

    defaultConfig {
        applicationId "com.example.leon"
        minSdkVersion 14
        applicationId "com.poc.leonapp"
        minSdkVersion 15
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
@@ -34,4 +34,8 @@ dependencies {
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
    implementation 'androidx.recyclerview:recyclerview:1.1.0'

    // To create custom view
    implementation "com.xwray:groupie:2.1.0"
}
+2 −2
Original line number Diff line number Diff line
package com.example.leon
package com.poc.leonapp

import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.ext.junit.runners.AndroidJUnit4
@@ -19,6 +19,6 @@ class ExampleInstrumentedTest {
    fun useAppContext() {
        // Context of the app under test.
        val appContext = InstrumentationRegistry.getInstrumentation().targetContext
        assertEquals("com.example.leon", appContext.packageName)
        assertEquals("com.poc.leonapp", appContext.packageName)
    }
}
+2 −1
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.leon">
    package="com.poc.leonapp">

    <application
        android:allowBackup="true"
@@ -9,6 +9,7 @@
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".ChatActivity"></activity>
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
+0 −41
Original line number Diff line number Diff line
package com.example.leon

import android.graphics.Color
import android.os.Bundle
import android.util.TypedValue
import android.widget.LinearLayout
import android.widget.TextView
import androidx.appcompat.app.AppCompatActivity
import kotlinx.android.synthetic.main.activity_main.*


class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        userButton.setOnClickListener {
            userInput()
        }
    }
    private fun addTextToChat(userText:String) {
        // Get chatLayout
        val chatLayout:LinearLayout = findViewById(R.id.chatLayout)
        // Creates the new textView
        val newText:TextView = TextView(this)

        newText.text = userText
        newText.setTextColor(Color.parseColor("#ffffff"))
        newText.setTextSize(TypedValue.COMPLEX_UNIT_SP, 22.0F)
        chatLayout.addView(newText)
    }

    private fun userInput() {
        val userText:String = userKeyboard.text.toString()

        // TODO: Send the user input to Leon

        // Add the input to the scroll view
        addTextToChat(userText)
    }
}
+50 −0
Original line number Diff line number Diff line
package com.poc.leonapp

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.os.Parcel
import android.os.Parcelable
import com.poc.leonapp.models.ChatLeon
import com.poc.leonapp.models.ChatUser
import com.poc.leonapp.models.User
import com.xwray.groupie.GroupAdapter
import com.xwray.groupie.Item
import com.xwray.groupie.ViewHolder
import kotlinx.android.parcel.Parcelize
import kotlinx.android.synthetic.main.activity_chat.*
import kotlinx.android.synthetic.main.chat_leon.view.*
import kotlinx.android.synthetic.main.chat_user.view.*

class ChatActivity : AppCompatActivity() {
    private val adapter = GroupAdapter<ViewHolder>()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_chat)
        chatRecyclerView.adapter = adapter
        userSend.setOnClickListener {
            performSendUserRequest()
        }
    }

    private fun performSendUserRequest() {
        // TODO : Send user request to Leon
        addUserRequestToChat()
        addLeonResponseToChat()
    }

    private fun addLeonResponseToChat() {
        val leon = User("Leon says hello !")

        adapter.add(ChatLeon(leon))
        chatRecyclerView.scrollToPosition(adapter.itemCount - 1)
    }

    private fun addUserRequestToChat() {
        val user = User(userKeyboard.text.toString())

        adapter.add(ChatUser(user))
        userKeyboard.text.clear()
        chatRecyclerView.scrollToPosition(adapter.itemCount - 1)
    }
}
Loading