summaryrefslogtreecommitdiff
path: root/platform/x11
AgeCommit message (Collapse)Author
2019-07-30Turn `OS.set_min/max_window_size()` warnings into errorsHugo Locurcio
Since invalid values will cause the setting to be discarded, it makes more sense to display an error message instead of a warning message.
2019-07-24Fix crash caused by a9a0d0fb15cc5e028dbf8dab8b46d3dc197c4678Guilherme Felipe
2019-07-23Fix some code found by Coverity Scan and PVS Studioqarmin
2019-07-09Fix cursor blinking in integrated GPUsGuilherme Felipe
Optimization for Input::set_custom_mouse_cursor when used inside _process function. (Avoids cursor blinking in low end devices)
2019-07-07Fixes minor issues found by static analyzerqarmin
2019-07-05Merge pull request #24086 from RandomShaper/bundle-pck-to-executableRémi Verschelde
Enhance game export
2019-07-04Remove libwebsocket. No longer used, yay!Fabio Alessandrelli
2019-07-03Add embedded PCK option to PC platformsPedro J. Estébanez
The basic point is as in 2.1 (appending the PCK into the executable), but this implementation also patches a dedicated section in the ELF/PE executable so that it matches the appended data perfectly. The usage of integer types is simplified in existing code; namely, using plain `int` for small quantities.
2019-07-03SCons: Use CPPDEFINES instead of CPPFLAGS for pre-processor definesRémi Verschelde
It's the recommended way to set those, and is more portable (automatically prepends -D for GCC/Clang and /D for MSVC). We still use CPPFLAGS for some pre-processor flags which are not defines.
2019-07-02Fix various memory leaks and errorsBojidar Marinov
2019-07-01Merge pull request #29815 from NilsIrl/plus_file_1Rémi Verschelde
Replace ` + "/" + ` with `String::file_add()`
2019-06-27Merge pull request #29941 from qarmin/redundant_code_and_othersRémi Verschelde
Remove redundant code, possible NULL pointers and others
2019-06-26Some code changed with Clang-Tidyqarmin
2019-06-23Replace ` + "/" + ` with `String::file_add()`Nils ANDRÉ-CHANG
2019-06-23SCons: Default to builtin libpng/freetype on LinuxRémi Verschelde
The rationale for keeping those shared by default is that they're typical dependencies found on any Linux system, and it saves compilation time and binary size to link their dynamically. But since official builds default to all-builtin, and Debian/Ubuntu still don't have libpng16 (which we now require) readily available on all their supported releases, it's simpler to bundle all the things. This does not change the fact that those dependencies *can* be unbundled on Linux, it's only the default option changing.
2019-06-20Merge pull request #29874 from ibrahn/rework-png-loadsaveRémi Verschelde
PNG driver reworked to use libpng 1.6 simplified API
2019-06-19Png driver reworked to use libpng 1.6 simplified APIIbrahn Sahir
Wrapped libpng usage in a pair of functions under PNGDriverCommon, which convert between Godot Image and png data. Switched to libpng 1.6 simplified API for ease of maintenance. Implemented ImageLoaderPNG and ResourceSaverPNG in terms of PNGDriverCommon functions. Travis, switched to builtin libpng (thus builtin freetype and zlib also) so we can build on Xenial.
2019-06-19Linux: Check return values of posix read/writeMartin Capitanio
Fixes #29849, for real this time.
2019-06-17Linux: Check return value of chdir on cleanupRémi Verschelde
Some compilers trigger a warning for it if we do not bother checking the return value. Fixes #29849.
2019-06-17Merge pull request #29752 from bruvzg/window_size_limitsRémi Verschelde
Add ability to limit maximum/minimum window size.
2019-06-15Adding a new Camera Server implementation to Godot.BastiaanOlij
This is a new singleton where camera sources such as webcams or cameras on a mobile phone can register themselves with the Server. Other parts of Godot can interact with this to obtain images from the camera as textures. This work includes additions to the Visual Server to use this functionality to present the camera image in the background. This is specifically targetted at AR applications.
2019-06-15Add ability to limit maximum/minimum window size.bruvzg
2019-06-12Merge pull request #29465 from bruvzg/per_pixel_transp_imprRémi Verschelde
Removes redundant "splash" setting, improves per pixel transparency documentation.
2019-06-12Merge pull request #29306 from qarmin/small_code_fixesRémi Verschelde
Small fixes to unrechable code, possibly overflows, using NULL pointers
2019-06-11bullet: Sync with current upstream master branchRémi Verschelde
This updates our local copy to commit 5ec8339b6fc491e3f09a34a4516e82787f053fcc. We need a recent master commit for some new features that we use in Godot (see #25543 and #28909). To avoid warnings generated by Bullet headers included in our own module, we include those headers with -isystem on GCC and Clang. Fixes #29503.
2019-06-11[X11] Add window borderless state detection, fix borderless state ↵bruvzg
restoration after exiting fullscreen.
2019-06-04Removes redundant "display/window/per_pixel_transparency/splash" setting, ↵bruvzg
improves per pixel transparency documentation.
2019-06-03Small fixes to unrechable code, possibly overflows, using NULL pointersqarmin
2019-05-31Fix and expose String::strip_escapes(), use it in LineEdit pasteRémi Verschelde
Supersedes #27736.
2019-05-28Merge pull request #28512 from MJacred/masterRémi Verschelde
Fix application window not listed in taskbar (X11)
2019-05-23Check project settings live before lookup in crash handlerIbrahn Sahir
In x11, windows and osx crash handlers, check project settings exists before looking up the crash handler message setting. Avoids crashing the crash handler when handling a crash outside project settings lifetime. Instead omitting the configurable message and continuing with trace dump.
2019-05-23Fixed uninitialised variable in x11 null cursor creationIbrahn Sahir
Fully initialised color var. Clarified intent a little with comments/layout.
2019-05-21added a const keyword for a methods that return constant literal...hbina085
2019-05-09X11: Check if "_NET_FRAME_EXTENTS" atom is supported.bruvzg
2019-05-01Fixed game crash, regression of #26977Andrea Catania
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2019-05-01Merge pull request #27676 from qarmin/small_fixes_2Rémi Verschelde
Small fixes to static analyzer bugs
2019-04-30SCons: Always use env.Prepend for CPPPATHRémi Verschelde
Include paths are processed from left to right, so we use Prepend to ensure that paths to bundled thirdparty files will have precedence over system paths (e.g. `/usr/include` should have lowest priority).
2019-04-30Fix application window not listed in taskbar (X11)MJacred
* for executable * for editor and exported executable (on older Cinnamon versions)
2019-04-30Merge pull request #26977 from bruvzg/fix_x11_window_posRémi Verschelde
Fix get_window_position / set_window_position on Linux
2019-04-29Merge pull request #28061 from guilhermefelipecgs/fix_19137Rémi Verschelde
[Input] Release keys/actions pressed if window loses focus
2019-04-27[Input] Release keys/actions pressed if window loses focusGuilherme Felipe
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com> Co-authored-by: Marcelo Fernandez <marcelofg55@gmail.com>
2019-04-26fix builds made with Clang on some Linux distrosMichele Valente
This is the same as #23542 (Fix binaries incorrectly detected as shared libraries on some linux distros) but for Clang. It should be fine with Clang 4 or higher.
2019-04-25Merge pull request #28402 from Valentactive/add-thinlto-support-x11Rémi Verschelde
Add option to use ThinLTO
2019-04-25add option to use ThinLTOMichele Valente
This adds ThinLTO support when using Clang and the LLD Linker, it's turned off by default. For now only support for Linux added as ThinLTO support on other platforms may still be buggy.
2019-04-24SCons: Review uses of CCFLAGS, CXXFLAGS and CPPFLAGSRémi Verschelde
Many contributors (me included) did not fully understand what CCFLAGS, CXXFLAGS and CPPFLAGS refer to exactly, and were thus not using them in the way they are intended to be. As per the SCons manual: https://www.scons.org/doc/HTML/scons-user/apa.html - CCFLAGS: General options that are passed to the C and C++ compilers. - CFLAGS: General options that are passed to the C compiler (C only; not C++). - CXXFLAGS: General options that are passed to the C++ compiler. By default, this includes the value of $CCFLAGS, so that setting $CCFLAGS affects both C and C++ compilation. - CPPFLAGS: User-specified C preprocessor options. These will be included in any command that uses the C preprocessor, including not just compilation of C and C++ source files [...], but also [...] Fortran [...] and [...] assembly language source file[s]. TL;DR: Compiler options go to CCFLAGS, unless they must be restricted to either C (CFLAGS) or C++ (CXXFLAGS). Preprocessor defines go to CPPFLAGS.
2019-04-23Merge pull request #26961 from ibrahn/fix-x11setcontext-access-freedHein-Pieter van Braam
fixed an access after free in OS_X11::set_context. (long version)
2019-04-23Merge pull request #27208 from Calinou/add-lld-linkerHein-Pieter van Braam
Add support for linking using LLD on X11
2019-04-22fixed an access after free in OS_X11::set_context.Ibrahn Sahir
Added constructor and assignment operator for CharString from const char* to simplify memory management when working with utf8/ascii strings for APIs taking char*. Reworked OS_X11::set_context to use CharString and avoid some manual memory management.
2019-04-22Merge pull request #27673 from qarmin/small_fixesRémi Verschelde
Small fixes, mostly duplicated code
2019-04-15Add Input::get_current_cursor_shapeGuilherme Felipe
[Clean up] Removed unused/unnecessary methods.