Fast bowler Dhammika Prasad picked up four wickets as hosts Sri Lanka bundled out West Indies for 163 to take a first-innings lead on the second day of the second and final Test at the P Sara Oval on Friday.
Off-spinner Dilruwan Perera provided good support by picking up the last three West Indies wickets to give the hosts a lead of 37 runs.
Sri Lanka lost opener Dimuth Karunaratne to the first ball of their second innings from paceman Jerome Taylor but recovered to reach 76 for two at stumps, stretching their lead to 113.
Kaushal Silva remained unbeaten on 31 and added 55 for the second wicket with debutant Kusal Mendis (39) before the latter fell to left-arm spinner Jomel Warrican, also playing for the first time for West Indies.
In the morning, play was delayed by 30 minutes due to a wet outfield and Prasad made full use of the overcast conditions, bowling an impeccable line and length to extract movement off the pitch.
After dismissing the hosts for 200 on the opening day, West Indies would have hoped for a solid start from their batsmen after resuming on 17-1.
Nightwatchman Devendra Bishoo (13) was the first to fall, edging a wide delivery from Prasad to wicketkeeper Kusal Perera.
West Indies' batting mainstay Darren Bravo (two) then chopped Prasad on to his stumps to put the touring side in further trouble.
Opener Kraigg Brathwaite (47) tried to rebuild the innings in a fourth-wicket stand of 39 with Marlon Samuels (13) before the latter fell in the penultimate over before lunch.
All-rounder Milinda Siriwardana, who top-scored for his side with 68 in the first innings, got Samuels to edge to Angelo Mathews at slip off his left-arm spin bowling.
Siriwardana took his second wicket when Brathwaite fell shortly after lunch with the batsman unable to overturn the umpire's decision to give him out caught behind.
Prasad returned for another spell and took out Jermaine Blackwood, who made 92 in the last test, for his fourth wicket of the innings.
West Indies captain Jason Holder (21) used his power and reach to hit a few boundaries and bring down the deficit but became Dilruwan Perera's first victim of the innings.
The off-spinner dismissed Taylor (one) and Warrican (one) to finish off the innings.
Hosts Sri Lanka won the opening Test in Galle by an innings and six runs to take a 1-0 lead in the two-match series.