Skip to content

Commit 6d9555a

Browse files
author
Emily Toop
committedApr 20, 2016
Bug 1254599 - Rename all things Browser that are actually Tab specific to Tab
1 parent 6a85205 commit 6d9555a

34 files changed

+494
-500
lines changed
 

‎Client.xcodeproj/project.pbxproj

+31-29
Large diffs are not rendered by default.

‎Client/Application/AppDelegate.swift

+2-2
Original file line numberDiff line numberDiff line change
@@ -508,9 +508,9 @@ extension AppDelegate: UINavigationControllerDelegate {
508508
}
509509

510510
extension AppDelegate: TabManagerStateDelegate {
511-
func tabManagerWillStoreTabs(tabs: [Browser]) {
511+
func tabManagerWillStoreTabs(tabs: [Tab]) {
512512
// It is possible that not all tabs have loaded yet, so we filter out tabs with a nil URL.
513-
let storedTabs: [RemoteTab] = tabs.flatMap( Browser.toTab )
513+
let storedTabs: [RemoteTab] = tabs.flatMap( Tab.toTab )
514514

515515
// Don't insert into the DB immediately. We tend to contend with more important
516516
// work like querying for top sites.

‎Client/Frontend/Browser/BrowserTrayAnimators.swift

+9-9
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ private extension TrayToBrowserAnimator {
5151

5252
// Create a fake cell to use for the upscaling animation
5353
let startingFrame = calculateCollapsedCellFrameUsingCollectionView(tabTray.collectionView, atIndex: expandFromIndex)
54-
let cell = createTransitionCellFromBrowser(bvc.tabManager.selectedTab, withFrame: startingFrame)
54+
let cell = createTransitionCellFromTab(bvc.tabManager.selectedTab, withFrame: startingFrame)
5555
cell.backgroundHolder.layer.cornerRadius = 0
5656

5757
container.insertSubview(bvc.view, aboveSubview: tabCollectionViewSnapshot)
@@ -140,7 +140,7 @@ private extension BrowserToTrayAnimator {
140140

141141
// Build a tab cell that we will use to animate the scaling of the browser to the tab
142142
let expandedFrame = calculateExpandedCellFrameFromBVC(bvc)
143-
let cell = createTransitionCellFromBrowser(bvc.tabManager.selectedTab, withFrame: expandedFrame)
143+
let cell = createTransitionCellFromTab(bvc.tabManager.selectedTab, withFrame: expandedFrame)
144144
cell.backgroundHolder.layer.cornerRadius = TabTrayControllerUX.CornerRadius
145145
cell.innerStroke.hidden = true
146146

@@ -300,23 +300,23 @@ private func transformToolbarsToFrame(toolbars: [UIView?], toRect endRect: CGRec
300300
}
301301
}
302302

303-
private func createTransitionCellFromBrowser(browser: Browser?, withFrame frame: CGRect) -> TabCell {
303+
private func createTransitionCellFromTab(tab: Tab?, withFrame frame: CGRect) -> TabCell {
304304
let cell = TabCell(frame: frame)
305-
cell.background.image = browser?.screenshot
306-
cell.titleText.text = browser?.displayTitle
305+
cell.background.image = tab?.screenshot
306+
cell.titleText.text = tab?.displayTitle
307307

308-
if let browser = browser where browser.isPrivate {
308+
if let tab = tab where tab.isPrivate {
309309
cell.style = .Dark
310310
}
311311

312-
if let favIcon = browser?.displayFavicon {
312+
if let favIcon = tab?.displayFavicon {
313313
cell.favicon.sd_setImageWithURL(NSURL(string: favIcon.url)!)
314314
} else {
315315
var defaultFavicon = UIImage(named: "defaultFavicon")
316-
if browser?.isPrivate ?? false {
316+
if tab?.isPrivate ?? false {
317317
defaultFavicon = defaultFavicon?.imageWithRenderingMode(.AlwaysTemplate)
318318
cell.favicon.image = defaultFavicon
319-
cell.favicon.tintColor = (browser?.isPrivate ?? false) ? UIColor.whiteColor() : UIColor.darkGrayColor()
319+
cell.favicon.tintColor = (tab?.isPrivate ?? false) ? UIColor.whiteColor() : UIColor.darkGrayColor()
320320
} else {
321321
cell.favicon.image = defaultFavicon
322322
}

‎Client/Frontend/Browser/BrowserViewController.swift

+86-92
Large diffs are not rendered by default.

‎Client/Frontend/Browser/ContextMenuHelper.swift

+6-6
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ protocol ContextMenuHelperDelegate: class {
88
func contextMenuHelper(contextMenuHelper: ContextMenuHelper, didLongPressElements elements: ContextMenuHelper.Elements, gestureRecognizer: UILongPressGestureRecognizer)
99
}
1010

11-
class ContextMenuHelper: NSObject, BrowserHelper, UIGestureRecognizerDelegate {
12-
private weak var browser: Browser?
11+
class ContextMenuHelper: NSObject, TabHelper, UIGestureRecognizerDelegate {
12+
private weak var tab: Tab?
1313
weak var delegate: ContextMenuHelperDelegate?
1414
private let gestureRecognizer = UILongPressGestureRecognizer()
1515
private weak var selectionGestureRecognizer: UIGestureRecognizer?
@@ -30,18 +30,18 @@ class ContextMenuHelper: NSObject, BrowserHelper, UIGestureRecognizerDelegate {
3030
return !UIAccessibilityIsVoiceOverRunning()
3131
}
3232

33-
required init(browser: Browser) {
33+
required init(tab: Tab) {
3434
super.init()
35-
self.browser = browser
35+
self.tab = tab
3636

3737
let path = NSBundle.mainBundle().pathForResource("ContextMenu", ofType: "js")!
3838
let source = try! NSString(contentsOfFile: path, encoding: NSUTF8StringEncoding) as String
3939
let userScript = WKUserScript(source: source, injectionTime: WKUserScriptInjectionTime.AtDocumentEnd, forMainFrameOnly: false)
40-
browser.webView!.configuration.userContentController.addUserScript(userScript)
40+
tab.webView!.configuration.userContentController.addUserScript(userScript)
4141

4242
// Add a gesture recognizer that disables the built-in context menu gesture recognizer.
4343
gestureRecognizer.delegate = self
44-
browser.webView!.addGestureRecognizer(gestureRecognizer)
44+
tab.webView!.addGestureRecognizer(gestureRecognizer)
4545
}
4646

4747
func scriptMessageHandlerName() -> String? {

‎Client/Frontend/Browser/ErrorPageHelper.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,7 @@ class ErrorPageHelper {
271271
}
272272
}
273273

274-
extension ErrorPageHelper: BrowserHelper {
274+
extension ErrorPageHelper: TabHelper {
275275
static func name() -> String {
276276
return "ErrorPageHelper"
277277
}

‎Client/Frontend/Browser/FaviconManager.swift

+9-9
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@ import Storage
88
import WebImage
99

1010

11-
class FaviconManager : BrowserHelper {
11+
class FaviconManager : TabHelper {
1212
let profile: Profile!
13-
weak var browser: Browser?
13+
weak var tab: Tab?
1414

15-
init(browser: Browser, profile: Profile) {
15+
init(tab: Tab, profile: Profile) {
1616
self.profile = profile
17-
self.browser = browser
17+
self.tab = tab
1818

1919
if let path = NSBundle.mainBundle().pathForResource("Favicons", ofType: "js") {
2020
if let source = try? NSString(contentsOfFile: path, encoding: NSUTF8StringEncoding) as String {
2121
let userScript = WKUserScript(source: source, injectionTime: WKUserScriptInjectionTime.AtDocumentEnd, forMainFrameOnly: true)
22-
browser.webView!.configuration.userContentController.addUserScript(userScript)
22+
tab.webView!.configuration.userContentController.addUserScript(userScript)
2323
}
2424
}
2525
}
@@ -34,8 +34,8 @@ class FaviconManager : BrowserHelper {
3434

3535
func userContentController(userContentController: WKUserContentController, didReceiveScriptMessage message: WKScriptMessage) {
3636
let manager = SDWebImageManager.sharedManager()
37-
self.browser?.favicons.removeAll(keepCapacity: false)
38-
if let tab = self.browser,
37+
self.tab?.favicons.removeAll(keepCapacity: false)
38+
if let tab = self.tab,
3939
let currentURL = tab.url,
4040
let url = tab.url?.absoluteString {
4141
let site = Site(url: url, title: "")
@@ -83,12 +83,12 @@ class FaviconManager : BrowserHelper {
8383
}
8484
}
8585

86-
func makeFaviconAvailable(tab: Browser, atURL url: NSURL, favicon: Favicon, withImage image: UIImage) {
86+
func makeFaviconAvailable(tab: Tab, atURL url: NSURL, favicon: Favicon, withImage image: UIImage) {
8787
let helper = tab.getHelper(name: "SpotlightHelper") as? SpotlightHelper
8888
helper?.updateImage(image, forURL: url)
8989
}
9090

91-
func noFaviconAvailable(tab: Browser, atURL url: NSURL) {
91+
func noFaviconAvailable(tab: Tab, atURL url: NSURL) {
9292
let helper = tab.getHelper(name: "SpotlightHelper") as? SpotlightHelper
9393
helper?.updateImage(forURL: url)
9494

‎Client/Frontend/Browser/FindInPageHelper.swift

+5-5
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,20 @@ protocol FindInPageHelperDelegate: class {
1111
func findInPageHelper(findInPageHelper: FindInPageHelper, didUpdateTotalResults totalResults: Int)
1212
}
1313

14-
class FindInPageHelper: BrowserHelper {
14+
class FindInPageHelper: TabHelper {
1515
weak var delegate: FindInPageHelperDelegate?
16-
private weak var browser: Browser?
16+
private weak var tab: Tab?
1717

1818
class func name() -> String {
1919
return "FindInPage"
2020
}
2121

22-
required init(browser: Browser) {
23-
self.browser = browser
22+
required init(tab: Tab) {
23+
self.tab = tab
2424

2525
if let path = NSBundle.mainBundle().pathForResource("FindInPage", ofType: "js"), source = try? NSString(contentsOfFile: path, encoding: NSUTF8StringEncoding) as String {
2626
let userScript = WKUserScript(source: source, injectionTime: WKUserScriptInjectionTime.AtDocumentEnd, forMainFrameOnly: true)
27-
browser.webView!.configuration.userContentController.addUserScript(userScript)
27+
tab.webView!.configuration.userContentController.addUserScript(userScript)
2828
}
2929
}
3030

‎Client/Frontend/Browser/LoginsHelper.swift

+14-14
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ import Deferred
1111

1212
private let log = Logger.browserLogger
1313

14-
class LoginsHelper: BrowserHelper {
15-
private weak var browser: Browser?
14+
class LoginsHelper: TabHelper {
15+
private weak var tab: Tab?
1616
private let profile: Profile
1717
private var snackBar: SnackBar?
1818

@@ -25,13 +25,13 @@ class LoginsHelper: BrowserHelper {
2525
return "LoginsHelper"
2626
}
2727

28-
required init(browser: Browser, profile: Profile) {
29-
self.browser = browser
28+
required init(tab: Tab, profile: Profile) {
29+
self.tab = tab
3030
self.profile = profile
3131

3232
if let path = NSBundle.mainBundle().pathForResource("LoginsHelper", ofType: "js"), source = try? NSString(contentsOfFile: path, encoding: NSUTF8StringEncoding) as String {
3333
let userScript = WKUserScript(source: source, injectionTime: WKUserScriptInjectionTime.AtDocumentEnd, forMainFrameOnly: false)
34-
browser.webView!.configuration.userContentController.addUserScript(userScript)
34+
tab.webView!.configuration.userContentController.addUserScript(userScript)
3535
}
3636
}
3737

@@ -146,25 +146,25 @@ class LoginsHelper: BrowserHelper {
146146
}
147147

148148
if snackBar != nil {
149-
browser?.removeSnackbar(snackBar!)
149+
tab?.removeSnackbar(snackBar!)
150150
}
151151

152152
snackBar = TimerSnackBar(attrText: promptMessage,
153153
img: UIImage(named: "key"),
154154
buttons: [
155155
SnackButton(title: Strings.LoginsHelperDontSaveButtonTitle, accessibilityIdentifier: "SaveLoginPrompt.dontSaveButton", callback: { (bar: SnackBar) -> Void in
156-
self.browser?.removeSnackbar(bar)
156+
self.tab?.removeSnackbar(bar)
157157
self.snackBar = nil
158158
return
159159
}),
160160

161161
SnackButton(title: Strings.LoginsHelperSaveLoginButtonTitle, accessibilityIdentifier: "SaveLoginPrompt.saveLoginButton", callback: { (bar: SnackBar) -> Void in
162-
self.browser?.removeSnackbar(bar)
162+
self.tab?.removeSnackbar(bar)
163163
self.snackBar = nil
164164
self.profile.logins.addLogin(login)
165165
})
166166
])
167-
browser?.addSnackbar(snackBar!)
167+
tab?.addSnackbar(snackBar!)
168168
}
169169

170170
private func promptUpdateFromLogin(login old: LoginData, toLogin new: LoginData) {
@@ -185,26 +185,26 @@ class LoginsHelper: BrowserHelper {
185185
let promptMessage = NSAttributedString(string: formatted)
186186

187187
if snackBar != nil {
188-
browser?.removeSnackbar(snackBar!)
188+
tab?.removeSnackbar(snackBar!)
189189
}
190190

191191
snackBar = TimerSnackBar(attrText: promptMessage,
192192
img: UIImage(named: "key"),
193193
buttons: [
194194
SnackButton(title: Strings.LoginsHelperDontSaveButtonTitle, accessibilityIdentifier: "UpdateLoginPrompt.dontSaveButton", callback: { (bar: SnackBar) -> Void in
195-
self.browser?.removeSnackbar(bar)
195+
self.tab?.removeSnackbar(bar)
196196
self.snackBar = nil
197197
return
198198
}),
199199

200200
SnackButton(title: Strings.LoginsHelperUpdateButtonTitle, accessibilityIdentifier: "UpdateLoginPrompt.updateButton", callback: { (bar: SnackBar) -> Void in
201-
self.browser?.removeSnackbar(bar)
201+
self.tab?.removeSnackbar(bar)
202202
self.snackBar = nil
203203
self.profile.logins.updateLoginByGUID(guid, new: new,
204204
significant: new.isSignificantlyDifferentFrom(old))
205205
})
206206
])
207-
browser?.addSnackbar(snackBar!)
207+
tab?.addSnackbar(snackBar!)
208208
}
209209

210210
private func requestLogins(login: LoginData, requestId: String) {
@@ -219,7 +219,7 @@ class LoginsHelper: BrowserHelper {
219219

220220
let json = JSON(jsonObj)
221221
let src = "window.__firefox__.logins.inject(\(json.toString()))"
222-
self.browser?.webView?.evaluateJavaScript(src, completionHandler: { (obj, err) -> Void in
222+
self.tab?.webView?.evaluateJavaScript(src, completionHandler: { (obj, err) -> Void in
223223
})
224224
}
225225
}

‎Client/Frontend/Browser/PrintHelper.swift

+6-6
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,18 @@ import Foundation
66
import Shared
77
import WebKit
88

9-
class PrintHelper: BrowserHelper {
10-
private weak var browser: Browser?
9+
class PrintHelper: TabHelper {
10+
private weak var tab: Tab?
1111

1212
class func name() -> String {
1313
return "PrintHelper"
1414
}
1515

16-
required init(browser: Browser) {
17-
self.browser = browser
16+
required init(tab: Tab) {
17+
self.tab = tab
1818
if let path = NSBundle.mainBundle().pathForResource("PrintHelper", ofType: "js"), source = try? NSString(contentsOfFile: path, encoding: NSUTF8StringEncoding) as String {
1919
let userScript = WKUserScript(source: source, injectionTime: WKUserScriptInjectionTime.AtDocumentEnd, forMainFrameOnly: false)
20-
browser.webView!.configuration.userContentController.addUserScript(userScript)
20+
tab.webView!.configuration.userContentController.addUserScript(userScript)
2121
}
2222
}
2323

@@ -26,7 +26,7 @@ class PrintHelper: BrowserHelper {
2626
}
2727

2828
func userContentController(userContentController: WKUserContentController, didReceiveScriptMessage message: WKScriptMessage) {
29-
if let browser = browser, webView = browser.webView {
29+
if let tab = tab, webView = tab.webView {
3030
let printController = UIPrintInteractionController.sharedPrintController()
3131
printController.printFormatter = webView.viewPrintFormatter()
3232
printController.presentAnimated(true, completionHandler: nil)

‎Client/Frontend/Browser/ScreenshotHelper.swift

+4-4
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import Foundation
66

77
/**
8-
* Handles screenshots for a given browser, including pages with non-webview content.
8+
* Handles screenshots for a given tab, including pages with non-webview content.
99
*/
1010
class ScreenshotHelper {
1111
var viewIsVisible = false
@@ -16,7 +16,7 @@ class ScreenshotHelper {
1616
self.controller = controller
1717
}
1818

19-
func takeScreenshot(tab: Browser) {
19+
func takeScreenshot(tab: Tab) {
2020
var screenshot: UIImage?
2121

2222
if let url = tab.url {
@@ -36,7 +36,7 @@ class ScreenshotHelper {
3636
/// Takes a screenshot after a small delay.
3737
/// Trying to take a screenshot immediately after didFinishNavigation results in a screenshot
3838
/// of the previous page, presumably due to an iOS bug. Adding a brief delay fixes this.
39-
func takeDelayedScreenshot(tab: Browser) {
39+
func takeDelayedScreenshot(tab: Tab) {
4040
let time = dispatch_time(DISPATCH_TIME_NOW, Int64(100 * NSEC_PER_MSEC))
4141
dispatch_after(time, dispatch_get_main_queue()) {
4242
// If the view controller isn't visible, the screenshot will be blank.
@@ -50,7 +50,7 @@ class ScreenshotHelper {
5050
}
5151
}
5252

53-
func takePendingScreenshots(tabs: [Browser]) {
53+
func takePendingScreenshots(tabs: [Tab]) {
5454
for tab in tabs where tab.pendingScreenshot {
5555
tab.pendingScreenshot = false
5656
takeDelayedScreenshot(tab)

‎Client/Frontend/Browser/SessionRestoreHelper.swift

+7-7
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,26 @@ import Foundation
66
import WebKit
77

88
protocol SessionRestoreHelperDelegate: class {
9-
func sessionRestoreHelper(helper: SessionRestoreHelper, didRestoreSessionForBrowser browser: Browser)
9+
func sessionRestoreHelper(helper: SessionRestoreHelper, didRestoreSessionForTab tab: Tab)
1010
}
1111

12-
class SessionRestoreHelper: BrowserHelper {
12+
class SessionRestoreHelper: TabHelper {
1313
weak var delegate: SessionRestoreHelperDelegate?
14-
private weak var browser: Browser?
14+
private weak var tab: Tab?
1515

16-
required init(browser: Browser) {
17-
self.browser = browser
16+
required init(tab: Tab) {
17+
self.tab = tab
1818
}
1919

2020
func scriptMessageHandlerName() -> String? {
2121
return "sessionRestoreHelper"
2222
}
2323

2424
func userContentController(userContentController: WKUserContentController, didReceiveScriptMessage message: WKScriptMessage) {
25-
if let browser = browser, params = message.body as? [String: AnyObject] {
25+
if let tab = tab, params = message.body as? [String: AnyObject] {
2626
if params["name"] as! String == "didRestoreSession" {
2727
dispatch_async(dispatch_get_main_queue()) {
28-
self.delegate?.sessionRestoreHelper(self, didRestoreSessionForBrowser: browser)
28+
self.delegate?.sessionRestoreHelper(self, didRestoreSessionForTab: tab)
2929
}
3030
}
3131
}

0 commit comments

Comments
 (0)
Please sign in to comment.