From 254f4d6e92d0d20ed7dbe1ed87dc83aea7d825c5 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 17:56:57 +0100 Subject: [PATCH 01/30] Create .travis.yml --- .travis.yml | 1 + 1 file changed, 1 insertion(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/.travis.yml @@ -0,0 +1 @@ + -- 2.47.2 From dbd46d44aa33914f0789a89d9791ee5a72735709 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 18:01:29 +0100 Subject: [PATCH 02/30] Update .travis.yml --- .travis.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/.travis.yml b/.travis.yml index 8b13789..66eaa6c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1 +1,26 @@ +sudo: required +dist: trusty +language: c++ +install: + - sudo add-apt-repository -y ppa:beineri/opt-qt58-trusty + - sudo apt-get update + - sudo apt-get -y install build-essential qt58declarative + +script: + - source /opt/qt58/bin/qt58-env.sh + - cd cool-retro-term + - qmake + - make -j2 + - mkdir -p appdir/usr/share/appdata appdir/usr/bin + - cp packaging/appdata/cool-retro-term.appdata.xml appdir/usr/share/appdata/ + - cp cool-retro-term appdir/usr/bin/ + - cp ./cool-retro-term.desktop appdir/ + - cp ./app/icons/128x128/cool-retro-term.png appdir/ + - cp -r ./app/qml appdir/usr/ + - cp -r qmltermwidget/QMLTermWidget/ appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage + - chmod a+x linuxdeployqt-continuous-x86_64.AppImage + - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=. + - export VERSION=$(git rev-list --count HEAD).$(git describe --tags | cut -d - -f 3) + - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=. -appimage -- 2.47.2 From 297239fb5c124e5b4b1f454aec5c4ae44ad38bc2 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 18:05:37 +0100 Subject: [PATCH 03/30] Install libgl-dev --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 66eaa6c..7dfa5a0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ language: c++ install: - sudo add-apt-repository -y ppa:beineri/opt-qt58-trusty - sudo apt-get update - - sudo apt-get -y install build-essential qt58declarative + - sudo apt-get -y install build-essential qt58declarative libgl-dev script: - source /opt/qt58/bin/qt58-env.sh -- 2.47.2 From f42bd3036f9dc77e71cc9c26ba7b153f84077132 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 18:08:53 +0100 Subject: [PATCH 04/30] Install libgl1-mesa-dev --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 7dfa5a0..dd34b88 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ language: c++ install: - sudo add-apt-repository -y ppa:beineri/opt-qt58-trusty - sudo apt-get update - - sudo apt-get -y install build-essential qt58declarative libgl-dev + - sudo apt-get -y install build-essential qt58declarative libgl1-mesa-dev script: - source /opt/qt58/bin/qt58-env.sh -- 2.47.2 From 988222b711f6ae9c86a05d1fa73c316b8e771004 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 18:23:31 +0100 Subject: [PATCH 05/30] Upload to transfer.sh --- .travis.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index dd34b88..929f95b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -9,7 +9,6 @@ install: script: - source /opt/qt58/bin/qt58-env.sh - - cd cool-retro-term - qmake - make -j2 - mkdir -p appdir/usr/share/appdata appdir/usr/bin @@ -24,3 +23,7 @@ script: - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=. - export VERSION=$(git rev-list --count HEAD).$(git describe --tags | cut -d - -f 3) - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=. -appimage + +# See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically +after_success: + - curl --upload-file ./Cool_Retro_Term-*.AppImage https://transfer.sh/Cool_Retro_Term-$VERSION-x86_64.AppImage -- 2.47.2 From 9d049bd0415d014aeaf4eb1ef1c38da3939c6c8b Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 18:24:35 +0100 Subject: [PATCH 06/30] Use linuxdeployqt-3-x86_64.AppImage --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 929f95b..a3c94b0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,7 +22,7 @@ script: - chmod a+x linuxdeployqt-continuous-x86_64.AppImage - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=. - export VERSION=$(git rev-list --count HEAD).$(git describe --tags | cut -d - -f 3) - - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=. -appimage + - ./linuxdeployqt-3-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=. -appimage # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: -- 2.47.2 From d58157a450630e426e2530948721cb09fde6ec59 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 18:32:44 +0100 Subject: [PATCH 07/30] -qmldir=./app/qml/ -qmldir=./qmltermwidget/ --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index a3c94b0..8baf33d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,9 +20,9 @@ script: - cp -r qmltermwidget/QMLTermWidget/ appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage - chmod a+x linuxdeployqt-continuous-x86_64.AppImage - - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=. + - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ - export VERSION=$(git rev-list --count HEAD).$(git describe --tags | cut -d - -f 3) - - ./linuxdeployqt-3-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=. -appimage + - ./linuxdeployqt-3-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: -- 2.47.2 From 2f25bd30b045fadbc3bb0d695b6aef86a5456a0d Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 18:38:16 +0100 Subject: [PATCH 08/30] linuxdeployqt-3-x86_64.AppImage --- .travis.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 8baf33d..78bfa8c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,11 +18,11 @@ script: - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ - cp -r qmltermwidget/QMLTermWidget/ appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage - - chmod a+x linuxdeployqt-continuous-x86_64.AppImage - - ./linuxdeployqt-continuous-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ + - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage + - chmod a+x linuxdeployqt-*.AppImage + - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ - export VERSION=$(git rev-list --count HEAD).$(git describe --tags | cut -d - -f 3) - - ./linuxdeployqt-3-x86_64.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage + - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: -- 2.47.2 From 650497bff458a5595eb43a4283f42064ed6c763e Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 18:45:29 +0100 Subject: [PATCH 09/30] Debug why some qml imports do not get deployed --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 78bfa8c..bfb8d10 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,7 +22,7 @@ script: - chmod a+x linuxdeployqt-*.AppImage - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ - export VERSION=$(git rev-list --count HEAD).$(git describe --tags | cut -d - -f 3) - - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage + - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage -verbose=3 2>&1 | grep "name or path is empty" -C 3 # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: -- 2.47.2 From e787fd0fb50ae4622881f89354aebfea01b3d49d Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 20:11:53 +0100 Subject: [PATCH 10/30] Update .travis.yml --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index bfb8d10..447ad2c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -22,7 +22,7 @@ script: - chmod a+x linuxdeployqt-*.AppImage - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ - export VERSION=$(git rev-list --count HEAD).$(git describe --tags | cut -d - -f 3) - - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage -verbose=3 2>&1 | grep "name or path is empty" -C 3 + - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage -verbose=3 2>&1 | grep "path:" -C 3 # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: -- 2.47.2 From 0823fe8b3d0d2d88e555e6fc5aa67e2427329d67 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sun, 19 Feb 2017 21:43:34 +0100 Subject: [PATCH 11/30] find /opt/qt58/ | grep QtGraphicalEffects --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 447ad2c..c835b22 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,6 +18,7 @@ script: - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ - cp -r qmltermwidget/QMLTermWidget/ appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - find /opt/qt58/ | grep QtGraphicalEffects # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -- 2.47.2 From 7c7b049ba172fbd3b273acf7d18a4a40d7c39a2b Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 25 Feb 2017 00:49:16 +0100 Subject: [PATCH 12/30] Update .travis.yml --- .travis.yml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index c835b22..0c34a87 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,14 +17,16 @@ script: - cp ./cool-retro-term.desktop appdir/ - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ - - cp -r qmltermwidget/QMLTermWidget/ appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - find /opt/qt58/ | grep QtGraphicalEffects # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - mkdir -p appdir/usr/qml/QtQuick + - cp -r /opt/qt*/qml/QtQuick/2 appdir/usr/qml/QtQuick # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - cp -r /opt/qt*/qml/QtQuick.Dialogs appdir/usr/qml/QtQuick # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage - - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ + - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -verbose=3 2>&1 | grep "path:" -C 3 - export VERSION=$(git rev-list --count HEAD).$(git describe --tags | cut -d - -f 3) - - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage -verbose=3 2>&1 | grep "path:" -C 3 - + - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage + # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: - curl --upload-file ./Cool_Retro_Term-*.AppImage https://transfer.sh/Cool_Retro_Term-$VERSION-x86_64.AppImage -- 2.47.2 From 17c5651305298d838e64d5435a0058828b1b7737 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 25 Feb 2017 00:50:41 +0100 Subject: [PATCH 13/30] Update .travis.yml --- .travis.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0c34a87..89922cc 100644 --- a/.travis.yml +++ b/.travis.yml @@ -24,9 +24,8 @@ script: - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -verbose=3 2>&1 | grep "path:" -C 3 - - export VERSION=$(git rev-list --count HEAD).$(git describe --tags | cut -d - -f 3) - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: - - curl --upload-file ./Cool_Retro_Term-*.AppImage https://transfer.sh/Cool_Retro_Term-$VERSION-x86_64.AppImage + - curl --upload-file ./Cool_Retro_Term-*.AppImage https://transfer.sh/Cool_Retro_Term-git$(git rev-parse --short HEAD)-x86_64.AppImage -- 2.47.2 From ff976e3ec2463d0639bd3980951a0b775700770a Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 25 Feb 2017 00:55:46 +0100 Subject: [PATCH 14/30] Update .travis.yml --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 89922cc..e57e0e5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,8 +18,8 @@ script: - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ - mkdir -p appdir/usr/qml/QtQuick - - cp -r /opt/qt*/qml/QtQuick/2 appdir/usr/qml/QtQuick # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - cp -r /opt/qt*/qml/QtQuick.Dialogs appdir/usr/qml/QtQuick # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - cp -r /opt/qt*/qml/QtQuick/Dialogs appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage -- 2.47.2 From fa162c818b709e6863720d91648a091d11582027 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 25 Feb 2017 00:56:00 +0100 Subject: [PATCH 15/30] Update .travis.yml --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index e57e0e5..c722ca9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,7 +18,7 @@ script: - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ - mkdir -p appdir/usr/qml/QtQuick - - cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r /opt/qt*/qml/QtQuick/Dialogs appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage -- 2.47.2 From c9271bfa360bab0cb4204ecee2d6b975e1aae5b6 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 25 Feb 2017 01:01:39 +0100 Subject: [PATCH 16/30] Update .travis.yml --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index c722ca9..1ef04e3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,9 +17,9 @@ script: - cp ./cool-retro-term.desktop appdir/ - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ - - mkdir -p appdir/usr/qml/QtQuick +# - mkdir -p appdir/usr/qml/QtQuick - cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - cp -r /opt/qt*/qml/QtQuick/Dialogs appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - cp -r /opt/qt*/qml/QtQuick.Dialogs appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage -- 2.47.2 From 918df9098a0ba6a3e6a7cb120d3b380ebfcd248f Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 25 Feb 2017 01:06:42 +0100 Subject: [PATCH 17/30] Update .travis.yml --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 1ef04e3..e4d69e0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,6 +18,7 @@ script: - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ # - mkdir -p appdir/usr/qml/QtQuick + - find /opt/qt*/qml/ | grep Dialogs - cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r /opt/qt*/qml/QtQuick.Dialogs appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 -- 2.47.2 From a192024fef6e3b4556b738ad041d1cb03d90fcf5 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 25 Feb 2017 01:12:13 +0100 Subject: [PATCH 18/30] Update .travis.yml --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index e4d69e0..cbd1c10 100644 --- a/.travis.yml +++ b/.travis.yml @@ -18,9 +18,9 @@ script: - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ # - mkdir -p appdir/usr/qml/QtQuick - - find /opt/qt*/qml/ | grep Dialogs +# - find /opt/qt*/qml/ | grep Dialogs - cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - cp -r /opt/qt*/qml/QtQuick.Dialogs appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 +# - cp -r /opt/qt*/qml/QtQuick.Dialogs appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage -- 2.47.2 From c66ca6e44f5e56cd1c8abcb94e6b64b7a5fcc472 Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 25 Feb 2017 01:20:00 +0100 Subject: [PATCH 19/30] Update .travis.yml --- .travis.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index cbd1c10..69edca8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,16 +17,15 @@ script: - cp ./cool-retro-term.desktop appdir/ - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ -# - mkdir -p appdir/usr/qml/QtQuick -# - find /opt/qt*/qml/ | grep Dialogs + - cp -r /opt/qt*/qml/QtGraphicalEffects appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 -# - cp -r /opt/qt*/qml/QtQuick.Dialogs appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - mkdir -p appdir/usr/qml/QtQuick/ ; cp -r /opt/qt*/qml/QtQuick/Controls appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage - - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -verbose=3 2>&1 | grep "path:" -C 3 + - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ # -verbose=3 2>&1 | grep "path:" -C 3 - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: - - curl --upload-file ./Cool_Retro_Term-*.AppImage https://transfer.sh/Cool_Retro_Term-git$(git rev-parse --short HEAD)-x86_64.AppImage + - curl --upload-file ./Cool_Retro_Term-*.AppImage https://transfer.sh/Cool_Retro_Term-git.$(git rev-parse --short HEAD)-x86_64.AppImage -- 2.47.2 From b85aede966482ab02fa9421a3b591f234f91c26f Mon Sep 17 00:00:00 2001 From: probonopd Date: Sat, 25 Feb 2017 01:27:19 +0100 Subject: [PATCH 20/30] Update .travis.yml --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 69edca8..09cfc89 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ language: c++ install: - sudo add-apt-repository -y ppa:beineri/opt-qt58-trusty - sudo apt-get update - - sudo apt-get -y install build-essential qt58declarative libgl1-mesa-dev + - sudo apt-get -y install build-essential qt58declarative qt58graphicaleffects qt58quickcontrols libgl1-mesa-dev script: - source /opt/qt58/bin/qt58-env.sh -- 2.47.2 From 79fbb76524878b54963d281362b9c48b4dd348e1 Mon Sep 17 00:00:00 2001 From: probonopd Date: Fri, 17 Mar 2017 21:02:20 +0100 Subject: [PATCH 21/30] Try to reduce workarounds fpr --- .travis.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 09cfc89..795effe 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,9 +17,9 @@ script: - cp ./cool-retro-term.desktop appdir/ - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ - - cp -r /opt/qt*/qml/QtGraphicalEffects appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - mkdir -p appdir/usr/qml/QtQuick/ ; cp -r /opt/qt*/qml/QtQuick/Controls appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - # cp -r /opt/qt*/qml/QtGraphicalEffects appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - # cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 + - # mkdir -p appdir/usr/qml/QtQuick/ ; cp -r /opt/qt*/qml/QtQuick/Controls appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage -- 2.47.2 From 24754edb6a9e1b0ac6e1af431aae4a29cb3152fa Mon Sep 17 00:00:00 2001 From: probonopd Date: Fri, 17 Mar 2017 21:05:44 +0100 Subject: [PATCH 22/30] Use linuxdeployqt-continuous-x86_64.AppImage for now --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index 795effe..390c469 100644 --- a/.travis.yml +++ b/.travis.yml @@ -21,7 +21,7 @@ script: - # cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - # mkdir -p appdir/usr/qml/QtQuick/ ; cp -r /opt/qt*/qml/QtQuick/Controls appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/3/linuxdeployqt-3-x86_64.AppImage + - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ # -verbose=3 2>&1 | grep "path:" -C 3 - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage -- 2.47.2 From c514dc7a245da3ab3cbc3317efd2d7db4fd5dac6 Mon Sep 17 00:00:00 2001 From: probonopd Date: Mon, 3 Apr 2017 22:55:45 +0200 Subject: [PATCH 23/30] See if we still need 2 runs --- .travis.yml | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 390c469..bfac7ee 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,14 +17,11 @@ script: - cp ./cool-retro-term.desktop appdir/ - cp ./app/icons/128x128/cool-retro-term.png appdir/ - cp -r ./app/qml appdir/usr/ - - # cp -r /opt/qt*/qml/QtGraphicalEffects appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - # cp -r /opt/qt*/qml/QtQuick.2 appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - - # mkdir -p appdir/usr/qml/QtQuick/ ; cp -r /opt/qt*/qml/QtQuick/Controls appdir/usr/qml/QtQuick/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage - - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ # -verbose=3 2>&1 | grep "path:" -C 3 - - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -appimage +# - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ # -verbose=3 2>&1 | grep "path:" -C 3 + - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -verbose=2 -appimage # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: -- 2.47.2 From 4bff6efe978c49b687606b6fc1802ac5d71e3991 Mon Sep 17 00:00:00 2001 From: probonopd Date: Mon, 3 Apr 2017 23:07:30 +0200 Subject: [PATCH 24/30] Update .travis.yml --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index bfac7ee..171aead 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,7 +20,7 @@ script: - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage -# - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ # -verbose=3 2>&1 | grep "path:" -C 3 + - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ # -verbose=3 2>&1 | grep "path:" -C 3 - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -verbose=2 -appimage # See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically -- 2.47.2 From 051bcb62c6d151e76d223c2a6b5e8021e0b1fa4d Mon Sep 17 00:00:00 2001 From: probonopd Date: Thu, 3 Jan 2019 10:54:43 +0000 Subject: [PATCH 25/30] Fix #336 --- .travis.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 171aead..0f955b8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -4,13 +4,13 @@ language: c++ install: - sudo add-apt-repository -y ppa:beineri/opt-qt58-trusty - - sudo apt-get update + - sudo apt-get update -qq - sudo apt-get -y install build-essential qt58declarative qt58graphicaleffects qt58quickcontrols libgl1-mesa-dev + - source /opt/qt*/bin/qt*-env.sh script: - - source /opt/qt58/bin/qt58-env.sh - - qmake - - make -j2 + - qmake CONFIG+=release PREFIX=/usr + - make -j$(nproc) - mkdir -p appdir/usr/share/appdata appdir/usr/bin - cp packaging/appdata/cool-retro-term.appdata.xml appdir/usr/share/appdata/ - cp cool-retro-term appdir/usr/bin/ @@ -20,6 +20,8 @@ script: - cp -r ./qmltermwidget/QMLTermWidget appdir/usr/qml/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/78 - wget -c https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage - chmod a+x linuxdeployqt-*.AppImage + - unset QTDIR; unset QT_PLUGIN_PATH ; unset LD_LIBRARY_PATH + - export VERSION=$(git rev-parse --short HEAD) # linuxdeployqt uses this for naming the file - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ # -verbose=3 2>&1 | grep "path:" -C 3 - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -verbose=2 -appimage -- 2.47.2 From 3fbfb774301c7cce23e63571c0856132da88863a Mon Sep 17 00:00:00 2001 From: probonopd Date: Thu, 3 Jan 2019 11:04:35 +0000 Subject: [PATCH 26/30] Upload to GitHub Releases Need to set a GITHUB_TOKEN environment variable in https://travis-ci.org/Swordfish90/cool-retro-term/settings --- .travis.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 0f955b8..9a3259c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,6 +25,13 @@ script: - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ # -verbose=3 2>&1 | grep "path:" -C 3 - ./linuxdeployqt-*.AppImage appdir/usr/bin/cool-retro-term -qmldir=./app/qml/ -qmldir=./qmltermwidget/ -verbose=2 -appimage -# See https://github.com/probonopd/uploadtool/ for a way to upload to GitHub Releases automatically after_success: - - curl --upload-file ./Cool_Retro_Term-*.AppImage https://transfer.sh/Cool_Retro_Term-git.$(git rev-parse --short HEAD)-x86_64.AppImage + - find appdir -executable -type f -exec ldd {} \; | grep " => /usr" | cut -d " " -f 2-3 | sort | uniq + - # curl --upload-file Cool*.AppImage https://transfer.sh/Cool_Retro_Term-git.$(git rev-parse --short HEAD)-x86_64.AppImage + - wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh + - bash upload.sh Cool*.AppImage* + +branches: + except: + - # Do not build tags that we create when we upload to GitHub Releases + - /^(?i:continuous)/ -- 2.47.2 From 20728e4a0f4e11b86741a641cff378553381c26d Mon Sep 17 00:00:00 2001 From: probonopd Date: Fri, 4 Jan 2019 18:53:09 +0000 Subject: [PATCH 27/30] usr/share/metainfo As per https://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html#sect-Quickstart-DesktopApps, usr/share/metainfo should be used --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 9a3259c..ce8f803 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,8 +11,8 @@ install: script: - qmake CONFIG+=release PREFIX=/usr - make -j$(nproc) - - mkdir -p appdir/usr/share/appdata appdir/usr/bin - - cp packaging/appdata/cool-retro-term.appdata.xml appdir/usr/share/appdata/ + - mkdir -p appdir/usr/share/metainfo appdir/usr/bin + - cp packaging/appdata/cool-retro-term.appdata.xml appdir/usr/share/metainfo/ - cp cool-retro-term appdir/usr/bin/ - cp ./cool-retro-term.desktop appdir/ - cp ./app/icons/128x128/cool-retro-term.png appdir/ -- 2.47.2 From ade36c013b749006bee34830ec196148e1559cb9 Mon Sep 17 00:00:00 2001 From: Sascha Paunovic Date: Mon, 7 Jan 2019 12:24:34 +0100 Subject: [PATCH 28/30] correct version number output with --version --- app/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/main.cpp b/app/main.cpp index 993e7fa..650b810 100644 --- a/app/main.cpp +++ b/app/main.cpp @@ -71,7 +71,7 @@ int main(int argc, char *argv[]) } if (args.contains("-v") || args.contains("--version")) { - qDebug() << "cool-retro-term 1.0.1"; + qDebug() << "cool-retro-term 1.1.0"; return 0; } -- 2.47.2 From 0af2b20b3a3203d92157256d53ae5002800e79f2 Mon Sep 17 00:00:00 2001 From: Filippo Scognamiglio Date: Wed, 9 Jan 2019 19:01:11 +0100 Subject: [PATCH 29/30] Settings optin for old burinin version. It seems to be working better on osx. --- app/qml/ApplicationSettings.qml | 10 ++- app/qml/BurnInEffect.qml | 19 ++--- app/qml/PreprocessedTerminal.qml | 24 +++++- app/qml/SettingsAdvancedTab.qml | 6 ++ app/qml/ShaderTerminal.qml | 17 ++++- app/qml/SlowBurnIn.qml | 122 +++++++++++++++++++++++++++++++ app/qml/TerminalContainer.qml | 1 + app/qml/resources.qrc | 1 + 8 files changed, 182 insertions(+), 18 deletions(-) create mode 100644 app/qml/SlowBurnIn.qml diff --git a/app/qml/ApplicationSettings.qml b/app/qml/ApplicationSettings.qml index 3d73a3f..7ab3088 100644 --- a/app/qml/ApplicationSettings.qml +++ b/app/qml/ApplicationSettings.qml @@ -33,6 +33,9 @@ QtObject{ readonly property real minimumFontScaling: 0.25 readonly property real maximumFontScaling: 2.50 + readonly property real minBurnInFadeTime: 160 + readonly property real maxBurnInFadeTime: 1600 + // GENERAL SETTINGS /////////////////////////////////////////////////////// property int x: 100 @@ -52,7 +55,9 @@ QtObject{ property bool verbose: false property real bloomQuality: 0.5 + property real burnInQuality: 0.5 + property bool useFastBurnIn: Qt.platform.os === "osx" ? false : true onWindowScalingChanged: handleFontChanged(); @@ -202,7 +207,8 @@ QtObject{ bloomQuality: bloomQuality, burnInQuality: burnInQuality, useCustomCommand: useCustomCommand, - customCommand: customCommand + customCommand: customCommand, + useFastBurnIn: useFastBurnIn } return stringify(settings); } @@ -288,6 +294,8 @@ QtObject{ useCustomCommand = settings.useCustomCommand !== undefined ? settings.useCustomCommand : useCustomCommand customCommand = settings.customCommand !== undefined ? settings.customCommand : customCommand + + useFastBurnIn = settings.useFastBurnIn !== undefined ? settings.useFastBurnIn : useFastBurnIn; } function loadProfileString(profileString){ diff --git a/app/qml/BurnInEffect.qml b/app/qml/BurnInEffect.qml index 437e00a..2d4f223 100644 --- a/app/qml/BurnInEffect.qml +++ b/app/qml/BurnInEffect.qml @@ -13,10 +13,12 @@ Loader { property real delay: (1.0 / appSettings.fps) * 1000 property real burnIn: appSettings.burnIn property real burnInFadeTime: 1 / Utils.lint(_minBurnInFadeTime, _maxBurnInFadeTime, burnIn) - property real _minBurnInFadeTime: 160 - property real _maxBurnInFadeTime: 1600 + property real _minBurnInFadeTime: appSettings.minBurnInFadeTime + property real _maxBurnInFadeTime: appSettings.maxBurnInFadeTime - active: appSettings.burnIn !== 0 + active: appSettings.useFastBurnIn && appSettings.burnIn !== 0 + + anchors.fill: parent function completelyUpdate() { prevLastUpdate = lastUpdate; @@ -33,16 +35,6 @@ Loader { sourceComponent: Item { property alias source: burnInEffectSource - property int burnInScaling: scaleTexture * appSettings.burnInQuality - - width: appSettings.lowResolutionFont - ? kterminal.totalWidth * Math.max(1, burnInScaling) - : kterminal.totalWidth * scaleTexture * appSettings.burnInQuality - - height: appSettings.lowResolutionFont - ? kterminal.totalHeight * Math.max(1, burnInScaling) - : kterminal.totalHeight * scaleTexture * appSettings.burnInQuality - ShaderEffectSource { id: burnInEffectSource @@ -88,7 +80,6 @@ Loader { property real prevLastUpdate: burnInEffect.prevLastUpdate anchors.fill: parent - blending: false fragmentShader: diff --git a/app/qml/PreprocessedTerminal.qml b/app/qml/PreprocessedTerminal.qml index e9bfc45..b8d61e4 100644 --- a/app/qml/PreprocessedTerminal.qml +++ b/app/qml/PreprocessedTerminal.qml @@ -33,6 +33,7 @@ Item{ property ShaderEffectSource mainSource: kterminalSource property BurnInEffect burnInEffect: burnInEffect + property SlowBurnIn slowBurnInEffect: slowBurnInEffect property real fontWidth: 1.0 property real screenScaling: 1.0 property real scaleTexture: 1.0 @@ -227,7 +228,26 @@ Item{ sourceRect: Qt.rect(-kterminal.margin, -kterminal.margin, kterminal.totalWidth, kterminal.totalHeight) } - BurnInEffect { - id: burnInEffect + Item { + id: burnInContainer + + property int burnInScaling: scaleTexture * appSettings.burnInQuality + + width: Math.round(appSettings.lowResolutionFont + ? kterminal.totalWidth * Math.max(1, burnInScaling) + : kterminal.totalWidth * scaleTexture * appSettings.burnInQuality) + + height: Math.round(appSettings.lowResolutionFont + ? kterminal.totalHeight * Math.max(1, burnInScaling) + : kterminal.totalHeight * scaleTexture * appSettings.burnInQuality) + + + BurnInEffect { + id: burnInEffect + } + + SlowBurnIn { + id: slowBurnInEffect + } } } diff --git a/app/qml/SettingsAdvancedTab.qml b/app/qml/SettingsAdvancedTab.qml index 06d20f5..c0d486a 100644 --- a/app/qml/SettingsAdvancedTab.qml +++ b/app/qml/SettingsAdvancedTab.qml @@ -133,6 +133,12 @@ Tab{ } } SizedLabel{text: Math.round(burnInSlider.value * 100) + "%"} + CheckBox{ + Layout.columnSpan: 2 + text: qsTr("Burnin optimization (Might display timing artifacts)") + checked: appSettings.useFastBurnIn + onCheckedChanged: appSettings.useFastBurnIn = checked + } } } } diff --git a/app/qml/ShaderTerminal.qml b/app/qml/ShaderTerminal.qml index d480961..ed367af 100644 --- a/app/qml/ShaderTerminal.qml +++ b/app/qml/ShaderTerminal.qml @@ -24,6 +24,7 @@ import QtGraphicalEffects 1.0 import "utils.js" as Utils Item { + property SlowBurnIn slowBurnInEffect property ShaderEffectSource source property BurnInEffect burnInEffect property ShaderEffectSource bloomSource @@ -56,9 +57,16 @@ Item { property real horizontalSync: appSettings.horizontalSync property real horizontalSyncStrength: Utils.lint(0.05, 0.35, horizontalSync) property real glowingLine: appSettings.glowingLine * 0.2 - property real burnIn: appSettings.burnIn + + // Fast burnin properties + property real burnIn: appSettings.useFastBurnIn ? appSettings.burnIn : 0 property real burnInLastUpdate: burnInEffect.lastUpdate property real burnInTime: burnInEffect.burnInFadeTime + + // Slow burnin properties + property real slowBurnIn: appSettings.useFastBurnIn ? 0 : appSettings.burnIn + property ShaderEffectSource slowBurnInSource: slowBurnInEffect.source + property real jitter: appSettings.jitter property size jitterDisplacement: Qt.size(0.007 * jitter, 0.002 * jitter) property real shadowLength: 0.25 * screenCurvature * Utils.lint(0.50, 1.5, ambientLight) @@ -162,6 +170,8 @@ Item { uniform sampler2D burnInSource; uniform highp float burnInLastUpdate; uniform highp float burnInTime;" : "") + + (slowBurnIn !== 0 ? " + uniform sampler2D slowBurnInSource;" : "") + (staticNoise !== 0 ? " uniform highp float staticNoise;" : "") + (((staticNoise !== 0 || jitter !== 0) @@ -292,6 +302,11 @@ Item { txt_color = max(txt_color, convertWithChroma(burnInColor));" : "") + + (slowBurnIn !== 0 ? " + vec4 txt_blur = texture2D(slowBurnInSource, staticCoords); + txt_color = max(txt_color, convertWithChroma(txt_blur.rgb * txt_blur.a)); + " : "") + + "txt_color += fontColor.rgb * vec3(color);" + "vec3 finalColor = txt_color;" + diff --git a/app/qml/SlowBurnIn.qml b/app/qml/SlowBurnIn.qml new file mode 100644 index 0000000..44f53e9 --- /dev/null +++ b/app/qml/SlowBurnIn.qml @@ -0,0 +1,122 @@ +import QtQuick 2.0 + +import "utils.js" as Utils + +Loader { + property ShaderEffectSource source: item ? item.source : null + + active: !appSettings.useFastBurnIn && appSettings.burnIn !== 0 + + anchors.fill: parent + + sourceComponent: Item { + property alias source: burnInSourceEffect + + property int burnInScaling: scaleTexture * appSettings.burnInQuality + + ShaderEffectSource { + property bool updateBurnIn: false + property real burnIn: appSettings.burnIn + property real fps: appSettings.fps !== 0 ? appSettings.fps : 60 + property real burnInFadeTime: Utils.lint(minBurnInFadeTime, maxBurnInFadeTime, burnIn) + property real burnInCoefficient: 1000 / (fps * burnInFadeTime) + property real minBurnInFadeTime: appSettings.minBurnInFadeTime + property real maxBurnInFadeTime: appSettings.maxBurnInFadeTime + + id: burnInSourceEffect + + anchors.fill: parent + + sourceItem: burnInEffect + recursive: true + live: false + hideSource: true + wrapMode: kterminalSource.wrapMode + + visible: false + + function restartBlurSource(){ + livetimer.restart(); + } + + // This updates the burnin synched with the timer. + Connections { + target: burnInSourceEffect.updateBurnIn ? timeManager : null + ignoreUnknownSignals: false + onTimeChanged: { + burnInSourceEffect.scheduleUpdate(); + } + } + + Timer{ + id: livetimer + + // The interval assumes 60 fps. This is the time needed burnout a white pixel. + // We multiply 1.1 to have a little bit of margin over the theoretical value. + // This solution is not extremely clean, but it's probably the best to avoid measuring fps. + + interval: burnInSourceEffect.burnInFadeTime * 1.1 + running: true + onTriggered: burnInSourceEffect.updateBurnIn = false; + } + Connections{ + target: kterminal + onImagePainted:{ + burnInSourceEffect.scheduleUpdate(); + burnInSourceEffect.updateBurnIn = true; + livetimer.restart(); + } + } + // Restart blurred source settings change. + Connections{ + target: appSettings + onBurnInChanged: burnInSourceEffect.restartBlurSource(); + onTerminalFontChanged: burnInSourceEffect.restartBlurSource(); + onRasterizationChanged: burnInSourceEffect.restartBlurSource(); + onBurnInQualityChanged: burnInSourceEffect.restartBlurSource(); + } + Connections { + target: kterminalScrollbar + onOpacityChanged: burnInSourceEffect.restartBlurSource(); + } + + ShaderEffect { + id: burnInEffect + + property variant txt_source: kterminalSource + property variant blurredSource: burnInSourceEffect + property real burnInCoefficient: burnInSourceEffect.burnInCoefficient + + anchors.fill: parent + blending: false + + fragmentShader: + "#ifdef GL_ES + precision mediump float; + #endif\n" + + + "uniform lowp float qt_Opacity;" + + "uniform lowp sampler2D txt_source;" + + + "varying highp vec2 qt_TexCoord0; + uniform lowp sampler2D blurredSource; + uniform highp float burnInCoefficient;" + + + "float max3(vec3 v) { + return max (max (v.x, v.y), v.z); + }" + + + "void main() {" + + "vec2 coords = qt_TexCoord0;" + + "vec3 origColor = texture2D(txt_source, coords).rgb;" + + "vec3 blur_color = texture2D(blurredSource, coords).rgb - vec3(burnInCoefficient);" + + "vec3 color = min(origColor + blur_color, max(origColor, blur_color));" + + + "gl_FragColor = vec4(color, max3(color - origColor));" + + "}" + + onStatusChanged: if (log) console.log(log) //Print warning messages + } + } + } +} diff --git a/app/qml/TerminalContainer.qml b/app/qml/TerminalContainer.qml index ea390ab..48d6ec1 100644 --- a/app/qml/TerminalContainer.qml +++ b/app/qml/TerminalContainer.qml @@ -12,6 +12,7 @@ ShaderTerminal { source: terminal.mainSource burnInEffect: terminal.burnInEffect + slowBurnInEffect: terminal.slowBurnInEffect virtual_resolution: terminal.virtualResolution TimeManager{ diff --git a/app/qml/resources.qrc b/app/qml/resources.qrc index 65ca840..8df465f 100644 --- a/app/qml/resources.qrc +++ b/app/qml/resources.qrc @@ -43,5 +43,6 @@ BurnInEffect.qml fonts/modern-terminus/TerminusTTF-4.46.0.ttf NewTerminalFrame.qml + SlowBurnIn.qml -- 2.47.2 From ff3f02fb8c26b3fdaa59bf04d2854a48f85cb2ab Mon Sep 17 00:00:00 2001 From: Filippo Scognamiglio Date: Wed, 9 Jan 2019 19:26:02 +0100 Subject: [PATCH 30/30] Improve highdpi support. --- app/qml/PreprocessedTerminal.qml | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/app/qml/PreprocessedTerminal.qml b/app/qml/PreprocessedTerminal.qml index b8d61e4..d0d9cee 100644 --- a/app/qml/PreprocessedTerminal.qml +++ b/app/qml/PreprocessedTerminal.qml @@ -71,12 +71,23 @@ Item{ QMLTermWidget { id: kterminal + property int textureResolutionScale: appSettings.lowResolutionFont ? devicePixelRatio : 1 property int margin: appSettings.margin / screenScaling property int totalWidth: Math.floor(parent.width / (screenScaling * fontWidth)) property int totalHeight: Math.floor(parent.height / screenScaling) - width: totalWidth - 2 * margin - height: totalHeight - 2 * margin + property int rawWidth: totalWidth - 2 * margin + property int rawHeight: totalHeight - 2 * margin + + textureSize: Qt.size(width / textureResolutionScale, height / textureResolutionScale) + + width: ensureMultiple(rawWidth, devicePixelRatio) + height: ensureMultiple(rawHeight, devicePixelRatio) + + /** Ensure size is a multiple of factor. This is needed for pixel perfect scaling on highdpi screens. */ + function ensureMultiple(size, factor) { + return Math.round(size / factor) * factor; + } colorScheme: "cool-retro-term" -- 2.47.2