2009-05-02  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/printing.c:
   Ignore the invert syntax highlighting colours setting when printing
   to not print characters on a dark background (closes #2785244).
 * New release: Geany 0.17 "Wessex".


2009-04-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/callbacks.h, src/main.c:
   Update the View->Fullscreen menu item when fullscreen state is
   changed externally (e.g. by the window manager).
 * src/project.c:
   Fix passing wrong pointer to the File Open dialog for the Run
   command in the Project Properties dialog.


2009-04-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/keyfile.c, src/main.c, src/ui_utils.c,
   src/ui_utils.h:
   Remember the active sidebar page between sessions.
 * src/project.c:
   Add a recent project item after creating a new project.
 * tagmanager/ruby.c:
   Fix wrong parsing of string literals (closes #2781264).
 * src/treeviews.c:
   Fix setting focus to the editor widget after changing the selection
   in the symbol list.


2009-04-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/symbols.c:
   Prevent crashes when two or more top level items in the symbol
   list have the same name (closes #2778246).


2009-04-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/keybindings.c:
   Manually show the main notebook tab bar menu when Shift-F10 is
   pressed. This broke when we disabled the default GTK tab bar menu.
 * src/document.c:
   Fix a crash when USE_GIO_FILEMON is enabled at closing a document
   which was reloaded shortly before.
 * src/editor.c:
   When the editor menu is opened by the Menu key, use the text cursor
   position for retrieving the current word. This fixes disabled
   Go to Tag items in the menu (#2780044).
 * src/treeviews.c:
   Set the "ellipsize" property of GtkCellRendererText to automatically
   shorten the path and file names in the Documents list.
 * doc/geany.html, doc/geany.txt, src/build.h:
   Increase the amount of highlighted build error messages to 100.
   At least for LaTeX we need higher values as there is a lot of
   informative output before any errors are reported.
 * src/filebrowser.c:
   Use the startup path as the initial directory for the filebrowser
   plugin when no project and no files are opened
   (patch by Matias Gea, thanks; closes #2780521).


2009-04-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/dialogs.c, src/document.c, src/document.h, src/treeviews.c,
   src/utils.c, src/utils.h:
   Ellipsize tab labels and some status messages for very long
   filenames (closes #2777348).
 * src/plugins.c, src/plugindata.h, plugins/geanyfunctions.h:
   Add utils_str_middle_truncate() and
   document_get_basename_for_display() to the plugin API.
 * doc/geany.html, doc/geany.txt, src/toolbar.c:
   Add new toolbar element: Print (patch by Roland Baudin, thanks).
 * doc/geany.html, doc/geany.txt, src/document.c, src/document.h,
   src/keyfile.c:
   Add a hidden preference 'use_safe_file_saving' to save files to disk
   by creating a temporary file first. This has serious side effects,
   please read the documentation before enabling this.
 * src/build.c:
   Make build commands on Windows run synchronously to avoid problems
   with reading build commands' output.
 * doc/geany.html, doc/geany.txt, src/build.c, src/build.h:
   Limit the amount of highlighted build error messages in the
   Compiler window to 50 for performance reasons.


2009-04-20  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/editor.c, src/keybindings.c, src/keybindings.h,
   src/prefs.c:
   Replace our own GEANY_KEYS_MODIFIER_MASK by
   gtk_accelerator_get_default_mod_mask() which gives the same result.
 * src/filetypes.c, src/symbols.c, tagmanager/Makefile.am,
   tagmanager/makefile.win32, tagmanager/parsers.h, wscript:
   Add a trivial symbol parser for NSIS files.


2009-04-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/dialogs.c:
   Hide the extra file open dialog options in an expander to make the
   dialog more compact by default and to provide more space for the
   file view.
   Remove the filename field as it is also provided by GTK itself with
   more features like auto-completion.
   Watch the 'show-hidden' property of the file chooser widget using
   GObject's "notify" signal which gives accurate results and remove
   the hack using the "selection-changed" signal.


2009-04-17  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/callbacks.h, src/encodings.c, src/filetypes.c:
   Prevent double execution of radio menu item "activate" or "toggled"
   signal handlers.
   Move 'Set Encoding' callback function into encodings.c.


2009-04-16  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/project.c:
   Add some missing 'void's in function definitions.
   If the project base path is './', just use the path of the project
   config file instead of appending './'.
 * src/treeviews.c, src/project.c:
   When a project is loaded, replace the project base path with the
   project name in the Documents sidebar for parent items
   (closes #2723679).


2009-04-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/keyfile.c, src/keyfile.h, src/project.c:
   Fix duplicating the recent files and projects lists when closing
   a project.
 * src/build.c, src/callbacks.c, src/dialogs.c, src/document.c,
   src/editor.c, src/encodings.c, src/filetypes.c,
   src/geanymenubuttonaction.c, src/geanyobject.c, src/geanywraplabel.c,
   src/highlighting.c, src/keybindings.c, src/keyfile.c, src/main.c,
   src/msgwindow.c, src/navqueue.c, src/notebook.c, src/plugins.c,
   src/prefs.c, src/queue.c, src/sciwrappers.c, src/socket.c,
   src/symbols.c, src/templates.c, src/toolbar.c, src/tools.c,
   src/treeviews.c, src/ui_utils.c, src/utils.c, src/vte.c:
   Remove all G_LIKELY macros inside g_return_if_fail() statements as
   this is redundant.
   Remove many other G_LIKELY/G_UNLIKELY macros which doesn't make much
   sense to keep the code more readable.


2009-04-09  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/symbols.c:
   When updating global type definitions for opened documents, take
   also C++ namespace symbols into account and don't ignore symbols
   which are defined inside a scope.


2009-04-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugins.c:
   Don't show 'plugin is not binary compatible' messages on the status
   bar, only the status window.


2009-04-08  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/socket.c:
   When opening files from a remote instance on X11, set the window
   server time to encourage window managers to pop up the main window
   (related to #2735467 and #2276179).
 * src/main.c:
   When finished sending filenames to a remote instance, notify the
   environment that we finished starting up.


2009-04-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.h, src/utils.h, src/ui_utils.c:
   Sort Configuration Files menu.
   Add ui_menu_sort_by_label().
   Add foreach_list() macro.
 * src/editor.c:
   Fix autocompletion.


2009-04-07  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/main.c:
   Fix setting a wrong default window size when starting without an
   existing configuration.
 * src/editor.c, src/sciwrappers.c, src/sciwrapper.h:
   Make editor_highlight_braces() static.
   Remove unused wrapper functions.
 * src/editor.c, src/symbols.c, src/symbols.h:
   Prevent showing an empty macro list.
   Show only macros of the same filetype instead of all macros of all
   loaded filetypes.
 * src/ui_utils.c:
   Don't add opened project files to the GtkRecentManager.


2009-04-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Add Configuration Files item for snippets.conf.
 * src/highlighting.c, src/symbols.c:
   Fix 2 old uses of filetype IDs.


2009-04-06  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/interface.c, src/printing.c, geany.glade:
   Minor string improvements (spotted by Jean-Philippe Moal, thanks).


2009-04-05  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/ui_utils.c:
   Add sanity checks in ui_lookup_widget() just to be safe.
 * THANKS, TODO, geany.glade, src/about.c, src/interface.c,
   src/keyfile.c, src/main.c, src/plugindata.h, src/project.c,
   src/project.h, src/ui_utils.c, src/ui_utils.h:
   Add "Recent Projects" menu to the Project menu
   (#2728630, patch by Elias Pschernig, thanks).
 * doc/geany.txt, doc/geany.html:
   Describe how to build Geany using the Waf build system.
 * src/build.c, src/callbacks.c, src/dialogs.c, src/document.c,
   src/document.h, src/editor.c, src/encodings.c, src/filetypes.c,
   src/geanymenubuttonaction.c, src/geanyobject.c, src/geanywraplabel.c,
   src/highlighting.c, src/keybindings.c, src/keyfile.c, src/log.c,
   src/main.c, src/msgwindow.c, src/navqueue.c, src/notebook.c,
   src/plugins.c, src/prefs.c, src/queue.c, src/sciwrappers.c,
   src/socket.c, src/symbols.c, src/templates.c, src/toolbar.c,
   src/tools.c, src/tools.h, src/treeviews.c, src/ui_utils.c,
   src/utils.c, src/utils.h, src/vte.c:
   Start using G_LIKELY/G_UNLIKELY macros to gain a little more
   performance when building the code with gcc.
 * src/highlighting.c:
   Fix typo in the G_LIKELY checks, introduced in last commit.
   Fix the size of the styles array.
 * src/document.c:
   Show a message dialog when renaming a file fails.


2009-04-03  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Remove checks for the .pdf or .dvi files when viewing a LaTeX file
   (as we did for all other files in SVN r3382).


2009-04-03  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c, doc/geany.txt:
   Move ActionScript to the Script group.
   Fix wording & typo.
 * src/templates.c, src/utils.h, src/highlighting.c, src/dialogs.c,
   src/plugindata.h, src/filetypes.c, src/filetypes.h, src/plugins.c,
   src/symbols.c, src/ui_utils.c, plugins/saveactions.c,
   plugins/htmlchars.c:
   Merge reorder-filetypes branch:
   Make GEANY_FILETYPES_NONE = 0, sort filetype IDs randomly (so we can
   append randomly without breaking the ABI).
   Make None filetype name = title = _("None").
   Add foreach_slist() macro.
   Add filetypes_by_title list to GeanyData for plugin API access
   - a list of filetype pointers, which includes the None filetype
   first. This list stays constant by the time plugins are initialized,
   so you can use e.g. g_slist_nth_data(filetypes_by_title, n) to
   index the sorted list.


2009-03-31  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.txt, doc/geany.html, src/main.c:
   Add widget names for the menubar and toolbar.
 * src/msgwindow.c:
   When hiding the messages window, set the input focus back to the
   editor widget (part of #1910393).


2009-03-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * scintilla/LexOthers.cxx, src/highlighting.c, tagmanager/conf.c:
   Backport recent changes from Scintilla CVS to add partial support
   for RFC2822 styled text using the Properties lexer.
   Ignore leading whitespace for config files and RFC2822 text.
 * data/filetypes.actionscript:
   Update/fix ActionScript keywords (patch by Chris Macksey, thanks).
 * THANKS, src/treeviews.c:
   Display file/directory icons in the Documents sidebar
   (patch by Simon Treny, thanks).


2009-03-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.html, doc/geany.txt, geany.glade, src/callbacks.c,
   src/callbacks.h, src/interface.c, src/keyfile.c, src/main.c,
   src/plugindata.h, src/prefs.c, src/toolbar.c, src/toolbar.h:
   Add an option to allow appending the toolbar to the main menu bar
   to save some vertical space.
   Allow setting toolbar icon size to very small (menu icon size).


2009-03-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/keyfile.c, src/utils.c, src/utils.h:
   Add utils_path_skip_root(), a relative path safe variant of
   g_path_skip_root (forgotten patch by Colomban Wendling, #2518658).
 * src/keyfile.c, src/main.c:
   Allow negative window coordinates when saving and restoring the
   position of the main window.
   Restore the main window position and size *after* the window has
   been realised to get it positioned accordingly
   (this affects at least Windows).


2009-03-26  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/main.c, src/plugins.c, src/win32.c, src/win32.h:
   Use g_win32_get_package_installation_directory_of_module() on Windows
   with newer GLib versions instead of deprecated API.
 * src/keybindings.c:
   Don't manage the last used documents list when quitting to prevent
   errors by accessing invalid memory (may close #2533990).


2009-03-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Delete the geany_run_script.sh immediately after execution
   to prevent leaking old copies when the script was quit unexpectedly
   (closes #2710482, patch by Martin Olsson, thanks).
 * src/keyfile.c:
   Check whether skipping the root element of a document's filename
   succeeded and use the filename itself if not (e.g. on relative
   filenames, #2702844).
   Use the locale encoded filename when saving session files.
 * src/callbacks.c:
   Re-set the quitting status after all documents have been closed on
   quitting.


2009-03-24  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/htmlchars.c:
   Remove usage of deprecated sci_get_selected_text() from plugin.


2009-03-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c:
   Delay disk file checks when switching between documents a little
   bit to avoid fast, unintentional page switching in some cases.
 * plugins/geanyfunctions.h, src/plugindata.h, src/plugins.c,
   src/sciwrappers.c, src/sciwrappers.h:
   Deprecate sci_get_text(), sci_get_selected_text() and
   sci_get_text_range().
   Add sci_get_contents(), sci_get_contents_range() and
   sci_get_selection_contents() as replacement functions to provide
   an easier and cleaner API (initial patch by Frank).


2009-03-22  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/css.c:
   Fix wrong parsing of CSS tags when the definition block starts on
   a new line (reported by Dominic Hopf, thanks).


2009-03-20  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/htmlchars.c:
   Extend plugin by feature to bulk replace and replace on input for
   special characters to their HTML entities.


2009-03-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Update build menu items after changing anything in the
   'Set Includes and Arguments' dialog.
   Disable Compile/Run buttons/menu items when Compile/Run commands are
   set but empty.
   Reset current build directory to the base directory after reading a
   "Leaving directory" message when parsing Make output
   (closes #2694479, patch by Andrea Mazzoleni, thanks).
 * src/notebook.c:
   Fix wrong display of the filename in the tab bar menu for new files.
 * src/dialog.c:
   Set the initial directory for the Save As dialog only once on
   initialisation.
   Add a shortcut of the project's base directory to the
   File Open/Save As dialogs when a project is open for faster access.
 * src/splitwindow.c:
   Add keybindings for the split actions.


2009-03-16  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/search.c:
   When using Find All in the Find dialog (in Session and Document),
   display the right amount of matches.
   Fix the display of the matches once per line (I broke the original
   patch).
 * src/ui_uitls.c:
   Fix wrong directory selection behaviour in all Open Folder dialogs
   (closes #2688020, patch by Marcel Stimberg, thanks).
 * src/socket.c:
   Don't present the main window of a running instance when starting
   a second instance separately.


2009-03-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/socket.c:
   Reduce default file permissions on the Unix Domain socket file
   (reported by Jörg Sommer, thanks).


2009-03-13  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.txt, doc/geany.html, geany.glade, src/interface.c,
   src/main.c, src/plugindata.h, src/plugins.c, src/prefs.c,
   src/prefs.h:
   Add an option to set an additional plugin lookup path.
 * src/search.c:
   When using Find All in the Find dialog, display matches only once
   per line in the messages window (patch by Bert Vermeulen, thanks).


2009-03-10  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetype_extensions.conf, data/filetypes.actionscript,
   src/about.c, src/document.c, src/filetypes.c, src/filetypes.h,
   src/highlighting.c, src/plugindata.h, src/symbols.c,
   tagmanager/Makefile.am, tagmanager/actionscript.c,
   tagmanager/makefile.win32, tagmanager/parsers.h, THANKS, wscript:
   Add filetype ActionScript (patch by Chris Macksey, thanks).
   Update type keywords only for real C-like languages.
   Fix wrong sorting of Assembler and Ada filetypes.
 * plugins/classbuilder.c:
   Use G_DEFINE_TYPE in the GTK+ class template instead of manual code.
   Other minor cleanups.


2009-03-05  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/notebook.c:
   Don't use menu item images for the tab bar menu to save some
   vertical space.
 * data/filetypes.fortran, tagmanager/fortran.c:
   Add keyword 'extends' and fix Fortran parser to support the
   'extends' keyword (closes #2654492).
 * geany.glade, plugins/export.c, src/interface.c, src/printing.c,
   src/search.c, src/toolbar.c:
   Fix punctuation.


2009-03-03  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/about.c, THANKS:
   Added Jari Rahkonen to list of Finnish translators.


2009-03-02  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * geany.pc.in:
   Adjust minimum required GTK version.
 * src/Makefile.am, wscript:
   Add main.h to the list of installed header files.
 * geany.glade, src/document.c, src/documentprivate.h, src/interface.c,
   src/notebook.c, src/ui_utils.c:
   Remove GeanyDocumentPrivate::tabmenu_label.
   Disable the default tab bar menu for the main notebook widget and
   use a custom menu instead which lists all open files as usual plus
   'Close Other Documents' and 'Close All' menu items.


2009-02-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/search.c, src/ui_utils.c, src/ui_utils.c:
   Move ui_set_search_entry_background() into ui_utils.c.
   Change the background colour of the search entries in the Find
   and Replace dialogs according to the search results like in the
   toolbar search field.
   Add images to the 'Replace' and 'Replace and Find' buttons in the
   Replace dialog.
   Minor cleanups in search.c.
 * tagmanager/tm_source_file.c:
   Update source files upon creation.
 * data/c99.tags:
   Update C tags for glibc 2.9.
 * src/callbacks.c, src/toolbar.c:
   Fix broken non-incremental search with the toolbar search entry when
   pressing Enter (closes #2638180).
 * plugins/splitwindow.c:
   Fix possible crash on non-32-bit systems (patch by
   Wolfgang Ocker, thanks).
 * geany.spec.in:
   Update the Packager tag due to Dominic's various contributions.
   Update description and feature list.
   Change Source tag to the gzip'ed tarball to be in sync with the
   Makefile target (thanks to Wolfgang Ocker for reporting).


2009-02-26  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/vcdiff.c, plugins/Makefile.am, po/POTFILES.in:
   Removed deprecated plugin VC Diff


2009-02-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/templates.c:
   Fix wrong Fortran 90 comment characters when inserting templates.
 * doc/geany.html, doc/geany.txt, geany.glade, src/callbacks.c,
   src/callbacks.h, src/editor.c, src/interface.c, src/keybindings.c,
   src/keybindings.h, src/main.c, src/plugindata.h, src/vte.c,
   src/vte.h, THANKS:
   Add 'Send Selection to Terminal' command to the Edit->Format menu
   (initial patch by David Gleich, thanks).
 * geany.glade, src/interface.c:
   Fix mnemonic for the Edit->Preferences menu item.


2009-02-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * configure.in, plugins/Makefile.am:
   Enable socket support when cross-compiling.
   Enable plugin compilation when cross-compiling.
 * src/msgwindow.c:
   Fix missing NULL checks when reading the colour value of compiler
   output messages.
 * src/main.c, src/win32.c, src/win32.h:
   On Windows, change the working directory to the Geany installation
   path at startup to avoid unwanted directory locking(closes #2626124).
 * src/encoding.c:
   Fix broken selection of "Document->Set Encoding" menu items.
 * src/document.c, tagmanager/include/tm_source_file.h,
   tagmanager/include/tm_work_object.h, tagmanager/tm_project.c,
   tagmanager/tm_source_file.c, tagmanager/tm_tag.c,
   tagmanager/tm_work_object.c, tagmanager/tm_workspace.c:
   Don't let the tagmanager automatically reparse files if they
   seem to be changed on disk (affects all files in the current session,
   not the current one). This should speed up file saving a little bit,
   especially with remote files.
   Remove now unnecessary calls to tm_workspace_update().
 * src/printing.c:
   Allow an empty value for the date format in the print settings to
   omit the date/time string in the print header.


2009-02-20  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/editor.c: Set cursor for LaTeX at auto closing of environment
   direct into area.


2009-02-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/utils.h:
   Add missing header include (closes #2615808).


2009-02-18  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/symbols.c:
   Fix a possible crash when comparing symbol names
   (could be related to Ubuntu bug #147151).
   Fix broken symbol list tooltips when tag names contain ampersands.


2009-02-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * plugins/makefile.win32:
   Don't build Split Window plugin on Windows (doesn't work).


2009-02-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * ChangeLog, Makefile.am: Rotate ChangeLog.
 * configure.in, geany.nsi, geany_private.rc, win32-config.h,
   wscript, doc/geany.txt, doc/geany.html, src/geany.h:
   Post-release version bump.


*** See ChangeLog.pre-0-17 for earlier changes ***
