Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qt6.8 #2541

Merged
merged 7 commits into from
Jan 7, 2025
Merged

Qt6.8 #2541

merged 7 commits into from
Jan 7, 2025

Conversation

Johnson-zs
Copy link
Contributor

No description provided.

This commit includes the following changes:

1. Migrate preview plugins from Qt5 to Qt6
2. Standardize plugin names with "deepin-" prefix
3. Update CMake configurations for preview plugins
4. Fix build paths and output directories
5. Remove deprecated Qt APIs and update to new ones
6. Remove dde-desktop related files as it's now a plugin of dde-shell

Key changes:
- Update Qt dependencies from Qt5 to Qt6
- Update DTK dependencies to Dtk6
- Fix preview plugin paths and configurations
- Clean up obsolete desktop-related code and files
- Fix some Qt6 compatibility issues in preview plugins

Log: Qt6
This commit updates the project to be compatible with Qt6 by making the following changes:

1. Replaced all instances of `find_package(Qt5 COMPONENTS ...)` with `find_package(Qt6 COMPONENTS ...)` in CMakeLists.txt files.
2. Updated target link libraries from `DFM::base` and `DFM::framework` to `DFM6::base` and `DFM6::framework`.
3. Adjusted Dtk library references to use `Dtk6` instead of the previous version.
4. Ensured that all applications and tools are now configured to build with Qt6.

These changes are essential for maintaining compatibility with the latest Qt framework and ensuring the project can leverage new features and improvements in Qt6.

Log:
This commit refactors the dde-file-dialog application and its associated plugins by implementing the following changes:

1. Updated plugin names in `main.cpp` files for `dde-file-dialog`, `dde-file-dialog-wayland`, and `dde-file-dialog-x11` applications to ensure consistency.
2. Modified `CMakeLists.txt` in the filedialog plugin to change the subdirectory name from `filedialogplugin-core` to `core`.
3. Refactored the `cleanFilterList` method calls in the `FileDialogPrivate` class to use the method directly instead of through `QPlatformFileDialogHelper`.
4. Added a new `cleanFilterList` method to the `FileDialogPrivate` class to clean the filter list using regular expressions.

Log: These changes simplify the plugin structure, improve code maintainability, and remove obsolete components.
- Removed Qt5 support and related build files, focusing solely on Qt6
- Unified plugin interface IDs by removing Qt version-specific suffixes
- Consolidated CMake build files to remove duplicate Qt5/Qt6 configurations
- Updated library dependencies to use Qt6 and DFM6 components
- Fixed Qt6 compatibility issues in various plugins:
  * Updated deprecated Qt APIs (QTime -> QElapsedTimer)
  * Fixed palette color usage for Qt6
  * Updated QDateTime handling
  * Modified container operations for Qt6 style
  * Updated SVG widget includes for Qt6
  * Fixed QFileDialog mode constants

This commit streamlines the codebase by removing Qt5 support and standardizing
on Qt6, while improving maintainability by eliminating duplicate build configurations.

Log: Qt6
- Removed Qt5 build configurations and related files
- Simplified CMake build system by removing Qt version checks
- Updated QVariant usage for Qt6 compatibility (QVariant::Type -> QMetaType)
- Fixed Qt6 specific API changes:
  * Updated DBus interface generation
  * Fixed icon painting method for Qt6
  * Updated string split behavior
  * Removed deprecated Qt::AA_UseHighDpiPixmaps
- Consolidated build files and removed duplicate configurations
- Updated package installation paths to use Qt6-specific names

Log:
- Updated plugin library names to follow consistent naming pattern:
  * Changed libdfmplugin-core.so to libdfm-core-plugin.so
  * Updated all plugin library names to use dfm-*-plugin format
- Separated PROJECT_NAME and BIN_NAME in CMake files:
  * PROJECT_NAME remains as dfmplugin-*
  * BIN_NAME set to dfm-*-plugin for output libraries
- Updated references in main applications to use new library names
- Maintained same installation paths and dependencies

Log: This change improves consistency in plugin naming across the project.
It cause crash after Qt6

Log:
Copy link

github-actions bot commented Jan 7, 2025

  • 检测到debian目录文件有变更: debian/control,debian/dde-file-manager-dev.install,debian/dde-file-manager.install,debian/libdde-file-manager.install

  • 检测到敏感词unset变动

详情
    {
    "unset": {
        "src/apps/dde-desktop/main.cpp": {
            "a": [
                "    qunsetenv(envName);"
            ]
        }
    }
}

Copy link

github-actions bot commented Jan 7, 2025

  • 敏感词检查失败, 检测到4个文件存在敏感词
详情
{
    "src/apps/dde-file-manager/main.cpp": [
        {
            "line": "    a.setApplicationAcknowledgementPage(\"https://www.deepin.org/acknowledgments/\" + qApp->applicationName());",
            "line_number": 296,
            "rule": "S35",
            "reason": "Url link | e56e98a089"
        }
    ],
    "src/plugins/filedialog/core/core.json": [
        {
            "line": "    \"UrlLink\" : \"https://www.uniontech.com\",",
            "line_number": 11,
            "rule": "S35",
            "reason": "Url link | 3c9a9fccb6"
        }
    ],
    "src/plugins/daemon/vault/vaultcontrol.cpp": [
        {
            "line": "        const QString &passwd = passwordFromKeyring();",
            "line_number": 101,
            "rule": "S28",
            "reason": "Suspicious password declaration | bbb03f3741"
        }
    ],
    "debian/control": [
        {
            "line": "Homepage: http://www.deepin.org",
            "line_number": 69,
            "rule": "S35",
            "reason": "Url link | 6fe814dfb7"
        }
    ]
}

@deepin-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: Johnson-zs, max-lvs

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@Johnson-zs
Copy link
Contributor Author

/forcemerge

@deepin-bot
Copy link
Contributor

deepin-bot bot commented Jan 7, 2025

This pr force merged! (status: blocked)

@deepin-bot deepin-bot bot merged commit 644c907 into linuxdeepin:master Jan 7, 2025
17 of 20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants