mirror of
https://github.com/NixOS/mobile-nixos.git
synced 2024-12-18 05:21:47 +03:00
45 lines
1.5 KiB
Ruby
45 lines
1.5 KiB
Ruby
module GUI
|
|
class DisplayValidationWindow < LVGUI::BaseWindow
|
|
include LVGUI::ButtonPalette
|
|
def initialize()
|
|
super()
|
|
LVGUI::BackButton.new(@toolbar, MainWindow.instance)
|
|
@container.refresh
|
|
|
|
LVGL::LVLabel.new(@container).tap do |label|
|
|
text = <<EOF
|
|
Defaults drivers on some devices, mainly Qualcomm devices, may have an unexpected ordering for pixels in-driver.
|
|
|
|
Those drivers will implement the basic minimum and RGB order support is not implemented.
|
|
|
|
A patch may be necessary if the following words are in the wrong colour.
|
|
|
|
The most common case is "Red" being blue, "Green" being green, and "Blue" being red. If it is the case, the keyword to search for patches is "BGR" or "BGRA".
|
|
|
|
EOF
|
|
label.set_long_mode(LVGL::LABEL_LONG::BREAK)
|
|
label.set_text(text)
|
|
label.set_align(LVGL::LABEL_ALIGN::CENTER)
|
|
label.set_width(@container.get_width_fit)
|
|
end
|
|
|
|
word("Red", 0xFF0000)
|
|
word("Green", 0x00FF00)
|
|
word("Blue", 0x0000FF)
|
|
end
|
|
|
|
def word(text, color)
|
|
color = color % 0xFFFFFF
|
|
LVGL::LVLabel.new(@container).tap do |label|
|
|
label.set_long_mode(LVGL::LABEL_LONG::BREAK)
|
|
label.set_text(text)
|
|
style = label.get_style(LVGL::CONT_STYLE::MAIN).dup
|
|
label.set_style(LVGL::CONT_STYLE::MAIN, style)
|
|
style.text_color = 0xFF000000 + color
|
|
label.set_align(LVGL::LABEL_ALIGN::CENTER)
|
|
label.set_width(@container.get_width_fit)
|
|
end
|
|
end
|
|
end
|
|
end
|