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
Rémi Verschelde
9f134aa5d1
Cleanup old references to GLES2 renderer
...
There are still some left in the Android Java code, even stuff to swap between
GLES1 and GLES2 support from early Godot days... would be good to see some cleanup
there too one day.
The "graphics/api" option for Android exports is removed, as only GLES 3.0 is supported.
It can be readded when GLES 2.0 support comes back. Fixes #13004 .
2017-11-19 17:52:18 +01:00
Rémi Verschelde
73049d115e
Rename OS::get_data_dir to OS::get_user_data_dir
...
Will be needed to avoid confusion with system data path (XDG_DATA_HOME)
and editor data dir in upcoming refactoring.
2017-11-17 20:55:09 +01:00
Rhody Lugo
2355f545ec
fix window position computation on macOS
2017-11-14 08:59:22 -04:00
Rémi Verschelde
ed57f0a0d4
Remove get_default_video_mode definition on OSX/iOS
...
It had been missed in d09160a8b6
and broke compilation
for those platforms.
Took the opportunity to run clang-format on the code base to fix some corner cases
that went through our static tests/were overlooked recently.
2017-11-09 23:36:08 +01:00
Juan Linietsky
7715a261d5
Merge pull request #12262 from AndreaCatania/pplug
...
Physics server plug
2017-11-03 23:39:44 -03:00
AndreaCatania
7a9ca08f16
Implemented physics plug
...
Moved init_physics
Implemented physics 2D plug
Fix clang
Fix clang
Fix static check
Fix clang
Fix static check
Moved physics server initialization
Moved physics server settings initialization
2017-11-04 03:25:51 +01:00
N0hbdy
f3fc07272c
Add Colemak keybindings to editor for osx
2017-10-30 22:51:02 +01:00
Rémi Verschelde
87694d1884
Disable logging until the logs location is sorted out
...
Temporary workaround for #12277 .
2017-10-29 15:50:27 +01:00
Marcelo Fernandez
ad4000d376
Implemented vsync OS functions for OS X
2017-10-23 13:26:33 -03:00
Bernhard Liebl
a7f18798aa
fixes several scaling problems on multi monitor retina/non-retina setups on OS X
2017-10-05 08:12:17 +02:00
Andreas Haas
132ba0ed97
Merge pull request #11568 from endragor/loggers
...
Extract logging logic
2017-10-02 23:51:26 +02:00
Poommetee Ketson
478fd21e07
Merge pull request #11575 from marcelofg55/move_path_to_trash
...
FileSystemDock will now remove files/dirs to trashcan using OS::move_to_trash
2017-10-02 23:52:09 +07:00
Marcelo Fernandez
12d40fa03f
Merged iphone and osx audio drivers into drivers/coreaudio
2017-09-30 02:16:42 -03:00
Marcelo Fernandez
20918587d3
FileSystemDock will now remove files/dirs to trashcan using OS::move_to_trash
2017-09-25 21:49:01 -03:00
Ruslan Mustakov
1a2311e350
Extract logging logic
...
Previously logging logic was scattered over OS class implementations
with plenty of duplication. Major changes in this commit:
- Extracted logging logic into a separate Logger hierarchy. It allows
easy configuration of logging mechanism depending on compile-time or
run-time configuration.
- Implemented RotatedFileLogger which is usually used with StdLogger,
providing persistency of logs. It is often important to be able to
obtain logs of the game even in production to be able to understand
what happened prior to some problem. On mobile there previously was
no way to obtain the logs aside from having the device connected to
your machine.
- flush() is not performed in release mode for every logged line. It
is only performed for errors.
2017-09-25 16:19:21 +07:00
BastiaanOlij
9d04f89beb
Removed get_resource_dir from osx platform
2017-09-24 19:37:22 +10:00
BastiaanOlij
86c66597f3
Comment out code that is causing project loading to fail on osx
2017-09-22 13:05:53 +10:00
letheed
5ad9be4c24
Rename pos to position in user facing methods and variables
...
Rename user facing methods and variables as well as the corresponding
C++ methods according to the folloming changes:
* pos -> position
* rot -> rotation
* loc -> location
C++ variables are left as is.
2017-09-20 13:11:10 +02:00
Rémi Verschelde
53bbc046ee
Merge pull request #11252 from marcelofg55/fix_noaudio_crash
...
Fix crash when no audio driver is available
2017-09-17 22:48:22 +02:00
Thomas Herzog
7dffed485b
Merge pull request #11230 from maxim-sheronov/fix_enum_bindings
...
Fix enums bindings
2017-09-15 08:43:35 +02:00
Marcelo Fernandez
7a4c0ff35e
Fix crash when no audio driver is available
2017-09-13 20:54:55 -03:00
Maxim Sheronov
0fffa45158
Fix enums bindings
...
Add missed bindings for enums
Move some enums to class to have correct output of api.json
2017-09-13 20:57:07 +03:00
Marcelo Fernandez
83fe937362
Added a crash handler to dump the backtrace on Windows, Linux and OS X
2017-09-13 10:07:23 -03:00
BastiaanOlij
099546ac00
Fixed loading package from resource folder, exporting textures to bundle and added a bit of feedback for a debug compile
2017-09-08 11:39:32 +10:00
poke1024
9d841b5336
Implements OS_OSX::get_system_dir()
2017-08-29 20:31:03 +02:00
Rémi Verschelde
bd282ff43f
Use HTTPS URL for Godot's website in the headers
2017-08-27 14:16:55 +02:00
Rémi Verschelde
7f49e2a7a0
Merge pull request #10487 from marcelofg55/curscr_as_default
...
p_screen param from get_screen_* funcs now default to the current screen
2017-08-22 08:12:04 +02:00
Rémi Verschelde
13f879587d
Merge pull request #10254 from marcelofg55/master
...
Added notification const NOTIFICATION_WM_ABOUT
2017-08-22 00:56:31 +02:00
Marcelo Fernandez
63f847b306
p_screen param from get_screen_* funcs now default to the current screen
2017-08-21 18:28:29 -03:00
Marcelo Fernandez
c6edf1821e
Fix y axis for set_window_position on OS X
2017-08-21 12:36:04 -03:00
Marcelo Fernandez
aae29c7a0e
Added notification const NOTIFICATION_WM_ABOUT
2017-08-17 11:28:45 -03:00
bruvzg
8aa86cb9bc
Implement NSTextInputClient protocol for IME
2017-08-09 19:09:33 +03:00
toger5
2286037bc3
removed calls to cursor_set_visible on all platforms fixes #10167
2017-08-08 14:04:22 +02:00
Rémi Verschelde
b0dfec77c2
Merge pull request #10127 from bruvzg/3.0-osx-logging
...
Duplicate error messages to macOS logging system (Console.app)
2017-08-07 14:58:25 +02:00
Rémi Verschelde
ae88eb5b50
Merge pull request #10099 from bruvzg/3.0-fix-osx-warp_mouse_pos
...
Fix warp_mouse_pos on macOS
2017-08-07 14:47:54 +02:00
bruvzg
68bf243461
Duplicate error messages to macOS logging system
2017-08-06 21:55:30 +03:00
Bojidar Marinov
7b7c7c8dc0
Rename KEY_RETURN to KEY_ENTER and KEY_ENTER to KEY_KP_ENTER
...
Closes #7695
2017-08-06 16:26:07 +03:00
bruvzg
0ed3da8e2a
Fix warp_mouse_pos on macOS
2017-08-04 23:43:32 +03:00
Rémi Verschelde
263452ee91
Merge pull request #9960 from marcelofg55/master
...
Fix get_screen_* funcs returning old values after resolution changes on OS X
2017-07-30 20:59:04 +02:00
Marcelo Fernandez
abbf821ddf
Fix get_screen_* funcs returning old values after resolution changes on OS X
2017-07-28 18:08:57 -03:00
bruvzg
d18922a56e
Change display scale when moving the window from monitor to monitor
2017-07-28 20:17:19 +03:00
Rémi Verschelde
a7b35edf7b
Merge pull request #9874 from bruvzg/3.0-osx-menu
...
Add macOS main menu (3.0)
2017-07-28 11:05:05 +02:00
Rémi Verschelde
5caf9d0d08
Merge pull request #9876 from bruvzg/3.0-resize-fix
...
Improved macOS window resizing behaviour (3.0)
2017-07-28 11:02:28 +02:00
bruvzg
3220fee6b2
Fix is_window_fullscreen() and set_window_fullscreen() behaviour after window has entered/left full-screen mode via green zoom button.
...
Fix get/set_current_screen & set_window_maximized.
2017-07-27 10:05:33 +03:00
bruvzg
f98a203377
Add macOS main menu
2017-07-27 10:05:29 +03:00
bruvzg
1c1565d0f9
Improved macOS window resizing behaviour.
2017-07-26 16:29:48 +03:00
bruvzg
7de7ca8ae4
Remove duplicate keycode constant for Numpad Enter key.
2017-07-26 14:43:02 +03:00
Marcelo Fernandez
2c27501c3f
Fix Right-Click (Ctrl-Click) on OS X
2017-07-23 12:45:59 -03:00
Juan Linietsky
25678b1876
-Renamed GlobalConfig to ProjectSettings, makes more sense.
...
-Added system for feature overrides, it's pretty cool :)
2017-07-19 17:06:03 -03:00
Marcelo Fernandez
a9c5895c16
Implemented borderless fullscreen code on OSX.
2017-07-02 23:40:44 -03:00
Marcelo Fernandez
fd7976ddd7
Implemented borderless window code for OSX.
2017-06-27 16:57:28 -03:00
ageazrael
109ad227d3
Used in the macOS HiDPI options window is too small
2017-06-13 09:54:55 +08:00
ageazrael
b3accab62d
Fixed middle mouse button can't bounce in macOS
2017-06-13 09:27:49 +08:00
Juan Linietsky
bcc435094d
Restired multithread support in OSX and Windows, should stop the crashes.
2017-06-10 10:15:33 -03:00
toger5
328d0e2b4e
osx release right button event fixed
...
RIGHT_MOUSE_BUTTON was not removed from the button mask (instead it was added...)
fixes #9079
2017-06-06 19:40:06 -07:00
alexholly
a3c90b0293
renamed all Rect2.pos to Rect2.position
2017-06-04 02:09:17 +02:00
Andreas Haas
9bc5348961
InputEvent: Renamed "pos" property to "position"
...
Make the naming consistent with other classes.
2017-06-03 11:26:39 +02:00
volzhs
0627445863
Make OS.get_locale() returns same value
2017-05-27 03:50:22 +09:00
toger5
72876ef10b
added modifier key to scroll event
2017-05-22 03:46:54 -07:00
toger5
b90df858c1
fixed osx input event
2017-05-22 01:17:57 -07:00
Juan Linietsky
5b3709d309
Removal of InputEvent as built-in Variant type..
...
this might cause bugs I haven't found yet..
2017-05-20 17:05:38 -03:00
BastiaanOlij
63db9a4bee
Doing a little bit of cleanup
2017-05-20 09:30:31 +10:00
Juan Linietsky
98a3296702
Removal of Image from Variant, converted to a Resource.
2017-05-17 07:37:45 -03:00
toger5
304a1f5b5a
Implemented scrolling factor for smooth trackpad scrolling
...
Working platforms platform: OSX, Windows.
Support for almost all ui elements, including project list.
2017-05-07 14:23:56 +02:00
Sergey Pusnei
8589ca3903
Rename [gs]et_pos to [gs]et_position for Controls
...
Control set_pos -> set_position
Control set_global_pos -> set_global_position
[gs]et_mouse_pos -> [gs]et_mouse_position
[gs]et_global_mouse_pos -> [gs]et_global_mouse_position
fixes #8005
2017-04-10 08:27:34 +02:00
Rémi Verschelde
3fd10ff6f0
Style: Apply clang-format (3.9.1) to Obj-C++ files
2017-04-09 14:44:52 +02:00
BastiaanOlij
5c2ddb299b
Formatting of mm files
2017-04-09 21:22:40 +10:00
Rémi Verschelde
df61dc4b2b
Add "Godot Engine contributors" copyright line
2017-04-08 00:11:42 +02:00
Andreas Haas
c0b6756875
Input: Remove usage of platform dependent event IDs.
...
The ID property for InputEvents is set by `SceneTree` when sending the event down the tree.
So there's no need for the platform specific code to set this value when it will later be overriden anyway...
2017-03-26 15:59:32 +02:00
Julian Murgia
94103c0c02
Add API to access battery power state
...
Done:
- X11, server (tested)
- Windows (developed, would be nice to retest)
- OSX (not tested)
Prepared (not developed):
- Android (code is here, but may not compile)
- iphone
- winrt
- bb10
- haiku
- javascript
2017-03-04 18:04:29 +01:00
Rémi Verschelde
e837b25f55
Fix missing semicolon in previous commit
2017-02-13 23:46:25 +01:00
Brett-Mitchell
6921e11805
Fix for issue #7766
...
Add initialization for OS_OSX.mouse_mode in OS_OSX::OS_OSX(). mouse_mode now defaults to OS::MOUSE_MODE_VISIBLE.
2017-02-13 12:55:26 -05:00
BastiaanOlij
cef0ae5d5d
Fix compile errors related to audio on OSX
2017-01-16 20:32:44 +11:00
Juan Linietsky
b400c69cd4
Oops! Audio engine has vanished :D
2017-01-15 16:07:51 -03:00
Rémi Verschelde
93ab45b6b5
Style: Fix whole-line commented code
...
They do not play well with clang-format which aligns the `//` part
with the rest of the code block, thus producing badly indented commented code.
2017-01-14 14:52:23 +01:00
Rémi Verschelde
5bfa4227b3
Finish replacement of joystick by joypad
...
Some parts were forgotten in 547a577
.
2017-01-08 21:33:37 +01:00
Juan Linietsky
2ab83e1abb
Memory pool vectors (DVector) have been enormously simplified in code, and renamed to PoolVector
2017-01-07 18:26:38 -03:00
BastiaanOlij
5e717ed8a3
Enabled code that requests an OpenGL 3 context.
2017-01-05 00:05:34 +11:00
BastiaanOlij
55d425807f
First set of changes to fix compilation errors and initialise the gles3 renderer for Mac OS X. Still broken at this point.
2017-01-04 23:34:02 +11:00
Rémi Verschelde
3f3f5a5359
Merge remote-tracking branch 'origin/gles3' into gles3-on-master
...
Various merge conflicts have been fixed manually and some mistakes
might have been made - time will tell :)
2017-01-02 21:52:26 +01:00
Rémi Verschelde
c7bc44d5ad
Welcome in 2017, dear changelog reader!
...
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer
with state-of-the-art rendering techniques tuned to work as low as middle
end handheld devices - without compromising with the possibilities given
for higher end desktop games of course. Great times ahead for the Godot
community and the gamers that will play our games!
2017-01-01 22:03:33 +01:00
Juan Linietsky
22d83bc9f6
Begining of GLES3 renderer:
...
-Most 2D drawing is implemented
-Missing shaders
-Missing all 3D
-Editor needs to be set on update always to be used, otherwise it does not refresh
-Large parts of editor not working
2016-10-03 21:35:16 +02:00
Andreas Haas
8c886b9d7a
osx: Support gamepad input.
...
Fixes #3881
Vibration support is not optimal yet as it doesn't try to emulate the "weak" and "strong" motor strength,
but just takes the parameter with the highest value for the vibration gain.
2016-09-06 00:47:54 +02:00
marcelofg55
bf320fd4ea
Crashfix for OSX on Sierra beta
2016-08-09 13:40:14 -03:00
marcelofg55
38de4d24ef
Fix set_window_size not setting the correct size on OSX
2016-08-02 22:30:19 -03:00
GungnirInd
2c1a74fb3a
Implement OS.request_attention() for OSX ( #5662 )
...
Keeps bouncing icon until user focuses window
2016-07-21 17:30:20 +02:00
Keyaku
072da51f20
Added alert() functionality for OS X
2016-06-22 16:58:31 +01:00
marcelofg55
76ab7d3886
Right click->Quit on the godot icon will now close the application on OSX.
...
Fixed get_window_position that missed a return on OSX.
2016-06-04 12:35:00 -03:00
marcelofg55
4e0f2389c3
Merge remote-tracking branch 'upstream/master'
2016-06-02 18:56:28 -03:00
Juan Linietsky
344a39dafd
Implemented file drop support in OSX
2016-05-31 01:27:48 -03:00
marcelofg55
bb223869e0
Key modifiers (Ctrl, Alt, Meta and Shift) may be used as Input keys now on OSX
2016-05-31 00:02:14 -03:00
Juan Linietsky
9b1f8230ec
-Some fixes to OSX retina scaling for window functions
...
-Implemented HiDPI detection and support for Godot Editor!
2016-05-30 00:28:29 -03:00
marcelofg55
b697de92ef
OS.get_screen_size now returns the correct value on OSX
2016-05-11 11:44:10 -03:00
Ariel Manzur
de3ed61fc5
I think this is ok, "resizable" property might change
2016-04-29 10:54:25 -03:00
Rémi Verschelde
0a5472e697
Remove trailing spaces
2016-04-02 20:26:12 +02:00
hondres
02eddbf7da
osx: fix inverted horizontal scrolling
2016-03-07 11:24:27 +01:00
Rémi Verschelde
130f8fa193
Rename KEY_KP_SUBSTRACT to KEY_KP_SUBTRACT
...
The former name was incorrect in English, though for us latin lovers it's an understandable mistake.
Second part of and closes #3626 .
2016-02-17 23:01:27 +01:00
hondres
df4faf8f33
support horizontal mouse wheel, use in text editor
2016-02-04 17:16:22 +01:00
George Marques
f4a39692b9
Change default window size for desktop
...
Fix #3149
2016-01-24 17:52:33 -02:00
George Marques
5be9ff7b67
Update copyright to 2016 in headers
2016-01-01 11:50:53 -02:00
Juan Linietsky
586e482a98
-Fix parsing of comments in VariantParser, fixes #3175
2015-12-31 10:25:21 -03:00
santiagopf
c8077de714
utf stuff on osx
2015-12-13 22:21:49 -03:00
Juan Linietsky
890b462ffb
added rotation and scale support to gui controls
2015-12-12 13:54:26 -03:00
Juan Linietsky
cc7880fba5
-added windowed mode with -w, fixes #3020
...
-changed default windowed resolution to 1280x720
2015-12-12 12:06:53 -03:00
Didier Vandekerckhove
d48a1bd22d
Added specific get_locale to OSX platform
...
The default unix get_locale didn’t work. OS X requires a specific one.
2015-10-16 19:42:26 +02:00
Juan Linietsky
82a3304458
Added ability to set custom mouse cursors. Not hardware accelerated yet.
2015-09-24 18:06:15 -03:00
Juan Linietsky
cf57a654d7
new editor settings customization of where to run the game from the editor
2015-08-30 23:36:46 -03:00
James McLean
2f33f820e9
Fixed compilation error on MacOS X.
2015-06-22 00:56:49 -04:00
Juan Linietsky
9df77d2765
ability to run 2D physics in a thread
...
also, 2D physics is now thread safe too.
see physics_2d/thread_model
2015-05-26 01:06:05 -03:00
Ricardo Pérez
979b931995
Better OS X fullscreen support, without the nasty startup effect
2015-05-06 12:53:55 +02:00
Ricardo Pérez
1d619fad86
Really fixes fullscreen mode in OS X, even during startup
2015-05-05 12:02:47 +02:00
Juan Linietsky
fdaa2920eb
Updated copyright year in all headers
2015-04-18 14:38:54 -03:00
Ariel Manzur
ebd743f7c2
Merge branch 'master' of https://github.com/okamstudio/godot
2015-04-02 01:35:12 -03:00
Ariel m
7c1d516c01
fullscreen thing
2015-04-02 01:32:02 -03:00
Juan Linietsky
ed2a24ef21
solved color depth issues on osx
2015-04-01 12:39:54 -03:00
steve
a6f6bd85f9
fixed build error on OSX from new WM code
2015-03-23 22:07:03 -07:00
greay
ef565b9778
fix for “no viable conversion from 'NSPoint' (aka '_NSPoint') to 'CGPoint'” build error on OS X
2015-02-17 19:19:29 -08:00
Juan Linietsky
d2f86cc09b
fixes to mouse warp
...
-can warp now from viewport and control, in their respective coordinate
systems
-warp is now local to the window on Windows and OSX.
IF YOU RUN OSX, PLEASE TEST THIS! And make sure it works!, new code is
in OS_OSX::warp_mouse_pos. I don't have OSX so i can't test!
2015-02-14 19:22:06 -03:00
Rhody Lugo
08cfad00dd
Create the test string to detect kb layouts directly from the unicode chars
2015-01-08 10:31:10 -04:30
Rhody Lugo
d046bd88ad
OS X: Add keyboard layout detection and fix build
2015-01-08 02:56:27 -04:30
Juan Linietsky
1ff0d5c4e5
-attempt to be friendlier on non english keyboards
2015-01-04 22:39:21 -03:00
mikica1986vee
72558b6173
warp_mouse_pos for osx
...
Just copied windows behavior.
2014-09-25 20:48:38 +02:00
Juan Linietsky
0a557f3bf5
- more fixes on #672 on windows
...
- added #660 , but need help on osx, help please I don't have a mac!
- fixed #667 and #668 (eol detection in comments)
- added #670 (hint when using method without () )
2014-09-19 21:01:41 -03:00
James Emselle
2482aa1362
Fixed mouse motion events with captured mouse mode in OS X
2014-06-26 22:46:55 +10:00
James Emselle
911914adad
mouse_mode implementation on OS X
2014-06-26 22:14:37 +10:00
Kevin Hartman
3974a5e84d
OSX current_videomode size is now initialized with correct resolution based on backing store. Fixes issue where content does not correctly fit in window on retina displays.
2014-02-18 22:48:38 -05:00
Juan Linietsky
8c1731b679
-project settings are saved when changed
...
-load() was in the GDScript docs but missing in the scripting-different music for platformer 2D and 3D
-fix how documentation is generated, built in doc browser should be always up to date
-copypaste, scrolling, etc in builtin doc
-built-in scripts get saved now (though debugger may not always work on them)
-Theme can be set to controls as a property
2014-02-15 21:16:33 -03:00
Juan Linietsky
b607687a31
Merge branch 'master' of https://github.com/okamstudio/godot
2014-02-13 18:06:53 -03:00
Juan Linietsky
58cda02a38
-fixed export templates not loading/exporting on Windows
...
-fixed TouchScreenButton with stretch2d
-fixed(?) OSX crash on startup (test!!)
-compilation fixes on windows
-CollisionPolygon editor works again
-find buttons en find dialog
-TileMap editor cleanup (removed "error", made nicer)
-viewport flicker fixed
-make .scn default extension for saving scenes
-export the rest of the network classes to gdscript
2014-02-13 18:03:28 -03:00
Jeremy Williams
335d963031
Fix mouse coordinates on OS X retina displays
2014-02-10 22:27:50 -05:00
Juan Linietsky
0b806ee0fc
GODOT IS OPEN SOURCE
2014-02-09 22:10:30 -03:00