ColorToolButton, ToggleToolButton: do the drawing in the correct order - SL #4303
1. if the palette is up, draw the black background 2. draw the button itself 3. if the palette is up, draw the grey outline Exactly as the ToolButton does. Otherwise the outline is not visible. Signed-off-by: Manuel Quiñones <manuq@laptop.org> Acked-by: Simon Schampijer <simon@laptop.org>
This commit is contained in:
		
							parent
							
								
									4de6057e1b
								
							
						
					
					
						commit
						8a9d10cda7
					
				| @ -541,18 +541,20 @@ class ColorToolButton(Gtk.ToolItem): | |||||||
| 
 | 
 | ||||||
|     def do_draw(self, cr): |     def do_draw(self, cr): | ||||||
|         child = self.get_child() |         child = self.get_child() | ||||||
|         allocation = self.get_allocation() |  | ||||||
|         if self._palette and self._palette.is_up(): |         if self._palette and self._palette.is_up(): | ||||||
|             invoker = self._palette.props.invoker |  | ||||||
|             invoker.draw_rectangle(cr, self._palette) |  | ||||||
| 
 |  | ||||||
|             allocation = self.get_allocation() |             allocation = self.get_allocation() | ||||||
|             # draw a black background, has been done by the engine before |             # draw a black background, has been done by the engine before | ||||||
|             cr.set_source_rgb(0, 0, 0) |             cr.set_source_rgb(0, 0, 0) | ||||||
|             cr.rectangle(0, 0, allocation.width, allocation.height) |             cr.rectangle(0, 0, allocation.width, allocation.height) | ||||||
|             cr.paint() |             cr.paint() | ||||||
| 
 | 
 | ||||||
|         Gtk.ToolButton.do_draw(self, cr) |         Gtk.ToolItem.do_draw(self, cr) | ||||||
|  | 
 | ||||||
|  |         if self._palette and self._palette.is_up(): | ||||||
|  |             invoker = self._palette.props.invoker | ||||||
|  |             invoker.draw_rectangle(cr, self._palette) | ||||||
|  | 
 | ||||||
|  |         return False | ||||||
| 
 | 
 | ||||||
|     def __notify_change(self, widget, pspec): |     def __notify_change(self, widget, pspec): | ||||||
|         self.notify(pspec.name) |         self.notify(pspec.name) | ||||||
|  | |||||||
| @ -125,13 +125,8 @@ class ToggleToolButton(Gtk.ToggleToolButton): | |||||||
|                                    getter=get_accelerator) |                                    getter=get_accelerator) | ||||||
| 
 | 
 | ||||||
|     def do_draw(self, cr): |     def do_draw(self, cr): | ||||||
|         allocation = self.get_allocation() |  | ||||||
|         child = self.get_child() |         child = self.get_child() | ||||||
| 
 |  | ||||||
|         if self.palette and self.palette.is_up(): |         if self.palette and self.palette.is_up(): | ||||||
|             invoker = self.palette.props.invoker |  | ||||||
|             invoker.draw_rectangle(cr, self.palette) |  | ||||||
| 
 |  | ||||||
|             allocation = self.get_allocation() |             allocation = self.get_allocation() | ||||||
|             # draw a black background, has been done by the engine before |             # draw a black background, has been done by the engine before | ||||||
|             cr.set_source_rgb(0, 0, 0) |             cr.set_source_rgb(0, 0, 0) | ||||||
| @ -140,4 +135,10 @@ class ToggleToolButton(Gtk.ToggleToolButton): | |||||||
| 
 | 
 | ||||||
|         Gtk.ToggleToolButton.do_draw(self, cr) |         Gtk.ToggleToolButton.do_draw(self, cr) | ||||||
| 
 | 
 | ||||||
|  |         if self.palette and self.palette.is_up(): | ||||||
|  |             invoker = self.palette.props.invoker | ||||||
|  |             invoker.draw_rectangle(cr, self.palette) | ||||||
|  | 
 | ||||||
|  |         return False | ||||||
|  | 
 | ||||||
|     palette = property(get_palette, set_palette) |     palette = property(get_palette, set_palette) | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Manuel Quiñones
						Manuel Quiñones