Invoke on_view_change hook on key press when scrolling Based on a patch by Dennis Hofheinz.
Fix mouse reporting of motion notify events On motion notify events, when no mouse button is pressed, urxvt encodes either the number of the last button pressed or an invalid value of -1, before the first button press, in mouse reporting sequences. This commit fixes urxvt to report 3 as the button number, same as xterm. Bug reported by Uli Schlachter.
*** empty log message ***
Clamp coordinates in mouse reporting Currently mouse button-motion events generated by dragging the cursor outside the urxvt window have coordinates outside the range of valid cells. Clamping these coordinates to the minimum and maximum row/column number would be more useful and is consistent with xterm. Patch by Nick Hanley.
Revise mouse reporting of buttons 8-11 This commit changes the encoding of buttons 8-11 in mouse reporting sequences to match xterm's, so as to make it unambiguous, and enables reporting of release events for them. Patch by Pierre-Marc Fournier.
Fix OSC responses with 7-bit ST Bug reported by Stuart Henderson.
*** empty log message ***
Fix regression in OSC color queries The change to add the color index parameter to OSC 4 responses caused urxvt to no longer emit responses to all other OSC color queries.
*** empty log message ***
*** empty log message ***
*** empty log message ***
-dpb
const string constant
add can_compose flag tor xvt_font, to indicate whether the font handles glyph composiiton (might go away) allow rxvt_composite.expand to work with whcar_t and text_t as output, will likely change.
Require C++11
Improve 24-bit direct color accuracy Patch by Fengguang Wu.
Implement DECRQM Patch by Přemysl Eric Janouch.
Add missing color index parameter to OSC 4 response Patch by Přemysl Eric Janouch.
Improve naming of extended mouse private mode constants
Implement xterm SGR mouse mode
*** empty log message ***
*** empty log message ***
*** empty log message ***
Move old bg image frontend to background extension.
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
truecolour replacement tuning
Fix test.
24-bit color cube collision avoidance (patch by Fengguang Wu) When the color cube slot is found to be already occupied by a similar 24-bit color, search through the -1, 0, +1 R/G/B indices trying to find an empty slot, or the oldest used one (which hopefully is no longer in active use). This effectively reduces random collisions, hence make it pretty hard to hit a vim GUI color scheme that cannot be correctly showed in urxvt.
24-bit direct color support (patch by Fengguang Wu) Support directly setting RGB fg/bg colors via ISO-8613-3 24-bit ANSI color escapes: ESC[38;2;<r>;<g>;<b>m Select RGB foreground color ESC[48;2;<r>;<g>;<b>m Select RGB background color The killer applications for me are vim in tmux. It'll not only modernize their look and feeling, but also bring more eye friendly color schemes. Very helpful for long time programmers. To avoid memory overheads and keep the patch non-intrusive, it takes the approach to adapt the nearest color in an hidden 6x6x4 (88-color mode) or 7x7x5 (256-color mode) color cube to the new 24-bit RGB color. The pros/cons are: +) least memory footprint (close to 0) comparing to konsole, gnome-terminal etc. real 24-bit arrays +) exact colors and excellent user feelings comparing to xterm, mlterm, etc. approximating to 256 palette +) usable in both the existing 88/256-color modes Most vim GUI color schemes show up the same as gvim in rxvt-unicode's 88-color mode, not to mention the 256-color mode. Typical applications only use one or two dozens of colors at the same time. -) may not be able to show 2+ close 24-bit colors RGB colors close to each other will likely fall into the same slot in the 6x6x4 or 7x7x5 color cube. If necessary, it could be improved effectively by implementing some collision avoidance logic, trying to find empty/eldest slot in the +1/-1 r/g/b indices (ie. 3-8 neighbors). The CPU overheads of map_rgb24_color() look ignorable: I feel no perceptible slow down when doing vim operations in 24-bit color mode. A micro benchmark running a test script from [1]: % time (for i in {1..100}; do 24-bit-color.sh; done) vanilla rxvt-unicode ==================== 2.42s user 1.88s system 31% cpu 13.555 total 2.59s user 1.74s system 31% cpu 13.615 total 2.46s user 1.85s system 31% cpu 13.631 total THIS PATCH (adapt hidden color cube to 24-bit) ============================================== 2.33s user 1.97s system 31% cpu 13.598 total 2.46s user 1.89s system 31% cpu 13.613 total 2.51s user 1.82s system 31% cpu 13.556 total https://github.com/spudowiar/rxvt-unicode (real 24-bit array) ============================================================= 2.61s user 1.75s system 31% cpu 13.721 total 2.48s user 1.82s system 31% cpu 13.566 total 2.60s user 1.76s system 31% cpu 13.631 total USE_256_COLORS is defined in all the above rxvt-unicode builds. References: [1] True Colour (16 million colours) support in various terminal applications and terminals https://gist.github.com/XVilka/8346728 [2] https://en.wikipedia.org/wiki/ANSI_escape_code#Colors
Implement xterm focus reporting mode. Patch by Daniel Hahler.
Update copyright years.
Put the alpha component last in responses to OSC color queries (patch by Benjamin Herr).
Do not report mouse motion events if Shift is active (patch by Daniel Hahler).
*** empty log message ***
Do not start blinking cursor if the window is unfocused.
*** empty log message ***
*** empty log message ***
Make cursorBlink and DECSCUSR independent of DEC private mode 12.
Add DEC private mode 12.
indent
*** empty log message ***
Add DECSCUSR xterm extension to set the cursor to a vertical bar.
Fix typo.
Add -mc option and multiClickTime resource, patch by Joe Peterson.
Remove wrong reset of 'meta'.
Remove useless code.
Initialize keysym to NoSymbol and simplify. XwcLookupString does not modify the keysym argument if a KeySym is not returned. In this case, the KEY_PRESS hook would read uninitialized data.
Fix sequence generation for Shift + F1 - F10.
GPLv3
*** empty log message ***
Add tt_write wrapper for user input and use it for 'string:' actions.
Invoke the on_key_press hook before checking for user-defined and builtin mappings.
Fix size of rkbuf array.
Pass kbuf to keyboard_manager::dispatch.
Write the escape char in kbuf rather than writing it directly to the pty.
Add bindings to interact with the CLIPBOARD selection.
*** empty log message ***
*** empty log message ***
Simplify.
Simplify.
Simplify.
Use meaningful names for variables.
Simplify.
if it breaks, the pieces will be sharp
Add support for the set cursor style (DECSCUSR) control function.
Remove unneeded preprocessor conditional.
Inline two methods in their callers.
Set root_img only when transparency is requested and replace tests on the transparency option with (more accurate) tests on root_img.
Get rid of BG_IS_VALID flag.
Update/reword comment.
Make code needed to set the bg pixmap conditional to HAVE_IMG.
Revise preprocessor macros that control the core bg image code. Move definition of BG_IMAGE_FROM_FILE in rxvt.h and add analogous BG_IMAGE_FROM_ROOT macro that is set if the code to manage the root pixmap is needed.
indent
Fix typos.
*** empty log message ***
Simplify and fix compilation when bg pixmap support is not enabled.
Do not abort if loading an image with OSC 20 fails.
Simplify.
Switch background.C to rxvtimg api (xrender is now required).
*** empty log message ***
Remove image vector implementation.
*** empty log message ***
*** empty log message ***
*** empty log message ***
some #ifdef => #if changes
Refactor tint/blur variables and methods into a new image_effects object, so as to be able to apply such effects to multiple images.
add some ecb_hot/ecb_cold
Simplify.
First cut at adding support for multiple images.
Refactor code to manage images from files into a new rxvt_image object, so as to be able to load multiple images.
Fix processing of DEC private mode save sequences, patch by Patrick Hemmer.
Fix indent.
Fix disabling of cursor blink with the option-popup menu. Based on a patch by Jan Larres.
Include the C standard headers rather than the corresponding C++ version.
Store the size of the vt window into two new members vt_width/height and keep the maximum size in width/height, so that the $term->width/height accessors return the same value as in pre 9.14.
Revert last change to set_urgency.
Always set the urgency hint in set_urgency when enable is true, use caching to avoid spurious clears only.
Encode 8-bit meta in function key sequences _after_ encoding shift/control modifiers. Before, when 8-bit meta was on, shift/control modifiers were not encoded because, after setting the 8th bit of the last character, the sequence was no longer recognized as ending with '~'.
Encode modifiers in function key sequences _before_ invoking the perl on_key_press callback.
*** empty log message ***
Plug leak in set_urgency. The value returned by XGetWMHints must be freed with XFree. Patch by Nathaniel Filardo.
Cosmetics, rename enum constants.
Manually inline set_privmode, decreases code size.
Remove failed attempt at avoiding unneeded resize and refresh of the window when the scrollbar is turned on/off with the corresponding DEC sequence.
Convert scrollbar macros to inline functions.
Use bool for boolean variable.
When the window is unmapped, inhibit updates of the bg image in all cases rather than only on window move.
Move and factor code to set the geometry specified in a bg pixmap string into bg_set_file.
Update comments about DEC sequences.
Remove camelcase in some function names.
Migrate to libecb.
Cleanup.
Use wctomb rather than wcstombs in commit_iso14755, the input is always a single character.
Remove some comments.
Cleanup.
Fix some comments.
Change type of 'parent' from array of Window to Window as all the elements except the first are unused.
*** empty log message ***
Handle write failure correctly in tt_write.
*** empty log message ***
*** empty log message ***
the pcg is now the schmorp
Factor the code to request a selection property into a new toolkit-level object.
Use true/false rather than True/False when the type is bool.
Cosmetic, rename background pixmap flags.
Remove bgPixmap_t struct, move background pixmap handling in rxvt_term.
Simplify, invert flag meaning.
Remove commented out code.
Remove useless code.
Use rxvt_realloc instead of realloc.
Revert part of last change.
Add const qualifier where appropriate.
Add ARRAY_LENGTH macro with obvious meaning and use it.
Simplify.
Make some global variables static.
Fix style.
*** empty log message ***
*** empty log message ***
Keep track of the window position to avoid spurious redraws when the bg image is sensitive to position.
Do not change geometry if bgPixmap_t::set_file fails.
Cleanup OSC 20; remove support for multiple commands and for commands that set scale and position relative to current value.
Deobfuscate.
Remove debugging stuff.
Revert last change to handling of 'CSI Ps ~' sequences, it breaks Delete.
Fix typos.
Encode modifiers in 'CSI Ps ~' sequences _before_ invoking the on_key_press hook.
Fix typos.
*** empty log message ***
Add OSC 19 to change highlightTextColor.
Remove deprecated OSC 18 / 19.
Disable colorRV resource. Make OSC 17 apply to highlightColor. Make highlightColor apply also to selected cells with reverse video. Add highlightTextColor resource to change the foreground colour of highlighted characters.
Replace leading tabs with spaces, patch by Mikachu.
*** empty log message ***
Try to fix Num_Lock handling: force application keypad to off when Num_Lock is on, do nothing otherwise.
Use find_font_idx in iso14755_51.
Fix typos.
Fix typos.
revert fontidx stupidity
*** empty log message ***
Extend ISO 14755 5.4 mode to also print the font name of the characters other than the first one in the selected cell.
µ-power
Remove misleading comment.
Add support for copying to clipboard (based on patch by Dana Jansens).
Add iso14755 option to disable ISO 14755 at runtime.
Do not hardcode the binding for ISO 14755 to check if ISO 14755 is active; rather, test iso14755buf accordingly.
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
Make scrollbar_{resize,mapping,show} methods of scrollBar_t.
Make scrollbar_{minheight,size} methods of scrollBar_t.
Rename PrivMode to set_privmode and switch arguments order.
Reindent.
Nuke LINUX_KEYS.
Factor code to generate sequences for function keys.
Factor keypad translation code into a function.
Make hex_keyval a static function.
Remove superfluous braces.
Move a variable to the scope where it is used.
*** empty log message ***
Simplify.
Remove missed occurrences of scrollbar_is{Up,Dn}.
Add enum for scrollbar states and remove methods/macros to set/check it.
Factoring.
Replace scrollbar {up,dn}Button macros with methods.
*** empty log message ***
*** empty log message ***
implement bracketed paste mode (xterm private mode 2004).
*** empty log message ***
Deprecate OSC 39/49.
improved handling of background rendering on startup and fixed situation of no WM or non-reparenting WM
*** empty log message ***
*** empty log message ***
Simplify ifdef.
Remove pointless macro.
*** empty log message ***
Move scrollbar_align from rxvt_xterm to scrollBar_t.
Fix longstanding typos in unicode3 preprocessor conditionals.
*** empty log message ***
Fix typo.
*** empty log message ***
*** empty log message ***
*** empty log message ***
03:29:57 <Mikachu> didn't your removal of the ==0 check introduce a call to scr_page(UP)? 03:29:58 <schmorp> moa pls 03:30:04 <schmorp> it did 03:30:18 <schmorp> but if i coded that function, it will not crash 03:30:30 <schmorp> if i had coded that function it would have oen argument only, too :(
mikachu 2
mikachu 2
you should do it, too, and less sloppily than me
*** empty log message ***
stop blink callback when not required
*** empty log message ***
µopt
*** empty log message ***
Cosmetics.
Remove traces of unimplemented 1001 mouse mode.
Cosmetics.
*** empty log message ***
*** empty log message ***
Cosmetics.
Fix coding style.
Simplify keypad functions remapping.
first rough cut at libev integration
*** empty log message ***
Remove trailing whitespace.
Implement 1002/1003 mouse tracking modes.
Nuke pixel_position.
removed scr_clear() to hopefully get rid of a flicker for good - will have to see if that causes other problems, such as artifacts etc.
improved flickering on move/resize with transparent background
clean up some code
Remove useless assignment.
renamed XPM_BACKGROUND to BG_IMAGE_FROM_FILE
Got rid of want_full_refresh - no longer needed; removed setting want_refresh in bgPixmap.apply() - is done in Expose event handler instead; Fixed clearing background to clear vt as well; added check for pixmap origin in font_xft::draw(); added window_position_sensitive() to bgPixmap for consistency
Factor test for DECNKM.
Remove useless indirection for {backspace,delete}key resources.
*** empty log message ***
*** empty log message ***
reimplemted delayed rendering of the background pixmap with some logic to use different timeouts for different rendering algorithms
fixed segfault on resize by getting rid of touch() in apply(). rearranged redraw calls on configure notify to be sane
applied patch by James Cloos
refactored check_parents into bgPixmap.render(), started cleaning up am_transparent stuff
clear rvideo mode differently to avoid race
fixed compilation bugs without libAI, added setters to bgPixmap for transparency params and moved server side tinting to make_transparency_pixmap; started refactoring check_our_parents into render_background()
Remove --enable-tinting and make --enable-transparency enable also the tinting code.
Fix compilation after last change.
updated comments explaining pixmap geometry string; added differentiation between HAVE_AFTERIMAGE and XPM_BACKGROUND; began moving background handling functions under bgPixmap_t - work in progress
Simplify ifdef hell.
*** empty log message ***
Make --disable-iso14755 always disable the ISO 14755 overlay.
experimental change for mappingnotify fix
*** empty log message ***
*** empty log message ***
*** empty log message ***
TRANSPARENT => ENABLE_TRANSPARENCY rename to avoid symbol conflict on solaris..
less rough skipscroll
initial rough-cut skipscroll
*** empty log message ***
*** empty log message ***
*** empty log message ***
- document some new bugs. - document changes. - improve configure for afterimage. - fix type. - some indenting.
add iso14755_52 resource to disable iso14755 5.2.
added preliminary support to use libAfterImage for background pixmap loading and rendering of transparency effects including blending of pixmap over background using several methods, and gaussian blurr of the transparency background
*** empty log message ***
*** empty log message ***
remove OPTION macro
*** empty log message ***
*** empty log message ***
thanks for mentioning this on time
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.