Commit Graph

1390 Commits

Author SHA1 Message Date
Mario Liebisch
499eb09642 Android: Copy the selected EGL context's settings to SFML 2016-02-22 17:32:56 +01:00
Glenn Smith
fe9b9c0cc7 Use kCGMouseButtonLeft instead of 0 for CGEventCreateMouseEvent to fix a compiler error 2016-02-19 20:57:00 +01:00
binary1248
043fb83cd8 Rewrite RenderWindow::capture to make use of a single texture transfer instead of transferring each row of the framebuffer individually. 2016-02-19 17:30:22 +01:00
Mrowqa
1763861b26 Added support for geometry shaders 2016-02-18 20:20:43 +01:00
Zachariah Brown
957cabb816 Added support for outlined text 2015-12-31 10:41:59 +01:00
Krozark
7ff9478061 add a new BlendMode::Equation : ReverseSubtract 2015-12-03 00:28:32 +01:00
Lukas Dürrenberger
63fba49d96 Fixed some initialization issues reported by Cppcheck. 2015-11-20 15:36:48 +01:00
Jan Haller
9c5c750e60 Added new methods to set uniforms in sf::Shader
Implements a new design for the shader uniform API.
* Added Shader::setUniform() and Shader::setUniformArray() overloads for the following types:
  -> scalars: float, int, bool
  -> vectors: 2D, 3D, 4D
  -> matrices: 3x3, 4x4
  -> arrays of basic types
  -> samplers (sf::Texture)
  -> conversions for SFML types (sf::Transform, sf::Color)
* Added sf::Glsl namespace with GLSL-equivalent types
* Deprecated Shader::setParameter() overloads

Other related changes:
* Refactored sf::Shader internals to avoid code duplication
* Improved documentation
* Added SFML_DEPRECATED macro to Doxyfile
* Defined _SCL_SECURE_NO_WARNINGS to disable std::copy() warnings on MSVC
2015-10-21 10:29:07 +02:00
Marco Antognini
d4683692e0 Fixed crash when resizing a window to a zero-height/width size (#984) 2015-10-14 12:16:40 +02:00
bumbar1
3a12fc6505 Added optional argument on which address to bind (socket). 2015-10-10 16:46:33 +02:00
Lukas Dürrenberger
6b9781475d Added support for VS 2015. 2015-09-30 08:32:30 +02:00
binary1248
811dfe1cf7 Added support for pbuffers on Windows and Unix. 2015-09-27 19:52:26 +02:00
Marco Antognini
2d1fab374f Added SoundSource::operator= and called it from Sound::operator=
Signed-off-by: Jan Haller <bromeon@gmail.com>
2015-09-27 18:54:42 +02:00
Marco Antognini
0c9ce3bef3 Improved memory management on OS X (related to #790) 2015-09-25 16:19:52 +02:00
binary1248
c4be28bd0f Changed the GlxContext implementation to always try to use glXCreateContextAttribsARB if it is available (was already done in the WGL implementation), specification of the context version attributes now only takes place when a context version greater than 1.1 is requested, requesting version 1.0 or 1.1 (default) will hint the driver to provide the most recent context version they support. 2015-09-22 00:56:27 +02:00
binary1248
2752bbcfb0 Added methods to get the currently active context, query whether an OpenGL extension is available and query the actual OpenGL version of a context, made context switches during initialization of texture and shader static values unnecessary, fixed code style in loaders. 2015-09-21 20:29:55 +02:00
Maximilian Wagenbach
b7d7ac44f3 Added support for 24-bit .wav files. 2015-09-20 23:10:14 +02:00
binary1248
221e0700f7 Added NvOptimusEnablement and AmdPowerXpressRequestHighPerformance exports to sfml-main to inform the driver that the SFML application could benefit from using the discrete GPU in a multi-GPU environment. 2015-09-18 10:13:32 +02:00
Mario Liebisch
4f3c26660e Android: Accept touch events from "multiple" devices
Attempt to fix issue #953, although I can't really say whether this is
indeed some driver thing. All snippets I've found use exact comparison
only (usually switches).
2015-09-18 08:53:34 +02:00
Ferdinand Thiessen
c55b8c17e1 Fixing #935: Secure function against random data return. 2015-08-24 13:52:49 +02:00
Jan Haller
64ddb10f3d Improved diagnostic output for glCheck and alCheck macros
Changes:
* In addition to source file and line, the expression itself is output
* For better readability, the log is split across multiple lines
* alCheck() doesn't unnecessarily construct std::string when there is no error
* Unused #include directives are removed
2015-08-24 13:36:30 +02:00
Jan Haller
b7d984cdac Made implementation of glCheck and alCheck macros more robust
At the moment, glCheck(...) and alCheck(...) look like a function calls, which is misleading and can cause subtle bugs, for example when used in if statements. This change mitigates the situation by allowing those expressions to be used as single statements within if/else branches.

Initializations of OpenGL handles that previously involved glCheck() calls now need to be split into separate declaration and assignment.
2015-08-24 13:36:19 +02:00
binary1248
94dd1d73fa Fix _NET_WM_PING messages not being replied to properly. 2015-08-20 01:00:16 +02:00
Lukas Dürrenberger
a2e7dadf2a Fixed most inconsistencies in the Unix InputImpl.cpp. 2015-08-13 21:14:02 +02:00
Mario Liebisch
b3b48a507d Fixed image file extension detection
Previously this would fail on `jpeg` and would detect something such as
`notajpg` as `jpg`. This fixes #929.
2015-08-12 21:42:25 +02:00
binary1248
561eb82f14 Reverted to Xlib event handling since XCB event handling just breaks too many things. 2015-08-12 19:45:40 +02:00
Matthew Szekely
7c179193e6 Fixed RenderTexture::clear() not always working on certain hardware 2015-08-04 10:14:54 +02:00
Andrew Mickelson
a0c1302428 Fix keypad keys not being detected on Linux 2015-08-04 09:44:07 +02:00
Mario Liebisch
11357b354f Android: Updated the JNI/event handling code
* Local Java references are now freed after use.
* SFML is now able to consider (Android) events as unhandled and pass them.
* Hovering a pen over the screen no longer triggers movement events (untested).
2015-06-11 12:32:33 +02:00
Pierre-Luc Perrier
cadc4d801c Fix undefined behavior in ewmhSupported() caused by some window managers not null-terminating strings. Fixes #892 2015-06-04 21:09:13 +02:00
binary1248
0df1c97af7 Fixed keyboard mapping not being correct after the user changes their keyboard layout while an SFML application is running. Fixes #895 2015-06-04 21:08:07 +02:00
Jan Haller
6cec972338 Removed unnecessary sf:: prefixes 2015-05-20 17:30:23 +02:00
Mario Liebisch
717bd85537 Android: Fixed audio files not loading (and possibly crashing)
* Added a missing return value for Android's `sf::FileInputStream::open()`.
* Added a missing return value for Android's `sf::priv::ResourceStream::seek()`.
* Moved error logging for `sf::InputSoundFile` and `sf::OutputSoundFile` to `sf::SoundFileFactory`, since this allows more details on *why* reading/writing failed. Before missing files would return "format not supported".
2015-05-20 16:35:15 +02:00
binary1248
11e2901403 Whitelisted SHAPE events that might be sent by some compositing window managers even if we didn't select them. Fixes #879 2015-05-20 16:34:33 +02:00
binary1248
45577de60a Added support for GL_EXT_texture_edge_clamp as well since some GL implementations don't expose GL_SGIS_texture_edge_clamp even when clamp-to-edge functionality is supported. Fixes #880 2015-05-20 16:33:57 +02:00
binary1248
e38a26ec25 Corrected typo. 2015-05-20 16:33:11 +02:00
Tiaan Louw
d2adccfe2e Check Android API level
We check the API level before using constants that use API levels that
your device doesn't support.
2015-05-20 16:32:22 +02:00
Tiaan Louw
46a625dde5 Make sure the window still exists before we access the dimensions on it 2015-05-20 16:29:48 +02:00
Stefan Schindler
608b4fb28d Only spawn Resized event when window size changes. 2015-05-08 11:27:44 +02:00
binary1248
93f389e92e Added missing GLEXT defines to the OpenGL ES block in GLExtensions.hpp. 2015-05-01 12:25:46 +02:00
Chase W
653c0fdb30 Fixed inconsistency between sf::Touch::getPosition and touch events. 2015-04-29 11:54:30 -04:00
Jan Haller
e0174545e6 Fixed Color::toInteger() not being const-qualified 2015-04-28 21:44:31 +02:00
binary1248
e0d27358fb Added OpenGL vendor and renderer string checks to warn if the application is being run using a non-accelerated OpenGL context. 2015-04-21 22:21:42 +02:00
binary1248
db8c237f6a Fixed Unix key repeat not being disabled even after setKeyRepeatEnabled(false) is called. (#871) 2015-04-20 01:36:45 +02:00
binary1248
17570c324e Bumped back the sfml-graphics OpenGL version requirement to 1.1. Everything beyond 1.1 functionality is optional, with warnings emitted when necessary. 2015-04-15 02:56:31 +02:00
binary1248
e80bf0ba92 Fix whitespace: Convert tabs to spaces and remove trailing whitespace. 2015-04-15 01:53:43 +02:00
Marco Antognini
4992243857 Fixed warning about switches 2015-04-15 01:12:23 +02:00
binary1248
53f61e9596 Removed stricter Unix visual requirements for now and increased Windows pixel format array size from 256 to 512 to make sure all pixel formats are taken into consideration on systems that support that many. 2015-04-15 00:46:21 +02:00
binary1248
ac3a5394ca Made Windows and Unix pixel format selection more consistent with each other, fixed pixel format evaluation scoring formats with better settings equal to formats with worse settings. 2015-04-14 23:56:11 +02:00
binary1248
bbe2c656e6 Fixed getting relative mouse position on Unix returning screen coordinates instead. 2015-04-08 09:37:25 +02:00
binary1248
01f46ce231 Fixed GL_ARB_compatibility not being detected causing false compatibility warnings to be emitted when a 3.1 context is created. 2015-04-08 09:31:16 +02:00
Jan Haller
22c9674389 Combined separate horizontal/vertical mouse wheel event types
Instead of separate Event::MouseWheel{Vertical,Horizontal}Moved events, a single Event::MouseWheelScrolled event is used for all wheel-related events.
The new Mouse::Wheel enum is used to differentiate between mouse wheels.
2015-04-07 00:24:52 +02:00
binary1248
534a23e074 Fixed not being able to transition into fullscreen state on window managers that disallow it when Motif or size hints are set, added workaround for fullscreen bug on Openbox. 2015-04-06 01:06:02 +02:00
binary1248
3ec672afe9 Removed XCB dependencies (EWMH, ICCCM, Keysyms, Util), added XCB libraries to FindSFML.cmake, fixed checking for X11 library checking for XRandR instead. 2015-04-06 01:06:00 +02:00
Lukas Dürrenberger
0b221921ed Switched to the stdio FILE* API for handling streams to provide the expected behavior to Vorbis. 2015-04-01 13:19:47 +02:00
binary1248
0076ea50db Replaced Unix joystick enumeration with a fully native udev implementation which supports an unlimited number of devices (still limited higher up by sf::Joystick::Count though). 2015-03-31 21:03:37 +02:00
binary1248
bbfef72fc6 Replaced inotify joystick polling with udev monitoring, added more precise checking whenever connection/disconnection occurs so full scans are no longer needed, fixed up USB attribute querying and added udev property querying as the primary method of getting joystick property data, added a fallback method of getting the joystick name if JSIOCGNAME fails. 2015-03-31 21:03:36 +02:00
BlueCobold
e78f1bd4ea Fix for the destructor of SoundBuffer. A crash appeared when a sound still had been attached at the time of destruction. 2015-03-31 20:45:52 +02:00
binary1248
4add6faf06 Added back accidentally removed headers. 2015-03-30 01:26:20 +02:00
binary1248
7287b77c5d Replaced a few Xlib keyboard handling functions with XCB keyboard handling functions, fixed modified key events returning sf::Keyboard::Unknown on Unix (#847), fixed sf::Keyboard::Quote and sf::Keyboard::Tilde events not functioning properly on Unix, optimized keycode lookup when using sf::Keyboard::isKeyPressed() on Unix. 2015-03-29 22:29:49 +02:00
binary1248
5aaf9a6115 Fixed RandR not resetting the original screen configuration in some situations. 2015-03-29 22:29:47 +02:00
binary1248
39cdebfe71 Add ScopedXcbPtr to CMakeLists.txt, replaced xcb_query_extension with xcb_get_extension_data where possible, removed decorations from fullscreen windows, fixed DRI2 events not being forwarded as Xlib events leading to Mesa not functioning correctly in certain situations. 2015-03-29 22:29:45 +02:00
binary1248
bd34935f2a Fixed XCB events being handled by the wrong windows in multi-window applications (#843). 2015-03-29 22:29:44 +02:00
binary1248
c229877313 Fixed numerous bugs/undefined behavior in the XCB implementation, added a lot more XCB error handling and reporting, make use of xcb-ewmh to handle EWMH for us, refactored some code out of the Window constructor into their own methods, fixed fullscreen state transition not working on window managers that create temporary parent windows when the window is being mapped, removed automatic fullscreen pointer grabbing since that is the subject of #614 and might not be desired in some situations. 2015-03-29 22:29:42 +02:00
binary1248
623f63a48a Fixed RandR extension not being loaded causing Unix screen mode switching to fail, added several more error checks to RandR operations, added support for rotated resolutions on Unix (#771). 2015-03-29 22:29:40 +02:00
binary1248
3faf2a93d6 Reverted back to hard switching the fullscreen video mode when necessary on Unix systems, added support for automatically choosing between EWMH fullscreen setting when supported and manual fullscreen setting as the fallback, added support for window responsiveness checks. 2015-03-29 22:29:38 +02:00
Stefan Schindler
c08a56bf9f Adjusted WindowImplX11.
* Replaced Xlib event names by XCB equivalents.
* Removed XCB_CW_OVERRIDE_REDIRECT in order to let the WM handle mapping
  the window to the full screen.
* Fixed mouse grabbing in fullscreen mode. Removed keyboard grabbing to
  allow the user to "alt+tab" out of the window.
* Completely revised fullscreen handling: The screen's resolution is not
  changed at all anymore. Instead the WM is asked for going fullscreen
  and the view is scaled.
2015-03-29 22:29:37 +02:00
Lukas Dürrenberger
7b4610b55b Merge branch 'feature/gl_dev_new' 2015-03-26 10:04:12 +01:00
Laurent Gomila
3ca6e0f346 Added support for 32-bits samples in WAV files 2015-03-25 22:53:56 +01:00
Zachariah Brown
ae53cfd0d9 Added X11 back to the linker list for FreeBSD 2015-03-25 22:29:33 +01:00
binary1248
cee6263a01 Removed separate GLXFBConfig selection during context creation (it is chosen to match the window's already selected visual), reverted to conservative context creation only using glXCreateContextAttribsARB when absolutely necessary. 2015-03-23 16:16:09 +01:00
binary1248
3996faa54c Fixed requesting an unsupported OpenGL context version causing X to close the application, fixed GlContext initialization not updating settings properly, added error checks to GLLoader.cpp and fixed GL errors occurring when using a >= 3.0 OpenGL context. 2015-03-23 16:16:08 +01:00
binary1248
c17486857f Implemented methods to retrieve the OpenGL handles from sf::Texture and sf::Shader. 2015-03-23 16:16:07 +01:00
binary1248
97bdf72ce1 Adjusted OpenGL and Window example to request a 24-bit instead of a 32-bit depth buffer since it might not be supported on all systems. 2015-03-23 16:16:05 +01:00
binary1248
1d16748ed7 Added check to context creation to warn the user of an incompatible mismatch between the context they requested and the context that was created. 2015-03-23 16:16:05 +01:00
binary1248
6b3c7f0cd6 Added copyright notices. 2015-03-23 16:15:53 +01:00
binary1248
c30a3da8d5 Moved platform OpenGL loading code into their respective context implementations. 2015-03-23 16:10:30 +01:00
binary1248
38f0464ab0 Added MESA and SGI swap interval implementations in order to fix v-sync not being set properly on some Unix systems (#727), added error message when setting v-sync fails on Windows systems. 2015-03-23 16:10:29 +01:00
binary1248
3e397bff4b Replaced GLEW with (a highly customized) loader generated by glLoadGen, restructured GLExtensions.hpp for easier extension bookkeeping, make use of GLEXT definitions in Shader.cpp and Texture.cpp as well, replaced GL_MAX_TEXTURE_COORDS with GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, implemented flags for requesting a debug or core/compatibility profile context, changed the default context version from 2.0 to 2.1. 2015-03-23 16:10:28 +01:00
binary1248
ea2bf65186 Fixed GLX context creation and reorganized code to be more understandable. 2015-03-23 16:09:18 +01:00
Lukas Dürrenberger
d53338298a Added the FindFreetype.cmake CMake module, set the minimum require CMake version to 2.8.3 and fixed the paths to the FreeType headers. 2015-03-21 10:30:31 +01:00
binary1248
e17cc520d6 Implemented support for horizontal mouse wheel scrolling as well as high-precision scrolling on Windows and OS X. 2015-03-16 10:35:34 +01:00
Laurent Gomila
81a8e4e4ca Fixed potential buffer overflow in SoundFileReaderWav 2015-03-15 14:44:16 +01:00
Lukas Dürrenberger
9d3024e13e Fixed the issue where trying to open a stream didin't reset the stream first. 2015-03-12 11:31:17 +01:00
binary1248
95ec9180ad Wrapped XCB replies in scoped pointers. 2015-03-12 11:02:05 +01:00
binary1248
b2b35d0a43 Refactored Unix Window implementation. 2015-03-12 11:02:04 +01:00
binary1248
cd9b8b9a15 Fixed FLAC SoundStreams not checking for the EOF decoder state and looping forever. 2015-03-12 10:52:32 +01:00
Laurent Gomila
cc05fc785a Removed old unused source file 2015-03-12 08:14:20 +01:00
Oleh Prypin
01d5d1b463 Replaced non-ASCII symbols with equivalents 2015-03-10 02:04:02 +02:00
Marco Antognini
aa9a6dec89 Fixed a few typos/style issues 2015-03-09 10:47:20 +01:00
Marco Antognini
0c2f306c17 Updated copyright year and Laurent's email address 2015-03-04 09:36:25 +01:00
Laurent Gomila
42a6967128 Fixed incorrect sample count reported by the WAV sound file reader 2015-03-04 09:36:25 +01:00
Laurent
6ab8d43b04 Enabled sfml-audio on iOS 2015-03-04 09:36:25 +01:00
Mario Liebisch
3424467896 Android: Restored old file reading behavior for audio stuff 2015-03-04 09:36:21 +01:00
Mario Liebisch
62933114ec Android: Moved ogg's os specific header to build properly 2015-03-04 09:36:21 +01:00
Mario Liebisch
0d29d38d20 Android: Added precompiled libraries 2015-03-04 09:36:20 +01:00
Mario Liebisch
26f8c74c43 Android: Fixed building and linking 2015-03-04 09:36:19 +01:00
Marco Antognini
5cdb432d60 Fixed seeking after reaching EOF 2015-03-04 09:33:09 +01:00
Marco Antognini
1d24b52220 Silenced some warnings 2015-03-04 09:33:09 +01:00
Jonathan De Wachter
3fbfde39a5 Adjusted the new audio backends to compile on Linux 2015-03-04 09:33:06 +01:00
Laurent Gomila
5e0e645f46 Added support for FLAC audio files 2015-03-04 09:33:05 +01:00
Laurent Gomila
f0608eaed8 Redesigned the audio encoding/decoding classes to get rid of libsndfile 2015-03-04 09:33:03 +01:00
Mario Liebisch
34692d5a39 Android: Updated the toolchain file and CMake scripts
* Replaced the toolchain file with a new version based on [zuhowei's fork](https://github.com/zhuowei/android-cmake), which enables x64 builds as well as support for the latest NDK. This breaks compatibility with old build directories.
* Removed the STL dependency from **sfml-activity** rather than relying on *some* implementation implicitly linked by default.
* Deleted *project.properties*, which wasn't supposed to be part of the repository code. You have to use the Android SDK to recreate it (`android update project --path to/your/example --target 1 --name SFML-Example`).
* Made it possible to select a STL implementation to be used (default: `c++_shared`). Keep in mind that not all available configurations are necessarily compatible with SFML.
* Fixed linker flags to be compatible with Nvidia's Nsight Tegra for Visual Studio.
* It is now possible to compile the Android version using Nvidia's Nsight Tegra for Visual Studio (requires up-to-date CMake and `CMAKE_SFML_SYSTEM` to be set to `Android`; keep in mind that this is still experimental and requires further CMake updates).
* Updated and renamed some Android specific CMake variables.
* Made `armeabi-v7a` the default ABI for Android builds.
2015-03-04 09:05:22 +01:00
Zachariah Brown
1de7644277 Updated copyright year and Laurent's email address 2015-03-02 13:41:54 -05:00
binary1248
d790114df8 Added a way for partial sends over non-blocking TcpSockets to be handled properly. 2015-03-02 11:26:31 +01:00
Jeffrey Clark
f47f89a759 Update stb_image to v2.02 and stb_image_write to v0.97 2015-02-28 12:14:58 +01:00
Thom Robinson (Macbook Pro)
d83ddd56e3 Fixed an issue in InputImpl::getSFOpenGLViewFromSFMLWindow failing to retrieve the SFOpenGLView from the contentview's subview when using fullscreen (see issue #782). 2015-02-23 12:17:04 +01:00
Lukas Dürrenberger
1f2bc148fe Implemented sf::Color::toInteger() to complement the new sf::Color constructor. 2015-02-23 11:38:49 +01:00
FRex
88ec48cb85 Added a new constructor that takes single Uint32 to Color 2015-02-23 11:38:48 +01:00
Lukas Dürrenberger
8dd31f2f52 Fixed two trivial XCB related bugs. 2015-02-21 00:05:35 +01:00
Sebastian Kohl
cac4d58b3d fixes for ios window size including device-orientation-changes and retina support 2015-02-10 23:45:21 +01:00
Sebastian Kohl
2cab5789af iOS window now handles ContextSettings with stencil bits correctly 2015-02-10 23:43:56 +01:00
Thomas Galvin
9b0ce8888e Added sending a resize event when the scaling factor changes on OS X 2015-02-10 23:38:14 +01:00
binary1248
5dbfb477a0 Moved stb_image into the extlibs directory. 2015-02-06 18:32:04 +01:00
Błażej Dariusz Roszkowski
c303d1f73b Update WindowImplX11.cpp 2015-01-11 21:44:44 +01:00
Marco Antognini
8a8793e00c Fixed typo in JoystickImpl.cpp to prevent crash on OS X 2015-01-10 23:49:20 +01:00
Lukas Dürrenberger
b7c0af3a58 Merge branch 'feature/xcb' 2015-01-07 01:17:48 +01:00
Stefan Schindler
f464e2502a Removed link to Xlib. Replaced more Xlib calls by XCB calls.
Change-Id: I05d8b24508e88b604f7cc76622cc8af695204990
2015-01-06 11:04:44 +01:00
Stefan Schindler
132ae26ce1 Adjusted window focus changes to be XCB-compatible.
Change-Id: I0fe2c7d1698bce23b81f5c6a9db018f7a3fe49d8
2015-01-06 09:34:31 +01:00
Stefan Schindler
92ca32b2f9 Code adjustments to fix warnings.
Change-Id: Iba40752c6c5baaadc2a1b6a0fd03cbb0e3cde8a3
2015-01-05 22:23:16 +01:00
Lukas Dürrenberger
d4e6b84afc Merge branch 'bugfix/al_context' 2014-12-30 10:44:08 +01:00
Stefan Schindler
896bd51b22 getPosition workaround for X11. Fixed memory leaks. 2014-12-29 08:59:20 +01:00
Stefan Schindler
17090367dc Fixed WindowImplX11::getPosition. 2014-12-29 08:59:20 +01:00
Stefan Schindler
d17b4bad96 Source code format. 2014-12-29 08:59:20 +01:00
Stefan Schindler
c7549cd292 Adjusted and fixed XCB patch.
* Adjusted xcb_icccm calls (for recent XCB versions).
* Fixed wrong parameter order in xcb_icccm_set_wm_protocols call.
* Fixed XCB_BUTTON_RELEASE spawning a MouseButtonPressed event.
* Moved files from obsolete Linux/ to Unix/ directory.
* Added m_useSizeHints fix.
* setTitle() converts to UTF-8 before passing to XCB -> Unicode window title
  support.
* Added XCB-util dependency.
* Replaced XSelectInput. Obtaining XCB connection when taking window handle.
* Adjusted X11 example for XCB.
* Removed AutoPointer, replaced by direct XCB and free() calls.
* Added key repeat workaround.
2014-12-29 08:59:20 +01:00
Lukas W
135c1716e8 Replaced Xlib by XCB implementation.
* Added FindXCB.cmake script
* Added AutoPointer wrapper for automatically free'ing pointers
* Huge commit: Ported linux implementation of sfml-window to xcb
* Xcb is now used for window creation, event loop etc
* As GLX is linked to Xlib, that part of the implementation
  still uses Xlib.
* Also, some keyboard related (such as XLookupString) stuff
  is still Xlib, as xcb does not have it (yet?).
* Replaced some enums with the xcb equivalents
2014-12-29 08:59:20 +01:00
binary1248
c4e450cac4 Added additional comments to AudioDevice.cpp, removed unnecessary checks from AudioDevice setters. 2014-12-28 22:09:31 +01:00
Jan Haller
1cfa5c6f1d Replaced unsigned int with std::size_t for array indices/sizes 2014-12-28 18:21:59 +01:00
binary1248
32bafa98a4 Reduced lock contention when playing and immediately querying the status of a SoundStream. 2014-12-21 17:01:38 +01:00
binary1248
0ad401cc97 Made OpenAL context management more intelligent, in analogy to OpenGL context management. OpenAL contexts now only exist as long as AlResources require them and are destroyed when they are no longer required. Fixes #30. 2014-12-21 16:57:58 +01:00
Nolan Poe
7ee0734470 Fix joystick pathname construction 2014-11-27 16:10:14 -08:00
Jan Haller
0a64f50605 Further corrections of typos and dash inconsistences 2014-11-18 11:14:18 +01:00
Lukas Dürrenberger
45810a1345 Fixed additional comments and documention spelling mistakes. 2014-11-18 01:02:07 +01:00
Marco Antognini
610111c687 Removed some trailing spaces 2014-11-17 17:32:48 +01:00
Marco Antognini
aef8f826f1 Fixed a few typos and improve some sentences in the documentation 2014-11-17 17:29:55 +01:00
Laurent
6ef3cb27a1 Added implementation of Window::hasFocus() on iOS 2014-11-11 17:00:23 +01:00
Lukas Dürrenberger
e257909a65 Fixes CMake issues with udev (#734) 2014-11-10 14:45:50 +01:00
Mario Liebisch
1271dff960 Reworked the UDev inclusion
* This fixes `SFML_DEPENDENCIES` missing the UDev library for static builds (issue #728).
2014-11-06 08:36:27 +01:00
Lukas Dürrenberger
c2761c317e Added static_cast for sf::Uint8 (fixes #731). 2014-11-03 11:01:17 +01:00
Marco Antognini
8928baa5ce Fixed right click not detected on OS X with trackpads, close #716
Now that `+[NSEvent pressedMouseButtons]` can be used, part of HIDInputManager becomes obsolete and is therefore removed.
2014-11-03 10:25:41 +01:00
Mario Liebisch
ab4d4d7477 [Android] Implemented sf::Window::hasFocus() 2014-10-29 09:30:10 +01:00
Lukas Dürrenberger
27e373c5c5 Added missing WINVER to fix a compilation error with the TDM-2 compiler. 2014-10-12 18:43:35 +02:00
Lukas Dürrenberger
e2b3cdacc2 Merge branch 'feature/window_focus' 2014-10-09 14:56:16 +02:00
Marco Antognini
b2ba2307b3 Fixed documentation warnings
- WindowImpl.hpp:94:16: warning: parameter 'threshold:' not found in the function declaration
 - SFContext.hpp:120:16: warning: parameter 'enabled:' not found in the function declaration
2014-10-07 12:00:34 +02:00
Jan Haller
60c4f95795 Implemented case differentiation for window focus/notification on Windows and X11 2014-10-06 22:21:46 +02:00
Alexandre Bodelot
c4435b8a31 X11: Notify instead of force focus
Signed-off-by: Jan Haller <bromeon@gmail.com>
2014-10-06 22:21:45 +02:00
Jan Haller
c98bd1eaba Window focus on X11: check if window is viewable 2014-10-06 22:21:45 +02:00
Jan Haller
93d2789f70 Window focus: Added empty implementations for Android and iOS 2014-10-06 22:21:44 +02:00
Jan Haller
4155b2e449 Changed Window::requestFocus() return type from bool to void
Reasons:
* Consistent with other sf::Window methods
* User can test whether focus succeeded by subsequent hasFocus() call
* Implementation would have to call hasFocus() anyway on some systems

Also: minor code style change in Window::hasFocus()
2014-10-06 22:21:44 +02:00
Jan Haller
6a24eb5eec Slightly adapted window focus documentation 2014-10-06 22:21:43 +02:00
Marco Antognini
85291debb4 Added OS X impl of requestFocus and hasFocus
Signed-off-by: Foaly <foaly.f@web.de>
Signed-off-by: Jan Haller <bromeon@gmail.com>
2014-10-06 22:21:42 +02:00
Foaly
b965ad198b Added window methods to request and to check focus
Signed-off-by: Stefan Schindler <stefan@boxbox.org>
Signed-off-by: Jan Haller <bromeon@gmail.com>
2014-10-06 22:21:42 +02:00
Laurent
ef6391678e Added (empty) implementation of JoystickImpl::getIdentification on iOS 2014-10-06 22:21:11 +02:00
Laurent Gomila
f99035bea1 Added support for 64-bit integers in sf::Packet 2014-10-06 13:26:28 +02:00
Stefan Schindler
f24ca9a840 Source code changes.
* Changed newlines to \n.
* Removed whitespace before colons.
* Fixed several alignments.
2014-10-06 01:18:47 +02:00
binary1248
b27cbd5036 Fixed font glyphs always being 2 pixels larger than they are supposed to be in each dimension, fixed wrong underline offset with some fonts, offset underline and strike through by half of their thickness so their center is positioned correctly, changed glyph and font metrics to use floats instead of ints to support scaling better. 2014-10-02 23:30:58 +02:00
Mario Liebisch
c36ea074d8 Joystick fixes/update for non-MSVC compilers
* This fixes building on non-MSVC compilers for Windows since they don't
know `_tcsnlen()`.
* Changed logic so SFML tries to retrieve the paths from the user key
first, machine key second (typical behavior for most registry settings).
* Removed the registry key length checks since that check is performed
inside`RegOpenKeyEx()` anyway and cut-off keys might point to the wrong
keys.
* Updated the error string retrieval to properly handle errors.
2014-09-25 13:06:42 +02:00
Marco Antognini
7159e4ba43 Improved cursor hiding on OS X 2014-09-25 01:18:29 +02:00
binary1248
330ea0bbe3 Fixed trying to truncate registry key names that did not need truncating. (#701) 2014-09-24 22:35:42 +02:00
Marco Antognini
6d122f428a Updated OS X Pool Wrapper 2014-09-23 14:12:11 +02:00
Lukas Dürrenberger
dcba593e8f Merge branch 'bugfix/joystick' 2014-09-23 10:46:13 +02:00
Marco Antognini
2427aaf3bb Added support for OS X 10.10
Note: this only fix the compilation process. SFML was not thoroughly
tested on this OS yet.
2014-09-21 07:39:05 +02:00
binary1248
eec9f7750f Amended based on comments from last commit. 2014-08-28 04:02:25 +02:00
binary1248
86c81f7458 Fixed memory leak in Unix JoystickImpl, refactored joystick code for all platforms, prevent accelerometers registering as joysticks on Unix. 2014-08-28 04:02:25 +02:00
Lee Zhen Yong
e5a98aa1d5 bug fix: compilation error in VS2013 64bit 2014-08-23 20:31:57 +08:00
Lukas Dürrenberger
ef1b9d6b20 Merge branch 'feature/strikethrough' 2014-08-19 23:02:21 +02:00
Łukasz Twarduś
fc7637681d C++11/14 compatibility 2014-08-19 22:47:35 +02:00
Lukas Dürrenberger
c016ab5d0a Merge branch 'bugfix/windows_dpi_scaling' 2014-08-19 22:37:55 +02:00
Lukas Dürrenberger
7c63c5885e Merge branch 'bugfix/texture_max_size' 2014-08-19 22:18:38 +02:00
binary1248
f9ed3fdcb3 Added support for SetProcessDpiAwareness as well, on Windows versions that support it. 2014-08-19 22:01:59 +02:00
binary1248
3b9e246c83 Renamed SocketSelectorImpl's members to use camelCase, removed unnecessary checks from SocketSelector::add and SocketSelector::remove. 2014-08-18 21:43:57 +02:00
binary1248
eaab2c1c68 Fixed SocketSelector not being able to accept sockets with IDs larger than FD_SETSIZE on Windows (#153) and added the same checks to other affected methods as well. 2014-08-18 21:43:55 +02:00
binary1248
34933520ac Fixed Windows DPI scaling causing strange window behavior (#679). 2014-08-18 19:02:40 +02:00
binary1248
7defb17e8c Made a few functions in Texture and Shader a bit more thread-safe. 2014-08-13 08:44:48 +02:00
Maximilian Wagenbach
713407e159 Fixed a bug where calling Texture::getMaximumSize() before any GlResource is created would break context management. 2014-08-13 07:25:12 +02:00
STU
6ad7b21203 Fix a bug in the font system.
When the finding a rectangle for a glyph at a particular character size,
if the glyph happens to be wider than the current texture size, but less
high than the unused height in the texture, the texture will not be
correctly doubled in size (since only the height is checked).

In practice, this only occurs when finding the rectangle for the *very
first* glyph (so the texture is at its default 128x128 size): otherwise,
the glyph would need to be unusually wide compared to its height to
trigger the bug.

This will trigger a debug assertion in Texture::update(). With assertions
disabled, there are knock-on effects and most text at that character size
will fail to render.
2014-08-12 10:52:39 +02:00
Lukas Dürrenberger
7ace90986b Merge branch 'bugfix/winxp_stack_align' 2014-08-12 09:45:59 +02:00
Mario Liebisch
621793a354 [Android] Rewrote key event handling
* This fixes duplicate TextEntered events and should properly handle
`AKEY_EVENT_ACTION_MULTIPLE` (including key down and key up events; as
far as possible; see comment). Unfortunately I don't have/know any IME
utilizing this, so can't test it.
* The back button is now mapped to the Escape key (best match without
adding new keys).
* The volume buttons are no longer intercepted by SFML and no longer
generate events.
2014-07-24 11:00:59 +02:00
Jonathan De Wachter
3f69629d0c Merge branch 'android_improvements' 2014-07-24 10:05:09 +02:00
Jonathan De Wachter
f7561f5fa1 Fixed EGL surface not recreated in the right thread 2014-07-24 10:04:27 +02:00
Jonathan De Wachter
796c87295c Improved readability of ?: operator 2014-07-24 08:35:23 +02:00
Foaly
5f3b6cb57a Added a strikethrough text style to sf::Text. Fixes issue #243. 2014-07-18 13:57:57 +02:00
binary1248
520025d904 Fixed a crash caused by the stack being unaligned when entering ThreadImpl::entryPoint if compiled by GCC or clang and run on Windows XP 32-bit. (#412) 2014-07-13 09:22:25 +02:00
Jonathan De Wachter
0a64da654c Merge pull request #656 from MarioLiebisch/android-nosurface-display
[Android] Don't try to display without a surface
2014-07-08 18:03:42 +02:00
Jonathan De Wachter
f491e94297 [Android] Redirect error messages to logcat by default 2014-07-08 17:59:33 +02:00
Lukas Dürrenberger
e625d79a04 Merge branch 'bugfix/soundstream' 2014-07-07 09:44:45 +02:00
Mario Liebisch
e73e408885 [Android] Don't try to display without a surface
* Android apps would still try to call `eglSwapBuffers()` even though
they don't have a valid surface right now (i.e. due to being inactive/in
background).
2014-07-05 18:42:41 +02:00
binary1248
57941c1696 Fixed invoking a virtual method (onSeek) in the destructor of SoundStream. 2014-07-05 16:19:30 +02:00
binary1248
74e425a9ed Made sure SoundStream adhered to its documented behavior, added a hint to SoundStream and Sound documentation regarding setting the offset while stopped. 2014-07-04 22:24:48 +02:00
Foaly
09aae0240d Fixed calling SoundStream::setPlayingOffset() unpausing a paused SoundStream (#203), guard m_isStreaming by a mutex, fixed calling SoundStream::pause() before the stream thread starts not properly pausing the stream (http://en.sfml-dev.org/forums/index.php?topic=15197.0), minor documentation fix in SoundStream. Signed-off-by: binary1248 <binary1248@hotmail.com> 2014-07-04 20:48:23 +02:00
binary1248
362a590454 Fixed FTP download and upload file sizes being limited by available RAM (#565). 2014-07-04 20:40:18 +02:00
Laurent Gomila
471873dff9 Fixed typo in the sfml-graphics CMake file 2014-07-03 08:01:44 +02:00
Jonathan De Wachter
dd6b54d0eb [Android] Forgot to add two lines to the previous commit 2014-06-26 07:55:49 +02:00
Jonathan De Wachter
c462f7cd0a [Android] Got rid of the unnecessary additional event container 2014-06-26 07:33:03 +02:00
Jonathan De Wachter
57ca180d8d [Android] Hide status and navigation bar only if the fullscreen flag is on 2014-06-26 07:32:44 +02:00
Jonathan De Wachter
73008293ba Window style constraints are handled differently on mobile OSes 2014-06-26 05:22:49 +02:00
Jonathan De Wachter
cf52687203 [Android] onCreate nows waits for sf::Window to be created 2014-06-26 05:15:25 +02:00
Jonathan De Wachter
fb81ddfdcb [Android] VideoMode::getDesktopMode() returns the physical scren size in pixels 2014-06-26 04:56:06 +02:00
Jonathan De Wachter
d73418261b [Android] Do not hardcode java const values (JNI) 2014-06-24 07:40:16 +02:00
Jonathan De Wachter
ed7c80f6bb [Android] No longer force people to have debug version installed 2014-06-24 06:39:11 +02:00
Jonathan De Wachter
3e9f842e59 [Android] Workaround transparency issues on some Android devices 2014-06-21 21:30:58 +02:00
Jonathan De Wachter
b542785ed9 [Android] Keep the screen turned on and bright 2014-06-21 21:30:58 +02:00
Jonathan De Wachter
f0345d5201 [Android] Hide the navigation bar 2014-06-21 21:30:58 +02:00
Jonathan De Wachter
a88bab1d59 [Android] Hide the status bar 2014-06-21 21:30:57 +02:00
Jonathan De Wachter
a4846db016 [Android] Enable the usage of debug version of SFML libraries (#643) 2014-06-21 21:10:45 +02:00
Jonathan De Wachter
214c9b0662 [Android] Removed dependency on the window module from libsfml-main.a 2014-06-21 21:10:31 +02:00
Jonathan De Wachter
c522f6d596 Merge pull request #642 from MarioLiebisch/android-fingerfix
[Android] Fixed redundant touch moved events
2014-06-21 20:18:41 +02:00
Jonathan De Wachter
6302cc0762 Merge pull request #641 from MarioLiebisch/android-statesfix
[Android] Fixed the app crashing on rotation
2014-06-21 20:07:57 +02:00
Mario Liebisch
121c3b2fd7 [Win32] Fixed Unicode inconsistency
For Unicode builds this change is more cosmetic, but it should fix
SFML's window class being registered as "S" rather than "SFML_Window"
for non-Unicode builds.
2014-06-21 00:06:39 +02:00
Mario Liebisch
1bd62b4d14 [Android] Fixed the app crashing on rotation
Rotating the screen will restart the app with the new window/orientation.
2014-06-21 00:04:45 +02:00
Mario Liebisch
bc73b12428 [Android] Fixed redundant touch moved events
Previously moving any finger would create `sf::Event::TouchMoved` events
for all fingers, even if their position didn't change at all.
2014-06-21 00:04:15 +02:00
Mario Liebisch
5b559f1c08 [Android] Added missing sensor event generation 2014-06-20 23:56:33 +02:00
Jonathan De Wachter
60c34bff19 [Android] Made the remaining sensors available 2014-06-13 15:58:58 +02:00
Jonathan De Wachter
2874ac4aab [Android] Don't disable sensors since it's handled at higher-level 2014-06-13 15:58:50 +02:00
binary1248
bdcdfffe11 Replaced Text underline offset/thickness with nicer font dependent values. 2014-06-12 00:49:23 +02:00
binary1248
da79517b36 Fix bitmap font resize failing silently when resizing to an unsupported pixel size (#448), fixed getKerning returning scaled values even for bitmap fonts. 2014-06-12 00:49:23 +02:00
rafoudiablol
0124ad0a85 Show error message everytime a shader uniform's location can't be found.
Adjusted code style (TankOs).

Original commit message by the author:
  Show only 1 once the message "Parameter not found"

Conflicts:
  src/SFML/Graphics/Shader.cpp
2014-06-11 14:43:28 +02:00
Stefan Schindler
228038fa8a Check socket descriptor limit. #153
When calling select(), there's an upper limit for the socket descriptor
which is defined as FD_SETSIZE. When the socket descriptor is higher
than FD_SETSIZE, a call to select() will not work as expected, at least
for the proper sockets.

This patch adds an error message for this case.
2014-06-11 14:35:15 +02:00
Mario Liebisch
159176f5ba [Android] Fixed TouchBegan reporting wrong coordinates
* So far `sf::Event::TouchBegan` always reported the coordinates of the
first pointer/finger.
2014-06-10 10:15:41 +02:00
Lukas Dürrenberger
265c411c39 Merge branch 'bugfix/osx-implementation' 2014-06-04 11:48:31 +02:00
Marco Antognini
46be2159cb Fixed OS X implementation of sf::Mouse::(get|set)Position
The code was not updated at all when support for retina display was introduced.
2014-06-01 20:07:24 +02:00
Jan Haller
bc1127da5b Output error message and abort program when XOpenDisplay() fails
Fixes issue #508.

When the X11 display could not be opened, the application crashed without notice. Now, a meaningful error message is output to std::err() and std::abort() is called, causing immediate program termination.
2014-05-28 12:05:46 +02:00
Marco Antognini
5912d205d3 Removed a dead store in sf::Ftp implementation 2014-05-28 11:18:39 +02:00
Marco Antognini
4f2c6c4489 Fixed potential memory leaks on OS X
And renamed create* methods to new* to follow more closely Objective-C
naming convention regarding memory management.
2014-05-28 11:18:38 +02:00
binary1248
1dae89a8e0 Moved glClientActiveTexture and glActiveTexture calls before glEnable(GL_TEXTURE_2D) to make sure texture unit 0 gets affected. (#523) 2014-05-27 10:56:11 +02:00
Mario Liebisch
ff869777a9 Fixed building for OpenGL ES 1.1 platforms
* Added proper extension handling for `glBlendEquation` and related
  constants (required for OpenGL ES 1.1).
2014-05-27 10:23:09 +02:00
Remco van Oosterhout
3fa1d0e03d Fixed issue where the viewport's width and/or height could be off by 1 pixel
Signed-off-by: Stefan Schindler <stefan@boxbox.org>
2014-05-27 09:14:00 +02:00
Joshua Adam Reisenauer
0375d7588f Fixed soundbuffer contents not being able to be updated when still attached to sounds (#354), sounds now detach from their buffer when it is reset. Signed-off-by: binary1248 <binary1248@hotmail.com> 2014-05-26 23:39:07 +02:00
binary1248
e6b5ce1f27 Make sure texture unit 0 is active when reseting RenderTarget states (#523), fix RenderTarget not clearing when a texture used as a RenderTexture color attachment is left bound in a different context (http://en.sfml-dev.org/forums/index.php?topic=9350.0). 2014-05-26 22:50:44 +02:00
Marco Antognini
3f61214571 Improved OS X implementation
It makes sure the notifications sent to SFOpenGLView are only from its window.
2014-05-26 15:37:33 +02:00
Marco Antognini
7d4235a38f Optimised OS X implementation regarding scaling factor
This also adds support for changing the screen profile or moving the window to another screen.
2014-05-26 15:37:09 +02:00
Lukas Dürrenberger
a3ab6efa23 Fix application crash when calling Shader::isAvailable() #608. 2014-05-23 10:44:10 +02:00
Marco Antognini
2215f55ef9 Moved more responsibilities to SFOpenGLView
These changes will ease the implementation of mouse grab (#394)
2014-05-23 09:52:18 +02:00
Marco Antognini
aa47dd5d33 Removed old documentation that doesn't apply anymore 2014-05-23 09:52:18 +02:00
Marco Antognini
e33e061e96 Replaced deprecated functions on OS X 10.9 2014-05-23 09:52:17 +02:00
Marco Antognini
b9f5f19f7c Reverted OS X implementation to non-ARC
* Apparently, there were some leaks not reported as such
 * Support for 32 bits computer is restored
 * Fix memory leak in sfStringToNSString (related to #484)
 * Unapply context when closing the window, freeing memory

The following commits are related to ARC modifications:

 * 42f6e83dfb
 * 6edc4b9518
 * f6c94451fb
 * 324d4a18e7
 * 0d47056132

Commit ac28902b57 is the last one before the introduction of ARC.
2014-05-23 09:52:17 +02:00
binary1248
1fe22e24d0 Fix the case where not having created a GlResource prior to calling Shader::isAvailable() would break context management. (#211) 2014-05-22 11:53:58 +02:00
firefly2442
749cbb2ff8 add HTTP support for PUT and DELETE
Signed-off-by: binary1248 <binary1248@hotmail.com>
2014-05-22 10:45:19 +02:00
Stefan Schindler
5250cc97d5 Updated glext, removed glxext.
Removed glxext in favor of the system version.
2014-05-13 15:17:01 +02:00
binary1248
c45039e907 Removed vertical tab support from Text (#442). 2014-05-13 10:40:38 +02:00
Jan Haller
0c3d361ceb Fixed problem with wrongly initialized sf::RenderStates::Default
This static variable depended on the global variable sf::BlendAlpha, which may not be constructed yet.
2014-05-01 00:39:57 +02:00
Jan Haller
cdf32a7881 Merge branch 'blendmodes'
Introduces the sf::BlendMode class that supports separate blend functions and equations.
Replaces the old sf::BlendMode enum.

Further changes:
* Fixed merge conflicts resulting from GLExtensions in mobile branch
* GLExtensions: Added GLEXT_blend_equation_separate
* Added file BlendMode.cpp
* Replaced occurrences of sf::BlendMode value parameters with const-references
* Adapted rendering code in sf::RenderTarget
2014-04-26 19:43:36 +02:00
Dmitry Marakasov
f1431e416c Use common unix sensor implementation on FreeBSD 2014-04-25 17:46:15 +04:00
Dmitry Marakasov
208164898b Don't use udev on FreeBSD 2014-04-25 17:45:49 +04:00
Marco Antognini
efe4354bc5 Improved resizing windows on OS X (close #474)
sf::Window::setSize will fire a resize event if the view could not be created at the requested size.
2014-04-23 13:14:42 +02:00
Laurent Gomila
ee336a3037 Merge pull request #576 from binary1248/text_fix
Fix text being rendered with a vertical offset when the font's ascent doesn't match it's size.
2014-04-22 22:41:25 +02:00
binary1248
6469f35d99 Fix text being rendered with a vertical offset when the font's ascent doesn't match it's size. 2014-04-22 22:06:51 +02:00
Laurent Gomila
f99bbfc534 Reviewed the sf::BlendMode class (added a constructor, made minor modifications in comments) 2014-04-22 21:37:39 +02:00
Marco Antognini
7f0f89bac9 Fixed menu shortcut not working in fullscreen (close #537) 2014-04-22 12:47:12 +02:00
Marco Antognini
c222c28aa7 Removed dead code
AutoreleasePoolWrapper is no more used since ARC is used on Mac.
2014-04-21 18:29:07 +02:00
Marco Antognini
52bb192cff Removed debug log forgotten in the previous commit 2014-04-21 18:15:24 +02:00
Marco Antognini
2c96d49a03 Fixed mouse tracking in fullscreen on OS X 2014-04-21 18:07:43 +02:00
Marco Antognini
2eb4f69e41 Replaced some deprecated functions on OS X
NSWindow convertBaseToScreen: -> convertRectToScreen:
NSView   convertPointToBase:  -> convertPointToBacking:
2014-04-21 18:07:43 +02:00
Marco Antognini
d8812f0f5c Add support for retina displays (close #353)
Based on PR #388 by Michael Bradshaw

Convert size to match the size requested by the user.
2014-04-21 18:06:44 +02:00
Marco Antognini
8f0037d84d Improved fullscreen support on OS X (close #343)
No hard resolution switch is done. Instead a view of the requested
size is displayed in the center of the main screen (letter boxing).

Running a stress test showed that the performance were equal
to a hard switch without the inconvenience of resizing the
user's apps. This also follows the guidelines defined by Apple:

> Avoid changing the display resolution from that chosen by the user.

source:
https://developer.apple.com/library/mac/documentation/graphicsimaging/Conceptual/OpenGL-MacProgGuide/opengl_fullscreen/opengl_cgl.html
2014-04-21 18:06:44 +02:00
James Cowgill
86b29c539d Fixed various linux compile errors in EglContext 2014-04-21 14:42:07 +01:00
Marco Antognini
6e3103464a Fixed unused parameter warning 2014-04-20 21:55:38 +02:00
Marco Antognini
1bfc735a9e Improved style 2014-04-20 21:22:14 +02:00
Jonathan De Wachter
a348428476 [Android] Fixed stream pointer not initialized in Font.cpp 2014-04-20 12:58:59 +02:00
Jonathan De Wachter
273ad4c9ee [Android] Adapted sensor implementation 2014-04-20 12:58:56 +02:00
Mario Liebisch
dd7a3cb30b Fixed missing JoystickImpl member on Android 2014-04-20 12:58:54 +02:00
Laurent
03acb2ad9f Fixed compile errors in SensorImpl.mm and with EGL stuff on iOS 2014-04-20 12:58:52 +02:00
Laurent Gomila
80431deef4 Reviewed the sensor API 2014-04-20 12:58:50 +02:00
Jonathan De Wachter
2d682d324f [Android] Fixed unicode value of text entered event is always 0 2014-04-20 12:58:45 +02:00
Jonathan De Wachter
67c7a5d176 [Android] Forgot to dettach the SFML thread from the JVM at several places 2014-04-20 12:58:43 +02:00
Jonathan De Wachter
83306e72a2 [Android] Don't attach the same thread twice to the JVM
ANativeActivity_onCreate is called by NaviteActivity from Java (which is the main thread). Thus, this thread is already attached to the JVM.
2014-04-20 12:58:39 +02:00
Mario Liebisch
84bd8c6c5b Fixed several issues
- Cmake errored out due to the ANDROID_NDK_* variables being used before being set/detected for the first time.
- Fixed one warning regarding one string replace in CMake.
- Fixed warnings when compiling SFML-Activity.
2014-04-20 12:58:37 +02:00
Jonathan De Wachter
038401b8d5 [Android] Forgot to add EGLCheck.cpp to the list of file to build 2014-04-20 12:58:33 +02:00
Jonathan De Wachter
595df2a1a9 [Android] Fixed invalid drawable error 2014-04-20 12:58:29 +02:00
Jonathan De Wachter
2caec961ee [Android] Dropped stlport in favor of libc++ which supports C++11 2014-04-20 12:58:27 +02:00
Jonathan De Wachter
a1b0e73ac5 [Android] SFML activity allows a custom library name for the user application 2014-04-20 12:58:17 +02:00
Jonathan De Wachter
349fe380e4 [Android] Moved sensor implementation to the right place 2014-04-20 12:58:15 +02:00
Jonathan De Wachter
7daaaa649e Implemented sensor API 2014-04-20 12:58:13 +02:00
Jonathan De Wachter
59c3c2c0b0 Improved X11 visual selection algorithm to match the EGL config 2014-04-20 12:58:11 +02:00
Jonathan De Wachter
ba0555fd1a Implemented getBestConfig() in EglContext to retrieve the best EGL config 2014-04-20 12:58:09 +02:00
Jonathan De Wachter
2627c3579f Forgot to initialize the EGL display 2014-04-20 12:58:07 +02:00
Jonathan De Wachter
43aa313280 Don't link against freetype and jpeg library twice 2014-04-20 12:58:05 +02:00
Jonathan De Wachter
e12b94c989 Xrandr was missing in the list of external libraries on Linux 2014-04-20 12:58:02 +02:00
Jonathan De Wachter
45f23cdbbb Made the OpenGL ES implementation available on ARM-based Linux OSes 2014-04-20 12:58:00 +02:00
Jonathan De Wachter
565bc69a4e Uniformized the way CMake find and link against external libraries 2014-04-20 12:57:58 +02:00
Laurent Gomila
1c9a8310ff Fixed missing modification after last commit 2014-04-20 12:57:53 +02:00
Laurent Gomila
62941c4264 Now using an explicit prefix for OpenGL extension macros, to avoid conflicts 2014-04-20 12:57:51 +02:00
Laurent Gomila
2c259c8f49 Added missing include of <System/Err.hpp> 2014-04-20 12:57:49 +02:00
Jonathan De Wachter
860c232507 [Android] No longer cache the window size
Because onContextRectChanged happens after the surface creation thus, the window doesn't return the correct value when the surface gets created.
2014-04-20 12:57:45 +02:00
Jonathan De Wachter
17430ef372 [Android] Implemented mouse events 2014-04-20 12:57:43 +02:00
Jonathan De Wachter
2ab49ece2f [Android] Implemented sf::TextEvent 2014-04-20 12:57:40 +02:00
Jonathan De Wachter
634c3dc2a7 [Android] Fixed memory leak when loading asset files 2014-04-20 12:57:38 +02:00
Jonathan De Wachter
891cd261b8 Removed unnecessary sf:: prefix 2014-04-20 12:57:36 +02:00
Laurent Gomila
728f11701b [iOS] Added (fake) implementation of vertical synchronization 2014-04-20 12:57:34 +02:00
Laurent Gomila
cd89e462fa [iOS] Fixed freeze in joystick initialization when one or more sensors were not available on a device 2014-04-20 12:57:32 +02:00
Laurent Gomila
d908ffa498 Removed the call to glPolygonMode, unavailable in OpenGL ES. 2014-04-20 12:57:30 +02:00
Jonathan De Wachter
de791c05dc [Android] Added the joystick implementation 2014-04-20 12:57:28 +02:00
Jonathan De Wachter
fbd21962f0 [Android] Improved input implementation 2014-04-20 12:57:26 +02:00
Jonathan De Wachter
4626e95491 [Android] Fixed WindowHandle and getSystemHandle() 2014-04-20 12:57:23 +02:00
Jonathan De Wachter
77567e9656 Implemented missing setVirtualKeyboardVisible method on desktop platforms 2014-04-20 12:57:21 +02:00
Laurent Gomila
67177ce55c Fixed framebuffer binding messed up after a call to Texture::copyToImage() on OpenGL ES 2014-04-20 12:57:19 +02:00
Jonathan De Wachter
218c0897c8 [Android] Added the Android version of extlibs headers 2014-04-20 12:57:18 +02:00
Jonathan De Wachter
d6f98229a8 [Android] Removed dirty hack from Window.cpp 2014-04-20 12:57:16 +02:00
Jonathan De Wachter
663dad18f2 [Android] Fixed compilation issue and enabled audio module for mips arches 2014-04-20 12:57:14 +02:00
Jonathan De Wachter
bc46dfb8f5 [Android] Various adjustements 2014-04-20 12:57:11 +02:00
Jonathan De Wachter
f60ab60263 Added SFML_OS_ prefix to IOS and ANDROID variables 2014-04-20 12:57:02 +02:00
Laurent Gomila
00d3bf1e7f [iOS] Cosmetic changes in joystick implementation 2014-04-20 12:56:58 +02:00
Laurent Gomila
3f7486323a Fixed condition in build file 2014-04-20 12:56:55 +02:00
Laurent Gomila
2c409e5145 Added touch events and the sf::Touch class (and iOS implementation) 2014-04-20 12:56:53 +02:00
Jonathan De Wachter
c77b8a3496 [Android] Moved getActivity(ActivitySttates*) to the system module
Somehow this function gets stripped by compilators if I put this in the main module (which is what we want).
To solve this issue (and to avoid additional dependencies on sfml-window), I moved it to the system module since all SFML modules depend on it.
2014-04-20 12:56:51 +02:00
Jonathan De Wachter
90d8b37442 [Android] Removed ogg, FLAC, vorbis and vorbisenc dependencies 2014-04-20 12:56:46 +02:00
Jonathan De Wachter
cc0d982f72 [Android] Wrote a native activity acting as a bootstrap
A current limitation prevents one library from depending on shared libraries.
As we have legal issues here (LGPL wants us to use shared libs of OpenAL-Soft and libsndfile), we're forced to use this homemade native activity which will manually load our shared libraries.
2014-04-20 12:56:42 +02:00
Jonathan De Wachter
60894d1c1a [Android] Rewrote CMake scripts to compile SFML with our new toolchain 2014-04-20 12:56:40 +02:00
Laurent Gomila
8f459cd1af [iOS] Made the resources path the default working directory 2014-04-20 12:53:20 +02:00
Laurent Gomila
3872b27569 Reworked the sfml-main module, added Main.hpp, moved the main() internal entry point for iOS from sfml-window to sfml-main 2014-04-20 12:53:17 +02:00
Laurent Gomila
cac645076f [iOS] Fixed linker command line in Graphics/CMakeLists.txt 2014-04-20 12:53:09 +02:00
Laurent Gomila
239921b456 [iOS] Improved support for examples, removed the need for a toolchain file 2014-04-20 12:53:04 +02:00
Jonathan De Wachter
cefb4fcee0 Improved OpenAL error macro
It now supports functions that return values.
2014-04-20 12:52:08 +02:00
Jonathan De Wachter
8c906a7a3d Improved OpenGL error macro
It now supports functions that return values.
2014-04-20 12:52:06 +02:00
Jonathan De Wachter
63bbe2c91e Added the Android port 2014-04-20 12:52:04 +02:00
Laurent Gomila
01b745185e [iOS] Various adjustements to implementation 2014-04-20 12:48:07 +02:00
Laurent Gomila
e20ff86330 [iOS] Adjusted the code and build files to use Automatic Reference Counting 2014-04-20 12:48:04 +02:00
Laurent Gomila
d50f94ca97 Fixed render buffers not correctly resized on orientation changes 2014-04-20 12:48:02 +02:00
Laurent
e5ee38fc26 Added the iOS port 2014-04-20 12:48:00 +02:00
Jan Haller
f2ef524b57 Fixed compile warnings 2014-04-19 11:50:31 +02:00
Marco Antognini
0a5f38157f Added support for OpenGL 3.2 context on OS X (close #84)
The Graphics module is not compatible with a core profile on Mac. If
you plan to use it, use OpenGL 2.1 (default).
2014-04-15 20:19:12 +02:00
Marco Antognini
f6c94451fb Added some memory autorelease pools and nil'ify attribute 2014-04-15 20:19:12 +02:00
Marco Antognini
324d4a18e7 Fixed NSApplication not retaining its delegate 2014-04-15 20:19:12 +02:00
Marco Antognini
0d47056132 Updated Objective-C implementation to use ARC; removed i386 support 2014-04-15 20:19:09 +02:00
Marco Antognini
ac28902b57 Removed support for OS X 10.6 and below 2014-04-15 20:18:20 +02:00
Marco Antognini
0d6ddde07f Fixed unused parameter warnings 2014-04-15 20:18:20 +02:00
Marco Antognini
49f2a76d93 Fixed a few glitches in the documentation 2014-04-15 20:18:19 +02:00
Marco Antognini
b868833191 Improved coding style of OS X implementation
And fixed some typos.
2014-04-15 20:18:19 +02:00
Alexandre Bodelot
816bc93b04 Fixed disabling key repeat on Linux 2014-04-07 19:15:14 +02:00
Jan Haller
83fd76c40b Merge pull request #562 from CheezeCake/master
Fixed compile errors on FreeBSD
2014-04-06 19:26:41 +02:00
Jan Haller
18bbd23886 Window::create() now also resets framerate limit
Fixes #371
2014-04-06 17:14:24 +02:00
Jan Haller
e9334db424 Merge pull request #555 from varnie/master
Image::flipVertically(), Image::flipHorizontally() optimizations
2014-03-30 12:15:11 +02:00
CheezeCake
c584ddeea6 Fix typos and missing Joystick:: 2014-03-29 21:21:31 +01:00
Jan Haller
666da801a1 Cached sf::Text attributes
Two optimizations:
- If a value remains the same, nothing happens
- Recompute geometry only before drawing and bound access, not after each set

Closes #413
2014-03-29 18:34:49 +01:00
Jan Haller
0227e5c51e Minor formatting 2014-03-28 19:55:18 +01:00
Jan Haller
f9233e792b Output error message in SoundStream when bits are zero
Fixes #529
2014-03-25 23:11:06 +01:00
Jan Haller
50e3052773 Exposed up vector in sf::Listener API
Closes #545
2014-03-23 20:16:42 +01:00
Jan Haller
d97e5244af Optimized sf::Listener with a cache
Two optimizations:
- Get functions return locally stored value
- Set functions call OpenAL only if value has changed
2014-03-23 18:03:13 +01:00
varnie
83eab47c05 Image::flipVertically(), Image::flipHorizontally() optimizations. 2014-03-20 10:49:01 +06:00
Jan Haller
ec494babbe Passed BlendMode objects by const-reference 2014-03-16 11:58:45 +01:00
Jan Haller
fab46cdfd7 Improved formatting 2014-03-16 10:50:27 +01:00
Jan Haller
75784dbb9a Omitted "Blend" prefix for nested BlendMode enums
BlendMode::Factor instead of BlendMode::BlendFactor
BlendMode::Equation instead of BlendMode::BlendEquation
2014-03-12 12:22:47 +01:00
Jan Haller
05d196d86d Fixed compile error (trailing enum comma) and other minor things 2014-03-12 12:19:38 +01:00
Jan Haller
fe7d6f513d Created branch for experimental blending mode API
See issue #298.
Based on branch 'new_blending_api' of github.com:tomgalvin594/SFML.
2014-03-09 13:38:39 +01:00
Jan Haller
185c09a95c Added CMake find module for udev library 2014-03-09 13:10:42 +01:00
Thomas Galvin
951b774c70 Implemented a more flexible blending system (fixes #298) 2014-03-05 17:19:14 -05:00
NoobsArePeople2
29c0f14911 Adds name, vendor ID and product ID for joysticks.
- Implemented on Windows, Mac OS and Linux.
- Adds sf::Joystick::Identification structure to hold
  name, vendor ID and product ID.
2014-03-04 09:01:46 -08:00
Thomas Galvin
e1c40c9c77 Changed tabs to spaces in various files 2014-02-28 16:58:53 -05:00
Jan Haller
53f7ae5d09 Avoided unnecessary toLower string conversions 2014-02-19 16:12:17 +01:00
Jan Haller
79134ba665 Removed unnecessary null pointer checks in Window.cpp
Fixes #532
2014-02-19 15:46:06 +01:00