telegramdesktop / tdesktop

Telegram Desktop messaging app
https://desktop.telegram.org/
Other
26.17k stars 5.19k forks source link

Unable to scroll my message when writing it with touchpad/mouse, Linux Wayland GNOME #28320

Closed Waujito closed 1 month ago

Waujito commented 1 month ago

Steps to reproduce

Type a big enough message and try to scroll over it with mouse/touchpad.

I experience this issue only with message write window, I have no more scroll issues. Screencast with an example: Screencast from 2024-08-26 21-11-15.webm

Expected behaviour

It scrolls

Actual behaviour

It lags

Operating system

Arch Linux, Wayland, GNOME 46

Version of Telegram Desktop

5.4.1

Installation source

Static binary from official website

Crash ID

No response

Logs

[2024.08.26 21:01:19] Launched version: 5004001, install beta: [TRUE], alpha: 0, debug mode: [FALSE]
[2024.08.26 21:01:19] Executable dir: /home/vetrov/Telegram/, name: Telegram
[2024.08.26 21:01:19] Initial working dir: /home/vetrov/
[2024.08.26 21:01:19] Working dir: /home/vetrov/.local/share/TelegramDesktop/
[2024.08.26 21:01:19] Command line: /home/vetrov/Telegram/Telegram -autostart -noupdate -tosettings
[2024.08.26 21:01:19] Executable path before check: /home/vetrov/Telegram/Telegram
[2024.08.26 21:01:19] Logs started
[2024.08.26 21:01:19] App ID: org.telegram.desktop._b256676908e8cf8b42981747f27cc4fa
[2024.08.26 21:01:19] Connecting local socket to 7f3f587c3059cfa3576e1b8cdb487f94-TelegramDesktop...
[2024.08.26 21:01:19] Socket connect error 0, starting server and app...
[2024.08.26 21:01:19] Moved logging from '/home/vetrov/.local/share/TelegramDesktop/log_start0.txt' to '/home/vetrov/.local/share/TelegramDesktop/log.txt'!
[2024.08.26 21:01:19] Global devicePixelRatio: 1
[2024.08.26 21:01:19] Primary screen DPI: 96, Base: 96.
[2024.08.26 21:01:19] Computed screen scale: 100
[2024.08.26 21:01:19] DevicePixelRatio: 1
[2024.08.26 21:01:19] ScreenScale: 100
[2024.08.26 21:01:19] Icon theme: Adwaita
[2024.08.26 21:01:19] Fallback icon theme: 
[2024.08.26 21:01:19] Media Info: Type Playback, default: Tiger Lake-H HD Audio Controller Speaker, list: { "Tiger Lake-H HD Audio Controller Speaker" <Tiger Lake-H HD Audio Controller Speaker>, "Tiger Lake-H HD Audio Controller HDMI / DisplayPort 3 Output" <Tiger Lake-H HD Audio Controller HDMI / DisplayPort 3 Output>, "Tiger Lake-H HD Audio Controller HDMI / DisplayPort 2 Output" <Tiger Lake-H HD Audio Controller HDMI / DisplayPort 2 Output>, "Tiger Lake-H HD Audio Controller HDMI / DisplayPort 1 Output" <Tiger Lake-H HD Audio Controller HDMI / DisplayPort 1 Output> }, full list refresh: true
[2024.08.26 21:01:19] Media Info: Type Capture, default: Tiger Lake-H HD Audio Controller Digital Microphone, list: { "Tiger Lake-H HD Audio Controller Digital Microphone" <Tiger Lake-H HD Audio Controller Digital Microphone>, "Monitor of Tiger Lake-H HD Audio Controller HDMI / DisplayPort 3 Output" <Monitor of Tiger Lake-H HD Audio Controller HDMI / DisplayPort 3 Output>, "Monitor of Tiger Lake-H HD Audio Controller HDMI / DisplayPort 2 Output" <Monitor of Tiger Lake-H HD Audio Controller HDMI / DisplayPort 2 Output>, "Monitor of Tiger Lake-H HD Audio Controller HDMI / DisplayPort 1 Output" <Monitor of Tiger Lake-H HD Audio Controller HDMI / DisplayPort 1 Output>, "Monitor of Tiger Lake-H HD Audio Controller Speaker" <Monitor of Tiger Lake-H HD Audio Controller Speaker>, "Tiger Lake-H HD Audio Controller Headphones Stereo Microphone" <Tiger Lake-H HD Audio Controller Headphones Stereo Microphone> }, full list refresh: true
[2024.08.26 21:01:19] Media Info: Type Camera, default: usb-0000:00:14.0-10, list: { "HD Webcam: HD Webcam" <usb-0000:00:14.0-10> }, full list refresh: true
[2024.08.26 21:01:19] App Info: reading settings...
[2024.08.26 21:01:19] App Info: reading encrypted settings...
[2024.08.26 21:01:19] Lang Info: Loaded cached, keys: 7279
[2024.08.26 21:01:19] Font: from ':/gui/fonts/OpenSans-Regular.ttf' loaded 'Open Sans'
[2024.08.26 21:01:19] Font: from ':/gui/fonts/OpenSans-Italic.ttf' loaded 'Open Sans'
[2024.08.26 21:01:19] Font: from ':/gui/fonts/OpenSans-SemiBold.ttf' loaded 'Open Sans'
[2024.08.26 21:01:19] Font: from ':/gui/fonts/OpenSans-SemiBold.ttf' loaded 'Open Sans Semibold'
[2024.08.26 21:01:19] Font: from ':/gui/fonts/OpenSans-SemiBoldItalic.ttf' loaded 'Open Sans'
[2024.08.26 21:01:19] Font: from ':/gui/fonts/OpenSans-SemiBoldItalic.ttf' loaded 'Open Sans Semibold'
[2024.08.26 21:01:19] Font: from ':/gui/fonts/Vazirmatn-UI-NL-Regular.ttf' loaded 'Vazirmatn UI NL'
[2024.08.26 21:01:19] Font: from ':/gui/fonts/Vazirmatn-UI-NL-SemiBold.ttf' loaded 'Vazirmatn UI NL'
[2024.08.26 21:01:19] Font: from ':/gui/fonts/Vazirmatn-UI-NL-SemiBold.ttf' loaded 'Vazirmatn UI NL SemiBold'
[2024.08.26 21:01:19] OpenAL Logging Level: (not set)
[2024.08.26 21:01:19] App Info: reading accounts info...
[2024.08.26 21:01:19] App Info: reading encrypted info...
[2024.08.26 21:01:19] App Info: reading map...
[2024.08.26 21:01:19] App Info: reading encrypted map...
[2024.08.26 21:01:19] App Info: reading encrypted user settings...
[2024.08.26 21:01:19] App Info: encrypted user settings read.
[2024.08.26 21:01:19] App Info: reading encrypted mtp data...
[2024.08.26 21:01:19] MTP Info: read keys, current: 5, to destroy: 0
[2024.08.26 21:01:19] Map read time: 17
[2024.08.26 21:01:19] App Info: reading encrypted mtp config...
[2024.08.26 21:01:19] App Info: reading map...
[2024.08.26 21:01:19] App Info: reading encrypted map...
[2024.08.26 21:01:19] App Info: reading encrypted user settings...
[2024.08.26 21:01:19] App Info: encrypted user settings read.
[2024.08.26 21:01:19] App Info: reading encrypted mtp data...
[2024.08.26 21:01:19] MTP Info: read keys, current: 5, to destroy: 0
[2024.08.26 21:01:19] Map read time: 0
[2024.08.26 21:01:19] App Info: reading encrypted mtp config...
[2024.08.26 21:01:19] App Info: reading map...
[2024.08.26 21:01:19] App Info: reading encrypted map...
[2024.08.26 21:01:19] App Info: reading encrypted user settings...
[2024.08.26 21:01:19] App Info: encrypted user settings read.
[2024.08.26 21:01:19] App Info: reading encrypted mtp data...
[2024.08.26 21:01:19] MTP Info: read keys, current: 4, to destroy: 0
[2024.08.26 21:01:19] Map read time: 1
[2024.08.26 21:01:19] App Info: reading encrypted mtp config...
[2024.08.26 21:01:20] Export Info: Destroy top bar by controller removal.
[2024.08.26 21:01:20] System tray available: [TRUE]
[2024.08.26 21:01:20] OpenGL Profile: Compatibility.
[2024.08.26 21:01:20] OpenGL Renderer: Mesa Intel(R) UHD Graphics (TGL GT1)
[2024.08.26 21:01:20] OpenGL Vendor: Intel
[2024.08.26 21:01:20] OpenGL Version: 4.6 (Compatibility Profile) Mesa 24.1.6-arch1.1
[2024.08.26 21:01:20] OpenGL Extensions: GL_SGIS_generate_mipmap, GL_EXT_framebuffer_sRGB, GL_EXT_transform_feedback, GL_NV_fragment_shader_interlock, GL_ARB_clip_control, GL_ARB_compute_shader, GL_ARB_compute_variable_group_size, GL_APPLE_packed_pixels, GL_EXT_gpu_shader4, GL_ARB_seamless_cube_map, GL_ARB_texture_view, GL_EXT_polygon_offset_clamp, GL_ARB_texture_env_add, GL_ARB_texture_float, GL_ARB_texture_filter_anisotropic, GL_ARB_framebuffer_sRGB, GL_ARB_indirect_parameters, GL_ARB_seamless_cubemap_per_texture, GL_EXT_multi_draw_arrays, GL_EXT_rescale_normal, GL_EXT_semaphore, GL_INGR_blend_func_separate, GL_ATI_texture_env_combine3, GL_EXT_memory_object_fd, GL_EXT_texture_buffer_object, GL_ARB_ES3_compatibility, GL_ARB_clear_texture, GL_ARB_compatibility, GL_SUN_multi_draw_arrays, GL_ARB_shader_storage_buffer_object, GL_ARB_texture_rgb10_a2ui, GL_AMD_texture_texture4, GL_EXT_texture_env_combine, GL_EXT_texture_sRGB_R8, GL_AMD_draw_buffers_blend, GL_ARB_shader_image_size, GL_ARB_shader_texture_lod, GL_ARB_cull_distance, GL_EXT_blend_subtract, GL_EXT_gpu_program_parameters, GL_ARB_map_buffer_alignment, GL_ARB_uniform_buffer_object, GL_NV_depth_clamp, GL_ARB_shadow, GL_EXT_texture_object, GL_ARB_draw_elements_base_vertex, GL_ARB_vertex_buffer_object, GL_AMD_seamless_cubemap_per_texture, GL_NV_light_max_exponent, GL_ARB_explicit_uniform_location, GL_EXT_point_parameters, GL_ARB_texture_mirrored_repeat, GL_EXT_fog_coord, GL_EXT_texture, GL_ARB_shader_image_load_store, GL_ARB_draw_buffers_blend, GL_ARB_texture_env_dot3, GL_AMD_vertex_shader_layer, GL_AMD_query_buffer_object, GL_ARB_parallel_shader_compile, GL_MESA_texture_const_bandwidth, GL_MESA_texture_signed_rgba, GL_ARB_point_parameters, GL_EXT_copy_texture, GL_ARB_sync, GL_ARB_transform_feedback3, GL_ARB_draw_instanced, GL_EXT_direct_state_access, GL_SGIS_texture_lod, GL_ARB_shading_language_packing, GL_ARB_gpu_shader5, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_rectangle, GL_ARB_ES2_compatibility, GL_ARB_shader_group_vote, GL_ARB_internalformat_query2, GL_KHR_context_flush_control, GL_ARB_enhanced_layouts, GL_EXT_stencil_wrap, GL_ATI_texture_float, GL_IBM_rasterpos_clip, GL_EXT_texture_compression_dxt1, GL_ARB_texture_swizzle, GL_ATI_separate_stencil, GL_AMD_depth_clamp_separate, GL_NV_texture_env_combine4, GL_ARB_framebuffer_no_attachments, GL_ARB_shader_precision, GL_EXT_texture_array, GL_EXT_framebuffer_multisample, GL_ANGLE_texture_compression_dxt3, GL_EXT_secondary_color, GL_ARB_base_instance, GL_ARB_polygon_offset_clamp, GL_ARB_texture_cube_map_array, GL_KHR_blend_equation_advanced, GL_ARB_transform_feedback_overflow_query, GL_ARB_shading_language_include, GL_AMD_conservative_depth, GL_AMD_vertex_shader_viewport_index, GL_ARB_get_texture_sub_image, GL_ARB_shading_language_100, GL_ARB_texture_cube_map, GL_ARB_vertex_type_10f_11f_11f_rev, GL_ATI_fragment_shader, GL_ATI_texture_compression_3dc, GL_ARB_derivative_control, GL_KHR_parallel_shader_compile, GL_ARB_conservative_depth, GL_ARB_post_depth_coverage, GL_ARB_texture_storage_multisample, GL_ARB_texture_compression_rgtc, GL_EXT_blend_minmax, GL_NV_blend_square, GL_ARB_depth_clamp, GL_ARB_occlusion_query2, GL_EXT_depth_bounds_test, GL_EXT_draw_range_elements, GL_EXT_texture_swizzle, GL_AMD_performance_monitor, GL_ARB_program_interface_query, GL_ARB_shader_atomic_counter_ops, GL_NV_conditional_render, GL_ARB_fragment_coord_conventions, GL_ARB_get_program_binary, GL_IBM_texture_mirrored_repeat, GL_EXT_vertex_array_bgra, GL_3DFX_texture_compression_FXT1, GL_ARB_explicit_attrib_location, GL_ARB_texture_rg, GL_EXT_semaphore_fd, GL_EXT_texture_lod_bias, GL_ARB_pixel_buffer_object, GL_ARB_draw_indirect, GL_ARB_texture_buffer_range, GL_ARB_gpu_shader_int64, GL_ARB_texture_barrier, GL_ARB_arrays_of_arrays, GL_ARB_tessellation_shader, GL_ARB_shading_language_420pack, GL_KHR_texture_compression_astc_ldr, GL_EXT_texture_cube_map, GL_ARB_robustness, GL_KHR_debug, GL_EXT_abgr, GL_EXT_demote_to_helper_invocation, GL_EXT_texture_snorm, GL_ARB_texture_buffer_object_rgb32, GL_MESA_framebuffer_flip_y, GL_NV_primitive_restart, GL_EXT_packed_float, GL_EXT_framebuffer_multisample_blit_scaled, GL_ARB_multisample, GL_EXT_texture_compression_rgtc, GL_ARB_transform_feedback_instanced, GL_ARB_texture_non_power_of_two, GL_EXT_texture_shadow_lod, GL_ARB_map_buffer_range, GL_INTEL_shader_atomic_float_minmax, GL_ARB_vertex_array_bgra, GL_ARB_invalidate_subdata, GL_ARB_texture_env_crossbar, GL_AMD_multi_draw_indirect, GL_EXT_EGL_image_storage, GL_NV_fog_distance, GL_EXT_subtexture, GL_MESA_window_pos, GL_EXT_shadow_funcs, GL_ARB_copy_buffer, GL_ARB_debug_output, GL_SGIS_texture_border_clamp, GL_ARB_viewport_array, GL_ARB_spirv_extensions, GL_EXT_vertex_attrib_64bit, GL_KHR_no_error, GL_ARB_robust_buffer_access_behavior, GL_NV_half_float, GL_ARB_vertex_shader, GL_EXT_draw_instanced, GL_ARB_ES3_1_compatibility, GL_ARB_multi_draw_indirect, GL_ARB_ES3_2_compatibility, GL_NV_packed_depth_stencil, GL_EXT_bgra, GL_ARB_shader_draw_parameters, GL_KHR_blend_equation_advanced_coherent, GL_ARB_provoking_vertex, GL_ARB_vertex_attrib_binding, GL_ARB_depth_texture, GL_INTEL_shader_integer_functions2, GL_ARB_fragment_program, GL_ARB_stencil_texturing, GL_ARB_direct_state_access, GL_EXT_texture_env_dot3, GL_ARB_shader_viewport_layer_array, GL_EXT_texture_compression_s3tc, GL_EXT_stencil_two_side, GL_ARB_vertex_program, GL_ARB_sampler_objects, GL_EXT_texture_compression_latc, GL_EXT_texture_filter_anisotropic, GL_ARB_shader_atomic_counters, GL_KHR_robustness, GL_ARB_fragment_program_shadow, GL_ARB_texture_multisample, GL_EXT_texture_sRGB_decode, GL_ARB_compressed_texture_pixel_storage, GL_ARB_shader_bit_encoding, GL_EXT_texture_storage, GL_EXT_pixel_buffer_object, GL_ARB_draw_buffers, GL_EXT_texture_shared_exponent, GL_EXT_separate_specular_color, GL_ATI_draw_buffers, GL_ARB_texture_env_combine, GL_EXT_framebuffer_blit, GL_ARB_texture_stencil8, GL_EXT_vertex_array, GL_EXT_blend_func_separate, GL_ARB_query_buffer_object, GL_ARB_transpose_matrix, GL_SGIS_texture_edge_clamp, GL_S3_s3tc, GL_ARB_sample_shading, GL_ARB_vertex_array_object, GL_ARB_shader_ballot, GL_EXT_texture_env_add, GL_AMD_shader_stencil_export, GL_ARB_color_buffer_float, GL_ARB_texture_compression_bptc, GL_ARB_texture_query_lod, GL_EXT_shader_framebuffer_fetch, GL_ARB_framebuffer_object, GL_KHR_texture_compression_astc_sliced_3d, GL_EXT_memory_object, GL_ARB_internalformat_query, GL_KHR_robust_buffer_access_behavior, GL_ARB_shader_texture_image_samples, GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_point_sprite, GL_ARB_half_float_vertex, GL_EXT_framebuffer_object, GL_OES_EGL_image, GL_ARB_fragment_shader_interlock, GL_INTEL_performance_query, GL_AMD_pinned_memory, GL_ARB_multi_bind, GL_ARB_depth_buffer_float, GL_ARB_texture_gather, GL_ATI_blend_equation_separate, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_pipeline_statistics_query, GL_ARB_blend_func_extended, GL_NV_texture_rectangle, GL_ARB_shader_objects, GL_EXT_packed_pixels, GL_ARB_texture_storage, GL_EXT_provoking_vertex, GL_ARB_shader_subroutine, GL_NV_texture_barrier, GL_ARB_gl_spirv, GL_EXT_texture_edge_clamp, GL_EXT_EGL_sync, GL_EXT_blend_color, GL_MESA_pack_invert, GL_EXT_compiled_vertex_array, GL_ARB_gpu_shader_fp64, GL_ARB_shader_clock, GL_EXT_shader_samples_identical, GL_ARB_clear_buffer_object, GL_ARB_half_float_pixel, GL_ARB_copy_image, GL_ARB_fragment_shader, GL_ARB_separate_shader_objects, GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_debug_label, GL_ARB_instanced_arrays, GL_EXT_texture_rectangle, GL_EXT_packed_depth_stencil, GL_MESA_shader_integer_functions, GL_NV_copy_image, GL_EXT_texture_sRGB, GL_ARB_window_pos, GL_ARB_texture_buffer_object, GL_EXT_texture_integer, GL_IBM_multimode_draw_arrays, GL_OES_read_format, GL_ARB_texture_border_clamp, GL_ANGLE_texture_compression_dxt5, GL_EXT_draw_buffers2, GL_AMD_shader_trinary_minmax, GL_INTEL_blackhole_render, GL_ARB_buffer_storage, GL_EXT_texture3D, GL_ARB_shader_stencil_export, GL_ARB_vertex_attrib_64bit, GL_NV_ES1_1_compatibility, GL_EXT_timer_query, GL_EXT_blend_equation_separate, GL_NV_texgen_reflection, GL_ARB_conditional_render_inverted, GL_EXT_shader_integer_mix, GL_NV_alpha_to_coverage_dither_control, GL_ARB_texture_compression, GL_ARB_timer_query, GL_ARB_transform_feedback2, GL_ARB_texture_query_levels, GL_NV_compute_shader_derivatives, GL_ARB_fragment_layer_viewport
[2024.08.26 21:01:20] OpenGL: QOpenGLContext created, version: 4.4.
[2024.08.26 21:01:20] OpenGL: [TRUE] (Window)
[2024.08.26 21:01:20] Notification daemon product name: gnome-shell
[2024.08.26 21:01:20] Notification daemon vendor name: GNOME
[2024.08.26 21:01:20] Notification daemon version: 46.4
[2024.08.26 21:01:20] Notification daemon specification version: 1.2
[2024.08.26 21:01:20] Notification daemon capabilities: actions, body, body-markup, icon-static, persistence, sound
[2024.08.26 21:01:21] API Warning: not loaded minimal channel applied.
[2024.08.26 21:01:21] API Warning: not loaded minimal channel applied.
[2024.08.26 21:01:21] API Warning: not loaded minimal channel applied.
[2024.08.26 21:01:22] API Warning: not loaded minimal channel applied.
[2024.08.26 21:01:22] API Warning: not loaded minimal channel applied.
[2024.08.26 21:01:22] API Warning: not loaded minimal channel applied.
[2024.08.26 21:01:22] API Warning: not loaded minimal channel applied.
[2024.08.26 21:03:12] API Warning: not loaded minimal channel applied.
ilya-fedin commented 1 month ago

I seem to be unable to reproduce

https://github.com/user-attachments/assets/c499c1d7-5e48-4baa-8648-5f70495c6c46

gonemooncool commented 1 month ago

Same problem, on the same system, 5.4.1. When the cursor in the text becomes invisible due to scrolling, the window immediately returns to the place of the cursor in the text. If the text cursor is visible all the time, scrolling happens without problems.

glitch.webm

Waujito commented 1 month ago

Yes, good notice about the cursor position, it works same for me

ilya-fedin commented 1 month ago

Works for me just fine with cursor invisible

Waujito commented 1 month ago

I have just installed arch on virtual box, installed latest gnome + gdm (gnome is on wayland by default) and catched the issue.

Waujito commented 1 month ago

Just tested on X11 on my machine and the issue is gone. Also on Fedora 40 live media on VM (which uses Wayland) the issue disappeared too.

ilya-fedin commented 1 month ago

So it's a GNOME regression?

Waujito commented 1 month ago

Yes, It is GNOME, Wayland specific.

Tried to run it in sway (the only lightweight thing on wayland I found) and there is no issue. Also about that Fedora image. It uses GNOME 46 with wayland, but there is no issue.

ilya-fedin commented 1 month ago

So perhaps you should report this to GNOME instead

Waujito commented 1 month ago

Why did you close it? It is definetly Telegram's issue. I didn't experience it anywhere else, on other QT applications too... And how do you think I will report it to GNOME? "Hey guys Telegram doesn't work fix plsss"? I think it is a way easier to fix on Telegram side rather than ask GNOME maintainers to read Telegram's sources and find what's going on.

The problem is really annoying and breaks all the user experience.

ilya-fedin commented 1 month ago

I don't see what you want to be fixed on Telegram side. The issue clearly way lower than Telegram code as if it was a Telegram bug, it would happen on all the systems (Windows, macOS, X11, Wayland). What you got is clearly another GNOME's attempt to make Qt applications behave in a buggy way. And it could be fixed only either by GNOME or Qt.

ilya-fedin commented 1 month ago

I see pretty much the same bug report in Qt Creator: https://bugreports.qt.io/browse/QTCREATORBUG-31424

So I don't understand how you concluded that

I didn't experience it anywhere else, on other QT applications too...

Waujito commented 1 month ago

In GNOME 47 the problem was fixed