brick 2.8.2 → 2.8.3
raw patch · 5 files changed
+15/−4 lines, 5 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Brick.BorderMap: eBottomL :: forall a_afCd. Lens' (Edges a_afCd) a_afCd
+ Brick.BorderMap: eBottomL :: forall a_afCk. Lens' (Edges a_afCk) a_afCk
- Brick.BorderMap: eLeftL :: forall a_afCd. Lens' (Edges a_afCd) a_afCd
+ Brick.BorderMap: eLeftL :: forall a_afCk. Lens' (Edges a_afCk) a_afCk
- Brick.BorderMap: eRightL :: forall a_afCd. Lens' (Edges a_afCd) a_afCd
+ Brick.BorderMap: eRightL :: forall a_afCk. Lens' (Edges a_afCk) a_afCk
- Brick.BorderMap: eTopL :: forall a_afCd. Lens' (Edges a_afCd) a_afCd
+ Brick.BorderMap: eTopL :: forall a_afCk. Lens' (Edges a_afCk) a_afCk
- Brick.Types: availHeightL :: forall n_atym. Lens' (Context n_atym) Int
+ Brick.Types: availHeightL :: forall n_atyt. Lens' (Context n_atyt) Int
- Brick.Types: availWidthL :: forall n_atym. Lens' (Context n_atym) Int
+ Brick.Types: availWidthL :: forall n_atyt. Lens' (Context n_atyt) Int
- Brick.Types: bordersL :: forall n_atyq. Lens' (Result n_atyq) (BorderMap DynBorder)
+ Brick.Types: bordersL :: forall n_atyx. Lens' (Result n_atyx) (BorderMap DynBorder)
- Brick.Types: ctxAttrMapL :: forall n_atym. Lens' (Context n_atym) AttrMap
+ Brick.Types: ctxAttrMapL :: forall n_atyt. Lens' (Context n_atyt) AttrMap
- Brick.Types: ctxAttrNameL :: forall n_atym. Lens' (Context n_atym) AttrName
+ Brick.Types: ctxAttrNameL :: forall n_atyt. Lens' (Context n_atyt) AttrName
- Brick.Types: ctxBorderStyleL :: forall n_atym. Lens' (Context n_atym) BorderStyle
+ Brick.Types: ctxBorderStyleL :: forall n_atyt. Lens' (Context n_atyt) BorderStyle
- Brick.Types: ctxDynBordersL :: forall n_atym. Lens' (Context n_atym) Bool
+ Brick.Types: ctxDynBordersL :: forall n_atyt. Lens' (Context n_atyt) Bool
- Brick.Types: ctxHScrollBarOrientationL :: forall n_atym. Lens' (Context n_atym) (Maybe HScrollBarOrientation)
+ Brick.Types: ctxHScrollBarOrientationL :: forall n_atyt. Lens' (Context n_atyt) (Maybe HScrollBarOrientation)
- Brick.Types: ctxHScrollBarRendererL :: forall n_atym. Lens' (Context n_atym) (Maybe (HScrollbarRenderer n_atym))
+ Brick.Types: ctxHScrollBarRendererL :: forall n_atyt. Lens' (Context n_atyt) (Maybe (HScrollbarRenderer n_atyt))
- Brick.Types: ctxVScrollBarOrientationL :: forall n_atym. Lens' (Context n_atym) (Maybe VScrollBarOrientation)
+ Brick.Types: ctxVScrollBarOrientationL :: forall n_atyt. Lens' (Context n_atyt) (Maybe VScrollBarOrientation)
- Brick.Types: ctxVScrollBarRendererL :: forall n_atym. Lens' (Context n_atym) (Maybe (VScrollbarRenderer n_atym))
+ Brick.Types: ctxVScrollBarRendererL :: forall n_atyt. Lens' (Context n_atyt) (Maybe (VScrollbarRenderer n_atyt))
- Brick.Types: cursorLocationL :: forall n_atyr. Lens' (CursorLocation n_atyr) Location
+ Brick.Types: cursorLocationL :: forall n_atyy. Lens' (CursorLocation n_atyy) Location
- Brick.Types: cursorLocationNameL :: forall n_atyr n_aw7M. Lens (CursorLocation n_atyr) (CursorLocation n_aw7M) (Maybe n_atyr) (Maybe n_aw7M)
+ Brick.Types: cursorLocationNameL :: forall n_atyy n_aw7T. Lens (CursorLocation n_atyy) (CursorLocation n_aw7T) (Maybe n_atyy) (Maybe n_aw7T)
- Brick.Types: cursorsL :: forall n_atyq. Lens' (Result n_atyq) [CursorLocation n_atyq]
+ Brick.Types: cursorsL :: forall n_atyx. Lens' (Result n_atyx) [CursorLocation n_atyx]
- Brick.Types: eBottomL :: forall a_afCd. Lens' (Edges a_afCd) a_afCd
+ Brick.Types: eBottomL :: forall a_afCk. Lens' (Edges a_afCk) a_afCk
- Brick.Types: eLeftL :: forall a_afCd. Lens' (Edges a_afCd) a_afCd
+ Brick.Types: eLeftL :: forall a_afCk. Lens' (Edges a_afCk) a_afCk
- Brick.Types: eRightL :: forall a_afCd. Lens' (Edges a_afCd) a_afCd
+ Brick.Types: eRightL :: forall a_afCk. Lens' (Edges a_afCk) a_afCk
- Brick.Types: eTopL :: forall a_afCd. Lens' (Edges a_afCd) a_afCd
+ Brick.Types: eTopL :: forall a_afCk. Lens' (Edges a_afCk) a_afCk
- Brick.Types: extentsL :: forall n_atyq. Lens' (Result n_atyq) [Extent n_atyq]
+ Brick.Types: extentsL :: forall n_atyx. Lens' (Result n_atyx) [Extent n_atyx]
- Brick.Types: imageL :: forall n_atyq. Lens' (Result n_atyq) Image
+ Brick.Types: imageL :: forall n_atyx. Lens' (Result n_atyx) Image
- Brick.Types: visibilityRequestsL :: forall n_atyq. Lens' (Result n_atyq) [VisibilityRequest]
+ Brick.Types: visibilityRequestsL :: forall n_atyx. Lens' (Result n_atyx) [VisibilityRequest]
- Brick.Types: windowHeightL :: forall n_atym. Lens' (Context n_atym) Int
+ Brick.Types: windowHeightL :: forall n_atyt. Lens' (Context n_atyt) Int
- Brick.Types: windowWidthL :: forall n_atym. Lens' (Context n_atym) Int
+ Brick.Types: windowWidthL :: forall n_atyt. Lens' (Context n_atyt) Int
- Brick.Widgets.Dialog: dialogButtonsL :: forall a_a1gyx n_a1gyy a_a1gzv. Lens (Dialog a_a1gyx n_a1gyy) (Dialog a_a1gzv n_a1gyy) [(String, n_a1gyy, a_a1gyx)] [(String, n_a1gyy, a_a1gzv)]
+ Brick.Widgets.Dialog: dialogButtonsL :: forall a_a1gAD n_a1gAE a_a1gBB. Lens (Dialog a_a1gAD n_a1gAE) (Dialog a_a1gBB n_a1gAE) [(String, n_a1gAE, a_a1gAD)] [(String, n_a1gAE, a_a1gBB)]
- Brick.Widgets.Dialog: dialogTitleL :: forall a_a1gyx n_a1gyy. Lens' (Dialog a_a1gyx n_a1gyy) (Maybe (Widget n_a1gyy))
+ Brick.Widgets.Dialog: dialogTitleL :: forall a_a1gAD n_a1gAE. Lens' (Dialog a_a1gAD n_a1gAE) (Maybe (Widget n_a1gAE))
- Brick.Widgets.Dialog: dialogWidthL :: forall a_a1gyx n_a1gyy. Lens' (Dialog a_a1gyx n_a1gyy) Int
+ Brick.Widgets.Dialog: dialogWidthL :: forall a_a1gAD n_a1gAE. Lens' (Dialog a_a1gAD n_a1gAE) Int
- Brick.Widgets.Edit: editContentsL :: forall t_a19GI n_a19GJ t_a19Ht. Lens (Editor t_a19GI n_a19GJ) (Editor t_a19Ht n_a19GJ) (TextZipper t_a19GI) (TextZipper t_a19Ht)
+ Brick.Widgets.Edit: editContentsL :: forall t_a19IO n_a19IP t_a19Jz. Lens (Editor t_a19IO n_a19IP) (Editor t_a19Jz n_a19IP) (TextZipper t_a19IO) (TextZipper t_a19Jz)
- Brick.Widgets.FileBrowser: fileBrowserEntriesG :: forall n_a1syX. SimpleGetter (FileBrowser n_a1syX) (List n_a1syX FileInfo)
+ Brick.Widgets.FileBrowser: fileBrowserEntriesG :: forall n_a1sB3. SimpleGetter (FileBrowser n_a1sB3) (List n_a1sB3 FileInfo)
- Brick.Widgets.FileBrowser: fileBrowserEntryFilterG :: forall n_a1syX. SimpleGetter (FileBrowser n_a1syX) (Maybe (FileInfo -> Bool))
+ Brick.Widgets.FileBrowser: fileBrowserEntryFilterG :: forall n_a1sB3. SimpleGetter (FileBrowser n_a1sB3) (Maybe (FileInfo -> Bool))
- Brick.Widgets.FileBrowser: fileBrowserExceptionG :: forall n_a1syX. SimpleGetter (FileBrowser n_a1syX) (Maybe IOException)
+ Brick.Widgets.FileBrowser: fileBrowserExceptionG :: forall n_a1sB3. SimpleGetter (FileBrowser n_a1sB3) (Maybe IOException)
- Brick.Widgets.FileBrowser: fileBrowserLatestResultsG :: forall n_a1syX. SimpleGetter (FileBrowser n_a1syX) [FileInfo]
+ Brick.Widgets.FileBrowser: fileBrowserLatestResultsG :: forall n_a1sB3. SimpleGetter (FileBrowser n_a1sB3) [FileInfo]
- Brick.Widgets.FileBrowser: fileBrowserNameG :: forall n_a1syX. SimpleGetter (FileBrowser n_a1syX) n_a1syX
+ Brick.Widgets.FileBrowser: fileBrowserNameG :: forall n_a1sB3. SimpleGetter (FileBrowser n_a1sB3) n_a1sB3
- Brick.Widgets.FileBrowser: fileBrowserSearchStringG :: forall n_a1syX. SimpleGetter (FileBrowser n_a1syX) (Maybe Text)
+ Brick.Widgets.FileBrowser: fileBrowserSearchStringG :: forall n_a1sB3. SimpleGetter (FileBrowser n_a1sB3) (Maybe Text)
- Brick.Widgets.FileBrowser: fileBrowserSelectableG :: forall n_a1syX. SimpleGetter (FileBrowser n_a1syX) (FileInfo -> Bool)
+ Brick.Widgets.FileBrowser: fileBrowserSelectableG :: forall n_a1sB3. SimpleGetter (FileBrowser n_a1sB3) (FileInfo -> Bool)
- Brick.Widgets.FileBrowser: fileBrowserSelectableL :: forall n_a1syX. Lens' (FileBrowser n_a1syX) (FileInfo -> Bool)
+ Brick.Widgets.FileBrowser: fileBrowserSelectableL :: forall n_a1sB3. Lens' (FileBrowser n_a1sB3) (FileInfo -> Bool)
- Brick.Widgets.FileBrowser: fileBrowserSelectedFilesG :: forall n_a1syX. SimpleGetter (FileBrowser n_a1syX) (Set String)
+ Brick.Widgets.FileBrowser: fileBrowserSelectedFilesG :: forall n_a1sB3. SimpleGetter (FileBrowser n_a1sB3) (Set String)
- Brick.Widgets.FileBrowser: fileBrowserWorkingDirectoryG :: forall n_a1syX. SimpleGetter (FileBrowser n_a1syX) FilePath
+ Brick.Widgets.FileBrowser: fileBrowserWorkingDirectoryG :: forall n_a1sB3. SimpleGetter (FileBrowser n_a1sB3) FilePath
- Brick.Widgets.List: listElementsL :: forall n_a1n6y t_a1n6z e_a1n6A t_a1nmc e_a1nmd. Lens (GenericList n_a1n6y t_a1n6z e_a1n6A) (GenericList n_a1n6y t_a1nmc e_a1nmd) (t_a1n6z e_a1n6A) (t_a1nmc e_a1nmd)
+ Brick.Widgets.List: listElementsL :: forall n_a1n8E t_a1n8F e_a1n8G t_a1noi e_a1noj. Lens (GenericList n_a1n8E t_a1n8F e_a1n8G) (GenericList n_a1n8E t_a1noi e_a1noj) (t_a1n8F e_a1n8G) (t_a1noi e_a1noj)
- Brick.Widgets.List: listItemHeightL :: forall n_a1n6y t_a1n6z e_a1n6A. Lens' (GenericList n_a1n6y t_a1n6z e_a1n6A) Int
+ Brick.Widgets.List: listItemHeightL :: forall n_a1n8E t_a1n8F e_a1n8G. Lens' (GenericList n_a1n8E t_a1n8F e_a1n8G) Int
- Brick.Widgets.List: listNameL :: forall n_a1n6y t_a1n6z e_a1n6A n_a1nme. Lens (GenericList n_a1n6y t_a1n6z e_a1n6A) (GenericList n_a1nme t_a1n6z e_a1n6A) n_a1n6y n_a1nme
+ Brick.Widgets.List: listNameL :: forall n_a1n8E t_a1n8F e_a1n8G n_a1nok. Lens (GenericList n_a1n8E t_a1n8F e_a1n8G) (GenericList n_a1nok t_a1n8F e_a1n8G) n_a1n8E n_a1nok
- Brick.Widgets.List: listSelectedL :: forall n_a1n6y t_a1n6z e_a1n6A. Lens' (GenericList n_a1n6y t_a1n6z e_a1n6A) (Maybe Int)
+ Brick.Widgets.List: listSelectedL :: forall n_a1n8E t_a1n8F e_a1n8G. Lens' (GenericList n_a1n8E t_a1n8F e_a1n8G) (Maybe Int)
Files
- CHANGELOG.md +9/−0
- README.md +1/−0
- brick.cabal +1/−1
- src/Brick/Widgets/Core.hs +4/−2
- src/Brick/Widgets/Internal.hs +0/−1
CHANGELOG.md view
@@ -2,6 +2,15 @@ Brick changelog --------------- +2.8.3+-----++Bug fixes:++* Fixed a bug that completely broken `makeVisible` that was introduced+ in brick 2.6.+* Fixed context cropping in `cropRightBy` and `cropBottomBy`.+ 2.8.2 -----
README.md view
@@ -77,6 +77,7 @@ | [`kpxhs`](https://github.com/akazukin5151/kpxhs) | An interactive [Keepass](https://github.com/keepassxreboot/keepassxc/) database viewer | | [`matterhorn`](https://github.com/matterhorn-chat/matterhorn) | A client for [Mattermost](https://about.mattermost.com/) | | [`maze`](https://github.com/benjaminselfridge/maze) | A Brick-based maze game |+| [`monad-torrent`](https://github.com/davorluc/monad-torrent) | A simple and minimal torrent client | | [`monalog`](https://github.com/goosedb/Monalog) | Terminal logs observer | | [`mushu`](https://github.com/elaye/mushu) | An `MPD` client | | [`mywork`](https://github.com/kquick/mywork) [[Hackage]](https://hackage.haskell.org/package/mywork) | A tool to keep track of the projects you are working on |
brick.cabal view
@@ -1,5 +1,5 @@ name: brick-version: 2.8.2+version: 2.8.3 synopsis: A declarative terminal user interface library description: Write terminal user interfaces (TUIs) painlessly with 'brick'! You
src/Brick/Widgets/Core.hs view
@@ -1138,7 +1138,8 @@ result <- render p let amt = V.imageWidth (result^.imageL) - cols cropped img = if amt < 0 then V.emptyImage else V.cropRight amt img- cropResultToContext $ result & imageL %~ cropped+ withReaderT (availWidthL .~ amt) $+ cropResultToContext $ result & imageL %~ cropped -- | Crop the specified widget to the specified size from the right. -- Defers to the cropped widget for growth policy.@@ -1186,7 +1187,8 @@ result <- render p let amt = V.imageHeight (result^.imageL) - rows cropped img = if amt < 0 then V.emptyImage else V.cropBottom amt img- cropResultToContext $ result & imageL %~ cropped+ withReaderT (availHeightL .~ amt) $+ cropResultToContext $ result & imageL %~ cropped -- | Crop the specified widget to the specified size from the bottom. -- Defers to the cropped widget for growth policy.
src/Brick/Widgets/Internal.hs view
@@ -40,7 +40,6 @@ resetRs = rs & reportedExtentsL .~ mempty & observedNamesL .~ mempty & clickableNamesL .~ mempty- & requestedVisibleNames_L .~ mempty (layerResults, !newRS) = flip runState resetRs $ sequence $ (\p -> runReaderT p ctx) <$>