Commit 51bfd062 authored by Alexander Schwinn's avatar Alexander Schwinn
Browse files

re-enable file-selection after create/rename (Bug #16654)

parent ab9c64c8
Loading
Loading
Loading
Loading
+21 −8
Original line number Diff line number Diff line
@@ -116,8 +116,8 @@ static void thunar_standard_view_unrealize (Gtk
static void                 thunar_standard_view_grab_focus                 (GtkWidget                *widget);
static gboolean             thunar_standard_view_draw                       (GtkWidget                *widget,
                                                                             cairo_t                  *cr);
static GList               *thunar_standard_view_get_selected_files         (ThunarComponent          *component);
static void                 thunar_standard_view_set_selected_files         (ThunarComponent          *component,
static GList               *thunar_standard_view_get_selected_files_component         (ThunarComponent          *component);
static void                 thunar_standard_view_set_selected_files_component         (ThunarComponent          *component,
                                                                                       GList                    *selected_files);
static GtkUIManager        *thunar_standard_view_get_ui_manager             (ThunarComponent          *component);
static void                 thunar_standard_view_set_ui_manager             (ThunarComponent          *component,
@@ -162,6 +162,9 @@ static void thunar_standard_view_current_directory_destroy (Thu
                                                                             ThunarStandardView       *standard_view);
static void                 thunar_standard_view_current_directory_changed  (ThunarFile               *current_directory,
                                                                             ThunarStandardView       *standard_view);
static GList               *thunar_standard_view_get_selected_files_view    (ThunarView               *view);
static void                 thunar_standard_view_set_selected_files_view    (ThunarView               *view,
                                                                             GList                    *selected_files);
static void                 thunar_standard_view_action_select_all_files    (GtkAction                *action,
                                                                             ThunarStandardView       *standard_view);
static void                 thunar_standard_view_action_select_by_pattern   (GtkAction                *action,
@@ -544,8 +547,8 @@ thunar_standard_view_class_init (ThunarStandardViewClass *klass)
static void
thunar_standard_view_component_init (ThunarComponentIface *iface)
{
  iface->get_selected_files = thunar_standard_view_get_selected_files;
  iface->set_selected_files = thunar_standard_view_set_selected_files;
  iface->get_selected_files = thunar_standard_view_get_selected_files_component;
  iface->set_selected_files = thunar_standard_view_set_selected_files_component;
  iface->get_ui_manager = thunar_standard_view_get_ui_manager;
  iface->set_ui_manager = thunar_standard_view_set_ui_manager;
}
@@ -574,6 +577,8 @@ thunar_standard_view_view_init (ThunarViewIface *iface)
  iface->reload = thunar_standard_view_reload;
  iface->get_visible_range = thunar_standard_view_get_visible_range;
  iface->scroll_to_file = thunar_standard_view_scroll_to_file;
  iface->get_selected_files = thunar_standard_view_get_selected_files_view;
  iface->set_selected_files = thunar_standard_view_set_selected_files_view;
}


@@ -1088,15 +1093,23 @@ thunar_standard_view_draw (GtkWidget *widget,


static GList*
thunar_standard_view_get_selected_files (ThunarComponent *component)
thunar_standard_view_get_selected_files_component (ThunarComponent *component)
{
  return THUNAR_STANDARD_VIEW (component)->priv->selected_files;
}



static GList*
thunar_standard_view_get_selected_files_view (ThunarView *view)
{
  return THUNAR_STANDARD_VIEW (view)->priv->selected_files;
}



static void
thunar_standard_view_set_selected_files (ThunarComponent *component,
thunar_standard_view_set_selected_files_component (ThunarComponent *component,
                                                   GList           *selected_files)
{
  ThunarStandardView *standard_view = THUNAR_STANDARD_VIEW (component);
+17 −0
Original line number Diff line number Diff line
@@ -324,3 +324,20 @@ thunar_view_scroll_to_file (ThunarView *view,
}



GList*
thunar_view_get_selected_files (ThunarView *view)
{
  _thunar_return_val_if_fail (THUNAR_IS_VIEW (view), NULL);
  return (*THUNAR_VIEW_GET_IFACE (view)->get_selected_files) (view);
}



void
thunar_view_set_selected_files (ThunarView *view,
                                GList      *path_list)
{
  _thunar_return_if_fail (THUNAR_IS_VIEW (view));
  (*THUNAR_VIEW_GET_IFACE (view)->set_selected_files) (view, path_list);
}
+6 −0
Original line number Diff line number Diff line
@@ -64,6 +64,9 @@ struct _ThunarViewIface
                                         gboolean        use_align,
                                         gfloat          row_align,
                                         gfloat          col_align);
  GList*          (*get_selected_files) (ThunarView     *view);
  void            (*set_selected_files) (ThunarView     *view,
                                         GList          *path_list);
};

GType           thunar_view_get_type            (void) G_GNUC_CONST;
@@ -93,6 +96,9 @@ void thunar_view_scroll_to_file (ThunarView *view,
                                                 gboolean        use_align,
                                                 gfloat          row_align,
                                                 gfloat          col_align);
GList*          thunar_view_get_selected_files  (ThunarView     *view);
void            thunar_view_set_selected_files  (ThunarView     *view,
                                                 GList          *path_list);

G_END_DECLS;

+8 −1
Original line number Diff line number Diff line
@@ -1022,7 +1022,14 @@ static void
thunar_window_select_files (ThunarWindow *window,
                            GList        *files_to_selected)
{
  // TODO: Select Files
  GList *thunarFiles = NULL;

  _thunar_return_if_fail (THUNAR_IS_WINDOW (window));

  for (GList *lp = files_to_selected; lp != NULL; lp = lp->next)
      thunarFiles = g_list_append (thunarFiles, thunar_file_get (G_FILE (files_to_selected->data), NULL));
  thunar_view_set_selected_files (THUNAR_VIEW (window->view), thunarFiles);
  g_list_free_full (thunarFiles, g_object_unref);
}