diff --git a/client/homebrew/navbar/navbar.less b/client/homebrew/navbar/navbar.less index 5f37d74a1..3bd6a66e1 100644 --- a/client/homebrew/navbar/navbar.less +++ b/client/homebrew/navbar/navbar.less @@ -115,8 +115,36 @@ color : white; text-decoration : none; border-top : 1px solid #888; + overflow : clip; + .clear{ + display : none; + position : absolute; + top : 50%; + transform : translateY(-50%); + right : 0px; + width : 20px; + height : 100%; + background-color : #333; + opacity : 70%; + border-radius : 3px; + &:hover { + opacity : 100%; + } + i { + text-align : center; + font-size : 10px; + margin : 0; + height :100%; + width :100%; + } + } &:hover{ background-color : @blue; + + .clear{ + display : grid; + place-content : center; + } } .title{ display : inline-block; diff --git a/client/homebrew/navbar/recent.navitem.jsx b/client/homebrew/navbar/recent.navitem.jsx index ee24cfd5c..169c46a0e 100644 --- a/client/homebrew/navbar/recent.navitem.jsx +++ b/client/homebrew/navbar/recent.navitem.jsx @@ -119,6 +119,25 @@ const RecentItems = createClass({ }); }, + removeItem : function(url, evt){ + evt.preventDefault(); + + let edited = JSON.parse(localStorage.getItem(EDIT_KEY) || '[]'); + let viewed = JSON.parse(localStorage.getItem(VIEW_KEY) || '[]'); + + edited = edited.filter((item)=>{ return (item.url !== url);}); + viewed = viewed.filter((item)=>{ return (item.url !== url);}); + + localStorage.setItem(EDIT_KEY, JSON.stringify(edited)); + localStorage.setItem(VIEW_KEY, JSON.stringify(viewed)); + + this.setState({ + edit : edited, + view : viewed + }); + + }, + renderDropdown : function(){ if(!this.state.showDropdown) return null; @@ -127,6 +146,7 @@ const RecentItems = createClass({ return {brew.title || '[ no title ]'} {Moment(brew.ts).fromNow()} +
{this.removeItem(`${brew.url}`, e);}}>
; }); };