Comments (5)
Try adding event listeners to each of the following:
window.onFullscreen
window.onMaximize
window.onMinimize
window.onRestore
How many of them get dispatched, and at what point in the process?
from lime.
Well, I think we found the culprit. When we receive a "maximize" window event, we set __fullscreen
to false before dispatching onMaximize
.
There aren't any other references to onMaximize
, so I think it's safe to conclude that's where it's coming from. (Not even references that should exist, like in this list.)
When testing on Linux, I can confirm that there's no onMaximize
event, and therefore window.fullscreen
behaves as it should, toggling every time F is pressed. And there's also no onRestore
event when exiting fullscreen. I don't know why you're getting these extra events on Mac, but they're definitely not what's supposed to happen.
from lime.
Okay, let's try that (for the record, here's the code with the inserted event handlers - https://gist.github.com/increpare/928e5ee0919d7da56d11ba2ab2c022b7 )
Pressing F three times:
Source/Main.hx:66: keydown
Source/Main.hx:67: old fullscreen value is false
Source/Main.hx:48: onFullscreen
Source/Main.hx:77: new fullscreen value is true
Source/Main.hx:52: onMaximize
Source/Main.hx:66: keydown
Source/Main.hx:67: old fullscreen value is false
Source/Main.hx:48: onFullscreen
Source/Main.hx:77: new fullscreen value is true
Source/Main.hx:66: keydown
Source/Main.hx:67: old fullscreen value is true
Source/Main.hx:77: new fullscreen value is false
Source/Main.hx:62: onRestore
Pressing G twice
Source/Main.hx:66: keydown
Source/Main.hx:67: old fullscreen value is false
Source/Main.hx:48: onFullscreen
Source/Main.hx:77: new fullscreen value is true
Source/Main.hx:52: onMaximize
Source/Main.hx:66: keydown
Source/Main.hx:67: old fullscreen value is false
Source/Main.hx:77: new fullscreen value is false
Source/Main.hx:62: onRestore
from lime.
Oho. Maybe it's related to hitting the maximize button on OSX having the same effect as going fullscreen? (At some point years ago macos changed the behaviour of the fullscreen button from a more Windows-style "expand window to fill screen" to actual full-screen).
from lime.
Related Issues (20)
- Uncaught exception: [lime.utils.Preloader] ERROR: There is no asset library with an ID of "default" HOT 2
- Multiple font assets specified using <font> tag aren't preloaded by lime.utils.Preloader HOT 2
- Linux ARM64 Support? HOT 5
- Mac ARM64 support? HOT 3
- Nightly Haxe issues HOT 17
- TextField IME candidate list pane invisible on Windows HOT 8
- lime rebuild extension-webm windows error HOT 3
- CURL is freezing the application
- Doc on ThreadPool.new doesn't match the function HOT 1
- Lack of option to disable automatic `full-screen` mode. HOT 1
- Weird title bar on unfocused borderless window HOT 3
- Android emulator crashes with antialiasing >= 2
- Compilation error HOT 1
- Using HXP complains about a missing NDLL HOT 9
- Do think lime's native audio source time, length, dataLength, and samples should be an int64 instead of an int? HOT 1
- [ENHANCEMENT] Audio recording support HOT 1
- [8.2.0-dev] Target Cairo version doesn't exist HOT 5
- Sys.exit hangs the process on the latest 8.2.0-Dev branch HOT 2
- [html5] gamepad disconnect event is never dispatched
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lime.