From 9bb66f0113ffb8c7cb0f17c4c3f96804e7fae8a5 Mon Sep 17 00:00:00 2001 From: Alexander Bondarenko <486682+dpwiz@users.noreply.github.com> Date: Mon, 12 Dec 2022 20:57:54 +0300 Subject: [PATCH] Fix the text fix and prepare 2.1.3 (#167) --- ChangeLog.md | 7 +++++++ dear-imgui.cabal | 2 +- src/DearImGui/Internal/Text.hs | 9 ++++----- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index 8196f27..856b596 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -1,5 +1,11 @@ # Changelog for dear-imgui +## [2.1.3] + +- Fixed off-by-1 in internal Text wrapper. +- Fixed sliderFloat* Raw calls +- Added `formatPtr` to Raw.dragFloat* and Raw.sliderFloat* + ## [2.1.2] - Fixed glfw example build flags. @@ -100,6 +106,7 @@ Initial Hackage release based on [1.83]. [2.1.0]: https://github.com/haskell-game/dear-imgui.hs/tree/v2.1.0 [2.1.1]: https://github.com/haskell-game/dear-imgui.hs/tree/v2.1.1 [2.1.2]: https://github.com/haskell-game/dear-imgui.hs/tree/v2.1.2 +[2.1.3]: https://github.com/haskell-game/dear-imgui.hs/tree/v2.1.3 [1.87]: https://github.com/ocornut/imgui/releases/tag/v1.87 [1.86]: https://github.com/ocornut/imgui/releases/tag/v1.86 diff --git a/dear-imgui.cabal b/dear-imgui.cabal index f99a8c9..317577e 100644 --- a/dear-imgui.cabal +++ b/dear-imgui.cabal @@ -1,7 +1,7 @@ cabal-version: 3.0 name: dear-imgui -version: 2.1.2 +version: 2.1.3 author: Oliver Charles maintainer: ollie@ocharles.org.uk, aenor.realm@gmail.com license: BSD-3-Clause diff --git a/src/DearImGui/Internal/Text.hs b/src/DearImGui/Internal/Text.hs index 543cedb..4f69571 100644 --- a/src/DearImGui/Internal/Text.hs +++ b/src/DearImGui/Internal/Text.hs @@ -13,7 +13,6 @@ module DearImGui.Internal.Text ) where -- base -import Control.Monad.IO.Class (liftIO) import Foreign (nullPtr, plusPtr) import Foreign.C.String (CString) import qualified GHC.Foreign as Foreign @@ -34,7 +33,8 @@ import qualified Data.Text.Foreign as Text withCString :: MonadUnliftIO m => Text -> (CString -> m a) -> m a withCString text action = withUnliftIO $ \(UnliftIO unlift) -> - Text.withCString text (unlift action) + Text.withCString text $ \buf -> + unlift $ action buf #elif MIN_VERSION_text(2,0,0) -- XXX: the text is UTF-8, alas no withCString is available @@ -57,9 +57,8 @@ withCString t@(Text _arr _off len) action = withCString :: MonadUnliftIO m => Text -> (CString -> m a) -> m a withCString t action = do withUnliftIO $ \(UnliftIO unlift) -> - liftIO $ - Foreign.withCString utf8 (unpack t) $ \textPtr -> - unlift $ action textPtr + Foreign.withCString utf8 (unpack t) $ \textPtr -> + unlift $ action textPtr #endif