@Override
    public View getInfoContents(Marker marker) {

      if (!aq.isExist() || cancelAsyncTasks || !isAdded()) {
        return null;
      }

      View myContentsView =
          getActivity().getLayoutInflater().inflate(R.layout.map_info_window, null);
      AQuery aq = new AQuery(myContentsView);

      String name = Utils.getNameFromEmail(context, marker.getTitle());
      aq.id(R.id.contact_name).text(name);
      aq.id(R.id.timestamp).text(Utils.timestampText(marker.getSnippet()));

      return myContentsView;
    }
  private Bitmap getMarkerBitmap(String email, Boolean accurate, Boolean recent) {

    Log.d(TAG, "getMarkerBitmap");

    // Add cache checking logic
    Bitmap markerImage = MainApplication.avatarCache.get(email + ":" + accurate + ":" + recent);
    if (markerImage != null) {
      Log.d(TAG, "Marker IN cache: " + email + ":" + accurate + ":" + recent);
      return markerImage;
    } else {
      Log.d(TAG, "Marker NOT in cache. Processing: " + email + ":" + accurate + ":" + recent);
    }

    Log.d(TAG, "AvatarLoader not in cache. Fetching it. Email: " + email);
    // Get avatars
    Bitmap userImage = Utils.getPhotoFromEmail(context, email);
    if (userImage == null) {
      userImage = BitmapFactory.decodeResource(getResources(), R.drawable.default_avatar);
    } else {
      userImage = Utils.getRoundedCornerBitmap(userImage, 50);
    }

    // Marker colors, etc.
    Log.d(TAG, "userImage size: " + userImage);
    View markerView =
        ((LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE))
            .inflate(R.layout.map_marker, null);

    aq = new AQuery(markerView);
    aq.id(R.id.user_image).image(userImage);
    Log.d(TAG, "aq in place");

    if (email.equals(MainApplication.userAccount)) {
      aq.id(R.id.marker_frame).image(R.drawable.pointers_android_pointer_green);
    } else if (!recent || !accurate) {
      aq.id(R.id.marker_frame).image(R.drawable.pointers_android_pointer_orange);
    }

    Log.d(TAG, "Image set. Calling createDrawableFromView");

    markerImage = createDrawableFromView(markerView);
    MainApplication.avatarCache.put(email + ":" + accurate + ":" + recent, markerImage);
    return markerImage;
  }
  @Override
  public void onActivityCreated(Bundle savedInstanceState) {

    super.onActivityCreated(savedInstanceState);

    aboutLinksUrls = getResources().getStringArray(R.array.about_links_url);
    String[] aboutLinks = getResources().getStringArray(R.array.about_links);
    aq.id(R.id.listView1)
        .adapter(
            new ArrayAdapter<>(getActivity(), android.R.layout.simple_list_item_1, aboutLinks));
    aq.id(R.id.listView1).itemClicked(new AboutItemClickListener());
    aq.id(R.id.version).text(R.string.version, Utils.getAppVersion(getActivity()));
  }