Commits on Nov 23, 2011
  1. Don't leave some fields initialization to implicit initialization

    Although this doesn't change anything in practice, it started to be a
    nightmare trying to deal with compilers warnings about "missing"
    initializers, which are generally good but not in that file.
    b4n committed Nov 23, 2011
Commits on Nov 22, 2011
  1. Fix finding duplicated keybindings

    When checking whether a keybinding is already in use before updating
    it in the preferences, check against the keybindings the user may have
    updated, not the ones that are currently applied.
    This fixes changing action A from key K to key L and action B from key
    L to key K, which led to conflicts back and forth since when setting B
    to K the check found A as a duplicate even after having changed it.
    b4n committed Nov 22, 2011
Commits on Nov 21, 2011
  1. --read-only cleanup

    Use the global variable only when needed and add an initializer for it
    in the default options.
    zhekov committed with b4n Nov 21, 2011
  2. Prevent GCC to warn about missing initializers in highlightingmappings.h

    Use a GCC pragma to disable -Wmissing-field-initializers in this file.
    This works with both GCC and CLang, and should be harmless on other
    compilers since unknown pragmas are supposed to be ignored.
    b4n committed Nov 21, 2011
  3. Rewrite symbols tree updating code

    Old implementation was not really fitting the updating needs and had a
    bug making symbols disappear if they haven't changed but their parent
    did (e.g. when a C++ constructor's signature changed).
    New implementation does:
    1) walk old tree, updating or removing rows;
    2) add remaining tags.
    It walks less than (new_tags + old_tags + new_tags) in the worst case,
    thanks to some hash table-based caching;  and also gets rid of the
    "valid" column in the symbols tree, saving a few bytes in memory.
    Finally, there is a ~7% performance gain (from 21 to 18ms) upon common
    tree updates, sometimes more.
    b4n committed Nov 20, 2011
Commits on Nov 20, 2011
  1. Add Close menu item to the notebook tab menu

    This is especially useful if tab close buttons are disabled.
    eht16 committed Nov 20, 2011
  2. Fix using the current document on 'Close Other Documents' from the Gt…

    …kNotebook tab menu
    Instead we should use that tab which is under mouse cursor where the user clicked (this might be a
    different one than the current document). To be able to do so, we need to handle the right-click signal
    per tab not on the GtkNotebook tab area to identify the tab under the mouse cursor.
    eht16 committed Nov 20, 2011
  3. Mention new openro command

    eht16 committed Nov 20, 2011
  4. Remove double underscores around header guards (closes #3440258)

    While this is a violation of the C standard in theory, it should not affect anything.
    Anyway, removing the double underscores makes the header guard scheme more
    consistent with the rest of Geany header files so it's still a good thing.
    eht16 committed Nov 20, 2011
Commits on Nov 18, 2011
  1. Fix walking a tree branch twice when removing the last leaf

    When removing the last leaf of a symbols tree branch, make sure not
    to start walking parent's children again.
    b4n committed Nov 18, 2011
Commits on Nov 17, 2011
  1. Mention 'Go to tag' commands can use the current selection

    Cleanup 'Go to tag' sections and keybinding descriptions.
    ntrel committed Nov 17, 2011
  2. Add default keybindings for Go to Tag, remove Transpose default

    This does not affect existing users.
    Ctrl-T          Go to tag definition
    Ctrl-Shift-T    Go to tag declaration
    A default keybinding for 'Transpose current line' is no longer
    necessary as it does the same as 'Move line(s) up', which we now have
    a default for.
    ntrel committed Nov 17, 2011
  3. Set Move Line(s) default keybindings, change Move Tab defaults

    This does not affect existing users.
    Ctrl-Shift-PageUp   Move document left
    Ctrl-Shift-PageDown Move document right
    The above shortcuts were aliases for selecting left/rightmost
    documents, but those are not necessary as Alt-1/Alt-0 does the same.
    Alt-PageUp      Move line(s) up
    Alt-PageDown    Move line(s) down
    Alt is easier to press than Ctrl-Shift, so is better for moving lines
    as this needs more accuracy.
    ntrel committed Nov 17, 2011
  4. New --read-only commandline option

    This adds a new commandline option --read-only (or -r). It's implemented
    according to the behavior agreed on on the mailing list:
    --read-only applies to all files on the command line
    irrespective of positioning and has no effect on any other files
    opened by session or menu (...)
    Current behaviour on attempting to re-open a file with different
    read-only status is that nothing happens, the already open
    file is raised but not changed. (...)
    kugel- committed with b4n Nov 3, 2011
  5. Revert granting an unexpected check to an assertion

    It actually happens, and until fixing this properly, don't output
    useless useless scary warnings.  Anyway, this is not a big problem
    or anything.
    b4n committed Nov 17, 2011
  6. Add a configurable prefix for commands sent to the shell in the VTE

    This adds an hidden VTE preference, send_cmd_prefix, that allows to
    define a prefix for the commands Geany sends to the shell in the VTE
    like "cd" when following current path.
    This can be used for example to prevent some shells (Bash, ZSH, maybe
    others) from putting these commands in the history by setting this to
    a space.
    b4n committed Nov 17, 2011
Commits on Nov 16, 2011
  1. Verify active plugin paths on startup

    Geany saves the path for each active plugin on shutdown, but the 3
    valid plugin paths can each change.
    ntrel committed Nov 16, 2011
Commits on Nov 15, 2011
  1. Fix an assertion logic

    b4n committed Nov 15, 2011
  2. Deprecate setptr in favour of SETPTR

    SETPTR makes it clear that a macro is being used in code.
    Restore setptr without do/while in case of use without semi-colon.
    ntrel committed Nov 15, 2011
  3. Add default shortcuts for Find Usage, Forward/Back, Make Object

    Note: This doesn't affect existing user shortcuts.
    Ctrl-Shift-D    Find Document Usage
    Ctrl-Shift-E    Find [Session] Usage (one letter after doc usage and
                    close on the keyboard)
    These are standard shortcuts for browsers:
    Alt-Right   Forward
    Alt-Left    Back
    This matches the build/make symmetry for compile (F8):
    Shift-F8    Make Object
    ntrel committed Nov 15, 2011
  4. Fix setptr to work in an 'if' clause & improve documentation

    Use do {...} while (0) instead of {...}.
    Document the order of events and purpose of setptr properly.
    ntrel committed Nov 15, 2011
Commits on Nov 14, 2011
  1. Workaround gcc function address comparison warning

    highlighting.c:950:3: error: the address of
    'highlighting_styles_ADA' will always evaluate as 'true'
    Note: This commit also contains some trailing whitespace removal.
    ntrel committed Nov 14, 2011
  2. Quote C89 draft rather than C99 one

    b4n committed Nov 14, 2011
  3. Provide error message for extract regex

    Print the GError message if the users filetype extract regex does
    not compile.
    elextr committed Nov 14, 2011