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

✨ 原生 MacOs 标题栏 #215

Merged
merged 2 commits into from
Dec 3, 2024
Merged

Conversation

roiiiu
Copy link
Contributor

@roiiiu roiiiu commented Dec 3, 2024

这个 PR 带来了什么样的更改?

  • 错误修复
  • 新功能
  • 文档/注释
  • 代码格式
  • 代码重构
  • 测试用例
  • 性能优化
  • 外观样式
  • 项目构建
  • 依赖环境
  • 持续集成/部署
  • 其他,请描述:

这个 PR 是否存在破坏性变更?

  • 是的,并已在 issue #___ 号中获得批准
  • 没有

描述

在MacOs上应用原生标题栏

动机和背景

MacOs标题栏适配问题

其他信息

检查工作

  • [] 我对我的代码进行了注释,特别是在难以理解的部分
  • [] 我的更改需要更新文档,并且已对文档进行了相应的更改
  • 我添加了测试并且已经在本地通过,以证明我的修复补丁或新功能有效
  • 我已检查并确保更改没有与其他打开的 Pull Requests 重复

Copy link

sourcery-ai bot commented Dec 3, 2024

审核指南 by Sourcery

此 PR 通过重新配置窗口构建器设置和调整侧边栏布局,实现了对 macOS 原生标题栏的支持。该实现利用 Tauri 的内置窗口自定义功能,在保持 Windows 自定义外观的同时,创造了更具原生感的 macOS 外观。

Tauri 窗口配置更改的类图

classDiagram
    class WebviewWindowBuilder {
        +new(app, id, url)
        +title(String)
        +min_inner_size(Float, Float)
        +inner_size(Float, Float)
        +center()
        +decorations(Boolean)
        +transparent(Boolean)
        +hidden_title(Boolean)
        +title_bar_style(TitleBarStyle)
        +build() Window
    }

    class TitleBarStyle {
        <<enumeration>>
        Overlay
    }

    WebviewWindowBuilder --> TitleBarStyle
    note for WebviewWindowBuilder "修改以支持带有隐藏标题和覆盖样式的 macOS 原生标题栏"
Loading

文件级更改

更改 详情 文件
使用 Tauri 的窗口构建器实现平台特定的窗口配置
  • 添加 WebviewWindowBuilder 以集中窗口配置
  • 为 Windows 配置透明装饰
  • 为 macOS 设置带有覆盖样式的原生标题栏
  • 从 tauri.conf.json 中移除窗口配置
src-tauri/src/lib.rs
src-tauri/tauri.conf.json
修改侧边栏布局以适应 macOS 原生标题栏
  • 调整 macOS 的侧边栏宽度
  • 更新 macOS 布局的顶部填充
  • 从 macOS 视图中移除 WindowControls 组件
src/components/AppSidebar.vue

可能关联的问题


提示和命令

与 Sourcery 互动

  • 触发新审核: 在拉取请求中评论 @sourcery-ai review
  • 继续讨论: 直接回复 Sourcery 的审核评论。
  • 从审核评论生成 GitHub 问题: 通过回复审核评论,要求 Sourcery 从中创建一个问题。
  • 生成拉取请求标题: 在拉取请求标题的任意位置写 @sourcery-ai 以随时生成标题。
  • 生成拉取请求摘要: 在拉取请求正文的任意位置写 @sourcery-ai summary 以随时生成 PR 摘要。您也可以使用此命令指定摘要应插入的位置。

自定义您的体验

访问您的仪表板以:

  • 启用或禁用审核功能,如 Sourcery 生成的拉取请求摘要、审核指南等。
  • 更改审核语言。
  • 添加、删除或编辑自定义审核说明。
  • 调整其他审核设置。

获取帮助

Original review guide in English

Reviewer's Guide by Sourcery

This PR implements native macOS title bar support by reconfiguring the window builder settings and adjusting the sidebar layout. The implementation uses Tauri's built-in window customization features to create a more native look and feel on macOS while maintaining a custom appearance on Windows.

Class diagram for Tauri window configuration changes

classDiagram
    class WebviewWindowBuilder {
        +new(app, id, url)
        +title(String)
        +min_inner_size(Float, Float)
        +inner_size(Float, Float)
        +center()
        +decorations(Boolean)
        +transparent(Boolean)
        +hidden_title(Boolean)
        +title_bar_style(TitleBarStyle)
        +build() Window
    }

    class TitleBarStyle {
        <<enumeration>>
        Overlay
    }

    WebviewWindowBuilder --> TitleBarStyle
    note for WebviewWindowBuilder "Modified to support native macOS title bar with hidden title and overlay style"
Loading

File-Level Changes

Change Details Files
Implemented platform-specific window configurations using Tauri's window builder
  • Added WebviewWindowBuilder for centralized window configuration
  • Configured transparent decorations for Windows
  • Set up native title bar with overlay style for macOS
  • Removed window configuration from tauri.conf.json
src-tauri/src/lib.rs
src-tauri/tauri.conf.json
Modified sidebar layout to accommodate native macOS title bar
  • Adjusted sidebar width for macOS
  • Updated top padding for macOS layout
  • Removed WindowControls component from macOS view
src/components/AppSidebar.vue

Possibly linked issues


Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time. You can also use
    this command to specify where the summary should be inserted.

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@roiiiu - 我已经审查了你的更改,它们看起来很棒!

这是我在审查期间查看的内容
  • 🟡 一般问题:发现1个问题
  • 🟢 安全性:一切看起来都很好
  • 🟢 测试:一切看起来都很好
  • 🟢 复杂性:一切看起来都很好
  • 🟢 文档:一切看起来都很好

Sourcery对开源项目免费 - 如果你喜欢我们的审查,请考虑分享它们 ✨
帮助我变得更有用!请在每条评论上点击👍或👎,我将使用反馈来改进你的审查。
Original comment in English

Hey @roiiiu - I've reviewed your changes and they look great!

Here's what I looked at during the review
  • 🟡 General issues: 1 issue found
  • 🟢 Security: all looks good
  • 🟢 Testing: all looks good
  • 🟢 Complexity: all looks good
  • 🟢 Documentation: all looks good

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

src-tauri/src/lib.rs Outdated Show resolved Hide resolved
Copy link

github-actions bot commented Dec 3, 2024

📦️ 此 PR 构建的应用已经准备就绪

平台 文件 大小
🐧 linux-amd64 matcha_0.4.5_linux-amd64 112.77 MB
🍎 macos-amd64 matcha_0.4.5_macos-amd64 24.33 MB
🍎 macos-arm64 matcha_0.4.5_macos-arm64 23.94 MB
🪟 windows-amd64 matcha_0.4.5_windows-amd64 21.99 MB

*从提交 b518cdb 构建

@A-kirami A-kirami added the enhancement New feature or request label Dec 3, 2024
@A-kirami A-kirami changed the title feat: 原生MacOs标题栏 ✨ 原生 MacOs 标题栏 Dec 3, 2024
@A-kirami A-kirami merged commit 49749c4 into A-kirami:main Dec 3, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

2 participants