Commit Graph

4765 Commits

Author SHA1 Message Date
SweetPPro c3cd9cffad
re-add macOS Fullscreen support (#3261)
* re-add macOS Fullscreen support

re added Full Screen support for macOS. Also refactored window methods in Controller.mm and moved to their own category - ControllerWindowMethods.mm

This has currently only been tested on macOS Monterey, and should be good on earlier versions - but perhaps needs testing on earlier versions of macOS.

fixes #3231 #3234
2022-06-12 19:54:52 -05:00
Dzmitry Neviadomski da74fd21cc
[macOS] Use DDG favicons service and migrate to NSURLSession (#3270)
```objc
+ (NSData *)sendSynchronousRequest:(NSURLRequest *)request
                 returningResponse:(NSURLResponse * _Nullable *)response
                             error:(NSError * _Nullable *)error;
```
is deprecated on 10.11+
2022-06-12 15:29:00 -05:00
Gary Elshaw ed394af4d6
Replace gear icon with ellipsis in macOS client (#3178) 2022-06-11 23:24:31 -05:00
Gary Elshaw d4bc5662fe
Add files via upload (#3238) 2022-06-09 12:35:12 -05:00
A Cœur af5db6e6f2
refactor: autogenerate the macOS client's Message Log dots (#3224)
* Replaces DotFlat png with generated icons

* code review: udating popup item icons

* code review: increasing inset
2022-06-08 16:35:51 -05:00
SweetPPro 7056765468
update macOS group indicators (#3183)
* update macOS group indicators

proposal for updated Group indicators, inspired by Xcode, and ios Calendar.

Discussion over here: https://github.com/transmission/transmission/issues/3058

* Update TorrentCell.mm

resolve some pr isssues

* Update TorrentCell.mm

add a group indicator width definition
2022-06-08 15:13:29 -05:00
SweetPPro aabb8c809e
macOS remove FullScreen support (#3220)
removed fullscreen support, as it opens a can of worms trying to fully support it....

https://github.com/transmission/transmission/issues/3215#issuecomment-1147477253
2022-06-08 14:15:51 -05:00
A Cœur 7b6b87b0e6
fix: macOS build warning "cannot find protocol definition for 'PortCheckerDelegate'" (#3222) 2022-06-07 14:27:40 -05:00
SweetPPro 5a140d205d
feat: use system lock icon if available (#3221) 2022-06-06 17:56:05 -05:00
SweetPPro 8d61f07930
fix: missing source file in CMake macOS build (#3208)
* Update CMakeLists.txt

correctly add new files to xcode project
2022-06-05 13:33:18 -05:00
SweetPPro 9cbb4d3384
fix a number of UI render issues in the macOS torrent creator window (#3205)
* fixes a number of UI issues in the macOS torrent creator window listed in: https://github.com/transmission/transmission/issues/1891

* also fixes positioning of the source field, the piece info textfield, and the piece info stepper

* also updates the  tracker add/remove control to use the newer rounded trect style as in the rest of the UI
2022-06-05 11:14:33 -05:00
SweetPPro 70a54b3603
add gearshape temeplate to macOS CMakeLists.txt (#3202)
add missing macOS icon asset to CMakeLists.txt
https://github.com/transmission/transmission/issues/3199
2022-06-05 09:54:45 -05:00
SweetPPro 163f6c2544
more FullScreen fixes, and some toolbar animation fixes (#3195)
* Update Controller.mm

fix fullscreen behaviour as described here https://github.com/transmission/transmission/issues/1906

* more FullScreen fixes, and some toolbar animation fixes

https://github.com/transmission/transmission/issues/1906, https://github.com/transmission/transmission/issues/1903
2022-06-05 08:49:31 -05:00
A Cœur 84195254ec
Fix: "Cannot begin activity without reason string or empty reason string" (#3197) 2022-06-04 18:42:32 -05:00
SweetPPro d31254df50
Update Controller.mm (#3191)
fix fullscreen behaviour as described here https://github.com/transmission/transmission/issues/1906
2022-06-04 14:30:03 -05:00
A Cœur 4906349e3a
Make Sparkle optional to allow running Transmission without Apple Developer Program (#3050)
* Make Sparkle optional to allow building without Apple Developer Program

* Display a nice alert for developers clicking "checkForUpdates" when app isn't signed for Sparkle

Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-06-03 12:47:33 -05:00
Mike Gelfand 79d90167fd
Sync translations (#3184)
* Sync translations with code

* Sync translations with Transifex
2022-06-03 10:06:59 +01:00
SweetPPro df657e9a04
Updated macOS segmented control alignment and popup button style (#3156)
* updated macOS group popup button alignment

popup button alignment enhancements described in the following issue: https://github.com/transmission/transmission/issues/3143

* updated macOS segmented controls in Preferences window

as described in the following issue: https://github.com/transmission/transmission/issues/3143
2022-06-02 19:05:15 -05:00
FX Coudert f5e6c5b782
fix: minor xcode warnings in macOS client (#3174) 2022-06-01 19:51:09 -05:00
SweetPPro 182e51492a
fix macOS statusBar icons (#3113)
* fix macOS statusBar icons

* improved CleanupTemplagte images
2022-05-27 06:59:37 -05:00
A Cœur b033b6598e
Fix group icon border (#3094) 2022-05-26 16:04:20 -05:00
A Cœur 2e25370cc5
Fix QuickLook (#3001)
* Fix QuickLook symbol not found; add file sort and filesize
2022-05-19 23:07:17 -05:00
Antoine Cœur 3c056001b1
support pasting multiple magnet links (#3087) 2022-05-16 23:48:39 -05:00
Charles Kerr a28b07b390
Revert "refactor: move tr_torrent callbacks to tr_session (#3003)" (#3104)
This reverts commit 27fbfd8da6.

Fixes #3088.
2022-05-16 13:48:43 -05:00
Antoine Cœur e23a4b3589
refactor copyMagnetLinks (#3086) 2022-05-16 12:08:20 -05:00
Antoine Cœur 25ef121d71
Add "Verify Local Data" to context menu (#3025) 2022-05-14 21:14:54 -05:00
Antoine Cœur 60254710b8
Rename sortTorrentsAndIncludeQueueOrder and nonEmptyComponentsSeparatedByCharactersInSet (#3051)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-05-14 14:00:55 -05:00
SweetPPro 82bede40d1
fix for macOS "Stay within the global bandwith limits" always displaying true (#3079) 2022-05-14 12:57:22 -05:00
Charles Kerr 27fbfd8da6
refactor: move tr_torrent callbacks to tr_session (#3003)
* refactor: move tr_torrent callbacks to tr_session

* Support tr_sessionSet* (#3044)

Co-authored-by: Antoine Cœur <coeur@gmx.fr>
2022-05-14 10:00:13 -05:00
Antoine Cœur c1f5911fc7
'beginSheet:modalForWindow:modalDelegate:didEndSelector:contextInfo:' is deprecated: (#3031)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-05-14 08:20:56 -05:00
Antoine Cœur 340f88bc12
Fix "The left operand of '<' is a garbage value" (#3042) 2022-05-14 02:53:30 -05:00
wiz78 79274bb335
macOS: disable App Nap. Fixes #577 (#874)
* disable App Nap

* Update Controller.m

merged with upstream changes

* Delete Controller.m

* chore: code-style.sh

Co-authored-by: Simone Tellini <wiz78>
Co-authored-by: Simone Tellini <simone@Argon.local>
Co-authored-by: Simone Tellini <simone@tellini.info>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-05-14 01:57:20 -05:00
Antoine Cœur 5d52da8726
Address format conversion warnings in localizations (#3059) 2022-05-14 00:31:24 -05:00
Antoine Cœur 659969a436
Fix Display window option incorrectly enabled on start (#3056) 2022-05-13 21:27:31 -05:00
Antoine Cœur 67f6562ae4
Updating group icon style for newer macOS (#3065) 2022-05-13 19:54:10 -05:00
Antoine Cœur 5026d43920
Add ⌘C support (#3072) 2022-05-13 16:03:07 -05:00
Antoine Cœur d5533ee648
Fix "Port checker returned invalid status: 0" (#3064)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-05-10 09:54:39 -05:00
Antoine Cœur e7312eba14
Rename "Remove Data File" to "Trash Data File" (#3057) 2022-05-08 20:47:56 -05:00
Cœur 1f419a3a6f Fix retrieving groups with predicates 2022-05-05 16:14:06 +08:00
Antoine Cœur a57d265968
Set recommended CODE_SIGN_IDENTITY and PRODUCT_BUNDLE_IDENTIFIER (#3043) 2022-05-01 16:55:09 -05:00
Antoine Cœur d498aa1ae1
The left operand of '+' is a garbage value (#3041) 2022-05-01 07:26:45 -05:00
Antoine Cœur 7eecdca68e
clang-format version 12.0.1 + 14.0.3 (#3027) 2022-04-30 12:49:52 -05:00
Antoine Cœur 34ec2f5aa4
Adopting lightweight generics (#2974) 2022-04-29 17:51:40 -05:00
Antoine Cœur aafedcaae1
Address deprecations with NSKeyedUnarchiver (#2973) 2022-04-29 16:44:59 -05:00
Antoine Cœur 42713c6716
OS X → macOS (#2986) 2022-04-26 09:11:44 -05:00
Antoine Cœur 7f9264940e
Compatibility to build on the last macOS 32 bit system with its last compatible Xcode (#2844)
* Compatibility to build on the last macOS 32 bit system with its last compatible Xcode

* Code review: Compatibility declarations

* compatibility with `make`

* Code review: headers

* Avoiding dummy NSImageSymbolConfiguration implementation

* clang-format

* Don't force-include compat header

* Remove compat header from pch header

Co-authored-by: Charles Kerr <charles@charleskerr.com>
Co-authored-by: Mike Gelfand <mikedld@mikedld.com>
2022-04-24 21:34:30 +01:00
Antoine Cœur fe40692dea
Balancing HTML opening-closing tags (#2975) 2022-04-24 12:15:02 -05:00
Charles Kerr 32f854a7cf
refactor: add a tr_port safety class (#2952) 2022-04-21 10:58:13 -05:00
Antoine Cœur bdac708762
docs: fix various typos and misspellings (#2955) 2022-04-21 09:28:38 -05:00
Charles Kerr 6cdc7e3828
refactor: remove tr_announce_list::tracker info.announce (#2931) 2022-04-16 15:41:51 -05:00
Antoine Cœur bafb8d6495
Trim spaces when using cmd+u sheet (#2915) 2022-04-15 23:02:25 -05:00
Charles Kerr 31c65eec1f
refactor: remove tr_strvJoin() (#2896) 2022-04-07 17:26:59 -05:00
Charles Kerr 7aeb5d8b2f
Merge branch 'main' into nevack/mojave-infowindow-fix 2022-04-03 13:34:31 -05:00
Dzmitry Neviadomski 7cf920a020 [macOS] Fix Tab selection in InfoWindow on Mojave
Fixes #2599
2022-04-03 16:41:09 +03:00
Gary Elshaw 57b03114dc
New images for 'Message Log' (#2779) 2022-04-02 20:08:39 -05:00
Mike Gelfand d943f069f5
Fix code_style.sh to include *.mm files after switch to Obj-C++ (#2846) 2022-03-31 00:52:23 +03:00
Ali 0a8cfba3b3
Add ability to change piece size during torrent creation in MacOS GUI… (#2805)
* Add ability to change piece size during torrent creation in MacOS GUI (#2416)

* Shouldn't have committed the xcodeproj file
2022-03-24 22:26:21 -05:00
Charles Kerr fa8aaf7631
refactor: remove remaining vararg log messages (#2776) 2022-03-17 17:39:06 -05:00
Charles Kerr 5df252d1e1
fix: calculate ratio as uploaded / sizeWhenDone (#2770) 2022-03-17 13:41:48 -05:00
Charles Kerr 54ef7341a2
refactor: fmt pt 4 (#2774)
Co-authored-by: Mike Gelfand <mikedld@mikedld.com>
2022-03-16 19:23:44 -05:00
SweetPPro 4f2472cd93
Update Torrent.mm (#2777) 2022-03-16 15:16:23 -05:00
Charles Kerr 2bd42f8225
fixup: macos log error (#2764)
* fix: assertion failure in MessageWindowController

* feat: update messagwindow xib to new log levels
2022-03-12 11:42:43 -06:00
Charles Kerr d2f8e1d4e0
refactor: set logging levels (#2755) 2022-03-11 15:09:22 -06:00
Markus Amalthea Magnuson 143c5f5381
Added ability to filter on error status. (#19) 2022-03-07 01:01:01 -05:00
SweetPPro a009a7f930
migrate macOS client to using tr_sessionLoadTorrents (#2686)
* migrate macOS client to using tr_sessionLoadTorrents

With this PR the macOS client now loads torrents at startup using `tr_sessionLoadTorrents`

The history file is used in tandem to provide macOS specific additions
2022-03-02 15:11:04 -08:00
Charles Kerr 80ab910cbd
feat: update built-in speed limit settings (#2697)
Fixes #2092.
2022-02-23 20:27:28 -06:00
Dmitry Serov 54d1a02e92
Use properties instead of ivars (#2453) 2022-02-22 10:04:20 -06:00
Mike Gelfand b2a01df64d
Sync existing translations with Transifex 2022-02-21 21:30:30 +00:00
Mike Gelfand bcc0cfa127
Sync existing translations with code 2022-02-21 21:24:50 +00:00
Mitchell Livingston d2ee48d05d Remove the accent color
The app will now use the default system blue when no system-level accent color is set.
2022-02-21 09:38:22 -05:00
Mitchell Livingston 5ea99cb32a Remove the info panel's icons from the xib.
They are not available on earlier versions of macOS and are reset in code.
2022-02-20 17:58:55 -05:00
Charles Kerr 02b6cc76d1
feat: add tr_torrentSetTrackerList(), tr_torrentGetTrackerList() (#2642)
Add a getter/setter for torrent announce URLs as text that can be copied
and pasted: one URL per line, with a blank line between tiers.

C API: tr_torrentGetTrackerList() and tr_torrentSetTrackerList()
RPC APi: `trackerList` in `torrent-get` and `torrent-set`.

This deprecates `trackerAdd`, `trackerRemove`, and `trackerEdit`
from the RPC API.
2022-02-18 11:52:01 -06:00
Charles Kerr 2410ad2fa6
feat: support webseeds in transmission-create (#2611) 2022-02-12 12:50:47 -06:00
Charles Kerr 7bdb6f777b
refactor: remove callback from tr_torrentVerify() public API (#2592) 2022-02-09 12:02:59 -06:00
Charles Kerr 318d60b72d
refactor: fix sonarcloud "use enum class" code smells (#2590)
* refactor: prefer constexpr over enum for GUI_PAD values

* refactor: prefer constexpr over enum for PrefsDialog values

* refactor: prefer constexpr over enum for StatsDialog values

* refactor: use enum class for GtrUnicode types

* refactor: prefer constexpr over enum for BT peer msg codes

* refactor: use enum class for TrMakemetaResult

* refactor: prefer constexpr over enum for BT metadata message types

* refactor: use enum class for AwaitingBt

* refactor: use enum class for EncryptionPreference

* refactor: use enum class for TrFormat in rpcimpl

* refactor: prefer constexpr over enum for QApp intervals

* refactor: prefer constexpr over enum for tr_resume bitfields

* refactor: prefer constexpr over enum for Qt/TrFileModel bitfields

* refactor: remove obsolete TODO comment in announce-list
2022-02-08 20:25:19 -06:00
Mitchell Livingston 0ea4a38c73 Update Sparkle to 1.27.1 2022-01-30 17:10:51 -05:00
FX Coudert 4fe33496c7
macOS: remove quitting badge (#2495)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2022-01-25 11:45:06 -06:00
C.W. Betts 3b4909ac9d
Move private interfaces to interface extensions (#932) 2022-01-23 19:32:45 -06:00
Charles Kerr df1cca9b57
chore: update copyright years, make notices consistent (#2463) 2022-01-20 12:27:56 -06:00
Charles Kerr 8d75736ad1
fix: empty torrent filename (#2435)
fix torrents readded due to unremoved cfg files.
2022-01-17 23:14:00 -06:00
Charles Kerr bcf5e4636a
fix: calculate seed ratio by torrent size. (#2424)
Previously was calculated by number of bytes downloaded, which caused
edge cases when those two numbers were not the same, e.g. if the user
already had part of the torrent from another source and only downloaded
a small part. When this happened, the ratio could be very large and use
of seedratio would behave in a way that most people would not expect.

Note, the old behavior has been around for a VERY LONG TIME. Even though
this is a bugfix, it does change semantics. I don't think there is any
third-party code that depends on the old behavior but this is arguably
a breaking change.
2022-01-17 17:16:37 -06:00
Charles Kerr dfc06fe918
refactor: use std::vector in tr_info (#2386) 2022-01-09 10:55:09 -06:00
Charles Kerr 8b65b660c8
refactor: use std::string in tr_file (#2382) 2022-01-08 12:53:35 -06:00
Charles Kerr 02aa2f46d4
refactor: don't use varargs in tr_error (#2352) 2021-12-27 20:32:22 -06:00
Charles Kerr a515c1d94b
refactor: use tr_torrent_metainfo in tr ctor (#2345) 2021-12-26 10:25:07 -06:00
Charles Kerr 3f8cf63e59
refactor: use tr_torrent_metainfo in mac client (#2343) 2021-12-25 21:12:32 -06:00
Charles Kerr b058daff4b
refactor: change tr_torrentNew() args (#2337) 2021-12-24 16:05:17 -06:00
Charles Kerr dd1379b0b6
refactor: add tr_interned_string (#2332) 2021-12-23 11:16:05 -06:00
Charles Kerr b93f3f0463
refactor: more tr_torrent housekeeping (#2320) 2021-12-16 03:43:51 -06:00
Charles Kerr 1e20d676c1
refactor: make tr_torrentInfo() private (#2285)
* refactor: make tr_torrentInfo() private
2021-12-14 15:59:44 -06:00
Charles Kerr 656df477f2
refactor: add tr_announce_list (#2308)
* refactor: add tr_announce_list (#2308)
2021-12-14 14:59:40 -06:00
Dzmitry Neviadomski e73395e531 [macOS] Use old icon name for Square Grid to support older macOS
`square.grid.3x3.fill.square` is deprecated name for `square.grid.3x3.square`.
The former is available on macOS 11.0+, while the latter is for macOS 12.0+.
They are the same visually.

Fixes this report https://github.com/transmission/transmission/pull/2269#issuecomment-991980368
2021-12-13 07:36:03 +03:00
Dzmitry Neviadomski c38ee22f7f [macOS] Update Info window.
Use SF Symbols on macOS 11+

Use NSSegmentedControl instead of custom view.

Add NSImage extension to fallback loading from
assets on macOS 10.15 and older.

Also should fix sizing issues when changing pane from Options
to Files.

Fixes #2247
2021-12-12 08:24:16 +03:00
Charles Kerr ef7ff98f03
Merge branch 'master' into patch-1 2021-12-09 11:17:44 -06:00
Charles Kerr ab0c49859e
refactor: add tr_torrentTrackers() (#2282)
* refactor: add tr_torrentTrackers()
2021-12-08 10:55:52 -06:00
Charles Kerr c46ce2da06
refactor: add tr_torrentWebseed(), tr_torrentWebseedCount() (#2277)
* refactor: add tr_torrentWebseedCount()
2021-12-07 12:11:28 -06:00
FX Coudert c4b9a5b53a
Change accent color to match macOS red choice 2021-12-07 09:16:53 +01:00
Charles Kerr 34881f6295
refactor: make parts of tr file private (#2241)
* refactor: make parts of tr_file private
2021-11-27 21:17:47 -06:00
FX Coudert d3c3058f16
Mac client uses freed memory (#2234)
* Update main.mm
2021-11-27 15:59:46 -06:00
Dzmitry Neviadomski 1459220b5b
[macOS] Fix downloading compressed peer blocklists (#2191)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-11-21 11:36:06 -06:00
Dzmitry Neviadomski 53f799ada6
Migrate macOS BlocklistDownloader to NSURLSession. (#2101)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-11-10 12:55:15 -06:00
Dzmitry Neviadomski 1449ccac49
Migrate deprecated NSWorkspaceRecycleOperation (#2113)
Also make code flow less nested

Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-11-10 12:20:06 -06:00
Charles Kerr d8b57fe4dc
refactor: web_utils (#2121)
* chore: move web utils from web, utils to web-utils
2021-11-08 21:30:03 -06:00
Charles Kerr 4ecf74081c
refactor: remove tr_ctorSetMetainfoFromHash() (#2116)
* refactor: remove tr_ctorSetMetainfoFromHash()
2021-11-07 20:04:07 -06:00
Dzmitry Neviadomski 689063b305
Fix deprecated NSURL to NSString conversion. (#2090)
clang warning:
```
'stringByReplacingPercentEscapesUsingEncoding:' is deprecated: first deprecated in macOS 10.11 - Use -stringByRemovingPercentEncoding instead, which always uses the recommended UTF-8 encoding. [-Wdeprecated-declarations]
```

Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-11-03 10:04:05 -05:00
Dzmitry Neviadomski 1bf6189526
Migrate Deprecated OSAtomicIncrement32 function. (#2074)
As per clang output:
`warning: 'OSAtomicIncrement32' is deprecated: first deprecated in macOS 10.12 - Use std::atomic_fetch_add_explicit(std::memory_order_relaxed) from <atomic> instead`
2021-11-03 01:00:52 -05:00
Dzmitry Neviadomski b8c01a581e
[macos] Replace Deprecated constants. (#2038)
* Replace Deprecated constants pt.1

- `NSOnState` -> `NSControlStateValueOn`
- `NSOffState` -> `NSControlStateValueOff`
- `MSMixedState` -> `NSControlStateValueMixed`

* Replace Deprecated constants pt.2

- `NS(\w+)AlertStyle` -> `NSAlertStyle$1`

* Replace Deprecated constants pt.3

- `NSFileHandlingPanel(\w+)Button` -> `NSModalResponse$1`

* Replace Deprecated constants pt.4

- `NSMouse(Entered|Exited)Mask` -> `NSEventMaskMouse$1`
- `NS(Left|Right)Mouse(Down|Up|Dragged)Mask` -> `NSEventMask$1Mouse$2`
- `NSMouse(Entered|Exited)` -> `NSEventTypeMouse$1`
- `NS(Left|Right)Mouse(Up|Down)` -> `NSEventType$1Mouse$2`

* Replace Deprecated constants pt.5

- `NSComposite(\w+)` -> `NSCompositingOperation$1`

* Replace Deprecated constants pt.6

- `NSAlternateKeyMask` -> `NSEventModifierFlagOption`
- `NSCommandKeyMask` -> `NSEventModifierFlagCommand`

* Replace Deprecated constants pt.7

- `NS(\w+)TextAlignment` -> `NSTextAlignment$1`
- `NSBackgroundStyleDark` -> `NSBackgroundStyleEmphasized`

* Replace Deprecated constants pt.8

- `NSTexturedRoundedBezelStyle` -> `NSBezelStyleTexturedRounded`
- `NSBorderlessWindowMask` -> `NSWindowStyleMaskBorderless`
- `NS(OK|Cancel)Button` -> `NSModalResponse$1`
2021-10-31 10:18:27 -05:00
Dzmitry Neviadomski cdec576fc9 Fix clang warning in VDKQueue.m
Fix warning `Method override for the designated
initializer of the superclass '-init' not found`
with `NS_UNAVAILABLE` marker.
2021-10-30 01:05:13 +03:00
Dzmitry Neviadomski 9bb3de406b
Fix CMake and Ninja rebuilds on macOS. (#2036)
The problem could occur with Makefiles also.
Use `-r` option on `rm` as `*.iconset` is a directory.

Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-10-24 16:48:20 -05:00
Oleg Chashko 54b85583e6
Fixes #1904 (#2019)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-10-22 19:16:08 -05:00
Oleg Chashko 0c39924074
Fixed: #1890 (#2013) 2021-10-22 11:58:53 -05:00
Oleg Chashko af38bb1dc3
Fixed: In the "Filter Bar" the "Groups" icon is clipped at the top #1905 (#2005)
* Fix & Added for #443. Fixes: #1905
2021-10-22 07:46:54 -05:00
Oleg Chashko 3d5fb103d3
Fixed: #1902 (#2008)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-10-22 07:45:09 -05:00
Charles Kerr 8cdc2c633e
refactor: replace tr_torrentFiles() with tr_torrentFileProgress() (#1994)
* refactor: s/tr_torrentFiles/tr_torrentFileProgress

Replace tr_torrentFiles() with a new function, tr_torrentFileProgress().

tr_torrentFiles() heap-allocated an array of progress structs. There is
nothing intrinsic in tr_torrent making batch computation more efficient,
so this PR replaces it with tr_torrentFileProgress(), a per-file variant
that doesn't use the heap.
2021-10-21 13:31:03 -05:00
Charles Kerr 241dc34019
fixup! refactor: tr_variant*Str() functions now take a std::string_view (#1990) (#1999) 2021-10-20 17:43:31 -05:00
Oleg Chashko 83ec912c5d
Fix & Added for #443 (#1991)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-10-19 09:15:37 -05:00
Daniel Kamil Kozar 77b11232f2
Add support for creating torrents with a source flag (#443)
* Add support for creating torrents with a source flag

* Add the source flag functionality for Mac OSX

* Source flag should be a part of the info dictionary

* Address review comments

* Rename "sourceFlag" to "source" since "Flag" is usually reserved for booleans.
* Free the "source" pointer in tr_metainfoFree.
* Add information about transmission-create argument to its manpage.

* Replace all occurences of "sourceFlag" with "source" and use "Source tag" in UI

* Settle on just "Source" in UI

* The last usage of "flag" hopefully bites the dust! ;-)

* Add a missing free for the source in tr_metainfoFree

* Add a "source" field to the torrent-get RPC method

* uncrustify

* Test for torrents having different infohashes due to different source flags.

This is the whole point of this feature, so it makes sense to test it.

* case is important

* try to incorporate the macosx xml changes
2021-10-18 18:05:39 -05:00
Oleg Chashko 2bd2f0738e
fix: macOS gui with Russian l10n does not fit lines of text. (Fixes #1963) (#1973)
* Fixed: #1963

* Fixed: (✕) -> Changed to (No Group) & (None)

* Fixed: Удалённое управление -> Удалённый доступ

* Удаленное управление -> Удалённый доступ
2021-10-17 13:45:25 -05:00
Oleg Chashko b0f36a9841
Fix: issue #1940 (#1955)
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-10-14 13:18:18 -05:00
Oleg Chashko 5947329a51
Fix: issue #1889, #1894, #1912, #1913 (#1923)
* Fix: issue #1889

* Fix: issue #1894

* Fix: issue #1912

* Fix: issue #1913
2021-10-13 11:04:10 -05:00
Charles Kerr 98e16a178f
refactor: add an enumeration of the script types (#1934)
* refactor: add an enumeration of the script types

This simplifies the API by having a single set of functions that can be
used for getting/setting all the script types.
2021-10-12 22:46:12 -05:00
Charles Kerr 1fb5a79813
refactor: use maybe unused attribute (#1918)
* refactor: replace TR_UNUSED with [[maybe_unused]]
2021-10-10 11:52:26 -05:00
Mike Gelfand b7ba261359
Port macOS client to C++ (#1830)
* Rename all .m (Obj-C) files to .mm (Obj-C++)

* Fix build in Obj-C++ mode

* Fix Xcode build
2021-09-24 07:56:57 -05:00
Charles Kerr 97a6f1232e
fixup! perf: prioritize announces based on scrape stats (#1782) (#1786)
* fixup! perf: prioritize announces based on scrape stats (#1782)
2021-09-11 08:11:46 -05:00
Charles Kerr d6cb99e57c
perf: use scrape to know when a private swarm is all-seeds (#1780)
* perf: use scrape to know when a swarm is all-seeds

For private torrents, the tracker is the sole source of peers. So when a
private torrent's tracker responds that there are 0 leechers, we can use
that information to mark the entire swarm as seeders and to not initiate
connections to those peers if we are seeding. This can help seedboxes to
more efficiently pick which swarms to prioritize.

This strategy is not used on public torrents, since new seeder-to-seeder
connections can be useful there for pex.

This PR changes tr_peerMgrAddPex() to (1) remove tr_atom.seedProbability
field (which was not as robust as intended) and (2) add batches of peers
instead of a single peer.

* fix: only use all-seeds check for private torrents
2021-09-09 15:25:30 -05:00
Mike Gelfand db3d40d0ed Switch to clang-format for code formatting, include Mac client 2021-08-16 00:38:29 +03:00
Dmitry Serov af3a4d4557
Modern Objective-C syntax (#509)
* Update enabled complier warnings

* Convert to Modern Objective-C syntax using Xcode's tool

* Convert to modern objc syntax manually, fix some PR issues

* Remove unnecessary parentheses

* Use property syntax for all custom properties

* Use property syntax for all system properties

* Fix erroneously autoreleased values

* Revert VDKQueue to old objc syntax

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
Co-authored-by: Mitch Livingston <livings124@mac.com>
2021-08-07 10:27:56 +03:00
Mike Gelfand faafc9e02f Generate app icon file for CMake build
TODO: Look into switching to .car file for all resources.

Fixes: #1672
2021-04-25 00:56:48 +03:00
Mitchell Livingston 7edd656536 Update app icon from icns to pngs in the asset catalog 2021-03-29 22:07:55 -04:00
Mitch Livingston fc0e14da06
Merge pull request #1651 from transmission/icon-badges
Simplified download badges
2021-03-29 19:04:45 -04:00
Mitchell Livingston 20bd1146ce Simplified download badges
Thanks to Rodger Werner
2021-03-29 18:39:57 -04:00
Mitchell Livingston 180e59ab6b macOS icon redesigned for Big Sur 2021-03-29 18:05:30 -04:00
Dzmitry Neviadomski e5bff86ae7 Remove redutant statements. 2021-01-18 05:52:38 +03:00
Dzmitry Neviadomski 18266e080e Move ivars to @implementation. 2021-01-12 22:06:30 +03:00
Mitchell Livingston e9ece48c87 remove unused method 2021-01-02 23:30:47 -05:00
Mitchell Livingston 1527698de4 Fix a few deprecation warnings 2021-01-02 23:29:08 -05:00
Mitchell Livingston 37573c9821 Remove unused background gradient variables 2020-12-30 20:18:12 -05:00
Mitchell Livingston 567cfff1e7 Update CMakeLists.txt 2020-12-23 08:15:32 -05:00
Mitchell Livingston 74189416c6 Remove pre-10.10 codepaths 2020-12-22 22:00:06 -05:00
Mitch Livingston de3f53131c
Merge branch 'master' into macos-11 2020-11-30 18:06:20 -05:00
Mitch Livingston 21684464e5
Merge branch 'master' into alert-deprecations 2020-11-22 09:05:48 -05:00
Mitchell Livingston 73f2bb52f5 Silence two more warnings 2020-11-22 08:31:39 -05:00
Mitch Livingston c67c3c1b7c
Merge branch 'master' into replace-deprecated-api 2020-11-22 08:07:36 -05:00
Mitchell Livingston 185d6b78a5 Remove beginSheetModalForWindow: deprecation warnings 2020-11-22 08:02:29 -05:00
Mitchell Livingston 21f173904a Update the preferences window to use SF Symbols 2020-11-21 08:27:38 -05:00
Mitchell Livingston b51fd847e7 Update the main window to use SF Symbols 2020-11-21 08:27:07 -05:00
Mitchell Livingston 55e883318d Set an app accent color on macOS 11 2020-11-17 23:46:03 -05:00
Mitchell Livingston 0916844fa5 Remove deprecated min/max toolbar item size 2020-11-17 22:34:33 -05:00
Mitchell Livingston 31413dffb1 Explicitly set the preference window's toolbar style 2020-11-17 22:08:08 -05:00
Mitchell Livingston 7651bb4821 Fix main table view styling 2020-11-17 22:07:45 -05:00