Root/stardict/patches/060-fix-scroll-make-screen-black.patch

1fix scrolled the result text make the screen black
2
3From: Xiangfu Liu <xiangfu@sharism.cc>
4
5Signed-off-by: Xiangfu Liu <xiangfu@sharism.cc>
6---
7
8 src/pangoview.cpp | 16 ++++++++--------
9 src/stardict.cpp | 9 +++++++--
10 2 files changed, 15 insertions(+), 10 deletions(-)
11
12
13diff --git a/src/pangoview.cpp b/src/pangoview.cpp
14index e400ac3..b386b6e 100644
15--- a/src/pangoview.cpp
16+++ b/src/pangoview.cpp
17@@ -164,7 +164,7 @@ TextPangoWidget::TextPangoWidget()
18     textview_ = GTK_TEXT_VIEW(gtk_text_view_new());
19     gtk_widget_show(GTK_WIDGET(textview_));
20     gtk_text_view_set_editable(textview_, FALSE);
21- gtk_text_view_set_cursor_visible(textview_, FALSE);
22+ gtk_text_view_set_cursor_visible(textview_, TRUE);
23     gtk_text_view_set_wrap_mode(textview_, GTK_WRAP_WORD_CHAR);
24     gtk_text_view_set_left_margin(textview_, 5);
25     gtk_text_view_set_right_margin(textview_, 5);
26@@ -178,16 +178,14 @@ TextPangoWidget::TextPangoWidget()
27                        &iter_, 0);
28     scroll_win_ = GTK_SCROLLED_WINDOW(gtk_scrolled_window_new(NULL, NULL));
29     gtk_widget_show(GTK_WIDGET(scroll_win_));
30-
31-
32- gtk_scrolled_window_set_policy(scroll_win_,
33+ gtk_container_add(GTK_CONTAINER(scroll_win_), GTK_WIDGET(textview_));
34+ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scroll_win_),
35                        //altought textview's set_wrap_mode will cause
36                        //this can be GTK_POLICY_NEVER,but...
37                        //there are widgets that may make this broken.
38- GTK_POLICY_AUTOMATIC,
39- GTK_POLICY_AUTOMATIC);
40- gtk_container_add(GTK_CONTAINER(scroll_win_), GTK_WIDGET(textview_));
41- gtk_scrolled_window_set_shadow_type(scroll_win_, GTK_SHADOW_IN);
42+ GTK_POLICY_NEVER,
43+ GTK_POLICY_AUTOMATIC);
44+ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scroll_win_), GTK_SHADOW_IN);
45 }
46 
47 void LabelPangoWidget::modify_bg(GtkStateType state, const GdkColor *color)
48@@ -233,6 +231,7 @@ void TextPangoWidget::do_set_text(const char *text)
49     tb_links_.clear();
50 
51     gtk_text_buffer_set_text(buffer, text, -1);
52+ gtk_text_view_place_cursor_onscreen (textview_);
53 }
54 
55 void LabelPangoWidget::do_set_text(const char *text)
56@@ -296,6 +295,7 @@ void TextPangoWidget::do_append_pango_text(const char *str)
57 
58     gtk_text_buffer_insert_markup(gtk_text_view_get_buffer(textview_),
59                   &iter_, str);
60+ gtk_text_view_place_cursor_onscreen (textview_);
61 }
62 
63 void TextPangoWidget::do_set_pango_text(const char *str)
64diff --git a/src/stardict.cpp b/src/stardict.cpp
65index 07cb57a..b4ade70 100644
66--- a/src/stardict.cpp
67+++ b/src/stardict.cpp
68@@ -489,11 +489,10 @@ gboolean AppCore::vKeyPressReleaseCallback(GtkWidget * window, GdkEventKey *even
69         if (event->type==GDK_KEY_PRESS)
70             oAppCore->Quit();
71     }
72+#ifndef CONFIG_NANONOTE
73     else if ((event->keyval==GDK_x || event->keyval==GDK_X) && only_mod1_pressed) {
74         if (event->type==GDK_KEY_PRESS) {
75-#ifndef CONFIG_NANONOTE
76             oAppCore->oDockLet->minimize_to_tray();
77-#endif
78         }
79     }
80     else if ((event->keyval==GDK_z || event->keyval==GDK_Z) && only_mod1_pressed) {
81@@ -510,6 +509,7 @@ gboolean AppCore::vKeyPressReleaseCallback(GtkWidget * window, GdkEventKey *even
82         if (event->type==GDK_KEY_PRESS)
83             show_help(NULL);
84     }
85+#endif
86     else if ((event->keyval==GDK_f || event->keyval==GDK_F) && only_ctrl_pressed) {
87         if (event->type==GDK_KEY_PRESS)
88             oAppCore->oMidWin.oToolWin.do_search();
89@@ -623,6 +623,11 @@ gboolean AppCore::vKeyPressReleaseCallback(GtkWidget * window, GdkEventKey *even
90                 }
91             }
92             break;
93+ case GDK_Return:
94+ gtk_widget_hide(oAppCore->oMidWin.oIndexWin.notebook);
95+ gtk_widget_show(oAppCore->oMidWin.vbox1);
96+ return_val=true;
97+ break;
98         default:
99             return_val=false;
100             break;
101

Archive Download this file



interactive