diff --git a/ghcidOutput b/ghcidOutput index 224c30218..9fea840d1 100644 --- a/ghcidOutput +++ b/ghcidOutput @@ -1 +1 @@ -All good (593 modules, at 11:22:57) +All good (593 modules, at 12:39:43) diff --git a/src/Dodge/Update.hs b/src/Dodge/Update.hs index ff622105d..5196c9d82 100644 --- a/src/Dodge/Update.hs +++ b/src/Dodge/Update.hs @@ -166,8 +166,12 @@ updateUniverseMid u = case _uvScreenLayers u of . updateClouds ) (sl : _) -> u & updateUseInputOnScreen sl - [] -> timeFlowUpdate . updateUseInputInGame $ over uvWorld - (updateMouseInGame (u ^. uvConfig)) u + [] -> + timeFlowUpdate . updateUseInputInGame $ + over + uvWorld + (updateMouseInGame (u ^. uvConfig)) + u timeFlowUpdate :: Universe -> Universe timeFlowUpdate u = case u ^. uvWorld . timeFlow of @@ -287,7 +291,7 @@ functionalUpdate u = . over uvWorld updateRBList . over uvWorld updateCloseObjects . over uvWorld updateWheelEvents --- . over uvWorld (updateMouseInventorySelection (u ^. uvConfig)) + -- . over uvWorld (updateMouseInventorySelection (u ^. uvConfig)) . over uvWorld zoneClouds . over uvWorld zoneCreatures -- . over uvWorld updateInventorySelectionList @@ -308,10 +312,11 @@ updateMouseContext :: Configuration -> Universe -> Universe updateMouseContext cfig u = case u ^. uvWorld . input . mouseContext of OverInvDrag i _ _ _ -> u & uvWorld . input . mouseContext .~ invdrag i OverInvDragSelect{} -> u - _ -> u & uvWorld . input . mouseContext - .~ fromMaybe - aimcontext - (overmenu <|> overinv <|> overcomb <|> overterm) + _ -> + u & uvWorld . input . mouseContext + .~ fromMaybe + aimcontext + (overmenu <|> overinv <|> overcomb <|> overterm) where overmenu = do screen <- u ^? uvScreenLayers . ix 0 @@ -320,7 +325,11 @@ updateMouseContext cfig u = case u ^. uvWorld . input . mouseContext of _ -> fromMaybe MouseMenuCursor $ do ldps <- screen ^? scListDisplayParams let ymax = maybe 0 length $ screen ^? scSelectionList - yi <- ldpVerticalSelection (u ^. uvConfig) ldps (u ^. uvWorld . input . mousePos) + yi <- + ldpVerticalSelection + (u ^. uvConfig) + ldps + (u ^. uvWorld . input . mousePos) guard (yi >= 0 && yi < ymax) return $ if isselectable yi @@ -329,7 +338,6 @@ updateMouseContext cfig u = case u ^. uvWorld . input . mouseContext of isselectable yi = fromMaybe False $ u ^? uvScreenLayers . _head . scSelectionList . ix yi . siIsSelectable - -- mmoving = u ^. uvWorld . input . mouseMoving w = u ^. uvWorld aimcontext | ButtonRight `M.member` (w ^. input . mouseButtons) = MouseAiming @@ -338,10 +346,10 @@ updateMouseContext cfig u = case u ^. uvWorld . input . mouseContext of invdrag i' = fromMaybe (OverInvDrag i' Nothing Nothing Nothing) $ do sss <- w ^? hud . hudElement . diSections let yint = posSelSecYint cfig (invDisplayParams w) (mpos ^. _y) - (i,j) <- inverseSelNumPos cfig (invDisplayParams w) sss mpos + (i, j) <- inverseSelNumPos cfig (invDisplayParams w) sss mpos let above = inverseSelSecYint (yint - 1) sss bneath = inverseSelSecYint (yint + 1) sss - return $ OverInvDrag i' (Just (i,j)) above bneath + return $ OverInvDrag i' (Just (i, j)) above bneath overinv = do sss <- w ^? hud . hudElement . diSections selpos <- inverseSelNumPos cfig (invDisplayParams w) sss mpos @@ -356,7 +364,7 @@ updateMouseContext cfig u = case u ^. uvWorld . input . mouseContext of let mpossel = inverseSelNumPos cfig secondColumnParams sss (w ^. input . mousePos) return $ case mpossel of Nothing -> OverCombEscape - Just (-1, i) | (-1,i) == msel -> OverCombFilter + Just (-1, i) | (-1, i) == msel -> OverCombFilter Just x | x == msel -> OverCombCombine x Just x -> OverCombSelect x overterm = do @@ -364,11 +372,10 @@ updateMouseContext cfig u = case u ^. uvWorld . input . mouseContext of tm <- w ^? cWorld . lWorld . terminals . ix tmid return $ if isOverTerminalScreen cfig tm mpos - then - fromMaybe NoMouseContext $ do - let s = tm ^. tmInput . tiText - guard $ not (null s) && _tmStatus tm == TerminalReady - return $ OverTerminalReturn tmid + then fromMaybe NoMouseContext $ do + let s = tm ^. tmInput . tiText + guard $ not (null s) && _tmStatus tm == TerminalReady + return $ OverTerminalReturn tmid else OverTerminalEscape isOverTerminalScreen :: Configuration -> Terminal -> Point2 -> Bool diff --git a/src/Dodge/Update/Input/InGame.hs b/src/Dodge/Update/Input/InGame.hs index c5bc9791e..0b3639153 100644 --- a/src/Dodge/Update/Input/InGame.hs +++ b/src/Dodge/Update/Input/InGame.hs @@ -205,7 +205,7 @@ startDrag (a, b) cfig w = fromMaybe (augInvDirectSelect (a, b) $ setmichosen mem setmichosen :: IS.IntSet -> World -> World setmichosen x = (input . mouseContext .~ OverInvDrag a (Just (a, b)) above bneath) - . (hud . hudElement . diSelectionExtra .~ x) + . (hud . hudElement . diSelectionExtra .~ IS.insert b x) above :: Maybe (Int,Int) above = do sss <- w ^? hud . hudElement . diSections