virtualx-engine/core
Rémi Verschelde 32c12a92a5 Add initial support for the XDG Base Directory spec
Spec version 0.7 from https://standards.freedesktop.org/basedir-spec/basedir-spec-0.7.html
(latest as of this commit).

Three virtual methods are added to OS for the various XDG paths we will use:
- OS::get_data_path gives XDG_DATA_HOME, or if missing:
  ~/.local/share on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_config_path gives XDG_CONFIG_HOME, or if missing:
  ~/.config on X11, ~/Library/Application Support/ on macOS and %APPDATA% on Windows
- OS::get_cache_path gives XDG_CACHE_HOME, or if missing:
  ~/.cache on X11, ~/Library/Caches on macOS and %APPDATA% on Windows

So for Windows there are no changes, for Linux we follow the full split spec
and for macOS stuff will move from ~/.godot to ~/Library/Application Support/Godot.

Support for system-wide installation of templates on Unix was removed for now,
as it's a bit hackish and I don't think anyone uses it.

user:// will still be OS::get_data_path() + "/godot/app_userdata/$name" by
default, but when using the application/config/use_shared_user_dir option
it will now use XDG_DATA_HOME/$name, e.g. ~/.local/share/MyGame.

For now everything still goes in EditorSettings::get_settings_dir(), but
this will be changed in a later commit to make use of the new splitting
where relevant.

Part of #3513.
2017-11-19 20:54:24 +01:00
..
bind Rename OS::get_data_dir to OS::get_user_data_dir 2017-11-17 20:55:09 +01:00
helper Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
io Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
math Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
os Add initial support for the XDG Base Directory spec 2017-11-19 20:54:24 +01:00
allocators.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
array.cpp Array::sort, sort_custom and invert now return reference to Array to allow chaining of operations 2017-10-09 16:36:09 +02:00
array.h Array::sort, sort_custom and invert now return reference to Array to allow chaining of operations 2017-10-09 16:36:09 +02:00
class_db.cpp Bind some VisualServer functions 2017-10-20 00:24:49 +02:00
class_db.h Bind some VisualServer functions 2017-10-20 00:24:49 +02:00
color.cpp Merge pull request #11208 from kitsune/hex-color-shortcuts 2017-09-19 23:33:25 +02:00
color.h Implement +,-,/, * and negate operators for Color type. 2017-09-16 13:09:49 -04:00
color_names.inc Add missing map.h include in color defs 2017-01-15 12:51:47 +01:00
command_queue_mt.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
command_queue_mt.h Many fixes to SSAO, should be good now. 2017-10-22 13:52:48 -03:00
compressed_translation.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
compressed_translation.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
core_string_names.cpp Massive optimization to Variant::set_named/get_named. Should give a nice boost to GDScript. 2017-09-23 21:05:35 -03:00
core_string_names.h Massive optimization to Variant::set_named/get_named. Should give a nice boost to GDScript. 2017-09-23 21:05:35 -03:00
dictionary.cpp fix dictionary constant access crash 2017-11-09 16:27:27 +01:00
dictionary.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
dvector.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
dvector.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
engine.cpp Fail when attempting to retrieve a non-existent singleton 2017-11-14 16:15:00 +01:00
engine.h Move singleton management from ProjectSettings to Engine 2017-11-14 15:15:13 +01:00
error_list.h Fixed a bunch of typos, including an error code. 2017-09-21 23:58:29 -04:00
error_macros.cpp Improved *_FAIL_INDEX error macros to print the index/size 2017-10-22 12:17:41 -03:00
error_macros.h Improved *_FAIL_INDEX error macros to print the index/size 2017-10-22 12:17:41 -03:00
func_ref.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
func_ref.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
global_constants.cpp Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
global_constants.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
hash_map.h added OAHashMap type 2017-09-19 16:48:53 +02:00
hashfuncs.h added OAHashMap type 2017-09-19 16:48:53 +02:00
image.cpp Cleanup unnecessary debug prints 2017-10-21 20:41:07 +02:00
image.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
input_map.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
input_map.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
int_types.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
list.h Provide NativeScript properties in definition order 2017-09-05 12:45:23 +07:00
make_binders.py Bind some VisualServer functions 2017-10-20 00:24:49 +02:00
map.h Small fix in core/set.h and similar fix in core/map.h 2017-10-24 15:59:54 +01:00
message_queue.cpp Dead code tells no tales 2017-08-27 22:13:45 +02:00
message_queue.h Dead code tells no tales 2017-08-27 22:13:45 +02:00
method_bind.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
method_bind.h Fix typos 'a' and 'an' 2017-09-02 21:19:06 +07:00
method_ptrcall.h Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
node_path.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
node_path.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
oa_hash_map.h added OAHashMap type 2017-09-19 16:48:53 +02:00
object.cpp Fixed a bunch of typos, including an error code. 2017-09-21 23:58:29 -04:00
object.h Fixed a bunch of typos, including an error code. 2017-09-21 23:58:29 -04:00
ordered_hash_map.h make ConfigFile sections ordered 2017-11-04 14:08:21 +01:00
packed_data_container.cpp Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
packed_data_container.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
pair.h Merge pull request #10318 from endragor/ordered-hash-map 2017-09-01 13:09:30 +02:00
path_remap.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
path_remap.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
pool_allocator.cpp Fix signed and unsigned comparisons 2017-09-01 08:13:12 +02:00
pool_allocator.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
print_string.cpp Add print_error function, akin to print_line 2017-11-16 21:56:57 -02:00
print_string.h Add print_error function, akin to print_line 2017-11-16 21:56:57 -02:00
project_settings.cpp Rename OS::get_data_dir to OS::get_user_data_dir 2017-11-17 20:55:09 +01:00
project_settings.h Move singleton management from ProjectSettings to Engine 2017-11-14 15:15:13 +01:00
ref_ptr.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
ref_ptr.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
reference.cpp Construct Variants from Reference properly in GDNative 2017-09-14 19:40:36 +07:00
reference.h Construct Variants from Reference properly in GDNative 2017-09-14 19:40:36 +07:00
register_core_types.cpp Move singleton management from ProjectSettings to Engine 2017-11-14 15:15:13 +01:00
register_core_types.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
resource.cpp Fixes ERR_EXPLAIN being overwritten 2017-09-06 04:43:07 +02:00
resource.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
rid.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
rid.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
ring_buffer.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
safe_refcount.cpp Build MSVC safe_refcount in a separate compilation unit 2017-09-27 00:01:02 +02:00
safe_refcount.h Build MSVC safe_refcount in a separate compilation unit 2017-09-27 00:01:02 +02:00
script_debugger_local.cpp Renamed fixed_process to physics_process 2017-09-30 16:19:07 +02:00
script_debugger_local.h Renamed fixed_process to physics_process 2017-09-30 16:19:07 +02:00
script_debugger_remote.cpp Add print_error function, akin to print_line 2017-11-16 21:56:57 -02:00
script_debugger_remote.h Add print_error function, akin to print_line 2017-11-16 21:56:57 -02:00
script_language.cpp Removes Script::get_node_type() 2017-10-25 20:11:30 +02:00
script_language.h Removes Script::get_node_type() 2017-10-25 20:11:30 +02:00
SCsub Use BoolVariable for third-party options. 2017-09-25 14:36:30 -04:00
self_list.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
set.h Small fix in core/set.h and similar fix in core/map.h 2017-10-24 15:59:54 +01:00
simple_type.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
sort.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
string_buffer.cpp Add StringBuffer class 2017-09-05 11:04:11 +07:00
string_buffer.h Add StringBuffer class 2017-09-05 11:04:11 +07:00
string_builder.cpp added StringBuilder class 2017-09-01 19:52:32 +02:00
string_builder.h added StringBuilder class 2017-09-01 19:52:32 +02:00
string_db.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
string_db.h [GDnative] Add string_name api 2017-10-08 16:47:10 +02:00
translation.cpp Use UTF-8 for locale names. Fixes #12462. 2017-11-07 21:57:43 +01:00
translation.h Add support for non-ISO locale identifiers via renames map 2017-10-30 00:02:55 +01:00
type_info.h Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
typedefs.h Improved *_FAIL_INDEX error macros to print the index/size 2017-10-22 12:17:41 -03:00
ucaps.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
undo_redo.cpp Expose more methods for UndoRedo 2017-09-13 12:18:51 +08:00
undo_redo.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
ustring.cpp Fixed a bug where capitalize didn't work with camelCase names 2017-11-14 14:32:37 -06:00
ustring.h Added String::dedent() to remove text indentation 2017-11-01 07:20:20 +08:00
variant.cpp Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
variant.h Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
variant_call.cpp Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
variant_construct_string.cpp Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
variant_op.cpp Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
variant_parser.cpp Rename Rect3 to AABB. 2017-11-17 11:01:41 -05:00
variant_parser.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
vector.h Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
version.h -Modules can now add custom version info (added it for Mono) 2017-11-01 23:13:27 -03:00
vmap.h Fix use of unitialized variables 2017-09-02 01:59:26 +02:00
vset.h Fix use of unitialized variables 2017-09-02 01:59:26 +02:00