This policy is already enabled by default. This may have originally
been a typo since it was added in the same commit where CMP0011 was set
to OLD in the top-level cmake file (b63d1cf9f1).
This policy allowed included files and modules to affect policy in the
parent scope. Besides the top level, 3rdparty/libprojectm is the only
place where old policy is set.
Reference: https://cmake.org/cmake/help/latest/policy/CMP0011.html
Compatibility with versions prior to 2.8.12 is being deprecated,
resulting in build warning messages. The minimum for the official
supported distros is 3.7.2 (Stretch), so the version could be moved
forward when newer features are required.
Reference: https://cmake.org/cmake/help/v3.19/release/3.19.html#deprecated-and-removed-features
QueuedItemDelegate::DrawBox leaves the painter in a state that can cause
artifacts. Specifically, there are cases where the item text is not
visible. To fix this, push the painter state before making changes and
pop it after drawing.
In version 5.6, Qt introduced an automatic scaling feature for high DPI
displays. Since projectM is not part of the Qt framework, it's necessary
to convert coordinates when specifying view size.
Reference: https://doc.qt.io/qt-5/highdpi.html
This consolidates most of the knowledge of internet settings pages in
the internet subdirectory. The exception is the master page enumeration
in the settings dialog.
Add an output format option in playback settings. The options are
Detect, S16LE, and F32LE. Selecting Detect will use the existing
behavior and detect the native format when the pipeline starts. The
other options will set the format when the pipeline is built.
If a root library directory is deleted and recreated, it is not
detected since inotify would need to watch the parent directory. On
rescan, if the subdirectory list for a directory is empty, re-add the
library's root directory.
This is an edge case on Linux systems. The issue may not exist on other
operating systems.
RatingPainter::RatingForPos should return a value in 0-1. But if the
passed position was outside of the widget's draw rectangle, a value
outside of that range could be returned.
Wii and notifications signals are currently connected for every settings
page. Move the signals from the base SettingsPage class into the derived
classes and connect the signals for only those objects.