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

Backport (3-0-x) - fix: draggable regions not working on macOS #13600

Merged
merged 1 commit into from Jul 10, 2018

Conversation

Projects
None yet
2 participants
@trop

trop bot commented Jul 10, 2018

Backport of #13599

See that PR for details.

fix: fallback to FullSizeContentView for frameless window on mac
When using `views::Widget` to create window, Chromium will automatically
use a `BridgedContentView` as content view, which however does not
support draggable regions inside it.

By fallback to `FullSizeContentView` we can work around this problem,
with the price of losing the ability to use `views::View` APIs. Since
we don't expect users to use the new `View` APIs in `BrowserWindow`
anyway, it should not be a problem.

This change does not affect users of `TopLevelWindow`, and for users of
`BrowserWindow` there is nothing to lose.

In the long term we should look into how to make draggable regions work
with `BridgedContentView`. The related Chromium code is still being
changed rapidly, we can wait until Chromium migrated its
`NativeAppWindowCocoa` class to use `views::Widget`.

@trop trop bot requested a review from electron/reviewers as a code owner Jul 10, 2018

@trop trop bot added the backport label Jul 10, 2018

@zcbenz zcbenz merged commit 85526c7 into electron:3-0-x Jul 10, 2018

10 of 11 checks passed

ci/circleci: electron-mas-x64 Your tests failed on CircleCI
Details
WIP ready for review
Details
appveyor: electron-ia32-pr AppVeyor build succeeded
Details
appveyor: electron-x64-pr AppVeyor build succeeded
Details
ci/circleci: electron-linux-arm Your tests passed on CircleCI!
Details
ci/circleci: electron-linux-arm-test Your tests passed on CircleCI!
Details
ci/circleci: electron-linux-arm64 Your tests passed on CircleCI!
Details
ci/circleci: electron-linux-arm64-test Your tests passed on CircleCI!
Details
ci/circleci: electron-linux-ia32 Your tests passed on CircleCI!
Details
ci/circleci: electron-linux-x64 Your tests passed on CircleCI!
Details
ci/circleci: electron-osx-x64 Your tests passed on CircleCI!
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment