Commit Graph

15202 Commits

Author SHA1 Message Date
Charles Kerr 088e146cee
fix: crash on large udp announce response (#4022)
Fixes #4006.
2022-10-24 17:58:19 -05:00
Charles Kerr e8079835d3
fix: crash when a torrent autopauses after encountering an error (#4021) 2022-10-24 16:57:07 -05:00
Charles Kerr 2262efdb7f
fix: ignore unrecognized torrent-get fields (#4018)
Fixes #2916.

Not actually a Transmission bug, but restores undefined behavior to be
consistent with 3.00's undefined behavior in the RPC spec.
2022-10-24 15:02:48 -05:00
Charles Kerr b32f3e0a24
refactor: add tr_address::toCompact() (#4014)
* refactor: add tr_address::toCompact()

* test: use the theory.org compact ipv4/6 examples in NetTest.compact4, NetTest.compact6

* refactor: add tr_address::toCompact()

* test: add toCompact, fromCompact tests

* refactor: add compact <--> sockaddr_storage conversion
2022-10-24 13:40:12 -05:00
Derek Reiff be4a44292e
build: update CMakeLists to reflect recent assets/ changes (#4013) 2022-10-24 10:14:42 -05:00
SweetPPro a8267395b2
macOS fix a potential hang when updating the blocklist (#4010)
fixes potential hang when unzipping a new blocklist on macOS (#3969)
2022-10-24 10:12:33 -05:00
Mike Gelfand 70f623f32b
Add user data parameter for torrent removal callback (#4009) 2022-10-23 11:51:35 -05:00
Mike Gelfand f0a0b855c6
Reload files list in details dialog, unless already loaded (GTK client) (#4004) 2022-10-22 10:42:38 +01:00
Charles Kerr d191a04228
refactor: decouple tr_announcer_udp (#4002) 2022-10-21 13:15:14 -05:00
Derek Reiff 6187cfd67b
Refresh web interface across desktop and mobile (#3985)
* Add macOS section to Web-Interface docs

- Add minimal steps to enable web interface on macOS
- Clean up README.md with some markdown linting.

* Updating and modernizing web interface, colors, icons

In general:

- increase spacing and decrease font sizes in most inspectors (so far)
- replace icons  with emoji. may not be the way to go in the end

* update toolbar icon sizes to adjust for differences

* Switch from icons to buttons, other minor color changes

1. Add 'warn' class to dangerous actions
2. Add 'table-row' helper to overflow menu
3. Use text instead of icons for this new tab style

* Update icons using feathericons.com

* Rename files, replace some SVG and optimize PNG

* Remove more unused variables

* Update index.html to reflect new icons

* More minor svg changes; delete old images

* Updated build output

* Remove icons, add new feather svg icons

Build is now sub-200 KB
2022-10-21 12:22:59 -05:00
Mike Gelfand da27c3d18d
Prefer ayatana-appindicator over appindicator, if present (#4001) 2022-10-20 18:15:13 +01:00
Mike Gelfand 5564d9eb46
Catch dbus exceptions in async callbacks on completion (GTK client) (#3997)
GLIBMM will catch them for us, but in two cases print a warning instead
of suppressing, and in one other case still print a warning (as well as
we do) but without context.
2022-10-19 16:27:07 -05:00
Dmitry Serov 3a8dc9d203
Replace preprocessor defines with constants in objc code (#3974) 2022-10-19 14:28:21 -05:00
Yuze Jiang 8cad9675d8
Update to the message log window on macOS, fix #3627 (#3962)
- Set the minimum size of the Message column of the message log
window to 200 (previously was 10) to fix #3627
- Align the log level indicator to the top
2022-10-19 13:22:19 -05:00
Yaron Shahrabani e97a98f10b
Swapped plural and singular positions (#3996) 2022-10-19 13:05:36 -05:00
Charles Kerr 450f1dcadc
refactor: extract `tr_buffer` class from `tr_peerIo` (#3986) 2022-10-19 11:42:08 -05:00
Mike Gelfand f22ce40c72
Change progress bar color depending on torrent state (GTK client) (#3976)
* Rename `context` to `snapshot` in `TorrentCellRenderer`

* Change progress bar color depending on torrent state
2022-10-19 00:17:54 +01:00
Luukas Pörtfors 9313e42866
remote: improve and document the rename command (#3973) 2022-10-19 00:02:23 +01:00
A Cœur ad77140035
doc: Building the GTK app on macOS (#3982) 2022-10-18 15:23:26 -05:00
Charles Kerr 4ed61a0a75
fixup! refactor: remove TR_PRIsv macros (#3842) (#3992)
fix: invalid format string passed to fmt::print
2022-10-18 14:57:11 -05:00
Charles Kerr 7ee76a604d
feat: add libtransmission::Dns.cached() (#3984) 2022-10-17 20:17:01 -05:00
Charles Kerr c8e652c820
refactor: add dns interface class (#3977) 2022-10-17 14:41:42 -05:00
Mike Gelfand 1b416962e6
Increase message log window width, disable overflow menu (GTK client) (#3971)
* Disable GTK 3 toolbars overflow menu

This prevents the toolbar from hiding its items when they don't fit. Not
an issue with GTK 4 where there's no dedicated toolbar widget and
associated logic.

* Increase default message log window width
2022-10-16 19:31:02 +03:00
Mike Gelfand 9dd4454729
Sync translations (#3968)
* Sync translations with code

* Migrate to Go-based Transifex client version

* Sync translations with Transifex
2022-10-15 21:21:13 +03:00
Mike Gelfand ae2dd5eba9
Use fmt for string formatting (GTK client) (#3967) 2022-10-15 19:13:50 +03:00
Charles Kerr 79068c512a
refactor: decouple tr-dht from peerMsgs, peerMgr (#3966)
* refactor: decouple peer-mgr from tr-dht

* refactor: remove tr_dhtPort()

* refactor: decouple peer-msgs from tr-dht

* refactor: make tr_udp_core.udp_port_ const

* refactor: rename tr_udp_core::dhtUninit() as startShutdown()
2022-10-15 08:22:43 -05:00
Charles Kerr 572e1bb50f
refactor: add tr_address::fromSockaddr() (#3964)
* refactor: remove TR_DISCARD_ALIGN

* refactor: add tr_address::fromSockaddr()
2022-10-14 01:20:39 -05:00
Mike Gelfand 9ccaffb044
Fix session use after free (GTK client) (#3963)
In GLIB 2.68+ `Glib::RefPtr<>` is an alias for `std::shared_ptr<>` which
has no idea about GLIB's reference counting, thus destroying the object
instead of unreferencing it. Use `Glib::make_refptr_for_instance()` to
construct the smart pointer which passes in a custom reference-aware
deleter for us.

Fixes: #3954
2022-10-14 07:59:38 +03:00
Charles Kerr 4a359fd481
refactor: session private fields (#3961)
* refactor: make tr_session.private_peer_port a private field

chore: make tr_session.public_peer_port a private field

* refactor: make tr_session.web_ a private field

* refactor: make tr_session.lpd_ a private field

* refactor: make tr_session.bind_ipv4_ private

refactor: make tr_session.bind_ipv6_ private

* refactor: make tr_session.bandwidth_groups_ private; add const accessor

* refactor: make tr_session.port_forwarding_ private

* refactor: make tr_session.peerMgr private pt 1: add tr_session::addIncoming()

* refactor: make tr_session.peerMgr private pt 1: add tr_session::addTorrent()

* refactor: make tr_session.peer_mgr_ private

* refactor: make tr_session.setPeerPort() private
2022-10-13 21:25:02 -05:00
Mike Gelfand 02cbfa917a
Don't scroll to message log bottom with no messages (GTK client) (#3959)
Fixes: #3956
2022-10-14 02:19:37 +03:00
Charles Kerr a2817faab1
refactor: tr_session declaration cleanup (#3958)
* chore: move private tr_session struct declaration to beginning of class

* chore: move all tr_session fields into the same code section

* chore: move private constexpr, const fields before mutable ones

* chore: move trivial fields before nontrivial fields

* chore: reconcile with refactor/session-const-fields-first
2022-10-13 16:25:54 -05:00
Mike Gelfand 60340387e2
Make torrents context menu look more like one (GTK client) (#3957) 2022-10-13 19:18:33 +03:00
A Cœur 4ea9c87fea
fix: some typos (#3904) 2022-10-13 09:35:10 -05:00
Mitch Livingston 20c2fde7ae
Merge pull request #3950 from Coeur/coeur/modalDelegateDeprecated
Fix 'modalDelegate:' is deprecated to avoid contextInfo leaks.
2022-10-13 07:54:07 -04:00
Mitch Livingston a3947bc994
Merge branch 'main' into coeur/modalDelegateDeprecated 2022-10-13 07:16:34 -04:00
Mitch Livingston ab12eacb1e
Merge pull request #3951 from Coeur/coeur/watchdir-common
Fix red link in Xcode project
2022-10-13 07:13:09 -04:00
Cœur 7601c1f7b1 Fix red link in Xcode project 2022-10-13 02:44:06 +08:00
Cœur 0d948886f6 orderOut: isn't needed with beginSheet:/endSheet: 2022-10-12 18:56:30 +08:00
Antoine Cœur 019b493f36 Fix 'modalDelegate:' is deprecated to avoid contextInfo leaks. 2022-10-12 18:19:38 +08:00
Mike Gelfand 4b65c4fa28
Don't call X11 functions on non-X11 GDK surfaces (#3949)
Calling such functions on e.g. Wayland GDK surfaces results in a crash.
2022-10-12 08:32:01 +03:00
A Cœur 74cc584a6a
Xcode 11.3.1 compatibility (#3946) 2022-10-11 23:09:46 -05:00
A Cœur 33afdc32f9
fix: "Nullptr with nonzero offset" (#3941) 2022-10-11 16:52:13 -05:00
A Cœur 4f957657d1
Upgrade Xcode Project Settings (#3940) 2022-10-11 16:51:45 -05:00
Mike Gelfand f1f55cc3df
Sync translations (#3939)
* Sync translations with code

* Sync translations with Transifex

* Remove Mac menu title that isn't displayed and shouldn't be translated

* Add context to logging level strings in GTK client

* Use "µTP" consistently in code

* Use ellipsis instead of three docs in Qt client strings

* Close HTML tags in blocklist-related strings

* Remove trailing space from a translatable string in Qt client

* Add missing plural forms for English strings in Qt client

* Fix spelling: metaInfo -> metainfo
2022-10-11 18:39:41 +03:00
A Cœur cc5ae321a5
Fix "Capture of autoreleasing out parameter inside autorelease pool that may exit before method returns" (#3886) 2022-10-10 18:08:47 -05:00
A Cœur f5ab3db978
chore: add ISSUE_TEMPLATE (#3923) 2022-10-10 17:08:22 -05:00
A Cœur 0954e28780
Sort order by activity is reversed (#3924) 2022-10-10 12:39:51 -05:00
Federico Scodelaro 794074b7e1
docs: git submodule on building should be recursive (#3927)
* docs: git submodule on building should be recursive

* docs: forgot update scenario
2022-10-10 16:05:52 +01:00
Mike Gelfand b0de4b7a89
Add build job based on Fedora 37 (#3921)
This allows to test against GTK 4 and Qt 6.

Changes to CMakeLists.txt files are non-functional and are meant to
trigger the components rebuild, nothing more.
2022-10-09 12:13:02 +03:00
Dzmitry Neviadomski bfe6953822
macOS: Hide Title (App Name) on BigSur and later. (#3919)
Also specify Unified Toolbar Style explicitly, as hiding title
triggers Unified Compact style.

Fixes #3891

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2022-10-09 10:37:11 +03:00