diff options
-rw-r--r-- | platform/android/detect.py | 14 | ||||
-rw-r--r-- | platform/javascript/detect.py | 8 | ||||
-rw-r--r-- | scene/gui/color_picker.cpp | 1 | ||||
-rw-r--r-- | scene/gui/line_edit.cpp | 1 | ||||
-rw-r--r-- | scene/gui/text_edit.cpp | 2 | ||||
-rw-r--r-- | scene/gui/tree.cpp | 2 | ||||
-rw-r--r-- | tools/editor/editor_dir_dialog.cpp | 2 | ||||
-rw-r--r-- | tools/editor/io_plugins/editor_scene_import_plugin.cpp | 2 | ||||
-rw-r--r-- | tools/editor/plugins/canvas_item_editor_plugin.cpp | 23 |
9 files changed, 35 insertions, 20 deletions
diff --git a/platform/android/detect.py b/platform/android/detect.py index 7f197895f1..d1073e0c7b 100644 --- a/platform/android/detect.py +++ b/platform/android/detect.py @@ -130,18 +130,17 @@ def configure(env): else: env.extra_suffix = ".armv7" + env.extra_suffix + mt_link = True if (sys.platform.startswith("linux")): - if (platform.machine().endswith('64')): - host_subpath = "linux-x86_64" - else: - host_subpath = "linux-x86" + host_subpath = "linux-x86_64" elif (sys.platform.startswith("darwin")): host_subpath = "darwin-x86_64" elif (sys.platform.startswith('win')): if (platform.machine().endswith('64')): host_subpath = "windows-x86_64" else: - host_subpath = "windows-x86" + mt_link = False + host_subpath = "windows" compiler_path = env["ANDROID_NDK_ROOT"] + \ "/toolchains/llvm/prebuilt/" + host_subpath + "/bin" @@ -205,14 +204,15 @@ def configure(env): env['SHLIBSUFFIX'] = '.so' env['LINKFLAGS'] = ['-shared', '--sysroot=' + - sysroot, '-Wl,--warn-shared-textrel', - '-Wl,--threads'] + sysroot, '-Wl,--warn-shared-textrel'] env.Append(LINKFLAGS=string.split( '-Wl,--fix-cortex-a8')) env.Append(LINKFLAGS=string.split( '-Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now')) env.Append(LINKFLAGS=string.split( '-Wl,-soname,libgodot_android.so -Wl,--gc-sections')) + if mt_link: + env.Append(LINKFLAGS=['-Wl,--threads']) env.Append(LINKFLAGS=target_opts) env.Append(LINKFLAGS=common_opts) diff --git a/platform/javascript/detect.py b/platform/javascript/detect.py index 9bc204a94a..35352becf8 100644 --- a/platform/javascript/detect.py +++ b/platform/javascript/detect.py @@ -76,6 +76,7 @@ def configure(env): if("module_opus_enabled" in env and env["module_opus_enabled"] != "no"): env.opus_fixed_point = "yes" + # These flags help keep the file size down env.Append(CPPFLAGS=["-fno-exceptions", '-DNO_SAFE_CAST', '-fno-rtti']) env.Append(CPPFLAGS=['-DJAVASCRIPT_ENABLED', '-DUNIX_ENABLED', '-DPTHREAD_NO_RENAME', '-DNO_FCNTL', '-DMPC_FIXED_POINT', '-DTYPED_METHOD_BIND', '-DNO_THREADS']) env.Append(CPPFLAGS=['-DGLES2_ENABLED']) @@ -85,7 +86,12 @@ def configure(env): if env['wasm'] == 'yes': env.Append(LINKFLAGS=['-s', 'BINARYEN=1']) - env.Append(LINKFLAGS=['-s', '\'BINARYEN_METHOD="native-wasm"\'']) + # Maximum memory size is baked into the WebAssembly binary during + # compilation, so we need to enable memory growth to allow setting + # TOTAL_MEMORY at runtime. The value set at runtime must be higher than + # what is set during compilation, check TOTAL_MEMORY in Emscripten's + # src/settings.js for the default. + env.Append(LINKFLAGS=['-s', 'ALLOW_MEMORY_GROWTH=1']) env["PROGSUFFIX"] += ".webassembly" else: env.Append(CPPFLAGS=['-s', 'ASM_JS=1']) diff --git a/scene/gui/color_picker.cpp b/scene/gui/color_picker.cpp index 5e66544153..d6535ef511 100644 --- a/scene/gui/color_picker.cpp +++ b/scene/gui/color_picker.cpp @@ -660,6 +660,7 @@ void ColorPickerButton::set_color(const Color& p_color){ picker->set_color(p_color); update(); + emit_signal("color_changed",p_color); } Color ColorPickerButton::get_color() const{ diff --git a/scene/gui/line_edit.cpp b/scene/gui/line_edit.cpp index eecc730f5c..0b06044b7c 100644 --- a/scene/gui/line_edit.cpp +++ b/scene/gui/line_edit.cpp @@ -918,6 +918,7 @@ void LineEdit::set_text(String p_text) { update(); cursor_pos=0; window_pos=0; + _text_changed(); } void LineEdit::clear() { diff --git a/scene/gui/text_edit.cpp b/scene/gui/text_edit.cpp index 871a3ca68f..c585fff2a6 100644 --- a/scene/gui/text_edit.cpp +++ b/scene/gui/text_edit.cpp @@ -3327,7 +3327,7 @@ void TextEdit::set_text(String p_text){ cursor_set_column(0); update(); setting_text=false; - + _text_changed_emit(); //get_range()->set(0); }; diff --git a/scene/gui/tree.cpp b/scene/gui/tree.cpp index 912371142f..d974e09275 100644 --- a/scene/gui/tree.cpp +++ b/scene/gui/tree.cpp @@ -1331,7 +1331,7 @@ int Tree::draw_item(const Point2i& p_pos,const Point2& p_draw_ofs, const Size2& int root_ofs = children_pos.x + (hide_folding?cache.hseparation:cache.item_margin); int parent_ofs = p_pos.x + (hide_folding?cache.hseparation:cache.item_margin); Point2i root_pos = Point2i(root_ofs, children_pos.y + label_h/2)-cache.offset+p_draw_ofs; - if (c->get_children() > 0) + if (c->get_children() != NULL) root_pos -= Point2i(cache.arrow->get_width(),0); Point2i parent_pos = Point2i(parent_ofs - cache.arrow->get_width()/2, p_pos.y + label_h/2 + cache.arrow->get_height()/2)-cache.offset+p_draw_ofs; diff --git a/tools/editor/editor_dir_dialog.cpp b/tools/editor/editor_dir_dialog.cpp index cf0732501e..a6a6e11142 100644 --- a/tools/editor/editor_dir_dialog.cpp +++ b/tools/editor/editor_dir_dialog.cpp @@ -145,7 +145,7 @@ void EditorDirDialog::set_current_path(const String& p_path) { if (p.begins_with("res://")) p = p.replace_first("res://",""); - Vector<String> dirs = p.split("/"); + Vector<String> dirs = p.split("/",false); TreeItem *r=tree->get_root(); for(int i=0;i<dirs.size();i++) { diff --git a/tools/editor/io_plugins/editor_scene_import_plugin.cpp b/tools/editor/io_plugins/editor_scene_import_plugin.cpp index cb8ec6d0bc..093f37fe00 100644 --- a/tools/editor/io_plugins/editor_scene_import_plugin.cpp +++ b/tools/editor/io_plugins/editor_scene_import_plugin.cpp @@ -894,9 +894,9 @@ void EditorSceneImportDialog::_browse() { void EditorSceneImportDialog::_browse_target() { + save_select->popup_centered_ratio(); if (save_path->get_text()!="") save_select->set_current_path(save_path->get_text()); - save_select->popup_centered_ratio(); } diff --git a/tools/editor/plugins/canvas_item_editor_plugin.cpp b/tools/editor/plugins/canvas_item_editor_plugin.cpp index af9fd69ae7..709091cf4c 100644 --- a/tools/editor/plugins/canvas_item_editor_plugin.cpp +++ b/tools/editor/plugins/canvas_item_editor_plugin.cpp @@ -529,17 +529,24 @@ void CanvasItemEditor::_find_canvas_items_at_rect(const Rect2& p_rect,Node* p_no CanvasItem *c=p_node->cast_to<CanvasItem>(); - for (int i=p_node->get_child_count()-1;i>=0;i--) { - - if (c && !c->is_set_as_toplevel()) - _find_canvas_items_at_rect(p_rect,p_node->get_child(i),p_parent_xform * c->get_transform(),p_canvas_xform,r_items); - else { - CanvasLayer *cl = p_node->cast_to<CanvasLayer>(); - _find_canvas_items_at_rect(p_rect,p_node->get_child(i),transform,cl?cl->get_transform():p_canvas_xform,r_items); + bool inherited=p_node!=get_tree()->get_edited_scene_root() && p_node->get_filename()!=""; + bool editable=false; + if (inherited){ + editable=EditorNode::get_singleton()->get_edited_scene()->is_editable_instance(p_node); + } + bool lock_children=p_node->has_meta("_edit_group_") && p_node->get_meta("_edit_group_"); + if (!lock_children && (!inherited || editable)) { + for (int i=p_node->get_child_count()-1;i>=0;i--) { + + if (c && !c->is_set_as_toplevel()) + _find_canvas_items_at_rect(p_rect,p_node->get_child(i),p_parent_xform * c->get_transform(),p_canvas_xform,r_items); + else { + CanvasLayer *cl = p_node->cast_to<CanvasLayer>(); + _find_canvas_items_at_rect(p_rect,p_node->get_child(i),transform,cl?cl->get_transform():p_canvas_xform,r_items); + } } } - if (c && c->is_visible() && !c->has_meta("_edit_lock_") && !c->cast_to<CanvasLayer>()) { Rect2 rect = c->get_item_rect(); |