From 29c3c9f0a9566bcb548c1383d5c1768e1f05e428 Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Mon, 24 Dec 2012 17:03:12 -0800 Subject: [PATCH 01/14] having div here is invalid `li` can only be in a list --- src/packages/tree-view/src/tree-view.coffee | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/packages/tree-view/src/tree-view.coffee b/src/packages/tree-view/src/tree-view.coffee index fc7b27e9c..a8c01378e 100644 --- a/src/packages/tree-view/src/tree-view.coffee +++ b/src/packages/tree-view/src/tree-view.coffee @@ -27,7 +27,7 @@ class TreeView extends ScrollView @instance.serialize() @content: (rootView) -> - @div class: 'tree-view tool-panel', tabindex: -1 + @ol class: 'tree-view tool-panel', tabindex: -1 @deserialize: (state, rootView) -> treeView = new TreeView(rootView) From fbbe59714e8276f1904c9cb3b797fe3057dbfd3a Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Mon, 24 Dec 2012 17:15:50 -0800 Subject: [PATCH 02/14] Having the trailing / in the directory treeview is cruft I wanted to remove the trailing / in the tree view. However, I have no idea if this breaks other stuff? @nathansobo @probablycorey --- src/app/directory.coffee | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/directory.coffee b/src/app/directory.coffee index 45e74cad5..79eefe334 100644 --- a/src/app/directory.coffee +++ b/src/app/directory.coffee @@ -10,7 +10,7 @@ class Directory constructor: (@path) -> getBaseName: -> - fs.base(@path) + '/' + fs.base(@path) getPath: -> @path From 3863e73df806abd29008ff3dac046ae8f601dc5b Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Mon, 24 Dec 2012 17:16:17 -0800 Subject: [PATCH 03/14] Add a .highlight span in each li --- src/packages/tree-view/src/directory-view.coffee | 1 + src/packages/tree-view/src/file-view.coffee | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/packages/tree-view/src/directory-view.coffee b/src/packages/tree-view/src/directory-view.coffee index a039232b6..f60ff2a5f 100644 --- a/src/packages/tree-view/src/directory-view.coffee +++ b/src/packages/tree-view/src/directory-view.coffee @@ -11,6 +11,7 @@ class DirectoryView extends View @div outlet: 'header', class: 'header', => @span '▸', class: 'disclosure-arrow', outlet: 'disclosureArrow' @span directory.getBaseName(), class: 'name', outlet: 'directoryName' + @span "", class: 'highlight' directory: null entries: null diff --git a/src/packages/tree-view/src/file-view.coffee b/src/packages/tree-view/src/file-view.coffee index 6fb40540a..3bf6894b3 100644 --- a/src/packages/tree-view/src/file-view.coffee +++ b/src/packages/tree-view/src/file-view.coffee @@ -5,7 +5,9 @@ Git = require 'git' module.exports = class FileView extends View @content: (file) -> - @li file.getBaseName(), class: 'file entry' + @li class: 'file entry', => + @span file.getBaseName(), class: 'name' + @span "", class: 'highlight' file: null From 72d9470ed18db9ce97a9763d460d9d7612efd152 Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Mon, 24 Dec 2012 17:16:32 -0800 Subject: [PATCH 04/14] Creating a new style for the tree-view --- static/tree-view.css | 77 +++++++++++++++++++++++++++++++------------- 1 file changed, 54 insertions(+), 23 deletions(-) diff --git a/static/tree-view.css b/static/tree-view.css index 975ad5140..756b02b90 100644 --- a/static/tree-view.css +++ b/static/tree-view.css @@ -1,42 +1,73 @@ .tree-view { position: relative; height: 100%; - background: black; - color: white; + background: #1e1e1e; overflow: auto; - padding: 0 1em; cursor: default; -webkit-user-select: none; + border-right: 1px solid #191919; + min-width: 100px; + z-index: 2; + padding-left: 12px; +} + +.tree-view .entry { + text-shadow: 0 -1px 0 #000; +} + +.tree-view .entries, +.tree-view .entries .file .name { + margin-left: 12px; +} + +.tree-view .directory.selected .header, +.tree-view .directory.selected > .header .name, +.tree-view .selected > .name { + color: #d2d2d2; +} + +.tree-view .selected > .highlight { + background-image: -webkit-linear-gradient(#4e4e4e, #434343); + position: absolute; + left: 0; + right: 0; + height: 24px; + margin-top:-24px; + z-index: -1; +} + +.tree-view .entry.file .name { + display: block; } .tree-view .disclosure-arrow { - width: 2ex; + width: 13px; display: inline-block; } -.tree-view .directory .entries { - padding-left: 1ex; +.tree-view .directory .header { + color: #bebebe; } -.file, .directory > .header { - padding: 0 1ex; +.tree-view .file { + color: #7d7d7d; +} + +.tree-view .entry:hover, +.tree-view .directory .header:hover .name, +.tree-view .directory .header:hover .disclosure-arrow { + color: #ebebeb; +} + +.tree-view .file .name, +.tree-view .directory .header { + padding-top: 4px; + padding-bottom: 4px; + padding-right: 10px; } .tree-view .ignored { - color: #BBB; -} - -.tree-view .directory .entries .file { - padding-left: 3ex; -} - -.tree-view .file.selected, .tree-view .directory.selected > .header { - background: #444; -} - -.tree-view:focus .file.selected, .tree-view:focus .directory.selected > .header { - background: #a3fd97; - color: black; + color: #555; } .tree-view-dialog { @@ -47,4 +78,4 @@ color: white; border: 2px solid #222; -webkit-box-shadow: 0 0 3px 3px rgba(0, 0, 0, .5); -} +} \ No newline at end of file From 696155f865baac84fb459b658bb8c76b289c5c30 Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Wed, 26 Dec 2012 11:36:31 -0800 Subject: [PATCH 05/14] adding icons to file tree --- static/tree-view.css | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/static/tree-view.css b/static/tree-view.css index 756b02b90..ca19d8dc6 100644 --- a/static/tree-view.css +++ b/static/tree-view.css @@ -78,4 +78,33 @@ color: white; border: 2px solid #222; -webkit-box-shadow: 0 0 3px 3px rgba(0, 0, 0, .5); -} \ No newline at end of file +} + +.tree-view .directory .header .name, +.tree-view .file .name { + position: relative; + padding-left: 21px; +} + +.tree-view .directory .header .name:before, +.tree-view .file .name:before { + font-family: 'Octicons Regular'; + font-size: 16px; + width: 16px; + height: 16px; + margin-right: 5px; + -webkit-font-smoothing: antialiased; + position: absolute; + left: 0; +} + +.tree-view .directory .header .name:before { + content: "\f016"; + top: -5px; +} + +.tree-view .file .name:before { + content: "\f011"; + top: -2px; +} + From 6bdaf532891fb0a97163152abb2cb4799b195364 Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Wed, 26 Dec 2012 11:44:35 -0800 Subject: [PATCH 06/14] fuzzy finder should be on top of all --- static/fuzzy-finder.css | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/static/fuzzy-finder.css b/static/fuzzy-finder.css index 5f3456371..cf297a948 100644 --- a/static/fuzzy-finder.css +++ b/static/fuzzy-finder.css @@ -1,3 +1,7 @@ +.fuzzy-finder { + z-index: 99; +} + .fuzzy-finder ol { overflow: hidden; margin-bottom: 5px; From 65de43fb340177a93abe5974181f697da0079a16 Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Wed, 26 Dec 2012 13:16:40 -0800 Subject: [PATCH 07/14] something was wrong with the scrolling, the root view shouldn't be scrolled --- static/atom.css | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/static/atom.css b/static/atom.css index 974e85cb5..12e9bc50e 100644 --- a/static/atom.css +++ b/static/atom.css @@ -7,8 +7,7 @@ html, body { #root-view { height: 100%; - overflow-y: auto; - overflow-x: hidden; + overflow: hidden; position: relative; background-image: url(images/linen.png); } From e2f7be6ef075e7b3dd96a327d4b18c121db6165b Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Wed, 26 Dec 2012 13:21:35 -0800 Subject: [PATCH 08/14] moved to select-list.css --- static/fuzzy-finder.css | 4 ---- 1 file changed, 4 deletions(-) diff --git a/static/fuzzy-finder.css b/static/fuzzy-finder.css index cf297a948..5f3456371 100644 --- a/static/fuzzy-finder.css +++ b/static/fuzzy-finder.css @@ -1,7 +1,3 @@ -.fuzzy-finder { - z-index: 99; -} - .fuzzy-finder ol { overflow: hidden; margin-bottom: 5px; From 8a83c45a5082949a6bb0a65e2f4811f0d05ff80f Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Wed, 26 Dec 2012 15:17:33 -0800 Subject: [PATCH 09/14] fixing the treeView tests --- .../tree-view/spec/tree-view-spec.coffee | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/src/packages/tree-view/spec/tree-view-spec.coffee b/src/packages/tree-view/spec/tree-view-spec.coffee index 3826508f4..f2a461d46 100644 --- a/src/packages/tree-view/spec/tree-view-spec.coffee +++ b/src/packages/tree-view/spec/tree-view-spec.coffee @@ -27,17 +27,17 @@ describe "TreeView", -> describe ".initialize(project)", -> it "renders the root of the project and its contents alphabetically with subdirectories first in a collapsed state", -> expect(treeView.root.find('> .header .disclosure-arrow')).toHaveText('▾') - expect(treeView.root.find('> .header .name')).toHaveText('tree-view/') + expect(treeView.root.find('> .header .name')).toHaveText('tree-view') rootEntries = treeView.root.find('.entries') subdir0 = rootEntries.find('> li:eq(0)') expect(subdir0.find('.disclosure-arrow')).toHaveText('▸') - expect(subdir0.find('.name')).toHaveText('dir1/') + expect(subdir0.find('.name')).toHaveText('dir1') expect(subdir0.find('.entries')).not.toExist() subdir2 = rootEntries.find('> li:eq(1)') expect(subdir2.find('.disclosure-arrow')).toHaveText('▸') - expect(subdir2.find('.name')).toHaveText('dir2/') + expect(subdir2.find('.name')).toHaveText('dir2') expect(subdir2.find('.entries')).not.toExist() expect(rootEntries.find('> .file:contains(tree-view.js)')).toExist() @@ -209,7 +209,7 @@ describe "TreeView", -> describe "when a directory's disclosure arrow is clicked", -> it "expands / collapses the associated directory", -> - subdir = treeView.root.find('.entries > li:contains(dir1/)').view() + subdir = treeView.root.find('.entries > li:contains(dir1)').view() expect(subdir.disclosureArrow).toHaveText('▸') expect(subdir.find('.entries')).not.toExist() @@ -224,10 +224,10 @@ describe "TreeView", -> expect(subdir.find('.entries')).not.toExist() it "restores the expansion state of descendant directories", -> - child = treeView.root.find('.entries > li:contains(dir1/)').view() + child = treeView.root.find('.entries > li:contains(dir1)').view() child.disclosureArrow.click() - grandchild = child.find('.entries > li:contains(sub-dir1/)').view() + grandchild = child.find('.entries > li:contains(sub-dir1)').view() grandchild.disclosureArrow.click() treeView.root.disclosureArrow.click() @@ -235,16 +235,16 @@ describe "TreeView", -> treeView.root.disclosureArrow.click() # previously expanded descendants remain expanded - expect(treeView.root.find('> .entries > li:contains(dir1/) > .entries > li:contains(sub-dir1/) > .entries').length).toBe 1 + expect(treeView.root.find('> .entries > li:contains(dir1) > .entries > li:contains(sub-dir1) > .entries').length).toBe 1 # collapsed descendants remain collapsed - expect(treeView.root.find('> .entries > li.contains(dir2/) > .entries')).not.toExist() + expect(treeView.root.find('> .entries > li.contains(dir2) > .entries')).not.toExist() it "when collapsing a directory, removes change subscriptions from the collapsed directory and its descendants", -> - child = treeView.root.entries.find('li:contains(dir1/)').view() + child = treeView.root.entries.find('li:contains(dir1)').view() child.disclosureArrow.click() - grandchild = child.entries.find('li:contains(sub-dir1/)').view() + grandchild = child.entries.find('li:contains(sub-dir1)').view() grandchild.disclosureArrow.click() expect(treeView.root.directory.subscriptionCount()).toBe 1 @@ -359,7 +359,7 @@ describe "TreeView", -> beforeEach -> nested = treeView.root.find('.directory:eq(2)').view() - expect(nested.find('.header').text()).toContain 'nested/' + expect(nested.find('.header').text()).toContain 'nested' nested.expand() nested2 = nested.entries.find('.entry:last').view() nested2.click() @@ -486,7 +486,7 @@ describe "TreeView", -> entryCount = treeView.find(".entry").length _.times entryCount, -> treeView.moveDown() - expect(treeView.scrollBottom()).toBe treeView.prop('scrollHeight') + expect(treeView.scrollBottom() + 2).toBe treeView.prop('scrollHeight') _.times entryCount, -> treeView.moveUp() expect(treeView.scrollTop()).toBe 0 @@ -668,7 +668,7 @@ describe "TreeView", -> expect(rootView.getActiveEditor().getPath()).not.toBe newPath expect(treeView).toMatchSelector(':focus') expect(rootView.getActiveEditor().isFocused).toBeFalsy() - expect(dirView.find('.directory.selected:contains(new/)').length).toBe(1) + expect(dirView.find('.directory.selected:contains(new)').length).toBe(1) it "selects the created directory", -> treeView.attachToDom() @@ -681,7 +681,7 @@ describe "TreeView", -> expect(rootView.getActiveEditor().getPath()).not.toBe newPath expect(treeView).toMatchSelector(':focus') expect(rootView.getActiveEditor().isFocused).toBeFalsy() - expect(dirView.find('.directory.selected:contains(new2/)').length).toBe(1) + expect(dirView.find('.directory.selected:contains(new2)').length).toBe(1) describe "when a file or directory already exists at the given path", -> it "shows an error message and does not close the dialog", -> From b6a0b8bfdbb9df6f9a8533f2bbaaf4821b9dcd59 Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Wed, 26 Dec 2012 15:55:07 -0800 Subject: [PATCH 10/14] Use image, pdf, and compressed file icons --- src/packages/tree-view/src/file-view.coffee | 36 +++++++++++++++++++-- static/tree-view.css | 16 ++++++++- 2 files changed, 49 insertions(+), 3 deletions(-) diff --git a/src/packages/tree-view/src/file-view.coffee b/src/packages/tree-view/src/file-view.coffee index 3bf6894b3..5b39536cd 100644 --- a/src/packages/tree-view/src/file-view.coffee +++ b/src/packages/tree-view/src/file-view.coffee @@ -1,18 +1,50 @@ {View, $$} = require 'space-pen' $ = require 'jquery' Git = require 'git' +fs = require 'fs' +_ = require 'underscore' module.exports = class FileView extends View + + @COMPRESSED_EXTENSIONS: [ + '.zip' + '.jar' + '.tar' + '.gz' + ] + + @IMAGE_EXTENSIONS: [ + '.jpeg' + '.jpg' + '.gif' + '.png' + ] + + @PDF_EXTENSIONS: [ + '.pdf' + ] + @content: (file) -> @li class: 'file entry', => - @span file.getBaseName(), class: 'name' + @span file.getBaseName(), class: 'name', outlet: 'fileName' @span "", class: 'highlight' file: null initialize: (@file) -> - @addClass('ignored') if new Git(@getPath()).isPathIgnored(@getPath()) + path = @getPath() + extension = fs.extension(path) + if _.contains(FileView.COMPRESSED_EXTENSIONS, extension) + @fileName.addClass('compressed-name') + else if _.contains(FileView.IMAGE_EXTENSIONS, extension) + @fileName.addClass('image-name') + else if _.contains(FileView.PDF_EXTENSIONS, extension) + @fileName.addClass('pdf-name') + else + @fileName.addClass('text-name') + + @addClass('ignored') if new Git(path).isPathIgnored(path) getPath: -> @file.path diff --git a/static/tree-view.css b/static/tree-view.css index ca19d8dc6..393988dd1 100644 --- a/static/tree-view.css +++ b/static/tree-view.css @@ -103,8 +103,22 @@ top: -5px; } -.tree-view .file .name:before { +.tree-view .file .text-name:before { content: "\f011"; top: -2px; } +.tree-view .file .image-name:before { + content: "\f012"; + top: -2px; +} + +.tree-view .file .compressed-name:before { + content: "\f013"; + top: -2px; +} + +.tree-view .file .pdf-name:before { + content: "\f014"; + top: -2px; +} From e6343b7773379032780b751521e1d266a6a0a10b Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Wed, 26 Dec 2012 15:55:46 -0800 Subject: [PATCH 11/14] Alphabetize extension arrays --- src/packages/tree-view/src/file-view.coffee | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/packages/tree-view/src/file-view.coffee b/src/packages/tree-view/src/file-view.coffee index 5b39536cd..afc5b15de 100644 --- a/src/packages/tree-view/src/file-view.coffee +++ b/src/packages/tree-view/src/file-view.coffee @@ -8,16 +8,16 @@ module.exports = class FileView extends View @COMPRESSED_EXTENSIONS: [ - '.zip' + '.gz' '.jar' '.tar' - '.gz' + '.zip' ] @IMAGE_EXTENSIONS: [ + '.gif' '.jpeg' '.jpg' - '.gif' '.png' ] From ff4ae5ce05e8962b4125edb6571aa7a49cf9df59 Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Wed, 26 Dec 2012 16:38:21 -0800 Subject: [PATCH 12/14] Use octicon disclosure arrow --- .../tree-view/spec/tree-view-spec.coffee | 12 +++++------ .../tree-view/src/directory-view.coffee | 4 +--- static/tree-view.css | 20 ++++++++++++++++++- 3 files changed, 26 insertions(+), 10 deletions(-) diff --git a/src/packages/tree-view/spec/tree-view-spec.coffee b/src/packages/tree-view/spec/tree-view-spec.coffee index f2a461d46..fbdca2edd 100644 --- a/src/packages/tree-view/spec/tree-view-spec.coffee +++ b/src/packages/tree-view/spec/tree-view-spec.coffee @@ -26,17 +26,17 @@ describe "TreeView", -> describe ".initialize(project)", -> it "renders the root of the project and its contents alphabetically with subdirectories first in a collapsed state", -> - expect(treeView.root.find('> .header .disclosure-arrow')).toHaveText('▾') + expect(treeView.root.find('> .header .disclosure-arrow')).not.toHaveClass('expanded') expect(treeView.root.find('> .header .name')).toHaveText('tree-view') rootEntries = treeView.root.find('.entries') subdir0 = rootEntries.find('> li:eq(0)') - expect(subdir0.find('.disclosure-arrow')).toHaveText('▸') + expect(subdir0).not.toHaveClass('expanded') expect(subdir0.find('.name')).toHaveText('dir1') expect(subdir0.find('.entries')).not.toExist() subdir2 = rootEntries.find('> li:eq(1)') - expect(subdir2.find('.disclosure-arrow')).toHaveText('▸') + expect(subdir2).not.toHaveClass('expanded') expect(subdir2.find('.name')).toHaveText('dir2') expect(subdir2.find('.entries')).not.toExist() @@ -211,16 +211,16 @@ describe "TreeView", -> it "expands / collapses the associated directory", -> subdir = treeView.root.find('.entries > li:contains(dir1)').view() - expect(subdir.disclosureArrow).toHaveText('▸') + expect(subdir).not.toHaveClass('expanded') expect(subdir.find('.entries')).not.toExist() subdir.disclosureArrow.click() - expect(subdir.disclosureArrow).toHaveText('▾') + expect(subdir).toHaveClass('expanded') expect(subdir.find('.entries')).toExist() subdir.disclosureArrow.click() - expect(subdir.disclosureArrow).toHaveText('▸') + expect(subdir).not.toHaveClass('expanded') expect(subdir.find('.entries')).not.toExist() it "restores the expansion state of descendant directories", -> diff --git a/src/packages/tree-view/src/directory-view.coffee b/src/packages/tree-view/src/directory-view.coffee index f60ff2a5f..197917f61 100644 --- a/src/packages/tree-view/src/directory-view.coffee +++ b/src/packages/tree-view/src/directory-view.coffee @@ -9,7 +9,7 @@ class DirectoryView extends View @content: ({directory, isExpanded} = {}) -> @li class: 'directory entry', => @div outlet: 'header', class: 'header', => - @span '▸', class: 'disclosure-arrow', outlet: 'disclosureArrow' + @span class: 'disclosure-arrow', outlet: 'disclosureArrow' @span directory.getBaseName(), class: 'name', outlet: 'directoryName' @span "", class: 'highlight' @@ -48,7 +48,6 @@ class DirectoryView extends View expand: -> return if @isExpanded @addClass('expanded') - @disclosureArrow.text('▾') @buildEntries() @watchEntries() @deserializeEntryExpansionStates(@entryStates) if @entryStates? @@ -58,7 +57,6 @@ class DirectoryView extends View collapse: -> @entryStates = @serializeEntryExpansionStates() @removeClass('expanded') - @disclosureArrow.text('▸') @unwatchEntries() @entries.remove() @entries = null diff --git a/static/tree-view.css b/static/tree-view.css index 393988dd1..186986f59 100644 --- a/static/tree-view.css +++ b/static/tree-view.css @@ -41,7 +41,6 @@ } .tree-view .disclosure-arrow { - width: 13px; display: inline-block; } @@ -98,6 +97,15 @@ left: 0; } +.tree-view .disclosure-arrow:before { + font-family: 'Octicons Regular'; + font-size: 12px; + width: 12px; + height: 12px; + margin-right: 3px; + -webkit-font-smoothing: antialiased; +} + .tree-view .directory .header .name:before { content: "\f016"; top: -5px; @@ -122,3 +130,13 @@ content: "\f014"; top: -2px; } + +.tree-view .directory > .header .disclosure-arrow:before { + content: "\f05a"; + top: -2px; +} + +.tree-view .directory.expanded > .header .disclosure-arrow:before { + content: "\f05b"; + top: -2px; +} From 9a06b606f67426c0ba48c1b1c09e228b38475a2f Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Wed, 26 Dec 2012 16:43:58 -0800 Subject: [PATCH 13/14] Increase left margin on file names to 15px --- static/tree-view.css | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/static/tree-view.css b/static/tree-view.css index 186986f59..20e04722a 100644 --- a/static/tree-view.css +++ b/static/tree-view.css @@ -15,11 +15,14 @@ text-shadow: 0 -1px 0 #000; } -.tree-view .entries, -.tree-view .entries .file .name { +.tree-view .entries { margin-left: 12px; } +.tree-view .entries .file .name { + margin-left: 15px; +} + .tree-view .directory.selected .header, .tree-view .directory.selected > .header .name, .tree-view .selected > .name { From ca8ad670bfc26ff8556cc09a52e8381f1cea342d Mon Sep 17 00:00:00 2001 From: Jon Rohan Date: Wed, 26 Dec 2012 16:53:33 -0800 Subject: [PATCH 14/14] centering the directory name in the highlight. --- static/tree-view.css | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/static/tree-view.css b/static/tree-view.css index 20e04722a..94b1919e5 100644 --- a/static/tree-view.css +++ b/static/tree-view.css @@ -105,6 +105,7 @@ font-size: 12px; width: 12px; height: 12px; + line-height: 16px; margin-right: 3px; -webkit-font-smoothing: antialiased; } @@ -136,10 +137,8 @@ .tree-view .directory > .header .disclosure-arrow:before { content: "\f05a"; - top: -2px; } .tree-view .directory.expanded > .header .disclosure-arrow:before { content: "\f05b"; - top: -2px; }