aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Merge pull request #1657 from tarruda/abstract-ui-fixesJustin M. Keyes2015-01-12
|\ | | | | [WIP] "abstract_ui" fixes and improvements
| * syntax: Refresh UI when the color scheme changesThiago de Arruda2015-01-12
| |
| * ui: Fix redraw bug caused by race conditions with remote clientsThiago de Arruda2015-01-12
| | | | | | | | | | Before sending a resize command to the UIs, flush the current output buffer to ensure no redraw commands for a screen with invalid size are processed.
| * shell: When executing command, use screen functions to display outputThiago de Arruda2015-01-12
| | | | | | | | | | By calling ui_write directly, the internal screen isn't updated and invalid bytes aren't handled, which breaks the abstract UI model.
| * ui: Use ui_linefeed to handle line breaks correctlyThiago de Arruda2015-01-12
| | | | | | | | | | ui_linefeed will scroll the screen when it becomes full. This can happen when executing external commands.
| * ui: Fix out_flush/ui_write behavior to always flush for abstract_uiThiago de Arruda2015-01-12
| |
| * channel: Make pending_requests a field of the Channel typeThiago de Arruda2015-01-12
| | | | | | | | | | This is required to send redraw notifications while a msgpack-rpc call is being performed by another channel.
| * ui: Reimplement `:suspend` command for remote UIs.Thiago de Arruda2015-01-12
| | | | | | | | | | | | - Remove suspend method from the UI protocol - Handle `:suspend` by disconnecting the last channel that sent a request to nvim.
| * ui: Don't parse abstract_ui codes if there are no attached UIsThiago de Arruda2015-01-12
| |
| * channel: Free channels created from libuv streamsThiago de Arruda2015-01-12
| |
| * ui: Add 'rgb' parameter to ui_attachThiago de Arruda2015-01-12
| | | | | | | | When set to false, nvim will send cterm color numbers with `highlight_set`.
| * ui: Dont resize screen if no UIs are attachedThiago de Arruda2015-01-12
| | | | | | | | | | This prevents a race condition when a UI attaches early in the program and can receive redraw commands for a invalid screen
| * screen: Fix bug that causes separator to always be redraw for utf8Thiago de Arruda2015-01-12
| |
| * screen: Remove abstract_ui test in reset_cterm_colorsThiago de Arruda2015-01-12
| |
| * runtime: Fix plugin/matchparen.vim for abstract_uiThiago de Arruda2015-01-12
| |
| * syntax: Take rgb fg/bg when allocating cterm attr numberThiago de Arruda2015-01-12
| |
| * ui: Merge standout and reverse into one attributeThiago de Arruda2015-01-12
| |
| * input: Ignore invalid "<" key sequencesThiago de Arruda2015-01-12
| | | | | | | | | | Ignoring invalid key sequences simplifies input handling in UIs. The only downside is having to use "<lt>" everytime a "<" is needed on functional tests.
| * test: Remove unnecessary command from highlight_specThiago de Arruda2015-01-12
| |
| * ui: Fix ui resizing and change some method namesThiago de Arruda2015-01-12
| |
| * remote_ui: Move handler registration to remote_ui.cThiago de Arruda2015-01-10
| | | | | | | | Also don't defer attach_ui handling
| * ui: Test for abstract_ui whenever a minimal t_colors value is requiredThiago de Arruda2015-01-10
| | | | | | | | | | t_colors should not be checked when abstract_ui is active, because nvim UI is not limited to a terminal.
| * ui: Add mising T_CSV code to abstract_ui termcapThiago de Arruda2015-01-10
| | | | | | | | | | This code is required for screen.c to set a vertical scroll region, which is a great optimization when scrolling vertically split windows.
| * ui: Increase cursor row when text being rendered would cross its limitThiago de Arruda2015-01-10
| |
| * ui: Add update_fg/update_bg methodsThiago de Arruda2015-01-10
| | | | | | | | | | It is necessary to notify the UI when the default background/foreground colors change in order to render correctly.
| * test: Fix eol_clear in screen.luaThiago de Arruda2015-01-10
| | | | | | | | | | It should only clear to the end of the current scroll region(this is the behavior expected by nvim)
* | Merge pull request #1710 from Pyrohh/improve-docs-job-controlJustin M. Keyes2015-01-11
|\ \ | | | | | | Misc. improvements to job control & msgpack rpc docs [ci skip]
| * | docs: Misc. improvements to job_control/msgpackMichael Reed2015-01-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Rewrote a few sentences for clarity/brevity - Various spelling/grammar fixes - Mention exact time before SIGKILL (mentioned in /src/nvim/os/job.c) - Reflowed all changed paragraphs accordingly - Standardize indentation level - Remove trailing whitespace - Job control example: - Don't buffer output (echo -n); just print a new line for every update. - Use single quotes around jobsend() arguments to allow for proper interpretation of newline characters. - Sleep 1 second between updates instead of 2; 10 seconds is plenty of time for such a simple example.
| * | docs: More consistent descriptions of rpc*() funcsMichael Reed2015-01-11
|/ / | | | | | | | | | | - Remove note about how {channel} is rpcstop's only argument; just mention {channel} at the beginning like the other descriptions. - Small grammar fixes
* | Merge pull request #1794 from elmart/remove-long_u-cleanupJustin M. Keyes2015-01-11
|\ \ | |/ |/| Some suggested cleanup after #1788.
| * Cleanup: Rename getdigits() family functions.Eliseo Martínez2015-01-11
| |
| * Cleanup: Refactor variables: long --> int.Eliseo Martínez2015-01-11
| | | | | | | | | | | | | | | | | | At 31c8440fee0bd694093d83af5dee20e3c3dc876c, some variables were changed from int to long, to avoid -Wconversion errors. Long type was the appropiate one because getdigits() was returning a long. Now that we have get_int_digits() and get_long_digits(), we can revert mentioned variables to int, and use get_int_digits() without having -Wconversion warnings.
| * Cleanup: Refactor getdigits().Eliseo Martínez2015-01-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem : getdigits() currently returns a long, but at most places, return value is casted (unsafely) into an int. Making casts safe would introduce a lot of fuss in the form of assertions checking for limits. Note : We cannot just change return type to int, because, at some places, legitimate long values are used. For example, in diff.c, for line numbers. Solution : Introduce new functions: - get_digits() : Gets an intmax_t from a string. - get_int_digits() : Wrapper for ints. - get_long_digits() : Wrapper for longs. And replace getdigits() invocations by the appropiate wrapper invocations.
| * Cleanup: Refactor option_table_T.number: long --> int.Eliseo Martínez2015-01-11
| |
| * Cleanup: Refactor prt_{fg,bg,new_bg}col: int --> uint32_t.Eliseo Martínez2015-01-11
| |
| * Cleanup: Remove local var bg_color@prt_get_attr().Eliseo Martínez2015-01-11
| |
| * Cleanup: Fix bad assert.Eliseo Martínez2015-01-11
|/ | | | | Assert will fail on first loop iteration (in that case, prtpos.bytes_printed is 0).
* Merge pull request #1761 from oni-link/speed.up.gcJustin M. Keyes2015-01-10
|\ | | | | Speed up garbage collection (Issue 1687).
| * Speed up garbage collection.oni-link2014-12-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For garbage collection all lists are kept in first_list, a list of all lists. free_unref_items() searches through first_list and removes unreferenced lists from it (by calling list_free(..., FALSE)). But after a list was removed, the search continues from the beginning of first_list (not sure how many lists were really removed and where to continue in first_list). This is not necessary anymore since vim-patch 7.0.135, because a call to list_free(...,FALSE) makes sure, that no other lists (and dictionaries) are freed. So we always know, that the next list in first_list is still valid (allocated or NULL) and can be used to continue the search. Likewise for dictionaries. Original patch by Ariya Mizutani https://groups.google.com/forum/#!searchin/vim_dev/GC/vim_dev/DBYOdHQWvqY/1WH04_dwETIJ
* | Merge pull request #1788 from elmart/remove-long_u-4Justin M. Keyes2015-01-10
|\ \ | | | | | | Remove project-specific integer types: long_u. (4)
| * | Remove long_u: term: Remove dead code using long_u.Eliseo Martínez2015-01-10
| | | | | | | | | | | | | | | get_long_from_buf() seems not to be used anywhere, and is the only place where instances of long_u remain at term.c.
| * | Remove long_u: term: Enable -Wconversion.Eliseo Martínez2015-01-10
| | |
| * | Remove long_u: hardcopy: Refactor long_u.Eliseo Martínez2015-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - <color_related_stuff>: long_u --> uint32_t Everywhere long_u was used to hold a color value. Color values are supposed to be 32 bits at most. Supported architectures have 32 bits ints, so we could have used plain ints. But this wouldn't be future-proof, and would be wasteful if a future architecture has ints bigger than 32 bits. So, uint32_t is perfect to achieve optimal packing no matter the architecture. - bytes_to_print/bytes_printed: long_u --> size_t Seems like the correct thing, and gets rid of some casts.
| * | Remove long_u: hardcopy: Enable -Wconversion.Eliseo Martínez2015-01-10
|/ /
* | Merge PR #1787 'Use versioned URLs for libtickit and dependencies'Thiago de Arruda2015-01-09
|\ \
| * | deps: Use versioned URLs for libtickit and dependenciesThiago de Arruda2015-01-09
|/ /
* | Merge pull request #1784 from elmart/coverity-issues-2Justin M. Keyes2015-01-08
|\ \ | | | | | | Fix coverity issues. (2)
| * | coverity/13763: Out-of-bounds read: FP.Eliseo Martínez2015-01-08
| | | | | | | | | | | | | | | | | | | | | | | | Problem : Out-of-bound read from a buffer. Diagnostic : False positive. Rationale : nv_max_linear should always be less than nv_cmd_idx size (NV_CMDS_SIZE). Resolution : Assert rationale.
| * | coverity/13761: Out-of-bounds-write: FP.Eliseo Martínez2015-01-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem : Out-of-bounds-write to a buffer. Diagnostic : False positive. Diagnostic : Suggested error location is under isupper(c) condition, which makes suggested error impossible. Coverity just fails to take isupper() postcondition into account. Resolution : Assert isupper() postcondition.
| * | coverity/13758: Out-of-bounds read: FP.Eliseo Martínez2015-01-08
|/ / | | | | | | | | | | | | | | | | Problem : Out-of-bounds read from a buffer. Diagnostic : False positive. Rationale : Suggested error path implies isupper(*str) being true, which makes error vanish. Coverity just fails to take into account isupper() postcondition. Resolution : Assert isupper() postcondition.