Comments (3)
I needed to do this so i created the following:
/// Creates a game window from a pre-existing Glutin event loop and window builder.
pub fn from_raw(settings: &WindowSettings, events_loop: glutin::EventsLoop, window_builder: glutin::WindowBuilder) -> Result<Self, Box<dyn Error>> {
let title = settings.get_title();
let exit_on_esc = settings.get_exit_on_esc();
let context_builder = context_builder_from_settings(&settings)?;
let ctx = context_builder.build_windowed(window_builder, &events_loop)?;
let ctx = unsafe { ctx.make_current().map_err(|(_, err)| err)? };
// Load the OpenGL function pointers.
gl::load_with(|s| ctx.get_proc_address(s) as *const _);
Ok(GlutinWindow {
ctx,
title,
exit_on_esc,
should_close: false,
automatic_close: settings.get_automatic_close(),
cursor_pos: None,
is_capturing_cursor: false,
last_cursor_pos: None,
mouse_relative: None,
events_loop,
events: VecDeque::new(),
})
}
I still pass in a WindowsSettings
because we still need to pass in many settings from WindowsSettings
in order to build a gl context and make a GlutinWindow
. If this is acceptable I can open a pr.
from glutin_window.
@adumbidiot PR is welcome!
from glutin_window.
#185 does not technically construct from an existing Glutin window, but instead uses a window builder. Reopen if there is need for this edge case.
from glutin_window.
Related Issues (20)
- Can't detect window close with `wait_event`
- panic when closing window during render, Windows 10
- panicked at 'glx::MakeCurrent failed'
- fullscreen take size from setting HOT 3
- Panicked Ubuntu 14.04
- Make OpenGL initialization default Cargo feature flag
- Building a window results in an "explicit panic" on Windows HOT 2
- A lot of mouse input seems to cause poll_event to return None when it should still have events for that frame HOT 4
- Stack overflow in event handling HOT 2
- Coordinate system is messed up in 0.45.2 HOT 6
- Scaling issue in 0.48 HOT 22
- Allow use of opengles HOT 1
- Capturing glutin events not supported by piston HOT 2
- `eglCreateWindowSurface` fails after updating to android 10 HOT 1
- Unknown keys with valid scan codes are not handled.
- Thread panic in Rust 1.48.0 HOT 2
- Panic when polling event in rust 1.48.0 in piston rotating box example
- `scale_factor` is not considered in mouse event arguments
- All colors darkened after updating to 0.71.0
- Panic when creating basic fullscreen window
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 glutin_window.