docs: private void handleDecodeInternally(Result rawResult, ResultHandler resultHandler, Bitmap barcode) {
  
      maybeSetClipboard(resultHandler);
  
      SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
  
      if (resultHandler.getDefaultButtonID() != null && prefs.getBoolean(PreferencesActivity.KEY_AUTO_OPEN_WEB, false)) {
        resultHandler.handleButtonPress(resultHandler.getDefaultButtonID());
        return;
      }
  
      statusView.setVisibility(View.GONE);
      viewfinderView.setVisibility(View.GONE);
      resultView.setVisibility(View.VISIBLE);
  
      ImageView barcodeImageView = (ImageView) findViewById(R.id.barcode_image_view);
      if (barcode == null) {
        barcodeImageView.setImageBitmap(BitmapFactory.decodeResource(getResources(),
            R.drawable.launcher_icon));
      } else {
        barcodeImageView.setImageBitmap(barcode);
      }
  
      TextView formatTextView = (TextView) findViewById(R.id.format_text_view);
      formatTextView.setText(rawResult.getBarcodeFormat().toString());
  
      TextView typeTextView = (TextView) findViewById(R.id.type_text_view);
      typeTextView.setText(resultHandler.getType().toString());
  
      DateFormat formatter = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
      TextView timeTextView = (TextView) findViewById(R.id.time_text_view);
      timeTextView.setText(formatter.format(rawResult.getTimestamp()));
  
  
      TextView metaTextView = (TextView) findViewById(R.id.meta_text_view);
      View metaTextViewLabel = findViewById(R.id.meta_text_view_label);
      metaTextView.setVisibility(View.GONE);
      metaTextViewLabel.setVisibility(View.GONE);
      Map<ResultMetadataType,Object> metadata = rawResult.getResultMetadata();
      if (metadata != null) {
        StringBuilder metadataText = new StringBuilder(20);
        for (Map.Entry<ResultMetadataType,Object> entry : metadata.entrySet()) {
          if (DISPLAYABLE_METADATA_TYPES.contains(entry.getKey())) {
            metadataText.append(entry.getValue()).append('\n');
          }
        }
        if (metadataText.length() > 0) {
          metadataText.setLength(metadataText.length() - 1);
          metaTextView.setText(metadataText);
          metaTextView.setVisibility(View.VISIBLE);
          metaTextViewLabel.setVisibility(View.VISIBLE);
        }
      }
  
      CharSequence displayContents = resultHandler.getDisplayContents();
      TextView contentsTextView = (TextView) findViewById(R.id.contents_text_view);
      contentsTextView.setText(displayContents);
      int scaledSize = Math.max(22, 32 - displayContents.length() / 4);
      contentsTextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, scaledSize);
  
      TextView supplementTextView = (TextView) findViewById(R.id.contents_supplement_text_view);
      supplementTextView.setText("");
      supplementTextView.setOnClickListener(null);
      if (PreferenceManager.getDefaultSharedPreferences(this).getBoolean(
          PreferencesActivity.KEY_SUPPLEMENTAL, true)) {
        SupplementalInfoRetriever.maybeInvokeRetrieval(supplementTextView,
                                                       resultHandler.getResult(),
                                                       historyManager,
                                                       this);
      }
  
      int buttonCount = resultHandler.getButtonCount();
      ViewGroup buttonView = (ViewGroup) findViewById(R.id.result_button_view);
      buttonView.requestFocus();
      for (int x = 0; x < ResultHandler.MAX_BUTTON_COUNT; x++) {
        TextView button = (TextView) buttonView.getChildAt(x);
        if (x < buttonCount) {
          button.setVisibility(View.VISIBLE);
          button.setText(resultHandler.getButtonText(x));
          button.setOnClickListener(new ResultButtonListener(resultHandler, x));
        } else {
          button.setVisibility(View.GONE);
        }
      }
  
    }