/**
   * Updates message from the current {@link #mNotification notificiation}.
   *
   * @see #setMessages(CharSequence[])
   * @see #isMessageSecret()
   */
  private void updateMessage() {
    if (isPendingUpdate(PENDING_UPDATE_MESSAGE)) return;
    if (mNotification == null) {
      setMessages(null);
      return;
    }

    final boolean secret = isMessageSecret();

    // Get message text
    if (secret) {
      CharSequence[] messages;
      if (sSecureContentLabelRef == null || (messages = sSecureContentLabelRef.get()) == null) {
        final CharSequence cs = mContext.getString(R.string.privacy_mode_hidden_content);
        final SpannableString ss = new SpannableString(cs);
        Check.getInstance().isTrue(ss.length());
        ss.setSpan(
            new StyleSpan(Typeface.ITALIC),
            0 /* start */,
            ss.length() /* end */,
            Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

        messages = new CharSequence[] {ss};
        sSecureContentLabelRef = new SoftReference<>(messages);
      }

      setMessages(messages);
    } else {
      CharSequence message;
      if (mBig) {
        if (mNotification.messageTextLines != null) {
          setMessages(mNotification.messageTextLines);
          return;
        }

        message = NullUtils.whileNotNull(mNotification.messageBigText, mNotification.messageText);
      } else {
        message = mNotification.messageText;
      }

      setMessages(TextUtils.isEmpty(message) ? null : new CharSequence[] {message});
    }
  }
  private void updateTitle() {
    if (isPendingUpdate(PENDING_UPDATE_TITLE)) return;
    if (mNotification == null) {
      setTitle(null);
      return;
    }

    final boolean secret = isTitleSecret();

    CharSequence title;
    if (secret) {
      CharSequence appLabel = getAppLabel(mNotification.getPackageName());
      title = appLabel != null ? appLabel : "Hidden app";
    } else if (mBig) {
      title = NullUtils.whileNotNull(mNotification.titleBigText, mNotification.titleText);
    } else {
      title = mNotification.titleText;
    }

    setTitle(title);
  }