@@ -64,9 +64,9 @@ class TorrentListViewController<VM: TorrentListViewModel>: BaseViewController<VM
6464 pauseButton,
6565 fixedSpacing,
6666 rehashButton,
67- . init ( barButtonSystemItem : . flexibleSpace, target : nil , action : nil ) ,
67+ . flexibleSpace( ) ,
6868 deleteButton
69- ] :
69+ ] . compactMap { $0 } :
7070 [ addButton, . init( systemItem: . flexibleSpace) , preferencesButton]
7171 }
7272
@@ -168,12 +168,11 @@ class TorrentListViewController<VM: TorrentListViewModel>: BaseViewController<VM
168168
169169 return UIMenu ( children: [
170170 start,
171- pause,
171+ pause
172172// UIMenu(options: .displayInline,
173173// children: [delete])
174174 ] )
175175 }
176-
177176 }
178177 }
179178
@@ -196,7 +195,6 @@ class TorrentListViewController<VM: TorrentListViewModel>: BaseViewController<VM
196195 smoothlyDeselectRows ( in: collectionView)
197196 }
198197
199-
200198 override func viewLayoutMarginsDidChange( ) {
201199 super. viewLayoutMarginsDidChange ( )
202200
@@ -286,7 +284,13 @@ private extension TorrentListViewController {
286284 }
287285
288286 viewModel. $hasRssNews. uiSink { [ unowned self] rssHasNews in
289- rssButton. primaryAction = . init( title: % " rssfeed " , image: rssHasNews ? . icRssNew. withRenderingMode ( . alwaysOriginal) : . icRss, handler: { [ unowned self] _ in
287+ let rssHasNewsImage : UIImage ?
288+ if #available( iOS 26 , * ) {
289+ rssHasNewsImage = . icRssNew. applyingSymbolConfiguration ( . init( paletteColors: [ . label, . systemRed] ) )
290+ } else {
291+ rssHasNewsImage = . icRssNew. withRenderingMode ( . alwaysOriginal)
292+ }
293+ rssButton. primaryAction = . init( title: % " rssfeed " , image: rssHasNews ? rssHasNewsImage : . icRss, handler: { [ unowned self] _ in
290294 viewModel. showRss ( )
291295 } )
292296 }
@@ -335,7 +339,6 @@ private extension TorrentListViewController {
335339 }
336340 }
337341 }
338-
339342 }
340343}
341344
@@ -420,10 +423,12 @@ private extension TorrentListViewController {
420423}
421424
422425private extension TorrentListViewController {
423- var fixedSpacing : UIBarButtonItem {
424- let item = UIBarButtonItem ( barButtonSystemItem: . fixedSpace, target: nil , action: nil )
425- item. width = 44
426- return item
426+ var fixedSpacing : UIBarButtonItem ? {
427+ if #available( iOS 26 , * ) {
428+ return nil
429+ } else {
430+ return UIBarButtonItem . fixedSpace ( 44 )
431+ }
427432 }
428433}
429434
0 commit comments