diff --git a/Sources/Network/Server Browsing/View Controllers/VLCNetworkListViewController.h b/Sources/Network/Server Browsing/View Controllers/VLCNetworkListViewController.h
index 24b5d04b55f55acfe5386e2581e7c02dd2531e89..157e2247ac62bd623ce800c6c244592956802063 100644
--- a/Sources/Network/Server Browsing/View Controllers/VLCNetworkListViewController.h	
+++ b/Sources/Network/Server Browsing/View Controllers/VLCNetworkListViewController.h	
@@ -25,4 +25,7 @@ extern NSString *VLCNetworkListCellIdentifier;
 - (IBAction)playAllAction:(id)sender;
 - (void)tableView:(UITableView *)tableView willDisplayCell:(VLCNetworkListCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath;
 
+- (void)addPlayAllAction;
+- (void)removePlayAllAction;
+
 @end
diff --git a/Sources/Network/Server Browsing/View Controllers/VLCNetworkListViewController.m b/Sources/Network/Server Browsing/View Controllers/VLCNetworkListViewController.m
index 05cac4497a5475811f6120fa73c20a6d7017cbd8..bfa9b2ef170ac7e487327e0d1007d63b145cb62d 100644
--- a/Sources/Network/Server Browsing/View Controllers/VLCNetworkListViewController.m	
+++ b/Sources/Network/Server Browsing/View Controllers/VLCNetworkListViewController.m	
@@ -91,7 +91,7 @@ NSString *VLCNetworkListCellIdentifier = @"VLCNetworkListCellIdentifier";
     }
     self.definesPresentationContext = YES;
 
-    self.navigationItem.rightBarButtonItems = @[[UIBarButtonItem themedPlayAllButtonWithTarget:self andSelector:@selector(playAllAction:)]];
+    [self addPlayAllAction];
 
     _searchData = [[NSMutableArray alloc] init];
     [_searchData removeAllObjects];
@@ -138,6 +138,16 @@ NSString *VLCNetworkListCellIdentifier = @"VLCNetworkListCellIdentifier";
     [_activityIndicator stopAnimating];
 }
 
+- (void)addPlayAllAction
+{
+    self.navigationItem.rightBarButtonItems = @[[UIBarButtonItem themedPlayAllButtonWithTarget:self andSelector:@selector(playAllAction:)]];
+}
+
+- (void)removePlayAllAction
+{
+    self.navigationItem.rightBarButtonItems = @[];
+}
+
 #pragma mark - Table view data source
 
 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
diff --git a/Sources/Network/Server Browsing/View Controllers/VLCNetworkServerBrowserViewController.m b/Sources/Network/Server Browsing/View Controllers/VLCNetworkServerBrowserViewController.m
index 101eb20f9cb8da5ab9502b5bc3b94f1f80960bf5..808655392b2aba332f052114b4861bf4569a2218 100644
--- a/Sources/Network/Server Browsing/View Controllers/VLCNetworkServerBrowserViewController.m	
+++ b/Sources/Network/Server Browsing/View Controllers/VLCNetworkServerBrowserViewController.m	
@@ -97,6 +97,7 @@
     if (_serverBrowser.items.count == 0 &&
         [(VLCNetworkServerBrowserVLCMedia *)_serverBrowser retrieveParsedStatus] == VLCMediaParsedStatusDone) {
         [self stopActivityIndicator];
+        [self removePlayAllAction];
     }
 }
 
@@ -126,6 +127,7 @@
 - (void)networkServerBrowserEndParsing:(id<VLCNetworkServerBrowser>)networkBrowser
 {
     [self stopActivityIndicator];
+    [self removePlayAllActionIfNeeded];
 }
 
 - (void)networkServerBrowser:(id<VLCNetworkServerBrowser>)networkBrowser requestDidFailWithError:(NSError *)error
@@ -153,11 +155,18 @@
     [[VLCActivityManager defaultManager] networkActivityStarted];
 }
 
--(void)handleRefresh
+- (void)handleRefresh
 {
     [self update];
 }
 
+- (void)removePlayAllActionIfNeeded
+{
+    if ([_serverBrowser.items count] == 0) {
+        [self removePlayAllAction];
+    }
+}
+
 #pragma mark - server browser item specifics
 
 - (void)didSelectItem:(id<VLCNetworkServerBrowserItem>)item index:(NSUInteger)index singlePlayback:(BOOL)singlePlayback