Is this a bug? I can't reach my dictionarys values via .has() function

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By Okan Ozdemir
var dict1 = {}
func _input(_event):
	dict_grab_focus.clear()
	if Input.is_key_pressed(KEY_TAB):
		get_node("Button").grab_focus()
		
	if Input.is_key_pressed(KEY_TAB) or Input.is_key_pressed(KEY_F):
		
		for i in get_children():
			
			dict_grab_focus[i] = i.has_focus()
			
#		print("dic", dict_grab_focus.values())
#		if 3 == 3:
#			print(dict_grab_focus.values(), "grab focus has true")
		
		if dict_grab_focus.values():
			print("dic", dict_grab_focus.values())
			print(dict_grab_focus.values(), "grab focus has true")
			get_node("Button").grab_focus()

I can’t reach my values of dictunary, I want to see if any of the keys() has a values() with true, so I wont run the function of assigning grab_focus()

:bust_in_silhouette: Reply From: Okan Ozdemir

Found it right after posting the q/a:

var dict1 = {}
func _input(_event):
	dict_grab_focus.clear()
	if Input.is_key_pressed(KEY_TAB):
		get_node("Button").grab_focus()
		
	if Input.is_key_pressed(KEY_TAB) or Input.is_key_pressed(KEY_F):
		
		for i in get_children():
			
			dict_grab_focus[i] = String(i.has_focus()) # Was saving like this to dictionary i.has_focus() thus, if, the dictionary doesn't know it is saved as a dictionary, it can't find it
			
#		print("dic", dict_grab_focus.values())
#		if 3 == 3:
#			print(dict_grab_focus.values(), "grab focus has true")
		
		if not dict_grab_focus.values().has("True"):
			print("dic", dict_grab_focus.values())
			print(dict_grab_focus.values(), "grab focus has false, now true")
			get_node("Button").grab_focus()
			
		if dict_grab_focus.values().has("True"):
			print("dic", dict_grab_focus.values())
			print(dict_grab_focus.values(), "grab focus has true already")