Welcome to mirror list, hosted at ThFree Co, Russian Federation.

BaseSettingsFragment.java « settings « maps « mapswithme « com « src « android - github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: a2d980eea3e37e3830105ab76a47a99c5751088d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
package com.mapswithme.maps.settings;

import android.graphics.Rect;
import android.os.Bundle;
import android.support.annotation.LayoutRes;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.mapswithme.maps.base.BaseMwmFragment;

abstract class BaseSettingsFragment extends BaseMwmFragment
{
  private View mFrame;

  private final Rect mSavedPaddings = new Rect();

  protected abstract @LayoutRes int getLayoutRes();

  private void savePaddings()
  {
    View parent = (View)mFrame.getParent();
    mSavedPaddings.set(parent.getPaddingLeft(), parent.getPaddingTop(), parent.getPaddingRight(), parent.getPaddingBottom());
  }

  protected void clearPaddings()
  {
    ((View)mFrame.getParent()).setPadding(0, 0, 0, 0);
  }

  protected void restorePaddings()
  {
    ((View)mFrame.getParent()).setPadding(mSavedPaddings.left, mSavedPaddings.top, mSavedPaddings.right, mSavedPaddings.bottom);
  }

  @Nullable
  @Override
  public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
  {
    return mFrame = inflater.inflate(getLayoutRes(), container, false);
  }

  @Override
  public void onActivityCreated(Bundle savedInstanceState)
  {
    super.onActivityCreated(savedInstanceState);

    savePaddings();
  }

  @Override
  public void onDestroyView()
  {
    super.onDestroyView();

    restorePaddings();
  }

  protected SettingsActivity getSettingsActivity()
  {
    return (SettingsActivity) getActivity();
  }
}