Skip to content

Commit 53bf28e

Browse files
authored
Merge pull request #7416 from nextcloud/feature/windowsQmlStyleFluent
use new in Qt6.8 windows fluent style
2 parents 548707f + 21c2407 commit 53bf28e

9 files changed

+31
-27
lines changed

.drone.yml

+11-12
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,16 @@ name: drone desktop client
44

55
steps:
66
- name: cmake
7-
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.7.3-1
7+
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
88
volumes:
99
- name: build
1010
path: /drone/build
1111
commands:
1212
- cd /drone/build
13-
- cmake /drone/src -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt6.7.3 -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DCMAKE_BUILD_TYPE=Debug -DQT_MAJOR_VERSION=6 -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64 -DADD_E2E_TESTS=ON
13+
- cmake /drone/src -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DCMAKE_BUILD_TYPE=Debug -DQT_MAJOR_VERSION=6 -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64 -DADD_E2E_TESTS=ON
1414

1515
- name: compile
16-
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.7.3-1
16+
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
1717
volumes:
1818
- name: build
1919
path: /drone/build
@@ -22,7 +22,7 @@ steps:
2222
- ninja
2323

2424
- name: test
25-
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.7.3-1
25+
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
2626
volumes:
2727
- name: build
2828
path: /drone/build
@@ -38,7 +38,7 @@ services:
3838
image: ghcr.io/nextcloud/continuous-integration-shallow-server:latest # also change in updateScreenshots.sh
3939
environment:
4040
EVAL: true
41-
SERVER_VERSION: 'stable28'
41+
SERVER_VERSION: 'stable30'
4242
commands:
4343
- BRANCH="$SERVER_VERSION" /usr/local/bin/initnc.sh
4444
- echo 127.0.0.1 server >> /etc/hosts
@@ -79,23 +79,23 @@ name: qt-5.15-clang
7979

8080
steps:
8181
- name: cmake
82-
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.7.3-1
82+
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
8383
volumes:
8484
- name: build
8585
path: /drone/build
8686
commands:
8787
- cd /drone/build
88-
- cmake /drone/src -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt6.7.3 -DCMAKE_C_COMPILER=clang-14 -DCMAKE_CXX_COMPILER=clang++-14 -DCMAKE_BUILD_TYPE=Debug -DQT_MAJOR_VERSION=6 -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64 -DADD_E2E_TESTS=ON
88+
- cmake /drone/src -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt -DCMAKE_C_COMPILER=clang-14 -DCMAKE_CXX_COMPILER=clang++-14 -DCMAKE_BUILD_TYPE=Debug -DQT_MAJOR_VERSION=6 -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64 -DADD_E2E_TESTS=ON
8989
- name: compile
90-
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.7.3-1
90+
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
9191
volumes:
9292
- name: build
9393
path: /drone/build
9494
commands:
9595
- cd /drone/build
9696
- ninja
9797
- name: test
98-
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.7.3-1
98+
image: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
9999
volumes:
100100
- name: build
101101
path: /drone/build
@@ -111,7 +111,7 @@ services:
111111
image: ghcr.io/nextcloud/continuous-integration-shallow-server:latest # also change in updateScreenshots.sh
112112
environment:
113113
EVAL: true
114-
SERVER_VERSION: 'stable28'
114+
SERVER_VERSION: 'stable30'
115115
commands:
116116
- BRANCH="$SERVER_VERSION" /usr/local/bin/initnc.sh
117117
- echo 127.0.0.1 server >> /etc/hosts
@@ -168,6 +168,5 @@ trigger:
168168
- push
169169
---
170170
kind: signature
171-
hmac: 20a4eb306b48377c21036520acc47ad69253eca7fbf607e95153cfcd2274db37
172-
171+
hmac: 4296d3beb6775fd1589c30b86412298de4f67e9791843c7bb484fc6d5bb01e4e
173172
...

.github/workflows/clang-tidy-review.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@ on:
77
jobs:
88
clang-tidy:
99
runs-on: ubuntu-latest
10-
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.0-1
10+
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
1111
steps:
1212
- uses: actions/checkout@v4
1313
with:
1414
fetch-depth: 2
1515
- name: Prepare compile_commands.json
1616
run: |
17-
cmake -G Ninja -B build -DCMAKE_PREFIX_PATH=/opt/qt6.8.0 -DQT_MAJOR_VERSION=6 -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DOPENSSL_ROOT_DIR=/usr/local/lib64
17+
cmake -G Ninja -B build -DCMAKE_PREFIX_PATH=/opt/qt -DQT_MAJOR_VERSION=6 -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DOPENSSL_ROOT_DIR=/usr/local/lib64
1818
cd build && ninja
1919
- name: Create results directory
2020
run: |

.github/workflows/linux-clang-compile-tests.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ jobs:
66
build:
77
name: Linux Clang compilation and tests
88
runs-on: ubuntu-latest
9-
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.0-1
9+
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
1010
steps:
1111
- uses: actions/checkout@v4
1212
with:
@@ -15,7 +15,7 @@ jobs:
1515
run: |
1616
mkdir build
1717
cd build
18-
cmake .. -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt6.8.0 -DCMAKE_C_COMPILER=clang-14 -DCMAKE_CXX_COMPILER=clang++-14 -DCMAKE_BUILD_TYPE=Debug -DQT_MAJOR_VERSION=6 -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64
18+
cmake .. -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt -DCMAKE_C_COMPILER=clang-14 -DCMAKE_CXX_COMPILER=clang++-14 -DCMAKE_BUILD_TYPE=Debug -DQT_MAJOR_VERSION=6 -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64
1919
ninja
2020
- name: Run tests
2121
run: |

.github/workflows/linux-gcc-compile-tests.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ jobs:
66
build:
77
name: Linux GCC compilation and tests
88
runs-on: ubuntu-latest
9-
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.0-1
9+
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
1010
steps:
1111
- uses: actions/checkout@v4
1212
with:
@@ -15,7 +15,7 @@ jobs:
1515
run: |
1616
mkdir build
1717
cd build
18-
cmake .. -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt6.8.0 -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DCMAKE_BUILD_TYPE=Debug -DQT_MAJOR_VERSION=6 -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64
18+
cmake .. -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DCMAKE_BUILD_TYPE=Debug -DQT_MAJOR_VERSION=6 -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64
1919
ninja
2020
- name: Run tests
2121
run: |

.github/workflows/sonarcloud.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ jobs:
66
build:
77
name: SonarCloud analysis
88
runs-on: ubuntu-latest
9-
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.0-1
9+
container: ghcr.io/nextcloud/continuous-integration-client-qt6:client-6.8.1-2
1010
env:
1111
SONAR_SERVER_URL: "https://sonarcloud.io"
1212
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
@@ -25,7 +25,7 @@ jobs:
2525
run: |
2626
mkdir build
2727
cd build
28-
cmake .. -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt6.8.0 -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DCMAKE_BUILD_TYPE=Debug -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DQT_MAJOR_VERSION=6 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64 -DBUILD_COVERAGE=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
28+
cmake .. -G Ninja -DCMAKE_PREFIX_PATH=/opt/qt -DCMAKE_C_COMPILER=gcc-11 -DCMAKE_CXX_COMPILER=g++-11 -DCMAKE_BUILD_TYPE=Debug -DQUICK_COMPILER=ON -DBUILD_UPDATER=ON -DBUILD_TESTING=1 -DQT_MAJOR_VERSION=6 -DCMAKE_CXX_FLAGS=-Werror -DOPENSSL_ROOT_DIR=/usr/local/lib64 -DBUILD_COVERAGE=ON -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
2929
build-wrapper-linux-x86-64 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} ninja
3030
- name: Run tests
3131
run: |

CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ set(BIN_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")
2424
include(${CMAKE_SOURCE_DIR}/NEXTCLOUD.cmake)
2525

2626
set(QT_VERSION_MAJOR "6")
27-
set(REQUIRED_QT_VERSION "6.7.0")
27+
set(REQUIRED_QT_VERSION "6.8.0")
2828

2929
# CfAPI Shell Extensions
3030
set( CFAPI_SHELL_EXTENSIONS_LIB_NAME CfApiShellExtensions )

src/gui/main.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -82,16 +82,16 @@ int main(int argc, char **argv)
8282

8383
#if defined Q_OS_MAC
8484
style = QStringLiteral("macOS");
85-
#elif defined Q_OS_WIN
86-
style = QStringLiteral("Fusion");
8785
#endif
8886

8987
QQuickStyle::setStyle(style);
9088
QQuickStyle::setFallbackStyle(QStringLiteral("Fusion"));
9189

9290
#if defined Q_OS_WIN
9391
if (QOperatingSystemVersion::current().version() < QOperatingSystemVersion::Windows11.version()) {
94-
QApplication::setStyle(QStyleFactory::create("Fusion"));
92+
QApplication::setStyle(QStyleFactory::create("Universal"));
93+
} else {
94+
style = QStringLiteral("FluentWinUI3");
9595
}
9696
#endif
9797

src/gui/tray/MainWindow.qml

+3-3
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ ApplicationWindow {
143143
radius: Systray.useNormalWindow ? 0.0 : Style.trayWindowRadius
144144
border.width: Style.trayWindowBorderWidth
145145
border.color: palette.dark
146-
color: palette.base
146+
color: Style.colorWithoutTransparency(palette.base)
147147
}
148148

149149
property int userIndex: 0
@@ -180,7 +180,7 @@ ApplicationWindow {
180180
radius: Systray.useNormalWindow ? 0.0 : Style.trayWindowRadius
181181
border.width: Style.trayWindowBorderWidth
182182
border.color: palette.dark
183-
color: palette.base
183+
color: Style.colorWithoutTransparency(palette.base)
184184
}
185185

186186
property var folderAccountState: ({})
@@ -239,7 +239,7 @@ ApplicationWindow {
239239
clip: true
240240

241241
radius: Systray.useNormalWindow ? 0.0 : Style.trayWindowRadius
242-
color: palette.base
242+
color: Style.colorWithoutTransparency(palette.base)
243243

244244
Accessible.role: Accessible.Grouping
245245
Accessible.name: qsTr("Nextcloud desktop main dialog")

theme/Style/Style.qml

+5
Original file line numberDiff line numberDiff line change
@@ -200,4 +200,9 @@ QtObject {
200200
function variableSize(size) {
201201
return size * (1 + Math.min(pixelSize / 100, 1));
202202
}
203+
204+
// some platforms (e.g. Windows 11) have a transparency set on palette colours, this function removes that
205+
function colorWithoutTransparency(color) {
206+
return Qt.rgba(color.r, color.g, color.b, 1)
207+
}
203208
}

0 commit comments

Comments
 (0)