[API review]Move drawing logic to drawers

Close #1106.
can we move this logic into the area drawer?