1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 09:52:26 +01:00
metamask-extension/app/scripts/lib
Thomas Huang ef1b1d5738
Fix popup/notification when browser is in fullscreen, primarily on macOS. (#9075)
* Fix popup/notification when browser is in fullscreen, primarily on OSX.

The issue was reported internally via Slack. User was running Mac OSX Chrome in fullscreen mode where Chrome is created in a new Desktop workspace.

The issue reproduced on OSX Chrome in fullscreen/maximized view overrides the explicitly set width and height for `windows.create()`. Possibly not overrides, but creates a window based off of the window that it was created from. Found a related [Chromium bug](https://bugs.chromium.org/p/chromium/issues/detail?id=263092&q=window%20create%20width%20os%3DMac&can=2).
The fullscreen `popup.left` pixel will calculate the window position incorrectly since we set and assume the width of the created window. The incorrect `left` position the window and transition the focus Desktop/Workspace incorrectly and make is seem to lose focus of the new window/workspace. Incidentally this will make the popup full width/height, and create a new workspace for the view, which we have no control over until Chrome
fixes it.

This will check if the popup is 'fullscreen', which it gets passed from the origin window, if so then don't reposition the window. If Chrome fixes the issue we can revert this change.

* Feedback commit

Co-authored-by: Mark Stacey <markjstacey@gmail.com>

Co-authored-by: Mark Stacey <markjstacey@gmail.com>
2020-07-27 11:33:25 -07:00
..
ens-ipfs Use string network and chain IDs (#8628) 2020-07-08 14:05:09 -07:00
migrator Enable guard-for-in rule (#9000) 2020-07-21 18:40:45 -02:30
account-tracker.js Clear AccountTracker accounts and CachedBalances on createNewVaultAndRestore (#9023) 2020-07-16 19:09:38 -07:00
auto-reload.js Update inpage provider, deprecation warnings (#8854) 2020-06-24 15:21:57 -07:00
backend-metametrics.js Implement asset page (#8696) 2020-06-01 14:54:32 -03:00
buy-eth-url.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
cleanErrorStack.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
ComposableObservableStore.js Enable guard-for-in rule (#9000) 2020-07-21 18:40:45 -02:30
createLoggerMiddleware.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
createOnboardingMiddleware.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
createOriginMiddleware.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
createStreamSink.js Fix words (#9038) 2020-07-20 14:32:49 -02:30
createTabIdMiddleware.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
decrypt-message-manager.js Fix words (#9038) 2020-07-20 14:32:49 -02:30
encryption-public-key-manager.js Return after 'reject' in Promise constructor (#8857) 2020-06-24 16:38:53 -03:00
enums.js Add MESSAGE_TYPE enum (#8743) 2020-06-04 16:22:45 -03:00
extractEthjsErrorMessage.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
fetch-with-timeout.js Prevent accidental use of globals (#8340) 2020-04-15 14:23:27 -03:00
freezeGlobals.js Consistent jsdoc syntax (#7755) 2020-01-13 14:36:36 -04:00
get-first-preferred-lang-code.js Use eslint@6.8.0 (#8978) 2020-07-14 12:50:41 -02:30
getObjStructure.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
local-store.js Consistent jsdoc syntax (#7755) 2020-01-13 14:36:36 -04:00
message-manager.js Fix words (#9038) 2020-07-20 14:32:49 -02:30
network-store.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
nodeify.js Consistent jsdoc syntax (#7755) 2020-01-13 14:36:36 -04:00
notification-manager.js Fix popup/notification when browser is in fullscreen, primarily on macOS. (#9075) 2020-07-27 11:33:25 -07:00
personal-message-manager.js Fix words (#9038) 2020-07-20 14:32:49 -02:30
random-id.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
seed-phrase-verifier.js Consistent jsdoc syntax (#7755) 2020-01-13 14:36:36 -04:00
select-chain-id.js Cleanup network enums (#8627) 2020-05-20 08:57:45 -07:00
setupFetchDebugging.js Move export defaults statements alongside their objects (#8525) 2020-05-05 19:49:38 -02:30
setupSentry.js Initialize extra report property (#9033) 2020-07-17 20:31:18 -03:00
stream-utils.js Use eslint@6.8.0 (#8978) 2020-07-14 12:50:41 -02:30
typed-message-manager.js Use eslint@6.8.0 (#8978) 2020-07-14 12:50:41 -02:30
util.js Fix words (#9038) 2020-07-20 14:32:49 -02:30