mirror of
				https://github.com/kovidgoyal/calibre.git
				synced 2025-11-03 19:17:02 -05:00 
			
		
		
		
	Viewer: Fix vertical margin at the top of the first page incorrect in a certain rare circumstance (first child of body being an empty paragraph). Fixes #1082640 (ebook-viewer: top line of the text is cut off when using two-paged mode)
This commit is contained in:
		
							parent
							
								
									6e02f9a4a0
								
							
						
					
					
						commit
						d29b097216
					
				
										
											Binary file not shown.
										
									
								
							@ -116,6 +116,18 @@ class PagedDisplay
 | 
				
			|||||||
        # above the columns, which causes them to effectively be added to the
 | 
					        # above the columns, which causes them to effectively be added to the
 | 
				
			||||||
        # page margins (the margin collapse algorithm)
 | 
					        # page margins (the margin collapse algorithm)
 | 
				
			||||||
        bs.setProperty('-webkit-margin-collapse', 'separate')
 | 
					        bs.setProperty('-webkit-margin-collapse', 'separate')
 | 
				
			||||||
 | 
					        # Remove any webkit specified default margin from the first child of body
 | 
				
			||||||
 | 
					        # Otherwise, you could end up with an effective negative margin, I dont
 | 
				
			||||||
 | 
					        # understand exactly why, but see:
 | 
				
			||||||
 | 
					        # https://bugs.launchpad.net/calibre/+bug/1082640 for an example
 | 
				
			||||||
 | 
					        c = document.body.firstChild
 | 
				
			||||||
 | 
					        count = 0
 | 
				
			||||||
 | 
					        while c?.nodeType != 1 and count < 20
 | 
				
			||||||
 | 
					            c = c?.nextSibling
 | 
				
			||||||
 | 
					            count += 1
 | 
				
			||||||
 | 
					        if c?.nodeType == 1
 | 
				
			||||||
 | 
					            c.style.setProperty('-webkit-margin-before', '0')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        bs.setProperty('overflow', 'visible')
 | 
					        bs.setProperty('overflow', 'visible')
 | 
				
			||||||
        bs.setProperty('height', (window.innerHeight - this.margin_top - this.margin_bottom) + 'px')
 | 
					        bs.setProperty('height', (window.innerHeight - this.margin_top - this.margin_bottom) + 'px')
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user