From 9b34ef64374314d78105d448d52c417963292cbb Mon Sep 17 00:00:00 2001 From: haldny Date: Fri, 21 Jun 2019 13:25:38 -0300 Subject: [PATCH 1/7] Create the main screen with new UX/UI using DrawerNavigation fixes #182 --- app/src/main/AndroidManifest.xml | 12 ++- .../app/StickySessionApplication.java | 4 +- .../components/MeetingComponent.java | 4 +- .../repository/IRouteRepository.java | 2 +- .../navigation/wrapper/ViewStarter.java | 4 +- .../stickysessions/ui/ViewNames.java | 1 + .../ui/lobby/LobbyActivity.java | 2 +- .../stickysessions/ui/login/LoginActivity.kt | 2 +- .../stickysessions/ui/main/MainActivity.kt | 90 +++++++++++++++++++ ...{MeetingActivity.kt => MeetingFragment.kt} | 41 ++++----- app/src/main/res/color/drawer_item.xml | 5 ++ app/src/main/res/drawable/ic_about.xml | 9 ++ app/src/main/res/drawable/ic_coffee.xml | 9 ++ app/src/main/res/drawable/ic_logout.xml | 9 ++ app/src/main/res/drawable/ic_menu_send.xml | 9 ++ app/src/main/res/drawable/ic_menu_share.xml | 9 ++ app/src/main/res/drawable/ic_notification.xml | 9 ++ app/src/main/res/drawable/ic_settings.xml | 9 ++ app/src/main/res/font/roboto.xml | 7 ++ app/src/main/res/font/roboto_bold.xml | 7 ++ app/src/main/res/layout/activity_lobby.xml | 50 +++++++++++ app/src/main/res/layout/activity_main.xml | 62 +++++-------- .../main/res/layout/activity_main_app_bar.xml | 29 ++++++ .../main/res/layout/activity_main_bottom.xml | 47 ++++++++++ .../main/res/layout/activity_main_content.xml | 18 ++++ .../res/layout/activity_main_nav_header.xml | 45 ++++++++++ app/src/main/res/layout/activity_meeting.xml | 34 ------- app/src/main/res/layout/fragment_meeting.xml | 36 ++++++++ app/src/main/res/menu/drawer_menu.xml | 11 +++ app/src/main/res/menu/profile_menu_drawer.xml | 22 +++++ app/src/main/res/values/colors.xml | 3 +- app/src/main/res/values/dimens.xml | 8 ++ app/src/main/res/values/preloaded_fonts.xml | 2 + app/src/main/res/values/strings.xml | 18 ++++ app/src/main/res/values/styles.xml | 17 ++++ 35 files changed, 539 insertions(+), 107 deletions(-) create mode 100644 app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt rename app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/{MeetingActivity.kt => MeetingFragment.kt} (69%) create mode 100644 app/src/main/res/color/drawer_item.xml create mode 100644 app/src/main/res/drawable/ic_about.xml create mode 100644 app/src/main/res/drawable/ic_coffee.xml create mode 100644 app/src/main/res/drawable/ic_logout.xml create mode 100644 app/src/main/res/drawable/ic_menu_send.xml create mode 100644 app/src/main/res/drawable/ic_menu_share.xml create mode 100644 app/src/main/res/drawable/ic_notification.xml create mode 100644 app/src/main/res/drawable/ic_settings.xml create mode 100644 app/src/main/res/font/roboto.xml create mode 100644 app/src/main/res/font/roboto_bold.xml create mode 100644 app/src/main/res/layout/activity_lobby.xml create mode 100644 app/src/main/res/layout/activity_main_app_bar.xml create mode 100644 app/src/main/res/layout/activity_main_bottom.xml create mode 100644 app/src/main/res/layout/activity_main_content.xml create mode 100644 app/src/main/res/layout/activity_main_nav_header.xml delete mode 100644 app/src/main/res/layout/activity_meeting.xml create mode 100644 app/src/main/res/layout/fragment_meeting.xml create mode 100644 app/src/main/res/menu/drawer_menu.xml create mode 100644 app/src/main/res/menu/profile_menu_drawer.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index bb9ca60b..95a386a0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -35,9 +35,17 @@ + + android:name=".ui.main.MainActivity" + android:screenOrientation="${orientation}" > + + + + + + + > (){{ put(ViewNames.LOGIN_ACTIVITY, LoginActivity.class); put(ViewNames.LOBBY_ACTIVITY, LobbyActivity.class); - put(ViewNames.MEETING_ACTIVITY, MeetingActivity.class); put(ViewNames.SESSION_ACTIVITY, SessionActivity.class); put(ViewNames.LIST_ACTIVITY, ListSessionsActivity.class); + put(ViewNames.MAIN_ACTIVITY, MainActivity.class); }}; public void goNext(Context context, String activityName, boolean shouldClearStack) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java index 32597f3b..04429fd7 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java @@ -7,5 +7,6 @@ public class ViewNames { public static final String MEETING_ACTIVITY = "meeting_activity"; public static final String SESSION_ACTIVITY = "session_activity"; public static final String LIST_ACTIVITY = "list_activity"; + public static final String MAIN_ACTIVITY = "main_activity"; } diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java index 07de3126..d5c19da3 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java @@ -47,7 +47,7 @@ public class LobbyActivity extends AppCompatActivity implements LobbyContract.Vi protected void onCreate(Bundle savedInstanceState) { setTheme(R.style.AppTheme); super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); + setContentView(R.layout.activity_lobby); ((StickySessionApplication) getApplication()).inject(this); diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt index df1ba4aa..192e7823 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt @@ -106,8 +106,8 @@ class LoginActivity : AppCompatActivity() { // Result returned from launching the Intent from GoogleSignInApi.getSignInIntent(...); if (requestCode == RC_SIGN_IN) { - val task = GoogleSignIn.getSignedInAccountFromIntent(data) try { + val task = GoogleSignIn.getSignedInAccountFromIntent(data) // Google Sign In was successful, authenticate with Firebase val account = task.getResult(ApiException::class.java) firebaseAuthWithGoogle(account!!) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt new file mode 100644 index 00000000..6eb25bcc --- /dev/null +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt @@ -0,0 +1,90 @@ +package br.org.cesar.discordtime.stickysessions.ui.main + +import android.os.Bundle +import android.view.Menu +import android.view.MenuItem +import android.widget.TextView +import androidx.appcompat.app.ActionBarDrawerToggle +import androidx.appcompat.app.AppCompatActivity +import androidx.appcompat.widget.Toolbar +import androidx.core.view.GravityCompat +import br.org.cesar.discordtime.stickysessions.R +import br.org.cesar.discordtime.stickysessions.ui.meeting.MeetingFragment +import com.google.android.material.navigation.NavigationView +import com.google.android.material.snackbar.Snackbar + +import kotlinx.android.synthetic.main.activity_main.* +import kotlinx.android.synthetic.main.activity_main_app_bar.* + +class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelectedListener { + + private lateinit var mToolbarTitle: TextView + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_main) + configureToolbar() + + fab.setOnClickListener { view -> + Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) + .setAction("Action", null).show() + } + + supportFragmentManager.beginTransaction() + .replace(R.id.main_container, MeetingFragment()).commit() + } + + private fun configureToolbar() { + val toolbar = findViewById(R.id.toolbar) + setSupportActionBar(toolbar) + + supportActionBar?.apply { + setDisplayShowHomeEnabled(true) + setDisplayHomeAsUpEnabled(true) + } + + mToolbarTitle = findViewById(R.id.toolbar_title) + mToolbarTitle.setText(R.string.nav_header_desc) + + val toggle = ActionBarDrawerToggle( + this, drawer_layout, toolbar, R.string.navigation_drawer_open, + R.string.navigation_drawer_close + ) + + drawer_layout.addDrawerListener(toggle) + toggle.syncState() + + nav_view.setNavigationItemSelectedListener(this) + } + + override fun onBackPressed() { + if (drawer_layout.isDrawerOpen(GravityCompat.START)) { + drawer_layout.closeDrawer(GravityCompat.START) + } else { + super.onBackPressed() + } + } + + override fun onCreateOptionsMenu(menu: Menu): Boolean { + menuInflater.inflate(R.menu.drawer_menu, menu) + return true + } + + override fun onNavigationItemSelected(item: MenuItem): Boolean { + when (item.itemId) { + R.id.nav_meetings -> { + supportFragmentManager.beginTransaction() + .replace(R.id.main_container, MeetingFragment()).commit() + } + R.id.nav_about -> { + + } + R.id.nav_settings -> { + + } + } + + drawer_layout.closeDrawer(GravityCompat.START) + return true + } +} diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt similarity index 69% rename from app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingActivity.kt rename to app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt index e7326e3a..ffec8a7f 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt @@ -3,12 +3,13 @@ package br.org.cesar.discordtime.stickysessions.ui.meeting import android.annotation.SuppressLint import android.os.Bundle import android.util.Log +import android.view.LayoutInflater import android.view.View +import android.view.ViewGroup import android.widget.ProgressBar -import android.widget.TextView -import androidx.appcompat.app.AppCompatActivity -import androidx.appcompat.widget.Toolbar +import androidx.fragment.app.Fragment import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView import br.org.cesar.discordtime.stickysessions.R import br.org.cesar.discordtime.stickysessions.app.StickySessionApplication import br.org.cesar.discordtime.stickysessions.navigation.exception.InvalidViewNameException @@ -18,42 +19,38 @@ import br.org.cesar.discordtime.stickysessions.navigation.wrapper.IViewStarter import br.org.cesar.discordtime.stickysessions.presentation.meeting.MeetingContract import br.org.cesar.discordtime.stickysessions.presentation.meeting.MeetingItem import br.org.cesar.discordtime.stickysessions.ui.ViewNames -import kotlinx.android.synthetic.main.activity_meeting.* import javax.inject.Inject -import kotlinx.android.synthetic.main.activity_meeting.recycler_view_meetings as mRecyclerView -class MeetingActivity : AppCompatActivity(), MeetingContract.View { +class MeetingFragment : Fragment(), MeetingContract.View { @Inject lateinit var mPresenter: MeetingContract.Presenter @Inject lateinit var mViewStarter: IViewStarter lateinit var mProgressBar: ProgressBar + lateinit var mRecyclerView: RecyclerView lateinit var mAdapter: MeetingItemAdapter override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - setContentView(R.layout.activity_meeting) - (application as StickySessionApplication).inject(this) - - mProgressBar = findViewById(R.id.progressbar) - configureToolbar() - configureRecycleView() + (activity?.application as StickySessionApplication).inject(this) } - private fun configureToolbar() { - val toolbar = findViewById(R.id.toolbar) - setSupportActionBar(toolbar) + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, + savedInstanceState: Bundle?): View? { + val rootView = inflater.inflate(R.layout.fragment_meeting, container, false) - val toolbarTitle = findViewById(R.id.toolbar_title) - toolbarTitle.setText(R.string.toolbar_title_meetings) + mProgressBar = rootView.findViewById(R.id.progressbar) + configureRecycleView(rootView) + return rootView } @SuppressLint("CheckResult") - private fun configureRecycleView() { - mAdapter = MeetingItemAdapter(this) + private fun configureRecycleView(rootView: View) { + mAdapter = MeetingItemAdapter(rootView.context) + mRecyclerView = rootView.findViewById(R.id.recycler_view_meetings) mRecyclerView.apply { - layoutManager = LinearLayoutManager(this@MeetingActivity) + layoutManager = LinearLayoutManager(rootView.context) adapter = mAdapter } mAdapter.clickEvent.subscribe { @@ -100,10 +97,10 @@ class MeetingActivity : AppCompatActivity(), MeetingContract.View { @Throws(InvalidViewNameException::class) override fun goNext(route: Route, bundle: IBundle) { - mViewStarter.goNext(this, route.to, route.shouldClearStack, bundle) + mViewStarter.goNext(activity, route.to, route.shouldClearStack, bundle) } companion object { - const val TAG = "MeetingActivity" + const val TAG = "MeetingFragment" } } diff --git a/app/src/main/res/color/drawer_item.xml b/app/src/main/res/color/drawer_item.xml new file mode 100644 index 00000000..d772db7e --- /dev/null +++ b/app/src/main/res/color/drawer_item.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_about.xml b/app/src/main/res/drawable/ic_about.xml new file mode 100644 index 00000000..e3c2ae89 --- /dev/null +++ b/app/src/main/res/drawable/ic_about.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_coffee.xml b/app/src/main/res/drawable/ic_coffee.xml new file mode 100644 index 00000000..96df31a1 --- /dev/null +++ b/app/src/main/res/drawable/ic_coffee.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_logout.xml b/app/src/main/res/drawable/ic_logout.xml new file mode 100644 index 00000000..6f40d772 --- /dev/null +++ b/app/src/main/res/drawable/ic_logout.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_menu_send.xml b/app/src/main/res/drawable/ic_menu_send.xml new file mode 100644 index 00000000..9745066f --- /dev/null +++ b/app/src/main/res/drawable/ic_menu_send.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_menu_share.xml b/app/src/main/res/drawable/ic_menu_share.xml new file mode 100644 index 00000000..b3e39e22 --- /dev/null +++ b/app/src/main/res/drawable/ic_menu_share.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_notification.xml b/app/src/main/res/drawable/ic_notification.xml new file mode 100644 index 00000000..232803dd --- /dev/null +++ b/app/src/main/res/drawable/ic_notification.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_settings.xml b/app/src/main/res/drawable/ic_settings.xml new file mode 100644 index 00000000..d36e89c5 --- /dev/null +++ b/app/src/main/res/drawable/ic_settings.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/font/roboto.xml b/app/src/main/res/font/roboto.xml new file mode 100644 index 00000000..2641caff --- /dev/null +++ b/app/src/main/res/font/roboto.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/font/roboto_bold.xml b/app/src/main/res/font/roboto_bold.xml new file mode 100644 index 00000000..1e8c20a1 --- /dev/null +++ b/app/src/main/res/font/roboto_bold.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/layout/activity_lobby.xml b/app/src/main/res/layout/activity_lobby.xml new file mode 100644 index 00000000..3bb53221 --- /dev/null +++ b/app/src/main/res/layout/activity_lobby.xml @@ -0,0 +1,50 @@ + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 3bb53221..0248be28 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,50 +1,34 @@ - + android:fitsSystemWindows="true" + tools:openDrawer="start"> - + android:layout_height="match_parent"/> - - - + android:layout_height="match_parent" + android:layout_gravity="start" + android:fitsSystemWindows="true" + android:background="@color/white" + app:itemIconTint="@color/drawer_item" + app:itemTextColor="@color/drawer_item" + app:itemBackground="@color/white" + app:headerLayout="@layout/activity_main_nav_header" + app:menu="@menu/profile_menu_drawer"> + + + + - + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_app_bar.xml b/app/src/main/res/layout/activity_main_app_bar.xml new file mode 100644 index 00000000..f6e491e6 --- /dev/null +++ b/app/src/main/res/layout/activity_main_app_bar.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_bottom.xml b/app/src/main/res/layout/activity_main_bottom.xml new file mode 100644 index 00000000..264507c0 --- /dev/null +++ b/app/src/main/res/layout/activity_main_bottom.xml @@ -0,0 +1,47 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_content.xml b/app/src/main/res/layout/activity_main_content.xml new file mode 100644 index 00000000..b2b3d2e0 --- /dev/null +++ b/app/src/main/res/layout/activity_main_content.xml @@ -0,0 +1,18 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_nav_header.xml b/app/src/main/res/layout/activity_main_nav_header.xml new file mode 100644 index 00000000..60fb18a7 --- /dev/null +++ b/app/src/main/res/layout/activity_main_nav_header.xml @@ -0,0 +1,45 @@ + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_meeting.xml b/app/src/main/res/layout/activity_meeting.xml deleted file mode 100644 index 1e0686d5..00000000 --- a/app/src/main/res/layout/activity_meeting.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - diff --git a/app/src/main/res/layout/fragment_meeting.xml b/app/src/main/res/layout/fragment_meeting.xml new file mode 100644 index 00000000..cd19d6b1 --- /dev/null +++ b/app/src/main/res/layout/fragment_meeting.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/menu/drawer_menu.xml b/app/src/main/res/menu/drawer_menu.xml new file mode 100644 index 00000000..4671d535 --- /dev/null +++ b/app/src/main/res/menu/drawer_menu.xml @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/profile_menu_drawer.xml b/app/src/main/res/menu/profile_menu_drawer.xml new file mode 100644 index 00000000..da046169 --- /dev/null +++ b/app/src/main/res/menu/profile_menu_drawer.xml @@ -0,0 +1,22 @@ + + + + + + + + + + diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 9c4280bf..d5f5a88b 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -8,10 +8,11 @@ #ffc000 #ffffff + #000000 #f3f3f3 #42023e #2d042a - #ff534b + #FF534B #b3ffffff #8b8b8b diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 57d8862e..ea1854ae 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -1,4 +1,12 @@ 147dp + + + 16dp + 16dp + 8dp + 176dp + 16dp + 13sp \ No newline at end of file diff --git a/app/src/main/res/values/preloaded_fonts.xml b/app/src/main/res/values/preloaded_fonts.xml index f353d83a..1d19856d 100644 --- a/app/src/main/res/values/preloaded_fonts.xml +++ b/app/src/main/res/values/preloaded_fonts.xml @@ -2,5 +2,7 @@ @font/annie_use_your_telescope + @font/roboto + @font/roboto_bold diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index eececf82..9e638267 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -35,10 +35,28 @@ responses 6 responses + dot icon representing sessions icon representing participants %s %s Recents Older + + Open navigation drawer + Close navigation drawer + Maria Silva + maria.silva@gmail.com + Navigation header + Meetings + About + Settings + v %1$s + Logout Icon + LOG OUT + + meetings + + + Hello blank fragment diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 3bdaee5d..c0fd4280 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -149,4 +149,21 @@ @color/chip_state_colors + + + + + + + + From b4199e413de549bb8d101585870cdffe9a265a52 Mon Sep 17 00:00:00 2001 From: haldny Date: Fri, 21 Jun 2019 13:25:38 -0300 Subject: [PATCH 2/7] Create the main screen with new UX/UI using DrawerNavigation fixes #182 --- app/src/main/AndroidManifest.xml | 12 +- .../app/StickySessionApplication.java | 6 +- .../components/MeetingComponent.java | 4 +- .../repository/IRouteRepository.java | 2 +- .../navigation/wrapper/ViewStarter.java | 4 +- .../stickysessions/ui/ViewNames.java | 1 + .../ui/lobby/LobbyActivity.java | 2 +- .../stickysessions/ui/login/LoginActivity.kt | 2 +- .../stickysessions/ui/main/MainActivity.kt | 104 ++++++++++++++++++ ...{MeetingActivity.kt => MeetingFragment.kt} | 45 ++++---- app/src/main/res/color/drawer_item.xml | 5 + app/src/main/res/drawable/ic_about.xml | 9 ++ app/src/main/res/drawable/ic_coffee.xml | 9 ++ app/src/main/res/drawable/ic_logout.xml | 9 ++ app/src/main/res/drawable/ic_menu_send.xml | 9 ++ app/src/main/res/drawable/ic_menu_share.xml | 9 ++ app/src/main/res/drawable/ic_notification.xml | 9 ++ app/src/main/res/drawable/ic_settings.xml | 9 ++ app/src/main/res/font/roboto.xml | 7 ++ app/src/main/res/font/roboto_bold.xml | 7 ++ app/src/main/res/layout/activity_lobby.xml | 49 +++++++++ app/src/main/res/layout/activity_main.xml | 62 ++++------- .../main/res/layout/activity_main_app_bar.xml | 29 +++++ .../main/res/layout/activity_main_bottom.xml | 45 ++++++++ .../main/res/layout/activity_main_content.xml | 18 +++ .../res/layout/activity_main_nav_header.xml | 45 ++++++++ app/src/main/res/layout/activity_meeting.xml | 34 ------ app/src/main/res/layout/fragment_meeting.xml | 36 ++++++ app/src/main/res/menu-v26/drawer_menu.xml | 11 ++ app/src/main/res/menu/drawer_menu.xml | 16 +++ app/src/main/res/menu/profile_menu_drawer.xml | 22 ++++ app/src/main/res/values/colors.xml | 3 +- app/src/main/res/values/dimens.xml | 8 ++ app/src/main/res/values/preloaded_fonts.xml | 2 + app/src/main/res/values/strings.xml | 18 +++ app/src/main/res/values/styles.xml | 17 +++ 36 files changed, 569 insertions(+), 110 deletions(-) create mode 100644 app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt rename app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/{MeetingActivity.kt => MeetingFragment.kt} (67%) create mode 100644 app/src/main/res/color/drawer_item.xml create mode 100644 app/src/main/res/drawable/ic_about.xml create mode 100644 app/src/main/res/drawable/ic_coffee.xml create mode 100644 app/src/main/res/drawable/ic_logout.xml create mode 100644 app/src/main/res/drawable/ic_menu_send.xml create mode 100644 app/src/main/res/drawable/ic_menu_share.xml create mode 100644 app/src/main/res/drawable/ic_notification.xml create mode 100644 app/src/main/res/drawable/ic_settings.xml create mode 100644 app/src/main/res/font/roboto.xml create mode 100644 app/src/main/res/font/roboto_bold.xml create mode 100644 app/src/main/res/layout/activity_lobby.xml create mode 100644 app/src/main/res/layout/activity_main_app_bar.xml create mode 100644 app/src/main/res/layout/activity_main_bottom.xml create mode 100644 app/src/main/res/layout/activity_main_content.xml create mode 100644 app/src/main/res/layout/activity_main_nav_header.xml delete mode 100644 app/src/main/res/layout/activity_meeting.xml create mode 100644 app/src/main/res/layout/fragment_meeting.xml create mode 100644 app/src/main/res/menu-v26/drawer_menu.xml create mode 100644 app/src/main/res/menu/drawer_menu.xml create mode 100644 app/src/main/res/menu/profile_menu_drawer.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index bb9ca60b..95a386a0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -35,9 +35,17 @@ + + android:name=".ui.main.MainActivity" + android:screenOrientation="${orientation}" > + + + + + + + > (){{ put(ViewNames.LOGIN_ACTIVITY, LoginActivity.class); put(ViewNames.LOBBY_ACTIVITY, LobbyActivity.class); - put(ViewNames.MEETING_ACTIVITY, MeetingActivity.class); put(ViewNames.SESSION_ACTIVITY, SessionActivity.class); put(ViewNames.LIST_ACTIVITY, ListSessionsActivity.class); + put(ViewNames.MAIN_ACTIVITY, MainActivity.class); }}; public void goNext(Context context, String activityName, boolean shouldClearStack) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java index 32597f3b..04429fd7 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java @@ -7,5 +7,6 @@ public class ViewNames { public static final String MEETING_ACTIVITY = "meeting_activity"; public static final String SESSION_ACTIVITY = "session_activity"; public static final String LIST_ACTIVITY = "list_activity"; + public static final String MAIN_ACTIVITY = "main_activity"; } diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java index 07de3126..d5c19da3 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java @@ -47,7 +47,7 @@ public class LobbyActivity extends AppCompatActivity implements LobbyContract.Vi protected void onCreate(Bundle savedInstanceState) { setTheme(R.style.AppTheme); super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); + setContentView(R.layout.activity_lobby); ((StickySessionApplication) getApplication()).inject(this); diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt index df1ba4aa..192e7823 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt @@ -106,8 +106,8 @@ class LoginActivity : AppCompatActivity() { // Result returned from launching the Intent from GoogleSignInApi.getSignInIntent(...); if (requestCode == RC_SIGN_IN) { - val task = GoogleSignIn.getSignedInAccountFromIntent(data) try { + val task = GoogleSignIn.getSignedInAccountFromIntent(data) // Google Sign In was successful, authenticate with Firebase val account = task.getResult(ApiException::class.java) firebaseAuthWithGoogle(account!!) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt new file mode 100644 index 00000000..65cc5b74 --- /dev/null +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt @@ -0,0 +1,104 @@ +package br.org.cesar.discordtime.stickysessions.ui.main + +import android.os.Build +import android.os.Bundle +import android.view.Menu +import android.view.MenuItem +import android.widget.TextView +import androidx.appcompat.app.ActionBarDrawerToggle +import androidx.appcompat.app.AppCompatActivity +import androidx.appcompat.widget.Toolbar +import androidx.core.content.ContextCompat +import androidx.core.graphics.drawable.DrawableCompat +import androidx.core.view.GravityCompat +import br.org.cesar.discordtime.stickysessions.R +import br.org.cesar.discordtime.stickysessions.ui.meeting.MeetingFragment +import com.google.android.material.navigation.NavigationView +import com.google.android.material.snackbar.Snackbar + +import kotlinx.android.synthetic.main.activity_main.* +import kotlinx.android.synthetic.main.activity_main_app_bar.* + +class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelectedListener { + + private lateinit var mToolbarTitle: TextView + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_main) + configureToolbar() + + fab.setOnClickListener { view -> + Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) + .setAction("Action", null).show() + } + + supportFragmentManager.beginTransaction() + .replace(R.id.main_container, MeetingFragment()).commit() + } + + private fun configureToolbar() { + val toolbar = findViewById(R.id.toolbar) + setSupportActionBar(toolbar) + + supportActionBar?.apply { + setDisplayShowHomeEnabled(true) + setDisplayHomeAsUpEnabled(true) + } + + mToolbarTitle = findViewById(R.id.toolbar_title) + mToolbarTitle.apply { + text = getString(R.string.nav_header_desc) + } + + val toggle = ActionBarDrawerToggle( + this, drawer_layout, toolbar, R.string.navigation_drawer_open, + R.string.navigation_drawer_close + ) + + drawer_layout.addDrawerListener(toggle) + toggle.syncState() + + nav_view.setNavigationItemSelectedListener(this) + } + + override fun onBackPressed() { + if (drawer_layout.isDrawerOpen(GravityCompat.START)) { + drawer_layout.closeDrawer(GravityCompat.START) + } else { + super.onBackPressed() + } + } + + override fun onCreateOptionsMenu(menu: Menu): Boolean { + menuInflater.inflate(R.menu.drawer_menu, menu) + + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) { + val icon = menu.findItem(R.id.notification_menu).icon + val drawable = DrawableCompat.wrap(icon) + DrawableCompat.setTint(drawable, ContextCompat.getColor(this, R.color.coral)) + menu.findItem(R.id.notification_menu).apply { + setIcon(drawable) + } + } + + return true + } + + override fun onNavigationItemSelected(item: MenuItem): Boolean { + when (item.itemId) { + R.id.nav_meetings -> { showMeetingFragment() } + R.id.nav_about -> { } + R.id.nav_settings -> { } + } + + drawer_layout.closeDrawer(GravityCompat.START) + return true + } + + private fun showMeetingFragment() { + supportFragmentManager.beginTransaction() + .replace(R.id.main_container, MeetingFragment()).commit() + } + +} diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt similarity index 67% rename from app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingActivity.kt rename to app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt index e7326e3a..b2de5153 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt @@ -3,12 +3,13 @@ package br.org.cesar.discordtime.stickysessions.ui.meeting import android.annotation.SuppressLint import android.os.Bundle import android.util.Log +import android.view.LayoutInflater import android.view.View +import android.view.ViewGroup import android.widget.ProgressBar -import android.widget.TextView -import androidx.appcompat.app.AppCompatActivity -import androidx.appcompat.widget.Toolbar +import androidx.fragment.app.Fragment import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView import br.org.cesar.discordtime.stickysessions.R import br.org.cesar.discordtime.stickysessions.app.StickySessionApplication import br.org.cesar.discordtime.stickysessions.navigation.exception.InvalidViewNameException @@ -18,42 +19,38 @@ import br.org.cesar.discordtime.stickysessions.navigation.wrapper.IViewStarter import br.org.cesar.discordtime.stickysessions.presentation.meeting.MeetingContract import br.org.cesar.discordtime.stickysessions.presentation.meeting.MeetingItem import br.org.cesar.discordtime.stickysessions.ui.ViewNames -import kotlinx.android.synthetic.main.activity_meeting.* import javax.inject.Inject -import kotlinx.android.synthetic.main.activity_meeting.recycler_view_meetings as mRecyclerView -class MeetingActivity : AppCompatActivity(), MeetingContract.View { +class MeetingFragment : Fragment(), MeetingContract.View { @Inject lateinit var mPresenter: MeetingContract.Presenter @Inject lateinit var mViewStarter: IViewStarter - lateinit var mProgressBar: ProgressBar - lateinit var mAdapter: MeetingItemAdapter + private lateinit var mProgressBar: ProgressBar + private lateinit var mRecyclerView: RecyclerView + private lateinit var mAdapter: MeetingItemAdapter override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - setContentView(R.layout.activity_meeting) - (application as StickySessionApplication).inject(this) - - mProgressBar = findViewById(R.id.progressbar) - configureToolbar() - configureRecycleView() + (activity?.application as StickySessionApplication).inject(this) } - private fun configureToolbar() { - val toolbar = findViewById(R.id.toolbar) - setSupportActionBar(toolbar) + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, + savedInstanceState: Bundle?): View? { + val rootView = inflater.inflate(R.layout.fragment_meeting, container, false) - val toolbarTitle = findViewById(R.id.toolbar_title) - toolbarTitle.setText(R.string.toolbar_title_meetings) + mProgressBar = rootView.findViewById(R.id.progressbar) + configureRecyclerView(rootView) + return rootView } @SuppressLint("CheckResult") - private fun configureRecycleView() { - mAdapter = MeetingItemAdapter(this) + private fun configureRecyclerView(rootView: View) { + mAdapter = MeetingItemAdapter(rootView.context) + mRecyclerView = rootView.findViewById(R.id.recycler_view_meetings) mRecyclerView.apply { - layoutManager = LinearLayoutManager(this@MeetingActivity) + layoutManager = LinearLayoutManager(rootView.context) adapter = mAdapter } mAdapter.clickEvent.subscribe { @@ -100,10 +97,10 @@ class MeetingActivity : AppCompatActivity(), MeetingContract.View { @Throws(InvalidViewNameException::class) override fun goNext(route: Route, bundle: IBundle) { - mViewStarter.goNext(this, route.to, route.shouldClearStack, bundle) + mViewStarter.goNext(activity, route.to, route.shouldClearStack, bundle) } companion object { - const val TAG = "MeetingActivity" + const val TAG = "MeetingFragment" } } diff --git a/app/src/main/res/color/drawer_item.xml b/app/src/main/res/color/drawer_item.xml new file mode 100644 index 00000000..d772db7e --- /dev/null +++ b/app/src/main/res/color/drawer_item.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_about.xml b/app/src/main/res/drawable/ic_about.xml new file mode 100644 index 00000000..e3c2ae89 --- /dev/null +++ b/app/src/main/res/drawable/ic_about.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_coffee.xml b/app/src/main/res/drawable/ic_coffee.xml new file mode 100644 index 00000000..96df31a1 --- /dev/null +++ b/app/src/main/res/drawable/ic_coffee.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_logout.xml b/app/src/main/res/drawable/ic_logout.xml new file mode 100644 index 00000000..6f40d772 --- /dev/null +++ b/app/src/main/res/drawable/ic_logout.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_menu_send.xml b/app/src/main/res/drawable/ic_menu_send.xml new file mode 100644 index 00000000..9745066f --- /dev/null +++ b/app/src/main/res/drawable/ic_menu_send.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_menu_share.xml b/app/src/main/res/drawable/ic_menu_share.xml new file mode 100644 index 00000000..b3e39e22 --- /dev/null +++ b/app/src/main/res/drawable/ic_menu_share.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_notification.xml b/app/src/main/res/drawable/ic_notification.xml new file mode 100644 index 00000000..232803dd --- /dev/null +++ b/app/src/main/res/drawable/ic_notification.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_settings.xml b/app/src/main/res/drawable/ic_settings.xml new file mode 100644 index 00000000..d36e89c5 --- /dev/null +++ b/app/src/main/res/drawable/ic_settings.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/font/roboto.xml b/app/src/main/res/font/roboto.xml new file mode 100644 index 00000000..2641caff --- /dev/null +++ b/app/src/main/res/font/roboto.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/font/roboto_bold.xml b/app/src/main/res/font/roboto_bold.xml new file mode 100644 index 00000000..1e8c20a1 --- /dev/null +++ b/app/src/main/res/font/roboto_bold.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/layout/activity_lobby.xml b/app/src/main/res/layout/activity_lobby.xml new file mode 100644 index 00000000..781346d3 --- /dev/null +++ b/app/src/main/res/layout/activity_lobby.xml @@ -0,0 +1,49 @@ + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 3bb53221..0248be28 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,50 +1,34 @@ - + android:fitsSystemWindows="true" + tools:openDrawer="start"> - + android:layout_height="match_parent"/> - - - + android:layout_height="match_parent" + android:layout_gravity="start" + android:fitsSystemWindows="true" + android:background="@color/white" + app:itemIconTint="@color/drawer_item" + app:itemTextColor="@color/drawer_item" + app:itemBackground="@color/white" + app:headerLayout="@layout/activity_main_nav_header" + app:menu="@menu/profile_menu_drawer"> + + + + - + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_app_bar.xml b/app/src/main/res/layout/activity_main_app_bar.xml new file mode 100644 index 00000000..f6e491e6 --- /dev/null +++ b/app/src/main/res/layout/activity_main_app_bar.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_bottom.xml b/app/src/main/res/layout/activity_main_bottom.xml new file mode 100644 index 00000000..cf605dbd --- /dev/null +++ b/app/src/main/res/layout/activity_main_bottom.xml @@ -0,0 +1,45 @@ + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_content.xml b/app/src/main/res/layout/activity_main_content.xml new file mode 100644 index 00000000..b2b3d2e0 --- /dev/null +++ b/app/src/main/res/layout/activity_main_content.xml @@ -0,0 +1,18 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_nav_header.xml b/app/src/main/res/layout/activity_main_nav_header.xml new file mode 100644 index 00000000..60fb18a7 --- /dev/null +++ b/app/src/main/res/layout/activity_main_nav_header.xml @@ -0,0 +1,45 @@ + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_meeting.xml b/app/src/main/res/layout/activity_meeting.xml deleted file mode 100644 index 1e0686d5..00000000 --- a/app/src/main/res/layout/activity_meeting.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - diff --git a/app/src/main/res/layout/fragment_meeting.xml b/app/src/main/res/layout/fragment_meeting.xml new file mode 100644 index 00000000..cd19d6b1 --- /dev/null +++ b/app/src/main/res/layout/fragment_meeting.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/menu-v26/drawer_menu.xml b/app/src/main/res/menu-v26/drawer_menu.xml new file mode 100644 index 00000000..7368cb9e --- /dev/null +++ b/app/src/main/res/menu-v26/drawer_menu.xml @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/drawer_menu.xml b/app/src/main/res/menu/drawer_menu.xml new file mode 100644 index 00000000..9f2c6b58 --- /dev/null +++ b/app/src/main/res/menu/drawer_menu.xml @@ -0,0 +1,16 @@ + + + >>>>>> 9b34ef6... Create the main screen with new UX/UI using DrawerNavigation + app:showAsAction="always" + android:title="@string/bt_share_session"> + + \ No newline at end of file diff --git a/app/src/main/res/menu/profile_menu_drawer.xml b/app/src/main/res/menu/profile_menu_drawer.xml new file mode 100644 index 00000000..da046169 --- /dev/null +++ b/app/src/main/res/menu/profile_menu_drawer.xml @@ -0,0 +1,22 @@ + + + + + + + + + + diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 9c4280bf..d5f5a88b 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -8,10 +8,11 @@ #ffc000 #ffffff + #000000 #f3f3f3 #42023e #2d042a - #ff534b + #FF534B #b3ffffff #8b8b8b diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 57d8862e..ea1854ae 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -1,4 +1,12 @@ 147dp + + + 16dp + 16dp + 8dp + 176dp + 16dp + 13sp \ No newline at end of file diff --git a/app/src/main/res/values/preloaded_fonts.xml b/app/src/main/res/values/preloaded_fonts.xml index f353d83a..1d19856d 100644 --- a/app/src/main/res/values/preloaded_fonts.xml +++ b/app/src/main/res/values/preloaded_fonts.xml @@ -2,5 +2,7 @@ @font/annie_use_your_telescope + @font/roboto + @font/roboto_bold diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index eececf82..9e638267 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -35,10 +35,28 @@ responses 6 responses + dot icon representing sessions icon representing participants %s %s Recents Older + + Open navigation drawer + Close navigation drawer + Maria Silva + maria.silva@gmail.com + Navigation header + Meetings + About + Settings + v %1$s + Logout Icon + LOG OUT + + meetings + + + Hello blank fragment diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 3bdaee5d..c0fd4280 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -149,4 +149,21 @@ @color/chip_state_colors + + + + + + + + From d5aaee82c87fe04f6541a67a182516e171e4b8d6 Mon Sep 17 00:00:00 2001 From: Omni Date: Thu, 24 Oct 2019 21:46:03 +0200 Subject: [PATCH 3/7] [#147]Convert to Kotlin- ui/ViewNames.java 1-Add new kotlin class ViewNames in ui package with constants provided in ViewNames.java but in kotlin . 2-remove viewNames.java --- .../discordtime/stickysessions/ui/ViewNames.java | 11 ----------- .../cesar/discordtime/stickysessions/ui/ViewNames.kt | 9 +++++++++ 2 files changed, 9 insertions(+), 11 deletions(-) delete mode 100644 app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java create mode 100644 app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.kt diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java deleted file mode 100644 index 32597f3b..00000000 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.java +++ /dev/null @@ -1,11 +0,0 @@ -package br.org.cesar.discordtime.stickysessions.ui; - -public class ViewNames { - - public static final String LOGIN_ACTIVITY = "login_activity"; - public static final String LOBBY_ACTIVITY = "lobby_activity"; - public static final String MEETING_ACTIVITY = "meeting_activity"; - public static final String SESSION_ACTIVITY = "session_activity"; - public static final String LIST_ACTIVITY = "list_activity"; - -} diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.kt new file mode 100644 index 00000000..7d48a5df --- /dev/null +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/ViewNames.kt @@ -0,0 +1,9 @@ +package br.org.cesar.discordtime.stickysessions.ui + +object ViewNames { + const val LOGIN_ACTIVITY = "login_activity" + const val LOBBY_ACTIVITY = "lobby_activity" + const val MEETING_ACTIVITY = "meeting_activity" + const val SESSION_ACTIVITY = "session_activity" + const val LIST_ACTIVITY = "list_activity" +} \ No newline at end of file From 59d232ab9ca18585b8f59e6a5a79193a011a1a11 Mon Sep 17 00:00:00 2001 From: haldny Date: Fri, 21 Jun 2019 13:25:38 -0300 Subject: [PATCH 4/7] Create the main screen with new UX/UI using DrawerNavigation fixes #182 --- app/src/main/AndroidManifest.xml | 12 +- .../app/StickySessionApplication.java | 6 +- .../components/MeetingComponent.java | 4 +- .../repository/IRouteRepository.java | 2 +- .../navigation/wrapper/ViewStarter.java | 4 +- .../ui/lobby/LobbyActivity.java | 2 +- .../stickysessions/ui/login/LoginActivity.kt | 2 +- .../stickysessions/ui/main/MainActivity.kt | 107 ++++++++++++++++++ ...{MeetingActivity.kt => MeetingFragment.kt} | 45 ++++---- app/src/main/res/color/drawer_item.xml | 5 + app/src/main/res/drawable/ic_about.xml | 9 ++ app/src/main/res/drawable/ic_coffee.xml | 9 ++ app/src/main/res/drawable/ic_logout.xml | 9 ++ app/src/main/res/drawable/ic_menu_send.xml | 9 ++ app/src/main/res/drawable/ic_menu_share.xml | 9 ++ app/src/main/res/drawable/ic_notification.xml | 9 ++ app/src/main/res/drawable/ic_settings.xml | 9 ++ app/src/main/res/font/roboto.xml | 7 ++ app/src/main/res/font/roboto_bold.xml | 7 ++ app/src/main/res/layout/activity_lobby.xml | 49 ++++++++ app/src/main/res/layout/activity_main.xml | 62 ++++------ .../main/res/layout/activity_main_app_bar.xml | 29 +++++ .../main/res/layout/activity_main_bottom.xml | 45 ++++++++ .../main/res/layout/activity_main_content.xml | 18 +++ .../res/layout/activity_main_nav_header.xml | 44 +++++++ app/src/main/res/layout/activity_meeting.xml | 34 ------ app/src/main/res/layout/fragment_meeting.xml | 36 ++++++ app/src/main/res/menu-v26/drawer_menu.xml | 11 ++ app/src/main/res/menu/drawer_menu.xml | 11 ++ app/src/main/res/menu/profile_menu_drawer.xml | 22 ++++ app/src/main/res/values/colors.xml | 3 +- app/src/main/res/values/dimens.xml | 8 ++ app/src/main/res/values/preloaded_fonts.xml | 2 + app/src/main/res/values/strings.xml | 19 ++++ app/src/main/res/values/styles.xml | 17 +++ 35 files changed, 566 insertions(+), 110 deletions(-) create mode 100644 app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt rename app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/{MeetingActivity.kt => MeetingFragment.kt} (67%) create mode 100644 app/src/main/res/color/drawer_item.xml create mode 100644 app/src/main/res/drawable/ic_about.xml create mode 100644 app/src/main/res/drawable/ic_coffee.xml create mode 100644 app/src/main/res/drawable/ic_logout.xml create mode 100644 app/src/main/res/drawable/ic_menu_send.xml create mode 100644 app/src/main/res/drawable/ic_menu_share.xml create mode 100644 app/src/main/res/drawable/ic_notification.xml create mode 100644 app/src/main/res/drawable/ic_settings.xml create mode 100644 app/src/main/res/font/roboto.xml create mode 100644 app/src/main/res/font/roboto_bold.xml create mode 100644 app/src/main/res/layout/activity_lobby.xml create mode 100644 app/src/main/res/layout/activity_main_app_bar.xml create mode 100644 app/src/main/res/layout/activity_main_bottom.xml create mode 100644 app/src/main/res/layout/activity_main_content.xml create mode 100644 app/src/main/res/layout/activity_main_nav_header.xml delete mode 100644 app/src/main/res/layout/activity_meeting.xml create mode 100644 app/src/main/res/layout/fragment_meeting.xml create mode 100644 app/src/main/res/menu-v26/drawer_menu.xml create mode 100644 app/src/main/res/menu/drawer_menu.xml create mode 100644 app/src/main/res/menu/profile_menu_drawer.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index bb9ca60b..95a386a0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -35,9 +35,17 @@ + + android:name=".ui.main.MainActivity" + android:screenOrientation="${orientation}" > + + + + + + + > (){{ put(ViewNames.LOGIN_ACTIVITY, LoginActivity.class); put(ViewNames.LOBBY_ACTIVITY, LobbyActivity.class); - put(ViewNames.MEETING_ACTIVITY, MeetingActivity.class); put(ViewNames.SESSION_ACTIVITY, SessionActivity.class); put(ViewNames.LIST_ACTIVITY, ListSessionsActivity.class); + put(ViewNames.MAIN_ACTIVITY, MainActivity.class); }}; public void goNext(Context context, String activityName, boolean shouldClearStack) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java index 07de3126..d5c19da3 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivity.java @@ -47,7 +47,7 @@ public class LobbyActivity extends AppCompatActivity implements LobbyContract.Vi protected void onCreate(Bundle savedInstanceState) { setTheme(R.style.AppTheme); super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); + setContentView(R.layout.activity_lobby); ((StickySessionApplication) getApplication()).inject(this); diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt index df1ba4aa..192e7823 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt @@ -106,8 +106,8 @@ class LoginActivity : AppCompatActivity() { // Result returned from launching the Intent from GoogleSignInApi.getSignInIntent(...); if (requestCode == RC_SIGN_IN) { - val task = GoogleSignIn.getSignedInAccountFromIntent(data) try { + val task = GoogleSignIn.getSignedInAccountFromIntent(data) // Google Sign In was successful, authenticate with Firebase val account = task.getResult(ApiException::class.java) firebaseAuthWithGoogle(account!!) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt new file mode 100644 index 00000000..67f7033d --- /dev/null +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt @@ -0,0 +1,107 @@ +package br.org.cesar.discordtime.stickysessions.ui.main + +import android.os.Build +import android.os.Bundle +import android.view.Menu +import android.view.MenuItem +import android.widget.TextView +import androidx.appcompat.app.ActionBarDrawerToggle +import androidx.appcompat.app.AppCompatActivity +import androidx.appcompat.widget.Toolbar +import androidx.core.content.ContextCompat +import androidx.core.graphics.drawable.DrawableCompat +import androidx.core.view.GravityCompat +import br.org.cesar.discordtime.stickysessions.R +import br.org.cesar.discordtime.stickysessions.ui.meeting.MeetingFragment +import com.google.android.material.navigation.NavigationView +import com.google.android.material.snackbar.Snackbar + +import kotlinx.android.synthetic.main.activity_main.* +import kotlinx.android.synthetic.main.activity_main_app_bar.* + +class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelectedListener { + + private lateinit var mToolbarTitle: TextView + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_main) + configureToolbar() + + fab.setOnClickListener { view -> + Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) + .setAction("Action", null).show() + } + + supportFragmentManager.beginTransaction() + .replace(R.id.main_container, MeetingFragment()).commit() + } + + private fun configureToolbar() { + val toolbar = findViewById(R.id.toolbar) + setSupportActionBar(toolbar) + + supportActionBar?.apply { + setDisplayShowHomeEnabled(true) + setDisplayHomeAsUpEnabled(true) + } + + mToolbarTitle = findViewById(R.id.toolbar_title) + mToolbarTitle.apply { + text = getString(R.string.nav_header_desc) + } + + val toggle = ActionBarDrawerToggle( + this, drawer_layout, toolbar, R.string.navigation_drawer_open, + R.string.navigation_drawer_close + ) + + drawer_layout.addDrawerListener(toggle) + toggle.syncState() + + nav_view.setNavigationItemSelectedListener(this) + } + + override fun onBackPressed() { + if (drawer_layout.isDrawerOpen(GravityCompat.START)) { + drawer_layout.closeDrawer(GravityCompat.START) + } else { + super.onBackPressed() + } + } + + override fun onCreateOptionsMenu(menu: Menu): Boolean { + menuInflater.inflate(R.menu.drawer_menu, menu) + + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) { + val icon = menu.findItem(R.id.notification_menu).icon + val drawable = DrawableCompat.wrap(icon) + DrawableCompat.setTint(drawable, ContextCompat.getColor(this, R.color.coral)) + menu.findItem(R.id.notification_menu).apply { + setIcon(drawable) + } + } + + return true + } + + override fun onNavigationItemSelected(item: MenuItem): Boolean { + when (item.itemId) { + R.id.nav_meetings -> { + showMeetingFragment() + } + R.id.nav_about -> { + } + R.id.nav_settings -> { + } + } + + return true + } + + private fun showMeetingFragment() { + supportFragmentManager.beginTransaction() + .replace(R.id.main_container, MeetingFragment()).commit() + } + +} diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt similarity index 67% rename from app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingActivity.kt rename to app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt index e7326e3a..b2de5153 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt @@ -3,12 +3,13 @@ package br.org.cesar.discordtime.stickysessions.ui.meeting import android.annotation.SuppressLint import android.os.Bundle import android.util.Log +import android.view.LayoutInflater import android.view.View +import android.view.ViewGroup import android.widget.ProgressBar -import android.widget.TextView -import androidx.appcompat.app.AppCompatActivity -import androidx.appcompat.widget.Toolbar +import androidx.fragment.app.Fragment import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView import br.org.cesar.discordtime.stickysessions.R import br.org.cesar.discordtime.stickysessions.app.StickySessionApplication import br.org.cesar.discordtime.stickysessions.navigation.exception.InvalidViewNameException @@ -18,42 +19,38 @@ import br.org.cesar.discordtime.stickysessions.navigation.wrapper.IViewStarter import br.org.cesar.discordtime.stickysessions.presentation.meeting.MeetingContract import br.org.cesar.discordtime.stickysessions.presentation.meeting.MeetingItem import br.org.cesar.discordtime.stickysessions.ui.ViewNames -import kotlinx.android.synthetic.main.activity_meeting.* import javax.inject.Inject -import kotlinx.android.synthetic.main.activity_meeting.recycler_view_meetings as mRecyclerView -class MeetingActivity : AppCompatActivity(), MeetingContract.View { +class MeetingFragment : Fragment(), MeetingContract.View { @Inject lateinit var mPresenter: MeetingContract.Presenter @Inject lateinit var mViewStarter: IViewStarter - lateinit var mProgressBar: ProgressBar - lateinit var mAdapter: MeetingItemAdapter + private lateinit var mProgressBar: ProgressBar + private lateinit var mRecyclerView: RecyclerView + private lateinit var mAdapter: MeetingItemAdapter override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - setContentView(R.layout.activity_meeting) - (application as StickySessionApplication).inject(this) - - mProgressBar = findViewById(R.id.progressbar) - configureToolbar() - configureRecycleView() + (activity?.application as StickySessionApplication).inject(this) } - private fun configureToolbar() { - val toolbar = findViewById(R.id.toolbar) - setSupportActionBar(toolbar) + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, + savedInstanceState: Bundle?): View? { + val rootView = inflater.inflate(R.layout.fragment_meeting, container, false) - val toolbarTitle = findViewById(R.id.toolbar_title) - toolbarTitle.setText(R.string.toolbar_title_meetings) + mProgressBar = rootView.findViewById(R.id.progressbar) + configureRecyclerView(rootView) + return rootView } @SuppressLint("CheckResult") - private fun configureRecycleView() { - mAdapter = MeetingItemAdapter(this) + private fun configureRecyclerView(rootView: View) { + mAdapter = MeetingItemAdapter(rootView.context) + mRecyclerView = rootView.findViewById(R.id.recycler_view_meetings) mRecyclerView.apply { - layoutManager = LinearLayoutManager(this@MeetingActivity) + layoutManager = LinearLayoutManager(rootView.context) adapter = mAdapter } mAdapter.clickEvent.subscribe { @@ -100,10 +97,10 @@ class MeetingActivity : AppCompatActivity(), MeetingContract.View { @Throws(InvalidViewNameException::class) override fun goNext(route: Route, bundle: IBundle) { - mViewStarter.goNext(this, route.to, route.shouldClearStack, bundle) + mViewStarter.goNext(activity, route.to, route.shouldClearStack, bundle) } companion object { - const val TAG = "MeetingActivity" + const val TAG = "MeetingFragment" } } diff --git a/app/src/main/res/color/drawer_item.xml b/app/src/main/res/color/drawer_item.xml new file mode 100644 index 00000000..d772db7e --- /dev/null +++ b/app/src/main/res/color/drawer_item.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_about.xml b/app/src/main/res/drawable/ic_about.xml new file mode 100644 index 00000000..e3c2ae89 --- /dev/null +++ b/app/src/main/res/drawable/ic_about.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_coffee.xml b/app/src/main/res/drawable/ic_coffee.xml new file mode 100644 index 00000000..96df31a1 --- /dev/null +++ b/app/src/main/res/drawable/ic_coffee.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_logout.xml b/app/src/main/res/drawable/ic_logout.xml new file mode 100644 index 00000000..6f40d772 --- /dev/null +++ b/app/src/main/res/drawable/ic_logout.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_menu_send.xml b/app/src/main/res/drawable/ic_menu_send.xml new file mode 100644 index 00000000..9745066f --- /dev/null +++ b/app/src/main/res/drawable/ic_menu_send.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_menu_share.xml b/app/src/main/res/drawable/ic_menu_share.xml new file mode 100644 index 00000000..b3e39e22 --- /dev/null +++ b/app/src/main/res/drawable/ic_menu_share.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_notification.xml b/app/src/main/res/drawable/ic_notification.xml new file mode 100644 index 00000000..232803dd --- /dev/null +++ b/app/src/main/res/drawable/ic_notification.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_settings.xml b/app/src/main/res/drawable/ic_settings.xml new file mode 100644 index 00000000..d36e89c5 --- /dev/null +++ b/app/src/main/res/drawable/ic_settings.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/font/roboto.xml b/app/src/main/res/font/roboto.xml new file mode 100644 index 00000000..2641caff --- /dev/null +++ b/app/src/main/res/font/roboto.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/font/roboto_bold.xml b/app/src/main/res/font/roboto_bold.xml new file mode 100644 index 00000000..1e8c20a1 --- /dev/null +++ b/app/src/main/res/font/roboto_bold.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/layout/activity_lobby.xml b/app/src/main/res/layout/activity_lobby.xml new file mode 100644 index 00000000..781346d3 --- /dev/null +++ b/app/src/main/res/layout/activity_lobby.xml @@ -0,0 +1,49 @@ + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 3bb53221..0248be28 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,50 +1,34 @@ - + android:fitsSystemWindows="true" + tools:openDrawer="start"> - + android:layout_height="match_parent"/> - - - + android:layout_height="match_parent" + android:layout_gravity="start" + android:fitsSystemWindows="true" + android:background="@color/white" + app:itemIconTint="@color/drawer_item" + app:itemTextColor="@color/drawer_item" + app:itemBackground="@color/white" + app:headerLayout="@layout/activity_main_nav_header" + app:menu="@menu/profile_menu_drawer"> + + + + - + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_app_bar.xml b/app/src/main/res/layout/activity_main_app_bar.xml new file mode 100644 index 00000000..f6e491e6 --- /dev/null +++ b/app/src/main/res/layout/activity_main_app_bar.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_bottom.xml b/app/src/main/res/layout/activity_main_bottom.xml new file mode 100644 index 00000000..cf605dbd --- /dev/null +++ b/app/src/main/res/layout/activity_main_bottom.xml @@ -0,0 +1,45 @@ + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_content.xml b/app/src/main/res/layout/activity_main_content.xml new file mode 100644 index 00000000..b2b3d2e0 --- /dev/null +++ b/app/src/main/res/layout/activity_main_content.xml @@ -0,0 +1,18 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_nav_header.xml b/app/src/main/res/layout/activity_main_nav_header.xml new file mode 100644 index 00000000..4acdeabc --- /dev/null +++ b/app/src/main/res/layout/activity_main_nav_header.xml @@ -0,0 +1,44 @@ + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_meeting.xml b/app/src/main/res/layout/activity_meeting.xml deleted file mode 100644 index 1e0686d5..00000000 --- a/app/src/main/res/layout/activity_meeting.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - diff --git a/app/src/main/res/layout/fragment_meeting.xml b/app/src/main/res/layout/fragment_meeting.xml new file mode 100644 index 00000000..cd19d6b1 --- /dev/null +++ b/app/src/main/res/layout/fragment_meeting.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + diff --git a/app/src/main/res/menu-v26/drawer_menu.xml b/app/src/main/res/menu-v26/drawer_menu.xml new file mode 100644 index 00000000..7368cb9e --- /dev/null +++ b/app/src/main/res/menu-v26/drawer_menu.xml @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/drawer_menu.xml b/app/src/main/res/menu/drawer_menu.xml new file mode 100644 index 00000000..117673da --- /dev/null +++ b/app/src/main/res/menu/drawer_menu.xml @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/profile_menu_drawer.xml b/app/src/main/res/menu/profile_menu_drawer.xml new file mode 100644 index 00000000..da046169 --- /dev/null +++ b/app/src/main/res/menu/profile_menu_drawer.xml @@ -0,0 +1,22 @@ + + + + + + + + + + diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 9c4280bf..d5f5a88b 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -8,10 +8,11 @@ #ffc000 #ffffff + #000000 #f3f3f3 #42023e #2d042a - #ff534b + #FF534B #b3ffffff #8b8b8b diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 57d8862e..ea1854ae 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -1,4 +1,12 @@ 147dp + + + 16dp + 16dp + 8dp + 176dp + 16dp + 13sp \ No newline at end of file diff --git a/app/src/main/res/values/preloaded_fonts.xml b/app/src/main/res/values/preloaded_fonts.xml index f353d83a..1d19856d 100644 --- a/app/src/main/res/values/preloaded_fonts.xml +++ b/app/src/main/res/values/preloaded_fonts.xml @@ -2,5 +2,7 @@ @font/annie_use_your_telescope + @font/roboto + @font/roboto_bold diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index eececf82..715a0433 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -3,6 +3,7 @@ Confirm Hey fellow, you can get a new session here: http://stickysessions.com/enter?session=%s Share Session + Notification What you want to add? Cancel Starfish @@ -35,10 +36,28 @@ responses 6 responses + dot icon representing sessions icon representing participants %s %s Recents Older + + Open navigation drawer + Close navigation drawer + Maria Silva + maria.silva@gmail.com + Navigation header + Meetings + About + Settings + v %1$s + Logout Icon + LOG OUT + + meetings + + + Hello blank fragment diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 3bdaee5d..c0fd4280 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -149,4 +149,21 @@ @color/chip_state_colors + + + + + + + + From 39f52796a94d9adb70d5ab858d2246a2704662cd Mon Sep 17 00:00:00 2001 From: Haldny Santos Date: Tue, 18 Feb 2020 21:16:58 -0300 Subject: [PATCH 5/7] Update android target version and remove unused files --- app/build.gradle | 4 ++-- .../navigation/repository/IRouteRepository.java | 2 +- .../stickysessions/navigation/wrapper/ViewStarter.java | 2 +- .../stickysessions/ui/login/LoginActivity.kt | 1 - .../discordtime/stickysessions/ui/main/MainActivity.kt | 2 +- app/src/main/res/drawable/ic_menu_send.xml | 9 --------- app/src/main/res/drawable/ic_menu_share.xml | 9 --------- app/src/main/res/drawable/ic_settings.xml | 10 +++++----- app/src/main/res/layout/activity_main_nav_header.xml | 3 +-- app/src/main/res/menu/drawer_menu.xml | 1 - app/src/main/res/values/dimens.xml | 4 ---- app/src/main/res/values/strings.xml | 7 +------ 12 files changed, 12 insertions(+), 42 deletions(-) delete mode 100644 app/src/main/res/drawable/ic_menu_send.xml delete mode 100644 app/src/main/res/drawable/ic_menu_share.xml diff --git a/app/build.gradle b/app/build.gradle index d97563a1..9e24d583 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -12,11 +12,11 @@ android { def versionMap = getVersionMap() - compileSdkVersion 28 + compileSdkVersion 29 defaultConfig { applicationId packageId minSdkVersion 23 - targetSdkVersion 28 + targetSdkVersion 29 versionCode versionMap.code versionName versionMap.name testInstrumentationRunner "br.org.cesar.discordtime.stickysessions.MockTestRunner" diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/repository/IRouteRepository.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/repository/IRouteRepository.java index cb8f698f..0e4f70b4 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/repository/IRouteRepository.java +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/repository/IRouteRepository.java @@ -14,7 +14,7 @@ public interface IRouteRepository { new Route( ViewNames.LOGIN_ACTIVITY, IRouter.USER_LOGGED, - ViewNames.MAIN_ACTIVITY, + ViewNames.MEETING_ACTIVITY, true) ); put( diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/wrapper/ViewStarter.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/wrapper/ViewStarter.java index 16988dc5..5e5b31b5 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/wrapper/ViewStarter.java +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/wrapper/ViewStarter.java @@ -24,7 +24,7 @@ public class ViewStarter implements IViewStarter { put(ViewNames.LOBBY_ACTIVITY, LobbyActivity.class); put(ViewNames.SESSION_ACTIVITY, SessionActivity.class); put(ViewNames.LIST_ACTIVITY, ListSessionsActivity.class); - put(ViewNames.MAIN_ACTIVITY, MainActivity.class); + put(ViewNames.MEETING_ACTIVITY, MainActivity.class); }}; public void goNext(Context context, String activityName, boolean shouldClearStack) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt index 192e7823..cf6dd8f6 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt @@ -127,7 +127,6 @@ class LoginActivity : AppCompatActivity() { if (task.isSuccessful) { // Sign in success, update UI with the signed-in user's information mLogger.d(TAG, "signInWithCredential:success") - val user = auth.currentUser // next activity goNext() } else { diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt index 4dcad532..2467be33 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt @@ -48,7 +48,7 @@ class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelecte mToolbarTitle = findViewById(R.id.toolbar_title) mToolbarTitle.apply { - text = getString(R.string.nav_header_desc) + text = getString(R.string.nav_menu_meetings) } val toggle = ActionBarDrawerToggle( diff --git a/app/src/main/res/drawable/ic_menu_send.xml b/app/src/main/res/drawable/ic_menu_send.xml deleted file mode 100644 index 9745066f..00000000 --- a/app/src/main/res/drawable/ic_menu_send.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_menu_share.xml b/app/src/main/res/drawable/ic_menu_share.xml deleted file mode 100644 index b3e39e22..00000000 --- a/app/src/main/res/drawable/ic_menu_share.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_settings.xml b/app/src/main/res/drawable/ic_settings.xml index d36e89c5..2b3476f1 100644 --- a/app/src/main/res/drawable/ic_settings.xml +++ b/app/src/main/res/drawable/ic_settings.xml @@ -1,9 +1,9 @@ - + android:width="24dp"> + diff --git a/app/src/main/res/layout/activity_main_nav_header.xml b/app/src/main/res/layout/activity_main_nav_header.xml index 10cc4843..ba32bf41 100644 --- a/app/src/main/res/layout/activity_main_nav_header.xml +++ b/app/src/main/res/layout/activity_main_nav_header.xml @@ -4,7 +4,6 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" - android:background="@color/white" android:theme="@style/ThemeOverlay.AppCompat.Dark"> diff --git a/app/src/main/res/menu/drawer_menu.xml b/app/src/main/res/menu/drawer_menu.xml index e34a031b..d28644fc 100644 --- a/app/src/main/res/menu/drawer_menu.xml +++ b/app/src/main/res/menu/drawer_menu.xml @@ -2,7 +2,6 @@ diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index ea1854ae..5b9fc5fe 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -3,10 +3,6 @@ 147dp - 16dp - 16dp - 8dp - 176dp 16dp 13sp \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 715a0433..c53b8983 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -24,7 +24,6 @@ image with a session representation Remove Active Sessions - Meetings /100 0 Retry @@ -48,7 +47,6 @@ Close navigation drawer Maria Silva maria.silva@gmail.com - Navigation header Meetings About Settings @@ -56,8 +54,5 @@ Logout Icon LOG OUT - meetings - - - Hello blank fragment + Person Icon From 1e02a761448d00ee36b27dbbd7c36c521aac669e Mon Sep 17 00:00:00 2001 From: Haldny Santos Date: Tue, 18 Feb 2020 21:16:58 -0300 Subject: [PATCH 6/7] Update android target version and remove unused files --- app/build.gradle | 4 ++-- .../cesar/discordtime/stickysessions/JsonReader.kt | 5 ++--- .../discordtime/stickysessions/MockTestRunner.kt | 2 +- .../discordtime/stickysessions/app/TestApplication.kt | 11 +++++++---- .../ui/list/ListSessionsActivityEspressoTest.kt | 3 +-- .../ui/lobby/LobbyActivityEspressoTest.kt | 2 +- .../navigation/repository/IRouteRepository.java | 2 +- .../navigation/wrapper/ViewStarter.java | 2 +- .../presentation/meeting/MeetingContract.kt | 4 ++-- .../stickysessions/ui/login/LoginActivity.kt | 1 - .../stickysessions/ui/main/MainActivity.kt | 2 +- app/src/main/res/drawable/ic_menu_send.xml | 9 --------- app/src/main/res/drawable/ic_menu_share.xml | 9 --------- app/src/main/res/drawable/ic_settings.xml | 10 +++++----- app/src/main/res/layout/activity_main_nav_header.xml | 3 +-- app/src/main/res/menu/drawer_menu.xml | 1 - app/src/main/res/values/dimens.xml | 4 ---- app/src/main/res/values/strings.xml | 7 +------ 18 files changed, 26 insertions(+), 55 deletions(-) delete mode 100644 app/src/main/res/drawable/ic_menu_send.xml delete mode 100644 app/src/main/res/drawable/ic_menu_share.xml diff --git a/app/build.gradle b/app/build.gradle index d97563a1..9e24d583 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -12,11 +12,11 @@ android { def versionMap = getVersionMap() - compileSdkVersion 28 + compileSdkVersion 29 defaultConfig { applicationId packageId minSdkVersion 23 - targetSdkVersion 28 + targetSdkVersion 29 versionCode versionMap.code versionName versionMap.name testInstrumentationRunner "br.org.cesar.discordtime.stickysessions.MockTestRunner" diff --git a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/JsonReader.kt b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/JsonReader.kt index d7be8875..174921c6 100644 --- a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/JsonReader.kt +++ b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/JsonReader.kt @@ -1,10 +1,9 @@ package br.org.cesar.discordtime.stickysessions -import androidx.test.InstrumentationRegistry - +import androidx.test.platform.app.InstrumentationRegistry class JsonReader { fun readFromAssets(json: String): String = - InstrumentationRegistry.getContext().assets.open(json) + InstrumentationRegistry.getInstrumentation().targetContext.assets.open(json) .bufferedReader().use { it.readText() } } \ No newline at end of file diff --git a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/MockTestRunner.kt b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/MockTestRunner.kt index 0fca7d05..b9f68dfd 100644 --- a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/MockTestRunner.kt +++ b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/MockTestRunner.kt @@ -16,6 +16,6 @@ class MockTestRunner : AndroidJUnitRunner() { @Throws(InstantiationException::class, IllegalAccessException::class, ClassNotFoundException::class) override fun newApplication(cl: ClassLoader, className: String, context: Context): Application { - return super.newApplication(cl, TestApplication::class.java!!.name, context) + return super.newApplication(cl, TestApplication::class.java.name, context) } } \ No newline at end of file diff --git a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/app/TestApplication.kt b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/app/TestApplication.kt index f917e3b4..35d5394a 100644 --- a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/app/TestApplication.kt +++ b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/app/TestApplication.kt @@ -1,6 +1,6 @@ package br.org.cesar.discordtime.stickysessions.app -import androidx.test.InstrumentationRegistry +import androidx.test.platform.app.InstrumentationRegistry import br.org.cesar.discordtime.stickysessions.injectors.MockHttpModule import br.org.cesar.discordtime.stickysessions.injectors.MockServerModule import br.org.cesar.discordtime.stickysessions.injectors.MockThreadModule @@ -13,7 +13,8 @@ class TestApplication : StickySessionApplication() { override fun configureMainInjectorBuilder() { mLobbyComponentBuilder = DaggerLobbyComponent.builder() - .contextModule(ContextModule(InstrumentationRegistry.getContext())) + .contextModule(ContextModule(InstrumentationRegistry + .getInstrumentation().targetContext)) .threadModule(MockThreadModule()) .serverModule(MockServerModule()) .httpModule(MockHttpModule()) @@ -21,7 +22,8 @@ class TestApplication : StickySessionApplication() { override fun configureSessionInjectorBuilder() { mSessionComponentBuilder = DaggerSessionComponent.builder() - .contextModule(ContextModule(InstrumentationRegistry.getContext())) + .contextModule(ContextModule(InstrumentationRegistry + .getInstrumentation().targetContext)) .threadModule(MockThreadModule()) .serverModule(MockServerModule()) .httpModule(MockHttpModule()) @@ -29,7 +31,8 @@ class TestApplication : StickySessionApplication() { override fun configureSessionListInjectorBuilder() { mSessionListBuilder = DaggerListSessionComponent.builder() - .contextModule(ContextModule(InstrumentationRegistry.getContext())) + .contextModule(ContextModule(InstrumentationRegistry + .getInstrumentation().targetContext)) .threadModule(MockThreadModule()) .serverModule(MockServerModule()) .httpModule(MockHttpModule()) diff --git a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/ui/list/ListSessionsActivityEspressoTest.kt b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/ui/list/ListSessionsActivityEspressoTest.kt index 58fda378..12eb32d4 100644 --- a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/ui/list/ListSessionsActivityEspressoTest.kt +++ b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/ui/list/ListSessionsActivityEspressoTest.kt @@ -7,7 +7,7 @@ import androidx.test.espresso.matcher.ViewMatchers.isDisplayed import androidx.test.espresso.matcher.ViewMatchers.withId import androidx.test.filters.LargeTest import androidx.test.rule.ActivityTestRule -import androidx.test.runner.AndroidJUnit4 +import androidx.test.ext.junit.runners.AndroidJUnit4 import br.org.cesar.discordtime.stickysessions.MockServerDispatcher import br.org.cesar.discordtime.stickysessions.R import br.org.cesar.discordtime.stickysessions.ui.ExtraNames @@ -18,7 +18,6 @@ import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith - @RunWith(AndroidJUnit4::class) @LargeTest class ListSessionsActivityEspressoTest { diff --git a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivityEspressoTest.kt b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivityEspressoTest.kt index dea142c9..a090b528 100644 --- a/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivityEspressoTest.kt +++ b/app/src/androidTest/java/br/org/cesar/discordtime/stickysessions/ui/lobby/LobbyActivityEspressoTest.kt @@ -8,7 +8,7 @@ import androidx.test.espresso.matcher.ViewMatchers.isDisplayed import androidx.test.espresso.matcher.ViewMatchers.withId import androidx.test.filters.LargeTest import androidx.test.rule.ActivityTestRule -import androidx.test.runner.AndroidJUnit4 +import androidx.test.ext.junit.runners.AndroidJUnit4 import br.org.cesar.discordtime.stickysessions.R import org.junit.Rule import org.junit.Test diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/repository/IRouteRepository.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/repository/IRouteRepository.java index cb8f698f..0e4f70b4 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/repository/IRouteRepository.java +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/repository/IRouteRepository.java @@ -14,7 +14,7 @@ public interface IRouteRepository { new Route( ViewNames.LOGIN_ACTIVITY, IRouter.USER_LOGGED, - ViewNames.MAIN_ACTIVITY, + ViewNames.MEETING_ACTIVITY, true) ); put( diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/wrapper/ViewStarter.java b/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/wrapper/ViewStarter.java index 16988dc5..5e5b31b5 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/wrapper/ViewStarter.java +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/navigation/wrapper/ViewStarter.java @@ -24,7 +24,7 @@ public class ViewStarter implements IViewStarter { put(ViewNames.LOBBY_ACTIVITY, LobbyActivity.class); put(ViewNames.SESSION_ACTIVITY, SessionActivity.class); put(ViewNames.LIST_ACTIVITY, ListSessionsActivity.class); - put(ViewNames.MAIN_ACTIVITY, MainActivity.class); + put(ViewNames.MEETING_ACTIVITY, MainActivity.class); }}; public void goNext(Context context, String activityName, boolean shouldClearStack) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/presentation/meeting/MeetingContract.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/presentation/meeting/MeetingContract.kt index 5c2a3c2d..992561c5 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/presentation/meeting/MeetingContract.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/presentation/meeting/MeetingContract.kt @@ -7,7 +7,7 @@ import br.org.cesar.discordtime.stickysessions.navigation.wrapper.IBundle interface MeetingContract { interface Presenter { - fun attachView(view: MeetingContract.View) + fun attachView(view: View) fun detachView() fun onResume() fun enterOnMeeting(meetingItem: MeetingItem) @@ -16,7 +16,7 @@ interface MeetingContract { interface View { fun startLoadingMeetings() fun stopLoadingMeetings() - fun showError(message: String) + fun showError(message: String?) fun showMeetings(meetings: MutableList) fun getName(): String @Throws(InvalidViewNameException::class) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt index 192e7823..cf6dd8f6 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/login/LoginActivity.kt @@ -127,7 +127,6 @@ class LoginActivity : AppCompatActivity() { if (task.isSuccessful) { // Sign in success, update UI with the signed-in user's information mLogger.d(TAG, "signInWithCredential:success") - val user = auth.currentUser // next activity goNext() } else { diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt index 4dcad532..2467be33 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/main/MainActivity.kt @@ -48,7 +48,7 @@ class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelecte mToolbarTitle = findViewById(R.id.toolbar_title) mToolbarTitle.apply { - text = getString(R.string.nav_header_desc) + text = getString(R.string.nav_menu_meetings) } val toggle = ActionBarDrawerToggle( diff --git a/app/src/main/res/drawable/ic_menu_send.xml b/app/src/main/res/drawable/ic_menu_send.xml deleted file mode 100644 index 9745066f..00000000 --- a/app/src/main/res/drawable/ic_menu_send.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_menu_share.xml b/app/src/main/res/drawable/ic_menu_share.xml deleted file mode 100644 index b3e39e22..00000000 --- a/app/src/main/res/drawable/ic_menu_share.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_settings.xml b/app/src/main/res/drawable/ic_settings.xml index d36e89c5..2b3476f1 100644 --- a/app/src/main/res/drawable/ic_settings.xml +++ b/app/src/main/res/drawable/ic_settings.xml @@ -1,9 +1,9 @@ - + android:width="24dp"> + diff --git a/app/src/main/res/layout/activity_main_nav_header.xml b/app/src/main/res/layout/activity_main_nav_header.xml index 10cc4843..ba32bf41 100644 --- a/app/src/main/res/layout/activity_main_nav_header.xml +++ b/app/src/main/res/layout/activity_main_nav_header.xml @@ -4,7 +4,6 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" - android:background="@color/white" android:theme="@style/ThemeOverlay.AppCompat.Dark"> diff --git a/app/src/main/res/menu/drawer_menu.xml b/app/src/main/res/menu/drawer_menu.xml index e34a031b..d28644fc 100644 --- a/app/src/main/res/menu/drawer_menu.xml +++ b/app/src/main/res/menu/drawer_menu.xml @@ -2,7 +2,6 @@ diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index ea1854ae..5b9fc5fe 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -3,10 +3,6 @@ 147dp - 16dp - 16dp - 8dp - 176dp 16dp 13sp \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 715a0433..c53b8983 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -24,7 +24,6 @@ image with a session representation Remove Active Sessions - Meetings /100 0 Retry @@ -48,7 +47,6 @@ Close navigation drawer Maria Silva maria.silva@gmail.com - Navigation header Meetings About Settings @@ -56,8 +54,5 @@ Logout Icon LOG OUT - meetings - - - Hello blank fragment + Person Icon From f66df812b2bfda18e27f2a9f777f39d8bcdd647e Mon Sep 17 00:00:00 2001 From: Haldny Santos Date: Tue, 18 Feb 2020 21:49:52 -0300 Subject: [PATCH 7/7] Adjust show error message --- .../discordtime/stickysessions/ui/meeting/MeetingFragment.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt index b2de5153..ad241e56 100644 --- a/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt +++ b/app/src/main/java/br/org/cesar/discordtime/stickysessions/ui/meeting/MeetingFragment.kt @@ -83,7 +83,7 @@ class MeetingFragment : Fragment(), MeetingContract.View { mRecyclerView.visibility = View.VISIBLE } - override fun showError(message: String) { + override fun showError(message: String?) { Log.e(TAG, message) }