on master help sign in
addMaybeClipped: skip blit of joins when their primary dimension is zero
cf3bd4cJonathan Daugherty
src/Graphics/Vty/PictureToSpans.hs+12−10
@@ -259,17 +259,19 @@ addMaybeClipped (HorizText a textStr ow _cw) = do
259 in addUnclippedText a textStr'
259 in addUnclippedText a textStr'
260 else addUnclippedText a textStr
260 else addUnclippedText a textStr
261addMaybeClipped (VertJoin topImage bottomImage _ow oh) = do
261addMaybeClipped (VertJoin topImage bottomImage _ow oh) = do
262+ when (imageHeight topImage + imageHeight bottomImage > 0) $
262− addMaybeClippedJoin "vert_join" skipRows remainingRows rowOffset
263+ addMaybeClippedJoin "vert_join" skipRows remainingRows rowOffset
263− (imageHeight topImage)
264+ (imageHeight topImage)
264− topImage
265+ topImage
265− bottomImage
266+ bottomImage
266− oh
267+ oh
267addMaybeClipped (HorizJoin leftImage rightImage ow _oh) = do
268addMaybeClipped (HorizJoin leftImage rightImage ow _oh) = do
269+ when (imageWidth leftImage + imageWidth rightImage > 0) $
268− addMaybeClippedJoin "horiz_join" skipColumns remainingColumns columnOffset
270+ addMaybeClippedJoin "horiz_join" skipColumns remainingColumns columnOffset
269− (imageWidth leftImage)
271+ (imageWidth leftImage)
270− leftImage
272+ leftImage
271− rightImage
273+ rightImage
272− ow
274+ ow
273addMaybeClipped BGFill {outputWidth, outputHeight} = do
275addMaybeClipped BGFill {outputWidth, outputHeight} = do
274 s <- get
276 s <- get
275 let outputWidth' = min (outputWidth - s^.skipColumns) (s^.remainingColumns)
277 let outputWidth' = min (outputWidth - s^.skipColumns) (s^.remainingColumns)