Index: wp-admin/includes/class-wp-terms-list-table.php
===================================================================
--- wp-admin/includes/class-wp-terms-list-table.php	(revision 43378)
+++ wp-admin/includes/class-wp-terms-list-table.php	(working copy)
@@ -470,7 +470,7 @@
 				__( 'Delete' )
 			);
 		}
-		if ( $tax->public ) {
+		if ( is_taxonomy_viewable( $tax ) ) {
 			$actions['view'] = sprintf(
 				'<a href="%s" aria-label="%s">%s</a>',
 				get_term_link( $tag ),
Index: wp-includes/admin-bar.php
===================================================================
--- wp-includes/admin-bar.php	(revision 43378)
+++ wp-includes/admin-bar.php	(working copy)
@@ -728,7 +728,7 @@
 		} elseif ( 'term' == $current_screen->base
 			&& isset( $tag ) && is_object( $tag ) && ! is_wp_error( $tag )
 			&& ( $tax = get_taxonomy( $tag->taxonomy ) )
-			&& $tax->public ) {
+			&& is_taxonomy_viewable( $tax ) ) {
 			$wp_admin_bar->add_menu(
 				array(
 					'id'    => 'view',
Index: wp-includes/rest-api/endpoints/class-wp-rest-taxonomies-controller.php
===================================================================
--- wp-includes/rest-api/endpoints/class-wp-rest-taxonomies-controller.php	(revision 43378)
+++ wp-includes/rest-api/endpoints/class-wp-rest-taxonomies-controller.php	(working copy)
@@ -224,7 +224,7 @@
 		if ( in_array( 'visibility', $fields, true ) ) {
 			$data['visibility'] = array(
 				'public'             => (bool) $taxonomy->public,
-				'publicly_queryable' => (bool) $taxonomy->publicly_queryable,
+				'publicly_queryable' => is_taxonomy_viewable( $taxonomy ),
 				'show_admin_column'  => (bool) $taxonomy->show_admin_column,
 				'show_in_nav_menus'  => (bool) $taxonomy->show_in_nav_menus,
 				'show_in_quick_edit' => (bool) $taxonomy->show_in_quick_edit,
