aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndre Weissflog <floooh@gmail.com>2019-06-11 18:06:07 +0200
committerAndre Weissflog <floooh@gmail.com>2019-06-11 18:06:07 +0200
commitd9a806a371d582f0bf58bd478e1df43cfbbebb53 (patch)
treeb59aa8bbc6e437d96172dbb2a22dbe1c5dc4f492
parentc4818e83a3c3ba0f1325aaad8ae50d169758a8db (diff)
sokol_app.h emsc: cleanup window/fb size oddity in (fixes #168)
-rw-r--r--sokol_app.h19
1 files changed, 9 insertions, 10 deletions
diff --git a/sokol_app.h b/sokol_app.h
index 6108044c..98625b3c 100644
--- a/sokol_app.h
+++ b/sokol_app.h
@@ -2136,13 +2136,11 @@ _SOKOL_PRIVATE EM_BOOL _sapp_emsc_size_changed(int event_type, const EmscriptenU
}
if (_sapp.desc.high_dpi) {
_sapp.dpi_scale = emscripten_get_device_pixel_ratio();
- w *= _sapp.dpi_scale;
- h *= _sapp.dpi_scale;
}
- _sapp.framebuffer_width = (int) w;
- _sapp.framebuffer_height = (int) h;
+ _sapp.framebuffer_width = (int) (w * _sapp.dpi_scale);
+ _sapp.framebuffer_height = (int) (h * _sapp.dpi_scale);
SOKOL_ASSERT((_sapp.framebuffer_width > 0) && (_sapp.framebuffer_height > 0));
- emscripten_set_canvas_element_size(_sapp.html5_canvas_name, w, h);
+ emscripten_set_canvas_element_size(_sapp.html5_canvas_name, _sapp.framebuffer_width, _sapp.framebuffer_height);
if (_sapp_events_enabled()) {
_sapp_init_event(SAPP_EVENTTYPE_RESIZED);
_sapp_call_event(&_sapp.event);
@@ -2539,12 +2537,13 @@ _SOKOL_PRIVATE void _sapp_run(const sapp_desc* desc) {
}
if (_sapp.desc.high_dpi) {
_sapp.dpi_scale = emscripten_get_device_pixel_ratio();
- w *= _sapp.dpi_scale;
- h *= _sapp.dpi_scale;
}
- emscripten_set_canvas_element_size(_sapp.html5_canvas_name, w, h);
- _sapp.framebuffer_width = (int) w;
- _sapp.framebuffer_height = (int) h;
+ _sapp.window_width = (int) w;
+ _sapp.window_height = (int) h;
+ _sapp.framebuffer_width = (int) (w * _sapp.dpi_scale);
+ _sapp.framebuffer_height = (int) (h * _sapp.dpi_scale);
+ emscripten_set_canvas_element_size(_sapp.html5_canvas_name, _sapp.framebuffer_width, _sapp.framebuffer_height);
+
EmscriptenWebGLContextAttributes attrs;
emscripten_webgl_init_context_attributes(&attrs);
attrs.alpha = _sapp.desc.alpha;