Vittorio Romeo
3dc8fc0923
Add 'NetworkUtil' for network module tests
2022-01-03 01:00:55 +01:00
Jan Haller
3b06972602
Update year to 2022
2022-01-02 23:06:31 +01:00
Vittorio Romeo
5ba6580568
Make 'Time' a 'constexpr' class
2021-12-28 16:52:52 +01:00
Chris Thrasher
14fff20eb8
Remove redundant API taking x,y pair instead of sf::Vector
2021-12-26 17:13:18 +01:00
kimci86
53594dfbe7
Fix null pointer dereference in Font
2021-12-23 17:03:16 +01:00
kimci86
d0c63f46fc
Use a smart pointer to manage std::FILE pointer in FileInputStream
2021-12-22 02:35:45 +01:00
Vittorio Romeo
f6de7eca40
Use smart pointers to manage memory
2021-12-21 19:54:25 +01:00
Lukas Dürrenberger
e982d08f37
Merge pull request #1920 from SFML/feature/backmerge
...
Back-merge changes from 2.6.x to master
2021-12-20 14:22:56 +01:00
Lukas Dürrenberger
3cd45a283b
Merge branch '2.6.x' into feature/backmerge
2021-12-20 13:44:56 +01:00
Chris Thrasher
14bbb0d1cc
Unify toLower implementations
2021-12-20 08:29:05 +01:00
Pawel Paruzel
c824d3d57a
Fix all macOS clang warnings
...
Co-authored-by: binary1248 <binary1248@hotmail.com>
2021-12-20 00:10:55 +01:00
Pawel Paruzel
4df16d19e5
Fix Clang warnings on Android
2021-12-20 00:10:55 +01:00
Vittorio Romeo
4a189d6602
Remove build logic for unsupported compilers
2021-12-19 21:51:53 +01:00
Vittorio Romeo
18bb892625
Improve compilation times by removing some includes and avoiding heavy dependencies
2021-12-19 18:13:07 +01:00
Vittorio Romeo
569a7549d4
Fix -Wmissing-braces
warning under clang
2021-12-19 15:58:29 +01:00
Vittorio Romeo
a20d73aafa
Make 'Vertex' a 'constexpr' class
2021-12-19 15:35:47 +01:00
Vittorio Romeo
ed201ce87a
Make 'Color' a 'constexpr' class
2021-12-18 21:34:05 +01:00
Vittorio Romeo
cfeb7651b5
Make 'Rect' a 'constexpr' class
2021-12-18 17:29:41 +01:00
Vittorio Romeo
f6bd12c300
Replace 'sf::NonCopyable' with '= delete'
2021-12-16 22:39:38 +01:00
Vittorio Romeo
3c7fba0f96
Reduce compile-time impact of 'windows.h'
2021-12-16 22:39:07 +01:00
Pawel Paruzel
dfff93fe04
Update SFML Time classes to C++17
...
Ensure Clock uses a monotonic clock
Statically assert against low precision clocks
Allow suspend-aware clock for Android
Add descriptive documentation to sf::Clock
2021-12-15 12:52:27 +01:00
Vittorio Romeo
e9e353a7b2
Remove redundant APIs taking '(x, y)' in favour of ones taking 'sf::Vector'
2021-12-15 11:22:46 +01:00
Vittorio Romeo
bb854fa739
Strategic use of '[[nodiscard]]' in 'Audio' module
2021-12-14 15:19:37 +01:00
Vittorio Romeo
ab0378805d
Strategic use of '[[nodiscard]]' in 'System' module
2021-12-14 14:02:05 +01:00
Vittorio Romeo
b33f4bb205
Replace SFML multithreading primitives with standard C++ ones
2021-12-14 01:07:29 +01:00
Anton Vasiliev
db38696c48
Fix calling convention for SetProcessDpiAwareness
...
A few changes ago a WINAPI was lost on SetProcessDpiAwareness function
declaration. This is incorrect because it changes calling convention
from stdcall to cdecl.
2021-12-12 23:28:56 +01:00
Vittorio Romeo
363e964acc
Strategic use of '[[nodiscard]]' in 'Graphics' module
2021-12-10 01:27:05 +00:00
Vittorio Romeo
d02d3590fd
Use 'std::optional' instead of 'std::vector' for temporary 'AudioDevice'
2021-12-09 22:35:14 +00:00
Vittorio Romeo
7343b112fc
Strategic use of '[[nodiscard]]' in 'Network' module
2021-12-09 22:34:57 +00:00
Vittorio Romeo
3579ecbdb0
Strategic use of '[[nodiscard]]' in 'Window' module
2021-12-09 19:53:54 +00:00
Vittorio Romeo
bc5b41657c
Remove deprecated 'PrimitiveType::Quads'
2021-12-09 16:33:02 +00:00
Lukas Dürrenberger
cd517ba267
Merge branch '2.6.x' into feature/backmerge
2021-12-09 14:36:55 +01:00
Vittorio Romeo
6678fdd291
Remove deprecated 'Shader::setParameter' API
2021-12-09 13:12:03 +00:00
Vittorio Romeo
0e28212584
Remove deprecated overload of 'RenderWindow::capture'
2021-12-09 13:12:03 +00:00
Vittorio Romeo
e7a5039cd9
Remove deprecated overload of 'RenderTexture::create'
2021-12-09 13:12:03 +00:00
Vittorio Romeo
f6186d880d
Remove deprecated 'Text::[set|get]Color'
2021-12-09 13:12:03 +00:00
Vittorio Romeo
21d594a765
Remove 'MouseWheelEvent' and adjust usages
2021-12-09 13:12:03 +00:00
Vittorio Romeo
d12a2cd319
Use 'override' whenever possible instead of 'virtual'
2021-12-09 09:07:03 +01:00
2567551469
X11: fix XIM input method support
2021-12-09 09:04:59 +01:00
Vittorio Romeo
a23076d7bb
Replace 'BoolType' with 'explicit operator bool'
2021-12-09 09:03:55 +01:00
Vittorio Romeo
87e84bc9e5
Minor modernization changes: 'nullptr', range-based 'for' loops, ...
2021-12-08 21:41:20 +00:00
Vittorio Romeo
2839f6b4d2
Use 'auto' where no information is lost
2021-12-08 19:14:31 +00:00
Vittorio Romeo
9a0cc4b7dc
Use alias declarations instead of 'typedef'
2021-12-08 17:58:13 +00:00
Anton Vasiliev
f03a415121
Use std::vector.data() where appropriate
2021-12-08 16:26:03 +00:00
Vittorio Romeo
f87f5a3f72
Use 'shrink_to_fit' instead of 'swap'
2021-12-08 16:07:15 +00:00
Vittorio Romeo
3914bd0062
Remove redundant synchronization for 'static' variable initialization
2021-12-08 16:07:15 +00:00
Vittorio Romeo
8be8a76cba
Use 'auto', range-'for', and structured bindings to improve some loops
2021-12-08 13:05:52 +01:00
lieff
e458f4651e
Add MP3 decoding support using 'minimp3'
...
Co-authored-by: Lukas Dürrenberger <eXpl0it3r@my-gate.net>
Co-authored-by: Vittorio Romeo <vittorio.romeo@outlook.com>
2021-12-08 08:19:08 +01:00
Vittorio Romeo
51ebeaf383
Change most associative containers to their respective 'unordered' version
2021-12-06 14:01:56 +00:00
Lukas Dürrenberger
e53d9e88a9
Fix regression in copyToImage
...
When the source image is flipped, we want to read the source data
backwards and thus need to keep subtracting the "iterator" on the source
data.
2021-12-06 08:08:50 +01:00
Pawel Paruzel
11020363b1
Fix wrong cast in sf::Packet
...
Add unit tests
2021-12-06 08:06:20 +01:00
Vittorio Romeo
93410afdc7
Delegate 'WglContext(WglContext*)' constructor to more general one
2021-12-05 18:09:36 +00:00
Vittorio Romeo
0f9e13a2bb
Use list-initialization to zero-initialize 'JoystickImpl.hpp' structures
2021-12-04 23:12:57 +00:00
Vittorio Romeo
4358a303a7
Use emplacement operations to avoid unnecessary copies/moves
2021-12-03 19:34:16 +01:00
Vittorio Romeo
c9f7cb3d52
Use 'nullptr' instead of 'NULL'
2021-12-03 15:48:32 +00:00
Vittorio Romeo
6cf124db66
Fix remaining warnings
...
- Fixes in examples
- Fixes across all the modules
2021-11-30 11:25:58 +01:00
Lukas Dürrenberger
c74694c3b2
Fix conversion warnings for the Audio module
2021-11-30 11:25:58 +01:00
Lukas Dürrenberger
01836ccea4
Fix conversion warnings for the Graphics module
...
- Fix conversion and shadowing warnings
- Add SYSTEM indicator for stb_*, FreeType and other headers
2021-11-30 11:25:58 +01:00
Lukas Dürrenberger
0468612ac0
Fix conversion warnings for the Network module
2021-11-30 11:25:58 +01:00
Lukas Dürrenberger
e0f2356102
Fix conversion warnings for Unix
...
- Fix conversion & shadowing warnings
- For the System & Window module
2021-11-30 11:25:58 +01:00
Lukas Dürrenberger
92bc513d9f
Fix variable name shadowing warning
2021-11-30 11:25:58 +01:00
Lukas Dürrenberger
e01aa152c1
Fix type conversion warnings
2021-11-30 11:25:58 +01:00
Lukas Dürrenberger
9052ccf218
Fix integer conversion warnings
2021-11-30 11:25:58 +01:00
Jan Haller
5bed29dd19
Fix conversion and other warnings, mainly on Windows
2021-11-30 11:25:58 +01:00
Jan Haller
761d9d81d0
Fix several unused warnings
2021-11-30 11:25:58 +01:00
binary1248
a759ccd5db
Enable compiler warnings.
2021-11-30 11:25:58 +01:00
Anton Vasiliev
7fc026e3ec
Add missing comment
...
Added missing comment to WM_DEVICECHANGE event in Window
implementation for Win32.
2021-11-30 09:52:35 +01:00
Vittorio Romeo
ef8fee5356
Simplify management of ActivityStates
2021-11-24 00:34:03 +01:00
Vittorio Romeo
dc88cbd81e
Remove include directives for unused headers
2021-11-22 00:47:11 +01:00
Vittorio Romeo
c21e842007
Fix useless temporary sf::Lock
2021-11-19 23:17:14 +01:00
jqdg
2888d9c56e
Improve high DPI handling on macOS
2021-11-18 21:34:07 +01:00
Corentin Schreiber
912422f486
Partial revert from 40a0584636dab89f3fa1747e63f26fa895036ce1
...
This reverts the change to addLine(), which no longer had its
outline drawn after the offending commit.
2021-10-25 22:47:32 +02:00
Corentin Schreiber
d950c9387a
Simplify glyph advance calculation
...
Since auto-hinting is enabled, the advance will always be an integer
number of pixels. The actual fractional advance is handled by bearings.
https://github.com/SFML/SFML/pull/1827#issuecomment-939531582
2021-10-18 09:46:35 +02:00
Corentin Schreiber
4d2e5b18e2
Fix incorrect glyph rect for text outline
2021-10-18 09:46:35 +02:00
jqdg
3b1ff125b0
Code style and comments
2021-09-15 13:15:50 +02:00
jqdg
85e72faf5e
Delete unnecessary message when closing window integrated in an NSView
2021-09-15 13:15:50 +02:00
jqdg
c80cbb9c97
Change handling of NSAutoreleasePool
...
GUI toolkits such as wxWidgets and Qt provide their own NSAutoreleasePool
objects. To avoid pool corruption, it is required that the pools be nested,
which the previous implementation did not guarantee. Furthermore, autorelease
pools should always be drained in the same context (function, loop, etc.) that
they are created, which was not the case with the previous implementation
(https://developer.apple.com/documentation/foundation/nsautoreleasepool ).
This commit removes long-lived autorelease pools, and instead each function that
calls into the Cocoa API creates its own autorelease pool (using the new C++
AutoreleasePool wrapper object).
Should fix crashes in issue #1549 and similar.
2021-09-15 13:15:50 +02:00
Herman Semenov
c90d308b45
Fixed funcs for safe use in Win32/Win64
...
Signed-off-by: GermanAizek <GermanAizek@yandex.ru>
2021-08-18 19:32:58 +02:00
StrikerX3
ee8c4fdcda
Use native Windows cursors to preserve the drop shadow
2021-08-13 00:51:01 +02:00
jqdg
86617c0550
Fix zombie windows in Mac OS when switching to/from fullscreen
2021-08-12 23:19:13 +02:00
jqdg
7ff34cdc86
Process Cocoa events after window close
...
Workaround issue where the window remains open if events are not
processed.
2021-08-12 23:19:13 +02:00
Vittorio Romeo
f162b3a037
Enable support for unity builds
2021-08-12 21:00:16 +02:00
Chase Warrington
47a4e88704
Try more possible names for OpenGLES library. Fixes SFML/SFML#1687
2021-08-09 18:16:37 +02:00
Guillaume Bertholon
1f21e5497b
Control GL_FRAMEBUFFER_SRGB flag in RenderTarget
...
This fixes wrong rendering for RenderTexture that need sRGB encoding along a
non-sRGB window.
We cannot simply always enable GL_FRAMEBUFFER_SRGB because some drivers
enable sRGB encoding on non-sRGB window surfaces.
Also add a isSrgb() method to tell if a RenderTarget is encoding into
sRGB color space.
2021-05-11 16:52:55 +02:00
Guillaume Bertholon
ade4a3912a
Support sRGB color space in RenderTexture
...
When the sf::ContextSettings asks for an sRGB capable buffer, set the
rendered image to sRGB mode and convert pixels when drawing.
This is the choice of simplicity compared to actually support textures
with more color depth.
2021-05-11 16:52:55 +02:00
Lukas Dürrenberger
9e27096c37
Fix configuration conflicts with Clang
...
- On Windows you can use Clang with both MSVC and MinGW
- When using Clang with MSVC all the MSVC conditions should be fulfilled
- When using Clang with MinGW all the MSVC steps should not be run
2021-05-10 12:20:48 +02:00
Lukas Dürrenberger
2b79ae96d9
Fix OpenGL context on Android
...
When waiting for an event, rather then polling, the android
looper prevents the creation of a OpenGL context till ALooper
receives an event rather then allowing creation at the appropriate time
2021-04-29 21:16:06 +02:00
acsbendi
20c23f0007
Fixed WindowImplAndroid used after deleted.
2021-04-29 21:07:08 +02:00
Guillaume Bertholon
f3a180bc09
Fix sf::Context::getActiveContext to stop returning inactive contexts
...
sf::Context::getActiveContext could return an inactive context if
RenderTargets activation occured since the last sf::Context activation.
This is not what its documentation suggest, and was clearly an
unexpected behaviour.
This fix make the function return NULL if the current active context is
not managed by sf::Context (e.g. because it is a RenderTarget).
2021-04-26 16:31:12 +02:00
Mozzg
ce992ee01f
Fix overflow when calculating time value for Clock
2021-04-15 09:06:42 +02:00
binary1248
43b2e9dc12
Fixed regression introduced in 4fcef89
causing EXT_texture_edge_clamp support to not be considered, added explicit initialization of nbFormats to 0 in WglContext.cpp in order to prevent broken graphics drivers from filling nbFormats with a garbage value.
...
Fixes #1786 .
2021-04-14 11:04:45 +02:00
Vittorio Romeo
c0b19109a9
Fix incorrect standard includes in 'InputSoundFile' and 'Music'
2021-04-13 10:21:11 +02:00
Jonny Paton
b29cb44fad
Keep existing cursor type if requested type fails
2021-04-13 10:02:15 +02:00
Jonny Paton
f4844c11f8
Fix potential crash when changing cursor - don't release the NSCursor object if it's already been released
2021-04-13 10:02:15 +02:00
Vittorio Romeo
9541719893
Fix ordering of 'sf::Font' members in 'Font.cpp'
2021-04-12 13:28:00 +02:00
binary1248
eaeb977700
Relax the requirement to provide geometry shader support to accept a 3.2+ compatibility context as well. While the compatibility profile functionality is not 100% identical to the EXT/ARB functionality, the extent to which SFML makes use of geometry shaders should not pose any serious problems to a developer who is aware of the subtle differences. The current geometry shader example already requires GLSL 1.50 which was only available in OpenGL 3.2+. ( Closes #1768 )
2021-03-28 19:26:16 +02:00
binary1248
4fcef893c9
Updated glad loader to OpenGL 4.6 Compatibility Profile as base and added version support defines to GLExtensions.hpp.
2021-03-28 19:26:16 +02:00
Guillaume Bertholon
05c83617de
Add Min and Max blend modes
2021-03-23 21:09:53 +01:00
Jon Keller
788ac2ecf5
MacOS: When initializing an openGL view with a parent window, call finishInit
2021-03-20 22:36:19 +01:00
Radek Dutkiewicz
88451a0740
Fixed naming convention mistakes
2021-02-11 00:40:30 +01:00