[PATCH 1 of 2 V2] hgweb: make followlines button absolutely positioned

Anton Shestakov av6 at dwimlabs.net
Sun Apr 8 15:14:01 UTC 2018


# HG changeset patch
# User Anton Shestakov <av6 at dwimlabs.net>
# Date 1523191987 -28800
#      Sun Apr 08 20:53:07 2018 +0800
# Node ID 41826e0ae22d24a04cc1f4b911a56b787635fa6e
# Parent  0a1fb171dc1ddd6a1cd1a5666e92299db12e9f5d
hgweb: make followlines button absolutely positioned

It used to have position: absolute only on annotate page, but it makes sense to
have it everywhere, because the button shouldn't affect other elements at all.
Especially since the button has a set height, which meant that for certain
smaller fonts source lines were changing their height on hover.

Note that the button doesn't set any of the usual properties that accompany
absolute position (top, right, bottom or left). These properties would position
the button without any account for source line padding. Instead, margins are
used (the button already has all margins defined, they do the job).

diff --git a/mercurial/templates/static/style-gitweb.css b/mercurial/templates/static/style-gitweb.css
--- a/mercurial/templates/static/style-gitweb.css
+++ b/mercurial/templates/static/style-gitweb.css
@@ -232,6 +232,7 @@ div.followlines-link {
 }
 
 .btn-followlines {
+  position: absolute;
   display: none;
   cursor: pointer;
   box-sizing: content-box;
@@ -249,14 +250,6 @@ div.followlines-link {
   line-height: 5px;
 }
 
-tr .btn-followlines {
-  position: absolute;
-}
-
-span .btn-followlines {
-  float: left;
-}
-
 span.followlines-select .btn-followlines {
   margin-left: -1.6em;
 }
diff --git a/mercurial/templates/static/style-paper.css b/mercurial/templates/static/style-paper.css
--- a/mercurial/templates/static/style-paper.css
+++ b/mercurial/templates/static/style-paper.css
@@ -350,6 +350,7 @@ div.followlines-link {
 }
 
 .btn-followlines {
+  position: absolute;
   display: none;
   cursor: pointer;
   box-sizing: content-box;
@@ -367,14 +368,6 @@ div.followlines-link {
   line-height: 5px;
 }
 
-tr .btn-followlines {
-  position: absolute;
-}
-
-span .btn-followlines {
-  float: left;
-}
-
 span.followlines-select .btn-followlines {
   margin-left: -1.5em;
 }
diff --git a/tests/test-hgweb.t b/tests/test-hgweb.t
--- a/tests/test-hgweb.t
+++ b/tests/test-hgweb.t
@@ -340,7 +340,7 @@ static file
 
   $ get-with-headers.py --twice localhost:$HGPORT 'static/style-gitweb.css' - date etag server
   200 Script output follows
-  content-length: 9126
+  content-length: 9059
   content-type: text/css
   
   body { font-family: sans-serif; font-size: 12px; border:solid #d9d8d1; border-width:1px; margin:10px; background: white; color: black; }
@@ -577,6 +577,7 @@ static file
   }
   
   .btn-followlines {
+    position: absolute;
     display: none;
     cursor: pointer;
     box-sizing: content-box;
@@ -594,14 +595,6 @@ static file
     line-height: 5px;
   }
   
-  tr .btn-followlines {
-    position: absolute;
-  }
-  
-  span .btn-followlines {
-    float: left;
-  }
-  
   span.followlines-select .btn-followlines {
     margin-left: -1.6em;
   }


More information about the Mercurial-devel mailing list