summaryrefslogtreecommitdiffstats
path: root/glutin
diff options
context:
space:
mode:
Diffstat (limited to 'glutin')
-rw-r--r--glutin/README.md2
-rw-r--r--glutin/src/application.rs19
-rw-r--r--glutin/src/lib.rs1
3 files changed, 18 insertions, 4 deletions
diff --git a/glutin/README.md b/glutin/README.md
index bbc2d5e8..263cc0af 100644
--- a/glutin/README.md
+++ b/glutin/README.md
@@ -2,7 +2,7 @@
[![Documentation](https://docs.rs/iced_glutin/badge.svg)][documentation]
[![Crates.io](https://img.shields.io/crates/v/iced_glutin.svg)](https://crates.io/crates/iced_glutin)
[![License](https://img.shields.io/crates/l/iced_glutin.svg)](https://github.com/iced-rs/iced/blob/master/LICENSE)
-[![project chat](https://img.shields.io/badge/chat-on_zulip-brightgreen.svg)](https://iced.zulipchat.com)
+[![Discord Server](https://img.shields.io/discord/628993209984614400?label=&labelColor=6A7EC2&logo=discord&logoColor=ffffff&color=7389D8)](https://discord.gg/3xZJ65GAhd)
`iced_glutin` offers some convenient abstractions on top of [`iced_native`] to quickstart development when using [`glutin`].
diff --git a/glutin/src/application.rs b/glutin/src/application.rs
index 437c17ee..27a932fc 100644
--- a/glutin/src/application.rs
+++ b/glutin/src/application.rs
@@ -61,10 +61,23 @@ where
settings.id,
);
- let context = ContextBuilder::new()
+ let opengl_builder = ContextBuilder::new()
.with_vsync(true)
- .with_multisampling(C::sample_count(&compositor_settings) as u16)
- .build_windowed(builder, &event_loop)
+ .with_multisampling(C::sample_count(&compositor_settings) as u16);
+
+ let opengles_builder = opengl_builder.clone().with_gl(
+ glutin::GlRequest::Specific(glutin::Api::OpenGlEs, (2, 0)),
+ );
+
+ let (first_builder, second_builder) = if settings.try_opengles_first {
+ (opengles_builder, opengl_builder)
+ } else {
+ (opengl_builder, opengles_builder)
+ };
+
+ let context = first_builder
+ .build_windowed(builder.clone(), &event_loop)
+ .or_else(|_| second_builder.build_windowed(builder, &event_loop))
.map_err(|error| {
use glutin::CreationError;
diff --git a/glutin/src/lib.rs b/glutin/src/lib.rs
index 224296b7..72397791 100644
--- a/glutin/src/lib.rs
+++ b/glutin/src/lib.rs
@@ -20,6 +20,7 @@ pub use iced_native::*;
pub mod application;
pub use iced_winit::clipboard;
+pub use iced_winit::conversion;
pub use iced_winit::settings;
pub use iced_winit::window;
pub use iced_winit::{Error, Mode};