Skip to content

Commit ee6e9b2

Browse files
authored
Fix a bunch of bugs (#1780)
1 parent b9aa339 commit ee6e9b2

10 files changed

Lines changed: 21 additions & 19 deletions

src/ui_parts/main_canvas.gd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ func sync_camera_zoom_in_tab() -> void:
3636
func sync_svg_size() -> void:
3737
if _current_svg_width != root_element.width or _current_svg_height != root_element.height:
3838
_current_svg_width = root_element.width
39-
_current_svg_width = root_element.height
39+
_current_svg_height = root_element.height
4040
sync_checkerboard()
4141
center_frame()
4242
queue_redraw()

src/ui_widgets/Canvas.gd

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ func _enter_tree() -> void:
107107
checkerboard.expand_mode = TextureRect.EXPAND_IGNORE_SIZE
108108
checkerboard.stretch_mode = TextureRect.STRETCH_TILE
109109
checkerboard.texture_filter = TEXTURE_FILTER_NEAREST
110+
checkerboard.clip_contents = true
110111
var zoom_shader_material := ShaderMaterial.new()
111112
zoom_shader_material.shader = preload("res://src/shaders/zoom_shader.gdshader")
112113
checkerboard.material = zoom_shader_material
@@ -188,7 +189,7 @@ func _texture_update() -> void:
188189
var image_zoom := 1.0 if view_rasterized and camera_zoom > 1.0 else camera_zoom
189190
var pixel_size := 1 / image_zoom
190191

191-
# Translate to canvas coords.
192+
# Expand by pixel_size * 2 so external colors can affect it.
192193
var display_rect := texture_view_rect.grow(pixel_size * 2)
193194
display_rect.position = display_rect.position.snapped(Vector2(pixel_size, pixel_size)).maxf(0.0)
194195
display_rect.size = display_rect.size.snapped(Vector2(pixel_size, pixel_size))
@@ -199,14 +200,14 @@ func _texture_update() -> void:
199200
if cached_inner_markup.is_empty():
200201
cached_inner_markup = SVGParser.get_inner_markup_with_percentages_converted(root_element)
201202

203+
# Translate to canvas coords.
202204
var svg_text := SVGParser.root_cutout_to_markup(root_element, display_rect.size,
203205
Rect2(root_element.world_to_canvas(display_rect.position),
204206
display_rect.size / root_element.canvas_transform.get_scale()), cached_inner_markup)
205207

206208
# TODO Necessary workaround to Godot ignoring position changes below a treshold.
207209
display_texture.position = Vector2(NAN, NAN)
208210
display_texture.position = display_rect.position
209-
210211
display_texture.size = display_rect.size
211212
display_texture.texture = DPITexture.create_from_string(svg_text, image_zoom)
212213

@@ -307,8 +308,11 @@ func set_zoom(new_zoom: float, offset := Vector2(0.5, 0.5)) -> void:
307308

308309
# Top left corner.
309310
func set_view(new_center: Vector2) -> void:
310-
camera_center = new_center.clamp(limit_top_left, limit_bottom_right)
311+
new_center = new_center.clamp(limit_top_left, limit_bottom_right)
312+
if new_center == camera_center:
313+
return
311314

315+
camera_center = new_center
312316
var stripped_left := maxf(camera_center.x - size.x / camera_zoom / 2.0, 0.0)
313317
var stripped_top := maxf(camera_center.y - size.y / camera_zoom / 2.0, 0.0)
314318
var stripped_right := minf(camera_center.x + size.x / camera_zoom / 2.0, root_element.width)
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[gd_scene format=3 uid="uid://dm3l2yb8crdqr"]
22

3-
[ext_resource type="Script" uid="uid://dm646g7ndq56u" path="res://src/ui_widgets/file_path_field.gd" id="1_vugfe"]
3+
[ext_resource type="Script" uid="uid://dm646g7ndq56u" path="res://src/ui_widgets/file_path_edit.gd" id="1_vugfe"]
44
[ext_resource type="Script" uid="uid://1hox6gd5pxku" path="res://src/ui_widgets/BetterLineEdit.gd" id="2_vugfe"]
55
[ext_resource type="Texture2D" uid="uid://n6ive1o6t4bp" path="res://assets/icons/FileBrowse.svg" id="3_qlle3"]
66

src/ui_widgets/setting_frame.gd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ const OptimizerSettingInfoScene = preload("res://src/ui_widgets/optimizer_settin
1010
const ColorEditScene = preload("res://src/ui_widgets/color_edit.tscn")
1111
const BasicDropdownScene = preload("res://src/ui_widgets/dropdown_basic.tscn")
1212
const NumericDropdownScene = preload("res://src/ui_widgets/dropdown_numeric.tscn")
13-
const FilePathFieldScene = preload("res://src/ui_widgets/file_path_field.tscn")
13+
const FilePathFieldScene = preload("res://src/ui_widgets/file_path_edit.tscn")
1414

1515
const reload_icon = preload("res://assets/icons/Reload.svg")
1616
const clear_icon = preload("res://assets/icons/Clear.svg")

src/ui_widgets/settings_content_generic.gd

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -475,13 +475,13 @@ func setup_theming_content() -> void:
475475

476476
add_section(Translator.translate("Fonts"))
477477
current_setup_setting = "main_font_path"
478-
add_font_file_path_field(Translator.translate("Main font"))
478+
add_font_file_path_edit(Translator.translate("Main font"))
479479
add_preview(SettingFontPreview.new(ThemeUtils.main_font))
480480
current_setup_setting = "bold_font_path"
481-
add_font_file_path_field(Translator.translate("Bold font"))
481+
add_font_file_path_edit(Translator.translate("Bold font"))
482482
add_preview(SettingFontPreview.new(ThemeUtils.bold_font))
483483
current_setup_setting = "mono_font_path"
484-
add_font_file_path_field(Translator.translate("Mono font"))
484+
add_font_file_path_edit(Translator.translate("Mono font"))
485485
add_preview(SettingFontPreview.new(ThemeUtils.mono_font))
486486

487487
add_section(Translator.translate("SVG Text colors"))
@@ -815,10 +815,10 @@ func add_color_edit(text: String, alpha_enabled := true) -> Control:
815815
current_setup_container.add_child(frame)
816816
return frame
817817

818-
func add_font_file_path_field(text: String) -> Control:
819-
return _add_file_path_field(text, Utils.DYNAMIC_FONT_FORMATS)
818+
func add_font_file_path_edit(text: String) -> Control:
819+
return _add_file_path_edit(text, Utils.DYNAMIC_FONT_FORMATS)
820820

821-
func _add_file_path_field(text: String, extensions_list: PackedStringArray) -> Control:
821+
func _add_file_path_edit(text: String, extensions_list: PackedStringArray) -> Control:
822822
var frame := SettingFrameScene.instantiate()
823823
frame.text = text
824824
setup_frame(frame)

src/utils/ThemeUtils.gd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ static func recalculate_colors() -> void:
255255
shadow_color = Color(0, 0, 0, 0.1 if ThemeUtils.is_theme_dark else 0.08)
256256

257257
static func rebuild_fonts() -> void:
258-
# FIXME emitting changed seems to be necessitated only by a Godot bug: #122082.
258+
# FIXME emitting changed seems to be necessary only due to Godot bug #122082.
259259
main_font.base_font = FontFile.new()
260260
if not Configs.savedata.main_font_path.is_empty():
261261
main_font.base_font.load_dynamic_font(Configs.savedata.main_font_path)

src/utils/TranslationUtils.gd

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ static func get_action_description(action_name: String, for_button := false) ->
8989
_: return action_name
9090

9191
## Returns a translated description for an SVG path command character.
92-
## If omit_relativity is true, doesn't append "(Relative)"/"(Absolute)" suffix.
92+
## If show_relativity is true, append "(Relative)"/"(Absolute)" suffix.
9393
static func get_path_command_description(command_char: String, show_relativity := false) -> String:
9494
var description: String
9595
match command_char:
@@ -107,10 +107,8 @@ static func get_path_command_description(command_char: String, show_relativity :
107107

108108
if not show_relativity:
109109
return description
110-
elif Utils.is_string_lower(command_char):
111-
return description + " (" + Translator.translate("Relative") + ")"
112-
else:
113-
return description + " (" + Translator.translate("Absolute") + ")"
110+
return "%s (%s)" % [description, Translator.translate("Relative") if\
111+
Utils.is_string_lower(command_char) else Translator.translate("Absolute")]
114112

115113
## Returns the translated name for a layout part.
116114
static func get_layout_part_name(layout_part: Utils.LayoutPart) -> String:

src/utils/Utils.gd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ static func rotate_flat_stylebox_90_left(stylebox: StyleBoxFlat) -> void:
6969
stylebox.corner_radius_top_right = stylebox.corner_radius_bottom_right
7070
stylebox.corner_radius_bottom_right = temp2
7171

72-
var temp3 := stylebox.border_width_left
72+
var temp3 := stylebox.content_margin_left
7373
stylebox.content_margin_left = stylebox.content_margin_top
7474
stylebox.content_margin_top = stylebox.content_margin_right
7575
stylebox.content_margin_right = stylebox.content_margin_bottom

0 commit comments

Comments
 (0)