From fc25f9a9755c4c7bb6ef9ed7db8c7a5894915279 Mon Sep 17 00:00:00 2001 From: Maciej Bielecki Date: Fri, 27 Oct 2023 19:47:51 +0200 Subject: [PATCH 1/3] Fix not all pixels being filled on clear(On) Currently `clear()` fills the buffer with `0x01` bytes, which represent 7 dark pixels and 1 bright pixel. We want all pixels bright. --- src/mode/buffered_graphics.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mode/buffered_graphics.rs b/src/mode/buffered_graphics.rs index 6a9cfb66..fe5e82c4 100644 --- a/src/mode/buffered_graphics.rs +++ b/src/mode/buffered_graphics.rs @@ -69,7 +69,7 @@ where SIZE: DisplaySize, { fn clear_impl(&mut self, value: bool) { - self.mode.buffer.as_mut().fill(value as u8); + self.mode.buffer.as_mut().fill(if value { 0xff } else { 0 }); let (width, height) = self.dimensions(); self.mode.min_x = 0; From b1d5469e9d627d7490f78e93732de4921975302f Mon Sep 17 00:00:00 2001 From: Maciej Bielecki Date: Fri, 27 Oct 2023 17:57:11 +0000 Subject: [PATCH 2/3] Add changelog entry --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b9938549..0186f44d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ SSD1306 monochrome OLED display. ## [Unreleased] - ReleaseDate +### Fixed + +- Fixed `BufferedGraphicsMode::clear(On)` such that it fills all pixels with `On`, not only some. + ## [0.8.3] - 2023-10-09 ### Changed From 21929b00dc4b50a72c8da7c988501b434b8a250a Mon Sep 17 00:00:00 2001 From: Maciej Bielecki Date: Fri, 27 Oct 2023 18:04:36 +0000 Subject: [PATCH 3/3] PR link in changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0186f44d..f492a7c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ SSD1306 monochrome OLED display. ### Fixed -- Fixed `BufferedGraphicsMode::clear(On)` such that it fills all pixels with `On`, not only some. +- [#201](https://github.com/jamwaffles/ssd1306/pull/201) Fixed `BufferedGraphicsMode::clear(On)` such that it fills all pixels with `On`, not only some. ## [0.8.3] - 2023-10-09