Skip to content

Commit b1a1ffb

Browse files
committed
feat: add contact dialog
1 parent 9e672c7 commit b1a1ffb

File tree

11 files changed

+215
-41
lines changed

11 files changed

+215
-41
lines changed

.idea/codeStyles/Project.xml

Lines changed: 1 addition & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package com.foxcoder.cvapplication.models
2+
3+
import java.io.Serializable
4+
5+
data class SocialHandle(
6+
val platform: String,
7+
val userName: String,
8+
val platformIcon: Int,
9+
val profileUrl: String
10+
) : Serializable
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package com.foxcoder.cvapplication.view.fragments.personal
2+
3+
import android.os.Bundle
4+
import androidx.fragment.app.Fragment
5+
import android.view.LayoutInflater
6+
import android.view.View
7+
import android.view.ViewGroup
8+
import com.foxcoder.cvapplication.R
9+
import com.foxcoder.cvapplication.view.base_classes.BaseDialogFragment
10+
11+
class ContactDialog : BaseDialogFragment() {
12+
13+
14+
override fun onCreate(savedInstanceState: Bundle?) {
15+
super.onCreate(savedInstanceState)
16+
17+
}
18+
19+
override fun onCreateView(
20+
inflater: LayoutInflater, container: ViewGroup?,
21+
savedInstanceState: Bundle?
22+
): View? {
23+
// Inflate the layout for this fragment
24+
return inflater.inflate(R.layout.fragment_contact_dialog, container, false)
25+
}
26+
27+
}

app/src/main/java/com/foxcoder/cvapplication/view/fragments/personal/PersonalFragment.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package com.foxcoder.cvapplication.view.fragments.personal
22

33
import android.os.Bundle
4-
import androidx.fragment.app.Fragment
54
import android.view.LayoutInflater
65
import android.view.View
76
import android.view.ViewGroup
7+
import androidx.fragment.app.Fragment
88
import androidx.navigation.fragment.findNavController
99
import com.foxcoder.cvapplication.R
1010
import com.foxcoder.cvapplication.databinding.FragmentPersonalBinding
@@ -59,9 +59,10 @@ class PersonalFragment : Fragment(), PersonalItemClickListener {
5959
2 -> {
6060
findNavController().navigate(R.id.language_dialog)
6161
}
62-
3 -> {
62+
3 ->
6363
findNavController().navigate(R.id.hobby_dialog)
6464
}
65+
4 -> findNavController().navigate(R.id.contactDialog)
6566
}
6667
}
6768

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<shape xmlns:android="http://schemas.android.com/apk/res/android"
33
android:shape="rectangle">
4-
<solid android:color="@color/colorDropDownFill"/>
54
<corners android:radius="5dp"/>
65
<stroke
7-
android:width="2dp"
6+
android:width="1dp"
87
android:color="@color/colorDropDownStroke"/>
98

109
</shape>
12.8 KB
Loading
Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
3+
xmlns:tools="http://schemas.android.com/tools"
4+
xmlns:app="http://schemas.android.com/apk/res-auto"
5+
android:layout_width="match_parent"
6+
android:layout_height="wrap_content"
7+
tools:context=".view.fragments.personal.ContactDialog">
8+
9+
<!-- TODO: Update blank fragment layout -->
10+
<LinearLayout
11+
android:layout_width="match_parent"
12+
android:layout_height="wrap_content"
13+
android:orientation="vertical"
14+
android:background="@drawable/bottomsheet_round_bg"
15+
android:elevation="16dp"
16+
app:layout_constraintStart_toStartOf="parent"
17+
app:layout_constraintTop_toTopOf="parent"
18+
app:layout_constraintEnd_toEndOf="parent">
19+
20+
<RelativeLayout
21+
android:id="@+id/customToolbar"
22+
android:layout_width="match_parent"
23+
android:layout_height="wrap_content"
24+
android:layout_gravity="center_vertical"
25+
android:layout_marginTop="16dp"
26+
android:background="@color/colorTransparent"
27+
android:clipToPadding="false"
28+
android:elevation="4dp"
29+
android:gravity="center_vertical"
30+
android:padding="16dp">
31+
32+
<androidx.appcompat.widget.AppCompatImageButton
33+
android:id="@+id/ib_back"
34+
android:layout_width="wrap_content"
35+
android:layout_height="wrap_content"
36+
android:layout_alignParentStart="true"
37+
android:layout_centerVertical="true"
38+
android:layout_gravity="center_vertical"
39+
android:background="@color/colorTransparent"
40+
android:clickable="true"
41+
android:focusable="true"
42+
android:paddingStart="0dp"
43+
android:paddingTop="8dp"
44+
android:paddingEnd="8dp"
45+
android:paddingBottom="8dp"
46+
android:scaleType="fitStart"
47+
android:src="@drawable/ic_cross" />
48+
49+
<androidx.appcompat.widget.AppCompatTextView
50+
style="@style/H1TextAppearance"
51+
android:layout_width="wrap_content"
52+
android:layout_height="wrap_content"
53+
android:layout_marginStart="8dp"
54+
android:text="@string/contacts_amp_social_handles"
55+
android:layout_centerInParent="true" />
56+
57+
</RelativeLayout>
58+
59+
<View
60+
android:layout_marginTop="16dp"
61+
android:layout_width="match_parent"
62+
android:layout_height="2dp"
63+
android:background="@color/colorDivider" />
64+
65+
<androidx.appcompat.widget.LinearLayoutCompat
66+
android:layout_width="match_parent"
67+
android:layout_height="wrap_content"
68+
android:orientation="horizontal"
69+
android:layout_gravity="center"
70+
android:gravity="center"
71+
android:weightSum="5">
72+
73+
<com.google.android.material.imageview.ShapeableImageView
74+
android:layout_width="0dp"
75+
android:id="@+id/iv_email"
76+
android:src="@drawable/arroba"
77+
android:layout_weight="1"
78+
android:layout_margin="16dp"
79+
android:layout_height="44dp" />
80+
81+
<com.google.android.material.imageview.ShapeableImageView
82+
android:layout_width="0dp"
83+
android:id="@+id/iv_call"
84+
android:src="@drawable/telephone_call"
85+
android:layout_weight="1"
86+
android:layout_margin="16dp"
87+
android:layout_height="44dp" />
88+
</androidx.appcompat.widget.LinearLayoutCompat>
89+
90+
<androidx.appcompat.widget.LinearLayoutCompat
91+
android:layout_width="match_parent"
92+
android:layout_height="wrap_content"
93+
android:orientation="horizontal"
94+
android:layout_gravity="center"
95+
android:gravity="center"
96+
android:weightSum="5">
97+
98+
<com.google.android.material.imageview.ShapeableImageView
99+
android:layout_width="0dp"
100+
android:id="@+id/iv_in"
101+
android:src="@drawable/ic_linked_in"
102+
android:layout_weight="1"
103+
android:layout_margin="16dp"
104+
android:layout_height="64dp" />
105+
106+
<com.google.android.material.imageview.ShapeableImageView
107+
android:layout_width="0dp"
108+
android:id="@+id/iv_git"
109+
android:src="@drawable/ic_github"
110+
android:layout_weight="1"
111+
android:layout_margin="16dp"
112+
android:layout_height="64dp" />
113+
114+
<com.google.android.material.imageview.ShapeableImageView
115+
android:id="@+id/iv_fb"
116+
android:layout_width="0dp"
117+
android:layout_margin="16dp"
118+
android:src="@drawable/ic_facebook"
119+
android:layout_weight="1"
120+
android:layout_height="64dp" />
121+
</androidx.appcompat.widget.LinearLayoutCompat>
122+
123+
</LinearLayout>
124+
125+
126+
</androidx.constraintlayout.widget.ConstraintLayout>
Lines changed: 31 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<navigation xmlns:android="http://schemas.android.com/apk/res/android"
3-
xmlns:app="http://schemas.android.com/apk/res-auto"
4-
xmlns:tools="http://schemas.android.com/tools"
5-
android:id="@+id/main_nav_graph"
6-
app:startDestination="@id/personal_fragment">
3+
xmlns:app="http://schemas.android.com/apk/res-auto"
4+
xmlns:tools="http://schemas.android.com/tools"
5+
android:id="@+id/main_nav_graph"
6+
app:startDestination="@id/personal_fragment">
77
<fragment
88
android:name="com.foxcoder.cvapplication.view.fragments.experience.ExperienceFragment"
99
android:id="@+id/main_fragment"
10-
tools:layout="@layout/fragment_main"/>
10+
tools:layout="@layout/fragment_main" />
1111
<fragment
1212
android:id="@+id/skill_fragment"
1313
android:name="com.foxcoder.cvapplication.view.fragments.skills.SkillsFragment"
1414
tools:layout="@layout/fragment_skills">
1515
<action
1616
android:id="@+id/action_skill_fragment_to_core_skill_dialog"
17-
app:destination="@id/core_skill_dialog"/>
17+
app:destination="@id/core_skill_dialog" />
1818
</fragment>
1919

2020
<fragment
@@ -23,55 +23,62 @@
2323
tools:layout="@layout/fragment_personal">
2424
<action
2525
android:id="@+id/action_personal_fragment_to_academic_dialog"
26-
app:destination="@id/academic_dialog"/>
26+
app:destination="@id/academic_dialog" />
2727
<action
2828
android:id="@+id/action_personal_fragment_to_training_dialog"
29-
app:destination="@id/training_dialog"/>
29+
app:destination="@id/training_dialog" />
3030
<action
3131
android:id="@+id/action_personal_fragment_to_language_dialog"
32-
app:destination="@id/language_dialog"/>
32+
app:destination="@id/language_dialog" />
3333
<action
3434
android:id="@+id/action_personal_fragment_to_hobby_dialog"
35-
app:destination="@id/hobby_dialog"/>
35+
app:destination="@id/hobby_dialog" />
3636
</fragment>
3737

3838
<fragment
3939
android:id="@+id/project_fragment"
4040
android:name="com.foxcoder.cvapplication.view.fragments.projects.ProjectsFragment"
41-
tools:layout="@layout/fragment_projects"/>
41+
tools:layout="@layout/fragment_projects" />
4242
<action
4343
android:id="@+id/action_global_skill_fragment"
44-
app:destination="@id/skill_fragment"/>
44+
app:destination="@id/skill_fragment" />
4545
<action
4646
android:id="@+id/action_global_main_fragment2"
47-
app:destination="@id/main_fragment"/>
47+
app:destination="@id/main_fragment" />
4848
<action
4949
android:id="@+id/action_global_personal_fragment"
50-
app:destination="@id/personal_fragment"/>
50+
app:destination="@id/personal_fragment" />
5151
<action
5252
android:id="@+id/action_global_project_fragment"
53-
app:destination="@id/project_fragment"/>
53+
app:destination="@id/project_fragment" />
5454

5555
<dialog
5656
android:id="@+id/academic_dialog"
5757
android:name="com.foxcoder.cvapplication.view.fragments.personal.AcademicDialog"
58-
tools:layout="@layout/fragment_academic"
59-
/>
58+
tools:layout="@layout/fragment_academic" />
6059
<dialog
6160
android:id="@+id/training_dialog"
6261
android:name="com.foxcoder.cvapplication.view.fragments.personal.TrainingDialog"
63-
tools:layout="@layout/fragment_training_dialog"/>
62+
tools:layout="@layout/fragment_training_dialog" />
6463

65-
<dialog android:id="@+id/language_dialog"
64+
<dialog
65+
android:id="@+id/language_dialog"
6666
android:name="com.foxcoder.cvapplication.view.fragments.personal.LanguageDialog"
67-
tools:layout="@layout/fragment_language_dialog"/>
67+
tools:layout="@layout/fragment_language_dialog" />
6868

69-
<dialog android:name="com.foxcoder.cvapplication.view.fragments.personal.HobbyDialog"
69+
<dialog
70+
android:name="com.foxcoder.cvapplication.view.fragments.personal.HobbyDialog"
7071
android:id="@+id/hobby_dialog"
71-
tools:layout="@layout/fragment_hobby_dialog"/>
72+
tools:layout="@layout/fragment_hobby_dialog" />
7273

73-
<dialog android:id="@+id/core_skill_dialog"
74+
<dialog
75+
android:id="@+id/core_skill_dialog"
7476
android:name="com.foxcoder.cvapplication.view.fragments.skills.CoreSkillDialog"
75-
tools:layout="@layout/core_skill_dialog"/>
77+
tools:layout="@layout/core_skill_dialog" />
78+
<dialog
79+
android:id="@+id/contactDialog"
80+
android:name="com.foxcoder.cvapplication.view.fragments.personal.ContactDialog"
81+
android:label="fragment_contact_dialog"
82+
tools:layout="@layout/fragment_contact_dialog" />
7683

7784
</navigation>

app/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,5 @@
3131
<string name="see_more_">See more...</string>
3232
<string name="core_skills">Core Skills</string>
3333
<string name="social_handles">Social Handles</string>
34+
<string name="contacts_amp_social_handles"><![CDATA[Contacts & Social Handles]]></string>
3435
</resources>

0 commit comments

Comments
 (0)