Skip to content

Commit

Permalink
issue #5
Browse files Browse the repository at this point in the history
  • Loading branch information
oakesville committed Jan 11, 2018
1 parent 733e657 commit 314b479
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,8 @@ public class MainActivity extends AppCompatActivity
private TabLayout tabLayout;
private NavigationView navigationView;

private Map<String,NavDrawerItem> navDrawerItems;
private NavDrawerItem currentNavDrawerItem;
int navMenuGroupId = 0;

@Override
protected void onCreate(Bundle savedInstanceState) {
Expand Down Expand Up @@ -101,6 +101,7 @@ public boolean shouldOverrideUrlLoading(WebView view, String url) {
webView.getSettings().setAllowUniversalAccessFromFileURLs(true);
webView.getSettings().setUseWideViewPort(true);
webView.getSettings().setSupportZoom(true);
webView.getSettings().setDomStorageEnabled(true);
// webView.getSettings().setBuiltInZoomControls(true);
// allow debugging with chrome dev tools
WebView.setWebContentsDebuggingEnabled(true);
Expand All @@ -110,13 +111,18 @@ public boolean shouldOverrideUrlLoading(WebView view, String url) {
webView.getSettings().setAppCacheEnabled(false);
webView.clearCache(true);

new RetrieveNavTabs().execute();
webView.setLayerType(View.LAYER_TYPE_HARDWARE, null);

// new RetrieveNavTabs().execute();
}

@Override
protected void onResume() {
super.onResume();
Log.i(TAG, "onResume():::::");
try {
if (settings.getNavDrawerItems() == null)
new RetrieveNavTabs().execute();
URL url = settings.getServerUrl();
Log.i(TAG, "Loading URL: " + url);
webView.loadUrl(url.toString());
Expand All @@ -127,16 +133,17 @@ protected void onResume() {
}

private void addNavDrawerItems() {

Menu navMenu = navigationView.getMenu();
MenuItem placeholder = navMenu.getItem(0);
int groupId = placeholder.getGroupId();
navMenu.removeItem(placeholder.getItemId());
if (navMenuGroupId == 0) {
MenuItem placeholder = navMenu.getItem(0);
navMenuGroupId = placeholder.getGroupId();
}
navMenu.clear();
int index = 0;
for (String label : navDrawerItems.keySet()) {
NavDrawerItem navDrawerItem = navDrawerItems.get(label);
for (String label : settings.getNavDrawerItems().keySet()) {
NavDrawerItem navDrawerItem = settings.getNavDrawerItems().get(label);
navDrawerItem.setIndex(index);
MenuItem item = navMenu.add(groupId, Menu.NONE, Menu.FIRST, navDrawerItem.getLabel());
MenuItem item = navMenu.add(navMenuGroupId, Menu.NONE, Menu.FIRST, navDrawerItem.getLabel());
String icon = navDrawerItem.getIcon();
if (icon != null) {
int lastDot = icon.lastIndexOf('.');
Expand All @@ -161,7 +168,7 @@ private void addNavDrawerItems() {
}
}

currentNavDrawerItem = navDrawerItems.values().iterator().next();
currentNavDrawerItem = settings.getNavDrawerItems().values().iterator().next();
toolbar.setTitle(currentNavDrawerItem.getLabel());
navMenu.getItem(0).setChecked(true);
}
Expand Down Expand Up @@ -222,7 +229,7 @@ public boolean onNavigationItemSelected(MenuItem item) {

navigationView.getMenu().getItem(currentNavDrawerItem.getIndex()).setChecked(false);

currentNavDrawerItem = navDrawerItems.get(item.getTitle().toString());
currentNavDrawerItem = settings.getNavDrawerItems().get(item.getTitle().toString());
navigationView.getMenu().getItem(currentNavDrawerItem.getIndex()).setChecked(true);
toolbar.setTitle(currentNavDrawerItem.getLabel());
loadHref(currentNavDrawerItem.getNavs().get(0).getLinks().get(0).getHref());
Expand Down Expand Up @@ -271,11 +278,12 @@ protected Long doInBackground(URL... urls) {
Response response = client.newCall(request).execute();
String responseText = response.body().string();
JSONArray arr = new JSONArray(responseText);
navDrawerItems = new LinkedHashMap<>();
Map<String,NavDrawerItem> navDrawerItems = new LinkedHashMap<>();
for (int i = 0; i < arr.length(); i++) {
NavDrawerItem navDrawerItem = new NavDrawerItem(arr.getJSONObject(i));
navDrawerItems.put(navDrawerItem.getLabel(), navDrawerItem);
}
settings.setNavDrawerItems(navDrawerItems);

return 0L;
} catch (Exception ex) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ public void onCreate(Bundle savedInstanceState) {
pref.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
public boolean onPreferenceChange(Preference preference, Object newValue) {
pref.setSummary(newValue.toString());
Settings.setNavDrawerItems(null);
return true;
}
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@

import java.net.MalformedURLException;
import java.net.URL;
import java.util.Map;

public class Settings {
public static final String SERVER_URL = "server_url";
Expand Down Expand Up @@ -48,4 +49,8 @@ public URL getServerUrl() {
throw new BadSettingsException("Invalid Server URL: " + pref);
}
}

private static Map<String,NavDrawerItem> navDrawerItems;
public static Map<String,NavDrawerItem> getNavDrawerItems() { return navDrawerItems; }
public static void setNavDrawerItems(Map<String,NavDrawerItem> items) { navDrawerItems = items; }
}

0 comments on commit 314b479

Please sign in to comment.