[Nautilus-list] Background keynav
- From: Dave Camp <dave ximian com>
- To: nautilus-list eazel com
- Subject: [Nautilus-list] Background keynav
- Date: 24 Apr 2002 20:12:23 -0400
This patch implements calum's second suggestion for a keynavigable
background selection dialog as described in
http://lists.eazel.com/pipermail/nautilus-list/2002-March/007747.html
-dave
? nautilus-background-keynav.patch
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/nautilus/ChangeLog,v
retrieving revision 1.5241
diff -u -r1.5241 ChangeLog
--- ChangeLog 24 Apr 2002 14:40:35 -0000 1.5241
+++ ChangeLog 24 Apr 2002 22:36:43 -0000
@@ -1,3 +1,31 @@
+2002-04-24 Dave Camp <dave ximian com>
+
+ * src/file-manager/nautilus-directory-view-ui.xml: Add a "Change
+ Background" command.
+ * src/file-manager/fm-directory-view.c:
+ (change_background_callback), (update_scripts_menu),
+ (real_merge_menus): Implement the "Change Background" command.
+ * src/nautilus-property-browser.c:
+ (nautilus_property_browser_init), (nautilus_property_browser_new),
+ (nautilus_property_browser_get_main),
+ (nautilus_property_browser_show),
+ (nautilus_property_browser_hide_callback),
+ (set_background_from_category), (select_image),
+ (element_clicked_callback), (labeled_image_focus_in),
+ (image_activated_callback), (labeled_image_new),
+ (make_properties_from_directories), (add_reset_property),
+ (make_properties_from_xml_node), (make_category),
+ (category_type_from_string), (unload_categories),
+ (nautilus_property_browser_update_contents),
+ (nautilus_property_browser_set_category),
+ (nautilus_property_browser_set_path),
+ (nautilus_property_browser_set_background_object): Implement a
+ keynavigable "background only" mode for the property browser.
+ * src/nautilus-property-browser.h:
+ * src/nautilus-shell-ui.xml: Add a Background placeholder.
+ * src/nautilus-window-menus.c: (customize_callback): Updated to
+ reflect NautilusPropertyBrowser api change.
+
2002-04-24 Jody Goldberg <jody gnome org>
* src/file-manager/fm-list-model.c
Index: src/nautilus-property-browser.c
===================================================================
RCS file: /cvs/gnome/nautilus/src/nautilus-property-browser.c,v
retrieving revision 1.182
diff -u -r1.182 nautilus-property-browser.c
--- src/nautilus-property-browser.c 22 Apr 2002 09:44:48 -0000 1.182
+++ src/nautilus-property-browser.c 24 Apr 2002 22:36:46 -0000
@@ -85,12 +85,14 @@
/* property types */
typedef enum {
- NAUTILUS_PROPERTY_NONE,
- NAUTILUS_PROPERTY_PATTERN,
- NAUTILUS_PROPERTY_COLOR,
- NAUTILUS_PROPERTY_EMBLEM
+ NAUTILUS_PROPERTY_NONE = 1 << 0,
+ NAUTILUS_PROPERTY_PATTERN = 1 << 1,
+ NAUTILUS_PROPERTY_COLOR = 1 << 2,
+ NAUTILUS_PROPERTY_EMBLEM = 1 << 3
} NautilusPropertyType;
+#define NAUTILUS_PROPERTY_ALL (NAUTILUS_PROPERTY_PATTERN | NAUTILUS_PROPERTY_COLOR | NAUTILUS_PROPERTY_EMBLEM)
+
struct NautilusPropertyBrowserDetails {
GtkHBox *container;
@@ -133,6 +135,7 @@
char *image_path;
NautilusPropertyType category_type;
+ NautilusPropertyType valid_types;
int category_position;
@@ -142,6 +145,10 @@
gboolean keep_around;
gboolean has_local;
gboolean toggle_button_flag;
+
+ EelLabeledImage *selected_image;
+
+ EelBackground *background;
};
static void nautilus_property_browser_class_init (GtkObjectClass *object_klass);
@@ -205,6 +212,9 @@
#define ERASE_OBJECT_NAME "erase.png"
+#define NORMAL_TITLE (_("Backgrounds and Properties"))
+#define BACKGROUND_TITLE (_("Backgrounds"))
+
enum {
PROPERTY_TYPE,
};
@@ -251,6 +261,7 @@
property_browser->details->category = g_strdup ("patterns");
property_browser->details->category_type = NAUTILUS_PROPERTY_PATTERN;
+ property_browser->details->valid_types = NAUTILUS_PROPERTY_ALL;
/* load the chit frame */
temp_str = nautilus_pixmap_file ("chit_frame.png");
@@ -262,7 +273,7 @@
gtk_container_set_border_width (GTK_CONTAINER (widget), 0);
/* set the title and standard close accelerator */
- gtk_window_set_title (GTK_WINDOW (widget), _("Backgrounds and Emblems"));
+ gtk_window_set_title (GTK_WINDOW (widget), NORMAL_TITLE);
gtk_window_set_wmclass (GTK_WINDOW (widget), "property_browser", "Nautilus");
eel_gtk_window_set_up_close_accelerator (GTK_WINDOW (widget));
@@ -473,21 +484,32 @@
(gtk_widget_new (nautilus_property_browser_get_type (), NULL));
gtk_container_set_border_width (GTK_CONTAINER (browser), 0);
- gtk_widget_show (GTK_WIDGET(browser));
return browser;
}
-/* show the main property browser */
+/* get the main property browser */
-void
-nautilus_property_browser_show (void)
+NautilusPropertyBrowser *
+nautilus_property_browser_get_main (void)
{
if (main_browser == NULL) {
main_browser = nautilus_property_browser_new ();
- } else {
- gtk_window_present (GTK_WINDOW (main_browser));
}
+
+ return main_browser;
+}
+
+/* show the main property browser */
+void
+nautilus_property_browser_show (gboolean modal)
+{
+ NautilusPropertyBrowser *browser;
+
+ browser = nautilus_property_browser_get_main ();
+
+ gtk_window_present (GTK_WINDOW (browser));
+ gtk_window_set_modal (GTK_WINDOW (browser), modal);
}
static gboolean
@@ -504,6 +526,15 @@
nautilus_property_browser_hide_callback (GtkWidget *widget,
gpointer user_data)
{
+ NautilusPropertyBrowser *property_browser;
+
+ property_browser = NAUTILUS_PROPERTY_BROWSER (widget);
+
+ if (property_browser->details->selected_image) {
+ eel_labeled_image_set_selected
+ (property_browser->details->selected_image, FALSE);
+ }
+
cancel_remove_mode (NAUTILUS_PROPERTY_BROWSER (widget));
}
@@ -1475,6 +1506,64 @@
/* this callback handles clicks on the image or color based content content elements */
static void
+set_background_from_category (EelBackground *background,
+ NautilusPropertyType type,
+ const char *element_name)
+{
+ char *image_file_name;
+
+ if (eel_strcmp (element_name, RESET_IMAGE_NAME) == 0) {
+ eel_background_reset (background);
+ return;
+ }
+
+ switch (type) {
+ case NAUTILUS_PROPERTY_PATTERN :
+ image_file_name = g_strdup_printf ("%s/patterns/%s",
+ NAUTILUS_DATADIR,
+ element_name);
+ eel_background_receive_dropped_background_image (
+ background,
+ image_file_name);
+ g_free (image_file_name);
+ break;
+ case NAUTILUS_PROPERTY_COLOR :
+ eel_background_set_image_uri (background, NULL);
+ eel_background_set_color (background, element_name);
+ default :
+ }
+}
+
+static void
+select_image (NautilusPropertyBrowser *property_browser,
+ EelLabeledImage *labeled_image)
+{
+ const char *element_name;
+
+ if (property_browser->details->selected_image) {
+ eel_labeled_image_set_selected (property_browser->details->selected_image,
+ FALSE);
+ }
+
+ if (labeled_image) {
+ property_browser->details->selected_image = labeled_image;
+ eel_labeled_image_set_selected (labeled_image,
+ TRUE);
+ }
+
+ if (property_browser->details->background) {
+ element_name = g_object_get_data (G_OBJECT (labeled_image),
+ "property-name");
+
+ set_background_from_category (
+ property_browser->details->background,
+ property_browser->details->category_type,
+ element_name);
+ }
+}
+
+/* this callback handles clicks on the image or color based content content elements */
+static void
element_clicked_callback (GtkWidget *image_table,
GtkWidget *child,
const EelImageTableEvent *event,
@@ -1505,6 +1594,12 @@
gtk_widget_show (property_browser->details->help_label);
return;
}
+
+ if (property_browser->details->background) {
+ gtk_widget_grab_focus (child);
+ select_image (property_browser, EEL_LABELED_IMAGE (child));
+ return;
+ }
/* set up the drag and drop type corresponding to the category */
drag_types[0].target = property_browser->details->drag_type;
@@ -1577,6 +1672,19 @@
return result_str;
}
+static gboolean
+labeled_image_focus_in (GtkWidget *widget,
+ GdkEventFocus *event,
+ gpointer data)
+{
+ g_return_val_if_fail (widget->parent && widget->parent->parent, FALSE);
+ g_return_val_if_fail (GTK_IS_VIEWPORT (widget->parent->parent), FALSE);
+
+ eel_gtk_viewport_scroll_to_rect (GTK_VIEWPORT (widget->parent->parent), &widget->allocation);
+
+ return FALSE;
+}
+
static void
labeled_image_configure (EelLabeledImage *labeled_image)
{
@@ -1585,9 +1693,17 @@
eel_labeled_image_set_spacing (labeled_image, LABELED_IMAGE_SPACING);
}
+static void
+image_activated_callback (GtkWidget *image,
+ NautilusPropertyBrowser *property_browser)
+{
+ select_image (property_browser, EEL_LABELED_IMAGE (image));
+}
+
/* Make a color tile for a property */
static GtkWidget *
-labeled_image_new (const char *text,
+labeled_image_new (NautilusPropertyBrowser *property_browser,
+ const char *text,
GdkPixbuf *pixbuf,
const char *property_name,
double scale_factor)
@@ -1597,6 +1713,19 @@
labeled_image = eel_labeled_image_new (text, pixbuf);
labeled_image_configure (EEL_LABELED_IMAGE (labeled_image));
+ eel_labeled_image_set_can_focus
+ (EEL_LABELED_IMAGE (labeled_image),
+ property_browser->details->background != NULL);
+
+ g_signal_connect (labeled_image, "focus_in_event",
+ G_CALLBACK (labeled_image_focus_in),
+ property_browser);
+
+
+ g_signal_connect (labeled_image, "activate",
+ G_CALLBACK (image_activated_callback),
+ property_browser);
+
if (property_name != NULL) {
g_object_set_data_full (G_OBJECT (labeled_image),
"property-name",
@@ -1644,7 +1773,7 @@
&object_label) == GNOME_VFS_OK) {
GtkWidget *property_image;
- property_image = labeled_image_new (object_label, object_pixbuf, object_name, PANGO_SCALE_LARGE);
+ property_image = labeled_image_new (property_browser, object_label, object_pixbuf, object_name, PANGO_SCALE_LARGE);
if (property_browser->details->category_type == NAUTILUS_PROPERTY_EMBLEM) {
char *keyword;
@@ -1737,7 +1866,8 @@
g_free (reset_image_file_name);
- reset_image = labeled_image_new (NULL, reset_chit, RESET_IMAGE_NAME, PANGO_SCALE_MEDIUM);
+ reset_image = labeled_image_new (property_browser, NULL, reset_chit, RESET_IMAGE_NAME, PANGO_SCALE_MEDIUM);
+
gtk_container_add (GTK_CONTAINER (property_browser->details->content_table), reset_image);
eel_wrap_table_reorder_child (EEL_WRAP_TABLE (property_browser->details->content_table),
reset_image,
@@ -1789,7 +1919,7 @@
pixbuf = make_color_drag_image (property_browser, color, FALSE);
/* make the tile from the pixmap and name */
- new_property = labeled_image_new (name, pixbuf, color, PANGO_SCALE_LARGE);
+ new_property = labeled_image_new (property_browser, name, pixbuf, color, PANGO_SCALE_LARGE);
gtk_container_add (GTK_CONTAINER (property_browser->details->content_table), new_property);
gtk_widget_show (new_property);
@@ -1821,7 +1951,11 @@
{
/* set up the description in the help label */
- gtk_label_set_text (GTK_LABEL (property_browser->details->help_label), description);
+ if (!property_browser->details->background) {
+ gtk_label_set_text (GTK_LABEL (property_browser->details->help_label), description);
+ } else {
+ gtk_label_set_text (GTK_LABEL (property_browser->details->help_label), "");
+ }
/* case out on the mode */
if (strcmp (mode, "directory") == 0)
@@ -1893,10 +2027,44 @@
g_strdup (name), (GClosureNotify) g_free, 0);
}
+static NautilusPropertyType
+category_type_from_string (const char *category)
+{
+ if (eel_strcmp (category, "patterns") == 0) {
+ return NAUTILUS_PROPERTY_PATTERN;
+ } else if (eel_strcmp (category, "colors") == 0) {
+ return NAUTILUS_PROPERTY_COLOR;
+ } else if (eel_strcmp (category, "emblems") == 0) {
+ return NAUTILUS_PROPERTY_EMBLEM;
+ } else {
+ return NAUTILUS_PROPERTY_NONE;
+ }
+}
+
+static void
+unload_categories (NautilusPropertyBrowser *property_browser)
+{
+ GList *children;
+ GList *l;
+
+ children = gtk_container_get_children
+ (GTK_CONTAINER (property_browser->details->category_box));
+
+ for (l = children; l != NULL; l = l->next) {
+ gtk_container_remove (GTK_CONTAINER (property_browser->details->category_box),
+ GTK_WIDGET (l->data));
+ }
+
+ g_list_free (children);
+
+ property_browser->details->category_position = -1;
+}
+
/* update_contents populates the property browser with information specified by the path and other state variables */
void
nautilus_property_browser_update_contents (NautilusPropertyBrowser *property_browser)
{
+ NautilusPropertyType category_type;
xmlNodePtr cur_node;
xmlDocPtr document;
EelBackground *background;
@@ -1910,6 +2078,8 @@
if (document == NULL) {
return;
}
+
+ property_browser->details->selected_image = NULL;
/* remove the existing content box, if any, and allocate a new one */
if (property_browser->details->content_frame) {
@@ -1980,16 +2150,21 @@
}
if (!got_categories) {
- display_name = eel_xml_get_property_translated (cur_node, "display_name");
- image = xmlGetProp (cur_node, "image");
+ category_type =
+ category_type_from_string (name);
- make_category_link (property_browser,
- name,
- display_name,
- image);
-
- xmlFree (display_name);
- xmlFree (image);
+ if ((category_type & property_browser->details->valid_types) != 0) {
+ display_name = eel_xml_get_property_translated (cur_node, "display_name");
+ image = xmlGetProp (cur_node, "image");
+
+ make_category_link (property_browser,
+ name,
+ display_name,
+ image);
+
+ xmlFree (display_name);
+ xmlFree (image);
+ }
}
xmlFree (name);
@@ -2125,16 +2300,8 @@
g_free (property_browser->details->category);
property_browser->details->category = g_strdup (new_category);
- /* set up the property type enum */
- if (eel_strcmp (new_category, "patterns") == 0) {
- property_browser->details->category_type = NAUTILUS_PROPERTY_PATTERN;
- } else if (eel_strcmp (new_category, "colors") == 0) {
- property_browser->details->category_type = NAUTILUS_PROPERTY_COLOR;
- } else if (eel_strcmp (new_category, "emblems") == 0) {
- property_browser->details->category_type = NAUTILUS_PROPERTY_EMBLEM;
- } else {
- property_browser->details->category_type = NAUTILUS_PROPERTY_NONE;
- }
+ property_browser->details->category_type =
+ category_type_from_string (new_category);
/* populate the per-uri box with the info */
nautilus_property_browser_update_contents (property_browser);
@@ -2158,6 +2325,38 @@
/* populate the per-uri box with the info */
nautilus_property_browser_update_contents (property_browser);
+}
+
+void
+nautilus_property_browser_set_background_object (NautilusPropertyBrowser *property_browser,
+ EelBackground *background)
+{
+ EelBackground *old_background;
+
+ old_background = property_browser->details->background;
+ property_browser->details->background = background;
+
+ if ((old_background && !background) ||
+ (!old_background && background)) {
+
+ if (background) {
+ property_browser->details->valid_types = NAUTILUS_PROPERTY_PATTERN | NAUTILUS_PROPERTY_COLOR;
+ gtk_window_set_title (GTK_WINDOW (property_browser), BACKGROUND_TITLE);
+ } else {
+ property_browser->details->valid_types = NAUTILUS_PROPERTY_ALL;
+ gtk_window_set_title (GTK_WINDOW (property_browser), BACKGROUND_TITLE);
+ }
+ unload_categories (property_browser);
+ nautilus_property_browser_update_contents (property_browser);
+ }
+
+ if (old_background) {
+ g_object_unref (old_background);
+ }
+
+ if (background) {
+ g_object_ref (background);
+ }
}
static void
Index: src/nautilus-property-browser.h
===================================================================
RCS file: /cvs/gnome/nautilus/src/nautilus-property-browser.h,v
retrieving revision 1.4
diff -u -r1.4 nautilus-property-browser.h
--- src/nautilus-property-browser.h 3 May 2001 19:16:09 -0000 1.4
+++ src/nautilus-property-browser.h 24 Apr 2002 22:36:46 -0000
@@ -32,8 +32,9 @@
#define NAUTILUS_PROPERTY_BROWSER_H
#include <gtk/gtkwindow.h>
+#include <eel/eel-background.h>
-typedef struct NautilusPropertyBrowser NautilusPropertyBrowser;
+typedef struct NautilusPropertyBrowser NautilusPropertyBrowser;
typedef struct NautilusPropertyBrowserClass NautilusPropertyBrowserClass;
#define NAUTILUS_TYPE_PROPERTY_BROWSER \
@@ -61,9 +62,14 @@
};
GtkType nautilus_property_browser_get_type (void);
+
NautilusPropertyBrowser *nautilus_property_browser_new (void);
-void nautilus_property_browser_show (void);
+NautilusPropertyBrowser *nautilus_property_browser_get_main (void);
+void nautilus_property_browser_show (gboolean modal);
+
void nautilus_property_browser_set_path (NautilusPropertyBrowser *panel,
const char *new_path);
+void nautilus_property_browser_set_background_object (NautilusPropertyBrowser *panel,
+ EelBackground *background);
#endif /* NAUTILUS_PROPERTY_BROWSER_H */
Index: src/nautilus-shell-ui.xml
===================================================================
RCS file: /cvs/gnome/nautilus/src/nautilus-shell-ui.xml,v
retrieving revision 1.84
diff -u -r1.84 nautilus-shell-ui.xml
--- src/nautilus-shell-ui.xml 21 Apr 2002 23:25:08 -0000 1.84
+++ src/nautilus-shell-ui.xml 24 Apr 2002 22:36:46 -0000
@@ -183,6 +183,7 @@
pixtype="stock" pixname="zoom-100"
verb="Zoom Normal"/>
</placeholder>
+ <placeholder name="Background Placeholder" delimit="top"/>
<placeholder name="View Choices">
<placeholder name="Extra Viewer" delimit="top"/>
<separator name="Before Short List"/>
Index: src/nautilus-window-menus.c
===================================================================
RCS file: /cvs/gnome/nautilus/src/nautilus-window-menus.c,v
retrieving revision 1.236
diff -u -r1.236 nautilus-window-menus.c
--- src/nautilus-window-menus.c 21 Apr 2002 22:41:17 -0000 1.236
+++ src/nautilus-window-menus.c 24 Apr 2002 22:36:46 -0000
@@ -538,7 +538,12 @@
gpointer user_data,
const char *verb)
{
- nautilus_property_browser_show ();
+ NautilusPropertyBrowser *property_browser;
+
+ property_browser = nautilus_property_browser_get_main ();
+ nautilus_property_browser_set_background_object (property_browser,
+ NULL);
+ nautilus_property_browser_show (FALSE);
}
static void
Index: src/file-manager/fm-directory-view.c
===================================================================
RCS file: /cvs/gnome/nautilus/src/file-manager/fm-directory-view.c,v
retrieving revision 1.526
diff -u -r1.526 fm-directory-view.c
--- src/file-manager/fm-directory-view.c 19 Apr 2002 12:06:45 -0000 1.526
+++ src/file-manager/fm-directory-view.c 24 Apr 2002 22:36:47 -0000
@@ -77,6 +77,7 @@
#include <libnautilus-private/nautilus-trash-monitor.h>
#include <libnautilus-private/nautilus-view-identifier.h>
#include <libnautilus/nautilus-bonobo-ui.h>
+#include "../nautilus-property-browser.h"
#include <math.h>
#include <unistd.h>
@@ -144,8 +145,7 @@
#define FM_DIRECTORY_VIEW_POPUP_PATH_BACKGROUND "/popups/background"
#define FM_DIRECTORY_VIEW_POPUP_PATH_SELECTION "/popups/selection"
-#define FM_DIRECTORY_VIEW_POPUP_PATH_BACKGROUND_SCRIPTS_PLACEHOLDER "/popups/background/Before Zoom Items/Scripts/Scripts Placeholder"
-#define FM_DIRECTORY_VIEW_POPUP_PATH_BACKGROUND_SCRIPTS_SEPARATOR "/popups/background/Before Zoom Items/Scripts/After Scripts"
+#define FM_DIRECTORY_VIEW_POPUP_PATH_BACKGROUND_SCRIPTS_PLACEHOLDER "/popups/background/Before Zoom Items/Scripts/Scripts Placeholder"
#define FM_DIRECTORY_VIEW_POPUP_PATH_APPLICATIONS_PLACEHOLDER "/popups/selection/Open Placeholder/Open With/Applications Placeholder"
#define FM_DIRECTORY_VIEW_POPUP_PATH_VIEWERS_PLACEHOLDER "/popups/selection/Open Placeholder/Open With/Viewers Placeholder"
@@ -1689,6 +1689,22 @@
}
static void
+change_background_callback (BonoboUIComponent *component,
+ gpointer data,
+ const char *verb)
+{
+ NautilusPropertyBrowser *property_browser;
+
+ property_browser = nautilus_property_browser_get_main ();
+
+ nautilus_property_browser_set_background_object
+ (property_browser,
+ fm_directory_view_get_background (FM_DIRECTORY_VIEW (data)));
+
+ nautilus_property_browser_show (TRUE);
+}
+
+static void
reset_background_callback (BonoboUIComponent *component, gpointer callback_data, const char *verb)
{
g_assert (FM_IS_DIRECTORY_VIEW (callback_data));
@@ -3856,9 +3872,6 @@
nautilus_bonobo_set_hidden (view->details->ui,
FM_DIRECTORY_VIEW_POPUP_PATH_SCRIPTS_SEPARATOR,
!any_scripts);
- nautilus_bonobo_set_hidden (view->details->ui,
- FM_DIRECTORY_VIEW_POPUP_PATH_BACKGROUND_SCRIPTS_SEPARATOR,
- !any_scripts);
}
static void
@@ -4147,6 +4160,7 @@
BONOBO_UI_VERB ("OtherViewer", other_viewer_callback),
BONOBO_UI_VERB ("Paste Files", paste_files_callback),
BONOBO_UI_VERB ("Remove Custom Icons", remove_custom_icons_callback),
+ BONOBO_UI_VERB ("Change Background", change_background_callback),
BONOBO_UI_VERB ("Reset Background", reset_background_callback),
BONOBO_UI_VERB ("Reset to Defaults", reset_to_defaults_callback),
BONOBO_UI_VERB ("Select All", bonobo_menu_select_all_callback),
Index: src/file-manager/nautilus-directory-view-ui.xml
===================================================================
RCS file: /cvs/gnome/nautilus/src/file-manager/nautilus-directory-view-ui.xml,v
retrieving revision 1.36
diff -u -r1.36 nautilus-directory-view-ui.xml
--- src/file-manager/nautilus-directory-view-ui.xml 21 Apr 2002 22:41:18 -0000 1.36
+++ src/file-manager/nautilus-directory-view-ui.xml 24 Apr 2002 22:36:47 -0000
@@ -39,6 +39,9 @@
<cmd name="Reset to Defaults"
_label="Reset View to Default"
_tip="Reset sorting order and zoom level to match preferences for this view"/>
+ <cmd name="Change Background"
+ _label="Change Background..."
+ _tip="Set the background of this location to a custom pattern or color"/>
<cmd name="Reset Background"
_label="Reset Background"
_tip="Remove any custom pattern or color from the background of this location"/>
@@ -177,7 +180,6 @@
_label="R_emove Custom Images"
verb="Remove Custom Icons"/>
</placeholder>
-
</submenu>
<submenu name="View">
@@ -186,6 +188,14 @@
_label="Reset View to Match _Preferences"
verb="Reset to Defaults"/>
</placeholder>
+ <placeholder name="Background Placeholder">
+ <menuitem name="Change Background"
+ _label="_Change Background..."
+ verb="Change Background"/>
+ <menuitem name="Reset Background"
+ _label="Reset _Background"
+ verb="Reset Background"/>
+ </placeholder>
</submenu>
</menu>
<popups>
@@ -211,6 +221,8 @@
</placeholder>
<placeholder name="After Zoom Items">
<placeholder name="Background Items" delimit="none">
+ <menuitem name="Change Background" verb="Change Background"/>
+
<menuitem name="Reset Background" verb="Reset Background"/>
</placeholder>
</placeholder>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]