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

Comments

Projects
None yet
3 participants
@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

This comment has been minimized.

Show comment
Hide comment
@gholmlund

gholmlund Jan 25, 2017

Contributor

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

Contributor

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

This comment has been minimized.

Show comment
Hide comment
@jaakristioja

jaakristioja Jan 25, 2017

Member

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.

Member

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

This comment has been minimized.

Show comment
Hide comment
@gholmlund

gholmlund Jan 26, 2017

Contributor

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.

Contributor

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

This comment has been minimized.

Show comment
Hide comment
@gholmlund

gholmlund Jan 27, 2017

Contributor

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

Contributor

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

This comment has been minimized.

Show comment
Hide comment
@jaakristioja

jaakristioja May 25, 2017

Member

Fixed in 34c0fbb.

Member

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