Skip to content

Commit

Permalink
Fix Window::set_inner_size()
Browse files Browse the repository at this point in the history
  • Loading branch information
daxpedda committed Jun 7, 2023
1 parent 29d3729 commit d95af22
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 11 deletions.
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,8 @@ And please only add new entries to the top of this list, right below the `# Unre
- On Wayland, drop `WINIT_WAYLAND_CSD_THEME` variable.
- Implement `PartialOrd` and `Ord` on types in the `dpi` module.
- **Breaking:** Bump MSRV from `1.60` to `1.64`.
- **Breaking:** On Web, the canvas output bitmap size is no longer adjusted.
- **Breaking:** On Web, `Window::(set_)inner_size()` will return/change the visual canvas size
instead of the internal canvas size.
- On Web: fix `Window::request_redraw` not waking the event loop when called from outside the loop.
- On Web: fix position of touch events to be relative to the canvas.
- On Web, fix `Window:::set_fullscreen` doing nothing when called outside the event loop but during
Expand Down
14 changes: 4 additions & 10 deletions src/platform_impl/web/web_sys/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -73,17 +73,11 @@ pub fn scale_factor(window: &web_sys::Window) -> f64 {

pub fn set_canvas_size(canvas: &Canvas, new_size: Size) {
let scale_factor = scale_factor(canvas.window());
let new_size = new_size.to_physical(scale_factor);

let physical_size = new_size.to_physical(scale_factor);
canvas.size().set(physical_size);

let logical_size = new_size.to_logical::<f64>(scale_factor);
set_canvas_style_property(canvas.raw(), "width", &format!("{}px", logical_size.width));
set_canvas_style_property(
canvas.raw(),
"height",
&format!("{}px", logical_size.height),
);
canvas.size().set(new_size);
set_canvas_style_property(canvas.raw(), "width", &format!("{}px", new_size.width));
set_canvas_style_property(canvas.raw(), "height", &format!("{}px", new_size.height));
}

pub fn set_canvas_style_property(raw: &HtmlCanvasElement, property: &str, value: &str) {
Expand Down

0 comments on commit d95af22

Please sign in to comment.