[totem] main: Set button arrow icons according to locale's text direction



commit 804d8f77d54e5cfe171dd42486e143060bd8df3f
Author: Yosef Or Boczko <yoseforb gmail com>
Date:   Wed Jul 31 16:45:12 2013 +0300

    main: Set button arrow icons according to locale's text direction
    
    go-previous-symbolic in LTR,
    go-previous-rtl-symbolic in RTL.
    
    media-playback-start-symbolic in LTR,
    media-playback-start-rtl-symbolic in RTL.
    
    media-seek-forward-symbolic in LTR,
    media-seek-forward-rtl-symbolic in RTL.
    
    media-seek-backward-symbolic in LTR,
    media-seek-backward-rtl-symbolic in RTL.
    
    media-skip-forward-symbolic in LTR,
    media-skip-forward-rtl-symbolic in RTL.
    
    media-skip-backward-symbolic in LTR,
    media-skip-backward-rtl-symbolic in RTL.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=702631

 data/totem.ui        |    3 ---
 src/totem-object.c   |   33 +++++++++++++++++----------------
 src/totem-playlist.c |    3 ++-
 src/totem.c          |   11 +++++++++++
 4 files changed, 30 insertions(+), 20 deletions(-)
---
diff --git a/data/totem.ui b/data/totem.ui
index 689c8ca..294a37a 100644
--- a/data/totem.ui
+++ b/data/totem.ui
@@ -166,7 +166,6 @@
          <child>
             <object class="GtkAction" id="play">
                <property name="label" translatable="yes">Play / P_ause</property>
-               <property name="icon-name">media-playback-start-symbolic</property>
                <property name="tooltip" translatable="yes">Play or pause the movie</property>
                <signal name="activate" handler="play_action_callback"/>
             </object>
@@ -182,7 +181,6 @@
          <child>
             <object class="GtkAction" id="next-chapter">
                <property name="label" translatable="yes">_Next Chapter/Movie</property>
-               <property name="icon-name">media-skip-forward-symbolic</property>
                <property name="tooltip" translatable="yes">Next chapter or movie</property>
                <signal name="activate" handler="next_chapter_action_callback"/>
             </object>
@@ -191,7 +189,6 @@
          <child>
             <object class="GtkAction" id="previous-chapter">
                <property name="label" translatable="yes">_Previous Chapter/Movie</property>
-               <property name="icon-name">media-skip-backward-symbolic</property>
                <property name="tooltip" translatable="yes">Previous chapter or movie</property>
                <signal name="activate" handler="previous_chapter_action_callback"/>
             </object>
diff --git a/src/totem-object.c b/src/totem-object.c
index a490431..4f8ab31 100644
--- a/src/totem-object.c
+++ b/src/totem-object.c
@@ -64,6 +64,7 @@
 #include "totem-dnd-menu.h"
 #include "totem-preferences.h"
 #include "totem-session.h"
+#include "totem-rtl-helpers.h"
 
 #define WANT_MIME_TYPES 1
 #include "totem-mime-types.h"
@@ -1251,7 +1252,7 @@ play_pause_set_label (TotemObject *totem, TotemStates state)
                totem_playlist_set_playing (totem->playlist, TOTEM_PLAYLIST_STATUS_PLAYING);
                break;
        case STATE_PAUSED:
-               id = "media-playback-start-symbolic";
+               id = totem_get_rtl_icon_name ("media-playback-start");
                tip = N_("Play");
                totem_playlist_set_playing (totem->playlist, TOTEM_PLAYLIST_STATUS_PAUSED);
                break;
@@ -1260,7 +1261,7 @@ play_pause_set_label (TotemObject *totem, TotemStates state)
                                           0, 0);
                bacon_time_label_set_time (totem->time_rem_label,
                                           0, 0);
-               id = "media-playback-start-symbolic";
+               id = totem_get_rtl_icon_name ("media-playback-start");
                totem_playlist_set_playing (totem->playlist, TOTEM_PLAYLIST_STATUS_NONE);
                tip = N_("Play");
                break;
@@ -2743,11 +2744,11 @@ totem_object_action_remote (TotemObject *totem, TotemRemoteCommand cmd, const ch
        switch (cmd) {
        case TOTEM_REMOTE_COMMAND_PLAY:
                totem_object_action_play (totem);
-               icon_name = "media-playback-start-symbolic";
+               icon_name = totem_get_rtl_icon_name ("media-playback-start");
                break;
        case TOTEM_REMOTE_COMMAND_PLAYPAUSE:
                if (bacon_video_widget_is_playing (totem->bvw) == FALSE)
-                       icon_name = "media-playback-start-symbolic";
+                       icon_name = totem_get_rtl_icon_name ("media-playback-start");
                else
                        icon_name = "media-playback-pause-symbolic";
                totem_object_action_play_pause (totem);
@@ -2782,7 +2783,7 @@ totem_object_action_remote (TotemObject *totem, TotemRemoteCommand cmd, const ch
                } else {
                        totem_object_action_seek_relative (totem, offset * 1000, FALSE);
                }
-               icon_name = "media-seek-forward-symbolic";
+               icon_name = totem_get_rtl_icon_name ("media-seek-forward");
                break;
        }
        case TOTEM_REMOTE_COMMAND_SEEK_BACKWARD: {
@@ -2794,7 +2795,7 @@ totem_object_action_remote (TotemObject *totem, TotemRemoteCommand cmd, const ch
                        totem_object_action_seek_relative (totem, SEEK_BACKWARD_OFFSET * 1000, FALSE);
                else
                        totem_object_action_seek_relative (totem,  - (offset * 1000), FALSE);
-               icon_name = "media-seek-backward-symbolic";
+               icon_name = totem_get_rtl_icon_name ("media-seek-backward");
                break;
        }
        case TOTEM_REMOTE_COMMAND_VOLUME_UP:
@@ -2805,11 +2806,11 @@ totem_object_action_remote (TotemObject *totem, TotemRemoteCommand cmd, const ch
                break;
        case TOTEM_REMOTE_COMMAND_NEXT:
                totem_object_action_next (totem);
-               icon_name = "media-skip-forward-symbolic";
+               icon_name = totem_get_rtl_icon_name ("media-skip-forward");
                break;
        case TOTEM_REMOTE_COMMAND_PREVIOUS:
                totem_object_action_previous (totem);
-               icon_name = "media-skip-backward-symbolic";
+               icon_name = totem_get_rtl_icon_name ("media-skip-backward");
                break;
        case TOTEM_REMOTE_COMMAND_FULLSCREEN:
                totem_object_action_fullscreen_toggle (totem);
@@ -3145,7 +3146,7 @@ on_video_button_press_event (BaconVideoWidget *bvw, GdkEventButton *event,
        } else if (event->type == GDK_BUTTON_PRESS && event->button == 2) {
                const char *icon_name;
                if (bacon_video_widget_is_playing (totem->bvw) == FALSE)
-                       icon_name = "media-playback-start-symbolic";
+                       icon_name = totem_get_rtl_icon_name ("media-playback-start");
                else
                        icon_name = "media-playback-pause-symbolic";
                //totem_fullscreen_show_popups_or_osd (totem->fs, icon_name, FALSE);
@@ -3239,7 +3240,7 @@ totem_action_handle_key_press (TotemObject *totem, GdkEventKey *event)
        case GDK_KEY_B:
        case GDK_KEY_b:
                totem_object_action_previous (totem);
-               icon_name = "media-skip-backward-symbolic";
+               icon_name = totem_get_rtl_icon_name ("media-skip-backward");
                break;
        case GDK_KEY_C:
        case GDK_KEY_c:
@@ -3266,7 +3267,7 @@ totem_action_handle_key_press (TotemObject *totem, GdkEventKey *event)
        case GDK_KEY_n:
        case GDK_KEY_End:
                totem_object_action_next (totem);
-               icon_name = "media-skip-forward-symbolic";
+               icon_name = totem_get_rtl_icon_name ("media-skip-forward");
                break;
        case GDK_KEY_OpenURL:
                totem_action_fullscreen (totem, FALSE);
@@ -3285,7 +3286,7 @@ totem_action_handle_key_press (TotemObject *totem, GdkEventKey *event)
                        totem_action_show_properties (totem);
                } else {
                        if (bacon_video_widget_is_playing (totem->bvw) == FALSE)
-                               icon_name = "media-playback-start-symbolic";
+                               icon_name = totem_get_rtl_icon_name ("media-playback-start");
                        else
                                icon_name = "media-playback-pause-symbolic";
                        totem_object_action_play_pause (totem);
@@ -3342,7 +3343,7 @@ totem_action_handle_key_press (TotemObject *totem, GdkEventKey *event)
                            focus == GTK_WIDGET (totem->bvw) || focus == totem->seek) {
                                if (event->keyval == GDK_KEY_space) {
                                        if (bacon_video_widget_is_playing (totem->bvw) == FALSE)
-                                               icon_name = "media-playback-start-symbolic";
+                                               icon_name = totem_get_rtl_icon_name ("media-playback-start");
                                        else
                                                icon_name = "media-playback-pause-symbolic";
                                        totem_object_action_play_pause (totem);
@@ -3362,7 +3363,7 @@ totem_action_handle_key_press (TotemObject *totem, GdkEventKey *event)
                        /* Switch direction in RTL environment */
                        if (gtk_widget_get_direction (totem->win) == GTK_TEXT_DIR_RTL)
                                is_forward = !is_forward;
-                       icon_name = is_forward ? "media-seek-forward-symbolic" : 
"media-seek-backward-symbolic";
+                       icon_name = totem_get_rtl_icon_name (is_forward ? "media-seek-forward" : 
"media-seek-backward");
 
                        totem_action_handle_seek (totem, event, is_forward);
                } else {
@@ -3374,7 +3375,7 @@ totem_action_handle_key_press (TotemObject *totem, GdkEventKey *event)
                break;
        case GDK_KEY_Home:
                totem_action_seek (totem, 0);
-               icon_name = "media-seek-backward-symbolic";
+               icon_name = totem_get_rtl_icon_name ("media-seek-backward");
                break;
        case GDK_KEY_Up:
                if (bacon_video_widget_has_menus (totem->bvw) != FALSE)
@@ -3849,7 +3850,7 @@ totem_callback_connect (TotemObject *totem)
        /* Add a back button */
        item = gd_header_simple_button_new ();
        gd_header_button_set_symbolic_icon_name (GD_HEADER_BUTTON (item),
-                                                "go-previous-symbolic");
+                                                totem_get_rtl_icon_name ("go-previous"));
        accessible = gtk_widget_get_accessible (item);
        atk_object_set_name (accessible, _("Back"));
        gtk_header_bar_pack_start (GTK_HEADER_BAR (totem->header), item);
diff --git a/src/totem-playlist.c b/src/totem-playlist.c
index 0d843e3..6d65537 100644
--- a/src/totem-playlist.c
+++ b/src/totem-playlist.c
@@ -36,6 +36,7 @@
 #include "totem-uri.h"
 #include "totem-interface.h"
 #include "video-utils.h"
+#include "totem-rtl-helpers.h"
 
 #define PL_LEN (gtk_tree_model_iter_n_children (playlist->priv->model, NULL))
 
@@ -1274,7 +1275,7 @@ set_playing_icon (GtkTreeViewColumn *column, GtkCellRenderer *renderer,
 
        switch (playing) {
                case TOTEM_PLAYLIST_STATUS_PLAYING:
-                       icon_name = "media-playback-start-symbolic";
+                       icon_name = totem_get_rtl_icon_name ("media-playback-start");
                        break;
                case TOTEM_PLAYLIST_STATUS_PAUSED:
                        icon_name = "media-playback-pause-symbolic";
diff --git a/src/totem.c b/src/totem.c
index ebfa473..1affa64 100644
--- a/src/totem.c
+++ b/src/totem.c
@@ -50,6 +50,7 @@
 #include "totem-sidebar.h"
 #include "totem-session.h"
 #include "video-utils.h"
+#include "totem-rtl-helpers.h"
 
 static gboolean startup_called = FALSE;
 
@@ -75,6 +76,7 @@ app_init (Totem *totem, char **argv)
 {
        GtkSettings *gtk_settings;
        char *sidebar_pageid;
+       GtkAction *action;
 
        if (gtk_clutter_init (NULL, NULL) != CLUTTER_INIT_SUCCESS)
                g_warning ("gtk-clutter failed to initialise, expect problems from here on.");
@@ -90,6 +92,15 @@ app_init (Totem *totem, char **argv)
        if (totem->xml == NULL)
                totem_object_action_exit (NULL);
 
+       action = GTK_ACTION (gtk_builder_get_object (totem->xml, "play"));
+       gtk_action_set_icon_name (action, totem_get_rtl_icon_name ("media-playback-start"));
+
+       action = GTK_ACTION (gtk_builder_get_object (totem->xml, "next-chapter"));
+       gtk_action_set_icon_name (action, totem_get_rtl_icon_name ("media-skip-forward"));
+
+       action = GTK_ACTION (gtk_builder_get_object (totem->xml, "previous-chapter"));
+       gtk_action_set_icon_name (action, totem_get_rtl_icon_name ("media-skip-backward"));
+
        totem->win = GTK_WIDGET (gtk_builder_get_object (totem->xml, "totem_main_window"));
        gtk_window_set_hide_titlebar_when_maximized (GTK_WINDOW (totem->win), TRUE);
        g_object_bind_property (G_OBJECT (totem), "fullscreen",


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]