private View inflateCallInfoLine(CTCall call) {
    View rowLayout = inflater.inflate(R.layout.call_manager_line, null, false);
    View rowView = (RelativeLayout) rowLayout.findViewById(R.id.CallMngLine);
    rowView.setTag(call);
    if (call.iIsOnHold) rowView.setBackgroundResource(R.drawable.call_mng_hold);

    rowView.setOnLongClickListener(
        new OnLongClickListener() {
          public boolean onLongClick(View view) {
            addRemoveConf(view);
            return true;
          }
        });
    rowView.setOnClickListener(
        new OnClickListener() {
          public void onClick(View view) {
            CTCall call = (CTCall) view.getTag();
            switchCallHold(call, view);
            view.invalidate();
          }
        });
    TextView textView = (TextView) rowLayout.findViewById(R.id.CallMngCallerName);
    textView.setText(call.getNameFromAB());

    textView = (TextView) rowLayout.findViewById(R.id.CallMngCallerNumber);
    textView.setText(call.bufPeer.toString());

    textView = (TextView) rowLayout.findViewById(R.id.CallMngSecState);
    textView.setText(call.bufSecureMsg.toString());

    textView = (TextView) rowLayout.findViewById(R.id.CallMngSas);
    textView.setText(call.bufSAS.toString());

    ImageButton btn = (ImageButton) rowLayout.findViewById(R.id.CallMngEndCall);
    Utilities.setCallerImage(call, (ImageView) rowLayout.findViewById(R.id.CallMngImage));
    btn.setTag(call);
    btn.setOnClickListener(
        new OnClickListener() {
          public void onClick(View view) {
            endCall(true, (CTCall) view.getTag());
          }
        });
    if (call.mustShowAnswerBT()) {
      btn = (ImageButton) rowLayout.findViewById(R.id.CallMngAnswerCall);
      btn.setTag(call);
      btn.setVisibility(View.VISIBLE);
      btn.setEnabled(true);
      btn.setOnClickListener(
          new OnClickListener() {
            public void onClick(View view) {
              answerCall(true, (CTCall) view.getTag());
            }
          });
    }
    return rowView;
  }
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    String action = getIntent().getAction();

    if (CALL_MGR_STOP.equals(action)) finish();

    // This is a phone call screen, thus perform some specific handling
    // TODO: Proximity handling similar to CallWindow?
    int wflags = WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED;
    wflags |= WindowManager.LayoutParams.FLAG_IGNORE_CHEEK_PRESSES;
    wflags |= WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD;

    getWindow().addFlags(wflags);

    setContentView(R.layout.activity_call_manager);

    canUseZrtp = Utilities.checkZRTP();

    res = getResources();
    inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);

    callMngrContent = (LinearLayout) findViewById(R.id.CallManagerContent);

    float fontSize = res.getDimension(R.dimen.call_manager_header_text_size);

    conferenceTitle = new TextView(this);
    conferenceTitle.setText(getString(R.string.call_mng_conference));
    conferenceTitle.setBackgroundResource(R.drawable.text_custom);
    conferenceTitle.setTextSize(fontSize);

    inOutTitle = new TextView(this);
    inOutTitle.setText(getString(R.string.call_mng_in_out));
    inOutTitle.setBackgroundResource(R.drawable.text_custom);
    inOutTitle.setTextSize(fontSize);

    privateTitle = new TextView(this);
    privateTitle.setText(getString(R.string.call_mng_private));
    privateTitle.setBackgroundResource(R.drawable.text_custom);
    privateTitle.setTextSize(fontSize);

    // Local bind the TiviPhoneService
    doBindService();
    setupCallLists();
  }