Commit graph

1236 commits

Author SHA1 Message Date
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