From 2aafa6a197e68f0185885f72c95807f950c81765 Mon Sep 17 00:00:00 2001 From: Colomban Wendling Date: Tue, 11 Oct 2011 23:58:38 +0200 Subject: [PATCH 01/70] Improve the part about committing in HACKING --- HACKING | 42 ++++++++++++++++++++++++++++-------------- 1 file changed, 28 insertions(+), 14 deletions(-) diff --git a/HACKING b/HACKING index c6916dae..0967b8ab 100644 --- a/HACKING +++ b/HACKING @@ -262,26 +262,40 @@ Example:: Committing ---------- -Commit one thing at a time, do small commits. Commits should be -meaningful and not too big when possible; multiple small commits are -good if there is no good reason to group them. - -When working on a new feature, create a new branch for it. When merging -it, use the --no-ff option to make sure a merge commit will be created -to better track what happened. However, if the feature only took one -commit you might merge it fast-forward since there is not history to -keep together. +* Commit one thing at a time, do small commits. Commits should be + meaningful and not too big when possible; multiple small commits are + good if there is no good reason to group them. +* Use meaningful name and email in the Author and Committer fields. + This helps knowing who did what and allows to contact the author if + there is a good reason to do so (unlikely, but can happen). +* When working on a new feature, create a new branch for it. When + merging it, use the --no-ff option to make sure a merge commit will + be created to better track what happened. However, if the feature + only took one commit you might merge it fast-forward since there is + not history to keep together. Commit messages ^^^^^^^^^^^^^^^ Follow the standard Git formatting: -* First line is the commit's summary and should use less than about 80 - characters, and is followed by an empty line. See it like the subject - of an email: keep it concise and as precise as you can, but not tool - long. +* No line should use more than about 80 characters (around 72 is best). +* The first line is the commit's summary and is followed by an empty + line. This summary should be one line and one line only, thus less + than 80 characters. This summary should not include any punctuation + unless really needed. See it as the subject of an email: keep it + concise and as precise as you can, but not tool long. * Following lines are optional detailed commit information, with - paragraphs separated by blank lines. + paragraphs separated by blank lines. This part should be as long as + needed to describe the commit in depth, should use proper + punctuation and should include any useful information, like the + motivation for the patch and/or any valuable details the diff itself + don't provide or don't make clear. Make it as complete as you think + it makes sense, but don't include an information that is better + explained by the commit's diff. + + It is OK to use ASCII formatting like bullet list using "*" or "-", + etc. if useful, but emphasis (bold, italic, underline) should be + avoided. Example:: From 182bdc3b1784287725026c6423f9a1ca5471af39 Mon Sep 17 00:00:00 2001 From: Matthew Brush Date: Tue, 11 Oct 2011 21:30:28 -0700 Subject: [PATCH 02/70] Replace GTK_BIN(...)->child with gtk_bin_get_child(...) --- plugins/filebrowser.c | 6 +++--- src/dialogs.c | 2 +- src/search.c | 10 +++++----- src/ui_utils.c | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/plugins/filebrowser.c b/plugins/filebrowser.c index b7654f81..c18c07ca 100644 --- a/plugins/filebrowser.c +++ b/plugins/filebrowser.c @@ -791,7 +791,7 @@ static void ui_combo_box_changed(GtkComboBox *combo, gpointer user_data) { /* we get this callback on typing as well as choosing an item */ if (gtk_combo_box_get_active(combo) >= 0) - gtk_widget_activate(GTK_BIN(combo)->child); + gtk_widget_activate(gtk_bin_get_child(GTK_BIN(combo))); } @@ -909,7 +909,7 @@ static GtkWidget *make_filterbar(void) label = gtk_label_new(_("Filter:")); filter_combo = gtk_combo_box_entry_new_text(); - filter_entry = GTK_BIN(filter_combo)->child; + filter_entry = gtk_bin_get_child(GTK_BIN(filter_combo)); if (gtk_check_version(2, 15, 2) == NULL) { @@ -1107,7 +1107,7 @@ void plugin_init(GeanyData *data) path_combo = gtk_combo_box_entry_new_text(); gtk_box_pack_start(GTK_BOX(file_view_vbox), path_combo, FALSE, FALSE, 2); g_signal_connect(path_combo, "changed", G_CALLBACK(ui_combo_box_changed), NULL); - path_entry = GTK_BIN(path_combo)->child; + path_entry = gtk_bin_get_child(GTK_BIN(path_combo)); g_signal_connect(path_entry, "activate", G_CALLBACK(on_path_entry_activate), NULL); file_view = gtk_tree_view_new(); diff --git a/src/dialogs.c b/src/dialogs.c index 9d013980..7e84a8f6 100644 --- a/src/dialogs.c +++ b/src/dialogs.c @@ -1000,7 +1000,7 @@ static void add_input_widgets(GtkWidget *dialog, GtkWidget *vbox, { GtkWidget *combo = gtk_combo_box_entry_new_text(); - entry = GTK_BIN(combo)->child; + entry = gtk_bin_get_child(GTK_BIN(combo)); ui_entry_add_clear_icon(GTK_ENTRY(entry)); g_object_set_data(G_OBJECT(dialog), "combo", combo); gtk_container_add(GTK_CONTAINER(vbox), combo); diff --git a/src/search.c b/src/search.c index 4ee8a9b8..1627835a 100644 --- a/src/search.c +++ b/src/search.c @@ -484,7 +484,7 @@ static void create_find_dialog(void) gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry); gtk_entry_set_max_length(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(entry))), 248); gtk_entry_set_width_chars(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(entry))), 50); - find_dlg.entry = GTK_BIN(entry)->child; + find_dlg.entry = gtk_bin_get_child(GTK_BIN(entry)); ui_hookup_widget(find_dlg.dialog, entry, "entry"); g_signal_connect(gtk_bin_get_child(GTK_BIN(entry)), "activate", @@ -650,7 +650,7 @@ static void create_replace_dialog(void) gtk_entry_set_max_length(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(entry_find))), 248); gtk_entry_set_width_chars(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(entry_find))), 50); ui_hookup_widget(replace_dlg.dialog, entry_find, "entry_find"); - replace_dlg.find_entry = GTK_BIN(entry_find)->child; + replace_dlg.find_entry = gtk_bin_get_child(GTK_BIN(entry_find)); entry_replace = gtk_combo_box_entry_new_text(); ui_entry_add_clear_icon(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(entry_replace)))); @@ -658,7 +658,7 @@ static void create_replace_dialog(void) gtk_entry_set_max_length(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(entry_replace))), 248); gtk_entry_set_width_chars(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(entry_replace))), 50); ui_hookup_widget(replace_dlg.dialog, entry_replace, "entry_replace"); - replace_dlg.replace_entry = GTK_BIN(entry_replace)->child; + replace_dlg.replace_entry = gtk_bin_get_child(GTK_BIN(entry_replace)); /* tab from find to the replace entry */ g_signal_connect(gtk_bin_get_child(GTK_BIN(entry_find)), @@ -1060,7 +1060,7 @@ void search_show_find_in_files_dialog(const gchar *dir) if (doc && ! sel && ! GTK_WIDGET_VISIBLE(fif_dlg.dialog)) sel = editor_get_default_selection(doc->editor, search_prefs.use_current_word, NULL); - entry = GTK_BIN(fif_dlg.search_combo)->child; + entry = gtk_bin_get_child(GTK_BIN(fif_dlg.search_combo)); if (sel) gtk_entry_set_text(GTK_ENTRY(entry), sel); g_free(sel); @@ -1073,7 +1073,7 @@ void search_show_find_in_files_dialog(const gchar *dir) app->project->base_path); } - entry = GTK_BIN(fif_dlg.dir_combo)->child; + entry = gtk_bin_get_child(GTK_BIN(fif_dlg.dir_combo)); if (NZV(dir)) cur_dir = g_strdup(dir); /* custom directory argument passed */ else diff --git a/src/ui_utils.c b/src/ui_utils.c index 1930457d..0c7248ec 100644 --- a/src/ui_utils.c +++ b/src/ui_utils.c @@ -1159,9 +1159,9 @@ gchar *ui_menu_item_get_text(GtkMenuItem *menu_item) { const gchar *text = NULL; - if (GTK_BIN(menu_item)->child) + if (gtk_bin_get_child(GTK_BIN(menu_item))) { - GtkWidget *child = GTK_BIN(menu_item)->child; + GtkWidget *child = gtk_bin_get_child(GTK_BIN(menu_item)); if (GTK_IS_LABEL(child)) text = gtk_label_get_text(GTK_LABEL(child)); @@ -1534,7 +1534,7 @@ void ui_combo_box_add_to_history(GtkComboBoxEntry *combo_entry, if (history_len <= 0) history_len = 10; if (!text) - text = gtk_entry_get_text(GTK_ENTRY(GTK_BIN(combo)->child)); + text = gtk_entry_get_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(combo)))); model = gtk_combo_box_get_model(combo); From bd5fba7eb57063c5f7d387d7cd36b21c6d3591bf Mon Sep 17 00:00:00 2001 From: Matthew Brush Date: Tue, 11 Oct 2011 21:52:58 -0700 Subject: [PATCH 03/70] Remove extra whitespace at end of lines in all source files. * Processed with rstrip-whitespace.py script added to scripts/ directory. * Script run on all .c and .h files in src/ and plugins/ directories. * Also remove more than one newline at the end of files. --- plugins/htmlchars.c | 2 -- scripts/rstrip-whitespace.py | 23 +++++++++++++++++++++++ src/build.c | 4 +--- src/dialogs.c | 4 +--- src/editor.c | 4 ++-- src/filetypes.c | 1 - src/gb.c | 2 -- src/geanyentryaction.c | 1 - src/geanyobject.c | 1 - src/highlighting.c | 1 - src/images.c | 1 - src/interface.c | 1 - src/keyfile.c | 2 +- src/msgwindow.c | 2 -- src/notebook.c | 2 -- src/printing.c | 1 - src/socket.c | 2 -- src/symbols.c | 2 -- src/toolbar.c | 2 -- src/tools.c | 2 -- src/utils.c | 4 ++-- src/win32.c | 2 +- 22 files changed, 31 insertions(+), 35 deletions(-) create mode 100755 scripts/rstrip-whitespace.py diff --git a/plugins/htmlchars.c b/plugins/htmlchars.c index 4010733e..e0ad4bac 100644 --- a/plugins/htmlchars.c +++ b/plugins/htmlchars.c @@ -805,5 +805,3 @@ void plugin_cleanup(void) if (config_file != NULL) g_free(config_file); } - - diff --git a/scripts/rstrip-whitespace.py b/scripts/rstrip-whitespace.py new file mode 100755 index 00000000..523d9509 --- /dev/null +++ b/scripts/rstrip-whitespace.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python + +import sys + +filenames = sys.argv[1:] + +def backup_file (fn): + open ("%s~" % fn, "w").write (open (fn, "r").read ()) + +for fn in filenames: + #backup_file (fn) + contents = open (fn, "r").read () + lines = contents.split ('\n') + with open (fn, "w") as fobj: + for line in lines: + line = line.rstrip () + fobj.write ("%s\n" % line) + contents = open (fn, "r").read () + contents.rstrip () + while contents[-1] in " \t\r\n": + contents = contents[:-1] + open (fn, "w").write ("%s\n" % contents) + diff --git a/src/build.c b/src/build.c index ef8c83ad..e9bed765 100644 --- a/src/build.c +++ b/src/build.c @@ -1272,7 +1272,7 @@ static void on_build_menu_item(GtkWidget *w, gpointer user_data) { if (document_need_save_as(doc) && !dialogs_show_save_as()) return; - + if (!document_save_file(doc, FALSE)) return; } @@ -2767,5 +2767,3 @@ void build_init(void) /* set the submenu to the toolbar item */ geany_menu_button_action_set_menu(GEANY_MENU_BUTTON_ACTION(widgets.build_action), toolmenu); } - - diff --git a/src/dialogs.c b/src/dialogs.c index 7e84a8f6..7b394113 100644 --- a/src/dialogs.c +++ b/src/dialogs.c @@ -863,7 +863,7 @@ gboolean dialogs_show_unsaved_file(GeanyDocument *doc) } case GTK_RESPONSE_NO: return TRUE; - + case GTK_RESPONSE_CANCEL: /* fall through to default and leave the function */ default: return FALSE; @@ -1703,5 +1703,3 @@ gint dialogs_show_prompt(GtkWidget *parent, g_free(string); return result; } - - diff --git a/src/editor.c b/src/editor.c index d396ed30..c14015fe 100644 --- a/src/editor.c +++ b/src/editor.c @@ -2358,7 +2358,7 @@ void editor_insert_text_block(GeanyEditor *editor, const gchar *text, gint inser { const gchar *nl = replace_newlines ? "\n" : eol; gchar *whitespace; - + whitespace = g_strnfill(newline_indent_size, ' '); setptr(whitespace, g_strconcat(nl, whitespace, NULL)); utils_string_replace_all(buf, nl, whitespace); @@ -3911,7 +3911,7 @@ void editor_finalize() /* wordchars: NULL or a string containing characters to match a word. * Returns: the current selection or the current word. - * + * * Passing NULL as wordchars is NOT the same as passing GEANY_WORDCHARS: NULL means * using Scintillas's word boundaries. */ gchar *editor_get_default_selection(GeanyEditor *editor, gboolean use_current_word, diff --git a/src/filetypes.c b/src/filetypes.c index 70dbf254..1d044f77 100644 --- a/src/filetypes.c +++ b/src/filetypes.c @@ -1736,4 +1736,3 @@ const gchar *filetypes_get_display_name(GeanyFiletype *ft) { return ft->id == GEANY_FILETYPES_NONE ? _("None") : ft->name; } - diff --git a/src/gb.c b/src/gb.c index 4c4ed752..08c41254 100644 --- a/src/gb.c +++ b/src/gb.c @@ -1811,5 +1811,3 @@ static gboolean gb_on_key_pressed(GtkWidget *widget, GdkEventKey *event, gpointe } } } - - diff --git a/src/geanyentryaction.c b/src/geanyentryaction.c index 476024a6..9d0573d6 100644 --- a/src/geanyentryaction.c +++ b/src/geanyentryaction.c @@ -184,4 +184,3 @@ GtkAction *geany_entry_action_new(const gchar *name, const gchar *label, return action; } - diff --git a/src/geanyobject.c b/src/geanyobject.c index f6765662..23e8af04 100644 --- a/src/geanyobject.c +++ b/src/geanyobject.c @@ -369,4 +369,3 @@ GObject *geany_object_new(void) { return g_object_new(GEANY_OBJECT_TYPE, NULL); } - diff --git a/src/highlighting.c b/src/highlighting.c index 74074765..c7d8238b 100644 --- a/src/highlighting.c +++ b/src/highlighting.c @@ -3978,4 +3978,3 @@ gboolean highlighting_is_code_style(gint lexer, gint style) return !(highlighting_is_comment_style(lexer, style) || highlighting_is_string_style(lexer, style)); } - diff --git a/src/images.c b/src/images.c index be31c88c..14f07a7e 100644 --- a/src/images.c +++ b/src/images.c @@ -1689,4 +1689,3 @@ static const guint8 save_all_tango_inline[] = "\0\0\0\12\0\0\0\12\0\0\0\12\0\0\0\12\0\0\0\12\0\0\0\12\0\0\0\12\0\0\0" "\7\0\0\0\4\0\0\0\2\377\377\377\0\377\377\377\0\377\377\377\0\377\377" "\377\0"}; - diff --git a/src/interface.c b/src/interface.c index d742e03a..ce9fbff7 100644 --- a/src/interface.c +++ b/src/interface.c @@ -5816,4 +5816,3 @@ create_project_dialog (void) return project_dialog; } - diff --git a/src/keyfile.c b/src/keyfile.c index 2982af07..14dee75b 100644 --- a/src/keyfile.c +++ b/src/keyfile.c @@ -690,7 +690,7 @@ static void load_dialog_prefs(GKeyFile *config) g_key_file_set_boolean(config, PACKAGE, atomic_file_saving_key, utils_get_setting_boolean(config, PACKAGE, "use_safe_file_saving", FALSE)); } - + /* read stash prefs */ settings_action(config, SETTING_READ); diff --git a/src/msgwindow.c b/src/msgwindow.c index 02616baf..0b7ab395 100644 --- a/src/msgwindow.c +++ b/src/msgwindow.c @@ -1209,5 +1209,3 @@ void msgwin_clear_tab(gint tabnum) return; gtk_list_store_clear(store); } - - diff --git a/src/notebook.c b/src/notebook.c index 92c7df99..24bbeba5 100644 --- a/src/notebook.c +++ b/src/notebook.c @@ -505,5 +505,3 @@ on_window_drag_data_received(GtkWidget *widget, GdkDragContext *drag_context, } gtk_drag_finish(drag_context, success, FALSE, event_time); } - - diff --git a/src/printing.c b/src/printing.c index ff6fa995..d12d4792 100644 --- a/src/printing.c +++ b/src/printing.c @@ -917,4 +917,3 @@ void printing_print_doc(GeanyDocument *doc) else print_external(doc); } - diff --git a/src/socket.c b/src/socket.c index 34a5927d..bf0dea16 100644 --- a/src/socket.c +++ b/src/socket.c @@ -788,5 +788,3 @@ gint socket_fd_write(gint fd, const gchar *buf, gint len) #endif - - diff --git a/src/symbols.c b/src/symbols.c index 0ca18396..4048fc3c 100644 --- a/src/symbols.c +++ b/src/symbols.c @@ -2202,5 +2202,3 @@ void symbols_finalize(void) g_strfreev(html_entities); g_strfreev(c_tags_ignore); } - - diff --git a/src/toolbar.c b/src/toolbar.c index f6562179..4eb38369 100644 --- a/src/toolbar.c +++ b/src/toolbar.c @@ -1114,5 +1114,3 @@ void toolbar_configure(GtkWindow *parent) tb_editor_free_path(tbw); g_free(tbw); } - - diff --git a/src/tools.c b/src/tools.c index f349b3bf..4e8fe191 100644 --- a/src/tools.c +++ b/src/tools.c @@ -960,5 +960,3 @@ void tools_color_chooser(const gchar *color) gtk_window_present(GTK_WINDOW(ui_widgets.open_colorsel)); #endif } - - diff --git a/src/utils.c b/src/utils.c index cd066412..eaf14754 100644 --- a/src/utils.c +++ b/src/utils.c @@ -1621,12 +1621,12 @@ guint utils_string_regex_replace_all(GString *haystack, GRegex *regex, while (g_regex_match_full(regex, haystack->str, -1, start, 0, &minfo, NULL)) { gint end, len; - + g_match_info_fetch_pos(minfo, match_num, &start, &end); len = end - start; utils_string_replace(haystack, start, len, replace); ret++; - + /* skip past whole match */ g_match_info_fetch_pos(minfo, 0, NULL, &end); start = end - len + strlen(replace); diff --git a/src/win32.c b/src/win32.c index 18667d78..db0821f3 100644 --- a/src/win32.c +++ b/src/win32.c @@ -533,7 +533,7 @@ void win32_show_font_dialog(void) memset(&lf, 0, sizeof lf); /* TODO: init lf members */ - + memset(&cf, 0, sizeof cf); cf.lStructSize = sizeof cf; cf.hwndOwner = GDK_WINDOW_HWND(main_widgets.window->window); From cc045b6736a4475d0123542a43306340a2f28ac4 Mon Sep 17 00:00:00 2001 From: Lex Trotman Date: Wed, 12 Oct 2011 17:40:36 +1100 Subject: [PATCH 04/70] Document building plugins for hacked Geany --- HACKING | 49 +++++++++++++++++++++++++++++++++++-------------- 1 file changed, 35 insertions(+), 14 deletions(-) diff --git a/HACKING b/HACKING index 0967b8ab..eee9bcd0 100644 --- a/HACKING +++ b/HACKING @@ -144,18 +144,18 @@ And then simply apply it like so:: GTK versions & API documentation -------------------------------- -Geany requires GTK >= 2.12 and GLib >= 2.16. API symbols from newer -GTK/GLib versions should be avoided or made optional to keep the source +Geany requires GTK >= 2.12 and GLib >= 2.16. API symbols from newer +GTK/GLib versions should be avoided or made optional to keep the source code building on older systems. -The official GTK 2.12 API documentation may not be available online -anymore, so we put it on http://www.geany.org/manual/gtk/. There -is also a tarball with all available files for download and use with +The official GTK 2.12 API documentation may not be available online +anymore, so we put it on http://www.geany.org/manual/gtk/. There +is also a tarball with all available files for download and use with devhelp. -Using the 2.12 API documentation of the GTK libs (including GLib, GDK -and Pango) has the advantages that you don't get confused by any -newer API additions and you don't have to take care about whether +Using the 2.12 API documentation of the GTK libs (including GLib, GDK +and Pango) has the advantages that you don't get confused by any +newer API additions and you don't have to take care about whether you can use them or not. Coding @@ -467,13 +467,13 @@ http://sf.net/projects/ctags - see the tracker. (You can also try the Anjuta project's tagmanager codebase.) .. note:: - From Geany 1.22 GLib's GRegex engine is used instead of POSIX - regex, unlike CTags. It should be close enough to POSIX to work + From Geany 1.22 GLib's GRegex engine is used instead of POSIX + regex, unlike CTags. It should be close enough to POSIX to work OK. - We no longer support regex parsers with the "b" regex flag - option set and Geany will print debug warnings if it's used. - CTags supports it but doesn't currently (2011) include any - parsers that use it. It should be easy to convert to extended + We no longer support regex parsers with the "b" regex flag + option set and Geany will print debug warnings if it's used. + CTags supports it but doesn't currently (2011) include any + parsers that use it. It should be easy to convert to extended regex syntax anyway. Method @@ -552,3 +552,24 @@ Example:: ** INFO: Unloaded: ./plugins/.libs/demoplugin.so (gdb) c Continuing. + +Building Plugins +^^^^^^^^^^^^^^^^ + +The geany-plugins autotools script automatically detects the +installed system Geany and builds the plugins against that. + +To use plugins with a development version of Geany built with +a different prefix, the plugins will need to be compiled against +that version if the ABI has changed. + +To do this you need to specify both --prefix and --with-geany-libdir +to the plugin configure. Normally the plugin prefix is the +same as the Geany prefix to keep plugins with the version of Geany +that they are compiled against, and with-geany-libdir is the Geany +prefix/lib. + +Whilst it is possible for the plugin prefix to be different to +the prefix of the libdir (which is why there are two settings), +it is probably better to keep the version of Geany and its plugins +together. From f9265535a36860e20f1dfc1aa80c01ad64ac6949 Mon Sep 17 00:00:00 2001 From: Lex Trotman Date: Wed, 12 Oct 2011 17:45:24 +1100 Subject: [PATCH 05/70] Mention trailing whitespace in style --- HACKING | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/HACKING b/HACKING index eee9bcd0..a647d9f8 100644 --- a/HACKING +++ b/HACKING @@ -196,6 +196,9 @@ Style * We use a tab width of 4 and indent completely with tabs not spaces. Note the documentation files use (4) spaces instead, so you may want to use the 'Detect from file' indent pref. +* Do not add whitespace at the end of lines, this adds to commit noise. + When editing with Geany set preference files->Strip trailing spaces + and tabs. * Use the multiline comment ``/* */`` to comment small blocks of code, functions descriptions or longer explanations of code, etc. C++ single line comments will cause portability issues. The more comments are in @@ -221,6 +224,8 @@ Style A few of the above can be done with the Git ``scripts/fix-alignment.pl``, but it is quite dumb and it's much better to write it correctly in the first place. + ``scripts/rstrip-whitespace.py`` just removes trailing whitespace. + .. below tabs should be used, but spaces are required for reST. From cbadf177f4ec4b85f76962dc73fd421481f072af Mon Sep 17 00:00:00 2001 From: Joshua Hoff Date: Tue, 11 Oct 2011 20:42:09 -0500 Subject: [PATCH 06/70] simplify "append toolbar to menu" packing code --- src/toolbar.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/toolbar.c b/src/toolbar.c index 4eb38369..05dd8d1e 100644 --- a/src/toolbar.c +++ b/src/toolbar.c @@ -480,8 +480,7 @@ void toolbar_update_ui(void) /* we need to adjust the packing flags for the menubar to expand it if it is alone in the * hbox and not expand it if the toolbar is appended */ gtk_box_set_child_packing(GTK_BOX(hbox_menubar), menubar, - ! (toolbar_prefs.visible && toolbar_prefs.append_to_menu), - ! (toolbar_prefs.visible && toolbar_prefs.append_to_menu), 0, GTK_PACK_START); + ! (toolbar_prefs.visible && toolbar_prefs.append_to_menu), TRUE, 0, GTK_PACK_START); } From ea9c37abca135710c6f9dd5cc57c2e1bdb21afea Mon Sep 17 00:00:00 2001 From: Nick Treleaven Date: Wed, 12 Oct 2011 17:42:57 +0100 Subject: [PATCH 07/70] Ignore generated files from makefile.win32 --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index e7c3fd62..467b7569 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,8 @@ *.lo *.so *.dll +*.exe +deps.mak .deps/ .libs/ Makefile @@ -35,11 +37,13 @@ Makefile.in /geany.gladep.bak /geany.pc /geany.spec +/geany_private.res /global.tags.old /install-sh /intltool /intltool-* /libtool +/localwin32.mk /.lock-wscript /ltmain.sh /m4/ From 4fb9629f5bdc62b6348ca18ec4e0b3b0f46d7626 Mon Sep 17 00:00:00 2001 From: Matthew Brush Date: Wed, 12 Oct 2011 22:42:41 -0700 Subject: [PATCH 08/70] Detect HTML embedded filetypes from the current line When using the commenting features (ex. toggle line commentation), detect the the type of comments for the filetype of the line with the caret rather than using the filetype of the current document. Filetype is determined by the Scintilla state/style at the beginning of the line where the caret is. This does not fix the existing bug where using the commenting features on lines with things like `