- Mar 07, 2025
-
-
This was not supposed to be committed (hence the lack of casts to string chars).
-
otherwise you've interface scale show up in UI
-
fixes interface scale change on setting dialog show
-
- Mar 06, 2025
-
-
-
qt: introduce `MatrixChangeObserverNode` and use it to signal `ViewBlockingRectangle::scenePositionHasChanged()`
-
This reverts commit af27693d.
-
Previously the window handle was retrieved through private platform interface. It was recently changed to use `QWindow::winId()` instead, as it is public and more convenient to use. However, `QWindow::winId()` creates the platform window if it does not exist. This is normally not a problem, but since `WinId()` is may be called within the native event handler, it is a problem. I did not realize that `WinId()` was called at inappropriate times (either during destruction of the platform window when the window is destroyed, or after that as we don't want to re-create the platform window when closing the interface), that's why I did not pay attention on having a check here. Now that the problem is obvious, we should fix this mistake made in 7e063c67. This is trivial to fix, we can simply check if the pointer returned by either `QWindow::handle()` or `QSurface::surfaceHandle()` is a null pointer, and return early if it is before calling `QWindow::winId()`. As a side note, I believe that having a const method named as `winId()` which mutates the window by creating platform window if it does not exist is a really bad idea. I really wonder why Qt behaves like that, especially considering there is already `QWindow::create()` that creates the platform window.
-
-
vlc_pw_stream_new() / pw_stream_new() takes ownership of props and calls pw_properties_free() in case of any error.
-
vlc_pw_stream_new() / pw_stream_new() takes ownership of props, but we need to delete the properties ourselves in case of any error before that function is called.
-
-
In the 2024.11.28 release (version 1732752000), live555 introduced `EventLoopWatchVariable` as a typedef for `std::atomic<char>`, replacing direct use of `char` in earlier versions. Add a conditional typedef to define it as `char` for older versions, and update `event_rtsp` and `event_data` to use `EventLoopWatchVariable`.
-
- Mar 04, 2025
-
-
-
-
-
-
-
-
-
-
fixes artist loading with large medialibrary
-
-
macosx: When set as a main menu's instance, update the presented item on stat target change in info window Signed-off-by:
Claudio Cambra <developer@claudiocambra.com>
-
Fixes multiple bugs with view value changes not being reflected as expected Signed-off-by:
Claudio Cambra <developer@claudiocambra.com>
-
Signed-off-by:
Claudio Cambra <developer@claudiocambra.com>
-
Signed-off-by:
Claudio Cambra <developer@claudiocambra.com>
-
-
-
-
- Mar 03, 2025
-
-
- Mar 02, 2025
-
-
`QWindow`'s `wl_surface` gets deleted when `QWindow::hide()` is called. This is an exceptional behavior, and can be considered a bug because destroying the window resources is tied to `QWindow::destroy()`, calling `QWindow::hide()` should not destroy the window's resources.
-
libtool doesn't handle frameworks as dependencies, and only support them as linker argument (ie. -Wl,-framework arguments). Remove them from the link to prevent the linkage failure. This also means that they must be provided manually in the makefile afterwards...
-
- Mar 01, 2025
-
-
Steve Lhomme authored
No need to set it on each iteration.
-
Steve Lhomme authored
realloc works fine on NULL. The pointer is set in p_subtitle->psz_text which is free'd later. It's OK to free a NULL pointer if there wasn't any line to use.
-
Steve Lhomme authored
No need to do a lengthy strlen() call each time the concatenated string grows.
-
Steve Lhomme authored
We're just concatenating the lines in psz_text.
-
Steve Lhomme authored
-
Steve Lhomme authored
We already use flags to fill some arrays like AOUT_MIX_MODE_xxx or VOUT_ALIGN_xxx. The downside is that we cannot change the defines without breaking the libvlc API. But SUBPICTURE_ALIGN_xxx defines are also used by many module as source for parameters, so these would break as well.
-
Steve Lhomme authored
It's clearer when it's not weird.
-
- `GetSystemMetrics()` function already scales most of the metrics for the primary monitor [1], evidently because Qt makes the application DPI aware. - Currently by multiplying the `GetSystemMetrics()` result with `windowDpi / screenDpi`, we apply the window's DPI which is what is wanted here. - If the window is in the primary monitor, there is no problem. If there are multiple monitors but they share the same DPI, there should also be no problem. But if there are multiple monitors that have different DPIs, in that case dragging would be problematic. - The solution that Windows recommends [2] is using `GetSystemMetricsForDpi` and `GetDpiForWindow`. Unfortunately these are only available on Windows 10, so I dynamically load the necessary library and resolve the symbols. - Handling `WM_DPICHANGED` and calling `SetWindowPos()` should not be necessary, because Qt already calls it to resize the window according to the new dpi. [1] https://learn.microsoft.com/en-us/windows/win32/gdi/multiple-monitor-system-metrics [2] https://learn.microsoft.com/en-us/windows/win32/hidpi/high-dpi-desktop-application-development-on-windows#updating-existing-applications
-