== Nicotine+ To Do == === General === * Make all tabs detachable, hideable (and make selecting them from the menu unhide those hidden tabs) (well, the main tabs are now hideable, but not yet detachable) * Fix bugs * Fix memory leak with refreshing other users' shares * Add real ticker (that doesn't use massive amounts of CPU) === Networking === == Implement Distributed Search == * Implement Server messages 126 (BranchLevel) and 127 (BranchRoot), 129 (ChildDepth), 100 (AcceptChildren) and any other messages related to the Distributed Search Tree * Implement Distributed messages 4 (DistribBranchLevel) and 5 (DistribBranchRoot), 7 (DistribChildDepth), and 9 (unknown) * Implement PeerInit message 4 {{{ Unknown peer init code: 4, message contents '\x00\x00\x00\x00' }}} Distributed Message 9 sample: {{{ Distrib message type 9 size 144 contents '\x00\x00\x00x\xda\xe3b``(\xce\xc9/O+M\xceN-Z\x0e\xe41\x82p8\x90H\xb6\x8a)\xce)\xce\x8e)\xc9HUH\xca\xafH-R(JMJ\xcd\xc9\xc9\xcc\xcfS\xd0U(\xcd\x03\xd1\x1aF\x06\x06\x96\x9a\n\x1a\xf9ii\x99\xc9\x99\x899\x9a1\x06\xe6z\n \x1d\xe9\xf9\xc5\x05\xa99\n\xf9i@VQ\xbeBbJbrF\xa6^n\x811\xff\x846\x06\x10`\x06b \x97\x99\x01\x02\x1e@\xad\xb6\x02\x12LP1\x06/?\x06\x06^(\x1b\x00|\xda&\xbd' }}} Note by hedonist: try zlib.decompress on contents[3:] :) === Done === * Ban by IP address, subnet * Make Username Tabs to open the same popup menus as their mode, not a silly '''tab selector''' * Add a save-file-list option to User Browse * Make trayicon toggleable