1972 Commits

Author SHA1 Message Date
Poommetee Ketson
c5dfe6824c Mesh: fix crash when creating mesh outline from QuadMesh
Since create_outline can only make outline for PRIMITIVE_TRIANGLES,
when QuadMesh (which is PRIMITIVE_TRIANGLE_FAN) is used to create
outline, will leave `arrays` empty, and crash when it is being indexed
for "indices" subarray.

This PR shows error when there's only one surface and it is not
TRIANGLES. Also prevent the crash if it has more than one surface
and none of them are TRIANGLES (and any other cases that could leave
`arrays` empty) by checking the size of `arrays` == 8 before indexing
it, since the method seems to expect `arrays` to be of that size.

(cherry picked from commit a492d229529018f0277f75aa7b99661b5dd40420)
2018-04-28 20:16:22 +02:00
Michael Alexsander Silva Dias
60bc0f79a7 Fixed some popups not shrinking their size back when losing items.
(cherry picked from commit 7cbf301f31a57771b3c7dbe378654195f3db4ab1)
2018-04-28 19:59:37 +02:00
Alessandro
038c4d3a83 Fix all categories unfold when one key binding is changed
(cherry picked from commit eda1e266c87fc56ab9f1edbbb06785072a021dca)
2018-04-28 17:52:20 +02:00
Ivan Vodopiviz
ce944bc3fb Prevented external editor from running multiple times
Fixes #16923. I'm not a fan of the special case for scripts in editor_node.cpp, but in any case,
I made it so it wouldn't make the external editor to re-open just because we switched scenes.

(cherry picked from commit f5147befb68cc2a021034a55ad64a4e1fae4bba2)
2018-04-28 17:47:23 +02:00
robfram
91525e3075 Fix bug added in PR#17589. Resources couldn't be saved to files
This PR fixes the code to avoid saving default environment every time
the project is run whitin the editor.

Should fix #17727. Sorry for the troubles!

(cherry picked from commit 7821b70a00768cb99c0b48450eabe5a687ae276c)
2018-04-28 17:22:42 +02:00
robfram
7563c17113 Fix saving unmodified scenes and resources
When `_save_all_scenes` or `save_resource_in_path` was called, they
always saved all the scenes and the resource no matter if they were
modified or not. For example, when `saving before run` option was
checked, it always overwrote the current scene and the default
environment simply by opening and runing the project.

This PR adds checks for unsaved scenes (using the same `unsave` check
others method used) and modified resources (comparing last modified
time and last import time).

Fix #6025.

(cherry picked from commit 28ab60422d648d43d219186ea0ecffce1645188f)
2018-04-28 17:22:29 +02:00
robfram
d40f40e1c9 Fix pressing F3 do both changing to script editor AND find next text
As `KEY_F3` was used both for changing to script editor window and, in
the script editor, for finding the next result in the last search, and
the key event is **not** consumed, the resulting behaviour was similar
to press `F3` twice, first to change to script editor and second to
find the next result of a previous search.

This PR sets the `key_pressed` status of `InputEvent` to `false` if
this event is responsible of an editor change, simulating the
consumption of the event.

Fix #17334

(cherry picked from commit 8939f44f6ac5594348e4d671d121680822bd8dc8)
2018-04-28 17:09:55 +02:00
robfram
fa831f0224 Fix non-valid characters for input_action
Add a new function to check action names, `_validate_action_name`, in
the spirit of `_valprop`. Offending characters include non-printable
ascii, and `\/=:"`. Also set only one text for the UI message.

(cherry picked from commit da6c07698f591b3eac773770dc776bf095c3d9ef)
2018-04-28 17:07:20 +02:00
robfram
141e389c3f Fix non working action names containing whitespaces
Now the action name is quoted if it contains spaces. Also, quotation
mark (") is added to the forbidden character list for action names, as
it was also a bug.

Fix #17322

(cherry picked from commit ea94a8259624a1915fa4b92682755e28f2bb6af5)
2018-04-28 17:04:20 +02:00
Poommetee Ketson
72350eebb2 ScriptTextEditor: fix capitalize offset
(cherry picked from commit caa0d513ab89d46dbf694182ab47a77f5fbe31ed)
2018-04-28 16:45:17 +02:00
Hein-Pieter van Braam
7ec8a6e756 Fix converting a tilset if the existing file is not a tileset
See ed3b080ca6ebc4361306a786dcc2d45481ee8ed9
2018-04-28 16:40:31 +02:00
Poommetee Ketson
ddb31e9c5a EditorNode: fix clicking ok keeps trying to save
(cherry picked from commit e12e6cacdb823caf4227f63f4bd175a593918813)
2018-04-28 16:29:58 +02:00
Bernhard Liebl
dc97f91a18 Fix column width on AutoLoad table on hidpi displays
(cherry picked from commit f494d5ac5cb849f6fbe80e0b84449e9d8f361e32)
2018-04-28 16:28:47 +02:00
Bernhard Liebl
5eef26b64e Fix broken hover/select coloring of keys in animation editor
(cherry picked from commit 172aa6c61e27f6506f265983fc18e1f5e248efeb)
2018-04-28 16:07:03 +02:00
Bernhard Liebl
6d767b0f9a AnimationPlayer: fix scrubbing after play backwards
(cherry picked from commit b553b38e7be52003f44bb05165fdae25c5863ab7)
2018-04-28 15:55:36 +02:00
robfram
d49579b038 Fix overwriting all common properties when using Change Type tool
If you change the type of an existing node, it checks if you have
modified the initial value of their properties before overwriting
their values in the new node.

For example, if you created a `Label` and changed it to
`LineEdit`, the `mouse_filter` property was created as `Ignore`
for the original `Label` node, and was maintained after changing
it to `LineEdit` causing not to work as expected. Now it checks if
`Ignore` is the default value for `Label` nodes, and as it is, the
property value is left unchanged, maintaining the default value
for `LineEdit`, which is `Stop`.

Fix #13955 and alike.

(cherry picked from commit 8ea4ea0d53e772673dea69a9df83aa8445ad49ea)
2018-04-28 15:47:57 +02:00
Marcelo Fernandez
c2e02e2066 Added error checks for fscache saving
(cherry picked from commit 06e537fec5a4c4ed16a2f3b616c59d19be573c60)
2018-04-15 01:17:01 +02:00
Bernhard Liebl
069b429795 AnimationPlayer: fix popups close on double click
(cherry picked from commit 6d51b6ab429fca592505d9bdbf44130f12dd3ecc)
2018-04-15 01:08:45 +02:00
Andreas Haas
6472d8c7d4 Mono: Avoid invalid class names.
Disallow reserved keywords as class names and prefix base class with the Godot
namespace if it's the same as the class name.

Fixes #12483

(cherry picked from commit 700d07cf7cae4e28de107e0c274b27c857d98450)
2018-04-15 00:48:11 +02:00
Ignacio Etcheverry
548ec63f76 EditorExport: Allow export plugins to add shared libraries
(cherry picked from commit a38b59b656e6834d466df37379266c29d6364490)
2018-04-15 00:04:18 +02:00
Emanuele Fornara
28d4271e3e skip demo download prompt if ssl is unavailable
(cherry picked from commit 0071c04dcb5399431e7c13397c1e4228c2c8b8d0)
2018-04-14 20:44:54 +02:00
poke1024
2f53325bed Fix round preview getting square on "run scene" (issue 16734)
(cherry picked from commit 899f7b125e843d7187ad7c614588d635ce989f80)
2018-04-14 20:37:54 +02:00
Marcelo Fernandez
8018dc6599 Fix for a possible crash when a custom theme is not loaded properly
(cherry picked from commit 2f1429eb24705410bcfb1c106fe12160e444cc37)
2018-04-14 20:28:13 +02:00
Geoffrey
13e9b605cf Moves the md5sum's from the <filename>.import file into .import/<filename>.md5
Saves asset md5sum's in a file that doesn't contain data that needs to be VC'd
Now saves the md5s to a different file (.import.md5)

Now reads the md5's from a separate file

Now uses a file in the .import folder to store md5s

(cherry picked from commit 030b59502ffe69a05e553e9cbb0fdc9f67aea706)
2018-04-14 19:57:45 +02:00
Pedro J. Estébanez
2e9c9f7d74 Fix animation length from glTF not correctly set
(cherry picked from commit 1f26da0ad11e3b68f4ceecb2e39dc6b3302082ee)
2018-03-29 00:04:15 +02:00
Pedro J. Estébanez
6063e74e06 Fix glTF not accepting VEC3 colors
Aside from the colors themselves, the rejection was adding somes issues later in the mesh import process.

(cherry picked from commit adbe74951362591f39828e346db10225bee36298)
2018-03-29 00:04:10 +02:00
Felix Yang
12336dc253 Added a check for trailing dot when creating folder.
Merge the trailing dot test into existing test. Removed OS test.

(cherry picked from commit 96f61b2d6557b89885188362a724f40564bbcfcb)
2018-03-28 23:50:29 +02:00
Poommetee Ketson
bf4d8ee69c EditorAudioBus: expand effects list
(cherry picked from commit 555a8c0b8de28fe092aa02097e6bb3412402e489)
2018-03-28 23:36:58 +02:00
Blazej Floch
2c93def09d Add "Show Origin" and "Show Viewport" options to 2D Editor Viewport
(cherry picked from commit 934498d37ad8f57384a3eeddc9b577797f2339a3)
2018-03-28 23:33:03 +02:00
Andreas Haas
9cbcff4e91 ScriptEditor: Use EditorSettings instead of hardcoded values in constructor.
(cherry picked from commit 1cfc43421ee75304a63ef3905c0334f9d3faf302)
2018-03-28 23:13:46 +02:00
Hugo Locurcio
8a0966a8cb Add an hinting mode setting to DynamicFonts
- Editor font hinting can now be tweaked in the Editor Settings.
- DynamicFonts used in projects now have tweakable hinting settings
  in their DynamicFontData child. Changes will be visible upon
  reloading the scene in the editor.

(cherry picked from commit c1544c12efe72dd584429e115ff484428f27e759)
2018-03-28 22:56:04 +02:00
Unknown
ec362d54a9 Fix Automatic switch to viewport when playing a scene #16357
(cherry picked from commit d002b7d24afa0b1c15d470ba170a62f2be648d7f)
2018-03-28 22:41:06 +02:00
geequlim
5eebe51014 Fix builtin script cannot open from debug stacks
(cherry picked from commit 095e2bcc26302a27a71b37b76348cb9231ab5862)
2018-03-28 22:12:31 +02:00
geequlim
9febb6f747 Don't print error message when select debugger stacks if the debugger is stopped.
Clear debugger stack inspector if the debugger is stopped when selected stack changed.

(cherry picked from commit cfde7374785d2e4033ebcee0459836c648439eb6)
2018-03-28 22:09:16 +02:00
volzhs
626525d23a Draw relationship line on scene tree dock if option is on
(cherry picked from commit 36aa62802a5024ad088efe07f186c4a401cde888)
2018-03-28 22:06:01 +02:00
Fabio Alessandrelli
89bff17cd2 More threading in AssetLib
AssetLib now uses thread as requested to download previews and items

(cherry picked from commit 3a25415a1c2928e22b4eb9da782237ed73fb79c8)
2018-03-28 21:03:56 +02:00
Rémi Verschelde
65d214d3da i18n: Sync translation templates with current source 2018-03-03 10:58:19 +01:00
Rémi Verschelde
9ee98e999b i18n: Sync translations with Weblate
(cherry picked from commit 7c7d3efb5b1fcda85adee3e5bff4b0ca69872dbf)
2018-03-03 10:56:41 +01:00
Hein-Pieter van Braam
53693e393d Revert "Make KEY_ESCAPE close all output/debugger docks on bottom"
This reverts commit c04d8684765b2adc2fe2af56741ff8a2b8953f75.

This caused a regression when trying to close the typing suggestion.
Reverting this for now until a better implementation for this behavior
gets made.
2018-03-01 23:06:26 +01:00
Anish
3f7e036c4f Godot now allows built-in irrespective of the filepath.
Since the file in the filepath is irrelevant when setting the file
as built-in, changes have been made to allow setting to built-in
even if the file in the path exists.

Fixes #16425

(cherry picked from commit 1fdb8251d2d68634d8ba7ad4e9569742847df1df)
2018-03-01 21:38:15 +01:00
Poommetee Ketson
0aab429453 AnimationEditor: fix time indicator offset
(cherry picked from commit acf54f8bdc03df59433eb17a55c39391fcd0da53)
2018-03-01 21:18:58 +01:00
Hein-Pieter van Braam
675899a521 Fix various valgrind reported uninitialized variable uses
(cherry picked from commit d702d7b335c0c9305e75131770c0ea739b70d813)
2018-03-01 21:06:31 +01:00
Paul Joannon
039fc750d5 only show information we have in stacktrace
do not show line number and/or file if not defined

(cherry picked from commit 3ee4ce51a9d564584b7878c125085e57faa32f98)
2018-02-26 23:55:27 +01:00
Rémi Verschelde
be771e7165 Fix version.txt validation logic for export templates .tpz
It assumed that the version would always be `x.y-status`,
with no dot possible in `status`, so:
- It would not work for 3.0.1-stable (nor 3.0.1.stable with new version logic)
- It would not support Mono templates when we provide them

The validation it did was not really useful anyway, so we just use the raw
string.

(cherry picked from commit eec9261a75699723f6e4b722910e5bb762b736db)
2018-02-25 15:29:28 +01:00
Rémi Verschelde
d79a7a2773 Refactor version macros and fix related bugs
The previous logic with VERSION_MKSTRING was a bit unwieldy, so there were
several places hardcoding their own variant of the version string, potentially
with bugs (e.g. forgetting the patch number when defined).

The new logic defines:

- VERSION_BRANCH, the main 'major.minor' version (e.g. 3.1)
- VERSION_NUMBER, which can be 'major.minor' or 'major.minor.patch',
  depending on whether the latter is defined (e.g. 3.1.4)
- VERSION_FULL_CONFIG, which contains the version status (e.g. stable)
  and the module-specific suffix (e.g. mono)
- VERSION_FULL_BUILD, same as above but with build/reference name
  (e.g. official, custom_build, mageia, etc.)
  Note: Slight change here, as the previous format had the build name
  *before* the module-specific suffix; now it's after
- VERSION_FULL_NAME, same as before, so VERSION_FULL_BUILD prefixed
  with "Godot v" for readability

Bugs fixed thanks to that:

- Export templates version matching now properly takes VERSION_PATCH
  into account by relying on VERSION_FULL_CONFIG.
- ClassDB hash no longer takes the build name into account, but limits
  itself to VERSION_FULL_CONFIG (build name is cosmetic, not relevant
  for the API hash).
- Docs XML no longer hardcode the VERSION_STATUS, this was annoying.
- Small cleanup in Windows .rc file thanks to new macros.

(cherry picked from commit 23ebae01dc7e3df9c842ca7d017f7b233837721d)
2018-02-24 01:34:34 +01:00
Rémi Verschelde
07e2461995 i18n: Sync translation templates with current source 2018-02-22 18:47:07 +01:00
Rémi Verschelde
ca5f3b9f8d i18n: Sync translations with Weblate
(cherry picked from commit 661ab3c88e7a8bfe69acd90dae7574a11afcea84)
2018-02-22 18:42:25 +01:00
Yan Pas
3e8c214a19 Delete all selected lines using the delete line shortcut in script editor
(cherry picked from commit 7368978a48127a4c238f51bd0dbdf4c8d091809f)
2018-02-22 13:09:02 +01:00
Artem Varaksa
eacd66e784 Clean up some bad words from code comments
(cherry picked from commit d35e48622800f6686dbdfba380e25170005dcc2b)
2018-02-22 12:22:41 +01:00
Rémi Verschelde
f55b376d78 Improve error reporting of ProjectSettings::setup()
And use it to better report errors in the console and project manager
when a project.godot file is corrupted.

Fixes #14963.

(cherry picked from commit 7839076f95679c85e7adfdccdd671b2927c82f2f)
2018-02-22 12:19:28 +01:00