diff --git a/app/build.gradle b/app/build.gradle index 6294b7b..85c7ac0 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -24,11 +24,11 @@ android { } dependencies { - compile fileTree(include: ['*.jar'], dir: 'libs') - compile 'com.android.support:appcompat-v7:' + supportLibraryVersion - compile 'com.android.support:design:' + supportLibraryVersion - compile 'com.android.support:cardview-v7:' + supportLibraryVersion - compile 'com.android.support.constraint:constraint-layout:' + constraintLayoutVersion - compile 'org.osmdroid:osmdroid-android:' + osmdroidVersion - compile 'com.google.code.gson:gson:' + gsonVersion + implementation fileTree(include: ['*.jar'], dir: 'libs') + implementation 'com.android.support:appcompat-v7:' + supportLibraryVersion + implementation 'com.android.support:design:' + supportLibraryVersion + implementation 'com.android.support:cardview-v7:' + supportLibraryVersion + implementation 'com.android.support.constraint:constraint-layout:' + constraintLayoutVersion + implementation 'org.osmdroid:osmdroid-android:' + osmdroidVersion + implementation 'com.google.code.gson:gson:' + gsonVersion } diff --git a/app/src/main/java/org/y20k/trackbook/MainActivity.java b/app/src/main/java/org/y20k/trackbook/MainActivity.java index a826cad..ee6ef51 100644 --- a/app/src/main/java/org/y20k/trackbook/MainActivity.java +++ b/app/src/main/java/org/y20k/trackbook/MainActivity.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * @@ -31,24 +31,31 @@ import android.os.Bundle; import android.os.Environment; import android.preference.PreferenceManager; import android.support.annotation.NonNull; +import android.support.annotation.Nullable; import android.support.design.widget.BottomNavigationView; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; import android.support.v4.app.DialogFragment; import android.support.v4.app.Fragment; +import android.support.v4.app.FragmentManager; +import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.content.ContextCompat; import android.support.v4.content.LocalBroadcastManager; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.CardView; +import android.util.SparseArray; import android.view.MenuItem; import android.view.View; +import android.view.ViewGroup; import android.widget.Button; import android.widget.Toast; import org.y20k.trackbook.helpers.DialogHelper; import org.y20k.trackbook.helpers.LogHelper; import org.y20k.trackbook.helpers.TrackbookKeys; +import org.y20k.trackbook.layout.NonSwipeableViewPager; +import java.lang.ref.WeakReference; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -66,6 +73,8 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { /* Main class variables */ private BottomNavigationView mBottomNavigationView; + private NonSwipeableViewPager mViewPager; + private SectionsPagerAdapter mSectionsPagerAdapter; private boolean mTrackerServiceRunning; private boolean mPermissionsGranted; private boolean mFloatingActionButtonSubMenuVisible; @@ -207,7 +216,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { public void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); mTrackerServiceRunning = savedInstanceState.getBoolean(INSTANCE_TRACKING_STATE, false); - mSelectedTab = savedInstanceState.getInt(INSTANCE_SELECTED_TAB, 0); + mSelectedTab = savedInstanceState.getInt(INSTANCE_SELECTED_TAB, FRAGMENT_ID_MAP); mFloatingActionButtonSubMenuVisible = savedInstanceState.getBoolean(INSTANCE_FAB_SUB_MENU_VISIBLE, false); } @@ -239,6 +248,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { private void handleStateAfterSave() { // display and update track tab mSelectedTab = FRAGMENT_ID_TRACKS; + mViewPager.setCurrentItem(mSelectedTab); // dismiss notification Intent intent = new Intent(this, TrackerService.class); @@ -295,6 +305,14 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { // point to the main map layout setContentView(R.layout.activity_main); + // create adapter that returns fragments for the maim map and the last track display + mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager()); + + // set up the ViewPager with the sections adapter. + mViewPager = (NonSwipeableViewPager) findViewById(R.id.container2); + mViewPager.setAdapter(mSectionsPagerAdapter); + mViewPager.setCurrentItem(mSelectedTab); + // setup bottom navigation mBottomNavigationView = findViewById(R.id.navigation); mBottomNavigationView.setOnNavigationItemSelectedListener(getOnNavigationItemSelectedListener()); @@ -315,8 +333,8 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { // add listeners to buttons addListenersToViews(); - // show map fragment - showFragment(FRAGMENT_ID_MAP); +// // show map fragment +// showFragment(FRAGMENT_ID_MAP); } else { // point to the on main onboarding layout @@ -377,7 +395,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { mFloatingActionButtonLocation.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) getFragmentFromTag(FRAGMENT_TAG_MAP); + MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) mSectionsPagerAdapter.getFragment(FRAGMENT_ID_MAP); mainActivityMapFragment.handleShowMyLocation(); } }); @@ -387,7 +405,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { /* Handles tap on the button "save and clear" */ private void handleSaveButtonClick() { // todo check -> may produce NullPointerException - MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) getFragmentFromTag(FRAGMENT_TAG_MAP); + MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) mSectionsPagerAdapter.getFragment(FRAGMENT_ID_MAP); mainActivityMapFragment.onActivityResult(RESULT_SAVE_DIALOG, Activity.RESULT_OK, getIntent()); handleStateAfterSave(); } @@ -401,7 +419,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { int dialogNegativeButton = R.string.dialog_default_action_cancel; // show delete dialog - results are handles by onActivityResult - MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) getFragmentFromTag(FRAGMENT_TAG_MAP); + MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) mSectionsPagerAdapter.getFragment(FRAGMENT_ID_MAP); DialogFragment dialogFragment = DialogHelper.newInstance(dialogTitle, dialogMessage, dialogPositiveButton, dialogNegativeButton); dialogFragment.setTargetFragment(mainActivityMapFragment, RESULT_CLEAR_DIALOG); dialogFragment.show(getSupportFragmentManager(), "ClearDialog"); @@ -422,7 +440,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { setFloatingActionButtonState(); // get last location from MainActivity Fragment // todo check -> may produce NullPointerException - MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) getFragmentFromTag(FRAGMENT_TAG_MAP); + MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) mSectionsPagerAdapter.getFragment(FRAGMENT_ID_MAP); Location lastLocation = mainActivityMapFragment.getCurrentBestLocation(); if (lastLocation != null) { @@ -472,7 +490,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { } // update tracking state in MainActivityMapFragment // todo check -> may produce NullPointerException - MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) getFragmentFromTag(FRAGMENT_TAG_MAP); + MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) mSectionsPagerAdapter.getFragment(FRAGMENT_ID_MAP); mainActivityMapFragment.setTrackingState(mTrackerServiceRunning); } @@ -558,48 +576,6 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { } - /* Show fragment for given position */ - private void showFragment(int pos) { - Fragment fragment = null; - String tag = null; - - // define tag - if (pos == FRAGMENT_ID_TRACKS) { - tag = FRAGMENT_TAG_TRACKS; - } else { - tag = FRAGMENT_TAG_MAP; - } - // get fragment - fragment = getFragmentFromTag(tag); - - // update selected tab - mSelectedTab = pos; - - // place fragment in container - getSupportFragmentManager().beginTransaction() - .replace(R.id.container, fragment, tag ) - .commit(); - } - - - /* Returns a fragment for a given tag - creates a new instance if necessary */ - private Fragment getFragmentFromTag(String tag) { - Fragment fragment = null; - fragment = getSupportFragmentManager().findFragmentByTag(tag); - - if (fragment != null) { - return fragment; - } else { - if (tag.equals(FRAGMENT_TAG_TRACKS)) { - fragment = MainActivityTrackFragment.newInstance(); - } else { - fragment = MainActivityMapFragment.newInstance(); - } - return fragment; - } - } - - /* Handles taps on the bottom navigation */ private BottomNavigationView.OnNavigationItemSelectedListener getOnNavigationItemSelectedListener() { return new BottomNavigationView.OnNavigationItemSelectedListener() { @@ -615,7 +591,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { // show map fragment mSelectedTab = FRAGMENT_ID_MAP; - showFragment(FRAGMENT_ID_MAP); + mViewPager.setCurrentItem(mSelectedTab); return true; @@ -629,7 +605,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { // show tracks fragment mSelectedTab = FRAGMENT_ID_TRACKS; - showFragment(FRAGMENT_ID_TRACKS); + mViewPager.setCurrentItem(mSelectedTab); return true; @@ -652,7 +628,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { case ACTION_SHOW_MAP: // show map fragment mSelectedTab = FRAGMENT_ID_MAP; - mBottomNavigationView.setSelectedItemId(FRAGMENT_ID_MAP); + mViewPager.setCurrentItem(mSelectedTab); // clear intent intent.setAction(ACTION_DEFAULT); @@ -696,7 +672,7 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { setFloatingActionButtonState(); // pass tracking state to MainActivityMapFragment // todo check -> may produce NullPointerException - MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) getFragmentFromTag(FRAGMENT_TAG_MAP); + MainActivityMapFragment mainActivityMapFragment = (MainActivityMapFragment) mSectionsPagerAdapter.getFragment(FRAGMENT_ID_MAP); mainActivityMapFragment.setTrackingState(false); } }; @@ -719,4 +695,76 @@ public class MainActivity extends AppCompatActivity implements TrackbookKeys { } } + + /** + * Inner class: SectionsPagerAdapter that returns a fragment corresponding to one of the tabs. + * see also: https://developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html + * and: http://www.truiton.com/2015/12/android-activity-fragment-communication/ + */ + public class SectionsPagerAdapter extends FragmentPagerAdapter { + + private final SparseArray> instantiatedFragments = new SparseArray<>(); + + public SectionsPagerAdapter(FragmentManager fm) { + super(fm); + } + + @Override + public Fragment getItem(int position) { + // getItem is called to instantiate the fragment for the given page. + switch (position) { + case FRAGMENT_ID_MAP: + return new MainActivityMapFragment(); + case FRAGMENT_ID_TRACKS: + return new MainActivityTrackFragment(); + } + return null; + } + + @Override + public int getCount() { + // Show 2 total pages. + return 2; + } + + @Override + public CharSequence getPageTitle(int position) { + switch (position) { + case FRAGMENT_ID_MAP: + return getString(R.string.tab_map); + case FRAGMENT_ID_TRACKS: + return getString(R.string.tab_last_tracks); + } + return null; + } + + @Override + public Object instantiateItem(final ViewGroup container, final int position) { + final Fragment fragment = (Fragment) super.instantiateItem(container, position); + instantiatedFragments.put(position, new WeakReference<>(fragment)); + return fragment; + } + + @Override + public void destroyItem(final ViewGroup container, final int position, final Object object) { + instantiatedFragments.remove(position); + super.destroyItem(container, position, object); + } + + @Nullable + public Fragment getFragment(final int position) { + final WeakReference wr = instantiatedFragments.get(position); + if (wr != null) { + return wr.get(); + } else { + return null; + } + } + + } + /** + * End of inner class + */ + + } diff --git a/app/src/main/java/org/y20k/trackbook/MainActivityMapFragment.java b/app/src/main/java/org/y20k/trackbook/MainActivityMapFragment.java index c9fd916..dea59db 100644 --- a/app/src/main/java/org/y20k/trackbook/MainActivityMapFragment.java +++ b/app/src/main/java/org/y20k/trackbook/MainActivityMapFragment.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/MainActivityTrackFragment.java b/app/src/main/java/org/y20k/trackbook/MainActivityTrackFragment.java index c303ca5..0e035a2 100644 --- a/app/src/main/java/org/y20k/trackbook/MainActivityTrackFragment.java +++ b/app/src/main/java/org/y20k/trackbook/MainActivityTrackFragment.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * @@ -174,7 +174,7 @@ public class MainActivityTrackFragment extends Fragment implements AdapterView.O CompassOverlay compassOverlay = new CompassOverlay(mActivity, new InternalCompassOrientationProvider(mActivity), mMapView); compassOverlay.enableCompass(); // move the compass overlay down a bit - compassOverlay.setCompassCenter(35.0f, 80.0f); + compassOverlay.setCompassCenter(35.0f, 96.0f); mMapView.getOverlays().add(compassOverlay); // initiate map state diff --git a/app/src/main/java/org/y20k/trackbook/TrackerService.java b/app/src/main/java/org/y20k/trackbook/TrackerService.java index a24256a..b6b2ff3 100644 --- a/app/src/main/java/org/y20k/trackbook/TrackerService.java +++ b/app/src/main/java/org/y20k/trackbook/TrackerService.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/core/Track.java b/app/src/main/java/org/y20k/trackbook/core/Track.java index 3cde830..bf85395 100644 --- a/app/src/main/java/org/y20k/trackbook/core/Track.java +++ b/app/src/main/java/org/y20k/trackbook/core/Track.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/core/TrackBundle.java b/app/src/main/java/org/y20k/trackbook/core/TrackBundle.java index 1859ae7..b9a1cb4 100644 --- a/app/src/main/java/org/y20k/trackbook/core/TrackBundle.java +++ b/app/src/main/java/org/y20k/trackbook/core/TrackBundle.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/core/WayPoint.java b/app/src/main/java/org/y20k/trackbook/core/WayPoint.java index 2538bda..40c157b 100644 --- a/app/src/main/java/org/y20k/trackbook/core/WayPoint.java +++ b/app/src/main/java/org/y20k/trackbook/core/WayPoint.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/helpers/DialogHelper.java b/app/src/main/java/org/y20k/trackbook/helpers/DialogHelper.java index 071a3ec..cbdcb02 100644 --- a/app/src/main/java/org/y20k/trackbook/helpers/DialogHelper.java +++ b/app/src/main/java/org/y20k/trackbook/helpers/DialogHelper.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/helpers/DropdownAdapter.java b/app/src/main/java/org/y20k/trackbook/helpers/DropdownAdapter.java index c2124a0..0fae97a 100644 --- a/app/src/main/java/org/y20k/trackbook/helpers/DropdownAdapter.java +++ b/app/src/main/java/org/y20k/trackbook/helpers/DropdownAdapter.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/helpers/ExportHelper.java b/app/src/main/java/org/y20k/trackbook/helpers/ExportHelper.java index fd875b0..a73034a 100644 --- a/app/src/main/java/org/y20k/trackbook/helpers/ExportHelper.java +++ b/app/src/main/java/org/y20k/trackbook/helpers/ExportHelper.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/helpers/LocationHelper.java b/app/src/main/java/org/y20k/trackbook/helpers/LocationHelper.java index 6aaaab6..f03ffcb 100644 --- a/app/src/main/java/org/y20k/trackbook/helpers/LocationHelper.java +++ b/app/src/main/java/org/y20k/trackbook/helpers/LocationHelper.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/helpers/LogHelper.java b/app/src/main/java/org/y20k/trackbook/helpers/LogHelper.java index 184d60b..3c756ee 100644 --- a/app/src/main/java/org/y20k/trackbook/helpers/LogHelper.java +++ b/app/src/main/java/org/y20k/trackbook/helpers/LogHelper.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/helpers/MapHelper.java b/app/src/main/java/org/y20k/trackbook/helpers/MapHelper.java index fde1361..a3e28b3 100644 --- a/app/src/main/java/org/y20k/trackbook/helpers/MapHelper.java +++ b/app/src/main/java/org/y20k/trackbook/helpers/MapHelper.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/helpers/NotificationHelper.java b/app/src/main/java/org/y20k/trackbook/helpers/NotificationHelper.java index 06ddd29..998831e 100644 --- a/app/src/main/java/org/y20k/trackbook/helpers/NotificationHelper.java +++ b/app/src/main/java/org/y20k/trackbook/helpers/NotificationHelper.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/helpers/StorageHelper.java b/app/src/main/java/org/y20k/trackbook/helpers/StorageHelper.java index 0f0bfe5..342c9d5 100644 --- a/app/src/main/java/org/y20k/trackbook/helpers/StorageHelper.java +++ b/app/src/main/java/org/y20k/trackbook/helpers/StorageHelper.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/helpers/TrackbookKeys.java b/app/src/main/java/org/y20k/trackbook/helpers/TrackbookKeys.java index 836315f..d60b941 100644 --- a/app/src/main/java/org/y20k/trackbook/helpers/TrackbookKeys.java +++ b/app/src/main/java/org/y20k/trackbook/helpers/TrackbookKeys.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/layout/DodgeAbleLayoutBehavior.java b/app/src/main/java/org/y20k/trackbook/layout/DodgeAbleLayoutBehavior.java index af51c06..4befaac 100644 --- a/app/src/main/java/org/y20k/trackbook/layout/DodgeAbleLayoutBehavior.java +++ b/app/src/main/java/org/y20k/trackbook/layout/DodgeAbleLayoutBehavior.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/java/org/y20k/trackbook/layout/NonSwipeableViewPager.java b/app/src/main/java/org/y20k/trackbook/layout/NonSwipeableViewPager.java index d84dea5..7a17970 100644 --- a/app/src/main/java/org/y20k/trackbook/layout/NonSwipeableViewPager.java +++ b/app/src/main/java/org/y20k/trackbook/layout/NonSwipeableViewPager.java @@ -6,7 +6,7 @@ * This file is part of * TRACKBOOK - Movement Recorder for Android * - * Copyright (c) 2016-17 - Y20K.org + * Copyright (c) 2016-18 - Y20K.org * Licensed under the MIT-License * http://opensource.org/licenses/MIT * diff --git a/app/src/main/res/drawable/selector_bottom_navigation.xml b/app/src/main/res/drawable/selector_bottom_navigation.xml index 7d06a0e..aa18970 100644 --- a/app/src/main/res/drawable/selector_bottom_navigation.xml +++ b/app/src/main/res/drawable/selector_bottom_navigation.xml @@ -1,5 +1,6 @@ + diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 0ea2a04..987cc7d 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -144,6 +144,15 @@ app:layout_constraintRight_toRightOf="parent" app:menu="@menu/menu_main" /> + + diff --git a/app/src/main/res/layout/fragment_main_track.xml b/app/src/main/res/layout/fragment_main_track.xml index 70ddb80..01a8307 100644 --- a/app/src/main/res/layout/fragment_main_track.xml +++ b/app/src/main/res/layout/fragment_main_track.xml @@ -36,7 +36,7 @@ android:layout_gravity="center_horizontal" android:background="@color/trackbook_white" app:behavior_hideable="false" - app:behavior_peekHeight="112dp" + app:behavior_peekHeight="54dp" app:layout_behavior="android.support.design.widget.BottomSheetBehavior"> #D9FFFFFF #FF000000 - #FFECEFF1 + #FFCFD8DC #FF607d8b #FF455a64 #D9455a64 diff --git a/build.gradle b/build.gradle index c6bddfa..b6d5035 100644 --- a/build.gradle +++ b/build.gradle @@ -26,7 +26,7 @@ allprojects { minSdkVersion = 22 compileSdkVersion = 27 targetSdkVersion = 27 - buildToolsVersion = '27.0.2' + buildToolsVersion = '27.0.3' supportLibraryVersion = '27.0.2' constraintLayoutVersion = '1.1.0-beta4'