ebiten: Refactoring: Move RunWithoutMainLoop to another file

This commit is contained in:
Hajime Hoshi 2021-07-04 04:23:41 +09:00
parent f6e210e086
commit 12960a31ab
2 changed files with 30 additions and 15 deletions

15
run.go
View File

@ -182,21 +182,6 @@ func isRunGameEnded() bool {
return atomic.LoadInt32(&isRunGameEnded_) != 0
}
// RunGameWithoutMainLoop runs the game, but doesn't call the loop on the main (UI) thread.
// RunGameWithoutMainLoop returns immediately unlike Run.
//
// Ebiten users should NOT call RunGameWithoutMainLoop.
// Instead, functions in github.com/hajimehoshi/ebiten/v2/mobile package calls this.
//
// TODO: Remove this. In order to remove this, the uiContext should be in another package.
func RunGameWithoutMainLoop(game Game) {
initializeWindowPositionIfNeeded(WindowSize())
theUIContext.set(&imageDumperGame{
game: game,
})
uiDriver().RunWithoutMainLoop(theUIContext)
}
// ScreenSizeInFullscreen returns the size in device-independent pixels when the game is fullscreen.
// The adopted monitor is the 'current' monitor which the window belongs to.
// The returned value can be given to Run or SetSize function if the perfectly fit fullscreen is needed.

30
run_mobile.go Normal file
View File

@ -0,0 +1,30 @@
// Copyright 2021 The Ebiten Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//go:build android || ios
// +build android ios
package ebiten
// RunGameWithoutMainLoop runs the game, but doesn't call the loop on the main (UI) thread.
// RunGameWithoutMainLoop returns immediately unlike Run.
//
// Ebiten users should NOT call RunGameWithoutMainLoop.
// Instead, functions in github.com/hajimehoshi/ebiten/v2/mobile package calls this.
//
// TODO: Remove this. In order to remove this, the uiContext should be in another package.
func RunGameWithoutMainLoop(game Game) {
theUIContext.set(game)
uiDriver().RunWithoutMainLoop(theUIContext)
}