diff --git a/app/common/lib/bookmarkUtil.js b/app/common/lib/bookmarkUtil.js index f1beea204f0..05875fb9d92 100644 --- a/app/common/lib/bookmarkUtil.js +++ b/app/common/lib/bookmarkUtil.js @@ -72,8 +72,8 @@ const getToolbarBookmarks = (state) => { const sites = state.get('sites', Immutable.List()) const noParentItems = siteUtil.getBookmarks(sites) - .sort(siteUtil.siteSort) .filter((bookmark) => !bookmark.get('parentFolderId')) + .sort(siteUtil.siteSort) let widthAccountedFor = 0 const overflowButtonWidth = 25 const onlyFavicon = showOnlyFavicon() @@ -119,9 +119,9 @@ const getToolbarBookmarks = (state) => { } return { - visibleBookmarks: noParentItems.take(i), + visibleBookmarks: noParentItems.take(i).map((item, index) => index).toList(), // Show at most 100 items in the overflow menu - hiddenBookmarks: noParentItems.skip(i).take(100) + hiddenBookmarks: noParentItems.skip(i).take(100).map((item, index) => index).toList() } } diff --git a/app/renderer/components/bookmarks/bookmarkToolbarButton.js b/app/renderer/components/bookmarks/bookmarkToolbarButton.js index 994148c7091..b30de93328a 100644 --- a/app/renderer/components/bookmarks/bookmarkToolbarButton.js +++ b/app/renderer/components/bookmarks/bookmarkToolbarButton.js @@ -21,15 +21,12 @@ const windowStore = require('../../../../js/stores/windowStore') // Constants const dragTypes = require('../../../../js/constants/dragTypes') const {iconSize} = require('../../../../js/constants/config') -const {bookmarksToolbarMode} = require('../../../common/constants/settingsEnums') -const settings = require('../../../../js/constants/settings') // Utils const siteUtil = require('../../../../js/state/siteUtil') const {getCurrentWindowId} = require('../../currentWindow') const dnd = require('../../../../js/dnd') const cx = require('../../../../js/lib/classSet') -const {getSetting} = require('../../../../js/settings') const frameStateUtil = require('../../../../js/state/frameStateUtil') const contextMenus = require('../../../../js/contextMenus') const bookmarkUtil = require('../../../common/lib/bookmarkUtil') @@ -161,15 +158,13 @@ class BookmarkToolbarButton extends React.Component { mergeProps (state, ownProps) { const currentWindow = state.get('currentWindow') const activeFrame = frameStateUtil.getActiveFrame(currentWindow) || Immutable.Map() - const btbMode = getSetting(settings.BOOKMARKS_TOOLBAR_MODE) - const bookmark = ownProps.bookmark + const bookmark = state.getIn(['sites', ownProps.bookmarkKey], Immutable.Map()) const draggingOverData = bookmarkUtil.getDNDBookmarkData(state, bookmark) const props = {} // used in renderer - props.showFavicon = btbMode === bookmarksToolbarMode.TEXT_AND_FAVICONS || - btbMode === bookmarksToolbarMode.FAVICONS_ONLY - props.showOnlyFavicon = btbMode === bookmarksToolbarMode.FAVICONS_ONLY + props.showFavicon = bookmarkUtil.showFavicon() + props.showOnlyFavicon = bookmarkUtil.showOnlyFavicon() props.favIcon = bookmark.get('favicon') props.title = bookmark.get('customTitle', bookmark.get('title')) props.location = bookmark.get('location') @@ -180,9 +175,9 @@ class BookmarkToolbarButton extends React.Component { props.isDragging = Immutable.is(dnd.getInterBraveDragData(), bookmark) // used in other function - props.bookmark = bookmark // TODO (nejc) only primitives + props.bookmarkKey = ownProps.bookmarkKey props.bookmarks = siteUtil.getBookmarks(state.get('sites')) // TODO (nejc) only primitives - props.contextMenuDetail = currentWindow.get('contextMenuDetail') // TODO (nejc) only primitives + props.contextMenuDetail = !!currentWindow.get('contextMenuDetail') props.draggingOverData = draggingOverData // TODO (nejc) only primitives props.activeFrameKey = activeFrame.get('key') props.selectedFolderId = currentWindow.getIn(['ui', 'bookmarksToolbar', 'selectedFolderId']) diff --git a/app/renderer/components/bookmarks/bookmarksToolbar.js b/app/renderer/components/bookmarks/bookmarksToolbar.js index 8e38842975e..4d80abe910e 100644 --- a/app/renderer/components/bookmarks/bookmarksToolbar.js +++ b/app/renderer/components/bookmarks/bookmarksToolbar.js @@ -152,8 +152,8 @@ class BookmarksToolbar extends React.Component { props.showFavicon = bookmarkUtil.showFavicon() props.shouldAllowWindowDrag = windowState.shouldAllowWindowDrag(state, currentWindow, activeFrame, isFocused()) && !isWindows() - props.visibleBookmarks = bookmarks.visibleBookmarks // TODO (nejc) only primitives - props.hiddenBookmarks = bookmarks.hiddenBookmarks // TODO (nejc) only primitives + props.visibleBookmarks = bookmarks.visibleBookmarks + props.hiddenBookmarks = bookmarks.hiddenBookmarks // used in other functions props.activeFrameKey = activeFrame.get('key') @@ -181,11 +181,11 @@ class BookmarksToolbar extends React.Component { onDragOver={this.onDragOver} onContextMenu={this.onContextMenu}> { - this.props.visibleBookmarks.map((bookmark, i) => + this.props.visibleBookmarks.map((bookmarkKey, i) => this.bookmarkRefs.push(node)} key={`toolbar-button-${i}`} - bookmark={bookmark} />) + bookmarkKey={bookmarkKey} />) } { this.props.hiddenBookmarks.size !== 0 diff --git a/js/contextMenus.js b/js/contextMenus.js index 22ecef52604..d0d183b309f 100644 --- a/js/contextMenus.js +++ b/js/contextMenus.js @@ -34,10 +34,10 @@ const {isIntermediateAboutPage, isUrl, aboutUrls} = require('./lib/appUrlUtil') const {getBase64FromImageUrl} = require('./lib/imageUtil') const urlParse = require('../app/common/urlParse') const {getCurrentWindow} = require('../app/renderer/currentWindow') -const {bookmarksToolbarMode} = require('../app/common/constants/settingsEnums') const extensionState = require('../app/common/state/extensionState') const extensionActions = require('../app/common/actions/extensionActions') const appStore = require('./stores/appStoreRenderer') +const bookmarkUtil = require('../app/common/lib/bookmarkUtil') const {makeImmutable} = require('../app/common/state/immutableUtil') const isDarwin = process.platform === 'darwin' @@ -379,8 +379,7 @@ function showBookmarkFolderInit (allBookmarkItems, parentBookmarkFolder, activeF } function bookmarkItemsInit (allBookmarkItems, items, activeFrame) { - const btbMode = getSetting(settings.BOOKMARKS_TOOLBAR_MODE) - const showFavicon = (btbMode === bookmarksToolbarMode.TEXT_AND_FAVICONS || btbMode === bookmarksToolbarMode.FAVICONS_ONLY) + const showFavicon = bookmarkUtil.showFavicon() const itemsList = items.toList() const template = itemsList.map((site) => { const isFolder = siteUtil.isFolder(site)