Rémi Verschelde
b811207406
More style cleanup...
2019-03-04 10:11:29 +01:00
Juan Linietsky
a1e73dcc94
Add support for event accumlation (off by default, on for editor), fixes #26536
2019-03-03 19:53:13 -03:00
Juan Linietsky
5eeb06ffd1
-Remove harcoded opengl extension testing from OS, ask rasterizer instead.
...
-Fixed a bug where etc textures were imported broken
2019-02-26 11:58:47 -03:00
bruvzg
ac3158332b
[macOS] Make `move_window_to_foreground` to take focus in addition to moving window to front.
2019-02-23 20:06:33 +02:00
Rémi Verschelde
bc26d0d6cd
Platform: Ensure classes match their header filename
...
Also drop some unused files.
Renamed:
- `platform/iphone/sem_iphone.h` -> `semaphore_iphone.h`
(same for `osx`)
- `platform/uwp/gl_context_egl.h` -> `context_egl_uwp.h`
- in `platform/windows`: `context_gl_win.h`, `crash_handler_win.h`,
`godot_win.cpp`, `joypad.h` and `key_mapping_win.h` all renamed to
use `windows`. Some classes renamed accordingly too.
- `EditorExportAndroid` and `EditorExportUWP` renamed to
`EditorExportPlatformAndroid` and `EditorExportPlatformUWP`
- `power_android` and `power_osx` renamed to `PowerAndroid` and
`PowerOSX`
- `OSUWP` renamed to `OS_UWP`
Dropped:
- `platform/windows/ctxgl_procaddr.h`
2019-02-12 16:56:25 +01:00
bruvzg
50e2c1e184
[macOS] Fix rendering on retina displays with HiDPI support disabled.
2019-01-31 19:24:57 +02:00
Bastiaan Olij
b53f2d1d59
Using DisplayLink to emulate vsync on OSX
2019-01-29 17:00:35 +11:00
Juan Linietsky
0c9fd3c4b4
Avoid cyclic iteration check, fixes #24969
2019-01-22 13:17:39 -03:00
bruvzg
b7e9e184aa
[macOS] Fix missing mouse move event speed.
2019-01-11 16:53:11 +02:00
Rémi Verschelde
b16c309f82
Update copyright statements to 2019
...
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Rémi Verschelde
57c3f6a94b
Merge pull request #20063 from moiman100/fix-button-mask
...
Unified button mask behavior across platforms
2018-12-14 23:31:52 +01:00
bruvzg
4554c682e6
Changes IME input to use notification instead of callback, exposes IME methods to gdscript/gdnative.
2018-11-23 14:07:48 +02:00
bruvzg
bbac90c859
[macOS] Change runtime OS version checks to allow build with MacOS 10.9 SDK,
2018-11-19 23:24:28 +02:00
bruvzg
4aa441591c
[macOS] Disable setWantsLayer on macOS < 10.14
2018-11-18 16:20:29 +02:00
bruvzg
30852d0237
[macOS] Fix blank splash screen
2018-11-09 21:47:23 +02:00
bruvzg
07aee14dd7
Fix initial blank screen on macOS Mojave (except splash).
2018-11-04 11:19:28 +02:00
bruvzg
cfce8de0b5
Fix .app bundle crash on macOS
2018-11-04 11:19:28 +02:00
Rémi Verschelde
63d7c9be45
Merge pull request #23431 from buresu/fix-keycode
...
Fix keycode problem on OSX
2018-11-02 11:02:39 +01:00
Rémi Verschelde
8ac1bcfd3d
Fix init of VisualServerRaster
...
Contrarily to what #23434 assumed, this is not a memory leak,
the VisualServerRaster instance is passed as a parameter to
VisualServerWrapMT's constructor.
Fixes #23437 .
2018-11-01 19:23:12 +01:00
George Marques
4c9d734a75
Fix initialization of visual server in all platforms
...
Avoid leaking an extra instance when using threads. Also fix threaded
loading issues on Android and iOS.
2018-11-01 10:27:04 -03:00
Naoto Kondo
ca2476cdb4
Fix keycode problem on OSX
2018-11-01 20:00:02 +09:00
Marcelo Fernandez
a069685fbb
Fix OS X crash when running as .app
2018-10-29 21:50:41 -03:00
Marcelo Fernandez
fe93bb03fe
Server platform works on OS X too
2018-10-29 12:54:51 -03:00
Colin Kinloch
464842c62c
Update mouse location on background scroll and window focus in macOS
2018-10-24 14:47:37 +01:00
Patrick Beard
d2ed3b224a
Call -update when window becomes the key window
2018-10-23 07:22:40 -07:00
Rémi Verschelde
da6646dd5e
Merge pull request #22685 from remmah/patch-1
...
Modernized copy/paste APIs on macOS #7185
2018-10-05 12:20:57 +02:00
Rémi Verschelde
97b9697ea2
Fix some OSX and iOS Clang warnings
...
Fixes the following XCode 9.4.1 warnings:
```
core/os/memory.cpp:175:13: warning: unused variable 's' [-Wunused-variable]
drivers/coremidi/core_midi.cpp:68:14: warning: comparison between NULL and non-pointer ('MIDIEndpointRef' (aka 'unsigned int') and NULL) [-Wnull-arithmetic]
drivers/gles2/rasterizer_gles2.cpp:77:24: warning: unused function '_gl_debug_print' [-Wunused-function,34]
drivers/unix/thread_posix.cpp:106:12: warning: unused variable 'running_thread' [-Wunused-variable,34]
modules/gdnative/nativescript/nativescript.h:371:16: warning: in-class initialization of non-static data member is a C++11 extension [-Wc++11-extensions]
platform/iphone/gl_view.mm:56:14: warning: unused variable 'video_previous_volume' [-Wunused-variable,34]
platform/iphone/gl_view.mm:251:12: warning: unused function 'get_first_id' [-Wunused-function,34]
platform/iphone/main.m:45:15: warning: unused variable 'app' [-Wunused-variable,34]
platform/osx/os_osx.mm:79:15: warning: unused function 'convertRectToBacking' [-Wunused-function]
```
2018-10-04 11:50:16 +02:00
remmah
77fddfc7ea
Modernized copy/paste APIs on macOS #7185
2018-10-03 12:56:16 -04:00
Guilherme Felipe
360204e532
Fix Input::set_custom_mouse_cursor showing cursor when it's invisible
2018-09-17 11:37:54 -03:00
Guilherme Felipe
04aef23585
Fix set_custom_mouse_cursor changing to incorrect cursor shape
...
[Docs] Add class ref for Input::set_default_cursor_shape
2018-09-13 15:13:57 -03:00
Rémi Verschelde
277b24dfb7
Make core/ includes absolute, remove subfolders from include path
...
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
Martin Capitanio
bcee65284e
Really fix the custom cursor hotspot
...
Add check for negative values.
Fixes #21721
2018-09-04 04:42:23 +02:00
Guilherme Felipe
e5470cfa70
Fix custom cursor hotspot
...
Cursor hotspot must be inside image on Linux. Adding validation for all
platforms for consistency.
2018-09-03 09:57:07 -03:00
Hein-Pieter van Braam
08f452d1a9
Fall back to GLES2 if GLES3 is not working
...
This adds a static is_viable() method to all rasterizers which has to be
called before initializing the rasterizer. This allows us to check what
rasterizer to use in OS::initialize together with the GL context
initialization.
This commit also adds a new project setting
"rendering/quality/driver/driver_fallback" which allows the creator of a
project to specify whether or not fallback to GLES2 is allowed. This
setting is ignored for the editor so the editor will always open even if
the project itself cannot run. This will hopefully reduce confusion for
users downloading projects from the internet.
We also no longer crash when GLES3 is not functioning on a platform.
This fixes #15324
2018-08-26 16:40:46 +02:00
Marcelo Fernandez
05fc12ddb6
Add OS::open_midi_inputs and OS::close_midi_inputs
2018-08-04 10:07:46 -03:00
Hein-Pieter van Braam
0e29f7974b
Reduce unnecessary COW on Vector by make writing explicit
...
This commit makes operator[] on Vector const and adds a write proxy to it. From
now on writes to Vectors need to happen through the .write proxy. So for
instance:
Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;
Failing to use the .write proxy will cause a compilation error.
In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.
_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
Marcelo Fernandez
7a5f9fc08e
Added a new MIDIDriver class
2018-07-21 09:09:42 -03:00
Juan Linietsky
c69de2ba46
-Project/Editor settings now use new inspector
...
-Project/Editor settings now show tooltips properly
-Settings thar require restart now will show a restart warning
-Video driver is now visible all the time, can be changed easily
-Added function to request current video driver
2018-07-19 19:02:04 -03:00
mm
bd9c592c52
Fixed button mask behavior
2018-07-11 01:15:03 +03:00
unknown
9cc41a59ac
Added support for extra mouse buttons.
2018-07-09 14:34:19 +03:00
Saracen
c5bdb5b1d8
IME context detection.
2018-06-11 17:22:11 +01:00
Guilherme Felipe
c8e0ec0580
Change position of validation in set_custom_mouse_cursor
2018-05-28 09:36:30 -03:00
Max Hilbrunner
856d945248
Merge pull request #19210 from guilhermefelipecgs/fix_invalid_image
...
Add validation in set_custom_mouse_cursor
2018-05-28 12:52:10 +02:00
Guilherme Felipe
aad6bdad94
Add validation in set_custom_mouse_cursor
...
Check if the image is valid.
2018-05-27 20:55:05 -03:00
Guilherme Felipe
aa174d963d
Fix memory leak in set_custom_mouse_cursor
2018-05-26 15:56:35 -03:00
Guilherme Felipe
8c17d8e6fe
More fixes to set_borderless_window
...
[x11] Preserve window size when calling this method.
[osx] Make sure it don't make the window resizable if it's not needed.
[windows] clean up the code.
2018-05-23 17:42:31 -03:00
Max Hilbrunner
0980991e64
Merge pull request #19070 from guilhermefelipecgs/fix_19033
...
Fix mouse confined and set_borderless_window
2018-05-21 18:30:11 +02:00
Fabio Alessandrelli
875d822d77
Fix OSXCROSS build with clang-6.0
2018-05-21 16:16:16 +02:00
Guilherme Felipe
28d24c4f66
Fix #19033
...
- Fix a bug when mouse is confined don't update the cursor shape.
- Don't let the mouse leave the window when resizing to a smaller
resolution when MOUSE_MODE_CONFINED.
- Fix set_borderless_window to preserve the actual video_mode.widht/height.
2018-05-20 20:53:04 -03:00
Max Hilbrunner
0db3d1d2a7
Merge pull request #15739 from poke1024/macos-catch-exception
...
Catch NSException in macOS run loop to prevent crashs
2018-05-13 23:51:20 +02:00
bruvzg
096eb38fb0
[macOS] Fix numeric keys scan-codes remapping.
2018-05-13 22:19:08 +03:00
Rémi Verschelde
0902915c33
Merge pull request #18751 from guilhermefelipecgs/fix_cursor_osx
...
Fix custom cursor disappearing on osx
2018-05-11 14:23:13 +02:00
Guilherme Felipe
50a0220d2d
Reset the cursor with Input.set_custom_mouse_cursor(null)
2018-05-10 20:02:12 -03:00
Guilherme Felipe
48f9e6a05b
Fix custom cursor disappearing on osx
2018-05-09 20:06:59 -03:00
Guilherme Felipe
8ead09342d
Add support for atlas texture on set_custom_mouse_cursor
2018-05-09 12:44:43 +00:00
Hein-Pieter van Braam
e668757aa9
Merge pull request #14622 from bruvzg/non-rectangular-windows
...
Experimental support for windows with per-pixel transparency.
2018-05-08 16:44:35 +02:00
Guilherme Felipe
62b835a2cd
Fix custom cursor when it's hidden
...
[Linux] Ensures that the custom cursor will be used when changing to
MOUSE_MODE_VISIBLE. Fix #3086
[Windows] Fix cursor flickering when MOUSE_MODE_HIDDEN.
[Mac] Fix possible cursor flicker when MOUSE_MODE_HIDDEN.
2018-04-09 10:28:20 -03:00
bruvzg
ddae098dee
Experimental support for windows with per-pixel transparency (macOS, X11 and Windows).
2018-04-07 17:11:45 +03:00
Guilherme Felipe
dc57632d66
Remove size restriction for mouse cursor
2018-04-05 15:41:09 -03:00
bruvzg
5ba984fc8c
[macOS] Fix keyboard shortcuts on non QWERTY keyboard layouts.
2018-03-28 20:22:59 +03:00
bruvzg
d6c6a65438
Revert "Implement OS_OSX::execute"
...
This reverts commit e42576548f
.
2018-03-23 11:56:05 +02:00
bruvzg
14597dc2b2
Fix dragging window from non-retina to retina display.
2018-03-22 18:24:09 +02:00
Marcelo Fernandez
35d21c0881
Fix several in-class initialization clang warning
2018-03-22 00:17:18 -03:00
bruvzg
e42576548f
Implement OS_OSX::execute
2018-03-19 12:56:03 +02:00
Marcelo Fernandez
d780d774aa
Clean and expose get_audio/video_driver_* funcs on OS class
2018-03-04 14:18:05 -03:00
bruvzg
506e17ee70
Hack to force macOS window activation for non-bundled app.
2018-03-03 13:28:59 +02:00
Rémi Verschelde
8d01b706ff
Merge pull request #17158 from bruvzg/gles2_driver_select
...
[GLES2] Renderer selection improvement
2018-03-02 18:43:18 +01:00
bruvzg
a5a4f3714b
GLES2 renderer support on macOS.
2018-03-02 13:15:12 +02:00
bruvzg
f0d24de960
Fix `--help` output, allow renderer override from command line (`--video-driver`).
2018-03-02 10:05:14 +02:00
luz.paz
612ab4bbc6
Fix typos with codespell
...
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt`
Whitelist consists of:
```
ang
doubleclick
lod
nd
que
te
unselect
```
2018-02-21 19:46:06 +01:00
Rémi Verschelde
e0f43e0678
Merge pull request #15564 from RandomShaper/adpod-topmost
...
Add new window setting: always on top
2018-02-14 16:43:40 +01:00
Rémi Verschelde
7d7f8d9e54
Merge pull request #15864 from GodotExplorer/pr-get_unique_id-desktop-impl
...
Implement more methods for OS on Desktop platforms
2018-02-14 16:11:53 +01:00
Marcelo Fernandez
ea1d726a46
Added OS::center_window to center the window precisely on desktop platforms
2018-02-12 15:45:41 -03:00
geequlim
5980bef672
OSX: implement OS.get_unique_id
...
Update the documentations for OS.get_unique_id()
2018-02-01 23:29:39 +08:00
Pedro J. Estébanez
2e8c7824c0
Implement always-on-top for MacOS
...
Courtesy of @bruvzg.
2018-01-30 20:39:53 +01:00
Bernhard Liebl
2419ffd428
On macOS, prevent key_event_buffer overflows
2018-01-19 08:47:30 +01:00
Bernhard Liebl
3ff18ee61e
Catch NSException in macOS run loop to prevent crashs
2018-01-15 09:31:12 +01:00
bruvzg
f0029fd3c6
[macOS] Adds ability to open files with "Open With" or double-click from Finder
2018-01-12 16:38:19 +02:00
bruvzg
b3d803c901
Fix IME producing multiple events per key press.
2018-01-10 13:43:24 +02:00
Rémi Verschelde
51709cd8c8
Merge pull request #15344 from bruvzg/osx_dylib_export
...
[GDnative] macOS `dylib` export fixes
2018-01-08 15:12:50 +01:00
bruvzg
ff82fbdf64
Remove 10.6+ runtime version checks, add 10.12+ runtime version checks
2018-01-07 01:21:47 +02:00
bruvzg
47770df198
Fix build on macOS pre 10.12, fix deprecation warnings on 10.12+
2018-01-06 16:12:57 +02:00
Rémi Verschelde
e4213e66b2
Add missing copyright headers and fix formatting
...
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
bruvzg
cce6adfc51
Adds dylib export for "dmg" export mode and change dylib path to "/Contents/Frameworks"
2018-01-04 21:41:59 +02:00
Duy-Nguyen TA
322cb08dd9
Fix macOS and other builds after #15299
...
Commit ammended by @akien-mga to fix more platforms.
2018-01-04 19:48:05 +01:00
Emmanuel Leblond
e315c94900
Change OS::initialize signature to return Error (fix segfault on x11)
2018-01-04 15:15:55 +01:00
Rémi Verschelde
b997773b26
Merge pull request #15033 from poke1024/shortcuts-mac
...
Alternative keyboard shortcuts for macOS
2018-01-04 14:56:29 +01:00
Rémi Verschelde
6322b0bbb7
Merge pull request #12814 from guilhermefelipecgs/add_hardware_custom_cursor
...
Custom hardware-accelerated mouse cursor
2018-01-03 08:35:59 +01:00
Rémi Verschelde
b50a9114b1
Update copyright statements to 2018
...
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
Bernhard Liebl
3f122672a2
On macOS, change some default editor shortcuts
2017-12-26 11:24:12 +01:00
Guilherme Silva
a392dbdbe3
Add implementation for custom hardware cursor
2017-12-17 13:40:29 -02:00
Juan Linietsky
652c98a7be
Add epic hack so vsync can be toggled in run-time from script. Fixes #14458 .
...
Call needs to be routed via visual server to reach the proper thread.
2017-12-16 17:11:02 -03:00
Rémi Verschelde
fb84b49d87
Fix type mismatch in OS::set_borderless_window
...
Closes #14663 .
2017-12-14 19:16:20 +01:00
Juan Linietsky
f3ad14224e
-Add lightmapper
...
-Fixes to unwrapper (remove degenerates), makes Thekla not crash
-Added optional cancel button in EditorProgress
-Added function to force processing of events (needed for cancel button)
2017-12-14 09:01:27 -03:00
Stefano Bonicatti
c067cf2c6a
Fixes vsync setting ignored when using a separate thread for rendering
...
Setting the vsync in the main thread, after the rendering thread starts
and takes the OpenGL context fails, so we need to do that before.
Also, for some reason, the main thread cannot make current the context
anymore.
Fixes #13447
2017-12-09 01:43:23 +01:00
Rémi Verschelde
13c2ff9320
Style: Apply new clang-format 5.0 style to all files
2017-12-07 08:02:00 +01:00
bruvzg
4899d91732
Add macOS shell_open URL escaping
2017-12-01 16:48:21 +02:00
Rémi Verschelde
6c9ee1f125
Merge pull request #13133 from endragor/resurrect-file-logging
...
Return and repair file logging
2017-11-21 14:25:33 +01:00
Ruslan Mustakov
d42c5646a5
Return and repair file logging
...
And make it configurable, too.
2017-11-21 16:43:44 +07:00
Bernhard Liebl
80ad8afc85
Native pan and zoom for macOS
2017-11-21 09:11:39 +01:00