Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files

Second round

  • Loading branch information
naira-cliqz committed Apr 19, 2018
1 parent 09b9ab6 commit d3a8ca95449dbb7946956cd57889350b796dd256
Showing with 540 additions and 36 deletions.
  1. +4 −0 Client.xcodeproj/project.pbxproj
  2. +3 −1 Client/Frontend/Browser/BrowserViewController.swift
  3. +41 −0 Cliqz/Extensions/BrowserViewController/Privacy.swift
  4. +24 −10 Cliqz/Privacy/UI/ControlCenterViewController.swift
  5. +51 −10 Cliqz/Privacy/UI/OverviewViewController.swift
  6. +98 −14 Cliqz/Privacy/UI/TrackersController.swift
  7. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/Social.imageset/Contents.json
  8. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/Social.imageset/Social.png
  9. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/advertising.imageset/Advertising.png
  10. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/advertising.imageset/Contents.json
  11. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/audio_video_player.imageset/Audio.png
  12. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/audio_video_player.imageset/Contents.json
  13. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/blockAction.imageset/Contents.json
  14. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/blockAction.imageset/x (1).png
  15. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/blockTracker.imageset/Contents.json
  16. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/blockTracker.imageset/x.png
  17. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/comments.imageset/Comments.png
  18. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/comments.imageset/Contents.json
  19. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/customer_interaction.imageset/Contents.json
  20. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/customer_interaction.imageset/Customer.png
  21. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/pornvertising.imageset/Adult.png
  22. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/pornvertising.imageset/Contents.json
  23. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/restrict.imageset/Contents.json
  24. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/restrict.imageset/Restrict_Site.png
  25. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/restrictAction.imageset/Contents.json
  26. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/restrictAction.imageset/o1 (1).png
  27. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/restrictTracker.imageset/Contents.json
  28. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/restrictTracker.imageset/o1.png
  29. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/site_analytics.imageset/Analytics.png
  30. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/site_analytics.imageset/Contents.json
  31. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/trust.imageset/Contents.json
  32. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/trust.imageset/Trust_Site.png
  33. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/trustAction.imageset/Contents.json
  34. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/trustAction.imageset/o (1).png
  35. +21 −0 Cliqz/Resources/Cliqz.xcassets/ControlCenter/trustTracker.imageset/Contents.json
  36. BIN Cliqz/Resources/Cliqz.xcassets/ControlCenter/trustTracker.imageset/o.png
  37. +4 −1 Cliqz/URLBar/CliqzURLBar.swift
@@ -322,6 +322,7 @@
4F0445E2203344E300E2C0C7 /* LogoLoader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F0445E1203344E300E2C0C7 /* LogoLoader.swift */; };
4F0445E720334D3400E2C0C7 /* UIDeviceExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F0445E620334D3400E2C0C7 /* UIDeviceExtension.swift */; };
4F0445E920334DC800E2C0C7 /* LocalDataStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F0445E820334DC700E2C0C7 /* LocalDataStore.swift */; };
4F1860332088F3DC00A86D4C /* Privacy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F1860322088F3DC00A86D4C /* Privacy.swift */; };
4F304595204FEC5500C99162 /* PanelDataObservers.swift in Sources */ = {isa = PBXBuildFile; fileRef = E68F36971EA694000048CF44 /* PanelDataObservers.swift */; };
4F304598204FEE5500C99162 /* jsengine.bundle.js in Resources */ = {isa = PBXBuildFile; fileRef = 4F304597204FEE5500C99162 /* jsengine.bundle.js */; };
4F3045CB204FF0C500C99162 /* CliqzSearchViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F3045B2204FF0C500C99162 /* CliqzSearchViewController.swift */; };
@@ -1763,6 +1764,7 @@
4F0445E1203344E300E2C0C7 /* LogoLoader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LogoLoader.swift; sourceTree = "<group>"; };
4F0445E620334D3400E2C0C7 /* UIDeviceExtension.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UIDeviceExtension.swift; sourceTree = "<group>"; };
4F0445E820334DC700E2C0C7 /* LocalDataStore.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LocalDataStore.swift; sourceTree = "<group>"; };
4F1860322088F3DC00A86D4C /* Privacy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Privacy.swift; sourceTree = "<group>"; };
4F304597204FEE5500C99162 /* jsengine.bundle.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = jsengine.bundle.js; path = Cliqz/JSEngine/jsengine.bundle.js; sourceTree = SOURCE_ROOT; };
4F3045B2204FF0C500C99162 /* CliqzSearchViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CliqzSearchViewController.swift; sourceTree = "<group>"; };
4F3046AC204FF0EA00C99162 /* Cliqz.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Cliqz.xcassets; sourceTree = "<group>"; };
@@ -3268,6 +3270,7 @@
4FD19FC4205A9F7700547DD5 /* NativeContextMenu.swift */,
1EEA36EC2067DD6F003B6AD5 /* VideoDownloader.swift */,
1E3FBF58207763FE00FAE3FD /* BrowserViewController+Connect.swift */,
4F1860322088F3DC00A86D4C /* Privacy.swift */,
);
path = BrowserViewController;
sourceTree = "<group>";
@@ -6445,6 +6448,7 @@
D863C8F21F68BFC20058D95F /* GradientProgressBar.swift in Sources */,
4F3046B7204FF65800C99162 /* SettingsPrefs.swift in Sources */,
D3C744CD1A687D6C004CE85D /* URIFixup.swift in Sources */,
4F1860332088F3DC00A86D4C /* Privacy.swift in Sources */,
39AC591A1CC574AB0042C2F5 /* HomePageSettingsViewController.swift in Sources */,
E4A961181AC041C40069AD6F /* ReadabilityService.swift in Sources */,
D3BE7B261B054D4400641031 /* main.swift in Sources */,
@@ -352,7 +352,9 @@ class BrowserViewController: UIViewController {
// Cliqz: Add observers for Connection features
NotificationCenter.default.addObserver(self, selector: #selector(openTabViaConnect), name: SendTabNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(downloadVideoViaConnect), name: DownloadVideoNotification, object: nil)

NotificationCenter.default.addObserver(self, selector: #selector(showControlCenter), name: ShowControlCenterNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(hideControlCenter), name: HideControlCenterNotification, object: nil)

urlBar.translatesAutoresizingMaskIntoConstraints = false
urlBar.delegate = self
urlBar.tabToolbarDelegate = self
@@ -0,0 +1,41 @@
//
// Privacy.swift
// Client
//
// Created by Sahakyan on 4/19/18.
// Copyright © 2018 Cliqz. All rights reserved.
//
import Foundation

let ShowControlCenterNotification = NSNotification.Name(rawValue: "showControlCenter")
let HideControlCenterNotification = NSNotification.Name(rawValue: "hideControlCenter")

extension BrowserViewController {

func showControlCenter(notification: Notification) {
if let appDel = UIApplication.shared.delegate as? AppDelegate {
let controlCenter = ControlCenterViewController() //TrackersController()
if let pageUrl = notification.object as? String {
controlCenter.trackers = TrackerList.instance.detectedTrackersForPage(pageUrl)
controlCenter.pageURL = pageUrl
}
self.addChildViewController(controlCenter)
self.view.addSubview(controlCenter.view)
controlCenter.view.snp.makeConstraints({ (make) in
make.left.right.bottom.equalToSuperview()
make.top.equalToSuperview().offset(0)
// make.top.equalToSuperview().offset(70)
})
// appDel.presentContollerOnTop(controller: controlCenter)
}
}

func hideControlCenter() {
if let cc = self.childViewControllers.last,
let c = cc as? ControlCenterViewController {
c.removeFromParentViewController()
c.view.removeFromSuperview()
}
}
}
@@ -63,21 +63,22 @@ class ControlCenterViewController: UIViewController {
private func setupComponents() {
createPanelSwitchControl()

let done = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(donePressed))
toolBar.setItems([done], animated: false)
view.addSubview(toolBar)
// let done = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(donePressed))
// toolBar.setItems([done], animated: false)
// view.addSubview(toolBar)
toolBar.snp.makeConstraints { (make) in
make.bottom.left.right.equalToSuperview()
}
// toolBar.snp.makeConstraints { (make) in
// make.bottom.left.right.equalToSuperview()
// }
panelContainerView = UIView()
view.addSubview(panelContainerView)
panelContainerView.backgroundColor = UIColor.white

panelContainerView.snp.makeConstraints { make in
make.top.equalTo(self.panelSwitchControl.snp.bottom).offset(10)
make.top.equalTo(self.panelSwitchControl.snp.bottom).offset(5)
make.left.right.equalTo(self.view)
make.bottom.equalTo(self.toolBar.snp.top)
make.bottom.equalTo(self.view)
}

}
@@ -92,6 +93,16 @@ class ControlCenterViewController: UIViewController {
let globalTrackers = "Global Trackers"

let items = [overview, trackers, globalTrackers]
self.view.backgroundColor = UIColor.clear
let topView = UIView()
topView.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(hideControlCenter)))
topView.backgroundColor = UIColor.clear
self.view.addSubview(topView)
topView.snp.makeConstraints { (make) in
make.top.left.right.equalToSuperview()
make.height.equalTo(70)
}

let bgView = UIView()
bgView.backgroundColor = UIColor.cliqzBluePrimary

@@ -103,7 +114,7 @@ class ControlCenterViewController: UIViewController {
self.view.addSubview(bgView)

bgView.snp.makeConstraints { (make) in
make.top.equalToSuperview().offset(30)
make.top.equalTo(topView.snp.bottom)
make.left.right.equalToSuperview()
make.height.equalTo(40)
}
@@ -113,7 +124,6 @@ class ControlCenterViewController: UIViewController {
make.right.equalTo(bgView).offset(-10)
make.height.equalTo(30)
}
self.view.backgroundColor = UIColor.white
}

@objc private func switchPanel(_ sender: UISegmentedControl) {
@@ -137,6 +147,10 @@ class ControlCenterViewController: UIViewController {
// }
}

@objc private func hideControlCenter() {
NotificationCenter.default.post(name: HideControlCenterNotification, object: nil)
}

private func getCurrentPanel() -> UIViewController {
switch panelSwitchControl.selectedSegmentIndex {
case 0:
@@ -143,8 +143,7 @@ class OverviewViewController: UIViewController {
dataSet.drawIconsEnabled = false
dataSet.drawValuesEnabled = false
dataSet.iconsOffset = CGPoint(x: 0, y: 20.0)
dataSet.colors = ChartColorTemplates.vordiplom()
+ ChartColorTemplates.joyful()
dataSet.colors = [NSUIColor(colorString: "CB55CD"), NSUIColor(colorString: "87D7EF"), NSUIColor(colorString: "43B7C5"), NSUIColor(colorString: "FDC257"), NSUIColor(colorString: "EF671E")]

chart?.data = PieChartData(dataSet: dataSet)
chart?.centerText = "\(self.allTrackersCount) Trackers found"
@@ -157,13 +156,18 @@ class OverviewViewController: UIViewController {
self.trustSiteButton.layer.borderWidth = 1
self.trustSiteButton.layer.cornerRadius = 3
self.trustSiteButton.setTitleColor(UIColor.gray, for: .normal)
trustSiteButton.imageEdgeInsets = UIEdgeInsetsMake(0, 0, 0, 10);
trustSiteButton.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);

self.restrictSiteButton.backgroundColor = UIColor.white
self.restrictSiteButton.layer.borderColor = UIColor.gray.cgColor
self.restrictSiteButton.layer.borderWidth = 1
self.restrictSiteButton.layer.cornerRadius = 3
self.restrictSiteButton.setTitleColor(UIColor.gray, for: .normal)

self.restrictSiteButton.setImage(UIImage(named: "restrict"), for: .normal)
restrictSiteButton.imageEdgeInsets = UIEdgeInsetsMake(0, 0, 0, 10);
restrictSiteButton.titleEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);

self.pauseGhosteryButton.backgroundColor = UIColor.white
self.pauseGhosteryButton.layer.borderColor = UIColor.gray.cgColor
self.pauseGhosteryButton.layer.borderWidth = 1
@@ -175,8 +179,9 @@ class OverviewViewController: UIViewController {
self.setupPieChart()
self.view.addSubview(urlLabel)
urlLabel.font = UIFont.systemFont(ofSize: 13)
urlLabel.textAlignment = .center
self.urlLabel.snp.makeConstraints { (make) in
make.centerX.equalTo(self.view)
make.left.right.equalTo(self.view).inset(7)
make.top.equalTo(chart.snp.bottom).offset(10)
make.height.equalTo(30)
}
@@ -192,7 +197,7 @@ class OverviewViewController: UIViewController {
self.trustSiteButton.titleLabel?.textColor = UIColor(colorString: "4A4A4A")
self.trustSiteButton.snp.makeConstraints { (make) in
make.centerX.equalTo(self.view)
make.top.equalTo(self.blockedTrackers.snp.bottom).offset(10)
make.top.equalTo(self.blockedTrackers.snp.bottom).offset(15)
make.height.equalTo(30)
make.width.equalTo(213)
}
@@ -215,7 +220,7 @@ class OverviewViewController: UIViewController {
self.view.addSubview(antitrackingView)
self.antitrackingView.snp.makeConstraints { (make) in
make.left.right.equalTo(self.view)
make.top.equalTo(self.pauseGhosteryButton.snp.bottom)
make.top.equalTo(self.pauseGhosteryButton.snp.bottom).offset(10)
make.height.equalTo(40)
}
self.view.addSubview(adBlockingView)
@@ -228,19 +233,54 @@ class OverviewViewController: UIViewController {
// self.urlLabel.text = "nytimes.com"
self.blockedTrackers.text = "\(self.blockedTrackersCount) trackers blocked"
self.trustSiteButton.setTitle("Trust Site", for: .normal)
self.trustSiteButton.setTitleColor(UIColor.white, for: .selected)
self.trustSiteButton.setImage(UIImage(named: "trust"), for: .normal)
self.trustSiteButton.setImage(UIImage(named: "trustAction"), for: .selected)
self.trustSiteButton.addTarget(self, action: #selector(trustSite), for: .touchUpInside)


self.restrictSiteButton.setTitle("Restrict Site", for: .normal)
self.restrictSiteButton.addTarget(self, action: #selector(restrictSite), for: .touchUpInside)
self.restrictSiteButton.setImage(UIImage(named: "restrictAction"), for: .selected)
self.restrictSiteButton.setTitleColor(UIColor.white, for: .selected)


self.pauseGhosteryButton.setTitle("Pause Ghostery", for: .normal)

self.antitrackingView.count = 3
self.antitrackingView.count = self.blockedTrackersCount
self.antitrackingView.title = "Enhanced Anti-Tracking"
self.antitrackingView.isSwitchOn = true
self.antitrackingView.iconName = "antitracking"
self.adBlockingView.count = 4
self.adBlockingView.title = "Enhanced Anti-Tracking"
self.adBlockingView.count = 0
self.adBlockingView.title = "Enhanced Ad Blocking"
self.adBlockingView.isSwitchOn = true
self.adBlockingView.iconName = "adblocking"
}

@objc private func trustSite() {
self.trustSiteButton.isSelected = !self.trustSiteButton.isSelected
if self.trustSiteButton.isSelected {
self.trustSiteButton.backgroundColor = UIColor(colorString: "9ECC42")
} else {
self.trustSiteButton.backgroundColor = UIColor.white
}
if self.restrictSiteButton.isSelected {
self.restrictSite()
}
}

@objc private func restrictSite() {
self.restrictSiteButton.isSelected = !self.restrictSiteButton.isSelected
if self.restrictSiteButton.isSelected {
self.restrictSiteButton.backgroundColor = UIColor(colorString: "BE4948")
} else {
self.restrictSiteButton.backgroundColor = UIColor.white
}
if self.trustSiteButton.isSelected {
self.trustSite()
}
}

private func setupPieChart() {
let values: [Double] = [11, 33, 81, 52, 97, 101, 75]

@@ -267,10 +307,11 @@ class OverviewViewController: UIViewController {
// chart.data = PieChartData(dataSet: dataSet)
chart.chartDescription?.text = ""
chart.legend.enabled = false
chart.holeRadiusPercent = 0.8
self.view.addSubview(chart)
chart.snp.makeConstraints { (make) in
make.left.right.top.equalToSuperview()
make.height.equalTo(250)
make.height.equalTo(200)
}
}
}

0 comments on commit d3a8ca9

Please sign in to comment.