From 4159e58f7fa0547b463390c1de028cc3f2ae9d57 Mon Sep 17 00:00:00 2001 From: Radoslav Vitanov Date: Thu, 18 Aug 2016 09:05:12 +0300 Subject: [PATCH 01/35] Start suggestions after first character not second fixes #3235 --- js/components/urlBarSuggestions.js | 5 ++++ test/components/navigationBarTest.js | 36 ++++++++++++++++++------ test/components/urlBarSuggestionsTest.js | 10 +++++++ 3 files changed, 42 insertions(+), 9 deletions(-) diff --git a/js/components/urlBarSuggestions.js b/js/components/urlBarSuggestions.js index add1be5e6b..94912f8e92 100644 --- a/js/components/urlBarSuggestions.js +++ b/js/components/urlBarSuggestions.js @@ -164,6 +164,11 @@ class UrlBarSuggestions extends ImmutableComponent { this.updateSuggestions(parseInt(e.target.dataset.index, 10)) } + componentDidMount () { + this.suggestionList = this.getNewSuggestionList() + this.searchXHR() + } + componentWillUpdate (prevProps) { if (this.selectedElement) { this.selectedElement.scrollIntoView() diff --git a/test/components/navigationBarTest.js b/test/components/navigationBarTest.js index 5bcd1f1784..00e5694f0c 100644 --- a/test/components/navigationBarTest.js +++ b/test/components/navigationBarTest.js @@ -72,6 +72,7 @@ describe('navigationBar', function () { it('updates the location in the navbar when changed by the opener', function * () { yield this.app.client .windowByUrl(Brave.browserWindowUrl) + .ipcSend('shortcut-focus-url') .waitUntil(function () { return this.getValue(urlInput).then((val) => val === 'data:text/html;,%3Ctitle%3ETabnapping%20Target%3C/title%3E') }) @@ -412,18 +413,27 @@ describe('navigationBar', function () { yield this.app.client.waitUntil(function () { return this.getValue(urlInput).then((val) => val === '') }) + + yield this.app.client + .addSite({ location: 'https://brave.com', title: 'Brave' }) + // now type something - yield this.app.client.keys('a') + yield this.app.client + .setValue(urlInput, 'b') + .waitForExist(urlBarSuggestions + ' li') }) - it('sets the value to "a"', function * () { + it('sets the value to "b"', function * () { yield this.app.client.waitUntil(function () { - return this.getValue(urlInput).then((val) => val === 'a') + return this.getValue(urlInput).then((val) => val === 'brave.com') }) }) it('clears the selected text', function * () { - yield selectsText(this.app.client, '') + // Since now the first letter will trigger the autocomplete + // expect the selected text to be part of the first suggestion + // in the list + yield selectsText(this.app.client, 'rave.com') }) describe('shortcut-focus-url', function () { @@ -437,7 +447,9 @@ describe('navigationBar', function () { }) it('selects the text', function * () { - yield selectsText(this.app.client, 'a') + // Since now the first letter will trigger the autocomplete + // expect the selected text to be the first suggestion in the list + yield selectsText(this.app.client, 'brave.com') }) it('has the file icon', function * () { @@ -625,7 +637,9 @@ describe('navigationBar', function () { .waitUntil(function () { return this.getValue(urlInput).then((val) => val === 'a') }) - yield selectsText(this.app.client, '') + .waitUntil(function () { + return this.getSelectedText().then(function (value) { return value === '' }) + }) }) }) @@ -654,10 +668,14 @@ describe('navigationBar', function () { yield this.app.client.waitUntil(function () { return this.getValue(urlInput).then((val) => val === '') }) + + yield this.app.client + .addSite({ location: 'https://brave.com', title: 'Brave' }) + // now type something - yield this.app.client.keys('a') + yield this.app.client.keys('b') yield this.app.client.waitUntil(function () { - return this.getValue(urlInput).then((val) => val === 'a') + return this.getValue(urlInput).then((val) => val === 'b') }) yield blur(this.app.client) yield this.app.client @@ -670,7 +688,7 @@ describe('navigationBar', function () { }) it('selects the text', function * () { - yield selectsText(this.app.client, 'a') + yield selectsText(this.app.client, 'brave.com') }) }) diff --git a/test/components/urlBarSuggestionsTest.js b/test/components/urlBarSuggestionsTest.js index b14dda9195..106505d42b 100644 --- a/test/components/urlBarSuggestionsTest.js +++ b/test/components/urlBarSuggestionsTest.js @@ -37,6 +37,16 @@ describe('urlbarSuggestions', function () { }) }) + it('show suggestion when single letter is typed in', function * () { + yield this.app.client.ipcSend('shortcut-focus-url') + .waitForElementFocus(urlInput) + .setValue(urlInput, 'a') + .waitUntil(function () { + return this.getValue(urlInput).then((val) => val === 'a') + }) + .waitForExist(urlBarSuggestions) + }) + it('deactivates suggestions on escape', function * () { yield this.app.client .setValue(urlInput, 'Page 1') From faf84d649c83b9c6811b71875be87cdd30716551 Mon Sep 17 00:00:00 2001 From: Radoslav Vitanov Date: Sat, 15 Oct 2016 12:19:01 +0300 Subject: [PATCH 02/35] UrlbarSuggestions does not work if you are offline Fixes #3730 Auditors: @bbondy Test Plan: 1. Make sure you turned on every type of suggestions you want to get via typing from the settings menu and set default Search Engine to duckduckgo 2. Disconnect from internet 3. Start typing something in the url bar --- js/components/urlBarSuggestions.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/js/components/urlBarSuggestions.js b/js/components/urlBarSuggestions.js index 0278aa26b7..4a7dcaffac 100644 --- a/js/components/urlBarSuggestions.js +++ b/js/components/urlBarSuggestions.js @@ -395,6 +395,11 @@ class UrlBarSuggestions extends ImmutableComponent { windowActions.setUrlBarSuggestionSearchResults(Immutable.fromJS(xhr.response[1])) this.updateSuggestions(props.selectedIndex) } + + xhr.onerror = () => { + windowActions.setUrlBarSuggestionSearchResults(Immutable.fromJS([])) + this.updateSuggestions(props.selectedIndex) + } } else { windowActions.setUrlBarSuggestionSearchResults(Immutable.fromJS([])) this.updateSuggestions(props.selectedIndex) From aaf88caa5bf38e211e89b6c940eee3a0b33be8d8 Mon Sep 17 00:00:00 2001 From: Anthony Tseng Date: Mon, 17 Oct 2016 17:36:09 -0400 Subject: [PATCH 03/35] Disable save button when no detail present fix #4855 Auditors: @bbondy Test Plan: 1. Open "about:autofill" 2. Click "Add Address" 3. The save button should be disabled 4. Enter the detail of form, the save button should be enabled 5. Remove all detail of form, the save button should be disabled 1. Open "about:autofill" 2. Click "Add Credit Card" 3. The save button should be disabled 4. Enter the detail of form, the save button should be enabled (Name, Card Number) 5. Remove all detail of form, the save button should be disabled (Name, Card Number) 1. Open "about:autofill" 2. Add address entry 3. Edit the address entry 4. Remove all detail of form, the save button should be disabled 1. Open "about:autofill" 2. Add credit card entry 3. Edit the credit card entry 4. Remove all detail of form, the save button should be disabled (Name, Card Number) --- js/components/autofillAddressPanel.js | 13 ++++++++++++- js/components/autofillCreditCardPanel.js | 9 ++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/js/components/autofillAddressPanel.js b/js/components/autofillAddressPanel.js index 5221320215..3cc4338141 100644 --- a/js/components/autofillAddressPanel.js +++ b/js/components/autofillAddressPanel.js @@ -88,6 +88,16 @@ class AutofillAddressPanel extends ImmutableComponent { onClick (e) { e.stopPropagation() } + get disableSaveButton () { + let currentDetail = this.props.currentDetail + if (!currentDetail.size) return true + if (!currentDetail.get('name') && !currentDetail.get('organization') && + !currentDetail.get('streetAddress') && !currentDetail.get('city') && + !currentDetail.get('state') && !currentDetail.get('country') && + !currentDetail.get('phone') && !currentDetail.get('email')) return true + return false + } + render () { return
@@ -141,7 +151,8 @@ class AutofillAddressPanel extends ImmutableComponent {
diff --git a/js/components/autofillCreditCardPanel.js b/js/components/autofillCreditCardPanel.js index 827c328493..ef88daae08 100644 --- a/js/components/autofillCreditCardPanel.js +++ b/js/components/autofillCreditCardPanel.js @@ -58,6 +58,12 @@ class AutofillCreditCardPanel extends ImmutableComponent { onClick (e) { e.stopPropagation() } + get disableSaveButton () { + let currentDetail = this.props.currentDetail + if (!currentDetail.size) return true + if (!currentDetail.get('name') && !currentDetail.get('card')) return true + return false + } render () { var ExpMonth = [] for (let i = 1; i <= 12; ++i) { @@ -98,7 +104,8 @@ class AutofillCreditCardPanel extends ImmutableComponent {
From e24f4fe1aa6ddfc8409d11de99ae0816d860bf45 Mon Sep 17 00:00:00 2001 From: Brian Clifton Date: Tue, 18 Oct 2016 00:40:27 -0700 Subject: [PATCH 04/35] "New bookmark folder" and "New bookmark" buttons added to about:bookmarks - sortableTable now allows you to provide a control instead of a string for the header - about:bookmarks now properly sets tableID (not used yet) - Adding a new bookmark now requires either a title or location (URL). Required because clicking new bookmark creates an empty object (versus existing buttons which always supply the current page). - Fixed style issue with about:bookmarks (moved border-right on folderView to organizeView Fixes https://github.com/brave/browser-laptop/issues/4684 Fixes https://github.com/brave/browser-laptop/issues/4866 Auditors: @jkup, @bbondy Test Plan: 1. Launch Brave and visit about:bookmarks 2. Pick any folder on the left hand side and click it to select it 3. Click the +folder icon, above the folder view 4. Confirm that the new bookmark folder UI comes up and that it sets the parent folder properly 5. Click add and ensure folder gets added 6. Pick any folder and click it to select 7. In the "title" column, hit the star+ icon to add a new bookmark 8. Confirm you can't add an empty bookmark. Type and see the button enable itself. Delete chars and it disables itself again. 9. Confirm the parent folder is correct and type in a title/url. When done, hit save. 10. Confirm bookmark was added. --- .../brave/locales/en-US/bookmarks.properties | 4 +- js/about/aboutActions.js | 16 ++++++++ js/about/bookmarks.js | 40 +++++++++++++++++-- js/components/addEditBookmark.js | 7 +++- js/components/sortableTable.js | 6 ++- less/about/bookmarks.less | 11 +++-- 6 files changed, 70 insertions(+), 14 deletions(-) diff --git a/app/extensions/brave/locales/en-US/bookmarks.properties b/app/extensions/brave/locales/en-US/bookmarks.properties index 3d881138bb..18a48360c0 100644 --- a/app/extensions/brave/locales/en-US/bookmarks.properties +++ b/app/extensions/brave/locales/en-US/bookmarks.properties @@ -5,5 +5,7 @@ partitionNumber=Session {{partitionNumber}} bookmarksToolbar=Bookmarks Toolbar otherBookmarks=Other Bookmarks bookmarkSearch.placeholder=Search bookmarks -importBrowserData.title=Import browser data +importBrowserData.title=Import Browser Data allFolders=All Folders +addBookmarkFolder.title=Add Folder +addBookmark.title=Add Bookmark diff --git a/js/about/aboutActions.js b/js/about/aboutActions.js index 5702f55b1c..0b49bdc1ae 100644 --- a/js/about/aboutActions.js +++ b/js/about/aboutActions.js @@ -312,6 +312,22 @@ const aboutActions = { aboutActions.dispatchAction({ actionType: appConstants.APP_SUBMIT_FEEDBACK }) + }, + + /** + * Dispatches a message to set add/edit bookmark details + * If set, also indicates that add/edit is shown + * @param {Object} currentDetail - Properties of the bookmark to change to + * @param {Object} originalDetail - Properties of the bookmark to edit + * @param {Object} destinationDetail - Will move the added bookmark to the specified position + */ + openBookmarkEditor: function (currentDetail, originalDetail, destinationDetail) { + aboutActions.dispatchAction({ + actionType: windowConstants.WINDOW_SET_BOOKMARK_DETAIL, + currentDetail, + originalDetail, + destinationDetail + }) } } module.exports = aboutActions diff --git a/js/about/bookmarks.js b/js/about/bookmarks.js index 927a4ab521..161759e2ca 100644 --- a/js/about/bookmarks.js +++ b/js/about/bookmarks.js @@ -134,6 +134,26 @@ class BookmarkFolderList extends ImmutableComponent { } } +class BookmarkTitleHeader extends ImmutableComponent { + constructor () { + super() + this.addBookmark = this.addBookmark.bind(this) + } + addBookmark () { + const newBookmark = Immutable.fromJS({ + parentFolderId: this.props.selectedFolderId, + tags: [siteTags.BOOKMARK] + }) + aboutActions.openBookmarkEditor(newBookmark) + } + render () { + return
+ + +
+ } +} + class BookmarkTitleCell extends ImmutableComponent { render () { let iconStyle @@ -216,9 +236,12 @@ class BookmarksList extends ImmutableComponent { onDrop: this.onDrop, sortingDisabled: !this.props.sortable } - return
- , + 'Last Visited' + ]} defaultHeading='Title' rows={this.props.bookmarks.map((entry) => [ { @@ -232,7 +255,7 @@ class BookmarksList extends ImmutableComponent { ])} rowObjects={this.props.bookmarks} columnClassNames={['title', 'date']} - tableID={this.props.tableID} + tableID={this.props.selectedFolderId} addHoverClass onDoubleClick={this.onDoubleClick} {...props} @@ -250,6 +273,7 @@ class AboutBookmarks extends React.Component { this.onChangeSearch = this.onChangeSearch.bind(this) this.onClearSearchText = this.onClearSearchText.bind(this) this.importBrowserData = this.importBrowserData.bind(this) + this.addBookmarkFolder = this.addBookmarkFolder.bind(this) this.state = { bookmarks: Immutable.List(), bookmarkFolders: Immutable.Map(), @@ -291,6 +315,13 @@ class AboutBookmarks extends React.Component { importBrowserData () { aboutActions.importBrowerDataNow() } + addBookmarkFolder () { + const newFolder = Immutable.fromJS({ + parentFolderId: this.state.selectedFolderId, + tags: [siteTags.BOOKMARK_FOLDER] + }) + aboutActions.openBookmarkEditor(newFolder) + } componentDidMount () { this.refs.bookmarkSearch.focus() } @@ -315,6 +346,7 @@ class AboutBookmarks extends React.Component {
+
bookmark.get('parentFolderId') === -1)} @@ -333,7 +365,7 @@ class AboutBookmarks extends React.Component { allBookmarkFolders={this.state.bookmarkFolders} sortable={false} draggable={!this.state.search} - tableID={this.selectedFolderId} /> + selectedFolderId={this.state.selectedFolderId} />
diff --git a/js/components/addEditBookmark.js b/js/components/addEditBookmark.js index 24044bf8a0..61d00f6f89 100644 --- a/js/components/addEditBookmark.js +++ b/js/components/addEditBookmark.js @@ -32,8 +32,11 @@ class AddEditBookmark extends ImmutableComponent { } get bookmarkNameValid () { - let title = (this.props.currentDetail.get('title') || this.props.currentDetail.get('customTitle')) - return ((typeof title === 'string') && title.trim().length > 0) || !this.isFolder + const title = this.props.currentDetail.get('title') || this.props.currentDetail.get('customTitle') + const location = this.props.currentDetail.get('location') + + return (typeof title === 'string' && title.trim().length > 0) || + (!this.isFolder && typeof location === 'string' && location.trim().length > 0) } get isFolder () { diff --git a/js/components/sortableTable.js b/js/components/sortableTable.js index c6a89fa07e..3f055f34ef 100644 --- a/js/components/sortableTable.js +++ b/js/components/sortableTable.js @@ -188,7 +188,11 @@ class SortableTable extends ImmutableComponent { 'sort-default': this.sortingDisabled || heading === this.props.defaultHeading})} data-sort-method={dataType === 'number' ? 'number' : undefined} data-sort-order={this.props.defaultHeadingSortOrder}> -
+ { + typeof heading === 'string' + ?
+ : heading + } })} diff --git a/less/about/bookmarks.less b/less/about/bookmarks.less index 83f9c7747c..84c06e4c8e 100644 --- a/less/about/bookmarks.less +++ b/less/about/bookmarks.less @@ -25,7 +25,6 @@ font-weight: 300; padding: 8px; box-sizing: border-box; - border-right: 1px solid @braveOrange; padding-left: 10px; -webkit-user-select: none; cursor: default; @@ -43,7 +42,6 @@ > .bookmarkFolderList { display: block; - border-right: 1px solid @braveOrange; height: 100%; .listItem >* { @@ -65,12 +63,13 @@ } .organizeView { flex-grow: 5; - + border-left: 1px solid @braveOrange; .sortableTable { -webkit-user-select: none; - th:nth-of-type(2), td.date { - width: 250px; - } + // Custom title column (has add bookmark icon) + th:first-of-type > div { display: block; } + // Bookmark last visited column + th:nth-of-type(2), td.date { width: 250px; } td { font-size: 11pt; padding-left: 10px; From dd818263c00a1b08ead9d0ca2151f83abde6f791 Mon Sep 17 00:00:00 2001 From: Suguru Hirahara Date: Tue, 18 Oct 2016 17:32:12 +0900 Subject: [PATCH 05/35] Update localization Auditors: @aekeus --- .../brave/locales/bn-BD/bookmarks.properties | 4 +- .../brave/locales/bn-BD/bravery.properties | 2 +- .../brave/locales/bn-BD/history.properties | 2 +- .../locales/bn-BD/preferences.properties | 42 ++++---- .../brave/locales/de-DE/app.properties | 16 +-- .../brave/locales/de-DE/bravery.properties | 2 +- .../locales/de-DE/preferences.properties | 6 +- .../brave/locales/eu/app.properties | 6 +- .../brave/locales/eu/bookmarks.properties | 2 +- .../locales/fr-FR/preferences.properties | 2 +- .../brave/locales/ja-JP/app.properties | 2 +- .../brave/locales/ja-JP/bookmarks.properties | 6 +- .../brave/locales/ja-JP/menu.properties | 8 +- .../locales/ja-JP/preferences.properties | 10 +- .../brave/locales/ms-MY/bookmarks.properties | 4 +- .../brave/locales/tr-TR/app.properties | 2 +- .../brave/locales/tr-TR/history.properties | 16 +-- .../brave/locales/tr-TR/menu.properties | 2 +- .../locales/tr-TR/preferences.properties | 100 +++++++++--------- 19 files changed, 117 insertions(+), 117 deletions(-) diff --git a/app/extensions/brave/locales/bn-BD/bookmarks.properties b/app/extensions/brave/locales/bn-BD/bookmarks.properties index d9c8b146dd..9c688435fc 100644 --- a/app/extensions/brave/locales/bn-BD/bookmarks.properties +++ b/app/extensions/brave/locales/bn-BD/bookmarks.properties @@ -5,5 +5,5 @@ partitionNumber={{partitionNumber}} সেশন bookmarksToolbar=বুকমার্ক টুলবার otherBookmarks=অন্যান্য বুকমার্ক bookmarkSearch.placeholder=বুকমার্কগুলি খুঁজুন -importBrowserData.title=Import browser data -allFolders=All Folders +importBrowserData.title=ব্রাউজার ডেটা ইমপোর্ট করুন +allFolders= সবগুলো ফোল্ডার diff --git a/app/extensions/brave/locales/bn-BD/bravery.properties b/app/extensions/brave/locales/bn-BD/bravery.properties index 00ef64f59b..ad6e5cba85 100644 --- a/app/extensions/brave/locales/bn-BD/bravery.properties +++ b/app/extensions/brave/locales/bn-BD/bravery.properties @@ -15,4 +15,4 @@ adsBlocked=বিজ্ঞপন এবং ট্র্যাকিং অবর scriptsBlockedNumber=স্ক্রিপ্ট অবরুদ্ধ fingerprintingBlocked=আঙ্গুলের ছাপজনিত পদ্ধতি অবরুদ্ধ httpReroutes=HTTPS আপগ্রেড -editBraveryGlobalSettings=Edit Bravery Global Settings… +editBraveryGlobalSettings=Bravery গ্লোবাল সেটিংস সম্পাদন করুন.... diff --git a/app/extensions/brave/locales/bn-BD/history.properties b/app/extensions/brave/locales/bn-BD/history.properties index 34f62fb66f..ce79dfdc97 100644 --- a/app/extensions/brave/locales/bn-BD/history.properties +++ b/app/extensions/brave/locales/bn-BD/history.properties @@ -5,4 +5,4 @@ removeSelectedItems=বাছাইকৃত জিনিসসমূহ অপ time=সময় title=শিরোনাম domain=ডোমেইন -historySearch.placeholder=Search history +historySearch.placeholder=ইতিহাস অনুসন্ধান করুন diff --git a/app/extensions/brave/locales/bn-BD/preferences.properties b/app/extensions/brave/locales/bn-BD/preferences.properties index 2182878af5..465119466d 100644 --- a/app/extensions/brave/locales/bn-BD/preferences.properties +++ b/app/extensions/brave/locales/bn-BD/preferences.properties @@ -59,12 +59,12 @@ bitcoinVisitAccount=BTC ট্রান্সফার করুন bitcoinBalance=দয়া করে হস্তান্তর করুন:  bitcoinWalletNotAvailable=Wallet এর তথ্য পাওয়া যায়নি। :( usd=$ -cancel=Cancel +cancel=বাতিল করুন done=সম্পন্ন off=বন্ধ on=চালু -ok=Ok -notifications=Show payment notifications +ok=Ok করুন +notifications=পেমেন্ট বিজ্ঞপ্তিগুলি দেখান moneyAdd=আপনার ডেবিট/ক্রেডিট কার্ড ব্যবহার করুন moneyAddSubTitle=বিটকয়েনের প্রয়োজন নেই! outsideUSAPayment=Buy Bitcoin at our recommended source @@ -73,7 +73,7 @@ add=ডেবিট/ক্রেডিট দিয়ে ফান্ড কর transferTime=স্থানান্তরণ হতে 40 মিনিট সময় লাগতে পারে addFundsTitle=তহবিল গুলো যোগ করুন addFunds=আপনার Brave টাকার ব্যাগে তহবিল যোগ করার তিনটি পদ্ধতি আছে -copy=Copy +copy=কপি করুন firstKey=Key 1 secondKey=Key 2 firstRecoveryKey=Recovery Key 1 @@ -118,8 +118,8 @@ offerSearchSuggestions=টাইপ করার সময় স্বয়ংক্ doNotTrackTitle=Do Not Track doNotTrack=ব্রাউজিং অনুরোধের সাথে 'Do Not Track' অনুরোধ পাঠান (ব্রাউজার পুনরায় চালু করতে হবে) blockCanvasFingerprinting=আঙ্গুলের ছাপজনিত নিরাপত্তা (কিছু ওয়েবসাইট কাজ নাও করতে পারে) -advancedSettings=Advanced Settings... -advancedSettingsTitle=Advanced Settings for Brave Payments +advancedSettings=উন্নত সেটিংস +advancedSettingsTitle=Brave পেমেন্টস্ জন্য উন্নত সেটিংস ledgerRecoveryTitle=Recover your Brave wallet ledgerRecoverySubtitle=Enter your recovery keys below ledgerRecoveryContent=The balance of the recovered wallet will be transferred to your new Brave wallet. The old wallet will still exist as an empty wallet. @@ -130,9 +130,9 @@ minimumVisitsSetting=Minimum visits for publisher relevancy backupLedger=Backup your wallet balanceRecovered={{balance}} BTC was recovered and transferred to your Brave wallet. recoverLedger=Recover your wallet -recover=Recover +recover=পুনরুদ্ধার করুন printKeys=Print keys -saveRecoveryFile=Save recovery file... +saveRecoveryFile= রিকভারি ফাইল সংরক্ষণ করুন ... advancedPrivacySettings=অতিরিক্ত গোপনীয়তা সেটিংস: braveryDefaults=Bravery Defaults blockAttackSites=আক্রমণাত্মক সাইট ব্লক করুন (এখনোও ফিচারটি চালু হয়নি) @@ -151,7 +151,7 @@ enableFlashSubtext=Flash support এখনো পরীক্ষামূলক enableFlashSubtextLinux=Flash support এখনো পরীক্ষামূলক পর্যায়ে এবং এতে pepperflashplugin-nonfree প্যাকেজের প্রয়োজন। managePasswords=Manage passwords… sitePermissions=সাইট অনুমতিসমূহ সংরক্ষণ করুন -sitePermissionsExceptions=Saved Site Exceptions +sitePermissionsExceptions=সাইট ব্যতিক্রমসমূহ সংরক্ষণ করুন selectedLanguage=ভাষা: bookmarkToolbarSettings=বুকমার্ক বার সেটিংস bookmarkToolbar=সর্বদা বুকমার্ক বার দেখান @@ -184,7 +184,7 @@ ru=রুশিয়ান zh-CN=চাইনিজ eu=Basque ko-KR=কোরিয়ান -pl-PL=Polish +pl-PL=পোলিশ it-IT=ইতালিও disconnect=সংযোগ বিচ্ছিন্নকরন update=হালনাগাদ @@ -198,7 +198,7 @@ setDefaultButton=Set as default… setDefaultLabel=Brave আপনার ডিফল্ট ব্রাউজার নয়: setDefaultAlwaysSwitch=শুরুতে সর্বদা চেক করুন importLabel=ব্রাউজার ডেটা ইম্পোর্ট করুন : -importButton=Import now… +importButton=এখন ইমপোর্ট করুন.. downloadsLabel=আমার ডাউনলোডসমূহ এখানে সংরক্ষণ করুন: downloadsInput=~/downloads/ downloadsAskAlwaysSwitch=সর্বদা আমাকে জিজ্ঞাসা করুন কোথায় ফাইল সংরক্ষণ করতে হবে @@ -213,16 +213,16 @@ fullscreenPermission=ফুলস্ক্রিন দেখার অনুম openExternalPermission=বাইরের অ্যাপ্লিকেশন খুলুন protocolRegistrationPermission=প্রোটোকল নিবন্ধীকরণ shieldsUp=All Brave Shields -ledgerPaymentsShown=Brave Payments +ledgerPaymentsShown= Brave পেমেন্টস্ flash=Adobe Flash Player চালু করুন -allowOnce=Allow once -allowUntilRestart=Allow until restart +allowOnce=একবার অনুমোদন করুন +allowUntilRestart=রিস্টার্ট না হওয়া পর্যন্ত অনুমতি দিন flashAllowAlways={{time}}পর্যন্ত অনুমতি দিন alwaysAllow=সর্বদাই অনুমোদিত alwaysDeny=সর্বদাই অননুমোদিত appearanceSettings=ব্রাউজারের প্রদর্শন সেটিংস autoHideMenuBar=মেন্যু বার গোপন করুন -disableTitleMode=Always show the URL bar +disableTitleMode=সর্বদা URL বার দেখান tabsSettings=ট্যাব সেটিংস braveStaysUpdated=Brave সবসময় আপডেট থাকে। generalSettings=সাধারণ সেটিংস @@ -234,15 +234,15 @@ cachedImagesAndFiles=ক্যাশে জমা হওয়া চিত্র allSiteCookies=সকল সাইটের কুকিজ autofillData=স্বতঃপূর্ণ তথ্য autocompleteData=স্বয়ংসম্পূর্ণ তথ্য -savedSiteSettings=Saved site settings and permissions +savedSiteSettings=সাইট সেটিংস এবং অনুমতিসমূহ সংরক্ষিত passwordsAndForms=পাসওয়ার্ড এবং ফর্মসমূহ tabSettings=ট্যাব সেটিংস clearBrowsingDataNow=ব্রাউজিং তথ্য মুছুন এখনই... autofillSettings=Autofill সেটিংস -manageAutofillData=Manage Autofill Data… -manageAdblockSettings=Manage Adblock Settings… +manageAutofillData=স্বতঃপূর্ণ তথ্য পরিচালনা করুন.. +manageAdblockSettings=Adblock সেটিংস পরিচালনা করুন... enableAutofill=Autofill চালু করুন -importBrowserData=Import Browser Data -importNow=Import now… +importBrowserData=ব্রাউজার ডেটা ইম্পোর্ট করুন +importNow=এখন ইমপোর্ট করুন.. clearAll=Clear all -sendCrashReports=Send anonymous crash reports to Brave (requires browser restart) +sendCrashReports=বেনামী ক্র্যাশ প্রতিবেদন পাঠান (ব্রাউজার পুনরায় চালু করা প্রয়োজন) diff --git a/app/extensions/brave/locales/de-DE/app.properties b/app/extensions/brave/locales/de-DE/app.properties index eb5aaf353a..183a53cb80 100644 --- a/app/extensions/brave/locales/de-DE/app.properties +++ b/app/extensions/brave/locales/de-DE/app.properties @@ -143,15 +143,15 @@ shields=Schutz shieldsDown=Aus shieldsUp=An advancedControls=Erweiterte Einstellungen -permissionCameraMicrophone=Kamera und/oder Mikrofon benutzen -permissionLocation=Standort einsehen -permissionNotifications=Benachrichtigungen anzeigen -permissionWebMidi=Web-MIDI verwenden -permissionDisableCursor=Mauszeiger deaktivieren -permissionFullscreen=In den Vollbildmodus wechseln -permissionExternal=Externe Anwendung öffnen +permissionCameraMicrophone=den Zugriff auf Webcam und/oder Mikrofon +permissionLocation=das Einsehen des Standortes +permissionNotifications=das Anzeigen von Benachrichtigungen +permissionWebMidi=die Verwendung von Web-MIDI +permissionDisableCursor=das Deaktivieren des Mauszeigers +permissionFullscreen=das Wechseln in den Vollbildmodus +permissionExternal=das Öffnen einer externen Anwendung permissionProtocolRegistration=Protokoll-Handler registrieren -permissionMessage={{host}}, {{permission}} erlauben? +permissionMessage={{host}} {{permission}} erlauben? tabsSuggestionTitle=Tabs bookmarksSuggestionTitle=Lesezeichen historySuggestionTitle=Verlauf diff --git a/app/extensions/brave/locales/de-DE/bravery.properties b/app/extensions/brave/locales/de-DE/bravery.properties index 772f8c76be..8998a89e54 100644 --- a/app/extensions/brave/locales/de-DE/bravery.properties +++ b/app/extensions/brave/locales/de-DE/bravery.properties @@ -6,7 +6,7 @@ noScript=Skripte blockieren safeBrowsing=Phishing / Schadsoftware blockieren blockPopups=Popups blockieren fingerprintingProtection=Schutz vor Fingerprinting -adControl=Richtlinie für Werbung +adControl=Richtlinien für Werbung cookieControl=Richtlinie für Cookies allowAllCookies=Alle Cookies erlauben adBlock=Werbeblocker diff --git a/app/extensions/brave/locales/de-DE/preferences.properties b/app/extensions/brave/locales/de-DE/preferences.properties index 59fad93fe9..aec9ccd1e2 100644 --- a/app/extensions/brave/locales/de-DE/preferences.properties +++ b/app/extensions/brave/locales/de-DE/preferences.properties @@ -33,7 +33,7 @@ status=Status statusNextReconcileDate=Nächste Einzahlung am {{reconcileDate}}. createWallet=Konto erstellen createWalletStatus=Klicken Sie auf die 'Konto erstellen' Schaltfläche um zu beginnen. -creatingWallet=wird eröffnet... +creatingWallet=wird erstellt... creatingWalletStatus=Konto wird erstellt... createdWalletStatus=Ihr Konto ist bereit! pendingFundsStatus=Ausstehende Geldmittel: {{funds}}. Neu hinzugefügte Geldmittel können bis zum Erscheinen 30+ Minuten in Anspruch nehmen. @@ -209,7 +209,7 @@ geolocationPermission=Standortzugriff notificationsPermission=Benachrichtigungen anzeigen midiSysexPermission=Web MIDI verwenden pointerLockPermission=Ihren Mauszeiger deaktivieren -fullscreenPermission=Vollbildzugriff +fullscreenPermission=Zugriff auf den Vollbildmodus openExternalPermission=Externe Anwendungen öffnen protocolRegistrationPermission=Protokollregistrierung shieldsUp=Gesamter Brave Schutz @@ -244,5 +244,5 @@ manageAdblockSettings=Werbeblocker verwalten... enableAutofill=Autofill aktivieren importBrowserData=Browser-Daten importieren importNow=Jetzt importieren... -clearAll=Alles löschen +clearAll=Leeren sendCrashReports=Absturzberichte anonym an Brave senden (benötigt einen Neustart des Browsers) diff --git a/app/extensions/brave/locales/eu/app.properties b/app/extensions/brave/locales/eu/app.properties index 11a2ff3ba8..eea37c7a96 100644 --- a/app/extensions/brave/locales/eu/app.properties +++ b/app/extensions/brave/locales/eu/app.properties @@ -95,7 +95,7 @@ blockedAds={{blockedAdsSize}} Ads ordezkatuta redirectedResources={{redirectedResourcesSize}} Baliabideak HTTPS-ra eguneratuta updateNow=Eguneratu updateChecking=Eguneraketak bilatzen... -updateDownloading=Eguneraketak topatu dira, deskargatzen hasiko dria... +updateDownloading=Eguneraketak topatu dira, deskargatzeko prozezua hasiko da... updateLater=Gero updateDetails=Xehetasunak updateError=Ez ditugu eguneraketak topatu. @@ -166,8 +166,8 @@ addFundsNotification=Zure Brave ordaintzeko kontua dirua sartzeko zain dago. reconciliationNotification=Berri onak! Bravek atsegin dituzun editore webak 24 ordutan ordainduko ditu. reviewSites=Aukeratutako lekuak birpasatu addFunds=Fonduak gehitu -notificationPasswordWithUserName=Baravek pasahitzak gogoratzea nahi duzu {{username}} {{origin}}? -notificationPassword=Baravek pasahitzak gogoratzea nahi duzu {{origin}}? +notificationPasswordWithUserName=Baravek pasahitzak gogoraztea nahi duzu? Erabiltzailea: {{username}} Non: {{origin}} +notificationPassword=Baravek pasahitzak gogoratzea nahi duzu? Non: {{origin}} notificationPasswordSettings=[Password settings] notificationPaymentDone=Zure transferentzia {{amount}} {{currency}} ondo egin da. Eskerrik asko notificationTryPayments=Prest zaude gehien erabiltzen dituzun guneak laguntzeko? diff --git a/app/extensions/brave/locales/eu/bookmarks.properties b/app/extensions/brave/locales/eu/bookmarks.properties index 5ac3868511..be177050e1 100644 --- a/app/extensions/brave/locales/eu/bookmarks.properties +++ b/app/extensions/brave/locales/eu/bookmarks.properties @@ -6,4 +6,4 @@ bookmarksToolbar=Laster-marken erreminta taula otherBookmarks=Beste laster-markak bookmarkSearch.placeholder=Laster-markak bilatu importBrowserData.title=Import browser data -allFolders=All Folders +allFolders=Karpeta guztiak diff --git a/app/extensions/brave/locales/fr-FR/preferences.properties b/app/extensions/brave/locales/fr-FR/preferences.properties index ce8a2c7c43..ad58a9682c 100644 --- a/app/extensions/brave/locales/fr-FR/preferences.properties +++ b/app/extensions/brave/locales/fr-FR/preferences.properties @@ -125,7 +125,7 @@ ledgerRecoverySubtitle=Entrez vos clés de récupération ci-dessous ledgerRecoveryContent=Le solde du porte-monnaie récupéré sera transféré à votre nouveau porte-monnaie Brave. L'ancien porte-monnaie existera toujours comme un porte-monnaie vide. ledgerBackupTitle=Sauvegarder votre porte-monnaie Brave ledgerBackupContent=Ci-dessous, vous trouverez les clés de récupération anonymisées qui sont nécessaires si jamais vous perdez l'accès à cet ordinateur. -minimumPageTimeSetting=Délai minimal de la page avant d'enregistrer une visite +minimumPageTimeSetting=Durée minimale d'affichage avant de comptabiliser une visite minimumVisitsSetting=Visites minimales avant de comptabiliser backupLedger=Sauvegarder votre porte-monnaie balanceRecovered={{balance}} BTC ont été récupérés et transférés à votre portefeuille Brave. diff --git a/app/extensions/brave/locales/ja-JP/app.properties b/app/extensions/brave/locales/ja-JP/app.properties index 2d88f674b8..0df49d5137 100644 --- a/app/extensions/brave/locales/ja-JP/app.properties +++ b/app/extensions/brave/locales/ja-JP/app.properties @@ -126,7 +126,7 @@ flashInstalled=Flashはすでにインストールされています。設定 > goToPrefs=設定を開く goToAdobe=Flashを再インストール allowFlashPlayer={{origin}}でFlash Playerの実行を許可しますか? -ledgerBackupText=Your ledger keys are {{paymentId}} and {{passphrase}} +ledgerBackupText=あなたの台帳キーは{{paymentId}}と{{passphrase}}です error=エラー caseSensitivity=大文字小文字を区別する nameField=タイトル diff --git a/app/extensions/brave/locales/ja-JP/bookmarks.properties b/app/extensions/brave/locales/ja-JP/bookmarks.properties index c1b386f74a..c8d18ca1b0 100644 --- a/app/extensions/brave/locales/ja-JP/bookmarks.properties +++ b/app/extensions/brave/locales/ja-JP/bookmarks.properties @@ -1,9 +1,9 @@ bookmarks=ブックマーク -bookmarkManager=Bookmark Manager +bookmarkManager=ブックマーク マネージャー folders=フォルダー partitionNumber=セッション {{partitionNumber}} bookmarksToolbar=ブックマーク ツールバー otherBookmarks=他のブックマーク bookmarkSearch.placeholder=ブックマークを検索 -importBrowserData.title=Import browser data -allFolders=All Folders +importBrowserData.title=ブラウザーデータをインポート +allFolders=全てのフォルダー diff --git a/app/extensions/brave/locales/ja-JP/menu.properties b/app/extensions/brave/locales/ja-JP/menu.properties index 9a41b3a3c1..c8bd4717d6 100644 --- a/app/extensions/brave/locales/ja-JP/menu.properties +++ b/app/extensions/brave/locales/ja-JP/menu.properties @@ -96,7 +96,7 @@ editBookmark=ブックマークを編集 deleteFolder=フォルダーを削除 deleteBookmark=ブックマークを削除 deleteHistoryEntry=履歴を消去 -deleteHistoryEntries=Delete History Entries +deleteHistoryEntries=履歴を消去 deleteLedgerEntry=今後このサイトを含めない stop=停止 clone=複製 @@ -108,13 +108,13 @@ muteTab=タブをミュート disableTrackingProtection=トラッキング保護を無効にする disableAdBlock=広告のブロックを無効にする openInNewTab=新しいタブで開く -openInNewTabs=Open Links in New Tabs +openInNewTabs=新しいタブで開く openAllInTabs=全てのブックマークを開く openInNewPrivateTab=新しいプライベートタブで開く -openInNewPrivateTabs=Open Links in New Private Tabs +openInNewPrivateTabs=新しいプライベートタブで開く openInNewWindow=新しいウィンドウで開く openInNewSessionTab=新しいセッションタブで開く -openInNewSessionTabs=Open Links in New Session Tabs +openInNewSessionTabs=新しいセッションタブで開く copyLinkAddress=リンクのアドレスをコピー copyEmailAddress=メールアドレスをコピー saveLinkAs=名前を付けてリンクを保存 diff --git a/app/extensions/brave/locales/ja-JP/preferences.properties b/app/extensions/brave/locales/ja-JP/preferences.properties index c43fc7a147..946a81f687 100644 --- a/app/extensions/brave/locales/ja-JP/preferences.properties +++ b/app/extensions/brave/locales/ja-JP/preferences.properties @@ -64,7 +64,7 @@ done=完了しました off=オフ on=オン ok=Ok -notifications=Show payment notifications +notifications=支払の通知を表示 moneyAdd=デビットもしくはクレジットカードを使う moneyAddSubTitle=ビットコインは必要ありません! outsideUSAPayment=Buy Bitcoin at our recommended source @@ -74,7 +74,7 @@ transferTime=送金には40分程度かかることがあります addFundsTitle=入金する addFunds=Braveウォレットには以下の3つの方法で入金できます copy=Copy -firstKey=Key 1 +firstKey=キー 1 secondKey=Key 2 firstRecoveryKey=Recovery Key 1 secondRecoveryKey=Recovery Key 2 @@ -127,11 +127,11 @@ ledgerBackupTitle=Backup your Brave wallet ledgerBackupContent=Below, you will find the anonymized recovery keys that are required if you ever lose access to this computer. minimumPageTimeSetting=Minimum page time before logging a visit minimumVisitsSetting=Minimum visits for publisher relevancy -backupLedger=Backup your wallet +backupLedger=ウォレットをバックアップ balanceRecovered={{balance}} BTC was recovered and transferred to your Brave wallet. recoverLedger=Recover your wallet recover=Recover -printKeys=Print keys +printKeys=キーを印刷 saveRecoveryFile=Save recovery file... advancedPrivacySettings=プライバシーについての詳細設定 braveryDefaults=Braveryの既定値 @@ -240,7 +240,7 @@ tabSettings=タブの設定 clearBrowsingDataNow=使用履歴を消去 autofillSettings=自動入力設定 manageAutofillData=自動入力のデータを管理 -manageAdblockSettings=Manage Adblock Settings… +manageAdblockSettings=広告ブロックの設定 enableAutofill=自動入力を有効にする importBrowserData=ブラウザーデータをインポート importNow=今すぐインポート diff --git a/app/extensions/brave/locales/ms-MY/bookmarks.properties b/app/extensions/brave/locales/ms-MY/bookmarks.properties index 9cd33994d2..efc04af237 100644 --- a/app/extensions/brave/locales/ms-MY/bookmarks.properties +++ b/app/extensions/brave/locales/ms-MY/bookmarks.properties @@ -5,5 +5,5 @@ partitionNumber=Sesi {{partitionNumber}} bookmarksToolbar=Bar alatan Tandabuku otherBookmarks=Tandabuku Lain bookmarkSearch.placeholder=Cari tandabuku -importBrowserData.title=Import browser data -allFolders=All Folders +importBrowserData.title=Import data pelayar +allFolders=Semua Folder diff --git a/app/extensions/brave/locales/tr-TR/app.properties b/app/extensions/brave/locales/tr-TR/app.properties index f2d3d58f13..cd972f5d55 100644 --- a/app/extensions/brave/locales/tr-TR/app.properties +++ b/app/extensions/brave/locales/tr-TR/app.properties @@ -65,7 +65,7 @@ setDefaultSearch=Varsayılan arama motoru olarak {{title}} belirle viewPageSource=Sayfa Kaynağını Görüntüle menuButton.title=Menü emptyFolderItem=(boş) -moreBookmarks=More bookmarks… +moreBookmarks=Daha Fazla Yerimi fullScreenModeWarning={{host}} Tam ekran modunda. Çıkış için ESC kullanın. braveMenuTotalReplacements=Toplam Değişiklikler: {{count}} basicAuthRequired=Onaylama Gerekli diff --git a/app/extensions/brave/locales/tr-TR/history.properties b/app/extensions/brave/locales/tr-TR/history.properties index 8e7e0dfab1..a9c02c03ae 100644 --- a/app/extensions/brave/locales/tr-TR/history.properties +++ b/app/extensions/brave/locales/tr-TR/history.properties @@ -1,8 +1,8 @@ -historyTitle=History -history=History -clearBrowsingDataNow=Clear browsing data -removeSelectedItems=Remove selected items -time=Time -title=Title -domain=Domain -historySearch.placeholder=Search history +historyTitle=Geçmiş +history=Geçmiş +clearBrowsingDataNow=Tarayıcı verilerini temizle +removeSelectedItems=Seçili Öğeleri Kaldır +time=Zaman +title=Başlık +domain=Alan +historySearch.placeholder=Arama Geçmişi diff --git a/app/extensions/brave/locales/tr-TR/menu.properties b/app/extensions/brave/locales/tr-TR/menu.properties index d4179415de..bcc0d24f76 100644 --- a/app/extensions/brave/locales/tr-TR/menu.properties +++ b/app/extensions/brave/locales/tr-TR/menu.properties @@ -97,7 +97,7 @@ deleteFolder=Klasörü Sil deleteBookmark=Yerimini Sil deleteHistoryEntry=Yakın Geçmişi Temizle deleteHistoryEntries=Yakın Geçmişi Temizle -deleteLedgerEntry=Never include this site +deleteLedgerEntry=Asla Bu Siteyi Dahil Etme stop=Dur clone=Dondur reloadTab=Yenile diff --git a/app/extensions/brave/locales/tr-TR/preferences.properties b/app/extensions/brave/locales/tr-TR/preferences.properties index 542caf2e17..187beb3280 100644 --- a/app/extensions/brave/locales/tr-TR/preferences.properties +++ b/app/extensions/brave/locales/tr-TR/preferences.properties @@ -5,12 +5,12 @@ search=Ara tabs=Sekmeler sync=Eşitle privacy=Gizlilik -shields=Shields +shields=Kalkanlar security=Güvenlik -visit=visit +visit=Ziyaret visits=Ziyaretler publisher=Site -publishers=Publishers +publishers=Yayıncılar payments=Ödemeler paymentsWelcomeTitle=Brave Ödemelerine Hoşgeldiniz! paymentsWelcomeText1=Brave has created a simple way to for you to contribute to the sites you use most. @@ -20,8 +20,8 @@ paymentsWelcomeText4=Brave Payments is currently in Beta. With your help and fee paymentsWelcomeText5=Note: Brave Payments uses a country-lookup service in order to provide better user wallet funding options based on your location. This service is completely anonymous. paymentsWelcomeText6=Need more info? paymentsWelcomeText7=Brave Ödemesi için... -paymentsWelcomeLink=View the FAQ -paymentsSidebarText1=Our Partners +paymentsWelcomeLink=SSS Görüntüle +paymentsSidebarText1=Ortaklarımız paymentsSidebarText2=All transaction IP addresses are anonymized with technology from: paymentsSidebarText3=Brave Bitcoin Wallets are provided through a partnership with: paymentsSidebarText4=Your contributions in the form of credit cards and bank cards are handled by: @@ -39,8 +39,8 @@ createdWalletStatus=Cüzdanınız Hazır! pendingFundsStatus=Pending funds: {{funds}}. Newly-added funds may take 30+ minutes to appear. insufficientFundsStatus=Your account balance is under your budget for this month. Please add funds. defaultWalletStatus=Sevdiğiniz web sitelerine destek ve yardımcı olduğunuz için teşekkürler! -tableEmptyText=No table data. -notificationEmptyText=Top publisher visits +tableEmptyText=Veri Tablosu Yoktur +notificationEmptyText=Popüler Yayıncı Ziyaretleri syncEmptyText=Sync settings coming soon. bitcoin=Bitcoin bitcoinAdd=Mevcut Bitcoin Cüzdan/Hesap Kullan @@ -59,11 +59,11 @@ bitcoinVisitAccount=Bitcoin Transferi bitcoinBalance=Please transfer:  bitcoinWalletNotAvailable=Wallet information not available. :( usd=$ -cancel=Cancel +cancel=İptal done=Tamam off=Kapalı on=Açık -ok=Ok +ok=Tamam notifications=Show payment notifications moneyAdd=Use your debit/credit card moneyAddSubTitle=No Bitcoin needed! @@ -73,12 +73,12 @@ add=Fund with debit/credit transferTime=Transfer 40 dakika kadar sürebilir addFundsTitle=Bakiye Ekle addFunds=Three ways to add funds to your Brave Wallet -copy=Copy -firstKey=Key 1 -secondKey=Key 2 -firstRecoveryKey=Recovery Key 1 -secondRecoveryKey=Recovery Key 2 -addFundsAlternate=Add funds to your Brave Wallet +copy=Kopyala +firstKey=Anahtar 1 +secondKey=Anahtar 2 +firstRecoveryKey=Anahtar 1 Kurtar +secondRecoveryKey=Anahtar 2 Kurtar +addFundsAlternate=Brave Cüzdanınıza Bakiye Ekleyin copyToClipboard=Panoya Kopyala smartphoneTitle=Bitcoin aktarmak için akıllı telefon uygulamasını kullanın displayQRCode=QR Kodu Görüntüsü @@ -88,12 +88,12 @@ totalAmount=Toplam Tutar receiptLink=Receipt Link advanced=Gelişmiş rank=Rank -views=Views -timeSpent=Time Spent +views=Görünümler +timeSpent=Geçen Süre include=Include percentage=% bravery=Bravery -hintsTitle=Helpful hints +hintsTitle=Yardımcı İpuçları hint0=The Bravery panel allows you turn HTTPS Everywhere on or off. HTTPS Everywhere automatically rewrites your HTTP traffic to HTTPS for supported sites to keep you more secure. hint1=Brave will always auto-update for you, but you can check for an update on demand in the menu. hint2=The File menu allows you to create a New Session Tab. Session tabs are like any other tab but they run in a different user profile. This allows you to login to the same sites multiple times with the same browser. @@ -104,13 +104,13 @@ startsWithOptionLastTime=my windows / tabs from last time startsWithOptionHomePage=Anasayfa startsWithOptionNewTabPage=Yeni Sekme Sayfası myHomepage=Anasayfayı Aç -default=Default +default=Varsayılan searchEngine=Arama Ayarları engineGoKey=Engine Go Key (Type First) switchToNewTabs=Switch to new tabs immediately -paintTabs=Show tabs in page theme color +paintTabs=Sekmelerde Sayfa Tema Rengini Göster tabsPerTabPage=Number of tabs per tab set: -showTabPreviews=Show tab previews on hover +showTabPreviews=Sekmelerde Önizleme Göster showHistoryMatches=Show history matches showBookmarkMatches=Show bookmark matches showOpenedTabMatches=Show tab matches @@ -118,25 +118,25 @@ offerSearchSuggestions=Autocomplete search term as you type doNotTrackTitle=Do Not Track doNotTrack=Send a 'Do Not Track' header with browsing requests (requires browser restart) blockCanvasFingerprinting=Fingerprinting Protection (may break some websites) -advancedSettings=Advanced Settings... -advancedSettingsTitle=Advanced Settings for Brave Payments -ledgerRecoveryTitle=Recover your Brave wallet -ledgerRecoverySubtitle=Enter your recovery keys below +advancedSettings=Gelişmiş ayarlar +advancedSettingsTitle=Brave Ödemeleri Gelişmiş Ayarları +ledgerRecoveryTitle=Brave Cüzdanını Kurtar +ledgerRecoverySubtitle=Aşağıdaki Kurtarma Anahtarlarını Girin ledgerRecoveryContent=The balance of the recovered wallet will be transferred to your new Brave wallet. The old wallet will still exist as an empty wallet. -ledgerBackupTitle=Backup your Brave wallet +ledgerBackupTitle=Brave Cüzdanını Yedekle ledgerBackupContent=Below, you will find the anonymized recovery keys that are required if you ever lose access to this computer. minimumPageTimeSetting=Minimum page time before logging a visit minimumVisitsSetting=Minimum visits for publisher relevancy -backupLedger=Backup your wallet +backupLedger=Cüzdanını Yedekle balanceRecovered={{balance}} BTC was recovered and transferred to your Brave wallet. -recoverLedger=Recover your wallet -recover=Recover -printKeys=Print keys -saveRecoveryFile=Save recovery file... -advancedPrivacySettings=Advanced Privacy Settings: +recoverLedger=Cüzdanını Kurtar +recover=Kurtarma +printKeys=Anahtarları Yazdır +saveRecoveryFile=Kurtarma Dosyasını Kaydedin... +advancedPrivacySettings=Gelişmiş Gizlilik Ayarları: braveryDefaults=Varsayılan Brave Ayarları blockAttackSites=Block reported attack sites (not available yet) -passwordManager=Password Manager +passwordManager=Şifre Yöneticisi searchSettings=Arama Ayarları locationBarSettings=Search Bar Options pluginSettings=Eklenti Ayarları @@ -150,14 +150,14 @@ enableFlash=Adobe Flash desteği aktif (browser yeniden başlatması için gere enableFlashSubtext=Flash support is experimental and requires Pepper Flash to be installed from enableFlashSubtextLinux=Flash support is experimental and requires the pepperflashplugin-nonfree package. managePasswords=Şifreleri Yönet -sitePermissions=Saved Site Permissions +sitePermissions=Kayıtlı Sitesi İzinleri sitePermissionsExceptions=Saved Site Exceptions selectedLanguage=Dil -bookmarkToolbarSettings=Bookmarks Bar Settings +bookmarkToolbarSettings=Yerimleri Araç Çubuğu Ayarları bookmarkToolbar=Always show the bookmarks bar bookmarkToolbarShowFavicon=Faviconlar -bookmarkToolbarShowOnlyFavicon=Show only favicon -contentSettings=Content Settings +bookmarkToolbarShowOnlyFavicon=Sadece Simge Göster +contentSettings=İçerik Ayarları useHardwareAcceleration=Use hardware acceleration when available (requires browser restart) useSmoothScroll=Enable smooth scrolling (requires browser restart) defaultZoomLevel=Varsayılan Yakınlaştırma Seviyesi @@ -186,21 +186,21 @@ eu=Baskça ko-KR=Korece pl-PL=Lehçe it-IT=İtalyanca -disconnect=Disconnect +disconnect=Bağlantıyı Kes update=Güncelleme -default=Default -searchEngines=Search Engines +default=Varsayılan +searchEngines=Arama Ayarları engineGoKey=Engine Go Key (Type First) -braveSoftware=Brave Software -emailAddress=Email address -viewLog=View Log -setDefaultButton=Set as default… -setDefaultLabel=Brave is not your default browser: -setDefaultAlwaysSwitch=Always check on startup -importLabel=Browser data import: -importButton=Import now… +braveSoftware=Brave Yazılım +emailAddress=Email Adres +viewLog=Loga bak +setDefaultButton=Varsayılan Olarak Ayarla.. +setDefaultLabel=Brave Senin Varsayılan Tarayıcın Değil: +setDefaultAlwaysSwitch=Başlangıçta Her Zaman Kontrol Et +importLabel=Tarayıcı Verilerini Yükle: +importButton=Şimdi Yükle... downloadsLabel=Save my downloads here: -downloadsInput=~/downloads/ +downloadsInput=~/İndirilenler/ downloadsAskAlwaysSwitch=Always ask me where to save files notifyOnUpdate=Notify me when an update is available showHomeButton=URL çubuğunda Anasayfa düğmesini göster @@ -223,7 +223,7 @@ alwaysDeny=Sürekli reddet appearanceSettings=Görünüm Ayarları autoHideMenuBar=Menü çubuğunu varsayılan olarak gizle disableTitleMode=Url çubuğunu her zaman göster -tabsSettings=Tabs Settings +tabsSettings=Sekme Ayarları braveStaysUpdated=Brave always stays updated. generalSettings=Genel Ayarlar privateData=Özel Veriler From 774e562028f0f14a33289fef1f5cb00f70f4bebf Mon Sep 17 00:00:00 2001 From: Jon Kuperman Date: Tue, 18 Oct 2016 01:48:12 -0700 Subject: [PATCH 06/35] convert toolbar icons to svg --- js/components/main.js | 4 +-- js/components/navigationBar.js | 15 +++++------ less/navigationBar.less | 48 +++++++++++++++++++++++++++++----- 3 files changed, 49 insertions(+), 18 deletions(-) diff --git a/js/components/main.js b/js/components/main.js index e4364831ec..0d82f1b892 100644 --- a/js/components/main.js +++ b/js/components/main.js @@ -889,14 +889,14 @@ class Main extends ImmutableComponent {
: this.loading - ?
+
+
+ } +} + +module.exports = CheckDefaultBrowserDialog diff --git a/app/sessionStore.js b/app/sessionStore.js index 3309bf64b4..ea3da5b626 100644 --- a/app/sessionStore.js +++ b/app/sessionStore.js @@ -234,6 +234,8 @@ module.exports.cleanAppData = (data, isShutdown) => { data.temporarySiteSettings = {} // Delete Flash state since this is checked on startup delete data.flashInitialized + // Delete defaultBrowserCheckComplete state since this is checked on startup + delete data.defaultBrowserCheckComplete // Delete Recovery status on shut down try { delete data.ui.about.preferences.recoverySucceeded diff --git a/docs/appActions.md b/docs/appActions.md index a8647eac99..2d1ceb2341 100644 --- a/docs/appActions.md +++ b/docs/appActions.md @@ -466,6 +466,22 @@ Dispatches a message to submit feedback +### defaultBrowserUpdated(useBrave) + +Dispatch a message to set default browser + +**Parameters** + +**useBrave**: `boolean`, whether set Brave as default browser + + + +### defaultBrowserCheckComplete() + +Dispatch a message to indicate default browser check is complete + + + * * * diff --git a/docs/state.md b/docs/state.md index c8844ee51e..3bafe3e2d3 100644 --- a/docs/state.md +++ b/docs/state.md @@ -150,6 +150,8 @@ AppStore 'general.downloads.default-save-path': string, // default path for saving files 'general.autohide-menu': boolean, // true if the Windows menu should be autohidden 'general.disable-title-mode': boolean, // true if title mode should always be disabled + 'general.check-default-on-startup': boolean, // true to check whether brave is default browser on startup + 'general.is-default-browser': boolean, // true if brave is default browser 'search.default-search-engine': string, // name of search engine, from js/data/searchProviders.js 'search.offer-search-suggestions': boolean, // true if suggestions should be offered from the default search engine when available. 'tabs.switch-to-new-tabs': boolean, // true if newly opened tabs should be focused immediately @@ -205,7 +207,8 @@ AppStore }, menu: { template: object // used on Windows and by our tests: template object with Menubar control - } + }, + defaultBrowserCheckComplete: boolean // true to indicate default browser check is complete } ``` @@ -527,6 +530,12 @@ WindowStore favorites: boolean, mergeFavorites: boolean, cookies: boolean + }, + modalDialogDetail: { + [className]: { + Object // props + }, + ... } } ``` diff --git a/docs/windowActions.md b/docs/windowActions.md index bd7426feca..b7a9c27a35 100644 --- a/docs/windowActions.md +++ b/docs/windowActions.md @@ -914,6 +914,18 @@ Fired when window receives or loses focus +### setModalDialogDetail(className, props) + +Set Modal Dialog detail + +**Parameters** + +**className**: `string`, name of modal dialog + +**props**: `Object`, properties of the modal dialog + + + * * * diff --git a/js/about/aboutActions.js b/js/about/aboutActions.js index 0b49bdc1ae..76fbf8159a 100644 --- a/js/about/aboutActions.js +++ b/js/about/aboutActions.js @@ -328,6 +328,16 @@ const aboutActions = { originalDetail, destinationDetail }) + }, + + /** + * Dispatch a message to set default browser + */ + setAsDefaultBrowser: function () { + aboutActions.dispatchAction({ + actionType: appConstants.APP_DEFAULT_BROWSER_UPDATED, + useBrave: true + }) } } module.exports = aboutActions diff --git a/js/about/preferences.js b/js/about/preferences.js index daab6c2f1f..08eba2cebe 100644 --- a/js/about/preferences.js +++ b/js/about/preferences.js @@ -581,6 +581,7 @@ class GeneralTab extends ImmutableComponent { super() this.importBrowserDataNow = this.importBrowserDataNow.bind(this) this.onChangeSetting = this.onChangeSetting.bind(this) + this.setAsDefaultBrowser = this.setAsDefaultBrowser.bind(this) } importBrowserDataNow () { @@ -598,6 +599,10 @@ class GeneralTab extends ImmutableComponent { this.props.onChangeSetting(key, value) } + setAsDefaultBrowser () { + aboutActions.setAsDefaultBrowser() + } + enabled (keyArray) { return keyArray.every((key) => getSetting(key, this.props.settings) === true) } @@ -613,6 +618,13 @@ class GeneralTab extends ImmutableComponent { const disableShowHomeButton = !homepage || !homepage.length const disableBookmarksBarSelect = !getSetting(settings.SHOW_BOOKMARKS_TOOLBAR, this.props.settings) const defaultLanguage = this.props.languageCodes.find((lang) => lang.includes(navigator.language)) || 'en-US' + const defaultBrowser = getSetting(settings.IS_DEFAULT_BROWSER, this.props.settings) + ?
+ :
+
+
return
@@ -661,6 +673,11 @@ class GeneralTab extends ImmutableComponent { onClick={this.importBrowserDataNow} /> + + {defaultBrowser} + + } } diff --git a/js/actions/appActions.js b/js/actions/appActions.js index 30c5748ca4..c033eff76f 100644 --- a/js/actions/appActions.js +++ b/js/actions/appActions.js @@ -545,6 +545,27 @@ const appActions = { AppDispatcher.dispatch({ actionType: AppConstants.APP_SUBMIT_FEEDBACK }) + }, + + /** + * Dispatch a message to set default browser + * + * @param {boolean} useBrave - whether set Brave as default browser + */ + defaultBrowserUpdated: function (useBrave) { + AppDispatcher.dispatch({ + actionType: AppConstants.APP_DEFAULT_BROWSER_UPDATED, + useBrave + }) + }, + + /** + * Dispatch a message to indicate default browser check is complete + */ + defaultBrowserCheckComplete: function () { + AppDispatcher.dispatch({ + actionType: AppConstants.APP_DEFAULT_BROWSER_CHECK_COMPLETE + }) } } diff --git a/js/actions/windowActions.js b/js/actions/windowActions.js index 38494b7010..f2e0204999 100644 --- a/js/actions/windowActions.js +++ b/js/actions/windowActions.js @@ -1146,6 +1146,19 @@ const windowActions = { actionType: WindowConstants.WINDOW_ON_FOCUS_CHANGED, hasFocus }) + }, + + /** + * Set Modal Dialog detail + * @param {string} className - name of modal dialog + * @param {Object} props - properties of the modal dialog + */ + setModalDialogDetail: function (className, props) { + dispatch({ + actionType: WindowConstants.WINDOW_SET_MODAL_DIALOG_DETAIL, + className, + props + }) } } diff --git a/js/components/main.js b/js/components/main.js index 3776458ebe..49386246a3 100644 --- a/js/components/main.js +++ b/js/components/main.js @@ -41,6 +41,7 @@ const NoScriptInfo = require('./noScriptInfo') const LongPressButton = require('./longPressButton') const Menubar = require('../../app/renderer/components/menubar') const WindowCaptionButtons = require('../../app/renderer/components/windowCaptionButtons') +const CheckDefaultBrowserDialog = require('../../app/renderer/components/checkDefaultBrowserDialog') // Constants const config = require('../constants/config') @@ -59,6 +60,7 @@ const basicAuthState = require('../../app/common/state/basicAuthState') const extensionState = require('../../app/common/state/extensionState') const FrameStateUtil = require('../state/frameStateUtil') const searchProviders = require('../data/searchProviders') +const defaultBrowserState = require('../../app/common/state/defaultBrowserState') // Util const cx = require('../lib/classSet') @@ -92,6 +94,7 @@ class Main extends ImmutableComponent { this.onHideAutofillCreditCardPanel = this.onHideAutofillCreditCardPanel.bind(this) this.onHideNoScript = this.onHideNoScript.bind(this) this.onHideReleaseNotes = this.onHideReleaseNotes.bind(this) + this.onHideCheckDefaultBrowserDialog = this.onHideCheckDefaultBrowserDialog.bind(this) this.onBraveMenu = this.onBraveMenu.bind(this) this.onHamburgerMenu = this.onHamburgerMenu.bind(this) this.onTabContextMenu = this.onTabContextMenu.bind(this) @@ -623,6 +626,10 @@ class Main extends ImmutableComponent { windowActions.setReleaseNotesVisible(false) } + onHideCheckDefaultBrowserDialog () { + windowActions.setModalDialogDetail('checkDefaultBrowserDialog') + } + enableNoScript (settings) { return siteSettings.activeSettings(settings, this.props.appState, appConfig).noScript === true } @@ -826,6 +833,8 @@ class Main extends ImmutableComponent { const activeRequestedLocation = this.activeRequestedLocation const noScriptIsVisible = this.props.windowState.getIn(['ui', 'noScriptInfo', 'isVisible']) const releaseNotesIsVisible = this.props.windowState.getIn(['ui', 'releaseNotes', 'isVisible']) + const checkDefaultBrowserDialogIsVisible = + currentWindow.isFocused() && defaultBrowserState.shouldDisplayDialog(this.props.appState) const braverySettings = siteSettings.activeSettings(activeSiteSettings, this.props.appState, appConfig) const loginRequiredDetail = activeFrame ? basicAuthState.getLoginRequiredDetail(this.props.appState, activeFrame.get('tabId')) : null const customTitlebar = this.customTitlebar @@ -838,6 +847,7 @@ class Main extends ImmutableComponent { !autofillAddressPanelIsVisible && !autofillCreditCardPanelIsVisible && !releaseNotesIsVisible && + !checkDefaultBrowserDialogIsVisible && !noScriptIsVisible && activeFrame && !activeFrame.getIn(['security', 'loginRequiredDetail']) && !customTitlebar.menubarSelectedIndex @@ -1018,6 +1028,17 @@ class Main extends ImmutableComponent { onHide={this.onHideReleaseNotes} /> : null } + { + checkDefaultBrowserDialogIsVisible + ? + : null + } { diff --git a/js/constants/appConfig.js b/js/constants/appConfig.js index b4f1ffa04f..caeaa800ee 100644 --- a/js/constants/appConfig.js +++ b/js/constants/appConfig.js @@ -96,6 +96,7 @@ module.exports = { 'general.show-home-button': false, 'general.useragent.value': null, // Set at runtime 'general.autohide-menu': true, + 'general.check-default-on-startup': true, 'search.default-search-engine': 'Google', 'search.offer-search-suggestions': false, // false by default for privacy reasons 'tabs.switch-to-new-tabs': false, diff --git a/js/constants/appConstants.js b/js/constants/appConstants.js index 041e9f9c2a..498a1a9350 100644 --- a/js/constants/appConstants.js +++ b/js/constants/appConstants.js @@ -60,7 +60,9 @@ const AppConstants = { APP_SET_MENUBAR_TEMPLATE: _, APP_UPDATE_ADBLOCK_DATAFILES: _, APP_UPDATE_ADBLOCK_CUSTOM_RULES: _, - APP_SUBMIT_FEEDBACK: _ + APP_SUBMIT_FEEDBACK: _, + APP_DEFAULT_BROWSER_UPDATED: _, + APP_DEFAULT_BROWSER_CHECK_COMPLETE: _ } module.exports = mapValuesByKeys(AppConstants) diff --git a/js/constants/settings.js b/js/constants/settings.js index f754f54f71..2e494e1944 100644 --- a/js/constants/settings.js +++ b/js/constants/settings.js @@ -14,6 +14,8 @@ const settings = { BOOKMARKS_TOOLBAR_MODE: 'general.bookmarks-toolbar-mode', SHOW_BOOKMARKS_TOOLBAR: 'bookmarks.toolbar.show', LANGUAGE: 'general.language', + CHECK_DEFAULT_ON_STARTUP: 'general.check-default-on-startup', + IS_DEFAULT_BROWSER: 'general.is-default-browser', // Search tab DEFAULT_SEARCH_ENGINE: 'search.default-search-engine', OFFER_SEARCH_SUGGESTIONS: 'search.offer-search-suggestions', diff --git a/js/constants/windowConstants.js b/js/constants/windowConstants.js index 2da41ade7d..f2af206e62 100644 --- a/js/constants/windowConstants.js +++ b/js/constants/windowConstants.js @@ -81,7 +81,8 @@ const windowConstants = { WINDOW_SET_LAST_FOCUSED_SELECTOR: _, WINDOW_GOT_RESPONSE_DETAILS: _, WINDOW_SET_BOOKMARKS_TOOLBAR_SELECTED_FOLDER_ID: _, - WINDOW_ON_FOCUS_CHANGED: _ + WINDOW_ON_FOCUS_CHANGED: _, + WINDOW_SET_MODAL_DIALOG_DETAIL: _ } module.exports = mapValuesByKeys(windowConstants) diff --git a/js/stores/appStore.js b/js/stores/appStore.js index 86253317be..3252e4241d 100644 --- a/js/stores/appStore.js +++ b/js/stores/appStore.js @@ -44,6 +44,8 @@ const isWindows = process.platform === 'win32' // Only used internally const CHANGE_EVENT = 'app-state-change' +const defaultProtocols = ['https', 'http'] + let appState let lastEmittedState @@ -723,6 +725,18 @@ const handleAppAction = (action) => { const subject = encodeURIComponent(`Brave ${platform} ${os.arch()} ${app.getVersion()}${channel()} feedback`) electron.shell.openExternal(`${appConfig.contactUrl}?subject=${subject}`) break + case AppConstants.APP_DEFAULT_BROWSER_UPDATED: + if (action.useBrave) { + for (const p of defaultProtocols) { + app.setAsDefaultProtocolClient(p) + } + } + let isDefaultBrowser = defaultProtocols.every(p => app.isDefaultProtocolClient(p)) + appState = appState.setIn(['settings', settings.IS_DEFAULT_BROWSER], isDefaultBrowser) + break + case AppConstants.APP_DEFAULT_BROWSER_CHECK_COMPLETE: + appState = appState.set('defaultBrowserCheckComplete', {}) + break default: } diff --git a/js/stores/windowStore.js b/js/stores/windowStore.js index 9fe070bba8..891be3d88c 100644 --- a/js/stores/windowStore.js +++ b/js/stores/windowStore.js @@ -842,6 +842,15 @@ const doAction = (action) => { case WindowConstants.WINDOW_ON_FOCUS_CHANGED: windowState = windowState.setIn(['ui', 'hasFocus'], action.hasFocus) break + case WindowConstants.WINDOW_SET_MODAL_DIALOG_DETAIL: + if (action.className && action.props === undefined) { + windowState = windowState.deleteIn(['modalDialogDetail', action.className]) + } else if (action.className) { + windowState = windowState.setIn(['modalDialogDetail', action.className], Immutable.fromJS(action.props)) + } + // Since the input values of address are bound, we need to notify the controls sync. + windowStore.emitChanges() + break default: } diff --git a/less/forms.less b/less/forms.less index 04b66e9d72..0f2783154c 100644 --- a/less/forms.less +++ b/less/forms.less @@ -196,6 +196,63 @@ } } +.checkDefaultBrowserDialog { + .checkDefaultBrowser { + .flyoutDialog; + background-color: #f7f7f7; + border-radius: @borderRadius; + max-width: 422px; + padding: 1; + text-align: left; + width: 614px; + height: 120px; + -webkit-user-select: none; + cursor: default; + color: #3B3B3B; + overflow-x: hidden; + overflow-y: hidden; + max-height: 100%; + + .clickable { + color: #5B5B5B; + &:hover { + color: #000; + } + } + + .checkDefaultBrowserButtons { + text-align: right; + padding: 16px 10px; + position: relative; + top: -30px; + } + + .makeBraveDefault { + font-weight: bold; + display: inline-block; + position: relative; + top: -35px; + margin-left: 15px; + } + + .braveIcon { + background-image: -webkit-image-set(url(../app/extensions/brave/img/braveAbout.png) 2x); + background-repeat: no-repeat; + height: 64px; + width: 64px; + display: inline-block; + position: relative; + top: 10px; + } + + .checkDefaultOnStartup { + left: 75px; + position: relative; + top: -25px; + } + } +} + .braveryPanelContainer { .braveryPanel { From ab5cef6d7a5df04f0f130fc31e11cac812f7de4e Mon Sep 17 00:00:00 2001 From: "Brian R. Bondy" Date: Tue, 18 Oct 2016 23:52:29 -0400 Subject: [PATCH 22/35] 0.12.6 Auditors: @alexwykoff --- CHANGELOG.md | 3 +++ package.json | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2634c2fea9..c42b35f309 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ # Changelog +## [0.12.6](https://github.com/brave/browser-laptop/releases/v0.12.6dev) +- (TODO) + ## [0.12.5](https://github.com/brave/browser-laptop/releases/v0.12.5dev) - Added Brave Wallet backup and recovery ([#4743](https://github.com/brave/browser-laptop/issues/4743))([#3350](https://github.com/brave/browser-laptop/issues/3350)) - Added a way for users to opt-out of crash reporting ([#4479](https://github.com/brave/browser-laptop/issues/4479)) diff --git a/package.json b/package.json index 4ac5584200..49f3f190f2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "brave", - "version": "0.12.5", + "version": "0.12.6", "description": "Brave laptop and desktop browser", "main": "./app/index.js", "config": { From 449e40d2319bb185e413ac70c3a41301a7527bbf Mon Sep 17 00:00:00 2001 From: Anthony Tseng Date: Wed, 19 Oct 2016 01:48:49 -0400 Subject: [PATCH 23/35] Delete "defaultBrowserCheckComplete" only when check on startup is on fix #4934 Auditors: @bbondy Test Plan: 1. Turn off always check on startup 2. Close app 3. Open app 4. Go to preferences 5. Toggle the switch for always check on startup --- app/renderer/components/checkDefaultBrowserDialog.js | 2 ++ app/sessionStore.js | 6 ++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/renderer/components/checkDefaultBrowserDialog.js b/app/renderer/components/checkDefaultBrowserDialog.js index 41f06bf413..ab2ee14bae 100644 --- a/app/renderer/components/checkDefaultBrowserDialog.js +++ b/app/renderer/components/checkDefaultBrowserDialog.js @@ -26,11 +26,13 @@ class CheckDefaultBrowserDialog extends ImmutableComponent { appActions.defaultBrowserUpdated(false) appActions.defaultBrowserCheckComplete() appActions.changeSetting(settings.CHECK_DEFAULT_ON_STARTUP, this.props.checkDefaultOnStartup) + this.props.onHide() } onUseBrave () { appActions.defaultBrowserUpdated(true) appActions.defaultBrowserCheckComplete() appActions.changeSetting(settings.CHECK_DEFAULT_ON_STARTUP, this.props.checkDefaultOnStartup) + this.props.onHide() } render () { return diff --git a/app/sessionStore.js b/app/sessionStore.js index ea3da5b626..a6b77b1df5 100644 --- a/app/sessionStore.js +++ b/app/sessionStore.js @@ -234,8 +234,10 @@ module.exports.cleanAppData = (data, isShutdown) => { data.temporarySiteSettings = {} // Delete Flash state since this is checked on startup delete data.flashInitialized - // Delete defaultBrowserCheckComplete state since this is checked on startup - delete data.defaultBrowserCheckComplete + if (data.settings[settings.CHECK_DEFAULT_ON_STARTUP] === true) { + // Delete defaultBrowserCheckComplete state since this is checked on startup + delete data.defaultBrowserCheckComplete + } // Delete Recovery status on shut down try { delete data.ui.about.preferences.recoverySucceeded From 932578807188e44d41336e8f02bbab0f582e8927 Mon Sep 17 00:00:00 2001 From: Brian Clifton Date: Tue, 18 Oct 2016 23:47:47 -0700 Subject: [PATCH 24/35] Split apart "always show bookmarks toolbar" and the bookmarks toolbar display mode Fixes https://github.com/brave/browser-laptop/issues/4936 Auditors: @bbondy Test Plan: 1. Launch Brave and open Preferences 2. Verify you can toggle "always show bookmarks toolbar" and not have the drop down above be affected --- js/about/preferences.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/js/about/preferences.js b/js/about/preferences.js index 08eba2cebe..8a562c7e28 100644 --- a/js/about/preferences.js +++ b/js/about/preferences.js @@ -616,7 +616,6 @@ class GeneralTab extends ImmutableComponent { const homepageValue = getSetting(settings.HOMEPAGE, this.props.settings) const homepage = homepageValue && homepageValue.trim() const disableShowHomeButton = !homepage || !homepage.length - const disableBookmarksBarSelect = !getSetting(settings.SHOW_BOOKMARKS_TOOLBAR, this.props.settings) const defaultLanguage = this.props.languageCodes.find((lang) => lang.includes(navigator.language)) || 'en-US' const defaultBrowser = getSetting(settings.IS_DEFAULT_BROWSER, this.props.settings) ?
@@ -652,7 +651,6 @@ class GeneralTab extends ImmutableComponent { { + return val === 'https://www.brave.xn--com-7cd' + }) + }) + }) + }) +}) diff --git a/test/lib/selectors.js b/test/lib/selectors.js index 6b9951d985..2756913806 100644 --- a/test/lib/selectors.js +++ b/test/lib/selectors.js @@ -50,6 +50,7 @@ module.exports = { securityTab: '[data-l10n-id="security"]', paymentsTab: '[data-l10n-id="payments"]', saveButton: '[data-l10n-id="save"]', + homepageInput: '[data-l10n-id="homepageInput"]', walletSwitch: '.enablePaymentsSwitch .switchBackground', addFundsButton: '.addFunds', fundsSelectBox: '#fundsSelectBox', From a470f9f4d41074c6a85690053023b714fc348b81 Mon Sep 17 00:00:00 2001 From: Jonathan Sampson Date: Wed, 19 Oct 2016 14:05:35 -0700 Subject: [PATCH 33/35] Fixes #4018 Fixes issue where LastPass' popup window is closed during user attempt to shift focus from username field to password field. Auditor: @bridiver --- js/components/popupWindow.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/components/popupWindow.js b/js/components/popupWindow.js index 63fd8733c7..96ddece190 100644 --- a/js/components/popupWindow.js +++ b/js/components/popupWindow.js @@ -22,7 +22,7 @@ class PopupWindow extends ImmutableComponent { } onKeyDown (e) { - if (e.keyCode === KeyCodes.ESC || e.keyCode === KeyCodes.TAB) { + if (e.keyCode === KeyCodes.ESC) { windowActions.setPopupWindowDetail() } } From 61922827f9ff1e33009032d715f6b9408e07b47e Mon Sep 17 00:00:00 2001 From: Anthony Tseng Date: Wed, 19 Oct 2016 15:00:29 -0400 Subject: [PATCH 34/35] default browser check should run only on release build and BRAVE_IS_DEFAULT_BROWSER for test purpose fix #4958 Auditors: @bridiver, @bbondy Test Plan: 1. Make sure there is no session data 2. npm run start/test should not popup the check default browser modal and overrides brave as default browser. 3. BRAVE_IS_DEFAULT_BROWSER=true npm run start/test should not popup the check default browser modal and overrides brave as default browser. 4. BRAVE_IS_DEFAULT_BROWSER=false npm run start/test should popup the check default browser modal and overrides brave not be default browser. --- app/index.js | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/app/index.js b/app/index.js index f4a4386a8a..cd851ce369 100644 --- a/app/index.js +++ b/app/index.js @@ -444,9 +444,18 @@ app.on('ready', () => { } process.emit(messages.APP_INITIALIZED) - // Default browser checking - let isDefaultBrowser = defaultProtocols.every(p => app.isDefaultProtocolClient(p)) - appActions.changeSetting(settings.IS_DEFAULT_BROWSER, isDefaultBrowser) + if (process.env.BRAVE_IS_DEFAULT_BROWSER !== undefined) { + if (process.env.BRAVE_IS_DEFAULT_BROWSER === 'true') { + appActions.changeSetting(settings.IS_DEFAULT_BROWSER, true) + } else if (process.env.BRAVE_IS_DEFAULT_BROWSER === 'false') { + appActions.changeSetting(settings.IS_DEFAULT_BROWSER, false) + } + } else { + // Default browser checking + let isDefaultBrowser = ['development', 'test'].includes(process.env.NODE_ENV) + ? true : defaultProtocols.every(p => app.isDefaultProtocolClient(p)) + appActions.changeSetting(settings.IS_DEFAULT_BROWSER, isDefaultBrowser) + } if (CmdLine.newWindowURL) { appActions.newWindow(Immutable.fromJS({ From cfaa0aa13a80e33c15b3e04fa0ec2d35cd6c3b79 Mon Sep 17 00:00:00 2001 From: Jon Kuperman Date: Tue, 18 Oct 2016 01:48:12 -0700 Subject: [PATCH 35/35] convert toolbar icons to svg --- js/components/main.js | 4 +-- js/components/navigationBar.js | 15 +++++------ less/navigationBar.less | 48 +++++++++++++++++++++++++++++----- 3 files changed, 49 insertions(+), 18 deletions(-) diff --git a/js/components/main.js b/js/components/main.js index 49386246a3..33ddd7c905 100644 --- a/js/components/main.js +++ b/js/components/main.js @@ -899,14 +899,14 @@ class Main extends ImmutableComponent {
- :