 
 	private var fontSize: FontSize = AppDefaults.shared.timelineFontSize {
 		didSet {
-			fontSizeDidChange()
+			if fontSize != oldValue {
+				fontSizeDidChange()
+			}
 		}
 	}
 

		if shouldFetchAndMergeArticles {
			queueFetchAndMergeArticles()
		}
	}

	// MARK: - Reloading Data

			NotificationCenter.default.addObserver(self, selector: #selector(imageDidBecomeAvailable(_:)), name: .ImageDidBecomeAvailable, object: nil)
			NotificationCenter.default.addObserver(self, selector: #selector(imageDidBecomeAvailable(_:)), name: .FaviconDidBecomeAvailable, object: nil)
			NotificationCenter.default.addObserver(self, selector: #selector(accountDidDownloadArticles(_:)), name: .AccountDidDownloadArticles, object: nil)
			NotificationCenter.default.addObserver(self, selector: #selector(userDefaultsDidChange(_:)), name: UserDefaults.didChangeNotification, object: nil)

				didRegisterForNotifications = true
		}
	}

	// MARK: Appearance Change

	private func fontSizeDidChange() {

		TimelineCellData.emptyCache()
		RSSingleLineRenderer.emptyCache()
		RSMultiLineRenderer.emptyCache()

		cellAppearance = TimelineCellAppearance(theme: appDelegate.currentTheme, showAvatar: false, fontSize: fontSize)
		cellAppearanceWithAvatar = TimelineCellAppearance(theme: appDelegate.currentTheme, showAvatar: true, fontSize: fontSize)
		updateRowHeights()
		tableView.reloadData()
	}

	// MARK: - API
