Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 8 additions & 4 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -65,22 +65,26 @@ dependencies {
androidTestImplementation("androidx.navigation:navigation-testing:2.3.5")

// Jetpack Compose Integration
implementation("androidx.navigation:navigation-compose:2.4.0-alpha10")
implementation("androidx.navigation:navigation-compose:2.4.0-beta02")

implementation("androidx.viewpager2:viewpager2:1.0.0")
implementation("androidx.recyclerview:recyclerview:1.2.1")
implementation("androidx.recyclerview:recyclerview-selection:1.1.0")
implementation("androidx.cardview:cardview:1.0.0")

//room database
implementation 'androidx.room:room-runtime:2.3.0'
kapt 'androidx.room:room-compiler:2.3.0'
implementation 'androidx.room:room-ktx:2.3.0'
implementation 'androidx.room:room-runtime:2.4.0-rc01'
kapt 'androidx.room:room-compiler:2.4.0-rc01'
implementation "androidx.room:room-ktx:2.4.0-rc01"
implementation 'com.makeramen:roundedimageview:2.3.0'


//bottomsheet
implementation 'com.google.android.material:material:1.4.0'

//coroutines core
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.5.0'



}
25 changes: 25 additions & 0 deletions app/src/main/java/com/example/jottnotes/BaseFragment.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.example.jottnotes

import android.os.Bundle
import androidx.fragment.app.Fragment
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.Job
import kotlin.coroutines.CoroutineContext

abstract class BaseFragment : Fragment(),CoroutineScope{

private lateinit var job: Job
override val coroutineContext: CoroutineContext
get() = job +Dispatchers.Main

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
job = Job()
}

override fun onDestroy() {
super.onDestroy()
job.cancel()
}
}
9 changes: 3 additions & 6 deletions app/src/main/java/com/example/jottnotes/Bottom_sheet.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,6 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.Toast
import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentTransaction
import com.google.android.material.bottomsheet.BottomSheetDialog
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
import kotlinx.android.synthetic.main.fragment_bottom_sheet.*
Expand Down Expand Up @@ -37,17 +35,16 @@ class BottomSheet : BottomSheetDialogFragment(){


Notes_add.setOnClickListener {
replaceFragment(Notes_page(),true)
replaceFragment(NotesPage.newInstance(),true)
Toast.makeText(context,"this is toast message",Toast.LENGTH_SHORT).show()
dismiss()
}


}

fun replaceFragment(fragment: Fragment, istransition : Boolean)
private fun replaceFragment(fragment: Fragment, istransition : Boolean)
{
val editNotes = fragment
val manager = requireActivity().supportFragmentManager
val transaction = manager.beginTransaction()

Expand All @@ -57,7 +54,7 @@ class BottomSheet : BottomSheetDialogFragment(){
}


transaction.replace(R.id.frame_layout, editNotes).addToBackStack(null).commit()
transaction.replace(R.id.frame_layout, fragment).addToBackStack(null).commit()



Expand Down
27 changes: 27 additions & 0 deletions app/src/main/java/com/example/jottnotes/FolderFragment.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package com.example.jottnotes

import android.os.Bundle
import androidx.fragment.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup

class FolderFragment : Fragment() {


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
arguments?.let {

}
}

override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
return inflater.inflate(R.layout.fragment_folder, container, false)
}


}
19 changes: 12 additions & 7 deletions app/src/main/java/com/example/jottnotes/MainActivity.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package com.example.jottnotes
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.fragment.app.Fragment
import com.example.jottnotes.Notes_page.Companion.newInstance

class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
Expand All @@ -12,7 +11,10 @@ class MainActivity : AppCompatActivity() {



replaceFragment(Mainpage(),true)



replaceFragment(Mainpage(), true)
}

//this is to change from mainactivity to main_page fragment.
Expand All @@ -21,14 +23,17 @@ class MainActivity : AppCompatActivity() {
//also this same function has the replace(one you are in, the one you want to go)
//the addtobackstack is a stack maker function.

private fun replaceFragment(fragment:Fragment, istransition:Boolean) {
private fun replaceFragment(fragment: Fragment, istransition: Boolean) {
val fragmentTransition = supportFragmentManager.beginTransaction()

if (istransition)
{
fragmentTransition.setCustomAnimations(android.R.anim.slide_out_right,android.R.anim.slide_in_left)
if (istransition) {
fragmentTransition.setCustomAnimations(
android.R.anim.slide_out_right,
android.R.anim.slide_in_left
)

}
fragmentTransition.replace(R.id.frame_layout,fragment).addToBackStack(fragment.javaClass.simpleName).commit()
fragmentTransition.replace(R.id.frame_layout, fragment)
.addToBackStack(fragment.javaClass.simpleName).commit()
}
}
29 changes: 27 additions & 2 deletions app/src/main/java/com/example/jottnotes/Main_page.kt
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,16 @@ import android.view.View
import android.view.ViewGroup
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.FragmentManager
import androidx.viewpager2.widget.ViewPager2
import com.google.android.material.tabs.TabLayout
import com.google.android.material.tabs.TabLayoutMediator
import kotlinx.android.synthetic.main.fragment_main_page.*


class Mainpage : Fragment() {

val fragarray = ArrayList<Fragment>()


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Expand All @@ -35,16 +40,36 @@ class Mainpage : Fragment() {
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)

val manager: FragmentManager = (this.context as AppCompatActivity).supportFragmentManager

//for bottom sheet transaction
val manager: FragmentManager = (this.context as AppCompatActivity).supportFragmentManager
floating_action_button.setOnClickListener {
BottomSheet().show(manager, ContentValues.TAG)
}

//for launching Viewpager fragment
val tabLayout = activity?.findViewById<TabLayout>(R.id.tabs)
val viewpager2 = activity?.findViewById<ViewPager2>(R.id.View_pager)

fragarray.add(RvFragment())

val adapter = ViewPagerAdapter(requireActivity().supportFragmentManager,lifecycle)
viewpager2?.adapter = adapter

if (viewpager2 != null) {
if (tabLayout != null) {
TabLayoutMediator(tabLayout, viewpager2){tab,position ->

when(position){
0 -> tab.text = "Notes"
1 -> tab.text = "Folders"
}
}.attach()
}
}



}


}
Loading