The activity log's issue is that the row height is currently a fixed value. You're correctly calculating the font size in CalculateDPIValues() but you need to also calculate a variable sized row height in there and use that in all places in the code where you're using the ROW_HEIGHT constant.