Commit Graph

2955 Commits

Author SHA1 Message Date
binary1248
81a1da6a59 Revert "Added a VertexBuffer implementation to all Drawables that were rendered via VertexArrays."
This reverts commit 4dfad062e4.
2019-09-01 18:20:13 +02:00
Jonny
b00317e90c Initialise m_context correctly in SFContext constructors 2019-09-01 17:40:57 +02:00
Benjamin Porter
86672a3724 Fix: Win32 no longer hides cursor when hovering title bar, keeping in line with behaviour of other platforms. 2019-03-17 15:51:06 +11:00
binary1248
4043f71156
Fixed missing checks for empty vertex arrays when updating the vertex buffers in sf::Text. (Fixes #1558) 2019-02-20 20:26:23 +01:00
Lukas Dürrenberger
6d8143088e Disabled test suite for Visual Studio Dynamic build on Travis 2019-02-19 10:17:55 +01:00
Lukas Dürrenberger
7e7216f598 Renamed test targets to test-sfml-module structure 2019-02-19 10:16:38 +01:00
Lukas Dürrenberger
1d768839e7 Removed test suite for Android builds 2019-02-19 10:16:38 +01:00
=
53972ed5f2 Use sfml_add_test macro for unit tests and copy dlls to output directory if required 2019-02-19 10:16:38 +01:00
Jonny
2c3a321afd Update travis/appveyor to build and run test suite 2019-02-19 10:16:38 +01:00
Lukas Dürrenberger
c626332e03 Disabled tests by default 2019-02-19 10:16:38 +01:00
Jonny Paton
d53858afb1 Removed incompatible cmake/catch functionality, replaced with vanilla cmake 2019-02-19 10:16:38 +01:00
Jonny Paton
bc7258006c Restructure test source folders 2019-02-19 10:16:38 +01:00
Jonny Paton
d3a072fb63 Use modern cmake testing functionality including catch integration 2019-02-19 10:16:38 +01:00
Lukas Dürrenberger
a88e854dc3 Added test cases for Vector3<T> 2019-02-19 10:16:38 +01:00
Lukas Dürrenberger
d402ce5a5d Separated test suites into their individual modules
- Building per module only requires to have split test utility sections
- System module tests are always added, as the system module is always built
2019-02-19 10:16:38 +01:00
Lukas Dürrenberger
7d496095a5 Updated catch to v1.12.2 2019-02-19 10:16:38 +01:00
Jan Haller
11b3fe4283 Added tags (module names) in TEST_CASE macros 2019-02-19 10:16:38 +01:00
Jan Haller
c3e5a35a6e Added string conversions for equality-comparable classes
Provides a Catch::toString() overload for the following SFML classes, that support at least operator== and operator!=, and can thus be used in Catch assertion expressions:
* String
* Time
* Vector2<T>
* Vector3<T>
* VideoMode
* Color
* Rect<T>

The intermediate header UnitTests.hpp is introduced to ensure string conversion visibility.
Do not include <catch.hpp> directly any longer.
2019-02-19 10:16:38 +01:00
Zack Mulgrew
620c9989d6 Add unit test for Rect.hpp 2019-02-19 10:16:38 +01:00
Jan Haller
5b08f8133f Used LF as line ending; added line break for echo output
winline
2019-02-19 10:16:38 +01:00
Jan Haller
a85dc6dabb Rewrote Vector2 tests in a more concise way 2019-02-19 10:16:38 +01:00
Stefan Schindler
3d46e39e6d Added Catch unit test framework. Added Vector2(i) unit test. Re-enabled CMake's RPATH feature. 2019-02-19 10:16:38 +01:00
SGauvin
9c8cc19f96 Removed useless cast
Removed useless cast in SFML/System/Utf.inl at line 296.
This useless cast creates a warning when using -Wuseless-cast as an option in g++ and clang++.
Operations can't be made on types smaller than 4 bytes (32 bits), so types smaller than 4 bytes are converted to at least 4 bytes types, thus rendering the static_cast<Uint32> useless in this particular case.
2019-02-19 10:08:58 +01:00
binary1248
4dfad062e4 Added a VertexBuffer implementation to all Drawables that were rendered via VertexArrays. 2019-02-19 10:05:59 +01:00
Mario Liebisch
0980e90ee4 Fixed potential buffer overrun in Win32 OpenGL error handling
This fixes issue #1245.
2019-01-23 15:27:40 +01:00
Tobias Widlund
bf92efe9a4 Remove usages of std::auto_ptr to get rid of warnings when building with
gcc 8.2+
2019-01-23 15:25:34 +01:00
Jonny Paton
353c846c87 Update examples for iOS including touch support, proper handling of window resize, launch screens and icons 2019-01-19 01:34:30 +01:00
Ceylo
9f4a0c3c4f Make Pong example "usable" on iOS 2019-01-19 01:29:12 +01:00
Ceylo
5ab36271c7 Remove iOS example 2019-01-19 01:29:12 +01:00
Ceylo
1272b704d6 window, opengl and pong examples now work on iOS 2019-01-19 01:29:12 +01:00
Ceylo
82c2f4c05e All mobile-compatible examples now successfully link 2019-01-19 01:29:12 +01:00
=
b516a3ae2b Fix travis android build to use NDK version r18b 2019-01-18 16:20:56 +00:00
hobby8
7e40f80f52 Fix OpenGL extensions not loading 2019-01-15 23:55:31 +01:00
=
53d8f66d43 Add travis android builds 2019-01-15 20:23:19 +01:00
=
195f5d7409 Removed old android cmake toolchain 2019-01-09 15:22:49 +00:00
EpicCoder
489482a630 Updated the copyright year to 2019 2019-01-08 08:53:33 +01:00
binary1248
ae337952a9
Allow creation of a window without an OpenGL context in order to support use cases where the user wants to render using other graphics APIs. 2019-01-05 23:22:08 +01:00
binary1248
04131e1607 Fixed EGL incorrectly being passed the anti-aliasing level as EGL_SAMPLE_BUFFERS instead of EGL_SAMPLES. Fixes #1533. 2019-01-05 00:54:37 +01:00
binary1248
db80f6a60f
Make sure setActive(false) is called before the surface is destroyed in EglContext. Fixes #1530. 2018-12-29 13:36:01 +01:00
Jonny
b9fdaf487f Add static builds to travis build matrix and give all jobs names 2018-12-08 10:14:49 +00:00
=
1bf3ae77b9 Use Travis for windows builds 2018-12-04 10:11:16 +00:00
Elias Daler
b81de898bf Modify install rpath only if BUILD_SHARED_LIBS is ON 2018-12-03 19:39:19 +01:00
Elias Daler
fbc0f17198 Fix RPATH for installed examples on Linux 2018-12-03 19:39:19 +01:00
cosiek
077af21f37 allow for closing sound files 2018-12-03 19:27:53 +01:00
Dmitry Marakasov
119195ac20 Remove unneeded cast 2018-12-03 18:41:22 +01:00
Lukas Dürrenberger
2be4e54d4a
Fixed example documentation to match the code 2018-11-25 17:23:25 +01:00
Jonny Paton
1159ac5c52 Initial travis and Appveyor configs 2018-11-17 19:35:01 +01:00
Sven Hesse
de0ba77d3b Unix: Filter X visual by X screen
On an X set-up with multiple monitors running separate X screens (as
opposed to merging them into one large X screen using Xinerama), the
selected X visual needs to be one for the screen where the colormap,
window, and other X resources are created. In fact, all these need to
match, and the GL context as well.

Most of the SFML windowing and graphics code uses (X)DefaultScreen()
for that, which is fine. Combined with XOpenDisplay(NULL), this will
create the window on the screen (and monitor) selected by the DISPLAY
enviroment variable. :0.0 will be the first monitor, :0.1 the second,
etc.

However, XGetVisualInfo() will return visuals for *all* screens, not
just the default one. They seem to be ordered by screen number, but I
don't think the standard makes any guarantees there.

If the visual doesn't match up with the screen, this will abort with
an X error. BadMatch, in many cases.

This means that in addition to other filtering,
GlxContext::selectBestVisual() needs to filter the visuals by screen
number, otherwise SFML won't work at all on any screens but the first.

This fixes issue #724.
2018-10-26 21:15:25 +02:00
binary1248
ac98be760b Allow re-creation of the shared context as a core context if the user indicates they want a core profile context. Sharing of compatibility and core profile contexts is not possible on macOS which is why we need to have a way to re-create the shared context as a core context if required in this case. 2018-10-23 21:54:36 +02:00
Lukas Dürrenberger
3f4bc3683b Updated the changelog and version number for 2.5.1 2018-10-15 21:52:40 +02:00