Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package hyprtoolkit for openSUSE:Factory 
checked in at 2026-02-17 16:51:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hyprtoolkit (Old)
 and      /work/SRC/openSUSE:Factory/.hyprtoolkit.new.1977 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "hyprtoolkit"

Tue Feb 17 16:51:08 2026 rev:2 rq:1333457 version:0.5.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/hyprtoolkit/hyprtoolkit.changes  2026-01-09 
17:06:13.430794207 +0100
+++ /work/SRC/openSUSE:Factory/.hyprtoolkit.new.1977/hyprtoolkit.changes        
2026-02-17 16:52:49.237157945 +0100
@@ -1,0 +2,8 @@
+Mon Feb 16 22:31:17 UTC 2026 - Avindra Goolcharan <[email protected]>
+
+- update to 0.5.3:
+  * elements/text: fix a possible texture race that would result
+    in an empty texture asset
+  * config: add rounding_large and _small
+
+-------------------------------------------------------------------

Old:
----
  hyprtoolkit-v0.5.2.tar.gz

New:
----
  hyprtoolkit-v0.5.3.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ hyprtoolkit.spec ++++++
--- /var/tmp/diff_new_pack.oDSKF8/_old  2026-02-17 16:52:50.653217130 +0100
+++ /var/tmp/diff_new_pack.oDSKF8/_new  2026-02-17 16:52:50.657217298 +0100
@@ -19,7 +19,7 @@
 %define sover 5
 %define libname lib%{name}%{sover}
 Name:           hyprtoolkit
-Version:        0.5.2
+Version:        0.5.3
 Release:        0
 Summary:        A C++ GUI toolkit for native Wayland applications
 License:        BSD-3-Clause

++++++ hyprtoolkit-v0.5.2.tar.gz -> hyprtoolkit-v0.5.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hyprtoolkit-0.5.2/VERSION 
new/hyprtoolkit-0.5.3/VERSION
--- old/hyprtoolkit-0.5.2/VERSION       2026-01-04 14:02:50.000000000 +0100
+++ new/hyprtoolkit-0.5.3/VERSION       2026-01-22 21:14:02.000000000 +0100
@@ -1 +1 @@
-0.5.2
\ No newline at end of file
+0.5.3
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hyprtoolkit-0.5.2/src/core/Backend.cpp 
new/hyprtoolkit-0.5.3/src/core/Backend.cpp
--- old/hyprtoolkit-0.5.2/src/core/Backend.cpp  2026-01-04 14:02:50.000000000 
+0100
+++ new/hyprtoolkit-0.5.3/src/core/Backend.cpp  2026-01-22 21:14:02.000000000 
+0100
@@ -24,6 +24,14 @@
 #include <print>
 #include <unistd.h>
 
+#if defined(__FreeBSD__)
+#include <pthread_np.h>
+#elif defined(__NetBSD__)
+#include <lwp.h>
+#elif defined(__DragonFly__)
+#include <sys/lwp.h>
+#endif
+
 using namespace Hyprtoolkit;
 using namespace Hyprutils::Memory;
 
@@ -416,7 +424,18 @@
 
     m_sLoopState.event = true; // let it process once
 
-    m_sLoopState.eventLoopThreadID = gettid();
+    m_sLoopState.eventLoopThreadID =
+#if defined(__linux__)
+        gettid();
+#elif defined(__FreeBSD__)
+        pthread_getthreadid_np();
+#elif defined(__OpenBSD__)
+        getthrid();
+#elif defined(__NetBSD__)
+        _lwp_self();
+#elif defined(__DragonFly__)
+        lwp_gettid();
+#endif
 
     while (!m_terminate) {
         std::unique_lock lk(m_sLoopState.eventRequestMutex);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hyprtoolkit-0.5.2/src/element/text/Text.cpp 
new/hyprtoolkit-0.5.3/src/element/text/Text.cpp
--- old/hyprtoolkit-0.5.2/src/element/text/Text.cpp     2026-01-04 
14:02:50.000000000 +0100
+++ new/hyprtoolkit-0.5.3/src/element/text/Text.cpp     2026-01-22 
21:14:02.000000000 +0100
@@ -15,6 +15,7 @@
 #include "../Element.hpp"
 #include "../../helpers/UTF8.hpp"
 #include "../../system/DesktopMethods.hpp"
+#include "Macros.hpp"
 
 using namespace Hyprtoolkit;
 using namespace Hyprgraphics;
@@ -78,7 +79,7 @@
         textureToUse = m_impl->oldTex;
 
     if (!textureToUse) {
-        if (!m_impl->waitingForTex)
+        if (!m_impl->waitingForTex && !m_impl->resource)
             m_impl->renderTex();
         return;
     }
@@ -86,7 +87,8 @@
     if ((impl->window && impl->window->scale() != m_impl->lastScale) || 
m_impl->needsTexRefresh) {
         m_impl->lastScale = impl->window ? impl->window->scale() : 1.F;
         m_impl->preferred = m_impl->getTextSizePreferred();
-        m_impl->renderTex();
+        if (!m_impl->resource)
+            m_impl->renderTex();
         textureToUse = m_impl->oldTex;
     }
 
@@ -329,7 +331,8 @@
     oldTex          = tex;
     needsTexRefresh = false;
 
-    resource.reset();
+    ASSERT(!resource);
+
     tex.reset();
 
     waitingForTex = true;
@@ -360,6 +363,18 @@
         .wrap      = maxSize.has_value() && maxSize->x >= 0,
     });
 
+    if (Env::isTrace()) {
+        const std::string TEXT_SHORT = data.text.size() > 20 ? 
data.text.substr(0, 20) + "..." : data.text;
+        g_logger->log(HT_LOG_TRACE, "TextImpl: scheduling rendering of text 
\"{}\", with the following params:\nfont: {}, fontSize: {}, maxSize: {}, 
ellipsize: {}, wrap: {}",
+                      TEXT_SHORT,                                              
         //
+                      data.fontFamily,                                         
         //
+                      sc<size_t>(std::round(lastFontSizeUnscaled * 
lastScale)),         //
+                      maxSize.has_value() ? std::format("{}", *maxSize) : "<no 
value>", //
+                      !data.noEllipsize && maxSize.has_value() && maxSize->y 
>= 0,      //
+                      maxSize.has_value() && maxSize->x >= 0                   
         //
+        );
+    }
+
     ASP<IAsyncResource> resourceGeneric(resource);
 
     g_asyncResourceGatherer->enqueue(resourceGeneric);
@@ -393,6 +408,15 @@
     if (self->impl->window)
         self->impl->window->scheduleReposition(self->impl->self);
 
+    if (Env::isTrace()) {
+        const std::string TEXT_SHORT = data.text.size() > 20 ? 
data.text.substr(0, 20) + "..." : data.text;
+
+        if (size.x == 0 || size.y == 0 || 
!resourceGeneric->m_asset.cairoSurface)
+            g_logger->log(HT_LOG_ERROR, "TextImpl: failed to render text 
\"{}\"!!!", TEXT_SHORT);
+        else
+            g_logger->log(HT_LOG_TRACE, "TextImpl: got a tex with size {} for 
text \"{}\"", size, TEXT_SHORT);
+    }
+
     waitingForTex = false;
     newTex        = true;
     resource.reset();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/hyprtoolkit-0.5.2/src/palette/ConfigManager.cpp 
new/hyprtoolkit-0.5.3/src/palette/ConfigManager.cpp
--- old/hyprtoolkit-0.5.2/src/palette/ConfigManager.cpp 2026-01-04 
14:02:50.000000000 +0100
+++ new/hyprtoolkit-0.5.3/src/palette/ConfigManager.cpp 2026-01-22 
21:14:02.000000000 +0100
@@ -57,6 +57,8 @@
     m_config->addConfigValue("link_text", Hyprlang::INT{0xFF4EECF8});
     m_config->addConfigValue("accent", Hyprlang::INT{0xFF00FFCC});
     m_config->addConfigValue("accent_secondary", Hyprlang::INT{0xFF0099F0});
+    m_config->addConfigValue("rounding_large", Hyprlang::INT{10});
+    m_config->addConfigValue("rounding_small", Hyprlang::INT{5});
 
     m_config->addConfigValue("h1_size", Hyprlang::INT{19});
     m_config->addConfigValue("h2_size", Hyprlang::INT{15});
@@ -102,6 +104,8 @@
     auto LINK            = 
Hyprlang::CSimpleConfigValue<Hyprlang::INT>(m_config.get(), "link_text");
     auto ACCENT          = 
Hyprlang::CSimpleConfigValue<Hyprlang::INT>(m_config.get(), "accent");
     auto ACCENTSECONDARY = 
Hyprlang::CSimpleConfigValue<Hyprlang::INT>(m_config.get(), "accent_secondary");
+    auto ROUNDINGLARGE   = 
Hyprlang::CSimpleConfigValue<Hyprlang::INT>(m_config.get(), "rounding_large");
+    auto ROUNDINGSMALL   = 
Hyprlang::CSimpleConfigValue<Hyprlang::INT>(m_config.get(), "rounding_small");
 
     auto H1SIZE         = 
Hyprlang::CSimpleConfigValue<Hyprlang::INT>(m_config.get(), "h1_size");
     auto H2SIZE         = 
Hyprlang::CSimpleConfigValue<Hyprlang::INT>(m_config.get(), "h2_size");
@@ -121,6 +125,9 @@
     p->m_colors.accent          = *ACCENT;
     p->m_colors.accentSecondary = *ACCENTSECONDARY;
 
+    p->m_vars.bigRounding   = *ROUNDINGLARGE;
+    p->m_vars.smallRounding = *ROUNDINGSMALL;
+
     p->m_vars.h1Size              = *H1SIZE;
     p->m_vars.h2Size              = *H2SIZE;
     p->m_vars.h3Size              = *H3SIZE;

Reply via email to