Есть у меня окно программы, на котором расположено с десяток виджетов. Один из виджетов именуется textArea, он наследуется от QTextEdit.
В виджете textArea сделан следующий функционал: если зажата клавиша Ctrl, то при клике в тексте мышкой на ссылку открывается окно браузера c этой ссылкой. И это работает, если данный виджет активный (в фокусе).
А вот если виджет textArea неактивный, то клик по ссылке с зажатой клавишей Ctrl ни к чему не приводит, потому что переопределенный метод keyPressEvent() для неактивного виджета не вызывается. А именно в нем расположено отслеживание нажатия клавиши Ctrl. А метод mousePressEvent() для неактивного виджета вызывается, но так как виджет не видит что Ctrl зажата, то перехода по ссылке не происходит.
Вопрос. Как научить виджет отслеживать нажатие клавиши Ctrl так, чтобы он знал о нажатии даже если активен другой виджет?