Property definitions

gamnit :: gamnit_android $ App :: set_active
	private fun set_active
	do
		assert not destroyed
		if window_created and resumed and focused and not active then
			var display = display
			if display == null then
				# Initial create
				create_display
				create_gamnit
				display = self.display
			else
				# Try to reuse the EGL context
				var native_window = app.native_app_glue.window
				assert not native_window.address_is_null
				var needs_recreate = display.check_egl_context(native_window)
				if needs_recreate then

					# Skip frame
					if display.native_window_is_invalid then
						print_error "the native window is invalid, skip frame"
						return
					end

					# The context was lost, reload everything
					create_gamnit
					recreate_gamnit
				end
			end

			# Update screen dimensions
			assert display != null
			display.update_size
			app.on_resize display

			if not scene_created then
				# Initial launch
				if debug_gamnit then print "set_active: create"
				create_scene
				scene_created = true
				on_restore_state
			else
				# Next to first launch, reload
				if debug_gamnit then print "set_active: recreate"
			end

			active = true
		end
	end
lib/gamnit/gamnit_android.nit:164,2--211,4