@@ -85,7 +85,12 @@ func (m *MaterialIconProvider) renderFileIconSVG(ctx reqctx.RequestContext, name
8585}
8686
8787func (m * MaterialIconProvider ) FolderIcon (ctx reqctx.RequestContext , isOpen bool ) template.HTML {
88- return svg .RenderHTML ("material-folder-generic" , 16 , BasicThemeFolderIconName (isOpen ))
88+ // return svg.RenderHTML("material-folder-generic", 16, BasicThemeFolderIconName(isOpen))
89+ iconName := "folder"
90+ if isOpen {
91+ iconName = "folder-open"
92+ }
93+ return m .renderIconByName (ctx , iconName , BasicThemeFolderIconName (isOpen ))
8994}
9095
9196func (m * MaterialIconProvider ) FileIcon (ctx reqctx.RequestContext , file * FileIcon ) template.HTML {
@@ -102,20 +107,21 @@ func (m *MaterialIconProvider) FileIcon(ctx reqctx.RequestContext, file *FileIco
102107 }
103108
104109 name := m .findIconNameByGit (file )
105- if name == "folder" {
106- // the material icon pack's "folder" icon doesn't look good, so use our built-in one
107- // keep the old "octicon-xxx" class name to make some "theme plugin selector" could still work
108- return m .FolderIcon (ctx , false )
110+
111+ extraClass := "octicon-file"
112+ switch {
113+ case file .EntryMode .IsDir ():
114+ extraClass = BasicThemeFolderIconName (false )
115+ case file .EntryMode .IsSubModule ():
116+ extraClass = "octicon-file-submodule"
109117 }
118+
119+ return m .renderIconByName (ctx , name , extraClass )
120+ }
121+
122+ func (m * MaterialIconProvider ) renderIconByName (ctx reqctx.RequestContext , name , extraClass string ) template.HTML {
110123 if iconSVG , ok := m .svgs [name ]; ok && iconSVG != "" {
111124 // keep the old "octicon-xxx" class name to make some "theme plugin selector" could still work
112- extraClass := "octicon-file"
113- switch {
114- case file .EntryMode .IsDir ():
115- extraClass = BasicThemeFolderIconName (false )
116- case file .EntryMode .IsSubModule ():
117- extraClass = "octicon-file-submodule"
118- }
119125 return m .renderFileIconSVG (ctx , name , iconSVG , extraClass )
120126 }
121127 return svg .RenderHTML ("octicon-file" )
0 commit comments