mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	[3.13] gh-128014: Fix passing default='' to the tkinter method wm_iconbitmap() (GH-128015) (GH-128418)
(cherry picked from commit 58e9f95c4a)
Co-authored-by: Zhikang Yan <2951256653@qq.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
			
			
This commit is contained in:
		
							parent
							
								
									cc5b03f89d
								
							
						
					
					
						commit
						24cddab4a2
					
				
					 3 changed files with 30 additions and 2 deletions
				
			
		|  | @ -4,7 +4,8 @@ | |||
| from tkinter import TclError | ||||
| import enum | ||||
| from test import support | ||||
| from test.test_tkinter.support import AbstractTkTest, AbstractDefaultRootTest, requires_tk | ||||
| from test.test_tkinter.support import (AbstractTkTest, AbstractDefaultRootTest, | ||||
|                                        requires_tk, get_tk_patchlevel) | ||||
| 
 | ||||
| support.requires('gui') | ||||
| 
 | ||||
|  | @ -540,6 +541,31 @@ def test_wm_attribute(self): | |||
|         self.assertEqual(w.wm_attributes('alpha'), | ||||
|                          1.0 if self.wantobjects else '1.0') | ||||
| 
 | ||||
|     def test_wm_iconbitmap(self): | ||||
|         t = tkinter.Toplevel(self.root) | ||||
|         self.assertEqual(t.wm_iconbitmap(), '') | ||||
|         t.wm_iconbitmap('hourglass') | ||||
|         bug = False | ||||
|         if t._windowingsystem == 'aqua': | ||||
|             # Tk bug 13ac26b35dc55f7c37f70b39d59d7ef3e63017c8. | ||||
|             patchlevel = get_tk_patchlevel(t) | ||||
|             if patchlevel < (8, 6, 17) or (9, 0) <= patchlevel < (9, 0, 2): | ||||
|                 bug = True | ||||
|         if not bug: | ||||
|             self.assertEqual(t.wm_iconbitmap(), 'hourglass') | ||||
|         self.assertEqual(self.root.wm_iconbitmap(), '') | ||||
|         t.wm_iconbitmap('') | ||||
|         self.assertEqual(t.wm_iconbitmap(), '') | ||||
| 
 | ||||
|         if t._windowingsystem == 'win32': | ||||
|             t.wm_iconbitmap(default='hourglass') | ||||
|             self.assertEqual(t.wm_iconbitmap(), 'hourglass') | ||||
|             self.assertEqual(self.root.wm_iconbitmap(), '') | ||||
|             t.wm_iconbitmap(default='') | ||||
|             self.assertEqual(t.wm_iconbitmap(), '') | ||||
| 
 | ||||
|         t.destroy() | ||||
| 
 | ||||
| 
 | ||||
| class EventTest(AbstractTkTest, unittest.TestCase): | ||||
| 
 | ||||
|  |  | |||
|  | @ -2263,7 +2263,7 @@ def wm_iconbitmap(self, bitmap=None, default=None): | |||
|         explicitly.  DEFAULT can be the relative path to a .ico file | ||||
|         (example: root.iconbitmap(default='myicon.ico') ).  See Tk | ||||
|         documentation for more information.""" | ||||
|         if default: | ||||
|         if default is not None: | ||||
|             return self.tk.call('wm', 'iconbitmap', self._w, '-default', default) | ||||
|         else: | ||||
|             return self.tk.call('wm', 'iconbitmap', self._w, bitmap) | ||||
|  |  | |||
|  | @ -0,0 +1,2 @@ | |||
| Fix resetting the default window icon by passing ``default=''`` to the | ||||
| :mod:`tkinter` method :meth:`!wm_iconbitmap`. | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Miss Islington (bot)
						Miss Islington (bot)