One easy way to make graphics in widgets resolution independent is to use CSS to achieve graphical effects instead of images for things like borders, backgrounds and text. When you need to use bitmap images, you can create a 1x image and a 2x image to make sure your image looks crisp when it is displayed. If you use SVG or PDF images, they are resolution independent already (as long as you don't include pixels in them).