summaryrefslogtreecommitdiff
path: root/platform/windows/os_windows.cpp
AgeCommit message (Collapse)Author
2022-12-21Fix reading Unicode from stdio.bruvzg
2022-12-12Windows: Validate that the font family name exists before trying to get the ↵oOjor-elOo
font family I didn't have the first emoji font installed, which led an an exception when calling font_collection->GetFontFamily() no the new rows.
2022-12-12Merge pull request #69718 from groud/finally_rename_gdnative_to_gdextensionRémi Verschelde
Rename all gdnative occurences to gdextension
2022-12-12Only support XDG directory path configuration on LinuxHugo Locurcio
XDG support breaks when running Windows builds via WINE. Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-12-12Rename all gdnative occurences to gdextensionGilles Roudière
Non-exhaustive list of case-sensitive renames: GDExtension -> GDNative GDNATIVE -> GDEXTENSION gdextension -> gdnative ExtensionExtension ->Extension (for where there was GDNativeExtension) EXTENSION_EXTENSION ->EXTENSION (for where there was GDNATIVE_EXTENSION) gdnlib -> gdextension gdn_interface -> gde_interface gdni -> gde_interface
2022-12-04Use system fonts as fallback and improve system font handling.bruvzg
Add support for font weight and stretch selection when using system fonts. Add function to get system fallback font from a font name, style, text, and language code. Implement system font support for Android. Use system fonts as a last resort fallback.
2022-11-17[Windows] Use case-sensitive file names for the system fonts to avoid warnings.bruvzg
2022-11-04Merge pull request #67434 from bruvzg/win_wrapperRémi Verschelde
Add console wrapper app to handle console i/o redirection on Windows.
2022-11-01Load and use system emoji font in the editor.bruvzg
2022-10-31Add console wrapper app to handle console i/o redirection on Windows.bruvzg
2022-10-31Merge pull request #67578 from KoBeWi/GEDITORRémi Verschelde
Unify usage of GLOBAL/EDITOR_GET
2022-10-27Fix OS.get_video_adapter_driver_info crashzCubed3
2022-10-18Unify usage of GLOBAL/EDITOR_GETkobewi
2022-10-12[Windows] Fix GCC MinGW warnings.bruvzg
2022-10-11Merge pull request #66102 from MJacred/feature/getvideoadapterdriverinfoRémi Verschelde
Fetch video adapter driver name and version from OS
2022-10-11Fetch video adapter driver name and version from OS on Linux/*BSD and WindowsMJacred
2022-10-11Merge pull request #67242 from akien-mga/cleanup-unused-definesRémi Verschelde
Cleanup unused defines in platform code
2022-10-11Cleanup unused defines in platform codeRémi Verschelde
2022-10-11Fix newlines not honored in Windows consolePedro J. Estébanez
This is relevant when building with `windows_subsystem=console`.
2022-10-06Merge pull request #66965 from bruvzg/win_llvmRémi Verschelde
[Windows] Fix LLVM MinGW build.
2022-10-06[Windows] Fix LLVM MinGW build.bruvzg
2022-10-05Keep a single, portable implementation of `OS::get_processor_count()`Pedro J. Estébanez
2022-09-16Add get_distribution_name() and get_version() to OSMJacred
supports: LinuxBSD, Windows, macOS, iOS, Android, UWP Co-authored-by: bruvzg
2022-09-10Fixes #65377: get_datetime_* functions can return wrong valuesJames
2022-09-08Merge pull request #44118 from Calinou/windows-enable-ansi-escape-codesYuri Sizov
Enable ANSI escape code processing on Windows 10 and later
2022-08-29Rename String `plus_file` to `path_join`Aaron Franke
2022-08-27Remove unused force_quit variable from many OS abstractionsPedro J. Estébanez
2022-08-10Enable ANSI escape code processing on Windows 10 and laterHugo Locurcio
This lets the engine and projects use the same color codes in the terminal on all platforms. This includes support for `print_rich()` (GDScript) and `print_line_rich()` (C++).
2022-07-26Implement support for loading system fonts on Linux, macOS / iOS and Windows.bruvzg
2022-07-24Fixes `OS.get_unique_id()` string not getting printed properlyMaxIsJoe
Fixes #61023 Changing it back to how it's done on the 3.x branch fixed the text not being written properly.
2022-05-16Replace most uses of Map by HashMapreduz
* Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
2022-05-13Merge pull request #60894 from derammo/derammo_opengl3_windowsRémi Verschelde
2022-05-11opengl3 driver now works on windows including multi windowderammo
fixed and simplified gl_manager_windows swap buffers now called for all windows fixed missing pixel format setting in additional windows this makes them work in OpenGL contexts changed verbose error printing to write once this error message happens very frequently while opengl3 is not finished removed dead code no longer needed after changes fixed comments that were misinformation window messages during window creation now handled these were previously discarded messages now tunnel the required context changed failure to create opengl3 window on windows to be more fatal marked a problem with pen code conditional compilation of vulkan and opengl3 on windows fixed windows debug builds now show messages on debug console also rendering driver selection box now shows only compiled drivers marked some problematic code thanks to akien-mga for patiently rewriting my style mistakes
2022-05-10Try to convert OS::execute() output to Unicode on WindowsHaoyu Qiu
2022-05-03Add OS::is_process_running function.mdavisprog
Adds the is_process_running function to the native OS class and exposes it to script. This is implemented on Windows and Unix platforms. A stub is provided for other platforms that do not support this function. Documentation is updated to reflect new API function.
2022-04-29Add GDNativeInterface::get_library_path to GDExtensionEmmanuel Leblond
2022-04-20Improve embedded PCK loading and exporting.bruvzg
Windows export process: Limit size of executable with embedded PCK to 4 GB. Use "rcedit" before embedding PCK. Capture and process "rcedit" errors. Windows, Linux: Add support for PCK loading from executable "pck" section.
2022-03-17Fix DST Error on Windowsztco224
2022-02-16Style: Cleanup single-line blocks, semicolons, dead codeRémi Verschelde
Remove currently unused implementation of TextureBasisU, could be re-added later on if needed and ported.
2022-02-15Add an `OS.get_processor_name()` methodHugo Locurcio
This method can be used to get the CPU model name. It can be used in conjunction with `RenderingServer.get_video_adapter_name()` and `RenderingServer.get_video_adapter_vendor()` for annotating benchmarks and automatic graphics quality configuration.
2022-02-14[OS/Crypto] Add get_entropy to OS.Fabio Alessandrelli
Implemented via `BCryptGenRandom` on Windows. Implemented via `getentropy` syscall when available. Implemented via `/dev/urandom` device as a fallback. The `/dev/urandom` fallback can be disabled via the `NO_URANDOM` build flag. Note: The HTML5 version relies on emscripten file system urandom device which itself uses the Crypto API when available or the plain old not crypto-safe `Math.random()` otherwise. Restore get_entropy.
2022-01-28[Windows] Disable console I/O redirection, if it's already redirected to the ↵bruvzg
pipe or file.
2022-01-27Minor typo fixups to Windows console changesMax Hilbrunner
2022-01-17Merge pull request #56012 from bruvzg/wt🤎4Rémi Verschelde
2022-01-05Windows: Simplify QueryPerformanceCounter usageBartłomiej T. Listwon
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-18[Windows] Improve console handling and execute/create_process.bruvzg
Always build with the GUI subsystem. Redirect stdout and stderr output to the parent process console. Use CreateProcessW for blocking `execute` calls with piped stdout and stderr (prevent console windows for popping up when used with the GUI subsystem build, and have more consistent behavior with `create_process`). Add `open_console` argument to the `execute` and `create_process` to open a new console window. Remove `interface/editor/hide_console_window` editor setting. Remove `Toggle System Console` menu option. Remove `set_console_visible` and `is_console_visible` functions.
2021-12-15[Windows] Detect new Windows Terminal and disable unsupported ↵bruvzg
set_console_visible code.
2021-12-14[Windows] Open a new console window for the editor instances.bruvzg
2021-12-09Replace String comparisons with "", String() to is_empty()Nathan Franke
Also: - Adds two stress tests to test_string.h - Changes to .empty() on std::strings