Skip to content

Commit

Permalink
Add delegate callback methods, swiftlint changes
Browse files Browse the repository at this point in the history
  • Loading branch information
tonisevener committed Jan 5, 2024
1 parent 7b03f84 commit e430cb4
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ protocol WKEditorToolbarExpandingViewDelegate: AnyObject {
func toolbarExpandingViewDidTapFormatText(toolbarView: WKEditorToolbarExpandingView)
func toolbarExpandingViewDidTapFormatHeading(toolbarView: WKEditorToolbarExpandingView)
func toolbarExpandingViewDidTapTemplate(toolbarView: WKEditorToolbarExpandingView, isSelected: Bool)
func toolbarExpandingViewDidTapLink(toolbarView: WKEditorToolbarExpandingView, isSelected: Bool)
func toolbarExpandingViewDidTapImage(toolbarView: WKEditorToolbarExpandingView)
}

class WKEditorToolbarExpandingView: WKEditorToolbarView {
Expand Down Expand Up @@ -204,6 +206,7 @@ class WKEditorToolbarExpandingView: WKEditorToolbarView {
}

@objc private func tappedLink() {
delegate?.toolbarExpandingViewDidTapLink(toolbarView: self, isSelected: linkButton.isSelected)
}

@objc private func tappedUnorderedList() {
Expand Down Expand Up @@ -239,6 +242,7 @@ class WKEditorToolbarExpandingView: WKEditorToolbarView {
}

@objc private func tappedMedia() {
delegate?.toolbarExpandingViewDidTapImage(toolbarView: self)
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ protocol WKEditorToolbarHighlightViewDelegate: AnyObject {
func toolbarHighlightViewDidTapBold(toolbarView: WKEditorToolbarHighlightView, isSelected: Bool)
func toolbarHighlightViewDidTapItalics(toolbarView: WKEditorToolbarHighlightView, isSelected: Bool)
func toolbarHighlightViewDidTapTemplate(toolbarView: WKEditorToolbarHighlightView, isSelected: Bool)
func toolbarHighlightViewDidTapLink(toolbarView: WKEditorToolbarHighlightView, isSelected: Bool)
func toolbarHighlightViewDidTapShowMore(toolbarView: WKEditorToolbarHighlightView)
func toolbarHighlightViewDidTapFormatHeading(toolbarView: WKEditorToolbarHighlightView)
}
Expand Down Expand Up @@ -100,6 +101,7 @@ class WKEditorToolbarHighlightView: WKEditorToolbarView {
}

@objc private func tappedLink() {
delegate?.toolbarHighlightViewDidTapLink(toolbarView: self, isSelected: linkButton.isSelected)
}

@objc private func tappedTemplate() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,5 +78,6 @@ class WKEditorToolbarPlainView: WKEditorToolbarView {
}

@objc private func tappedLink() {
delegate?.didTapLink(isSelected: linkButton.isSelected)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,12 @@ import Foundation
import UIKit

protocol WKEditorInputViewDelegate: AnyObject {
func didTapClose()
func didTapBold(isSelected: Bool)
func didTapItalics(isSelected: Bool)
func didTapTemplate(isSelected: Bool)
func didTapStrikethrough(isSelected: Bool)
func didTapLink(isSelected: Bool)
func didTapClose()
}

class WKEditorInputViewController: WKComponentViewController {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -310,12 +310,20 @@ extension WKSourceEditorViewController: WKEditorToolbarExpandingViewDelegate {
let action: WKSourceEditorFormatterButtonAction = isSelected ? .remove : .add
textFrameworkMediator.templateFormatter?.toggleTemplateFormatting(action: action, in: textView)
}

func toolbarExpandingViewDidTapLink(toolbarView: WKEditorToolbarExpandingView, isSelected: Bool) {

}

func toolbarExpandingViewDidTapImage(toolbarView: WKEditorToolbarExpandingView) {

}
}

// MARK: - WKEditorToolbarHighlightViewDelegate

extension WKSourceEditorViewController: WKEditorToolbarHighlightViewDelegate {

func toolbarHighlightViewDidTapBold(toolbarView: WKEditorToolbarHighlightView, isSelected: Bool) {
let action: WKSourceEditorFormatterButtonAction = isSelected ? .remove : .add
textFrameworkMediator.boldItalicsFormatter?.toggleBoldFormatting(action: action, in: textView)
Expand All @@ -331,6 +339,10 @@ extension WKSourceEditorViewController: WKEditorToolbarHighlightViewDelegate {
textFrameworkMediator.templateFormatter?.toggleTemplateFormatting(action: action, in: textView)
}

func toolbarHighlightViewDidTapLink(toolbarView: WKEditorToolbarHighlightView, isSelected: Bool) {

}

func toolbarHighlightViewDidTapShowMore(toolbarView: WKEditorToolbarHighlightView) {
inputViewType = .main
postUpdateButtonSelectionStatesNotification(withDelay: true)
Expand All @@ -344,6 +356,7 @@ extension WKSourceEditorViewController: WKEditorToolbarHighlightViewDelegate {
// MARK: - WKEditorInputViewDelegate

extension WKSourceEditorViewController: WKEditorInputViewDelegate {

func didTapBold(isSelected: Bool) {
let action: WKSourceEditorFormatterButtonAction = isSelected ? .remove : .add
textFrameworkMediator.boldItalicsFormatter?.toggleBoldFormatting(action: action, in: textView)
Expand All @@ -364,6 +377,10 @@ extension WKSourceEditorViewController: WKEditorInputViewDelegate {
textFrameworkMediator.strikethroughFormatter?.toggleStrikethroughFormatting(action: action, in: textView)
}

func didTapLink(isSelected: Bool) {

}

func didTapClose() {
inputViewType = nil
let isRangeSelected = textView.selectedRange.length > 0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -901,31 +901,31 @@ final class WKSourceEditorFormatterTests: XCTestCase {
var linkRange5 = NSRange(location: 0, length: 0)
let linkAttributes5 = mutAttributedString.attributes(at: 53, effectiveRange: &linkRange5)

//"[[File:Cat with fish.jpg|thumb|left|Cat with "
// "[[File:Cat with fish.jpg|thumb|left|Cat with "
XCTAssertEqual(linkRange1.location, 0, "Incorrect link formatting")
XCTAssertEqual(linkRange1.length, 45, "Incorrect link formatting")
XCTAssertEqual(linkAttributes1[.font] as! UIFont, fonts.baseFont, "Incorrect base formatting")
XCTAssertEqual(linkAttributes1[.foregroundColor] as! UIColor, colors.blueForegroundColor, "Incorrect link formatting")

//"[["
// "[["
XCTAssertEqual(linkRange2.location, 45, "Incorrect link formatting")
XCTAssertEqual(linkRange2.length, 2, "Incorrect link formatting")
XCTAssertEqual(linkAttributes2[.font] as! UIFont, fonts.baseFont, "Incorrect base formatting")
XCTAssertEqual(linkAttributes2[.foregroundColor] as! UIColor, colors.blueForegroundColor, "Incorrect link formatting")

//"fish"
// "fish"
XCTAssertEqual(linkRange3.location, 47, "Incorrect link formatting")
XCTAssertEqual(linkRange3.length, 4, "Incorrect link formatting")
XCTAssertEqual(linkAttributes3[.font] as! UIFont, fonts.baseFont, "Incorrect base formatting")
XCTAssertEqual(linkAttributes3[.foregroundColor] as! UIColor, colors.blueForegroundColor, "Incorrect link formatting")

//"]]"
// "]]"
XCTAssertEqual(linkRange4.location, 51, "Incorrect link formatting")
XCTAssertEqual(linkRange4.length, 2, "Incorrect link formatting")
XCTAssertEqual(linkAttributes4[.font] as! UIFont, fonts.baseFont, "Incorrect base formatting")
XCTAssertEqual(linkAttributes4[.foregroundColor] as! UIColor, colors.blueForegroundColor, "Incorrect link formatting")

//"|alt=Photo of cat looking at fish]]"
// "|alt=Photo of cat looking at fish]]"
XCTAssertEqual(linkRange5.location, 53, "Incorrect link formatting")
XCTAssertEqual(linkRange5.length, 35, "Incorrect link formatting")
XCTAssertEqual(linkAttributes5[.font] as! UIFont, fonts.baseFont, "Incorrect base formatting")
Expand Down

0 comments on commit e430cb4

Please sign in to comment.