summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-11-12Pass TSM_VTE_INVALID for invalid UCS4 valuesHEADmasterDavid Herrmann1-2/+6
xkbcommon returns 0 for invalid ucs4 values. Unfortunately, this is a valid UCS4 code. That's why TSM requires us to pass TSM_VTE_INVALID instead. So add a short fixup to convert 0 to TSM_VTE_INVALID. We rely on xkbcommon to never return 0 for valid codes now. This seems unfortunate, but the API was broken right from the beginning. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-11-12Add page-wise scrollingDavid Herrmann1-0/+10
Hook up shift+PageUp/Down to page-wise scrolling. Otherwise, it's the same as line-wise scrolling. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-11-12Parse shift+Up/Down for scrollback bufferDavid Herrmann1-2/+44
Pass shift+Up/Down to the TSM screen layer so we get proper scrollback support. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-11-08Add selection supportDavid Herrmann2-2/+88
TSM provides selection support so all we need to do is hook up mouse movements and button clicks. No copy/paste is supported, yet. Will be added in a follow up. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-11-07Add --snap-size parameterDavid Herrmann1-1/+3
If --snap-size is given, we enable resize snapping to next cell-size. If not given, we take any size the user wants. Disable it by default. It's annoying! Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-11-07Add --show-dirty argumentDavid Herrmann1-2/+20
The new --show-dirty argument enables render-debugging and marks cells which got redrawn. This is very useful to debug libtsm ageing support. Apart from that, it's a very useless feature. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-11-07Draw paddingDavid Herrmann3-0/+21
We need to draw the padding-space around the main cells if our size is not a multiple of the cell size. We retrieve the default bg color via a new libtsm helper. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-11-07Set TERM to xterm-256colorDavid Herrmann1-0/+1
The default TERM for libtsm is xterm-256color. Use it! Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-11-07Start bash as login shellDavid Herrmann1-1/+1
Pass -l so bash runs as login-shell as usual. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-23Allow resetting FB-age and do so on resizeDavid Herrmann2-0/+7
Reset the FB age on resize and provide a helper to allow main wlterm to reset the FB-age for a whole redraw (can be used during font-change or similar). Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-23Add debug render-modeDavid Herrmann2-1/+48
If debugging is on for rendering, we draw a red rectangle around every cell we draw. It is a nice way to see which cells actually changed. Debugging only! Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-23Render only changed cellsDavid Herrmann3-13/+41
TSM has support for cell-ageing so render only cells that changed. Note that we still blit the buffer via cairo at the end, but this should be fast enough for any system. The actual rendering is often what causes performance-bottlenecks. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-23Correctly tell cairo about CPU buffer accessDavid Herrmann1-1/+2
We need to tell cairo to flush buffers before starting CPU access and afterwards mark it dirty. This is unlikely to be needed on mem-buffers, but we cannot rely on it so do it. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-23Run $SHELL or _PATH_BSHELL with -i instead of /bin/shDavid Herrmann1-1/+6
Try $SHELL first, then _PATH_BSHELL and path -i as default parameter (login shell) instead of /bin/sh. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-23render: adjust to new TSM ageing APIDavid Herrmann1-3/+2
Change our TSM calls to the new TSM ageing API. We don't make use of it, yet. We will support that in the future (if required). Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-23render: draw background correctly for wide-charsDavid Herrmann1-1/+1
If we have wide-chars, we need to draw the background as wide as the char. It's unlikely that we have to draw background only for wide-chars, but lets be safe and implement it correctly. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-22Add proper software rendererDavid Herrmann3-48/+271
cairo-rendering is horribly slow. Add a proper software renderer via shadow buffers so we get proper rendering speed. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-22Don't overwrite "decorated" flagDavid Herrmann1-1/+0
Let GTK draw the decorations. Until we figure out how to detect whether the WM wants CSD, we have to let gtk do it. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
2013-10-22Initial importDavid Herrmann12-0/+3077
Import the wlterm gtk-rewrite. It's meant to replace the old wlterm by using gtk+ instead of hardcoding wl-calls. There's still stuff missing, but the main terminal is already working quite well. Signed-off-by: David Herrmann <dh.herrmann@gmail.com>