iced-rs / iced

A cross-platform GUI library for Rust, inspired by Elm
https://iced.rs
MIT License
24.07k stars 1.12k forks source link

RTL text requiring latin to be displayed in inputs #2102

Open ElhamAryanpur opened 11 months ago

ElhamAryanpur commented 11 months ago

Is there an existing issue for this?

Is this issue related to iced?

What happened?

So I was checking around and saw that Cosmic-text have been added to iced, and because of that I thought RTL languages are supported now. So I started checking some demos if that's true and...

When writing in RTL language, they are not displayed: image

HOWEVER! When you add a latin letter or text in addition, it starts displaying correctly and the language using correct glyphs too: image

From my tests, only latin letters works, so special characters and such does not make it display.

What is the expected behavior?

It should correctly display without need for latin letters.

Version

master

Operating System

Linux

Do you have any log output?

2023-09-27T12:16:07.697761Z  INFO winit::platform_impl::platform::x11::window: Guessed window scale factor: 1.5    
2023-09-27T12:16:07.888346Z  INFO wgpu_hal::vulkan::instance: Instance version: 0x403108    
2023-09-27T12:16:07.888428Z  INFO wgpu_hal::vulkan::instance: Enabling debug utils    
2023-09-27T12:16:07.889117Z  INFO wgpu_hal::vulkan::instance: Enabling device properties2    
2023-09-27T12:16:07.900702Z  INFO wgpu_hal::gles::egl: Loading Wayland library to get the current display    
2023-09-27T12:16:07.901063Z  INFO wgpu_hal::gles::egl: Loading X11 library to get the current display    
2023-09-27T12:16:07.902241Z  INFO wgpu_hal::gles::egl: Using X11 platform    
2023-09-27T12:16:07.902906Z  INFO wgpu_hal::gles::egl: Enabling EGL debug output    
2023-09-27T12:16:07.954970Z  INFO wgpu_hal::gles::egl: Display vendor "Mesa Project", version (1, 5)    
2023-09-27T12:16:07.955797Z  INFO wgpu_hal::gles::egl:  EGL surface: +srgb    
2023-09-27T12:16:07.956421Z  INFO wgpu_hal::gles::egl:  Trying native-render    
2023-09-27T12:16:07.956729Z  INFO wgpu_hal::gles::egl:  EGL context: +debug    
2023-09-27T12:16:07.956777Z  INFO wgpu_hal::gles::egl:  EGL context: +robust access EXT    
2023-09-27T12:16:07.959717Z  INFO wgpu_hal::gles::egl:  EGL context: +surfaceless    
2023-09-27T12:16:07.961823Z  INFO iced_wgpu::window::compositor: Settings {
    present_mode: AutoVsync,
    internal_backend: Backends(
        VULKAN | GL | METAL | DX12 | DX11 | BROWSER_WEBGPU,
    ),
    default_font: Font {
        family: SansSerif,
        weight: Normal,
        stretch: Normal,
        style: Normal,
        monospaced: false,
    },
    default_text_size: Pixels(
        16.0,
    ),
    antialiasing: None,
}    
2023-09-27T12:16:07.966179Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        linux_read_sorted_physical_devices:    
2023-09-27T12:16:07.967717Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.968235Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Original order:    
2023-09-27T12:16:07.968839Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.969316Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] llvmpipe (LLVM 16.0.6, 256 bits)    
2023-09-27T12:16:07.969915Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.970969Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)    
2023-09-27T12:16:07.971493Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.971886Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] NVIDIA GeForce RTX 3080 Laptop GPU    
2023-09-27T12:16:07.974718Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.975602Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Sorted order:    
2023-09-27T12:16:07.976176Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.976575Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] NVIDIA GeForce RTX 3080 Laptop GPU      
2023-09-27T12:16:07.978195Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.978795Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)      
2023-09-27T12:16:07.979179Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.979621Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] llvmpipe (LLVM 16.0.6, 256 bits)      
2023-09-27T12:16:07.980071Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.980505Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        linux_read_sorted_physical_devices:    
2023-09-27T12:16:07.980536Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.980755Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Original order:    
2023-09-27T12:16:07.981225Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.981617Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] llvmpipe (LLVM 16.0.6, 256 bits)    
2023-09-27T12:16:07.983658Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.984128Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)    
2023-09-27T12:16:07.984976Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.985463Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] NVIDIA GeForce RTX 3080 Laptop GPU    
2023-09-27T12:16:07.986041Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.986418Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Sorted order:    
2023-09-27T12:16:07.986924Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.987337Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] NVIDIA GeForce RTX 3080 Laptop GPU      
2023-09-27T12:16:07.990274Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.991406Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)      
2023-09-27T12:16:07.991463Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:07.991483Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] llvmpipe (LLVM 16.0.6, 256 bits)      
2023-09-27T12:16:07.991501Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.007909Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        linux_read_sorted_physical_devices:    
2023-09-27T12:16:08.008103Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.008158Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Original order:    
2023-09-27T12:16:08.008205Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.008277Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] llvmpipe (LLVM 16.0.6, 256 bits)    
2023-09-27T12:16:08.008323Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.008391Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)    
2023-09-27T12:16:08.008438Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.008546Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] NVIDIA GeForce RTX 3080 Laptop GPU    
2023-09-27T12:16:08.008595Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.008637Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Sorted order:    
2023-09-27T12:16:08.010289Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.010403Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] NVIDIA GeForce RTX 3080 Laptop GPU      
2023-09-27T12:16:08.010489Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.010537Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)      
2023-09-27T12:16:08.010589Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.010633Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] llvmpipe (LLVM 16.0.6, 256 bits)      
2023-09-27T12:16:08.010683Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.011759Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        linux_read_sorted_physical_devices:    
2023-09-27T12:16:08.011794Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.011812Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Original order:    
2023-09-27T12:16:08.011831Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.011913Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] llvmpipe (LLVM 16.0.6, 256 bits)    
2023-09-27T12:16:08.011977Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.012051Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)    
2023-09-27T12:16:08.012089Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.014930Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] NVIDIA GeForce RTX 3080 Laptop GPU    
2023-09-27T12:16:08.015176Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.015246Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Sorted order:    
2023-09-27T12:16:08.015300Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.015345Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] NVIDIA GeForce RTX 3080 Laptop GPU      
2023-09-27T12:16:08.015396Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.015440Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)      
2023-09-27T12:16:08.015493Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.015537Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] llvmpipe (LLVM 16.0.6, 256 bits)      
2023-09-27T12:16:08.015587Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.020978Z  INFO wgpu_core::instance: Adapter Vulkan AdapterInfo { name: "AMD Radeon Graphics (RADV RENOIR)", vendor: 4098, device: 5688, device_type: IntegratedGpu, driver: "radv", driver_info: "Mesa 23.1.7-arch1.1", backend: Vulkan }    
2023-09-27T12:16:08.021158Z  INFO wgpu_core::instance: Adapter Vulkan AdapterInfo { name: "NVIDIA GeForce RTX 3080 Laptop GPU", vendor: 4318, device: 9372, device_type: DiscreteGpu, driver: "NVIDIA", driver_info: "535.104.05", backend: Vulkan }    
2023-09-27T12:16:08.021204Z  INFO wgpu_core::instance: Adapter Vulkan AdapterInfo { name: "llvmpipe (LLVM 16.0.6, 256 bits)", vendor: 65541, device: 0, device_type: Cpu, driver: "llvmpipe", driver_info: "Mesa 23.1.7-arch1.1 (LLVM 16.0.6)", backend: Vulkan }    
2023-09-27T12:16:08.025545Z  INFO wgpu_hal::gles::egl: Max label length: 256    
2023-09-27T12:16:08.025666Z  INFO wgpu_hal::gles::egl: Enabling GLES debug output    
2023-09-27T12:16:08.027229Z  INFO wgpu_hal::gles::adapter: Vendor: AMD    
2023-09-27T12:16:08.027289Z  INFO wgpu_hal::gles::adapter: Renderer: AMD Radeon Graphics (renoir, LLVM 16.0.6, DRM 3.54, 6.5.3-zen1-1-zen)    
2023-09-27T12:16:08.027319Z  INFO wgpu_hal::gles::adapter: Version: OpenGL ES 3.2 Mesa 23.1.7-arch1.1    
2023-09-27T12:16:08.027641Z  INFO wgpu_hal::gles::adapter: SL version: OpenGL ES GLSL ES 3.20    
2023-09-27T12:16:08.029681Z  INFO wgpu_core::instance: Adapter Gl AdapterInfo { name: "AMD Radeon Graphics (renoir, LLVM 16.0.6, DRM 3.54, 6.5.3-zen1-1-zen)", vendor: 4098, device: 0, device_type: Other, driver: "", driver_info: "", backend: Gl }    
2023-09-27T12:16:08.030014Z  INFO iced_wgpu::window::compositor: Available adapters: [
    AdapterInfo {
        name: "AMD Radeon Graphics (RADV RENOIR)",
        vendor: 4098,
        device: 5688,
        device_type: IntegratedGpu,
        driver: "radv",
        driver_info: "Mesa 23.1.7-arch1.1",
        backend: Vulkan,
    },
    AdapterInfo {
        name: "NVIDIA GeForce RTX 3080 Laptop GPU",
        vendor: 4318,
        device: 9372,
        device_type: DiscreteGpu,
        driver: "NVIDIA",
        driver_info: "535.104.05",
        backend: Vulkan,
    },
    AdapterInfo {
        name: "llvmpipe (LLVM 16.0.6, 256 bits)",
        vendor: 65541,
        device: 0,
        device_type: Cpu,
        driver: "llvmpipe",
        driver_info: "Mesa 23.1.7-arch1.1 (LLVM 16.0.6)",
        backend: Vulkan,
    },
    AdapterInfo {
        name: "AMD Radeon Graphics (renoir, LLVM 16.0.6, DRM 3.54, 6.5.3-zen1-1-zen)",
        vendor: 4098,
        device: 0,
        device_type: Other,
        driver: "",
        driver_info: "",
        backend: Gl,
    },
]    
2023-09-27T12:16:08.030977Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        linux_read_sorted_physical_devices:    
2023-09-27T12:16:08.031061Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.031104Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Original order:    
2023-09-27T12:16:08.031153Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.031340Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] llvmpipe (LLVM 16.0.6, 256 bits)    
2023-09-27T12:16:08.031398Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.031487Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)    
2023-09-27T12:16:08.031545Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.031631Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] NVIDIA GeForce RTX 3080 Laptop GPU    
2023-09-27T12:16:08.031687Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.031731Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Sorted order:    
2023-09-27T12:16:08.031782Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.031827Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] NVIDIA GeForce RTX 3080 Laptop GPU      
2023-09-27T12:16:08.031876Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.031917Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)      
2023-09-27T12:16:08.031976Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032019Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] llvmpipe (LLVM 16.0.6, 256 bits)      
2023-09-27T12:16:08.032068Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032147Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        linux_read_sorted_physical_devices:    
2023-09-27T12:16:08.032201Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032242Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Original order:    
2023-09-27T12:16:08.032289Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032354Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] llvmpipe (LLVM 16.0.6, 256 bits)    
2023-09-27T12:16:08.032404Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032482Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)    
2023-09-27T12:16:08.032535Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032611Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] NVIDIA GeForce RTX 3080 Laptop GPU    
2023-09-27T12:16:08.032660Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032702Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Sorted order:    
2023-09-27T12:16:08.032749Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032788Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] NVIDIA GeForce RTX 3080 Laptop GPU      
2023-09-27T12:16:08.032835Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032874Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)      
2023-09-27T12:16:08.032924Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.032978Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] llvmpipe (LLVM 16.0.6, 256 bits)      
2023-09-27T12:16:08.033033Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.035458Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        linux_read_sorted_physical_devices:    
2023-09-27T12:16:08.035600Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.035628Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Original order:    
2023-09-27T12:16:08.035649Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.036210Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] llvmpipe (LLVM 16.0.6, 256 bits)    
2023-09-27T12:16:08.036337Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.036451Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)    
2023-09-27T12:16:08.036513Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.036590Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] NVIDIA GeForce RTX 3080 Laptop GPU    
2023-09-27T12:16:08.036638Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.036678Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Sorted order:    
2023-09-27T12:16:08.036721Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.036757Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] NVIDIA GeForce RTX 3080 Laptop GPU      
2023-09-27T12:16:08.037014Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.037071Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)      
2023-09-27T12:16:08.037118Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.037157Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] llvmpipe (LLVM 16.0.6, 256 bits)      
2023-09-27T12:16:08.037201Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.037287Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        linux_read_sorted_physical_devices:    
2023-09-27T12:16:08.037334Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.037371Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Original order:    
2023-09-27T12:16:08.037418Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.037497Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] llvmpipe (LLVM 16.0.6, 256 bits)    
2023-09-27T12:16:08.037551Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.037636Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)    
2023-09-27T12:16:08.037743Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.037818Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] NVIDIA GeForce RTX 3080 Laptop GPU    
2023-09-27T12:16:08.037869Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.037914Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
             Sorted order:    
2023-09-27T12:16:08.037972Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.038016Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [0] NVIDIA GeForce RTX 3080 Laptop GPU      
2023-09-27T12:16:08.038066Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.038107Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [1] AMD Radeon Graphics (RADV RENOIR)      
2023-09-27T12:16:08.038158Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.038202Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
                   [2] llvmpipe (LLVM 16.0.6, 256 bits)      
2023-09-27T12:16:08.038253Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.074973Z  INFO wgpu_hal::gles::egl: Max label length: 256    
2023-09-27T12:16:08.075147Z  INFO wgpu_hal::gles::egl: Enabling GLES debug output    
2023-09-27T12:16:08.075308Z  INFO wgpu_hal::gles::adapter: Vendor: AMD    
2023-09-27T12:16:08.075338Z  INFO wgpu_hal::gles::adapter: Renderer: AMD Radeon Graphics (renoir, LLVM 16.0.6, DRM 3.54, 6.5.3-zen1-1-zen)    
2023-09-27T12:16:08.075360Z  INFO wgpu_hal::gles::adapter: Version: OpenGL ES 3.2 Mesa 23.1.7-arch1.1    
2023-09-27T12:16:08.075411Z  INFO wgpu_hal::gles::adapter: SL version: OpenGL ES GLSL ES 3.20    
2023-09-27T12:16:08.075587Z  INFO wgpu_core::instance: Adapter Vulkan AdapterInfo { name: "AMD Radeon Graphics (RADV RENOIR)", vendor: 4098, device: 5688, device_type: IntegratedGpu, driver: "radv", driver_info: "Mesa 23.1.7-arch1.1", backend: Vulkan }    
2023-09-27T12:16:08.075766Z  INFO iced_wgpu::window::compositor: Selected: AdapterInfo {
    name: "AMD Radeon Graphics (RADV RENOIR)",
    vendor: 4098,
    device: 5688,
    device_type: IntegratedGpu,
    driver: "radv",
    driver_info: "Mesa 23.1.7-arch1.1",
    backend: Vulkan,
}    
2023-09-27T12:16:08.077126Z  INFO iced_wgpu::window::compositor: Selected format: Bgra8UnormSrgb    
2023-09-27T12:16:08.079350Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        Inserted device layer "VK_LAYER_KHRONOS_validation" (libVkLayer_khronos_validation.so)    
2023-09-27T12:16:08.079539Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.079609Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
        Failed to find vkGetDeviceProcAddr in layer "libVkLayer_MESA_device_select.so"    
2023-09-27T12:16:08.079655Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.080077Z  INFO wgpu_hal::vulkan::instance: GENERAL [Loader Message (0x0)]
               Using "AMD Radeon Graphics (RADV RENOIR)" with driver: "/usr/lib/libvulkan_radeon.so"    
2023-09-27T12:16:08.080164Z  INFO wgpu_hal::vulkan::instance:   objects: (type: INSTANCE, hndl: 0x55f07ecde2a0, name: ?)    
2023-09-27T12:16:08.422943Z  INFO cosmic_text::font::system::std: Parsed 1041 font faces in 143ms.    
2023-09-27T12:16:08.426581Z  INFO wgpu_core::device::global: Created buffer Valid((0, 1, Vulkan)) with BufferDescriptor { label: Some("glyphon params"), size: 16, usage: BufferUsages(COPY_DST | UNIFORM), mapped_at_creation: false }    
2023-09-27T12:16:08.426834Z  INFO wgpu_core::device::global: Created texture Valid((0, 1, Vulkan)) with TextureDescriptor { label: Some("glyphon atlas"), size: Extent3d { width: 256, height: 256, depth_or_array_layers: 1 }, mip_level_count: 1, sample_count: 1, dimension: D2, format: Rgba8UnormSrgb, usage: TextureUsages(COPY_DST | TEXTURE_BINDING), view_formats: [] }    
2023-09-27T12:16:08.427067Z  INFO wgpu_core::device::global: Created texture Valid((1, 1, Vulkan)) with TextureDescriptor { label: Some("glyphon atlas"), size: Extent3d { width: 256, height: 256, depth_or_array_layers: 1 }, mip_level_count: 1, sample_count: 1, dimension: D2, format: R8Unorm, usage: TextureUsages(COPY_DST | TEXTURE_BINDING), view_formats: [] }    
2023-09-27T12:16:08.427804Z  INFO wgpu_core::device::global: Created buffer Valid((1, 1, Vulkan)) with BufferDescriptor { label: Some("iced_wgpu::quad vertex buffer"), size: 32, usage: BufferUsages(VERTEX), mapped_at_creation: true }    
2023-09-27T12:16:08.427990Z  INFO wgpu_core::device::global: Created buffer Valid((2, 1, Vulkan)) with BufferDescriptor { label: Some("iced_wgpu::quad index buffer"), size: 12, usage: BufferUsages(INDEX), mapped_at_creation: true }    
2023-09-27T12:16:08.436009Z  INFO wgpu_core::device::global: Created render pipeline Valid((0, 1, Vulkan)) with RenderPipelineDescriptor { label: Some("iced_wgpu.quad.solid.pipeline"), layout: Some((1, 1, Vulkan)), vertex: VertexState { stage: ProgrammableStageDescriptor { module: (1, 1, Vulkan), entry_point: "solid_vs_main" }, buffers: [VertexBufferLayout { array_stride: 8, step_mode: Vertex, attributes: [VertexAttribute { format: Float32x2, offset: 0, shader_location: 0 }] }, VertexBufferLayout { array_stride: 68, step_mode: Instance, attributes: [VertexAttribute { format: Float32x4, offset: 0, shader_location: 1 }, VertexAttribute { format: Float32x2, offset: 16, shader_location: 2 }, VertexAttribute { format: Float32x2, offset: 24, shader_location: 3 }, VertexAttribute { format: Float32x4, offset: 32, shader_location: 4 }, VertexAttribute { format: Float32x4, offset: 48, shader_location: 5 }, VertexAttribute { format: Float32, offset: 64, shader_location: 6 }] }] }, primitive: PrimitiveState { topology: TriangleList, strip_index_format: None, front_face: Cw, cull_mode: None, unclipped_depth: false, polygon_mode: Fill, conservative: false }, depth_stencil: None, multisample: MultisampleState { count: 1, mask: 18446744073709551615, alpha_to_coverage_enabled: false }, fragment: Some(FragmentState { stage: ProgrammableStageDescriptor { module: (1, 1, Vulkan), entry_point: "solid_fs_main" }, targets: [Some(ColorTargetState { format: Bgra8UnormSrgb, blend: Some(BlendState { color: BlendComponent { src_factor: SrcAlpha, dst_factor: OneMinusSrcAlpha, operation: Add }, alpha: BlendComponent { src_factor: One, dst_factor: OneMinusSrcAlpha, operation: Add } }), write_mask: ColorWrites(RED | GREEN | BLUE | ALPHA) })] }), multiview: None }    
2023-09-27T12:16:08.451318Z  INFO wgpu_core::device::global: Created render pipeline Valid((1, 1, Vulkan)) with RenderPipelineDescriptor { label: Some("iced_wgpu.quad.gradient.pipeline"), layout: Some((2, 1, Vulkan)), vertex: VertexState { stage: ProgrammableStageDescriptor { module: (1, 2, Vulkan), entry_point: "gradient_vs_main" }, buffers: [VertexBufferLayout { array_stride: 8, step_mode: Vertex, attributes: [VertexAttribute { format: Float32x2, offset: 0, shader_location: 0 }] }, VertexBufferLayout { array_stride: 148, step_mode: Instance, attributes: [VertexAttribute { format: Uint32x4, offset: 0, shader_location: 1 }, VertexAttribute { format: Uint32x4, offset: 16, shader_location: 2 }, VertexAttribute { format: Uint32x4, offset: 32, shader_location: 3 }, VertexAttribute { format: Uint32x4, offset: 48, shader_location: 4 }, VertexAttribute { format: Uint32x4, offset: 64, shader_location: 5 }, VertexAttribute { format: Float32x4, offset: 80, shader_location: 6 }, VertexAttribute { format: Float32x4, offset: 96, shader_location: 7 }, VertexAttribute { format: Float32x4, offset: 112, shader_location: 8 }, VertexAttribute { format: Float32x4, offset: 128, shader_location: 9 }, VertexAttribute { format: Float32, offset: 144, shader_location: 10 }] }] }, primitive: PrimitiveState { topology: TriangleList, strip_index_format: None, front_face: Cw, cull_mode: None, unclipped_depth: false, polygon_mode: Fill, conservative: false }, depth_stencil: None, multisample: MultisampleState { count: 1, mask: 18446744073709551615, alpha_to_coverage_enabled: false }, fragment: Some(FragmentState { stage: ProgrammableStageDescriptor { module: (1, 2, Vulkan), entry_point: "gradient_fs_main" }, targets: [Some(ColorTargetState { format: Bgra8UnormSrgb, blend: Some(BlendState { color: BlendComponent { src_factor: SrcAlpha, dst_factor: OneMinusSrcAlpha, operation: Add }, alpha: BlendComponent { src_factor: One, dst_factor: OneMinusSrcAlpha, operation: Add } }), write_mask: ColorWrites(RED | GREEN | BLUE | ALPHA) })] }), multiview: None }    
2023-09-27T12:16:08.453925Z  INFO wgpu_core::device::global: Created render pipeline Valid((2, 1, Vulkan)) with RenderPipelineDescriptor { label: Some("iced_wgpu::triangle::solid pipeline"), layout: Some((3, 1, Vulkan)), vertex: VertexState { stage: ProgrammableStageDescriptor { module: (1, 3, Vulkan), entry_point: "solid_vs_main" }, buffers: [VertexBufferLayout { array_stride: 24, step_mode: Vertex, attributes: [VertexAttribute { format: Float32x2, offset: 0, shader_location: 0 }, VertexAttribute { format: Float32x4, offset: 8, shader_location: 1 }] }] }, primitive: PrimitiveState { topology: TriangleList, strip_index_format: None, front_face: Cw, cull_mode: None, unclipped_depth: false, polygon_mode: Fill, conservative: false }, depth_stencil: None, multisample: MultisampleState { count: 1, mask: 18446744073709551615, alpha_to_coverage_enabled: false }, fragment: Some(FragmentState { stage: ProgrammableStageDescriptor { module: (1, 3, Vulkan), entry_point: "solid_fs_main" }, targets: [Some(ColorTargetState { format: Bgra8UnormSrgb, blend: Some(BlendState { color: BlendComponent { src_factor: SrcAlpha, dst_factor: OneMinusSrcAlpha, operation: Add }, alpha: BlendComponent { src_factor: One, dst_factor: OneMinusSrcAlpha, operation: Add } }), write_mask: ColorWrites(RED | GREEN | BLUE | ALPHA) })] }), multiview: None }    
2023-09-27T12:16:08.463103Z  INFO wgpu_core::device::global: Created render pipeline Valid((3, 1, Vulkan)) with RenderPipelineDescriptor { label: Some("iced_wgpu.triangle.gradient.pipeline"), layout: Some((4, 1, Vulkan)), vertex: VertexState { stage: ProgrammableStageDescriptor { module: (1, 4, Vulkan), entry_point: "gradient_vs_main" }, buffers: [VertexBufferLayout { array_stride: 104, step_mode: Vertex, attributes: [VertexAttribute { format: Float32x2, offset: 0, shader_location: 0 }, VertexAttribute { format: Uint32x4, offset: 8, shader_location: 1 }, VertexAttribute { format: Uint32x4, offset: 24, shader_location: 2 }, VertexAttribute { format: Uint32x4, offset: 40, shader_location: 3 }, VertexAttribute { format: Uint32x4, offset: 56, shader_location: 4 }, VertexAttribute { format: Uint32x4, offset: 72, shader_location: 5 }, VertexAttribute { format: Float32x4, offset: 88, shader_location: 6 }] }] }, primitive: PrimitiveState { topology: TriangleList, strip_index_format: None, front_face: Cw, cull_mode: None, unclipped_depth: false, polygon_mode: Fill, conservative: false }, depth_stencil: None, multisample: MultisampleState { count: 1, mask: 18446744073709551615, alpha_to_coverage_enabled: false }, fragment: Some(FragmentState { stage: ProgrammableStageDescriptor { module: (1, 4, Vulkan), entry_point: "gradient_fs_main" }, targets: [Some(ColorTargetState { format: Bgra8UnormSrgb, blend: Some(BlendState { color: BlendComponent { src_factor: SrcAlpha, dst_factor: OneMinusSrcAlpha, operation: Add }, alpha: BlendComponent { src_factor: One, dst_factor: OneMinusSrcAlpha, operation: Add } }), write_mask: ColorWrites(RED | GREEN | BLUE | ALPHA) })] }), multiview: None }    
2023-09-27T12:16:08.467782Z  INFO wgpu_core::device::global: configuring surface with SurfaceConfiguration { usage: TextureUsages(RENDER_ATTACHMENT), format: Bgra8UnormSrgb, width: 750, height: 1200, present_mode: AutoVsync, alpha_mode: Auto, view_formats: [] }    
2023-09-27T12:16:08.468808Z  INFO wgpu_core::device::global: Automatically choosing presentation mode by rule AutoVsync. Chose Fifo    
2023-09-27T12:16:08.468847Z  INFO wgpu_core::device::global: Automatically choosing alpha mode by rule Auto. Chose Opaque    
2023-09-27T12:16:08.490786Z  INFO wgpu_core::device::global: Created buffer Valid((3, 1, Vulkan)) with BufferDescriptor { label: Some("iced_wgpu::quad uniforms buffer"), size: 80, usage: BufferUsages(COPY_DST | UNIFORM), mapped_at_creation: false }    
2023-09-27T12:16:08.491415Z  INFO wgpu_core::device::global: Created buffer Valid((4, 1, Vulkan)) with BufferDescriptor { label: Some("iced_wgpu.quad.solid.buffer"), size: 262144, usage: BufferUsages(COPY_DST | VERTEX), mapped_at_creation: false }    
2023-09-27T12:16:08.491501Z  INFO wgpu_core::device::global: Created buffer Valid((5, 1, Vulkan)) with BufferDescriptor { label: Some("iced_wgpu.quad.gradient.buffer"), size: 524288, usage: BufferUsages(COPY_DST | VERTEX), mapped_at_creation: false }    
2023-09-27T12:16:08.491778Z  INFO wgpu_core::device::global: Created buffer Valid((6, 1, Vulkan)) with BufferDescriptor { label: Some("glyphon vertices"), size: 4096, usage: BufferUsages(COPY_DST | VERTEX), mapped_at_creation: false }    
2023-09-27T12:16:08.491844Z  INFO wgpu_core::device::global: Created buffer Valid((7, 1, Vulkan)) with BufferDescriptor { label: Some("glyphon indices"), size: 4096, usage: BufferUsages(COPY_DST | INDEX), mapped_at_creation: false }    
2023-09-27T12:16:08.494117Z  INFO wgpu_core::device::global: Created render pipeline Valid((4, 1, Vulkan)) with RenderPipelineDescriptor { label: Some("glyphon pipeline"), layout: Some((0, 1, Vulkan)), vertex: VertexState { stage: ProgrammableStageDescriptor { module: (0, 1, Vulkan), entry_point: "vs_main" }, buffers: [VertexBufferLayout { array_stride: 28, step_mode: Vertex, attributes: [VertexAttribute { format: Sint32x2, offset: 0, shader_location: 0 }, VertexAttribute { format: Uint32, offset: 8, shader_location: 1 }, VertexAttribute { format: Uint32, offset: 12, shader_location: 2 }, VertexAttribute { format: Uint32, offset: 16, shader_location: 3 }, VertexAttribute { format: Uint32, offset: 20, shader_location: 4 }, VertexAttribute { format: Float32, offset: 24, shader_location: 5 }] }] }, primitive: PrimitiveState { topology: TriangleList, strip_index_format: None, front_face: Ccw, cull_mode: None, unclipped_depth: false, polygon_mode: Fill, conservative: false }, depth_stencil: None, multisample: MultisampleState { count: 1, mask: 18446744073709551615, alpha_to_coverage_enabled: false }, fragment: Some(FragmentState { stage: ProgrammableStageDescriptor { module: (0, 1, Vulkan), entry_point: "fs_main" }, targets: [Some(ColorTargetState { format: Bgra8UnormSrgb, blend: Some(BlendState { color: BlendComponent { src_factor: SrcAlpha, dst_factor: OneMinusSrcAlpha, operation: Add }, alpha: BlendComponent { src_factor: One, dst_factor: OneMinusSrcAlpha, operation: Add } }), write_mask: ColorWrites(RED | GREEN | BLUE | ALPHA) })] }), multiview: None }    
2023-09-27T12:16:08.505172Z  INFO wgpu_core::device::global: Created texture Valid((3, 1, Vulkan)) with TextureDescriptor { label: Some("glyphon atlas"), size: Extent3d { width: 512, height: 512, depth_or_array_layers: 1 }, mip_level_count: 1, sample_count: 1, dimension: D2, format: R8Unorm, usage: TextureUsages(COPY_DST | TEXTURE_BINDING), view_formats: [] }    
2023-09-27T12:16:08.535601Z  INFO wgpu_core::device::global: Buffer (6, 1, Vulkan) is destroyed    
2023-09-27T12:16:08.535908Z  INFO wgpu_core::device::global: Created buffer Valid((8, 1, Vulkan)) with BufferDescriptor { label: Some("glyphon vertices"), size: 16384, usage: BufferUsages(COPY_DST | VERTEX), mapped_at_creation: true }    
2023-09-27T12:16:08.542912Z  INFO wgpu_core::device::global: configuring surface with SurfaceConfiguration { usage: TextureUsages(RENDER_ATTACHMENT), format: Bgra8UnormSrgb, width: 750, height: 1200, present_mode: AutoVsync, alpha_mode: Auto, view_formats: [] }    
2023-09-27T12:16:08.543389Z  INFO wgpu_core::device::global: Automatically choosing presentation mode by rule AutoVsync. Chose Fifo    
2023-09-27T12:16:08.543433Z  INFO wgpu_core::device::global: Automatically choosing alpha mode by rule Auto. Chose Opaque    
2023-09-27T12:22:06.112753Z  INFO wgpu_core::global: Dropping Global    
2023-09-27T12:22:06.120428Z  INFO wgpu_core::device: Destroying 4 command encoders
ElhamAryanpur commented 11 months ago

I am actually quite excited for this, because it shows that RTL languages do work. I've been waiting for an RTL support in immediate mode UIs for so long...

ElhamAryanpur commented 11 months ago

it also appears that labels work as well as inputs, so this is even better!

image

ElhamAryanpur commented 11 months ago

hmm appears that it only works on widgets with advanced text shaping

ElhamAryanpur commented 11 months ago

after a bit of more testing, I think the issue for it not displaying is that the RTL text is sent out of bounds: image As seen here, I think the RTL text is sent to RTL, and the bounding stays on LTR.

What I mean is, with latin text, the bounds for displaying the text is set to the left side, so when pure RTL is written, the display stays on left side, but the text moves to the right alignment. That's also why when adding a latin letter, the alignment changes again, letting the text to be displayed...

I do not know the internals of Iced very much, and am a beginner, so if this sounds idiotic or if already is known, apologies beforehand. This is just my assumption from testing

hecrj commented 11 months ago

This is waiting on https://github.com/pop-os/cosmic-text/issues/70.

hecrj commented 11 months ago

Also @nicksenger came up with a workaround for the time being: #2016. But should be unnecessary once cosmic-text can figure out the bounds by itself.

ElhamAryanpur commented 11 months ago

Also @nicksenger came up with a workaround for the time being: #2016. But should be unnecessary once cosmic-text can figure out the bounds by itself.

Oh NEAT! I did see it but will check it out. Thank you! I'm excited for cosmic-text personally too, it's gonna bring a whole suite of improvements in the ecosystem