Skip to content

Commit

Permalink
Update version to 2.10.0-1
Browse files Browse the repository at this point in the history
  • Loading branch information
ehopperdietzel committed Oct 31, 2024
1 parent 52f46ac commit 8d6461f
Show file tree
Hide file tree
Showing 8 changed files with 49 additions and 9 deletions.
32 changes: 32 additions & 0 deletions CHANGES
Original file line number Diff line number Diff line change
@@ -1,3 +1,35 @@
Louvre (2.10.0-1)

# API Additions

* Added LTexture::setFence() and LRenderBuffer::setFence() to prevent partial updates when used as source textures.
* Added LTexture::setDataFromGL() to enable wrapping of already created OpenGL textures.

# Performance

* Replaced glFinish() calls with fences, ensuring synchronization without requiring CPU-side waiting.

# Bug Fixes

* Fixed issue of black textures appearing on proprietary NVIDIA drivers (and potentially others). Thanks @renhiyama and @kingdomkind for all your help!
* Fixed synchronization issues between threads that were causing partial texture updates.
* Replaced calls to wl_client_destroy with wl_resource_post_error when an unknown buffer type is committed, which was causing a segmentation fault. Thanks @Ramblurr for reporting it!
* Fixed segfault occurring when an idle inhibitor resource was destroyed.
* Wayland Backend: Resolved issue where modifier keys were not released when the window lost focus. Thanks @renhiyama for reporting it!

# Tests

* Added test to validate support for common texture formats and the synchronization of updates across threads.

# Dependencies

* Updated SRM dependency to version >= v0.8.0.

Special thanks to @renhiyama, @kingdomkind, and @Fox2Code for your invaluable support!

-- Eduardo Hopperdietzel <[email protected]> Wed, 30 Oct 2024 22:10:55 -0300


Louvre (2.9.0-1)

# API Additions
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="Louvre is released under the MIT license." />
</a>
<a href="https://github.com/CuarzoSoftware/Louvre">
<img src="https://img.shields.io/badge/version-2.9.0-brightgreen" alt="Current Louvre version." />
<img src="https://img.shields.io/badge/version-2.10.0-brightgreen" alt="Current Louvre version." />
</a>
</p>

Expand Down Expand Up @@ -158,12 +158,12 @@ Similarly as with CPU consumption, we can observe that Louvre uses fewer GPU res

## 🔨 Upcoming Features

* DRM Synchronization Object
* Rootless XWayland
* Wlr Output Management
* DRM Lease Protocol
* Cursor Shape Protocol
* DRM Overlay Planes Control
* DRM Synchronization Object
* DRM Lease Protocol
* Rootless XWayland
* Tablet Events Protocol
* Virtual Keyboard Protocol
* Input Methods Protocol
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.9.0
2.10.0
2 changes: 1 addition & 1 deletion doxygen/md/Downloads.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Louvre relies on the following libraries:
* **egl** >= 1.5
* **glesv2** >= 3.2
* **libdrm** >= 2.4.113
* **srm** >= 0.7.2
* **srm** >= 0.8.0
* **libudev** >= 249
* **libinput** >= 1.20.0
* **xcursor** >= 1.2.0
Expand Down
6 changes: 6 additions & 0 deletions src/backends/graphic/DRM/LGraphicBackendDRM.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -347,6 +347,12 @@ bool LGraphicBackend::backendInitialize()
srmCoreDestroy(bknd->core);
goto fail;
}
else if (version->major == 0 && version->minor < 8)
{
LLog::fatal("[%s] Using SRM v%d.%d.%d but version >= v0.8.0 is required.", BKND_NAME, version->major, version->minor, version->patch);
srmCoreDestroy(bknd->core);
goto fail;
}

allocatorDevice = srmCoreGetAllocatorDevice(bknd->core);

Expand Down
4 changes: 3 additions & 1 deletion src/lib/core/LSurface.h
Original file line number Diff line number Diff line change
Expand Up @@ -469,7 +469,9 @@ class Louvre::LSurface : public LFactoryObject
*/
Protocols::Wayland::RSurface *surfaceResource() const noexcept;

// TODO: add doc
/**
* @brief Idle Inhibitor Resources
*/
std::vector<Protocols::IdleInhibit::RIdleInhibitor*> idleInhibitorResources() const noexcept;

/**
Expand Down
2 changes: 1 addition & 1 deletion src/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ pixman_dep = dependency('pixman-1', version: '>= 0.40.0')
drm_dep = dependency('libdrm', version: '>= 2.4.113')
input_dep = dependency('libinput', version: '>= 1.20.0')
libseat_dep = dependency('libseat', version: '>= 0.6.4')
srm_dep = dependency('SRM', version : '>=0.7.2')
srm_dep = dependency('SRM', version : '>=0.8.0')
pthread_dep = cpp.find_library('pthread')
dl_dep = cpp.find_library('dl')

Expand Down
2 changes: 1 addition & 1 deletion src/meson_options.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ option('build_examples',

option('build_tests',
type : 'boolean',
value : true)
value : false)

option('backend-drm',
type: 'boolean',
Expand Down

0 comments on commit 8d6461f

Please sign in to comment.