1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-18 00:54:19 +00:00
Commit graph

50 commits

Author SHA1 Message Date
reuk
c2d52a5499
OpenGLFrameBuffer: Automatically save/restore content when the context is paused/resumed
This addresses an issue where OpenGL-backed image content could get lost
when putting and Android app into an inactive state. This happens
because the GL context gets destroyed, freeing all associated resources.

The workaround introduced here will listen for OpenGL state-change
events, and attempt to save and restore framebuffer content into main
memory, so that the content can be restored once the app is reactivated.
2025-07-09 11:24:43 +01:00
Tom Poole
94d98a2b10 Update licensing information 2024-04-16 11:39:35 +01:00
Tom Poole
9b041f3d74 Add a base clang-tidy configuration 2023-09-18 11:24:19 +01:00
reuk
28f2157912
Convert ignoreUnused to [[maybe_unused]] 2022-12-01 11:41:50 +00:00
reuk
2ae87f95f1
OpenGL: Carry out all GL rendering on a single thread 2022-09-27 15:18:21 +01:00
reuk
8ec8e36f5c OpenGLContext: Swap buffers on the main thread
This change fixes an issue where opening multiple OpenGLContexts on
certain versions of macOS (observed on 10.13) could cause a deadlock.

The issue can be reproduced by:
- Attaching an OpenGL context to the AudioPluginDemo editor
- Opening multiple copies of the editor simultaneously in a plugin host.
  I tested with Live 10.

I also observed the issue in a standalone app that opened new windows
containing OpenGLContexts on a timer.
2022-08-31 17:42:48 +01:00
reuk
02b5ab748a OpenGL: Add support for a few more OpenGL profiles
- 4.1 and 4.3 contexts can now be requested
- The requested context version is no longer ignored on Linux
- Debugging contexts are now enabled in Debug builds with GL 4.3
- Fixes a bug where glEnable(GL_TEXTURE_2D) was called in core profiles
2022-08-31 17:42:47 +01:00
Tom Poole
2ec861d99e Update licensing banners to JUCE 7 2022-05-16 17:55:48 +01:00
Tom Poole
dea3fe60e4 Update copyright banners 2022-04-04 12:36:32 +01:00
reuk
65396f986d
OpenGL: Use correct reference to glResolveMultisampleFramebufferAPPLE 2021-09-07 20:09:34 +01:00
reuk
54423f6583
OpenGL: Add GLEW-inspired dynamic function loading 2021-05-26 11:23:49 +01:00
ed
b7e28541ca Replaced deprecated Displays methods 2020-10-27 12:38:59 +00:00
ed
d83b3f7716 iOS: Convert logical to physical bounds when resolving OpenGL multisampled framebuffers 2020-10-20 10:00:35 +01:00
ed
009d685179 Updated all license headers 2020-06-29 08:30:22 +01:00
Tom Poole
894e7d2bd2 Updated all license headers 2020-04-23 17:30:39 +01:00
reuk
327f817b9b Copyrights: Update commercial/gpl headers to be gpl-only 2020-04-09 15:22:56 +01:00
ed
a54da0b832 Fixed some more typos 2020-01-07 08:53:23 +00:00
ed
6894e04356 Android: Fixed an OpenGL crash that would occur due to failing to get a pointer to the native window 2017-11-30 10:11:40 +00:00
jules
eda613c6db Moved all "namespace juce" declarations from module headers to the individual .h and .cpp source files. This makes life a lot easier for Intellisense and other IDE autocompletion tools 2017-09-08 08:59:55 +01:00
hogliux
b5afccc37c Updated file headers and the README with the JUCE 5 license 2017-04-27 14:43:04 +01:00
jules
990b7b3b09 Fix for openGL components when global scale factors are applied 2016-11-22 12:45:36 +00:00
jules
4583fa3fbf Used the ignoreUnused() function to tidy up some old code 2015-12-23 16:27:50 +00:00
hogliux
c7b8e77031 Update copyright notice 2015-07-22 15:59:34 +01:00
jules
28123033cd Fixed an iOS GL compile error. 2015-04-20 17:29:11 +01:00
jules
b8133ad331 Fix for GL multisampling on some iOS versions. 2015-04-20 12:04:53 +01:00
jules
6bbe61f024 Compiler warning fix in iOS build. 2015-03-16 15:28:06 +00:00
jules
56d2ae6a75 More iOS opengl version tweaking 2014-09-18 10:16:24 +01:00
jules
9dd760c86b Another update for iOS8 openGL multisampling 2014-09-18 09:14:41 +01:00
jules
49dd0011b0 Updates for iOS GL calls in iOS8 2014-09-16 17:49:30 +01:00
jules
3b13032b8c Updated some iOS GL calls to use newer API types and functions 2014-09-16 15:09:07 +01:00
jules
44b5f716cb Fixes for openGL on iOS to use multisampling. 2014-09-16 11:57:50 +01:00
jules
619d475021 Fixes for building on iOS 6 SDK 2014-05-03 16:00:11 +01:00
jules
e5c556d307 Added support for GLSL v3 in iOS 2014-03-22 15:16:19 +00:00
jules
272bcbcaab Added a method OpenGLContext::setOpenGLVersionRequired, which can be used to request a v3.2 context. 2014-03-11 10:24:31 +00:00
jules
c62da6c983 Cleaned up some pedantic warnings in the iOS build. 2013-10-01 12:55:44 +01:00
jules
30cc1ed757 Added flags for multisampling in GL, and implementation of this for iOS. 2013-07-23 17:38:25 +01:00
jules
03c2801f3f Copyright header update in all module files. juce_core modules are now ISC licensed. All other modules are GPLv2/3/AGPLv3 2013-06-13 13:17:12 +01:00
jules
25c70643e3 OpenGL linux fix, and removed some deprecated GL calls. 2013-03-28 13:13:10 +00:00
jules
ba2dc52b34 Made use of @autoreleasepool for clang builds. 2013-03-21 18:33:01 +00:00
jules
b4b8aa939f Fix for iOS high-DPI openGL. 2013-01-14 20:35:14 +00:00
jules
0ceeb573d8 Minor changes to avoid pedantic compiler warnings. 2012-12-04 21:39:15 +00:00
jules
2e777f8943 Fix for iOS windowing, and some CGRect clean-ups. 2012-09-13 20:02:09 +01:00
jules
5a69cc6ce2 Internal tidying-up. 2012-07-13 19:31:00 +01:00
jules
68024fb8aa Changed OpenGLContext to take a native context handle as its sharing context. 2012-05-05 18:33:20 +01:00
jules
ffdca01800 openGL: deactivating context on shutdown. 2012-05-04 13:00:01 +01:00
jules
bd0741f9a9 Added method OpenGLContext::deactivateCurrentContext(). 2012-05-04 11:23:57 +01:00
jules
7d9e06d788 Added OpenGL locking for OSX. 2012-04-03 18:18:44 +01:00
jules
4e1a9f6526 better double comparisons for var. Fix for VS2005/VS2010 RTAS exporting. Minor GL cleanups and project updates. 2012-03-31 16:41:05 +01:00
jules
0f8cc04904 GL fixes, clean-ups, docs. 2012-03-30 15:28:26 +01:00
jules
91a41ddbd8 OpenGL refactoring (stage 1) 2012-03-27 17:22:54 +01:00
Renamed from modules/juce_opengl/native/juce_ios_OpenGLComponent.mm (Browse further)