Since libutp provides no version information, and one readily noticeable
change between the old and the new API is the change in public function
names, check to see if the functions we use are available. Old version
won't have them, and so any old system libutp will be discarded in AUTO
mode and result in an error in ON mode for USE_SYSTEM_UTP option.
* 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
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.
- 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
* 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
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
* 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