ListView { id: fileList anchors { fill: dialog; leftMargin: 10; rightMargin: 10; topMargin: 80; bottomMargin: 10 } clip: true interactive: visibleArea.heightRatio < 1 model: FolderListModel { id: folderModel nameFilters: [ "*.avi", "*.divx", "*.flv", "*.mp4", "*.mkv", "*.mpg", "*.wmv" ] showDotAndDotDot: true folder: "/home/stuart/" } delegate: FileChooserDelegate { id: delegate Connections { onDelegateClicked: { fileList.currentIndex = index; if (!folderModel.isFolder(index)) { fileChosen(filepath); //signal dialog.opacity = 0; close(); //signal } else { folderModel.folder = filepath; } } } } }