【问题标题】:Frameless window not draggable - Mac OSX无框窗口不可拖动 - Mac OSX
【发布时间】:2016-02-03 23:33:01
【问题描述】:

在Mac [OSX 10.8.5] 上创建无框窗口后就没有办法拖动了吗?

mainWindow = new BrowserWindow({
    frame: false,
    resizable: false,
    width: 500,
    height: 300
});

我从docs 中发现,将-webkit-app-region: drag 样式分配给body 元素应该可以修复它,但由于某种原因,窗口只是粘在了初始位置。

我还没有在 Windows 或 Linux 上测试它。以前有人见过这个问题吗?


[编辑 04.11.2015]

我已经在 Windows 机器上测试了该应用程序,它是可拖动的。这是与 Mac 相关的问题。将尝试在 GitHub 存储库中创建新问题。


[编辑 04.11.2015]

已确认这是 Electron v0.34.2 版本的错误。临时解决方案是降级到v0.34.0。

可以在 GitHub 上追踪,Issue #3329

【问题讨论】:

    标签: javascript node.js macos electron


    【解决方案1】:

    这仅在 devTools 打开时发生吗?我遇到了完全相同的问题,即拖动工作 Windows,而不是 OSX。发现我的问题与 devTools 有关。希望这可以为其他人节省一些时间:

    在 OSX 上,必须关闭 devTools-webkit-app-region: drag; 才能工作!

    (电子 v1.3.1)

    【讨论】:

    • 也很高兴知道,如果您在单独的窗口中使用 googleDevTools,拖动工作,问题只是与 devTool 在同一窗口中的电子应用程序。
    【解决方案2】:

    只需创建 2 个 css 类并将它们应用于您想要的任何项目,至少它与 div 和 h1 完美配合。在 windows 和 linux 上测试过

    .drag-area {
      -webkit-app-region: drag;
    }
    
    .nodrag-area {
      -webkit-app-region: no-drag;
    }
    

    例如:

    <header class="toolbar toolbar-header drag-area">
        <h1 class="title">Photon</h1>
    </header>
    

    【讨论】:

      【解决方案3】:

      该问题与 OSX 错误有关,Chrome 已放弃对 Mac OSX 10.8 版本的支持,因此无法修复该错误。解决方案是使用 Electron v0.34.0 或更新操作系统。

      更多信息可以在Issue #3329找到

      【讨论】:

        猜你喜欢
        • 2016-10-09
        • 1970-01-01
        • 2016-07-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多