The network activity disable feature does not disable network activity. After clicking the tray icon to disable network activity, network connections establish and are used to transfer data as normal. I have only verified this with bitcoin-qt on Ubuntu 16.04.4 LTS and Tails (multiple versions). I've witnessed this happen for clearnet and onion peers.

I have verified that this affects versions Bitcoin Core version v0.16.0 (release build) and the latest commit 8b262eb2d80bfa27ae8501078ce47bc1407e9c55 on master (IIRC, I saw this in earlier release builds too).

To reproduce:
Note: the first two steps may not be strictly necessary, but they definitely seem to help reproduce.
1. use slow storage attached via usb (e.g.- 7200 RPM drive inside a 2.5" SATA external case attached via USB 3)
1. let node fall behind (only a day at most, less likely works) and then attempt to resync
1. start node with: `$ /path/to/bitcoin-0.16.0/bin/bitcoin-qt -datadir=/path/to/bitcoin-unpruned-txindex-datadir -txindex &`
1. wait until you see some established peers on the peers tab in the GUI
1. click the icon in the tray of the main GUI window to disable network activity
1. go back to the peers tab and witness peers establish and transfer data. sometimes this happens immediately, sometimes it takes a few seconds. usually around a minute at most.

relevant debug.log data from 3 separate runs:
```
2018-04-20 09:17:34 Bitcoin Core version v0.16.0 (release build)
...
2018-04-20 09:17:40 Loaded best chain: hashBestChain=0000000000000000000fff915fac685a3fae643481b9f6c31e3f78b1078b45c3 height=518957 date=2018-04-19 13:41:01 progress=0.999206
...
2018-04-20 09:17:45 Leaving InitialBlockDownload (latching to false)
2018-04-20 09:17:46 New outbound peer connected: version: 70015, blocks=519094, peer=1
2018-04-20 09:17:46 New outbound peer connected: version: 70015, blocks=519094, peer=2
2018-04-20 09:17:55 P2P peers available. Skipped DNS seeding.
2018-04-20 09:17:55 dnsseed thread exit
<I CLICK THE NETWORK ACTIVITY DISABLE ICON IN THE TRAY OF THE GUI A THE EXISTING CONNECTIONS DROP>
2018-04-20 09:18:04 GUI: QAccessibleTable::child: Invalid index at:  1 0
2018-04-20 09:18:04 GUI: Cannot creat accessible child interface for object:  QTableView(0x5581864bb410, name = "peerWidget")  index:  15
2018-04-20 09:18:04 GUI: QAccessibleTable::child: Invalid index at:  1 0
2018-04-20 09:18:04 GUI: Cannot creat accessible child interface for object:  QTableView(0x5581864bb410, name = "peerWidget")  index:  15
2018-04-20 09:18:04 GUI: QAccessibleTable::child: Invalid index at:  1 0
2018-04-20 09:18:04 GUI: Cannot creat accessible child interface for object:  QTableView(0x5581864bb410, name = "peerWidget")  index:  15
2018-04-20 09:18:12 Pre-allocating up to position 0x900000 in rev01238.dat
2018-04-20 09:18:13 UpdateTip: new best=0000000000000000004782f61ebc39c514c61298efbdc720e440e3dd060352f0 height=518958 version=0x20000000 log2_work=88.623783 tx=311123210 date='2018-04-19 13:44:25' progress=0.999208 cache=0.8MiB(6207txo)
<A NEW OUTBOUND CONNECTION APPEARS WHILE NETWORK ACTIVITY IS DISABLED>
2018-04-20 09:18:13 New outbound peer connected: version: 70015, blocks=519094, peer=3
2018-04-20 09:18:29 UpdateTip: new best=0000000000000000002cc47e2cf4a8a89934c53a02dc1af3b60cbaea609014a2 height=518959 version=0x20000000 log2_work=88.623833 tx=311126085 date='2018-04-19 13:48:14' progress=0.999211 cache=2.3MiB(16786txo)
...

-------------------------------------------------------------------------------

build of latest master commit 8b262eb2d80bfa27ae8501078ce47bc1407e9c55

2018-04-20T09:27:30Z Bitcoin Core version v0.16.99.0-8b262eb (debug build)
...
2018-04-20T09:27:50Z Loaded best chain: hashBestChain=0000000000000000002fd17d46ed1edaae01f8fc5178e4c0496de19683e005cf height=518970 date=2018-04-19T14:52:28Z progress=0.999248
...
2018-04-20T09:29:38Z Leaving InitialBlockDownload (latching to false)
2018-04-20T09:29:39Z New outbound peer connected: version: 70015, blocks=519095, peer=2
<I CLICK THE NETWORK ACTIVITY DISABLE ICON IN THE TRAY OF THE GUI A THE EXISTING CONNECTIONS DROP>
2018-04-20T09:29:42Z GUI: QAccessibleTable::child: Invalid index at:  0 0
2018-04-20T09:29:42Z GUI: Cannot creat accessible child interface for object:  QTableView(0x55ab174e0430, name = "peerWidget")  index:  8
2018-04-20T09:29:42Z GUI: QAccessibleTable::child: Invalid index at:  0 0
2018-04-20T09:29:42Z GUI: Cannot creat accessible child interface for object:  QTableView(0x55ab174e0430, name = "peerWidget")  index:  8
2018-04-20T09:29:42Z UpdateTip: new best=0000000000000000000479596f8cfc32e69aca978bde18c0b9f8488175c88e3e height=518985 version=0x20000000 log2_work=88.625129 tx=311166856 date='2018-04-19T17:25:26Z' progress=0.999350 cache=11.9MiB(89599txo)
<A NEW OUTBOUND CONNECTION APPEARS WHILE NETWORK ACTIVITY IS DISABLED>
2018-04-20T09:29:42Z New outbound peer connected: version: 70014, blocks=519095, peer=3
2018-04-20T09:29:45Z UpdateTip: new best=000000000000000000096f1f7ffadf6c6659e2d19e560620a9fa239eed24e709 height=518986 version=0x20000000 log2_work=88.625179 tx=311167660 date='2018-04-19T17:30:02Z' progress=0.999353 cache=12.1MiB(91409txo)
...

-------------------------------------------------------------------------------

2018-04-20T09:37:01Z Bitcoin Core version v0.16.99.0-8b262eb (debug build)
...
2018-04-20T09:37:18Z Loaded best chain: hashBestChain=000000000000000000168d1a7a70cbbf09be99e34a1a6130288841e9af22eaf5 height=519006 date=2018-04-19T20:37:24Z progress=0.999474
...
2018-04-20T09:37:25Z Leaving InitialBlockDownload (latching to false)
...
<I CLICK THE NETWORK ACTIVITY DISABLE ICON IN THE TRAY OF THE GUI A THE EXISTING CONNECTIONS DROP>
2018-04-20T09:38:46Z GUI: QAccessibleTable::child: Invalid index at:  0 0
2018-04-20T09:38:46Z GUI: Cannot creat accessible child interface for object:  QTableView(0x555adccbe010, name = "peerWidget")  index:  8
2018-04-20T09:38:46Z GUI: QAccessibleTable::child: Invalid index at:  0 0
2018-04-20T09:38:46Z GUI: Cannot creat accessible child interface for object:  QTableView(0x555adccbe010, name = "peerWidget")  index:  8
2018-04-20T09:38:46Z UpdateTip: new best=0000000000000000003a72ecf9917c77dcac8fe801d80d06441b741f78ceaeca height=519076 version=0x20000000 log2_work=88.629657 tx=311270831 date='2018-04-20T05:40:59Z' progress=0.999840 cache=28.2MiB(214661txo)
2018-04-20T09:38:47Z UpdateTip: new best=000000000000000000320678c480f530b0e9557b5a294f336c11f652f7324c35 height=519077 version=0x20000000 log2_work=88.629707 tx=311271189 date='2018-04-20T05:44:03Z' progress=0.999842 cache=28.3MiB(215532txo)
<A NEW OUTBOUND CONNECTION APPEARS WHILE NETWORK ACTIVITY IS DISABLED>
2018-04-20T09:39:58Z New outbound peer connected: version: 70016, blocks=517884, peer=8
2018-04-20T09:39:59Z ERROR: AcceptBlockHeader: Consensus::ContextualCheckBlockHeader: 0000000000009c1b89b75b834c923e3c0302f0d79aeac29681e820f977ddd0d6, bad-diffbits, incorrect proof of work (code 16)

```
struct sockaddr_storage sockaddr;
    socklen_t len = sizeof(sockaddr);
    SOCKET hSocket = accept(hListenSocket.socket, (struct sockaddr*)&sockaddr, &len);
    CAddress addr;
    int nInbound = 0;
    int nMaxInbound = nMaxConnections - (nMaxOutbound + nMaxFeeler);
    if (hSocket != INVALID_SOCKET) {
        if (!addr.SetSockAddr((const struct sockaddr*)&sockaddr)) {
            LogPrintf("Warning: Unknown socket family\n");
        }
    }
    bool whitelisted = hListenSocket.whitelisted || IsWhitelistedRange(addr);
    {
        LOCK(cs_vNodes);
        for (const CNode* pnode : vNodes) {
            if (pnode->fInbound) nInbound++;
        }
    }
    if (hSocket == INVALID_SOCKET)
    {
        int nErr = WSAGetLastError();
        if (nErr != WSAEWOULDBLOCK)
            LogPrintf("socket error accept failed: %s\n", NetworkErrorString(nErr));
        return;
    }
    if (!fNetworkActive) {