@@ -1066,29 +1066,21 @@ def get_window_extent(self, renderer=None):
10661066 if renderer is None :
10671067 renderer = self .figure ._get_renderer ()
10681068
1069- self ._update_offset_func (renderer )
1070- w , h , xd , yd = self .get_extent (renderer )
1071- ox , oy = self .get_offset (w , h , xd , yd , renderer )
1072- return Bbox .from_bounds (ox - xd , oy - yd , w , h )
1073-
1074- def _update_offset_func (self , renderer , fontsize = None ):
1075- """
1076- Update the offset func which depends on the dpi of the
1077- renderer (because of the padding).
1078- """
1079- if fontsize is None :
1080- fontsize = renderer .points_to_pixels (
1081- self .prop .get_size_in_points ())
1069+ # Update the offset func, which depends on the dpi of the renderer
1070+ # (because of the padding).
1071+ fontsize = renderer .points_to_pixels (self .prop .get_size_in_points ())
10821072
10831073 def _offset (w , h , xd , yd , renderer ):
10841074 bbox = Bbox .from_bounds (0 , 0 , w , h )
1085- borderpad = self .borderpad * fontsize
1075+ pad = self .borderpad * fontsize
10861076 bbox_to_anchor = self .get_bbox_to_anchor ()
1087- x0 , y0 = _get_anchored_bbox (
1088- self .loc , bbox , bbox_to_anchor , borderpad )
1077+ x0 , y0 = _get_anchored_bbox (self .loc , bbox , bbox_to_anchor , pad )
10891078 return x0 + xd , y0 + yd
10901079
10911080 self .set_offset (_offset )
1081+ w , h , xd , yd = self .get_extent (renderer )
1082+ ox , oy = self .get_offset (w , h , xd , yd , renderer )
1083+ return Bbox .from_bounds (ox - xd , oy - yd , w , h )
10921084
10931085 def update_frame (self , bbox , fontsize = None ):
10941086 self .patch .set_bounds (bbox .bounds )
@@ -1100,11 +1092,9 @@ def draw(self, renderer):
11001092 if not self .get_visible ():
11011093 return
11021094
1103- fontsize = renderer .points_to_pixels (self .prop .get_size_in_points ())
1104- self ._update_offset_func (renderer , fontsize )
1105-
11061095 # update the location and size of the legend
11071096 bbox = self .get_window_extent (renderer )
1097+ fontsize = renderer .points_to_pixels (self .prop .get_size_in_points ())
11081098 self .update_frame (bbox , fontsize )
11091099 self .patch .draw (renderer )
11101100
0 commit comments