This file is indexed.

/usr/share/messaging-app/ThumbnailContact.qml is in messaging-app 0.1+16.04.20160323-0ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
/*
 * Copyright 2012-2015 Canonical Ltd.
 *
 * This file is part of messaging-app.
 *
 * messaging-app is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; version 3.
 *
 * messaging-app is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

import QtQuick 2.0
import Ubuntu.Components 1.3
import Ubuntu.Contacts 0.1

Item {
    id: attachment

    readonly property int contactsCount:vcardParser.contacts ? vcardParser.contacts.length : 0
    property string filePath
    property alias vcard: vcardParser
    property string contactDisplayName: {
        if (contactsCount > 0)  {
            var contact = vcard.contacts[0]
            if (contact.displayLabel.label && (contact.displayLabel.label != "")) {
                return contact.displayLabel.label
            } else if (contact.name) {
                var contacFullName  = contact.name.firstName
                if (contact.name.midleName) {
                    contacFullName += " " + contact.name.midleName
                }
                if (contact.name.lastName) {
                    contacFullName += " " + contact.name.lastName
                }
                return contacFullName
            }
            return i18n.tr("Unknown contact")
        }
        return ""
    }
    property string title: {
        var result = attachment.contactDisplayName
        if (attachment.contactsCount > 1) {
            return result + " (+%1)".arg(attachment.contactsCount-1)
        } else {
            return result
        }
    }

    signal pressAndHold()

    height: units.gu(6)
    width: textEntry.width

    ContactAvatar {
        id: avatar

        anchors {
            top: parent.top
            bottom: parent.bottom
            left: parent.left
        }
        contactElement: attachment.contactsCount === 1 ? attachment.vcard.contacts[0] : null
        fallbackAvatarUrl: attachment.contactsCount === 1 ? "image://theme/contact" : "image://theme/contact-group"
        fallbackDisplayName: attachment.contactsCount === 1 ? attachment.contactDisplayName : ""
        width: height
    }
    Label {
        id: label

        anchors {
            left: avatar.right
            leftMargin: units.gu(1)
            top: avatar.top
            bottom: avatar.bottom
            right: parent.right
            rightMargin: units.gu(1)
        }

        verticalAlignment: Text.AlignVCenter
        text: attachment.title
        elide: Text.ElideMiddle
        color: UbuntuColors.lightAubergine
    }
    MouseArea {
        anchors.fill: parent
        onPressAndHold: {
            mouse.accept = true
            attachment.pressAndHold()
        }
    }
    VCardParser {
        id: vcardParser

        vCardUrl: attachment ? Qt.resolvedUrl(attachment.filePath) : ""
    }
}