Commit Graph

90 Commits

Author SHA1 Message Date
Jyrki Gadinger
9b911409ca fix(gui): disable DirectWrite on Win10 versions before 1809
Earlier versions of Windows will render each character as a square when
DirectWrite is in use.

See also: #8064

Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-05-20 09:34:28 +02:00
Andy Scherzinger
669bb276a9
docs(reuse): Migrate to SPDX
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2025-05-07 15:34:52 +02:00
Jyrki Gadinger
46ac99b25a gui: fix dark mode change on Windows 10 with universal style
The _Universal_ QML style has a theme that uses the colour scheme from
the system.  This can be set by either configuring
`qtquickcontrols2.conf` or setting the environment variable
`QT_QUICK_CONTROLS_UNIVERSAL_THEME=System`.

Unfortunately, due to [QTBUG-128825], setting the theme in the
configuration file/environment variable results in the dark/light mode
setting only be set during startup, not during runtime.  Not ideal, but
still better than not having a broken dark mode theme at all.

Fixes #7991

[QTBUG-128825]: https://bugreports.qt.io/browse/QTBUG-128825

Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-03-17 15:35:49 +01:00
Jyrki Gadinger
438391d37a use correct qml style on Windows
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
2025-01-31 15:11:44 +01:00
Matthieu Gallien
21c24072e8
on windows use Qt FluentWinUI3 style unless win10: Universal
use Universal qmt style on windows release before windows 11 then use
FluentWinUI3 which should fit with default windows 11 native style

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-01-27 10:06:13 +01:00
Matthieu Gallien
81ad96c174
use new in Qt6.8 windows fluent style
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2025-01-27 10:03:33 +01:00
Claudio Cambra
30ee3d65ee Ensure use of QMessageBox-using QMessageBox::critical
Fixes deprecation warnings

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>

f ensure qmessagebox

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>

f2 ensure qm

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>

f3

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>

f4

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-12-20 16:26:57 +01:00
Matthieu Gallien
194f918788 use QWidget Fusion style on Windows 10: enable dark mode
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-11-19 14:09:05 +01:00
Matthieu Gallien
07958ce53f
qml Windows native style is broken on dark mode: switch to Fusion
we will temporarily be using Fusion generic desktop style

Close https://github.com/nextcloud/desktop/issues/7215

see upstream Qt bug
https://bugreports.qt.io/browse/QTBUG-113469?focusedId=724929&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-724929

they apparently do not plan to fix Windows qml style to support dark
mode on Windows 11

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-10-07 15:29:36 +02:00
Camila Ayres
0236e883a8 Fix repeaded call to QQuickStyle::setStyle.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-09-06 10:42:08 +02:00
Camila Ayres
279c3c3981 Change default Qt quick control style depending on the platform.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-09-06 10:42:08 +02:00
Matthieu Gallien
4a8d0cf6d7 add a QQuickStyle fallback: Fusion is fallback style
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-09-06 10:42:08 +02:00
Matthieu Gallien
690ebccbe3 set the windows native qml style on windows systems
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-09-06 10:42:08 +02:00
Camila Ayres
d8185e69c8 Change default Qt quick control style depending on the platform.
Signed-off-by: Camila Ayres <hello@camilasan.com>
2024-09-06 10:42:08 +02:00
Matthieu Gallien
4d114a4f89 on windows use QWidget native platform style
will make all QWidget based user interface look more native

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-08-28 11:06:35 +02:00
Matthieu Gallien
3770eec050 windows needs an explicit QML import path to be set
on windows qml modules are not default loaded from the install folder of the app

set it such that qml modules are imported from teh installed qml folder

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2024-04-26 09:05:12 +02:00
Claudio Cambra
a0e90cf56b Remove use of QCoreApplication AA attributes
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
2024-04-26 09:05:12 +02:00
Matthieu Gallien
4c1ab7092b
use Fusion qml style
allows use of more standard qml styling and components

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 18:16:09 +02:00
Matthieu Gallien
1491c134c3 basic implementation of a dialog to resolve conflicts as a batch
will allow solving all conflicts at once

FIX #2786

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-05-17 08:43:54 +02:00
Matthieu Gallien
d2f5c6a5c7
initialize many attributes that could have been left without init value
done with clang-tidy

run-clang-tidy -p build -config="{Checks: '*', CheckOptions: [{key: UseAssignment, value: true}]}" -checks='-*,cppcoreguidelines-pro-type-member-init' -fix

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2023-02-06 10:43:04 +01:00
Claudio Cambra
e79ced22ae Clean up QML registration
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-09-07 17:00:44 +02:00
Matthieu Gallien
d1408df7ba let Qt use OpenGLES instead of desktop OpenGL to workaround bugs
should help picking a working rendering pipeline on windows

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-09-04 22:20:38 +02:00
Matthieu Gallien
0092ad15c7 sets special configuration to webengine to work around bugs
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-09-04 22:20:38 +02:00
allexzander
ff0a058f66 Fix crash: 'Failed to create OpenGL context'.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-08-05 16:29:21 +03:00
Matthieu Gallien
e581805138 set OpenGL software rendering and set similar options for webview
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-06-24 08:00:48 +02:00
Claudio Cambra
f585b8bd48 Add support for server color theming by using server color as accent
color

Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-03-16 13:57:45 +01:00
Matthieu Gallien
11e7ebd5fa properly ask Qt to create qml opengl surface with proper options
should prevent context losses error with some opengl drivers

should prevent corruptions to occur with come opengl drivers

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-03-10 14:19:46 +00:00
alex-z
c1dab7e4cb Unified Search via Tray window
Signed-off-by: alex-z <blackslayer4@gmail.com>
2021-10-25 14:45:05 +03:00
alex-z
bd731a9cda Windows. Remove CWD from DLL search paths.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2021-10-19 06:40:56 +00:00
Felix Weilbach
4c11f6763e Show sync progress in main dialog
Fixes #3662

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-10-12 16:14:24 +00:00
Felix Weilbach
0c9dce1154 Add file activity dialog
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-10-05 12:41:34 +00:00
Matthieu Gallien
ac28cc1cf5 set default format for QSurface to handle NVidia context loss events
should fix wrong OpenGL rendering after suspend on Linux with NVidia
binary OpenGL driver

close #3759

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2021-09-22 08:56:16 +00:00
Felix Weilbach
8a8d488454 Add dialog to set user status
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-09-09 11:18:22 +02:00
Felix Weilbach
efaccbd6fd Show main dialog as normal window if tray icons not available
Fixes #3307

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-07-12 14:10:26 +00:00
Valdnet
dadddd7ea2 l10n: Replace apostrophe with double quotation
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2021-05-12 12:34:22 +02:00
Felix Weilbach
c296a93cee Enable high dpi scaling on all platforms
Fixes #2295, #1079, #914

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-03-23 08:36:11 +00:00
Kevin Ottens
55fd0562de
Load the theme resource explictly
Otherwise they won't be loaded automatically at startup leading to lots
of missing icons. Since they're now in a static library they need that
explicit loading.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2021-02-02 18:33:45 +01:00
Hannah von Reth
9807285abd
[Gui] Set proper hdpi attributes 2020-12-15 10:59:03 +01:00
Christian Kamm
2f7cdb81cf
Tray: Try to establish tray after 10s if failed initially #6518
When owncloud is started during desktop startup the tray may not yet
be running when the client starts. This will make the client attempt
to create a tray icon again after 10 seconds if there's no tray
during initial startup.
2020-12-15 10:58:43 +01:00
Olivier Goffart
0e56dfe3a4
Gui: do not show the settings when opening a virtual file
Issue #6764
2020-12-15 10:58:31 +01:00
Jeremy Plsek
5fa2a13f8d Use native text rendering for qml windows
Signed-off-by: Jeremy Plsek <jeremyplsek@gmail.com>
2020-09-23 08:00:46 +00:00
Kevin Ottens
0e2af4b502 Enable the modernize-deprecated-headers check on clang-tidy
Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-08-13 14:53:52 +02:00
Kevin Ottens
2ce1669ceb Bring forward the main systray dialog on second execution
Previously we were showing up the settings dialog but it doesn't quite
make sense anymore now that we got two dialogs.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-06-17 16:01:49 +00:00
Kevin Ottens
de7021e85e Force the default QQC2 style
This works around a bug in KDE's qqc2-desktop-style which breaks buttons
with icons not based on a name. By forcing a style name the KDE Plasma
platformtheme plugin won't try to force qqc2-desktops-style anymore.

Can be removed once the bug in qqc2-desktop-style is gone.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-05-07 02:07:02 +02:00
Michael Schuster
e833e86da6 Updater: Add CMake option BUILD_UPDATER to make the updater optional
- Default: BUILD_UPDATER = NO

  To ease builds for distro packages and contributors (regardless of the specified update URL)

- Enable updater build for Drone CI and AppImage builds

Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-03-09 02:34:55 +01:00
Dominique Fuchs
01e9343d8b Cleanup/Removal/Adaption/Update to resource files and crresponding code, esp. regarding svg usage
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2020-01-18 17:47:17 +01:00
Camila Ayres
72901a4ed8
Merge branch 'master' into background 2018-11-26 21:07:14 +01:00
J-P Nurmi
fb5ff96ed6 GUI: run clang-tidy modernize-use-nullptr 2018-11-11 10:56:22 +01:00
Aleksandr Borisenko
bb2d31a2bd Removed explicit initialization; Fixed RAND_bytes not found 2018-11-08 11:24:39 +03:00
J-P Nurmi
ee8bcb2a5b Add a command line option to launch the client in the background
Allow passing a --background argument to force the app in the background
even if systray is not available.

Fixes #737
2018-11-07 18:42:36 +01:00