/* pantheon-files-widgets.h generated by valac 0.52.0, the Vala compiler, do not modify */

#ifndef __LIBWIDGETS_PANTHEON_FILES_WIDGETS_H__
#define __LIBWIDGETS_PANTHEON_FILES_WIDGETS_H__

#include <glib-object.h>
#include <gtk/gtk.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <gdk/gdk.h>
#include "pantheon-files-core.h"
#include <gee.h>
#include <float.h>
#include <math.h>
#include <cairo-gobject.h>
#include <gio/gio.h>
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <granite.h>

G_BEGIN_DECLS

#define MARLIN_VIEW_CHROME_TYPE_LOCATABLE (marlin_view_chrome_locatable_get_type ())
#define MARLIN_VIEW_CHROME_LOCATABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_LOCATABLE, MarlinViewChromeLocatable))
#define MARLIN_VIEW_CHROME_IS_LOCATABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_LOCATABLE))
#define MARLIN_VIEW_CHROME_LOCATABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), MARLIN_VIEW_CHROME_TYPE_LOCATABLE, MarlinViewChromeLocatableIface))

typedef struct _MarlinViewChromeLocatable MarlinViewChromeLocatable;
typedef struct _MarlinViewChromeLocatableIface MarlinViewChromeLocatableIface;

#define MARLIN_VIEW_CHROME_TYPE_NAVIGATABLE (marlin_view_chrome_navigatable_get_type ())
#define MARLIN_VIEW_CHROME_NAVIGATABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_NAVIGATABLE, MarlinViewChromeNavigatable))
#define MARLIN_VIEW_CHROME_IS_NAVIGATABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_NAVIGATABLE))
#define MARLIN_VIEW_CHROME_NAVIGATABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), MARLIN_VIEW_CHROME_TYPE_NAVIGATABLE, MarlinViewChromeNavigatableIface))

typedef struct _MarlinViewChromeNavigatable MarlinViewChromeNavigatable;
typedef struct _MarlinViewChromeNavigatableIface MarlinViewChromeNavigatableIface;

#define MARLIN_VIEW_CHROME_TYPE_BASIC_LOCATION_BAR (marlin_view_chrome_basic_location_bar_get_type ())
#define MARLIN_VIEW_CHROME_BASIC_LOCATION_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_BASIC_LOCATION_BAR, MarlinViewChromeBasicLocationBar))
#define MARLIN_VIEW_CHROME_BASIC_LOCATION_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MARLIN_VIEW_CHROME_TYPE_BASIC_LOCATION_BAR, MarlinViewChromeBasicLocationBarClass))
#define MARLIN_VIEW_CHROME_IS_BASIC_LOCATION_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_BASIC_LOCATION_BAR))
#define MARLIN_VIEW_CHROME_IS_BASIC_LOCATION_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MARLIN_VIEW_CHROME_TYPE_BASIC_LOCATION_BAR))
#define MARLIN_VIEW_CHROME_BASIC_LOCATION_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MARLIN_VIEW_CHROME_TYPE_BASIC_LOCATION_BAR, MarlinViewChromeBasicLocationBarClass))

typedef struct _MarlinViewChromeBasicLocationBar MarlinViewChromeBasicLocationBar;
typedef struct _MarlinViewChromeBasicLocationBarClass MarlinViewChromeBasicLocationBarClass;
typedef struct _MarlinViewChromeBasicLocationBarPrivate MarlinViewChromeBasicLocationBarPrivate;

#define MARLIN_VIEW_CHROME_TYPE_BASIC_BREADCRUMBS_ENTRY (marlin_view_chrome_basic_breadcrumbs_entry_get_type ())
#define MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_BASIC_BREADCRUMBS_ENTRY, MarlinViewChromeBasicBreadcrumbsEntry))
#define MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MARLIN_VIEW_CHROME_TYPE_BASIC_BREADCRUMBS_ENTRY, MarlinViewChromeBasicBreadcrumbsEntryClass))
#define MARLIN_VIEW_CHROME_IS_BASIC_BREADCRUMBS_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_BASIC_BREADCRUMBS_ENTRY))
#define MARLIN_VIEW_CHROME_IS_BASIC_BREADCRUMBS_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MARLIN_VIEW_CHROME_TYPE_BASIC_BREADCRUMBS_ENTRY))
#define MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MARLIN_VIEW_CHROME_TYPE_BASIC_BREADCRUMBS_ENTRY, MarlinViewChromeBasicBreadcrumbsEntryClass))

typedef struct _MarlinViewChromeBasicBreadcrumbsEntry MarlinViewChromeBasicBreadcrumbsEntry;
typedef struct _MarlinViewChromeBasicBreadcrumbsEntryClass MarlinViewChromeBasicBreadcrumbsEntryClass;
typedef struct _MarlinViewChromeBasicBreadcrumbsEntryPrivate MarlinViewChromeBasicBreadcrumbsEntryPrivate;

#define MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ELEMENT (marlin_view_chrome_breadcrumb_element_get_type ())
#define MARLIN_VIEW_CHROME_BREADCRUMB_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ELEMENT, MarlinViewChromeBreadcrumbElement))
#define MARLIN_VIEW_CHROME_BREADCRUMB_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ELEMENT, MarlinViewChromeBreadcrumbElementClass))
#define MARLIN_VIEW_CHROME_IS_BREADCRUMB_ELEMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ELEMENT))
#define MARLIN_VIEW_CHROME_IS_BREADCRUMB_ELEMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ELEMENT))
#define MARLIN_VIEW_CHROME_BREADCRUMB_ELEMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ELEMENT, MarlinViewChromeBreadcrumbElementClass))

typedef struct _MarlinViewChromeBreadcrumbElement MarlinViewChromeBreadcrumbElement;
typedef struct _MarlinViewChromeBreadcrumbElementClass MarlinViewChromeBreadcrumbElementClass;
typedef enum  {
	MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY_TARGET_TYPE_TEXT_URI_LIST
} MarlinViewChromeBasicBreadcrumbsEntryTargetType;

#define MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY_TYPE_TARGET_TYPE (marlin_view_chrome_basic_breadcrumbs_entry_target_type_get_type ())
typedef struct _MarlinViewChromeBreadcrumbElementPrivate MarlinViewChromeBreadcrumbElementPrivate;

#define MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_INFO (marlin_view_chrome_breadcrumb_icon_info_get_type ())
#define MARLIN_VIEW_CHROME_BREADCRUMB_ICON_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_INFO, MarlinViewChromeBreadcrumbIconInfo))
#define MARLIN_VIEW_CHROME_BREADCRUMB_ICON_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_INFO, MarlinViewChromeBreadcrumbIconInfoClass))
#define MARLIN_VIEW_CHROME_IS_BREADCRUMB_ICON_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_INFO))
#define MARLIN_VIEW_CHROME_IS_BREADCRUMB_ICON_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_INFO))
#define MARLIN_VIEW_CHROME_BREADCRUMB_ICON_INFO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_INFO, MarlinViewChromeBreadcrumbIconInfoClass))

typedef struct _MarlinViewChromeBreadcrumbIconInfo MarlinViewChromeBreadcrumbIconInfo;
typedef struct _MarlinViewChromeBreadcrumbIconInfoClass MarlinViewChromeBreadcrumbIconInfoClass;
typedef struct _MarlinViewChromeBreadcrumbIconInfoPrivate MarlinViewChromeBreadcrumbIconInfoPrivate;

#define MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_LIST (marlin_view_chrome_breadcrumb_icon_list_get_type ())
#define MARLIN_VIEW_CHROME_BREADCRUMB_ICON_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_LIST, MarlinViewChromeBreadcrumbIconList))
#define MARLIN_VIEW_CHROME_BREADCRUMB_ICON_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_LIST, MarlinViewChromeBreadcrumbIconListClass))
#define MARLIN_VIEW_CHROME_IS_BREADCRUMB_ICON_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_LIST))
#define MARLIN_VIEW_CHROME_IS_BREADCRUMB_ICON_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_LIST))
#define MARLIN_VIEW_CHROME_BREADCRUMB_ICON_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MARLIN_VIEW_CHROME_TYPE_BREADCRUMB_ICON_LIST, MarlinViewChromeBreadcrumbIconListClass))

typedef struct _MarlinViewChromeBreadcrumbIconList MarlinViewChromeBreadcrumbIconList;
typedef struct _MarlinViewChromeBreadcrumbIconListClass MarlinViewChromeBreadcrumbIconListClass;
typedef struct _MarlinViewChromeBreadcrumbIconListPrivate MarlinViewChromeBreadcrumbIconListPrivate;

#define MARLIN_VIEW_CHROME_TYPE_BUTTON_WITH_MENU (marlin_view_chrome_button_with_menu_get_type ())
#define MARLIN_VIEW_CHROME_BUTTON_WITH_MENU(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_BUTTON_WITH_MENU, MarlinViewChromeButtonWithMenu))
#define MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MARLIN_VIEW_CHROME_TYPE_BUTTON_WITH_MENU, MarlinViewChromeButtonWithMenuClass))
#define MARLIN_VIEW_CHROME_IS_BUTTON_WITH_MENU(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_BUTTON_WITH_MENU))
#define MARLIN_VIEW_CHROME_IS_BUTTON_WITH_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MARLIN_VIEW_CHROME_TYPE_BUTTON_WITH_MENU))
#define MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MARLIN_VIEW_CHROME_TYPE_BUTTON_WITH_MENU, MarlinViewChromeButtonWithMenuClass))

typedef struct _MarlinViewChromeButtonWithMenu MarlinViewChromeButtonWithMenu;
typedef struct _MarlinViewChromeButtonWithMenuClass MarlinViewChromeButtonWithMenuClass;
typedef struct _MarlinViewChromeButtonWithMenuPrivate MarlinViewChromeButtonWithMenuPrivate;
typedef enum  {
	MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_VMENU_POSITION_TOP,
	MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_VMENU_POSITION_BOTTOM
} MarlinViewChromeButtonWithMenuVMenuPosition;

#define MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_TYPE_VMENU_POSITION (marlin_view_chrome_button_with_menu_vmenu_position_get_type ())
typedef enum  {
	MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_HMENU_POSITION_LEFT,
	MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_HMENU_POSITION_CENTER,
	MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_HMENU_POSITION_RIGHT,
	MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_HMENU_POSITION_INSIDE_WINDOW
} MarlinViewChromeButtonWithMenuHMenuPosition;

#define MARLIN_VIEW_CHROME_BUTTON_WITH_MENU_TYPE_HMENU_POSITION (marlin_view_chrome_button_with_menu_hmenu_position_get_type ())

#define GRANITE_WIDGETS_TYPE_IMG_EVENT_BOX (granite_widgets_img_event_box_get_type ())
#define GRANITE_WIDGETS_IMG_EVENT_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GRANITE_WIDGETS_TYPE_IMG_EVENT_BOX, GraniteWidgetsImgEventBox))
#define GRANITE_WIDGETS_IMG_EVENT_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GRANITE_WIDGETS_TYPE_IMG_EVENT_BOX, GraniteWidgetsImgEventBoxClass))
#define GRANITE_WIDGETS_IS_IMG_EVENT_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GRANITE_WIDGETS_TYPE_IMG_EVENT_BOX))
#define GRANITE_WIDGETS_IS_IMG_EVENT_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GRANITE_WIDGETS_TYPE_IMG_EVENT_BOX))
#define GRANITE_WIDGETS_IMG_EVENT_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GRANITE_WIDGETS_TYPE_IMG_EVENT_BOX, GraniteWidgetsImgEventBoxClass))

typedef struct _GraniteWidgetsImgEventBox GraniteWidgetsImgEventBox;
typedef struct _GraniteWidgetsImgEventBoxClass GraniteWidgetsImgEventBoxClass;
typedef struct _GraniteWidgetsImgEventBoxPrivate GraniteWidgetsImgEventBoxPrivate;

#define MARLIN_VIEW_CHROME_TYPE_SEARCHABLE (marlin_view_chrome_searchable_get_type ())
#define MARLIN_VIEW_CHROME_SEARCHABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_SEARCHABLE, MarlinViewChromeSearchable))
#define MARLIN_VIEW_CHROME_IS_SEARCHABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_SEARCHABLE))
#define MARLIN_VIEW_CHROME_SEARCHABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), MARLIN_VIEW_CHROME_TYPE_SEARCHABLE, MarlinViewChromeSearchableIface))

typedef struct _MarlinViewChromeSearchable MarlinViewChromeSearchable;
typedef struct _MarlinViewChromeSearchableIface MarlinViewChromeSearchableIface;

#define MARLIN_VIEW_CHROME_TYPE_SEARCH_RESULTS (marlin_view_chrome_search_results_get_type ())
#define MARLIN_VIEW_CHROME_SEARCH_RESULTS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_SEARCH_RESULTS, MarlinViewChromeSearchResults))
#define MARLIN_VIEW_CHROME_SEARCH_RESULTS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MARLIN_VIEW_CHROME_TYPE_SEARCH_RESULTS, MarlinViewChromeSearchResultsClass))
#define MARLIN_VIEW_CHROME_IS_SEARCH_RESULTS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_SEARCH_RESULTS))
#define MARLIN_VIEW_CHROME_IS_SEARCH_RESULTS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MARLIN_VIEW_CHROME_TYPE_SEARCH_RESULTS))
#define MARLIN_VIEW_CHROME_SEARCH_RESULTS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MARLIN_VIEW_CHROME_TYPE_SEARCH_RESULTS, MarlinViewChromeSearchResultsClass))

typedef struct _MarlinViewChromeSearchResults MarlinViewChromeSearchResults;
typedef struct _MarlinViewChromeSearchResultsClass MarlinViewChromeSearchResultsClass;
typedef struct _MarlinViewChromeSearchResultsPrivate MarlinViewChromeSearchResultsPrivate;

#define MARLIN_VIEW_CHROME_TYPE_VIEW_SWITCHER (marlin_view_chrome_view_switcher_get_type ())
#define MARLIN_VIEW_CHROME_VIEW_SWITCHER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_CHROME_TYPE_VIEW_SWITCHER, MarlinViewChromeViewSwitcher))
#define MARLIN_VIEW_CHROME_VIEW_SWITCHER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MARLIN_VIEW_CHROME_TYPE_VIEW_SWITCHER, MarlinViewChromeViewSwitcherClass))
#define MARLIN_VIEW_CHROME_IS_VIEW_SWITCHER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_CHROME_TYPE_VIEW_SWITCHER))
#define MARLIN_VIEW_CHROME_IS_VIEW_SWITCHER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MARLIN_VIEW_CHROME_TYPE_VIEW_SWITCHER))
#define MARLIN_VIEW_CHROME_VIEW_SWITCHER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MARLIN_VIEW_CHROME_TYPE_VIEW_SWITCHER, MarlinViewChromeViewSwitcherClass))

typedef struct _MarlinViewChromeViewSwitcher MarlinViewChromeViewSwitcher;
typedef struct _MarlinViewChromeViewSwitcherClass MarlinViewChromeViewSwitcherClass;
typedef struct _MarlinViewChromeViewSwitcherPrivate MarlinViewChromeViewSwitcherPrivate;

#define MARLIN_VIEW_TYPE_WELCOME (marlin_view_welcome_get_type ())
#define MARLIN_VIEW_WELCOME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MARLIN_VIEW_TYPE_WELCOME, MarlinViewWelcome))
#define MARLIN_VIEW_WELCOME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MARLIN_VIEW_TYPE_WELCOME, MarlinViewWelcomeClass))
#define MARLIN_VIEW_IS_WELCOME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MARLIN_VIEW_TYPE_WELCOME))
#define MARLIN_VIEW_IS_WELCOME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MARLIN_VIEW_TYPE_WELCOME))
#define MARLIN_VIEW_WELCOME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MARLIN_VIEW_TYPE_WELCOME, MarlinViewWelcomeClass))

typedef struct _MarlinViewWelcome MarlinViewWelcome;
typedef struct _MarlinViewWelcomeClass MarlinViewWelcomeClass;
typedef struct _MarlinViewWelcomePrivate MarlinViewWelcomePrivate;

struct _MarlinViewChromeLocatableIface {
	GTypeInterface parent_iface;
	void (*set_display_path) (MarlinViewChromeLocatable* self, const gchar* path);
	gchar* (*get_display_path) (MarlinViewChromeLocatable* self);
	gboolean (*set_focussed) (MarlinViewChromeLocatable* self);
};

struct _MarlinViewChromeNavigatableIface {
	GTypeInterface parent_iface;
	void (*set_breadcrumbs_path) (MarlinViewChromeNavigatable* self, const gchar* newpath);
	gchar* (*get_breadcrumbs_path) (MarlinViewChromeNavigatable* self, gboolean include_file_protocol);
	void (*set_action_icon_tooltip) (MarlinViewChromeNavigatable* self, const gchar* tip);
	void (*hide_action_icon) (MarlinViewChromeNavigatable* self);
	void (*set_entry_text) (MarlinViewChromeNavigatable* self, const gchar* txt);
	void (*reset) (MarlinViewChromeNavigatable* self);
	void (*set_animation_visible) (MarlinViewChromeNavigatable* self, gboolean visible);
	void (*set_placeholder) (MarlinViewChromeNavigatable* self, const gchar* placeholder);
	void (*show_default_action_icon) (MarlinViewChromeNavigatable* self);
	void (*set_default_action_icon_tooltip) (MarlinViewChromeNavigatable* self);
	gchar* (*get_entry_text) (MarlinViewChromeNavigatable* self);
	gint (*get_minimum_width) (MarlinViewChromeNavigatable* self);
	void (*set_default_entry_tooltip) (MarlinViewChromeNavigatable* self);
	const gchar* (*get_action_icon_name) (MarlinViewChromeNavigatable* self);
	void (*set_action_icon_name) (MarlinViewChromeNavigatable* self, const gchar* value);
	gboolean (*get_hide_breadcrumbs) (MarlinViewChromeNavigatable* self);
	void (*set_hide_breadcrumbs) (MarlinViewChromeNavigatable* self, gboolean value);
};

struct _MarlinViewChromeBasicLocationBar {
	GtkBox parent_instance;
	MarlinViewChromeBasicLocationBarPrivate * priv;
	GtkWidget* widget;
};

struct _MarlinViewChromeBasicLocationBarClass {
	GtkBoxClass parent_class;
	void (*connect_signals) (MarlinViewChromeBasicLocationBar* self);
	void (*after_bread_text_changed) (MarlinViewChromeBasicLocationBar* self, const gchar* txt);
	gboolean (*after_bread_focus_in_event) (MarlinViewChromeBasicLocationBar* self, GdkEventFocus* event);
	gboolean (*after_bread_focus_out_event) (MarlinViewChromeBasicLocationBar* self, GdkEventFocus* event);
	void (*on_bread_action_icon_press) (MarlinViewChromeBasicLocationBar* self);
	void (*on_bread_activate_path) (MarlinViewChromeBasicLocationBar* self, const gchar* path, MarlinOpenFlag flag);
	void (*show_navigate_icon) (MarlinViewChromeBasicLocationBar* self);
	void (*hide_navigate_icon) (MarlinViewChromeBasicLocationBar* self);
	void (*set_display_path) (MarlinViewChromeBasicLocationBar* self, const gchar* path);
};

struct _MarlinViewChromeBasicBreadcrumbsEntry {
	GtkEntry parent_instance;
	MarlinViewChromeBasicBreadcrumbsEntryPrivate * priv;
	gchar* placeholder;
	MarlinViewChromeBreadcrumbElement* clicked_element;
	gchar* current_dir_path;
	GeeArrayList* elements;
	gboolean animation_visible;
	GeeCollection* old_elements;
	GtkStyleContext* button_context;
	GtkStyleContext* button_context_active;
	gboolean context_menu_showing;
};

struct _MarlinViewChromeBasicBreadcrumbsEntryClass {
	GtkEntryClass parent_class;
	void (*connect_signals) (MarlinViewChromeBasicBreadcrumbsEntry* self);
	void (*reset) (MarlinViewChromeBasicBreadcrumbsEntry* self);
	gboolean (*on_key_press_event) (MarlinViewChromeBasicBreadcrumbsEntry* self, GdkEventKey* event);
	gboolean (*on_button_press_event) (MarlinViewChromeBasicBreadcrumbsEntry* self, GdkEventButton* event);
	gboolean (*on_button_release_event) (MarlinViewChromeBasicBreadcrumbsEntry* self, GdkEventButton* event);
	gboolean (*on_focus_out) (MarlinViewChromeBasicBreadcrumbsEntry* self, GdkEventFocus* event);
	gboolean (*on_focus_in) (MarlinViewChromeBasicBreadcrumbsEntry* self, GdkEventFocus* event);
	void (*on_activate) (MarlinViewChromeBasicBreadcrumbsEntry* self);
	void (*on_entry_text_changed) (MarlinViewChromeBasicBreadcrumbsEntry* self);
	void (*go_down) (MarlinViewChromeBasicBreadcrumbsEntry* self);
	void (*go_up) (MarlinViewChromeBasicBreadcrumbsEntry* self);
	void (*set_default_entry_tooltip) (MarlinViewChromeBasicBreadcrumbsEntry* self);
};

struct _MarlinViewChromeBreadcrumbElement {
	GObject parent_instance;
	MarlinViewChromeBreadcrumbElementPrivate * priv;
	gdouble offset;
	gdouble x;
	gdouble display_width;
	gboolean hidden;
	gboolean display;
	gboolean can_shrink;
	gboolean pressed;
	gboolean text_is_displayed;
};

struct _MarlinViewChromeBreadcrumbElementClass {
	GObjectClass parent_class;
};

struct _MarlinViewChromeBreadcrumbIconInfo {
	GTypeInstance parent_instance;
	volatile int ref_count;
	MarlinViewChromeBreadcrumbIconInfoPrivate * priv;
	gchar* path;
	gboolean protocol;
	GIcon* gicon;
	GdkPixbuf* icon;
	gchar** exploded;
	gint exploded_length1;
	gboolean break_loop;
	gchar* text_displayed;
	gint icon_width;
	gint icon_height;
};

struct _MarlinViewChromeBreadcrumbIconInfoClass {
	GTypeClass parent_class;
	void (*finalize) (MarlinViewChromeBreadcrumbIconInfo *self);
};

struct _MarlinViewChromeBreadcrumbIconList {
	GObject parent_instance;
	MarlinViewChromeBreadcrumbIconListPrivate * priv;
};

struct _MarlinViewChromeBreadcrumbIconListClass {
	GObjectClass parent_class;
};

struct _MarlinViewChromeButtonWithMenu {
	GtkToggleButton parent_instance;
	MarlinViewChromeButtonWithMenuPrivate * priv;
	gulong toggled_sig_id;
};

struct _MarlinViewChromeButtonWithMenuClass {
	GtkToggleButtonClass parent_class;
};

struct _GraniteWidgetsImgEventBox {
	GtkEventBox parent_instance;
	GraniteWidgetsImgEventBoxPrivate * priv;
};

struct _GraniteWidgetsImgEventBoxClass {
	GtkEventBoxClass parent_class;
};

struct _MarlinViewChromeSearchableIface {
	GTypeInterface parent_iface;
	void (*cancel) (MarlinViewChromeSearchable* self);
	void (*search) (MarlinViewChromeSearchable* self, const gchar* txt, GFile* search_location);
	gboolean (*has_popped_up) (MarlinViewChromeSearchable* self);
};

struct _MarlinViewChromeSearchResults {
	GtkWindow parent_instance;
	MarlinViewChromeSearchResultsPrivate * priv;
};

struct _MarlinViewChromeSearchResultsClass {
	GtkWindowClass parent_class;
};

struct _MarlinViewChromeViewSwitcher {
	GraniteWidgetsModeButton parent_instance;
	MarlinViewChromeViewSwitcherPrivate * priv;
};

struct _MarlinViewChromeViewSwitcherClass {
	GraniteWidgetsModeButtonClass parent_class;
};

struct _MarlinViewWelcome {
	GraniteWidgetsWelcome parent_instance;
	MarlinViewWelcomePrivate * priv;
};

struct _MarlinViewWelcomeClass {
	GraniteWidgetsWelcomeClass parent_class;
};

GType marlin_view_chrome_locatable_get_type (void) G_GNUC_CONST ;
void marlin_view_chrome_locatable_set_display_path (MarlinViewChromeLocatable* self,
                                                    const gchar* path);
gchar* marlin_view_chrome_locatable_get_display_path (MarlinViewChromeLocatable* self);
gboolean marlin_view_chrome_locatable_set_focussed (MarlinViewChromeLocatable* self);
GType marlin_view_chrome_navigatable_get_type (void) G_GNUC_CONST ;
void marlin_view_chrome_navigatable_set_breadcrumbs_path (MarlinViewChromeNavigatable* self,
                                                          const gchar* newpath);
gchar* marlin_view_chrome_navigatable_get_breadcrumbs_path (MarlinViewChromeNavigatable* self,
                                                            gboolean include_file_protocol);
void marlin_view_chrome_navigatable_set_action_icon_tooltip (MarlinViewChromeNavigatable* self,
                                                             const gchar* tip);
void marlin_view_chrome_navigatable_hide_action_icon (MarlinViewChromeNavigatable* self);
void marlin_view_chrome_navigatable_set_entry_text (MarlinViewChromeNavigatable* self,
                                                    const gchar* txt);
void marlin_view_chrome_navigatable_reset (MarlinViewChromeNavigatable* self);
void marlin_view_chrome_navigatable_set_animation_visible (MarlinViewChromeNavigatable* self,
                                                           gboolean visible);
void marlin_view_chrome_navigatable_set_placeholder (MarlinViewChromeNavigatable* self,
                                                     const gchar* placeholder);
void marlin_view_chrome_navigatable_show_default_action_icon (MarlinViewChromeNavigatable* self);
void marlin_view_chrome_navigatable_set_default_action_icon_tooltip (MarlinViewChromeNavigatable* self);
gchar* marlin_view_chrome_navigatable_get_entry_text (MarlinViewChromeNavigatable* self);
gint marlin_view_chrome_navigatable_get_minimum_width (MarlinViewChromeNavigatable* self);
void marlin_view_chrome_navigatable_set_default_entry_tooltip (MarlinViewChromeNavigatable* self);
const gchar* marlin_view_chrome_navigatable_get_action_icon_name (MarlinViewChromeNavigatable* self);
void marlin_view_chrome_navigatable_set_action_icon_name (MarlinViewChromeNavigatable* self,
                                                          const gchar* value);
gboolean marlin_view_chrome_navigatable_get_hide_breadcrumbs (MarlinViewChromeNavigatable* self);
void marlin_view_chrome_navigatable_set_hide_breadcrumbs (MarlinViewChromeNavigatable* self,
                                                          gboolean value);
GType marlin_view_chrome_basic_location_bar_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MarlinViewChromeBasicLocationBar, g_object_unref)
MarlinViewChromeBasicLocationBar* marlin_view_chrome_basic_location_bar_new (MarlinViewChromeNavigatable* _bread);
MarlinViewChromeBasicLocationBar* marlin_view_chrome_basic_location_bar_construct (GType object_type,
                                                                                   MarlinViewChromeNavigatable* _bread);
void marlin_view_chrome_basic_location_bar_connect_signals (MarlinViewChromeBasicLocationBar* self);
void marlin_view_chrome_basic_location_bar_after_bread_text_changed (MarlinViewChromeBasicLocationBar* self,
                                                                     const gchar* txt);
gboolean marlin_view_chrome_basic_location_bar_after_bread_focus_in_event (MarlinViewChromeBasicLocationBar* self,
                                                                           GdkEventFocus* event);
gboolean marlin_view_chrome_basic_location_bar_after_bread_focus_out_event (MarlinViewChromeBasicLocationBar* self,
                                                                            GdkEventFocus* event);
void marlin_view_chrome_basic_location_bar_on_bread_action_icon_press (MarlinViewChromeBasicLocationBar* self);
void marlin_view_chrome_basic_location_bar_on_bread_activate_path (MarlinViewChromeBasicLocationBar* self,
                                                                   const gchar* path,
                                                                   MarlinOpenFlag flag);
void marlin_view_chrome_basic_location_bar_show_navigate_icon (MarlinViewChromeBasicLocationBar* self);
void marlin_view_chrome_basic_location_bar_hide_navigate_icon (MarlinViewChromeBasicLocationBar* self);
void marlin_view_chrome_basic_location_bar_show_breadcrumbs (MarlinViewChromeBasicLocationBar* self);
void marlin_view_chrome_basic_location_bar_set_display_path (MarlinViewChromeBasicLocationBar* self,
                                                             const gchar* path);
const gchar* marlin_view_chrome_basic_location_bar_get_displayed_path (MarlinViewChromeBasicLocationBar* self);
void marlin_view_chrome_basic_location_bar_set_displayed_path (MarlinViewChromeBasicLocationBar* self,
                                                               const gchar* value);
void marlin_view_chrome_basic_location_bar_set_with_animation (MarlinViewChromeBasicLocationBar* self,
                                                               gboolean value);
gboolean marlin_view_chrome_basic_location_bar_get_has_focus (MarlinViewChromeBasicLocationBar* self);
GType marlin_view_chrome_basic_breadcrumbs_entry_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MarlinViewChromeBasicBreadcrumbsEntry, g_object_unref)
GType marlin_view_chrome_breadcrumb_element_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MarlinViewChromeBreadcrumbElement, g_object_unref)
GType marlin_view_chrome_basic_breadcrumbs_entry_target_type_get_type (void) G_GNUC_CONST ;
#define MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY_MINIMUM_LOCATION_BAR_ENTRY_WIDTH ((gdouble) 16)
#define MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY_MINIMUM_BREADCRUMB_WIDTH ((gdouble) 12)
#define MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY_ICON_WIDTH 32
#define MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY_BREAD_SPACING 12
#define MARLIN_VIEW_CHROME_BASIC_BREADCRUMBS_ENTRY_YPAD ((gdouble) 0)
void marlin_view_chrome_basic_breadcrumbs_entry_connect_signals (MarlinViewChromeBasicBreadcrumbsEntry* self);
gchar* marlin_view_chrome_basic_breadcrumbs_entry_get_action_icon_tooltip (MarlinViewChromeBasicBreadcrumbsEntry* self);
void marlin_view_chrome_basic_breadcrumbs_entry_reset (MarlinViewChromeBasicBreadcrumbsEntry* self);
void marlin_view_chrome_basic_breadcrumbs_entry_hide_default_action_icon (MarlinViewChromeBasicBreadcrumbsEntry* self);
gboolean marlin_view_chrome_basic_breadcrumbs_entry_on_key_press_event (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                        GdkEventKey* event);
gboolean marlin_view_chrome_basic_breadcrumbs_entry_on_button_press_event (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                           GdkEventButton* event);
gboolean marlin_view_chrome_basic_breadcrumbs_entry_on_button_release_event (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                             GdkEventButton* event);
gboolean marlin_view_chrome_basic_breadcrumbs_entry_icon_event (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                GdkEventButton* event);
gboolean marlin_view_chrome_basic_breadcrumbs_entry_on_focus_out (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                  GdkEventFocus* event);
gboolean marlin_view_chrome_basic_breadcrumbs_entry_on_focus_in (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                 GdkEventFocus* event);
void marlin_view_chrome_basic_breadcrumbs_entry_on_activate (MarlinViewChromeBasicBreadcrumbsEntry* self);
void marlin_view_chrome_basic_breadcrumbs_entry_on_entry_text_changed (MarlinViewChromeBasicBreadcrumbsEntry* self);
void marlin_view_chrome_basic_breadcrumbs_entry_go_down (MarlinViewChromeBasicBreadcrumbsEntry* self);
void marlin_view_chrome_basic_breadcrumbs_entry_go_up (MarlinViewChromeBasicBreadcrumbsEntry* self);
void marlin_view_chrome_basic_breadcrumbs_entry_set_entry_cursor (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                  const gchar* cursor_name);
void marlin_view_chrome_basic_breadcrumbs_entry_set_default_entry_tooltip (MarlinViewChromeBasicBreadcrumbsEntry* self);
void marlin_view_chrome_basic_breadcrumbs_entry_reset_elements_states (MarlinViewChromeBasicBreadcrumbsEntry* self);
gdouble marlin_view_chrome_basic_breadcrumbs_entry_get_displayed_breadcrumbs_natural_width (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                                            GList* * displayed_breadcrumbs);
MarlinViewChromeBreadcrumbElement* marlin_view_chrome_basic_breadcrumbs_entry_get_element_from_coordinates (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                                                            gint x,
                                                                                                            gint y);
gchar* marlin_view_chrome_basic_breadcrumbs_entry_get_path_from_element (MarlinViewChromeBasicBreadcrumbsEntry* self,
                                                                         MarlinViewChromeBreadcrumbElement* el,
                                                                         gboolean include_file_protocol);
gchar* marlin_view_chrome_basic_breadcrumbs_entry_get_first_element_icon_name (MarlinViewChromeBasicBreadcrumbsEntry* self);
MarlinViewChromeBasicBreadcrumbsEntry* marlin_view_chrome_basic_breadcrumbs_entry_new (void);
MarlinViewChromeBasicBreadcrumbsEntry* marlin_view_chrome_basic_breadcrumbs_entry_construct (GType object_type);
MarlinViewChromeBreadcrumbElement* marlin_view_chrome_breadcrumb_element_new (const gchar* text_,
                                                                              GtkWidget* widget_,
                                                                              GtkStyleContext* button_context);
MarlinViewChromeBreadcrumbElement* marlin_view_chrome_breadcrumb_element_construct (GType object_type,
                                                                                    const gchar* text_,
                                                                                    GtkWidget* widget_,
                                                                                    GtkStyleContext* button_context);
gpointer marlin_view_chrome_breadcrumb_icon_info_ref (gpointer instance);
void marlin_view_chrome_breadcrumb_icon_info_unref (gpointer instance);
GParamSpec* marlin_view_chrome_param_spec_breadcrumb_icon_info (const gchar* name,
                                                                const gchar* nick,
                                                                const gchar* blurb,
                                                                GType object_type,
                                                                GParamFlags flags);
void marlin_view_chrome_value_set_breadcrumb_icon_info (GValue* value,
                                                        gpointer v_object);
void marlin_view_chrome_value_take_breadcrumb_icon_info (GValue* value,
                                                         gpointer v_object);
gpointer marlin_view_chrome_value_get_breadcrumb_icon_info (const GValue* value);
GType marlin_view_chrome_breadcrumb_icon_info_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MarlinViewChromeBreadcrumbIconInfo, marlin_view_chrome_breadcrumb_icon_info_unref)
void marlin_view_chrome_breadcrumb_element_set_icon (MarlinViewChromeBreadcrumbElement* self,
                                                     MarlinViewChromeBreadcrumbIconInfo* icon_info);
gdouble marlin_view_chrome_breadcrumb_element_draw (MarlinViewChromeBreadcrumbElement* self,
                                                    cairo_t* cr,
                                                    gdouble x,
                                                    gdouble y,
                                                    gdouble height,
                                                    GtkWidget* widget);
gchar* marlin_view_chrome_breadcrumb_element_get_icon_name (MarlinViewChromeBreadcrumbElement* self);
const gchar* marlin_view_chrome_breadcrumb_element_get_text (MarlinViewChromeBreadcrumbElement* self);
gdouble marlin_view_chrome_breadcrumb_element_get_natural_width (MarlinViewChromeBreadcrumbElement* self);
gdouble marlin_view_chrome_breadcrumb_element_get_real_width (MarlinViewChromeBreadcrumbElement* self);
const gchar* marlin_view_chrome_breadcrumb_element_get_text_for_display (MarlinViewChromeBreadcrumbElement* self);
void marlin_view_chrome_breadcrumb_element_set_text_for_display (MarlinViewChromeBreadcrumbElement* self,
                                                                 const gchar* value);
MarlinViewChromeBreadcrumbIconInfo* marlin_view_chrome_breadcrumb_icon_info_new_special_directory (const gchar* path,
                                                                                                   const gchar* icon_name);
MarlinViewChromeBreadcrumbIconInfo* marlin_view_chrome_breadcrumb_icon_info_construct_special_directory (GType object_type,
                                                                                                         const gchar* path,
                                                                                                         const gchar* icon_name);
MarlinViewChromeBreadcrumbIconInfo* marlin_view_chrome_breadcrumb_icon_info_new_protocol_directory (const gchar* scheme,
                                                                                                    const gchar* icon_name,
                                                                                                    const gchar* display_name);
MarlinViewChromeBreadcrumbIconInfo* marlin_view_chrome_breadcrumb_icon_info_construct_protocol_directory (GType object_type,
                                                                                                          const gchar* scheme,
                                                                                                          const gchar* icon_name,
                                                                                                          const gchar* display_name);
MarlinViewChromeBreadcrumbIconInfo* marlin_view_chrome_breadcrumb_icon_info_new_from_mount (GMount* mount);
MarlinViewChromeBreadcrumbIconInfo* marlin_view_chrome_breadcrumb_icon_info_construct_from_mount (GType object_type,
                                                                                                  GMount* mount);
void marlin_view_chrome_breadcrumb_icon_info_render_icon (MarlinViewChromeBreadcrumbIconInfo* self,
                                                          GtkStyleContext* context,
                                                          GError** error);
void marlin_view_chrome_breadcrumb_icon_info_set_path (MarlinViewChromeBreadcrumbIconInfo* self,
                                                       const gchar* path);
MarlinViewChromeBreadcrumbIconInfo* marlin_view_chrome_breadcrumb_icon_info_new (void);
MarlinViewChromeBreadcrumbIconInfo* marlin_view_chrome_breadcrumb_icon_info_construct (GType object_type);
GType marlin_view_chrome_breadcrumb_icon_list_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MarlinViewChromeBreadcrumbIconList, g_object_unref)
MarlinViewChromeBreadcrumbIconList* marlin_view_chrome_breadcrumb_icon_list_new (GtkStyleContext* context);
MarlinViewChromeBreadcrumbIconList* marlin_view_chrome_breadcrumb_icon_list_construct (GType object_type,
                                                                                       GtkStyleContext* context);
void marlin_view_chrome_breadcrumb_icon_list_add_mounted_volumes (MarlinViewChromeBreadcrumbIconList* self);
void marlin_view_chrome_breadcrumb_icon_list_truncate_to_length (MarlinViewChromeBreadcrumbIconList* self,
                                                                 gint new_length);
gint marlin_view_chrome_breadcrumb_icon_list_length (MarlinViewChromeBreadcrumbIconList* self);
GeeArrayList* marlin_view_chrome_breadcrumb_icon_list_get_list (MarlinViewChromeBreadcrumbIconList* self);
GtkStyleContext* marlin_view_chrome_breadcrumb_icon_list_get_context (MarlinViewChromeBreadcrumbIconList* self);
void marlin_view_chrome_breadcrumb_icon_list_set_context (MarlinViewChromeBreadcrumbIconList* self,
                                                          GtkStyleContext* value);
gint marlin_view_chrome_breadcrumb_icon_list_get_scale (MarlinViewChromeBreadcrumbIconList* self);
void marlin_view_chrome_breadcrumb_icon_list_set_scale (MarlinViewChromeBreadcrumbIconList* self,
                                                        gint value);
GType marlin_view_chrome_button_with_menu_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MarlinViewChromeButtonWithMenu, g_object_unref)
GType marlin_view_chrome_button_with_menu_vmenu_position_get_type (void) G_GNUC_CONST ;
GType marlin_view_chrome_button_with_menu_hmenu_position_get_type (void) G_GNUC_CONST ;
MarlinViewChromeButtonWithMenu* marlin_view_chrome_button_with_menu_new_from_icon_name (const gchar* icon_name,
                                                                                        GtkIconSize size);
MarlinViewChromeButtonWithMenu* marlin_view_chrome_button_with_menu_construct_from_icon_name (GType object_type,
                                                                                              const gchar* icon_name,
                                                                                              GtkIconSize size);
MarlinViewChromeButtonWithMenu* marlin_view_chrome_button_with_menu_new (void);
MarlinViewChromeButtonWithMenu* marlin_view_chrome_button_with_menu_construct (GType object_type);
void marlin_view_chrome_button_with_menu_popup_menu (MarlinViewChromeButtonWithMenu* self,
                                                     GdkEventButton* ev);
void marlin_view_chrome_button_with_menu_popdown_menu (MarlinViewChromeButtonWithMenu* self);
MarlinViewChromeButtonWithMenuHMenuPosition marlin_view_chrome_button_with_menu_get_horizontal_menu_position (MarlinViewChromeButtonWithMenu* self);
void marlin_view_chrome_button_with_menu_set_horizontal_menu_position (MarlinViewChromeButtonWithMenu* self,
                                                                       MarlinViewChromeButtonWithMenuHMenuPosition value);
MarlinViewChromeButtonWithMenuVMenuPosition marlin_view_chrome_button_with_menu_get_vertical_menu_position (MarlinViewChromeButtonWithMenu* self);
void marlin_view_chrome_button_with_menu_set_vertical_menu_position (MarlinViewChromeButtonWithMenu* self,
                                                                     MarlinViewChromeButtonWithMenuVMenuPosition value);
GtkMenu* marlin_view_chrome_button_with_menu_get_menu (MarlinViewChromeButtonWithMenu* self);
void marlin_view_chrome_button_with_menu_set_menu (MarlinViewChromeButtonWithMenu* self,
                                                   GtkMenu* value);
GType granite_widgets_img_event_box_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (GraniteWidgetsImgEventBox, g_object_unref)
GraniteWidgetsImgEventBox* granite_widgets_img_event_box_new (GtkOrientation o);
GraniteWidgetsImgEventBox* granite_widgets_img_event_box_construct (GType object_type,
                                                                    GtkOrientation o);
void granite_widgets_img_event_box_set_from_pixbuf (GraniteWidgetsImgEventBox* self,
                                                    GdkPixbuf* _pix);
GtkOrientation granite_widgets_img_event_box_get_orientation (GraniteWidgetsImgEventBox* self);
void granite_widgets_img_event_box_set_orientation (GraniteWidgetsImgEventBox* self,
                                                    GtkOrientation value);
GType marlin_view_chrome_searchable_get_type (void) G_GNUC_CONST ;
GType marlin_view_chrome_search_results_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MarlinViewChromeSearchResults, g_object_unref)
MarlinViewChromeSearchResults* marlin_view_chrome_search_results_new (GtkWidget* parent_widget);
MarlinViewChromeSearchResults* marlin_view_chrome_search_results_construct (GType object_type,
                                                                            GtkWidget* parent_widget);
void marlin_view_chrome_search_results_clear (MarlinViewChromeSearchResults* self);
gboolean marlin_view_chrome_search_results_get_working (MarlinViewChromeSearchResults* self);
gint marlin_view_chrome_search_results_get_n_results (MarlinViewChromeSearchResults* self);
void marlin_view_chrome_searchable_cancel (MarlinViewChromeSearchable* self);
void marlin_view_chrome_searchable_search (MarlinViewChromeSearchable* self,
                                           const gchar* txt,
                                           GFile* search_location);
gboolean marlin_view_chrome_searchable_has_popped_up (MarlinViewChromeSearchable* self);
GType marlin_view_chrome_view_switcher_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MarlinViewChromeViewSwitcher, g_object_unref)
MarlinViewChromeViewSwitcher* marlin_view_chrome_view_switcher_new (GSimpleAction* _view_mode_action);
MarlinViewChromeViewSwitcher* marlin_view_chrome_view_switcher_construct (GType object_type,
                                                                          GSimpleAction* _view_mode_action);
GSimpleAction* marlin_view_chrome_view_switcher_get_view_mode_action (MarlinViewChromeViewSwitcher* self);
void marlin_animation_smooth_adjustment_to (GtkAdjustment* adj,
                                            gint final);
#define MARLIN_APP_ID "io.elementary.files"
#define MARLIN_APP_DESKTOP MARLIN_APP_ID ".desktop"
#define MARLIN_APP_TITLE N_ ("Files")
#define MARLIN_HELP_URL "https://elementaryos.stackexchange.com/questions/tagged/pantheon-files"
#define MARLIN_BUG_URL "https://github.com/elementary/files/issues/new"
#define MARLIN_INVALID_TAB_NAME "----"
#define MARLIN_ICON_APP_LOGO "system-file-manager"
#define MARLIN_ICON_FILESYSTEM "drive-harddisk-system"
#define MARLIN_ICON_FILESYSTEM_SYMBOLIC "drive-harddisk-symbolic"
#define MARLIN_ICON_FOLDER "folder"
#define MARLIN_ICON_FOLDER_DOCUMENTS_SYMBOLIC "folder-documents-symbolic"
#define MARLIN_ICON_FOLDER_DOWNLOADS_SYMBOLIC "folder-download-symbolic"
#define MARLIN_ICON_FOLDER_MUSIC_SYMBOLIC "folder-music-symbolic"
#define MARLIN_ICON_FOLDER_PICTURES_SYMBOLIC "folder-pictures-symbolic"
#define MARLIN_ICON_FOLDER_PUBLICSHARE_SYMBOLIC "folder-publicshare-symbolic"
#define MARLIN_ICON_FOLDER_REMOTE "folder-remote"
#define MARLIN_ICON_FOLDER_REMOTE_SYMBOLIC "folder-remote-symbolic"
#define MARLIN_ICON_FOLDER_TEMPLATES_SYMBOLIC "folder-templates-symbolic"
#define MARLIN_ICON_FOLDER_VIDEOS_SYMBOLIC "folder-videos-symbolic"
#define MARLIN_ICON_GO_HOME_SYMBOLIC "go-home-symbolic"
#define MARLIN_ICON_HOME "user-home"
#define MARLIN_ICON_NETWORK_SYMBOLIC "network-workgroup-symbolic"
#define MARLIN_ICON_NETWORK "network-workgroup"
#define MARLIN_ICON_NETWORK_SERVER_SYMBOLIC "network-server-symbolic"
#define MARLIN_ICON_NETWORK_SERVER "network-server"
#define MARLIN_ICON_TRASH "user-trash"
#define MARLIN_ICON_TRASH_FULL "user-trash-full"
#define MARLIN_ICON_TRASH_SYMBOLIC "user-trash-symbolic"
#define MARLIN_ICON_RECENT "document-open-recent"
#define MARLIN_ICON_RECENT_SYMBOLIC "document-open-recent-symbolic"
#define MARLIN_ICON_PATHBAR_PRIMARY_FIND_SYMBOLIC "edit-find-symbolic"
#define MARLIN_ICON_PATHBAR_SECONDARY_NAVIGATE_SYMBOLIC "go-jump-symbolic"
#define MARLIN_ICON_PATHBAR_SECONDARY_REFRESH_SYMBOLIC "view-refresh-symbolic"
#define MARLIN_ICON_PATHBAR_SECONDARY_WORKING_SYMBOLIC "process-working-symbolic"
#define MARLIN_OPEN_IN_TERMINAL_DESKTOP_ID "open-pantheon-terminal-here.desktop"
#define MARLIN_PROTOCOL_NAME_AFP N_ ("AFP")
#define MARLIN_PROTOCOL_NAME_DAV N_ ("DAV")
#define MARLIN_PROTOCOL_NAME_DAVS N_ ("DAVS")
#define MARLIN_PROTOCOL_NAME_FTP N_ ("FTP")
#define MARLIN_PROTOCOL_NAME_NETWORK N_ ("Network")
#define MARLIN_PROTOCOL_NAME_SFTP N_ ("SFTP")
#define MARLIN_PROTOCOL_NAME_SMB N_ ("SMB")
#define MARLIN_PROTOCOL_NAME_TRASH N_ ("Trash")
#define MARLIN_PROTOCOL_NAME_RECENT N_ ("Recent")
#define MARLIN_PROTOCOL_NAME_MTP N_ ("MTP")
#define MARLIN_PROTOCOL_NAME_FILE N_ ("File System")
#define MARLIN_MINIMUM_LOCATION_BAR_ENTRY_WIDTH ((gdouble) 36)
#define MARLIN_LOCATION_BAR_ANIMATION_TIME_USEC ((guint64) 200000)
#define MARLIN_BUTTON_LONG_PRESS ((guint) 300)
#define MARLIN_DEFAULT_POPUP_MENU_DISPLACEMENT ((gint16) 2)
gchar* marlin_protocol_to_name (const gchar* protocol);
GType marlin_view_welcome_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (MarlinViewWelcome, g_object_unref)
MarlinViewWelcome* marlin_view_welcome_new (const gchar* primary,
                                            const gchar* secondary);
MarlinViewWelcome* marlin_view_welcome_construct (GType object_type,
                                                  const gchar* primary,
                                                  const gchar* secondary);
gboolean marlin_view_welcome_on_button_press_event (MarlinViewWelcome* self,
                                                    GdkEventButton* event);

extern const gchar* MARLIN_SKIP_IMAGES[3];

G_END_DECLS

#endif
