Hide Forgot
Description of problem: When I switch between tabs several times using ctrl + pgup/dn in rapid succession on gnome-terminal (and the focus is on the terminal itself), gnome-shell freezes for 2-5 seconds. No windows update during that period of time and I am unable to switch windows as well. System monitor shows that all 4 of my CPUs go from idle to 70% usage during that time. I think this is limited to gnome-shell because my music continues playing. Interestingly enough, the freeze does not happen when the focus is on the tabs of gnome-terminal. This can severely affect the productivity of people who use several terminals at once. Version-Release number of selected component (if applicable): N/A How reproducible: Always Steps to Reproduce: 1. Open several tabs in gnome-terminal 2. Make sure focus is on the terminal itself (cursor is blinking) 3. Press ctrl+pgup/dn several times quickly, or hold it down to switch tabs Actual results: gnome-shell freezes for 2-5 seconds Expected results: instantaneous switch Additional info: My CPU is a quad-core Core i5, and the graphics card line of lspci reads: 00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
I have some new info. The slow performance is not present in fallback mode and other terminals I've tested show the same behaviour (terminator and guake), both of which rely on VTE. It also appears that gnome-terminal uses a VTE widget for the terminal window itself. My guess is that gnome-shell switches to a separate VTE widget every time I switch tabs. Could someone with more knowledge on gnome-shell comment on this? I've reassigned the bug to gnome-shell to reflect this. Matt
Solved it, with some help from the GNOME devs. The IBus gnome-shell extension is the cause of the poor performance. According to the package notes, it should be natively integrated into gnome-shell soon. Disabling the extension fixes the problem. I lose the on-screen language display, but the shortcut keys for switching input language still works. Closing the bug for now. Hopefully this helps someone with the same bug in the future. Matt