Bladeren bron

Fix theming of print styles too!

George Baugh 2 jaren geleden
bovenliggende
commit
67449c1eb3
2 gewijzigde bestanden met toevoegingen van 10 en 10 verwijderingen
  1. 3 3
      lib/Trog/Routes/HTML.pm
  2. 7 7
      www/templates/html/components/header.tx

+ 3 - 3
lib/Trog/Routes/HTML.pm

@@ -252,9 +252,9 @@ sub index ( $query, $content = '', $i_styles = [] ) {
     unshift( @styles, qw{embed.css} ) if $query->{embed};
     unshift( @styles, qw{screen.css structure.css} );
     push( @styles, @$i_styles );
-    my @p_styles = qw{print.css};
+    my @p_styles = qw{structure.css print.css};
+    unshift( @p_styles, qw{embed.css} ) if $query->{embed};
 
-    #TODO allow theming of print css
     my @series = _get_series(0);
 
     my $title = $query->{primary_post}{title} // $query->{title} // $Theme::default_title // 'tCMS';
@@ -1563,7 +1563,7 @@ sub finish_render ( $template, $vars, %headers ) {
 
     # Theme-ize the paths
     $vars->{stylesheets}  = [ @{ _build_themed_styles( $vars->{stylesheets} ) } ];
-    $vars->{print_styles} = [ @{ _build_themed_styles( $vars->{p_styles} ) } ];
+    $vars->{print_styles} = [ @{ _build_themed_styles( $vars->{print_styles} ) } ];
     $vars->{scripts}      = [ map { s/^www\///; $_ } @{ _build_themed_scripts( $vars->{scripts} ) } ];
 
     # Add in avatars.css, it's special

+ 7 - 7
www/templates/html/components/header.tx

@@ -29,24 +29,24 @@
         : }
 
         <meta name="viewport" content="width=device-width" />
-        <link rel="preload" type="text/css" href="/styles/structure.css" as="style" />
-        <link rel="stylesheet" type="text/css" href="/styles/structure.css" />
-        <link rel="stylesheet" type="text/css" href="/styles/screen.css" media="screen" />
-        <link rel="stylesheet" type="text/css" href="/styles/print.css" media="print" />
-        <!-- For highlight.js !-->
-        <link rel="preload" type="text/css" href="/styles/obsidian.min.css" as="style" />
-        <link rel="stylesheet" type="text/css" href="/styles/obsidian.min.css" />
         : if ($embed) {
         <base target="_blank" />
         <link rel="stylesheet" type="text/css" href="/styles/embed.css" media="screen" />
         : }
         <!-- Stylesheets !-->
         : for $stylesheets -> $stylesheet {
+        <link rel="preload" type="text/css" href="<: $stylesheet :>" as="style" />
         <link rel="stylesheet" type="text/css" href="<: $stylesheet :>" media="screen" />
         : }
+        <!-- Print Styles !-->
         : for $print_styles -> $print_style {
+        <link rel="preload" type="text/css" href="<: $print_style :>" as="style" />
         <link rel="stylesheet" type="text/css" href="<: $print_style :>" media="print" />
         : }
+        <!-- For highlight.js !-->
+        <link rel="preload" type="text/css" href="/styles/obsidian.min.css" as="style" />
+        <link rel="stylesheet" type="text/css" href="/styles/obsidian.min.css" />
+        <!-- Javascript !-->
         : for $scripts -> $script {
         <script type="text/javascript" src="<: $script :>"></script>
         : }