Hello community,

here is the log from the commit of package qtfm for openSUSE:Factory checked in 
at 2019-02-02 21:49:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qtfm (Old)
 and      /work/SRC/openSUSE:Factory/.qtfm.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qtfm"

Sat Feb  2 21:49:46 2019 rev:3 rq:670505 version:6.1.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/qtfm/qtfm.changes        2018-12-11 
15:48:14.710179102 +0100
+++ /work/SRC/openSUSE:Factory/.qtfm.new.28833/qtfm.changes     2019-02-02 
21:49:47.943952242 +0100
@@ -1,0 +2,9 @@
+Fri Feb  1 07:08:42 UTC 2019 - [email protected]
+
+- Update to 6.1.6:
+  * progress dialog fix
+  * path tab-completion. Thanks to @kubaroth[3]
+  * completer handles expansion of ~ path. Thanks to @kubaroth[3]
+  * support mouse back button
+
+-------------------------------------------------------------------

Old:
----
  qtfm-6.1.5.tar.gz

New:
----
  qtfm-6.1.6.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ qtfm.spec ++++++
--- /var/tmp/diff_new_pack.sPfO2t/_old  2019-02-02 21:49:48.691951594 +0100
+++ /var/tmp/diff_new_pack.sPfO2t/_new  2019-02-02 21:49:48.699951587 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package qtfm
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -12,12 +12,12 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via https://bugs.opensuse.org/
+# Please submit bugfixes or comments via http://bugs.opensuse.org/
 #
 
 
 Name:           qtfm
-Version:        6.1.5
+Version:        6.1.6
 Release:        0
 Summary:        Qt File Manager
 License:        GPL-2.0-or-later AND BSD-3-Clause

++++++ qtfm-6.1.5.tar.gz -> qtfm-6.1.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/.gitignore new/qtfm-6.1.6/.gitignore
--- old/qtfm-6.1.5/.gitignore   2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/.gitignore   2019-01-31 22:29:56.000000000 +0100
@@ -1,3 +1,12 @@
 build*
 *.pro.*
 *~
+moc_*.cpp
+moc_*.h
+/fm/qrc_qtfm.cpp
+/tray/qrc_tray.cpp
+Makefile
+.qmake.stash
+lib*.a
+qtfm.app/
+qtfm-tray.app/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/.gitmodules new/qtfm-6.1.6/.gitmodules
--- old/qtfm-6.1.5/.gitmodules  1970-01-01 01:00:00.000000000 +0100
+++ new/qtfm-6.1.6/.gitmodules  2019-01-31 22:29:56.000000000 +0100
@@ -0,0 +1,3 @@
+[submodule "fm/bundle"]
+       path = fm/bundle
+       url = https://github.com/rodlie/adwaita-bundle
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/.travis.yml new/qtfm-6.1.6/.travis.yml
--- old/qtfm-6.1.5/.travis.yml  2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/.travis.yml  2019-01-31 22:29:56.000000000 +0100
@@ -1,61 +1,24 @@
+sudo: required
 language: cpp
 compiler: g++
-dist: trusty
-sudo: required
+matrix:
+  include:
+    - os: linux
+      dist: trusty
+    - os: osx
+      osx_image: xcode8
 
-before_install:
-  - sudo apt-get update
-
-install:
-  - sudo apt-get install qt4-dev-tools qtbase5-dev libxss-dev libmagic-dev 
qt4-qmake qt5-qmake tree
-  
 script:
-  - export CWD=`pwd`
-  - mkdir $CWD/build1
-  - cd $CWD/build1
-  - qmake -qt=qt5 CONFIG+=release PREFIX=/usr  ..
-  - make
-  - make INSTALL_ROOT=`pwd`/pkg install
-  - tree pkg
-  - mkdir $CWD/build2
-  - cd $CWD/build2
-  - qmake -qt=qt4 CONFIG+=release PREFIX=/usr  ..
-  - make
-  - make INSTALL_ROOT=`pwd`/pkg install
-  - tree pkg
-  - mkdir $CWD/build3
-  - cd $CWD/build3
-  - qmake -qt=qt5 CONFIG+=debug PREFIX=/usr  ..
-  - make
-  - make INSTALL_ROOT=`pwd`/pkg install
-  - tree pkg
-  - mkdir $CWD/build4
-  - cd $CWD/build4
-  - qmake -qt=qt4 CONFIG+=debug PREFIX=/usr  ..
-  - make
-  - make INSTALL_ROOT=`pwd`/pkg install
-  - tree pkg
-  - mkdir $CWD/build5
-  - cd $CWD/build5
-  - qmake -qt=qt5 CONFIG+=debug PREFIX=/usr CONFIG+=basic ..
-  - make
-  - make INSTALL_ROOT=`pwd`/pkg install
-  - tree pkg
-  - mkdir $CWD/build6
-  - cd $CWD/build6
-  - qmake -qt=qt4 CONFIG+=debug PREFIX=/usr CONFIG+=basic ..
-  - make
-  - make INSTALL_ROOT=`pwd`/pkg install
-  - tree pkg
-  - mkdir $CWD/build7
-  - cd $CWD/build7
-  - qmake -qt=qt5 CONFIG+=release PREFIX=/usr CONFIG+=basic ..
-  - make
-  - make INSTALL_ROOT=`pwd`/pkg install
-  - tree pkg
-  - mkdir $CWD/build8
-  - cd $CWD/build8
-  - qmake -qt=qt4 CONFIG+=release PREFIX=/usr CONFIG+=basic ..
-  - make
-  - make INSTALL_ROOT=`pwd`/pkg install
-  - tree pkg
+  - sh ci.sh
+
+deploy:
+  provider: releases
+  api_key:
+    secure: 
H0ij5swOKXnIBVFQiZ6Dwexpn0qTrj4r8svoD/LG1PnQVoDZt8zITrE11YkjPNSAL6sf3K958KWsyLdyE4g7eic5cLbZRXgAz+fMQjPvX6SrtPMo2IRhEhVGMal6BzBpNlXmznwP0vkopMUs/tpW9l3BH+K8Z6+EaFt69tMd6Ty0I+iRteQAG8EyUGNV3o1NAgbJf18MBfWrGJkVfAT79GnV0Pjez/M+7AOc7ZdBc5pij3xkbgzzjzfa8lkErjinqIjSvuGgxFQXNP4e/FGkGPAiegpzTyUG8c/32jEwjcjz5Rcr/fMH4CfyIWMXJ2PQeuItdk7FX0ErB7yvV7BYVz4ucBf6LnJVbHPNt6TkXqHBLh4r5fKylvExDwBZqQwp3OUH5wtyB+d5yBnoERZwJqUiVocyZiTTHI4aqVk1BegKV2fVFoN5W3bNT4Kgt4O2Sg4hmcSunmhTh1Jzmt+Sz3Ov5MLbnUVGGIBNoqXrHHXvqqBnEQ9CUJinPCHh3CViTg1H5jI764YajVm0WWDL95N5bzrY9A0pS65oFgOrt82OXn2nlS7kLxCeehcFbWBs7/Wp/31VWAJ62fS2fNTfsGPRPv+4bEipgnzdOElZ0pTFAlgFYXuSIPoJS0ZcwixshAj17sz6LwFv6dOkK4UP0UXZe2fEdp53kjSeJWI+3CQ=
 
+  file_glob: true
+  file: /opt/deploy/*
+  skip_cleanup: true
+  draft: true
+  on:
+    repo: rodlie/qtfm
+    tags: true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/ChangeLog new/qtfm-6.1.6/ChangeLog
--- old/qtfm-6.1.5/ChangeLog    2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/ChangeLog    2019-01-31 22:29:56.000000000 +0100
@@ -1,3 +1,11 @@
+6.1.6 31-January 2019
+- progress dialog fix
+- path tab-completion. Thanks to @kubaroth for the patch
+- completer handles expansion of ~ path. Thanks to @kubaroth for the patch
+- support mouse back button
+- macOS support
+- NetBSD support
+
 6.1.5 09-December 2018
 - fix build if CONFIG+=no_dbus enabled
 - fixed broken multiple file copy/move instances
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/README.md new/qtfm-6.1.6/README.md
--- old/qtfm-6.1.5/README.md    2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/README.md    2019-01-31 22:29:56.000000000 +0100
@@ -68,7 +68,7 @@
 * Requires libmagic from [file](http://darwinsys.com/file/) **if using Qt 4**.
 * Requires 
[hicolor-icon-theme](https://www.freedesktop.org/wiki/Software/icon-theme/)
 * Requires [adwaita-icon-theme](https://github.com/GNOME/adwaita-icon-theme) 
or similar
-* Requires 
[libinotify](https://github.com/libinotify-kqueue/libinotify-kqueue) **if using 
FreeBSD**
+* Requires 
[libinotify](https://github.com/libinotify-kqueue/libinotify-kqueue) **if using 
FreeBSD/NetBSD/macOS**
 * Optional 
[udisks](https://www.freedesktop.org/wiki/Software/udisks/)/[bsdisks](https://www.freshports.org/sysutils/bsdisks/)
 at run-time
 
 Download and extract:
@@ -81,17 +81,12 @@
 ```
 git clone https://github.com/rodlie/qtfm
 cd qtfm
-git checkout 6.1
 ```
-
-Now you just need to build it:
-
 Optional build options:
 
  * ``CONFIG+=no_udisks`` : This will disable udisks support in QtFM
  * ``CONFIG+=no_tray`` : This will disable qtfm-tray
  * ``CONFIG+=no_dbus`` : This will disable D-Bus session features in QtFM
- * ``CONFIG+=release`` : Disable debug output (recommended)
  * ``PREFIX=`` : Install prefix, where things are installed when running 
``make install``
  * ``DOCDIR=`` : Location for documentation (default is PREFIX/share/doc)
  * ``MANDIR=`` : Location for man pages (default is PREFIX/share/man)
@@ -100,7 +95,7 @@
 Doing a normal build:
 ```
 mkdir build && cd build
-qmake CONFIG+=release ..
+qmake ..
 make
 ```
 
@@ -129,7 +124,7 @@
  * libfm is a mix of GPL-2.0 and BSD 3-Clause License (goal is BSD 3-Clause 
License)
  * qtfm-tray is licensed under a BSD 3-Clause License (but depends on libfm 
that includes GPL-2.0 code)
 
- All new source code will be BSD 3-Clause License, modifications to existing 
source code in fm/ will be GPL-2.0.
+ All new source code will be BSD 3-Clause License.
 
 ## Related
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/ci.sh new/qtfm-6.1.6/ci.sh
--- old/qtfm-6.1.5/ci.sh        1970-01-01 01:00:00.000000000 +0100
+++ new/qtfm-6.1.6/ci.sh        2019-01-31 22:29:56.000000000 +0100
@@ -0,0 +1,121 @@
+#!/bin/sh
+# QtFM CI (c) 2019 Ole-André Rodlie
+
+set -e
+
+SETUP=${SETUP:-1}
+
+if [ "${SETUP}" = 1 ]; then
+  sudo chmod 777 /opt
+fi
+
+OS=`uname -s`
+CWD=`pwd`
+SDK=/opt/qtfm
+DEPLOY=/opt/deploy
+
+COMMIT="${TRAVIS_COMMIT}"
+if [ "${TRAVIS_TAG}" != "" ]; then
+  COMMIT=""
+fi
+
+if [ "${SETUP}" = 1 ]; then
+  rm -f download.tar.bz2 || true
+  if [ "${OS}" = "Linux" ]; then
+    echo "Setup ubuntu ..."
+    sudo apt-get update
+    sudo apt-get install qt4-dev-tools qtbase5-dev libxss-dev libmagic-dev 
qt4-qmake qt5-qmake tree dpkg
+    curl -L 
https://sourceforge.net/projects/qt-file-manager/files/sdk/qtfm-sdk-trusty.tar.bz2/download
 --output download.tar.bz2
+    tar xf download.tar.bz2 -C /opt
+    rm -f download.tar.bz2
+  elif [ "${OS}" = "Darwin" ]; then
+    curl -L 
https://sourceforge.net/projects/qt-file-manager/files/sdk/qtfm-mac-sdk-6.1.tar.bz2/download
 --output download.tar.bz2
+    tar xf download.tar.bz2 -C /opt
+    rm -f download.tar.bz2
+  fi
+fi
+
+mkdir -p ${CWD}/deploy ${DEPLOY}
+TAG=`date "+%Y%m%d%H%M"`
+if [ "${TRAVIS_TAG}" != "" ]; then
+  echo "===> RELEASE MODE"
+  TAG="${TRAVIS_TAG}"
+fi
+
+if [ "${OS}" = "Linux" ]; then
+    mkdir $CWD/build1
+    cd $CWD/build1
+    qmake -qt=qt5 CONFIG+=release PREFIX=/usr  ..
+    make
+    make INSTALL_ROOT=`pwd`/pkg install
+    tree pkg
+    mkdir $CWD/build2
+    cd $CWD/build2
+    qmake -qt=qt4 CONFIG+=release PREFIX=/usr  ..
+    make
+    make INSTALL_ROOT=`pwd`/pkg install
+    tree pkg
+    mkdir $CWD/build3
+    cd $CWD/build3
+    qmake -qt=qt5 CONFIG+=debug PREFIX=/usr  ..
+    make
+    make INSTALL_ROOT=`pwd`/pkg install
+    tree pkg
+    mkdir $CWD/build4
+    cd $CWD/build4
+    qmake -qt=qt4 CONFIG+=debug PREFIX=/usr  ..
+    make
+    make INSTALL_ROOT=`pwd`/pkg install
+    tree pkg
+    mkdir $CWD/build5
+    cd $CWD/build5
+    qmake -qt=qt5 CONFIG+=debug PREFIX=/usr CONFIG+=basic ..
+    make
+    make INSTALL_ROOT=`pwd`/pkg install
+    tree pkg
+    mkdir $CWD/build6
+    cd $CWD/build6
+    qmake -qt=qt4 CONFIG+=debug PREFIX=/usr CONFIG+=basic ..
+    make
+    make INSTALL_ROOT=`pwd`/pkg install
+    tree pkg
+    mkdir $CWD/build7
+    cd $CWD/build7
+    qmake -qt=qt5 CONFIG+=release PREFIX=/usr CONFIG+=basic ..
+    make
+    make INSTALL_ROOT=`pwd`/pkg install
+    tree pkg
+    mkdir $CWD/build8
+    cd $CWD/build8
+    qmake -qt=qt4 CONFIG+=release PREFIX=/usr CONFIG+=basic ..
+    make
+    make INSTALL_ROOT=`pwd`/pkg install
+    tree pkg
+    echo "===> Building linux64 ..."
+    PKG_CONFIG_PATH="${SDK}/lib/pkgconfig:${PKG_CONFIG_PATH}"
+    PATH=${SDK}/bin:/usr/bin:/bin
+    mkdir $CWD/build9
+    cd $CWD/build9
+    qmake CONFIG+=release CONFIG+=deploy PREFIX=/usr CONFIG+=no_tray 
CONFIG+=no_udisks CONFIG+=no_dbus ..
+    make
+    make INSTALL_ROOT=`pwd`/pkg install
+    tree pkg
+    cp -a pkg/usr qtfm-$TAG-Linux64
+    strip -s qtfm-$TAG-Linux64/bin/qtfm
+    tar cvvzf qtfm-$TAG-Linux64.tgz qtfm-$TAG-Linux64
+    mv qtfm-$TAG-Linux64.tgz $DEPLOY/
+elif [ "${OS}" = "Darwin" ]; then
+    echo "===> Building mac64 ..."
+    PKG_CONFIG=${SDK}/bin/pkg-config
+    PKG_CONFIG_PATH="${SDK}/lib/pkgconfig:${PKG_CONFIG_PATH}"
+    PATH=${SDK}/bin:/usr/bin:/bin
+    rm -rf build || true
+    mkdir build && cd build
+    qmake CONFIG+=release CONFIG+=deploy ..
+    make
+    strip -u -r fm/QtFM.app/Contents/MacOS/*
+    mkdir release
+    mv fm/QtFM.app release/
+    hdiutil create -volname "QtFM $TAG" -srcfolder release -ov -format UDBZ 
$DEPLOY/qtfm-$TAG-Darwin64.dmg
+fi
+ls -lah $DEPLOY
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/docs/README.md 
new/qtfm-6.1.6/docs/README.md
--- old/qtfm-6.1.5/docs/README.md       2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/docs/README.md       2019-01-31 22:29:56.000000000 +0100
@@ -4,7 +4,7 @@
 [![Github commits (since latest 
release)](https://img.shields.io/github/commits-since/rodlie/qtfm/latest.svg)](https://github.com/rodlie/qtfm)
 [![Build 
Status](https://travis-ci.org/rodlie/qtfm.svg?branch=master)](https://travis-ci.org/rodlie/qtfm)
 
-Lightweight file manager using Qt.
+Lightweight desktop independent Qt file manager for Linux, FreeBSD, NetBSD and 
macOS.
 
  * Desktop (theme/applications/mime) integration
  * Customizable interface
@@ -12,5 +12,5 @@
  * Customizable key bindings
  * Drag & drop functionality
  * Tabs
- * Udisks support
+ * Removable device support
  * System tray daemon
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/docs/_config.yml 
new/qtfm-6.1.6/docs/_config.yml
--- old/qtfm-6.1.5/docs/_config.yml     2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/docs/_config.yml     2019-01-31 22:29:56.000000000 +0100
@@ -1,8 +1,8 @@
 theme: jekyll-theme-minimal
 title: QtFM
-description: Lightweight Linux/BSD File Manager
+description: Lightweight UNIX File Manager
 logo: 
https://github.com/rodlie/qtfm/raw/master/fm/hicolor/256x256/apps/qtfm.png
 show_downloads: true
 github:
-  zip_url: https://github.com/rodlie/qtfm/archive/6.1.4.zip
-  tar_url: https://github.com/rodlie/qtfm/archive/6.1.4.tar.gz
+  zip_url: https://github.com/rodlie/qtfm/archive/6.1.5.zip
+  tar_url: https://github.com/rodlie/qtfm/archive/6.1.5.tar.gz
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/fm/Info.plist new/qtfm-6.1.6/fm/Info.plist
--- old/qtfm-6.1.5/fm/Info.plist        1970-01-01 01:00:00.000000000 +0100
+++ new/qtfm-6.1.6/fm/Info.plist        2019-01-31 22:29:56.000000000 +0100
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" 
"http://www.apple.com/DTDs/PropertyList-1.0.dtd";>
+<plist version="1.0">
+<dict>
+       <key>NSPrincipalClass</key>
+       <string>NSApplication</string>
+       <key>CFBundleIconFile</key>
+       <string>QtFM.icns</string>
+       <key>CFBundlePackageType</key>
+       <string>APPL</string>
+       <key>CFBundleGetInfoString</key>
+        <string>6.1.6</string>
+       <key>CFBundleSignature</key>
+       <string>????</string>
+       <key>CFBundleExecutable</key>
+        <string>QtFM</string>
+       <key>CFBundleIdentifier</key>
+        <string>eu.qtfm</string>
+       <key>NOTE</key>
+       <string>https://qtfm.eu</string>
+</dict>
+</plist>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/fm/fm.pro new/qtfm-6.1.6/fm/fm.pro
--- old/qtfm-6.1.5/fm/fm.pro    2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/fm/fm.pro    2019-01-31 22:29:56.000000000 +0100
@@ -6,6 +6,8 @@
     CONFIG += no_udisks no_tray no_dbus
 }
 
+macx: DEFINES += NO_DBUS NO_UDISKS
+
 TARGET = $${QTFM_TARGET}
 TARGET_NAME = $${QTFM_TARGET_NAME}
 VERSION = $${QTFM_MAJOR}.$${QTFM_MINOR}.$${QTFM_PATCH}
@@ -43,80 +45,47 @@
 
 OTHER_FILES += $${TARGET}.desktop
 RESOURCES += ../$${TARGET}.qrc
+macx {
+    RESOURCES += bundle/adwaita.qrc
+    ICON = images/QtFM.icns
+    QMAKE_INFO_PLIST = Info.plist
+}
 
 DEFINES += APP=\"\\\"$${TARGET}\\\"\"
 DEFINES += APP_NAME=\"\\\"$${TARGET_NAME}\\\"\"
 DEFINES += APP_VERSION=\"\\\"$${VERSION}\\\"\"
 
-isEmpty(PREFIX) {
-    PREFIX = /usr/local
-}
-isEmpty(DOCDIR) {
-    DOCDIR = $$PREFIX/share/doc
-}
-
-target.path = $${PREFIX}/bin
-desktop.files += $${TARGET}.desktop
-desktop.path += $${PREFIX}/share/applications
-docs.path += $${DOCDIR}/$${TARGET}-$${VERSION}
-docs.files += ../LICENSE ../README.md ../AUTHORS ../ChangeLog
-man.files += qtfm.1
-man.path += $${MANDIR}/man1
-INSTALLS += target desktop docs man
-
-icon128.files = hicolor/128x128/apps/qtfm.png
-icon128.path = $${PREFIX}/share/icons/hicolor/128x128/apps
-icon160.files = hicolor/160x160/apps/qtfm.png
-icon160.path = $${PREFIX}/share/icons/hicolor/160x160/apps
-icon16.files = hicolor/16x16/apps/qtfm.png
-icon16.path = $${PREFIX}/share/icons/hicolor/16x16/apps
-icon192.files = hicolor/192x192/apps/qtfm.png
-icon192.path = $${PREFIX}/share/icons/hicolor/192x192/apps
-icon20.files = hicolor/20x20/apps/qtfm.png
-icon20.path = $${PREFIX}/share/icons/hicolor/20x20/apps
-icon22.files = hicolor/22x22/apps/qtfm.png
-icon22.path = $${PREFIX}/share/icons/hicolor/22x22/apps
-icon24.files = hicolor/24x24/apps/qtfm.png
-icon24.path = $${PREFIX}/share/icons/hicolor/24x24/apps
-icon256.files = hicolor/256x256/apps/qtfm.png
-icon256.path = $${PREFIX}/share/icons/hicolor/256x256/apps
-icon32.files = hicolor/32x32/apps/qtfm.png
-icon32.path = $${PREFIX}/share/icons/hicolor/32x32/apps
-icon36.files = hicolor/36x36/apps/qtfm.png
-icon36.path = $${PREFIX}/share/icons/hicolor/36x36/apps
-icon48.files = hicolor/48x48/apps/qtfm.png
-icon48.path = $${PREFIX}/share/icons/hicolor/48x48/apps
-icon512.files = hicolor/512x512/apps/qtfm.png
-icon512.path = $${PREFIX}/share/icons/hicolor/512x512/apps
-icon64.files = hicolor/64x64/apps/qtfm.png
-icon64.path = $${PREFIX}/share/icons/hicolor/64x64/apps
-icon72.files = hicolor/72x72/apps/qtfm.png
-icon72.path = $${PREFIX}/share/icons/hicolor/72x72/apps
-icon96.files = hicolor/96x96/apps/qtfm.png
-icon96.path = $${PREFIX}/share/icons/hicolor/96x96/apps
-iconSVG.files = hicolor/scalable/apps/qtfm.svg
-iconSVG.path = $${PREFIX}/share/icons/hicolor/scalable/apps
-
-INSTALLS += icon128 icon160 icon16 icon192 icon20 icon22 \
-            icon24 icon256 icon32 icon36 icon48 icon512 icon64 \
-            icon72 icon96 iconSVG
-
-!CONFIG(no_udisks|no_dbus) {
-    exists(../libdisks/libdisks.pro) {
-        INCLUDEPATH += ../libdisks
-        LIBS += -L../libdisks -lDisks
-    } else {
-        CONFIG += link_pkgconfig
-        PKGCONFIG += Disks
+unix:!macx {
+    target.path = $${PREFIX}/bin
+    desktop.files += $${TARGET}.desktop
+    desktop.path += $${PREFIX}/share/applications
+    docs.path += $${DOCDIR}/$${TARGET}-$${VERSION}
+    docs.files += ../LICENSE ../README.md ../AUTHORS ../ChangeLog
+    man.files += qtfm.1
+    man.path += $${MANDIR}/man1
+    INSTALLS += target desktop docs man
+
+    hicolor.files = hicolor
+    hicolor.path = $${PREFIX}/share/icons
+    INSTALLS += hicolor
+
+    !CONFIG(no_udisks) {
+        exists(../libdisks/libdisks.pro) {
+            INCLUDEPATH += ../libdisks
+            LIBS += -L../libdisks -lDisks
+        } else {
+            CONFIG += link_pkgconfig
+            PKGCONFIG += Disks
+        }
+    }
+    CONFIG(no_udisks): DEFINES += NO_UDISKS
+    CONFIG(no_dbus) {
+        DEFINES += NO_DBUS
+        DEFINES += NO_UDISKS
     }
+    !CONFIG(no_dbus) : QT += dbus
 }
 
 lessThan(QT_MAJOR_VERSION, 5): LIBS += -lmagic
 CONFIG(release, debug|release):DEFINES += QT_NO_DEBUG_OUTPUT
 CONFIG(deploy) : DEFINES += DEPLOY
-CONFIG(no_udisks): DEFINES += NO_UDISKS
-CONFIG(no_dbus) {
-    DEFINES += NO_DBUS
-    DEFINES += NO_UDISKS
-}
-!CONFIG(no_dbus) : QT += dbus
Binary files old/qtfm-6.1.5/fm/images/QtFM.icns and 
new/qtfm-6.1.6/fm/images/QtFM.icns differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/fm/src/actiontriggers.cpp 
new/qtfm-6.1.6/fm/src/actiontriggers.cpp
--- old/qtfm-6.1.5/fm/src/actiontriggers.cpp    2018-12-09 22:30:17.000000000 
+0100
+++ new/qtfm-6.1.6/fm/src/actiontriggers.cpp    2019-01-31 22:29:56.000000000 
+0100
@@ -8,7 +8,7 @@
 #include <QDockWidget>
 #include <QStatusBar>
 #include <QToolBar>
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__)
 #include <sys/mount.h>
 #else
 #include <sys/vfs.h>
@@ -28,7 +28,11 @@
   // Run or open
   if (run) {
     QProcess *myProcess = new QProcess(this);
+#ifdef Q_OS_MAC
+    myProcess->startDetached(QString("open 
%1").arg(modelList->filePath(srcIndex)));
+#else
     myProcess->startDetached(modelList->filePath(srcIndex));
+#endif
   } else {
     mimeUtils->openInApp(modelList->fileInfo(srcIndex), ""/*term*/);
   }
@@ -183,6 +187,9 @@
     QString title = tr("Setting");
     QString label = tr("Set default terminal:");
     QString def = "xterm";
+#ifdef Q_OS_MAC
+    def = "/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal";
+#endif
     term = QInputDialog::getText(this, title, label, QLineEdit::Normal, def);
     settings->setValue("term", term);
   }
@@ -489,15 +496,23 @@
   qint64 total = FileUtils::totalSize(files);
 
   // Check available space on destination before we start
+#ifdef __NetBSD__
+  struct statvfs info;
+  statvfs(newPath.toLocal8Bit(), &info);
+#else
   struct statfs info;
   statfs(newPath.toLocal8Bit(), &info);
+#endif
   if ((qint64) info.f_bavail * info.f_bsize < total) {
 
     // If it is a cut/move on the same device it doesn't matter
     if (cutList.count()) {
       qint64 driveSize = (qint64) info.f_bavail*info.f_bsize;
+#ifdef __NetBSD__
+      statvfs(files.at(0).path().toLocal8Bit(),&info);
+#else
       statfs(files.at(0).path().toLocal8Bit(),&info);
-
+#endif
       // Same device?
       if ((qint64) info.f_bavail*info.f_bsize != driveSize) {
         emit copyProgressFinished(2, newFiles);
@@ -1001,7 +1016,7 @@
     box.setWindowIcon(QIcon::fromTheme("qtfm", QIcon(":/fm/images/qtfm.png")));
     box.setIconPixmap(QPixmap::fromImage(QImage(":/fm/images/qtfm.png")));
     box.setText(QString("<h1>%1 %2</h1>"
-                        "<p>Desktop Independent Linux/BSD File 
Manager</p>").arg(APP_NAME).arg(APP_VERSION));
+                        "<p>Desktop Independent File 
Manager</p>").arg(APP_NAME).arg(APP_VERSION));
     box.setInformativeText(QString("<p 
style=\"text-align:justify;font-size:small;\">"
                                    "This program is free software; you can 
redistribute it and/or modify"
                                    " it under the terms of the GNU General 
Public License as published by"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/fm/src/mainwindow.cpp 
new/qtfm-6.1.6/fm/src/mainwindow.cpp
--- old/qtfm-6.1.5/fm/src/mainwindow.cpp        2018-12-09 22:30:17.000000000 
+0100
+++ new/qtfm-6.1.6/fm/src/mainwindow.cpp        2019-01-31 22:29:56.000000000 
+0100
@@ -47,6 +47,10 @@
 
 #include "common.h"
 
+#ifdef Q_OS_MAC
+#include <QStyleFactory>
+#endif
+
 MainWindow::MainWindow()
 {
     // setup icon theme search path
@@ -118,7 +122,16 @@
 #endif
 
     // set icon theme
+#ifdef Q_OS_MAC
+#ifdef DEPLOY
+    QIcon::setThemeName("Adwaita");
+    qApp->setStyle(QStyleFactory::create("fusion"));
+#else
     Common::setupIconTheme(qApp->applicationFilePath());
+#endif
+#else
+    Common::setupIconTheme(qApp->applicationFilePath());
+#endif
 
     // Create mime utils
     mimeUtils = new MimeUtils(this);
@@ -143,6 +156,7 @@
     dockBookmarks->setSizePolicy(QSizePolicy::Fixed,QSizePolicy::Fixed);
     bookmarksList = new QListView(dockBookmarks);
     bookmarksList->setMinimumHeight(24); // Docks get the minimum size from 
their content widget
+     bookmarksList->setFocusPolicy(Qt::NoFocus); // Avoid hijacking focus when 
Tab on Edit Path
     dockBookmarks->setWidget(bookmarksList);
     addDockWidget(Qt::LeftDockWidgetArea, dockBookmarks);
 
@@ -208,6 +222,7 @@
     pathEdit = new QComboBox();
     pathEdit->setEditable(true);
     pathEdit->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Fixed);
+    pathEdit->setMinimumWidth(100);
 
     status = statusBar();
     status->setSizeGripEnabled(true);
@@ -247,6 +262,8 @@
     trashDir = Common::trashDir();
     ignoreReload = false;
 
+    qApp->installEventFilter(this);
+
     QTimer::singleShot(0, this, SLOT(lateStart()));
 }
 //---------------------------------------------------------------------------
@@ -462,9 +479,9 @@
   // Load zoom settings
   zoom = settings->value("zoom", 48).toInt();
   zoomTree = settings->value("zoomTree", 16).toInt();
-  zoomBook = settings->value("zoomBook", 16).toInt();
+  zoomBook = settings->value("zoomBook", 32).toInt();
   zoomList = settings->value("zoomList", 24).toInt();
-  zoomDetail = settings->value("zoomDetail", 16).toInt();
+  zoomDetail = settings->value("zoomDetail", 32).toInt();
   detailTree->setIconSize(QSize(zoomDetail, zoomDetail));
   tree->setIconSize(QSize(zoomTree, zoomTree));
   bookmarksList->setIconSize(QSize(zoomBook, zoomBook));
@@ -498,7 +515,9 @@
   term = settings->value("term", "xterm").toString();
 
   // custom actions
+#ifndef Q_OS_MAC
   firstRunCustomActions(isFirstRun);
+#endif
 
   // Load information whether tabs can be shown on top
   if (tabState) {
@@ -527,6 +546,9 @@
     if (!isFirstRun) { return; }
     //qDebug() << "first run, setup default bookmarks";
     modelBookmarks->addBookmark(tr("Computer"), "/", "", "computer", "", 
false, false);
+#ifdef Q_OS_MAC
+    modelBookmarks->addBookmark(tr("Applications"), "/Applications", "", 
"applications-other", "", false, false);
+#endif
     modelBookmarks->addBookmark(tr("Home"), QDir::homePath(), "", "user-home", 
"", false, false);
     modelBookmarks->addBookmark(tr("Desktop"), 
QString("%1/Desktop").arg(QDir::homePath()), "", "user-desktop", "", false, 
false);
     //modelBookmarks->addBookmark(tr("Documents"), 
QString("%1/Documents").arg(QDir::homePath()), "", "text-x-generic", "", false, 
false);
@@ -907,7 +929,11 @@
   if (mods == Qt::ControlModifier || mods == Qt::ShiftModifier) {
     return;
   }
+#ifdef Q_OS_MAC
+  if (modelList->isDir(modelView->mapToSource(current)) && 
!modelList->fileName(modelView->mapToSource(current)).endsWith(".app")) {
+#else
   if (modelList->isDir(modelView->mapToSource(current))) {
+#endif
     QModelIndex i = modelView->mapToSource(current);
     tree->setCurrentIndex(modelTree->mapFromSource(i));
   } else {
@@ -1187,7 +1213,7 @@
     if (progress != 0) {
         progress->setResult(0);
         qDebug() << "progressDialog filename" << progress->getFilename();
-        if (newFiles.contains(progress->getFilename()) && 
progressQueue.isEmpty()) {
+        if (progressQueue.isEmpty()) {
             qDebug() << "progress should be closed";
             progress->close();
             delete progress;
@@ -1331,7 +1357,7 @@
         }
 
         // Add run action or open with default application action
-        if (curIndex.isExecutable()) {
+        if (curIndex.isExecutable() || curIndex.isBundle()) {
           popup->addAction(runAct);
         } else {
           popup->addAction(openAct);
@@ -1346,8 +1372,9 @@
         }*/
 
         // Add open with menu
+#ifndef Q_OS_MAC
         popup->addMenu(createOpenWithMenu());
-
+#endif
         //if (popup->actions().count() == 0) popup->addAction(openAct);
 
         // Add custom actions that are associated only with this file type
@@ -1583,6 +1610,50 @@
   return openMenu;
 }
 
+bool MainWindow::eventFilter(QObject *o, QEvent *e)
+{
+    if (e->type() == QEvent::MouseButtonPress) {
+        QMouseEvent* me = static_cast<QMouseEvent*>(e);
+        qDebug() << "MOUSE BUTTON EVENT" << me->button();
+        switch (me->button()) {
+#if QT_VERSION >= 0x050000
+        case Qt::BackButton:
+#else
+        case Qt::XButton1:
+#endif
+            goBackDir();
+            break;
+        default:;
+        }
+    }
+
+      if (dynamic_cast<QListView*>(o) != NULL ){
+        if (e->type()==QEvent::KeyPress) {
+            QKeyEvent* key = static_cast<QKeyEvent*>(e);
+            if ( (key->key()==Qt::Key_Tab) ) {
+                qDebug()<< "Tab pressed: path completion "<< o ;
+                QListView *completionList = dynamic_cast<QListView*>(o);
+                // Remove incomplete phrase and replace it with a current index
+                QModelIndex index = completionList->currentIndex();
+                QString itemText = index.data(Qt::DisplayRole).toString();
+                QString currentPath = pathEdit->lineEdit()->text();
+                QStringList tempList = currentPath.split("/");
+                tempList.takeLast();
+                tempList << itemText;
+                QString newPath = tempList.join("/");
+                pathEdit->lineEdit()->setText(newPath);
+                // Force update the Main View
+                pathEditChanged(newPath);
+                // Enter Edit Mode right after the event system is ready
+                QTimer::singleShot(0, pathEdit->lineEdit(), SLOT(setFocus()));
+                // Add the trailing / for subsequent completions
+                pathEdit->lineEdit()->setText(newPath + QString("/"));
+            }
+        }
+    }
+    return QMainWindow::eventFilter(o, e);
+}
+
 void MainWindow::refresh(bool modelRefresh, bool loadDir)
 {
     qDebug() << "refresh";
@@ -1968,7 +2039,11 @@
 
//---------------------------------------------------------------------------------
 QStringList myCompleter::splitPath(const QString& path) const
 {
-    QStringList parts = path.split("/");
+    QString temp = path;
+    if (temp.startsWith('~')){
+        temp.replace("~", QDir::homePath());
+    }
+    QStringList parts = temp.split("/");
     parts[0] = "/";
 
     return parts;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/fm/src/mainwindow.h 
new/qtfm-6.1.6/fm/src/mainwindow.h
--- old/qtfm-6.1.5/fm/src/mainwindow.h  2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/fm/src/mainwindow.h  2019-01-31 22:29:56.000000000 +0100
@@ -459,6 +459,9 @@
     bool ignoreReload;
 
     QVector<QString> progressQueue;
+
+protected:
+    bool eventFilter(QObject *o, QEvent *e);
 };
 
 
//---------------------------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/fm/src/mymodel.cpp 
new/qtfm-6.1.6/fm/src/mymodel.cpp
--- old/qtfm-6.1.5/fm/src/mymodel.cpp   2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/fm/src/mymodel.cpp   2019-01-31 22:29:56.000000000 +0100
@@ -838,7 +838,14 @@
     if (folderIcons->contains(type.fileName())) {
       return folderIcons->value(type.fileName());
     }
+#ifdef Q_OS_MAC
+    if (type.fileName().endsWith(".app")) {
+        return iconFactory->icon(type);
+    }
+    return QIcon::fromTheme("folder", iconFactory->icon(type));
+#else
     return iconFactory->icon(type);
+#endif
   }
 
   // If thumbnails are allowed and current file has it, show it
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/fm/src/propertiesdlg.cpp 
new/qtfm-6.1.6/fm/src/propertiesdlg.cpp
--- old/qtfm-6.1.5/fm/src/propertiesdlg.cpp     2018-12-09 22:30:17.000000000 
+0100
+++ new/qtfm-6.1.6/fm/src/propertiesdlg.cpp     2019-01-31 22:29:56.000000000 
+0100
@@ -32,12 +32,15 @@
 #include "propertiesdlg.h"
 #include "icondlg.h"
 #include "mainwindow.h"
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__)
 #include <sys/mount.h>
 #else
 #include <sys/vfs.h>
 #endif
 #include <sys/stat.h>
+#ifdef __NetBSD__
+#include <sys/statvfs.h>
+#endif
 
 /**
  * @brief Creates properties dialog
@@ -385,9 +388,13 @@
 //---------------------------------------------------------------------------
 QString getDriveInfo(QString path)
 {
+#ifdef __NetBSD__
+    struct statvfs info;
+    statvfs(path.toLocal8Bit(), &info);
+#else
     struct statfs info;
     statfs(path.toLocal8Bit(), &info);
-
+#endif
     if(info.f_blocks == 0) return "";
 
     return QString("%1  /  %2  (%3%)").arg(formatSize((qint64) (info.f_blocks 
- info.f_bavail)*info.f_bsize))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/fm/src/settingsdialog.cpp 
new/qtfm-6.1.6/fm/src/settingsdialog.cpp
--- old/qtfm-6.1.5/fm/src/settingsdialog.cpp    2018-12-09 22:30:17.000000000 
+0100
+++ new/qtfm-6.1.6/fm/src/settingsdialog.cpp    2019-01-31 22:29:56.000000000 
+0100
@@ -72,16 +72,20 @@
   selector->addItem(new QListWidgetItem(icon5, tr("Appearance"), selector));
   selector->addItem(new QListWidgetItem(icon2, tr("Custom Actions"), 
selector));
   selector->addItem(new QListWidgetItem(icon3, tr("Shortcuts"), selector));
+#ifndef Q_OS_MAC
   selector->addItem(new QListWidgetItem(icon4, tr("Mime Types"), selector));
   selector->addItem(new QListWidgetItem(icon4, tr("System Tray"), selector));
+#endif
   selector->addItem(new QListWidgetItem(icon4, tr("Advanced"), selector));
 
   stack->addWidget(createGeneralSettings());
   stack->addWidget(createAppearanceSettings());
   stack->addWidget(createActionsSettings());
   stack->addWidget(createShortcutSettings());
+#ifndef Q_OS_MAC
   stack->addWidget(createMimeSettings());
   stack->addWidget(createSystraySettings());
+#endif
   stack->addWidget(createAdvSettings());
 
   connect(selector,
@@ -176,8 +180,9 @@
     // Appearance
     QGroupBox* grpAppear = new QGroupBox(tr("Appearance"), widget);
     QFormLayout* layoutAppear = new QFormLayout(grpAppear);
+#ifndef Q_OS_MAC
     cmbIconTheme = new QComboBox(grpAppear);
-
+#endif
 #if QT_VERSION >= 0x050000
     checkDarkTheme = new QCheckBox(grpAppear);
 #endif
@@ -186,7 +191,9 @@
     showHomeButton = new QCheckBox(grpAppear);
     showTerminalButton = new QCheckBox(grpAppear);
 
+#ifndef Q_OS_MAC
     layoutAppear->addRow(tr("Fallback Icon theme:"), cmbIconTheme);
+#endif
 #if QT_VERSION >= 0x050000
     layoutAppear->addRow(tr("Use \"Dark Mode\""), checkDarkTheme);
 #endif
@@ -637,7 +644,11 @@
 
   // Read general settings
   checkDelete->setChecked(settingsPtr->value("confirmDelete", true).toBool());
+#ifdef Q_OS_MAC
+  editTerm->setText(settingsPtr->value("term", 
"/Applications/Utilities/Terminal.app/Contents/MacOS/Terminal").toString());
+#else
   editTerm->setText(settingsPtr->value("term", "xterm").toString());
+#endif
   editCopyX->setText(settingsPtr->value("copyXof", COPY_X_OF).toString());
   editCopyTS->setText(settingsPtr->value("copyXofTS", COPY_X_TS).toString());
 
@@ -658,12 +669,13 @@
 #endif
   checkFileColor->setChecked(settingsPtr->value("fileColor", false).toBool());
   checkPathHistory->setChecked(settingsPtr->value("pathHistory", 
true).toBool());
+  checkWindowTitlePath->setChecked(settingsPtr->value("windowTitlePath", 
true).toBool());
 
+#ifndef Q_OS_MAC
   checkTrayNotify->setChecked(settingsPtr->value("trayNotify", true).toBool());
   checkAudioCD->setChecked(settingsPtr->value("autoPlayAudioCD", 
false).toBool());
   checkAutoMount->setChecked(settingsPtr->value("trayAutoMount", 
false).toBool());
   checkDVD->setChecked(settingsPtr->value("autoPlayDVD", false).toBool());
-  checkWindowTitlePath->setChecked(settingsPtr->value("windowTitlePath", 
true).toBool());
 
   // Load default mime appis location
   QString tmp = "/.local/share/applications/mimeapps.list";
@@ -681,6 +693,7 @@
   iconThemes << Common::getIconThemes(qApp->applicationFilePath());
   cmbIconTheme->addItems(iconThemes);
   cmbIconTheme->setCurrentIndex(iconThemes.indexOf(currentTheme));
+#endif
 
   // Read custom actions
   checkOutput->setChecked(settingsPtr->value("showActionOutput", 
true).toBool());
@@ -782,6 +795,10 @@
  */
 void SettingsDialog::loadMimes(int section) {
 
+#ifdef Q_OS_MAC
+    return;
+#endif
+
   // Mime progress section
   const int MIME_PROGRESS_SECTION = 4;
 
@@ -873,17 +890,21 @@
   settingsPtr->setValue("singleClick", comboSingleClick->currentIndex());
   settingsPtr->setValue("home_button", showHomeButton->isChecked());
   settingsPtr->setValue("terminal_button", showTerminalButton->isChecked());
+  settingsPtr->setValue("windowTitlePath", checkWindowTitlePath->isChecked());
 
+#ifndef Q_OS_MAC
   settingsPtr->setValue("trayNotify", checkTrayNotify->isChecked());
   settingsPtr->setValue("autoPlayAudioCD", checkAudioCD->isChecked());
   settingsPtr->setValue("trayAutoMount", checkAutoMount->isChecked());
   settingsPtr->setValue("autoPlayDVD", checkDVD->isChecked());
-  settingsPtr->setValue("windowTitlePath", checkWindowTitlePath->isChecked());
+  settingsPtr->setValue("fallbackTheme", cmbIconTheme->currentText());
+  settingsPtr->setValue("defMimeAppsFile", cmbDefaultMimeApps->currentText());
 
   if (cmbIconTheme->currentText() != 
settingsPtr->value("fallbackTheme").toString()) {
       settingsPtr->setValue("clearCache", true);
       QMessageBox::warning(this, tr("Restart to apply settings"), tr("You must 
restart application to apply theme settings"));
   }
+#endif
 
 #if QT_VERSION >= 0x050000
   if (checkDarkTheme->isChecked() != settingsPtr->value("darkTheme").toBool()) 
{
@@ -893,8 +914,7 @@
 #endif
   settingsPtr->setValue("fileColor", checkFileColor->isChecked());
   settingsPtr->setValue("pathHistory", checkPathHistory->isChecked());
-  settingsPtr->setValue("fallbackTheme", cmbIconTheme->currentText());
-  settingsPtr->setValue("defMimeAppsFile", cmbDefaultMimeApps->currentText());
+
 
   // Custom actions
   settingsPtr->setValue("showActionOutput", checkOutput->isChecked());
@@ -934,6 +954,7 @@
   settingsPtr->endGroup();
 
   // Mime types
+#ifndef Q_OS_MAC
   for (int i = 0; i < mimesWidget->topLevelItemCount(); ++i) {
     QTreeWidgetItem* category = mimesWidget->topLevelItem(i);
     QString categoryName = category->text(0) + "/";
@@ -950,6 +971,7 @@
     }
   }
   mimeUtilsPtr->saveDefaults();
+#endif
 
   // Check for shortcuts duplicates
   if (duplicates.count()) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/libfm/fileutils.cpp 
new/qtfm-6.1.6/libfm/fileutils.cpp
--- old/qtfm-6.1.5/libfm/fileutils.cpp  2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/libfm/fileutils.cpp  2019-01-31 22:29:56.000000000 +0100
@@ -1,7 +1,7 @@
 #include "fileutils.h"
 #include <QDirIterator>
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__)
 #include <sys/mount.h>
 #else
 #include <sys/vfs.h>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/libfm/libfm.pro 
new/qtfm-6.1.6/libfm/libfm.pro
--- old/qtfm-6.1.5/libfm/libfm.pro      2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/libfm/libfm.pro      2019-01-31 22:29:56.000000000 +0100
@@ -18,9 +18,11 @@
     properties.h \
     common.h \
     progressdlg.h
-!CONFIG(no_dbus) {
-    HEADERS += service.h
-    QT += dbus
+unix:!macx {
+    !CONFIG(no_dbus) {
+        HEADERS += service.h
+        QT += dbus
+    }
 }
 
 exists(../qtfm.pri) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/libfm/mimeutils.cpp 
new/qtfm-6.1.6/libfm/mimeutils.cpp
--- old/qtfm-6.1.5/libfm/mimeutils.cpp  2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/libfm/mimeutils.cpp  2019-01-31 22:29:56.000000000 +0100
@@ -11,8 +11,14 @@
 #include <magic.h>
 #endif
 
+#ifdef Q_OS_DARWIN
+#include <CoreFoundation/CoreFoundation.h>
+#include <CoreServices/CoreServices.h>
+#endif
+
 #include "common.h"
 
+
 /**
  * @brief Creates mime utils
  * @param parent
@@ -100,9 +106,18 @@
     }
     openInApp(df.getExec(), file, termCmd);
   } else {
-    QString title = tr("No default application");
-    QString msg = tr("No default application for mime: %1!").arg(mime);
-    QMessageBox::warning(NULL, title, msg);
+#ifdef Q_OS_DARWIN
+      CFURLRef ref = CFURLCreateWithFileSystemPath(NULL,
+                                                   
file.absoluteFilePath().toCFString(),
+                                                   kCFURLPOSIXPathStyle,
+                                                   file.isDir());
+      LSOpenCFURLRef(ref, NULL);
+#else
+
+     QString title = tr("No default application");
+     QString msg = tr("No default application for mime: %1!").arg(mime);
+     QMessageBox::warning(NULL, title, msg);
+#endif
   }
 }
 //---------------------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/qtfm.pri new/qtfm-6.1.6/qtfm.pri
--- old/qtfm-6.1.5/qtfm.pri     2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/qtfm.pri     2019-01-31 22:29:56.000000000 +0100
@@ -2,25 +2,38 @@
 QTFM_TARGET_NAME = "QtFM"
 QTFM_MAJOR = 6
 QTFM_MINOR = 1
-QTFM_PATCH = 5
+QTFM_PATCH = 6
 
-isEmpty(PREFIX) {
-    PREFIX = /usr/local
-    isEmpty(XDGDIR) {
-        XDGDIR = $${PREFIX}/etc/xdg
+QMAKE_TARGET_COMPANY = "QtFM"
+QMAKE_TARGET_PRODUCT = "QtFM"
+QMAKE_TARGET_DESCRIPTION = "QtFM"
+QMAKE_TARGET_COPYRIGHT = "Copyright QtFM developers"
+
+unix:!macx {
+    isEmpty(PREFIX) {
+        PREFIX = /usr/local
+        isEmpty(XDGDIR): XDGDIR = $${PREFIX}/etc/xdg
     }
+    isEmpty(DOCDIR): DOCDIR = $$PREFIX/share/doc
+    isEmpty(MANDIR): MANDIR = $$PREFIX/share/man
+    isEmpty(XDGDIR): XDGDIR = /etc/xdg
 }
-isEmpty(DOCDIR) {
-    DOCDIR = $$PREFIX/share/doc
-}
-isEmpty(MANDIR) {
-    MANDIR = $$PREFIX/share/man
-}
-isEmpty(XDGDIR) {
-    XDGDIR = /etc/xdg
-}
+
 CONFIG += staticlib
 CONFIG -= install_lib
 
+macx {
+    QTFM_TARGET = QtFM
+    LIBS += -framework CoreFoundation -framework CoreServices
+    QT_CONFIG -= no-pkg-config
+    CONFIG += link_pkgconfig
+    PKGCONFIG += libinotify
+    QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7
+}
+
 CONFIG(release, debug|release): DEFINES += QT_NO_DEBUG_OUTPUT
 freebsd: LIBS += -linotify
+netbsd-g++ {
+    CONFIG += link_pkgconfig
+    PKGCONFIG += libinotify
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtfm-6.1.5/qtfm.pro new/qtfm-6.1.6/qtfm.pro
--- old/qtfm-6.1.5/qtfm.pro     2018-12-09 22:30:17.000000000 +0100
+++ new/qtfm-6.1.6/qtfm.pro     2019-01-31 22:29:56.000000000 +0100
@@ -3,15 +3,13 @@
 SUBDIRS += libfm libdisks fm
 fm.depends += libfm
 
-CONFIG(basic) {
-    CONFIG += no_udisks no_tray
-}
-!CONFIG(no_udisks) {
-    fm.depends += libdisks
-}
-!CONFIG(no_tray) {
-    SUBDIRS += tray
-    tray.depends += libdisks libfm
+unix:!macx {
+    !CONFIG(no_udisks): fm.depends += libdisks
+    !CONFIG(no_tray) {
+        SUBDIRS += tray
+        tray.depends += libdisks libfm
+    }
 }
+CONFIG(deploy): SUBDIRS -= libdisks
 
 lessThan(QT_MAJOR_VERSION, 5): warning("Qt4 is deprecated, please consider 
upgrading to Qt5 if possible.")


Reply via email to