Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
I
InstiApp
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
RAHUL SHARMA
InstiApp
Commits
7544ef74
Commit
7544ef74
authored
Mar 26, 2018
by
Sajal Narang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Implement back navigation, fix #33
parent
1a14d32a
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
21 additions
and
20 deletions
+21
-20
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/MainActivity.java
...c/main/java/in/ac/iitb/gymkhana/iitbapp/MainActivity.java
+16
-7
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/CalendarFragment.java
...n/ac/iitb/gymkhana/iitbapp/fragment/CalendarFragment.java
+2
-5
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/FeedFragment.java
...va/in/ac/iitb/gymkhana/iitbapp/fragment/FeedFragment.java
+3
-8
No files found.
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/MainActivity.java
View file @
7544ef74
...
...
@@ -16,6 +16,7 @@ import android.support.v4.widget.DrawerLayout;
import
android.support.v7.app.ActionBarDrawerToggle
;
import
android.support.v7.app.AppCompatActivity
;
import
android.support.v7.widget.Toolbar
;
import
android.util.Log
;
import
android.view.Menu
;
import
android.view.MenuItem
;
import
android.view.View
;
...
...
@@ -55,8 +56,7 @@ import static in.ac.iitb.gymkhana.iitbapp.Constants.RESULT_LOAD_IMAGE;
import
static
in
.
ac
.
iitb
.
gymkhana
.
iitbapp
.
SessionManager
.
SESSION_ID
;
public
class
MainActivity
extends
AppCompatActivity
implements
NavigationView
.
OnNavigationItemSelectedListener
{
public
class
MainActivity
extends
AppCompatActivity
implements
NavigationView
.
OnNavigationItemSelectedListener
{
private
static
final
String
TAG
=
"MainActivity"
;
...
...
@@ -64,6 +64,7 @@ public class MainActivity extends AppCompatActivity
SessionManager
session
;
NotificationsResponse
notificationsResponse
;
private
boolean
showNotifications
=
false
;
FeedFragment
feedFragment
;
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
...
...
@@ -82,7 +83,7 @@ public class MainActivity extends AppCompatActivity
drawer
.
addDrawerListener
(
toggle
);
toggle
.
syncState
();
FeedFragment
feedFragment
=
new
FeedFragment
();
feedFragment
=
new
FeedFragment
();
updateFragment
(
feedFragment
);
fetchNotifications
();
...
...
@@ -158,6 +159,8 @@ public class MainActivity extends AppCompatActivity
DrawerLayout
drawer
=
(
DrawerLayout
)
findViewById
(
R
.
id
.
drawer_layout
);
if
(
drawer
.
isDrawerOpen
(
GravityCompat
.
START
))
{
drawer
.
closeDrawer
(
GravityCompat
.
START
);
}
else
if
(
feedFragment
!=
null
&&
feedFragment
.
isVisible
())
{
finish
();
}
else
{
super
.
onBackPressed
();
}
...
...
@@ -195,7 +198,7 @@ public class MainActivity extends AppCompatActivity
switch
(
id
)
{
case
R
.
id
.
nav_feed
:
FeedFragment
feedFragment
=
new
FeedFragment
();
feedFragment
=
new
FeedFragment
();
updateFragment
(
feedFragment
);
break
;
case
R
.
id
.
nav_my_events
:
...
...
@@ -257,14 +260,20 @@ public class MainActivity extends AppCompatActivity
return
true
;
}
private
void
updateFragment
(
Fragment
fragment
)
{
Bundle
bundle
=
new
Bundle
();
public
void
updateFragment
(
Fragment
fragment
)
{
Log
.
d
(
TAG
,
"updateFragment: "
+
fragment
.
toString
());
Bundle
bundle
=
fragment
.
getArguments
();
if
(
bundle
==
null
)
{
bundle
=
new
Bundle
();
}
bundle
.
putString
(
SESSION_ID
,
session
.
pref
.
getString
(
SESSION_ID
,
"Error"
));
fragment
.
setArguments
(
bundle
);
FragmentManager
manager
=
getSupportFragmentManager
();
if
(
fragment
instanceof
FeedFragment
)
manager
.
popBackStack
(
null
,
FragmentManager
.
POP_BACK_STACK_INCLUSIVE
);
FragmentTransaction
transaction
=
manager
.
beginTransaction
();
transaction
.
replace
(
R
.
id
.
framelayout_for_fragment
,
fragment
,
fragment
.
getTag
());
transaction
.
commit
();
transaction
.
addToBackStack
(
fragment
.
getTag
()).
commit
();
}
public
void
onRequestPermissionsResult
(
int
requestCode
,
String
[]
permissions
,
int
[]
grantResults
)
{
...
...
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/CalendarFragment.java
View file @
7544ef74
...
...
@@ -11,6 +11,7 @@ import android.view.ViewGroup;
import
android.widget.CalendarView
;
import
android.widget.Toast
;
import
in.ac.iitb.gymkhana.iitbapp.MainActivity
;
import
in.ac.iitb.gymkhana.iitbapp.R
;
/**
...
...
@@ -58,11 +59,7 @@ public class CalendarFragment extends Fragment {
@Override
public
void
onClick
(
View
v
)
{
AddEventFragment
addEventFragment
=
new
AddEventFragment
();
addEventFragment
.
setArguments
(
getArguments
());
FragmentTransaction
ft
=
getChildFragmentManager
().
beginTransaction
();
ft
.
replace
(
R
.
id
.
calendar_layout
,
addEventFragment
);
ft
.
addToBackStack
(
"addEvent"
);
ft
.
commit
();
((
MainActivity
)
getActivity
()).
updateFragment
(
addEventFragment
);
}
});
return
view
;
...
...
app/src/main/java/in/ac/iitb/gymkhana/iitbapp/fragment/FeedFragment.java
View file @
7544ef74
...
...
@@ -23,6 +23,7 @@ import java.util.List;
import
in.ac.iitb.gymkhana.iitbapp.Constants
;
import
in.ac.iitb.gymkhana.iitbapp.ItemClickListener
;
import
in.ac.iitb.gymkhana.iitbapp.MainActivity
;
import
in.ac.iitb.gymkhana.iitbapp.R
;
import
in.ac.iitb.gymkhana.iitbapp.adapter.FeedAdapter
;
import
in.ac.iitb.gymkhana.iitbapp.api.RetrofitInterface
;
...
...
@@ -72,10 +73,7 @@ public class FeedFragment extends Fragment {
bundle
.
putString
(
Constants
.
EVENT_JSON
,
eventJson
);
EventFragment
eventFragment
=
new
EventFragment
();
eventFragment
.
setArguments
(
bundle
);
FragmentManager
manager
=
getActivity
().
getSupportFragmentManager
();
FragmentTransaction
transaction
=
manager
.
beginTransaction
();
transaction
.
replace
(
R
.
id
.
framelayout_for_fragment
,
eventFragment
,
eventFragment
.
getTag
());
transaction
.
commit
();
((
MainActivity
)
getActivity
()).
updateFragment
(
eventFragment
);
}
});
feedRecyclerView
=
(
RecyclerView
)
getActivity
().
findViewById
(
R
.
id
.
feed_recycler_view
);
...
...
@@ -112,10 +110,7 @@ public class FeedFragment extends Fragment {
bundle
.
putString
(
Constants
.
EVENT_JSON
,
eventJson
);
EventFragment
eventFragment
=
new
EventFragment
();
eventFragment
.
setArguments
(
bundle
);
FragmentManager
manager
=
getActivity
().
getSupportFragmentManager
();
FragmentTransaction
transaction
=
manager
.
beginTransaction
();
transaction
.
replace
(
R
.
id
.
framelayout_for_fragment
,
eventFragment
,
eventFragment
.
getTag
());
transaction
.
commit
();
((
MainActivity
)
getActivity
()).
updateFragment
(
eventFragment
);
}
});
feedRecyclerView
=
(
RecyclerView
)
getActivity
().
findViewById
(
R
.
id
.
feed_recycler_view
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment