diff -ru orig/gtk/gtkfilechooserdefault.c mod/gtk/gtkfilechooserdefault.c
--- orig/gtk/gtkfilechooserdefault.c	2020-12-21 02:09:37.000000000 +0100
+++ mod/gtk/gtkfilechooserdefault.c	2023-11-29 13:03:45.032522071 +0100
@@ -6378,10 +6378,12 @@
       if (!_gtk_file_system_model_iter_is_visible (fsmodel, &iter))
         {
           GFileInfo *info = _gtk_file_system_model_get_info (fsmodel, &iter);
+          gboolean has_is_hidden = g_file_info_has_attribute (info, "standard::is-hidden");
+          gboolean has_is_backup = g_file_info_has_attribute (info, "standard::is-backup");
 
           if (!enabled_hidden &&
-              (g_file_info_get_is_hidden (info) ||
-               g_file_info_get_is_backup (info)))
+              ((has_is_hidden && g_file_info_get_is_hidden (info)) ||
+               (has_is_backup && g_file_info_get_is_backup (info))))
             {
               g_object_set (impl, "show-hidden", TRUE, NULL);
               enabled_hidden = TRUE;
diff -ru orig/gtk/gtkfilesystemmodel.c mod/gtk/gtkfilesystemmodel.c
--- orig/gtk/gtkfilesystemmodel.c	2020-12-21 02:09:37.000000000 +0100
+++ mod/gtk/gtkfilesystemmodel.c	2023-11-29 13:03:50.525885624 +0100
@@ -444,13 +444,18 @@
 node_should_be_visible (GtkFileSystemModel *model, guint id, gboolean filtered_out)
 {
   FileModelNode *node = get_node (model, id);
+  gboolean has_is_hidden, has_is_backup;
   gboolean result;
 
   if (node->info == NULL)
     return FALSE;
+    
+  has_is_hidden = g_file_info_has_attribute (node->info, "standard::is-hidden");
+  has_is_backup = g_file_info_has_attribute (node->info, "standard::is-backup");
 
   if (!model->show_hidden &&
-      (g_file_info_get_is_hidden (node->info) || g_file_info_get_is_backup (node->info)))
+      ((has_is_hidden && g_file_info_get_is_hidden (node->info)) ||
+       (has_is_backup && g_file_info_get_is_backup (node->info))))
     return FALSE;
 
   if (_gtk_file_info_consider_as_directory (node->info))
diff -ru orig/gtk/gtkpathbar.c mod/gtk/gtkpathbar.c
--- orig/gtk/gtkpathbar.c	2020-12-21 02:09:37.000000000 +0100
+++ mod/gtk/gtkpathbar.c	2023-11-29 13:03:55.749247694 +0100
@@ -1659,7 +1659,8 @@
     }
 
   display_name = g_file_info_get_display_name (info);
-  is_hidden = g_file_info_get_is_hidden (info) || g_file_info_get_is_backup (info);
+  is_hidden = g_file_info_get_attribute_boolean (info, "standard::is-hidden") ||
+              g_file_info_get_attribute_boolean (info, "standard::is-backup");
 
   gtk_widget_push_composite_child ();
   button_data = make_directory_button (file_info->path_bar, display_name,