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

Area near the top border in frameless window is clickable #8958

Merged
merged 16 commits into from Jun 5, 2017

Conversation

Projects
None yet
7 participants
@mst128256
Copy link
Contributor

mst128256 commented Mar 17, 2017

Reason for the behaviour is usage of NSTitledWindowMask - even though the title bar is then set to be hidden. The window has to draw semaphore buttons on its own - it is solved as separate subview within the hierarchy. The semaphore buttons are being shown only when the cursor is nearby. Added code to let keyboard shortcuts for close and minimise work properly.

Fixes #8730
Fixes #7696
Fixes #5723
Fixes #983

@poiru poiru self-requested a review Mar 29, 2017

@alvesl

This comment has been minimized.

Copy link

alvesl commented May 4, 2017

Hello friends, any news on this?
I still have the problem with the cursor:pointer at the top of the window.
thanks!

@tonyganch

This comment has been minimized.

Copy link
Member

tonyganch commented May 16, 2017

@poiru, ping

@groundwater

This comment has been minimized.

Copy link
Member

groundwater commented Jun 5, 2017

Notes from weekly meeting:

  1. can we create a flag to isolate these changes
  2. @kevinsawicki up for helping merge and implement the feature flag

@groundwater groundwater requested review from kevinsawicki and removed request for poiru Jun 5, 2017

@kevinsawicki kevinsawicki self-assigned this Jun 5, 2017

@kevinsawicki kevinsawicki force-pushed the mst128256:8730 branch from edcc24a to 1493d67 Jun 5, 2017

@kevinsawicki

This comment has been minimized.

Copy link
Contributor

kevinsawicki commented Jun 5, 2017

Thanks for this @mst128256 👍

Discussed this with @tonyganch in this morning's meeting and I've updated this pull request to put this behind a new flag so existing apps using frame: false are not affected by this new behavior.

Apps can opt-in to this feature by setting titleBarStyle to customButtonsOnHover on the BrowserWindow options constructor when using frameless windows.

@poiru You mentioned having some edits/differences in your custom implementation of this, we can work those out in any follow up PRs, but this seems solid to initially ship as an opt-in experimental option.

@kevinsawicki kevinsawicki merged commit dfa4af2 into electron:master Jun 5, 2017

0 of 2 checks passed

continuous-integration/appveyor/pr Waiting for AppVeyor build to complete
Details
continuous-integration/travis-ci/pr The Travis CI build is in progress
Details
return self;
}

- (BOOL)_mouseInGroup:(NSButton*)button {

This comment has been minimized.

@MarshallOfSound

MarshallOfSound Jun 11, 2017

Member

Quick question regarding this, isn't this a private / undocumented API and if so will it prevent apps getting added to he mac app store, this feature might have to be disabled in MAS builds?

This comment has been minimized.

@poiru

poiru Jun 12, 2017

Member

I'm not sure, but note that _mouseInGroup is called by macOS, not by us. Not sure if that makes a difference.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment