Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot change to second tab in Tabbed view #91

Closed
entodoays opened this issue Jan 25, 2017 · 5 comments
Closed

Cannot change to second tab in Tabbed view #91

entodoays opened this issue Jan 25, 2017 · 5 comments

Comments

@entodoays
Copy link

@entodoays entodoays commented Jan 25, 2017

In Bibletime 2.11, when using tabbed view, it is not possible to switch tabs. The first tab always remains selected. Clicking on the second tab has no effect.
I'm using 1 tab with the TSK module and 1 tab with 2 bible texts side by side. In the 1st tab, I've selected the synchronize to selected window option.
I'm testing on Archlinux 64 bit.

@gholmlund gholmlund self-assigned this Jan 25, 2017
@gholmlund
Copy link
Contributor

@gholmlund gholmlund commented Jan 25, 2017

Confirmed on ubuntu 16.10 and arch. Seems to be triggered by any usage of "synchronize to active Bible window".

@jaakristioja jaakristioja added this to the 2.11.1 milestone Jan 25, 2017
@jaakristioja
Copy link
Member

@jaakristioja jaakristioja commented Jan 25, 2017

I can also confirm this on Gentoo Linux with master branch. Note that in non-tabbed mode, when another verse is selected or opened in the window with the Bibles, the synchronized commentary window gets focus, which it should not.

@gholmlund
Copy link
Contributor

@gholmlund gholmlund commented Jan 26, 2017

I captured the call stack that causes the synchronized commentary window to be focused. In QWebEngineView the call to update the page (setHtml) causes the window to be focused. This is for the non-tabbed case, but I think the tabbed case would be almost the same.

24 content::WebContentsImpl::Focus
25 QtWebEngineCore::WebContentsAdapter::setContent
26 QWebEnginePage::setContent
27 QWebEnginePage::setHtml
28 QWebEngineView::setHtml
29 BtHtmlReadDisplay::setText
30 CReadWindow::lookupSwordKey
31 CReadWindow::qt_static_metacall
32 QMetaObject::activate
33 QMetaObject::activate
34 CKeyChooser::keyChanged
35 CBibleKeyChooser::setKey
36 CDisplayWindow::lookupModKey
37 CDisplayWindow::lookupKey
38 CBibleReadWindow::syncWindows
39 CBibleReadWindow::lookupSwordKey

The complete call stack is available here:
bibletime_bug2.txt

The problem is all in Qt. I have not figured out what to do about this.

@gholmlund
Copy link
Contributor

@gholmlund gholmlund commented Jan 27, 2017

In CBibleReadWindow::syncWindows we know the active window. If it is changed during syncing it is changed back to the original active window. Closing.

@gholmlund gholmlund closed this Jan 27, 2017
@jaakristioja
Copy link
Member

@jaakristioja jaakristioja commented May 25, 2017

Fixed in 34c0fbb.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants