widget support

Signed-off-by: dunkebiao <dunkebiao@163.com>