[PATCH 2 of 3 V3] hgweb: make followlines button absolutely positioned

Anton Shestakov av6 at dwimlabs.net
Mon Apr 9 10:16:47 EDT 2018


# HG changeset patch
# User Anton Shestakov <av6 at dwimlabs.net>
# Date 1523191987 -28800
#      Sun Apr 08 20:53:07 2018 +0800
# Node ID 281674337d7709b4fa8e4d0425e7879c2300af28
# Parent  6d5ee23ffa66b61abf6466b87d8e813141fed364
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