forked from organicmaps/organicmaps
[android] Proper fragment on up navigation from profile.
This commit is contained in:
parent
1b92eb6331
commit
d491b3ee96
9 changed files with 50 additions and 6 deletions
|
@ -1,8 +1,8 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout
|
||||
android:id="@+id/ll__place_editor"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/ll__place_editor"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?attr/clickableBackground"
|
||||
|
@ -10,12 +10,15 @@
|
|||
android:orientation="horizontal"
|
||||
android:paddingBottom="@dimen/margin_half"
|
||||
android:paddingTop="@dimen/margin_half">
|
||||
|
||||
<ImageView
|
||||
style="@style/PlacePageMetadataIcon"
|
||||
android:src="@drawable/ic_edit"/>
|
||||
android:src="@drawable/ic_edit"
|
||||
android:tint="?colorAccent"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv__editor"
|
||||
style="@style/PlacePageMetadataText"
|
||||
tools:text="@string/pp_place_add"/>
|
||||
android:textAppearance="@style/MwmTextAppearance.PlacePage.Accent"
|
||||
tools:text="@string/edit_place"/>
|
||||
</LinearLayout>
|
|
@ -19,6 +19,7 @@ import com.mapswithme.maps.R;
|
|||
import com.mapswithme.maps.widget.ToolbarController;
|
||||
import com.mapswithme.util.Constants;
|
||||
import com.mapswithme.util.Graphics;
|
||||
import com.mapswithme.util.InputUtils;
|
||||
import com.mapswithme.util.UiUtils;
|
||||
import com.mapswithme.util.concurrency.ThreadPool;
|
||||
import com.mapswithme.util.concurrency.UiThread;
|
||||
|
@ -94,6 +95,7 @@ public class OsmAuthFragment extends BaseAuthFragment implements View.OnClickLis
|
|||
|
||||
private void login()
|
||||
{
|
||||
InputUtils.hideKeyboard(mEtLogin);
|
||||
final String username = mEtLogin.getText().toString();
|
||||
final String password = mEtPassword.getText().toString();
|
||||
enableInput(false);
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.mapswithme.maps.editor;
|
||||
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.text.format.DateUtils;
|
||||
import android.view.Menu;
|
||||
|
@ -10,8 +11,12 @@ import android.widget.ImageView;
|
|||
import android.widget.TextView;
|
||||
|
||||
import com.mapswithme.maps.R;
|
||||
import com.mapswithme.maps.settings.MiscPrefsFragment;
|
||||
import com.mapswithme.maps.settings.SettingsActivity;
|
||||
import com.mapswithme.maps.widget.ToolbarController;
|
||||
import com.mapswithme.util.BottomSheetHelper;
|
||||
import com.mapswithme.util.UiUtils;
|
||||
import com.mapswithme.util.Utils;
|
||||
|
||||
public class ProfileFragment extends AuthFragment implements View.OnClickListener
|
||||
{
|
||||
|
@ -23,6 +28,22 @@ public class ProfileFragment extends AuthFragment implements View.OnClickListene
|
|||
protected View mLogout;
|
||||
private View mAuthBlock;
|
||||
|
||||
@Override
|
||||
protected ToolbarController onCreateToolbarController(@NonNull View root)
|
||||
{
|
||||
return new ToolbarController(root, getActivity())
|
||||
{
|
||||
@Override
|
||||
public void onUpClick()
|
||||
{
|
||||
final Bundle extras = new Bundle();
|
||||
// Hack to open proper fragment in settings.
|
||||
extras.putString(SettingsActivity.EXTRA_SHOW_FRAGMENT, MiscPrefsFragment.class.getName());
|
||||
Utils.navigateToParent(mActivity, extras);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onViewCreated(View view, @Nullable Bundle savedInstanceState)
|
||||
{
|
||||
|
|
|
@ -127,7 +127,7 @@ public class AboutFragment extends BaseSettingsFragment
|
|||
case R.id.copyright:
|
||||
Statistics.INSTANCE.trackEvent(Statistics.EventName.Settings.COPYRIGHT);
|
||||
AlohaHelper.logClick(AlohaHelper.Settings.COPYRIGHT);
|
||||
((SettingsActivity) getActivity()).switchToFragment(CopyrightFragment.class, R.string.copyright);
|
||||
getSettingsActivity().switchToFragment(CopyrightFragment.class, R.string.copyright);
|
||||
break;
|
||||
}
|
||||
} catch (ActivityNotFoundException e)
|
||||
|
|
|
@ -95,4 +95,9 @@ abstract class BaseSettingsFragment extends Fragment
|
|||
lp.rightMargin = margin;
|
||||
view.setLayoutParams(lp);
|
||||
}
|
||||
|
||||
protected SettingsActivity getSettingsActivity()
|
||||
{
|
||||
return (SettingsActivity) getActivity();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,4 +31,9 @@ abstract class BaseXmlSettingsFragment extends PreferenceFragment
|
|||
org.alohalytics.Statistics.logEvent("$onPause", getClass().getSimpleName() + ":" +
|
||||
UiUtils.deviceOrientationAsString(getActivity()));
|
||||
}
|
||||
|
||||
protected SettingsActivity getSettingsActivity()
|
||||
{
|
||||
return (SettingsActivity) getActivity();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -54,7 +54,7 @@ public class CopyrightFragment extends BaseSettingsFragment
|
|||
public boolean onBackPressed()
|
||||
{
|
||||
if (!mDelegate.onBackPressed())
|
||||
((SettingsActivity)getActivity()).switchToFragment(AboutFragment.class, R.string.about_menu_title);
|
||||
getSettingsActivity().switchToFragment(AboutFragment.class, R.string.about_menu_title);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -73,7 +73,7 @@ public class MapPrefsFragment extends BaseXmlSettingsFragment
|
|||
.setPositiveButton(getString(R.string.ok), null)
|
||||
.show();
|
||||
else
|
||||
((SettingsActivity)getActivity()).switchToFragment(StoragePathFragment.class, R.string.maps_storage);
|
||||
getSettingsActivity().switchToFragment(StoragePathFragment.class, R.string.maps_storage);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -11,6 +11,7 @@ import android.net.ConnectivityManager;
|
|||
import android.net.NetworkInfo;
|
||||
import android.net.Uri;
|
||||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.support.annotation.DimenRes;
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.v4.app.NavUtils;
|
||||
|
@ -322,6 +323,13 @@ public class Utils
|
|||
NavUtils.navigateUpFromSameTask(activity);
|
||||
}
|
||||
|
||||
public static void navigateToParent(@NonNull Activity activity, @NonNull Bundle extras)
|
||||
{
|
||||
final Intent intent = NavUtils.getParentActivityIntent(activity);
|
||||
intent.putExtras(extras);
|
||||
NavUtils.navigateUpTo(activity, intent);
|
||||
}
|
||||
|
||||
public static SpannableStringBuilder formatUnitsText(@DimenRes int size, @DimenRes int units, String dimension, String unitText)
|
||||
{
|
||||
final SpannableStringBuilder res = new SpannableStringBuilder(dimension).append(" ").append(unitText);
|
||||
|
|
Loading…
Add table
Reference in a new issue