This repository was archived by the owner on May 7, 2025. It is now read-only.
In CfiNavigationLogic.getVisibleElements, ignore empty <a> tags.#289
Open
tddpirate wants to merge 1 commit intoreadium:developfrom
tddpirate:develop
Open
In CfiNavigationLogic.getVisibleElements, ignore empty <a> tags.#289tddpirate wants to merge 1 commit intoreadium:developfrom tddpirate:develop
tddpirate wants to merge 1 commit intoreadium:developfrom
tddpirate:develop
Conversation
| percentVisible: visibilityPercentage | ||
| }); | ||
| } | ||
| if (($element[0].tagName !== "A") || $node[0].nodeValue) { |
Member
There was a problem hiding this comment.
Wouldn't that be true for any element whose content model model is non-empty, but whose actual content is? (e.g. h1)
Author
There was a problem hiding this comment.
Probably yes.
- My patch is conservative in that it ignores empty text nodes only when they are in tags.
It may be that we can safely treat all empty text nodes and their enclosing elements as invisible regardless of what checkVisibilityByRectangles() tells us. - If we should not ignore all elements enclosing empty text nodes:
Is there a function (either a DOM element function or a Readium-specific) for identifying elements with non-empty content model?
If yes, its inverse should replace the ($element[0].tagName !== "A") test. - It is possible that checkVisibilityByRectangles() has a bug (a corner case) in handling empty text nodes. At the moment I do not have time to look into this.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See E-mail to Daniel Weck from 25 Apr 2016
A bugfix in the code which manages bookmarks in Readium.
What happened was that after a bookmark was created in page N in a
chapter, when we tried to jump to the bookmark, the reader jumped to
page M such that 0 <= M < N.
The bug was traced to getVisibleElements, which is a function declared in
CfiNavigationLogic. Turns out that empty tags were considered to be visible in pages following the page in whose markup they appear.
It may be a good idea investigate if and which other empty tags should be
considered to be invisible as well.