147 Commits

Author SHA1 Message Date
Kovid Goyal
40b9049deb
Move the kitty OpenGL API into its own compilation unit 2019-07-12 15:29:48 +05:30
Kovid Goyal
15e8f6ad8a
Another fix to the scissor for rendering the cell area
With a cyan background it becomes apparent that the width/height are one
pixel too small
2019-06-12 10:37:20 +05:30
Kovid Goyal
a5aca35f1c
Simplify and document the operation of the cell fragment shader
Also get rid of the unneccessary double bg_alpha followed by divide by
alpha step when rendering interleaved and premult
2019-06-12 10:22:47 +05:30
Kovid Goyal
020c1311ca
When resizing and only a single window is present in the current layout, use that window's background color to fill in the blank areas. 2019-05-29 09:01:57 +05:30
Kovid Goyal
4fff84b4b9
Add void to all function declarations for functions that take no arguments
Micro-optimization for some architectures. Enforced via
-Wstrict-prototypes
2019-05-13 11:04:21 +05:30
Kovid Goyal
6037167336
Allow controlling the ligature strategy dynamically, per window
Fixes #1574
2019-04-27 22:05:33 +05:30
Luflosi
d8eeed2296
Convert HTTP URLs to HTTPS URLs where possible 2019-04-24 01:27:24 +02:00
Kovid Goyal
934336e642
Allow disabling ligatures always 2019-04-20 08:25:44 +05:30
Kovid Goyal
fc1a8351b0
Dont use a wide cursor in beam an unfocused modes
Fixes #1486
2019-03-20 19:57:59 +05:30
Luflosi
999a6a288c
Do not render ligatures under cursor 2019-03-20 01:35:03 +01:00
Kovid Goyal
8b5f02bb0b
Fix shader invocation for cells output during resize 2019-03-04 19:54:10 +05:30
Kovid Goyal
11522ccc92
Initial code to show window size in cells while resizing 2019-03-04 19:54:10 +05:30
Kovid Goyal
01ed1e1604
Move initial window blanking to before showing the window 2019-02-25 15:07:03 +05:30
Luflosi
4711e10df2
Let all fatal messages begin with an upper case character 2019-02-17 22:43:10 +01:00
Luflosi
0e2a5c63c6
Convert some tabs to spaces 2019-02-02 22:08:32 +01:00
Kovid Goyal
c33c88b2c6
Ignore background_opacity if could not make window semi-transparent
Should prevent bug reports like #1334
2019-01-27 08:16:07 +05:30
Kovid Goyal
f8ebba3954
Fix changing cursor_text_color via remote control not working
Fixes #1229
2018-12-16 17:12:49 +05:30
Kovid Goyal
235bcacc7b
Make the buffer clearing more robust
Now happens immediately after the buffer is swapped. Fixes #1104
2018-11-13 20:59:39 +05:30
Kovid Goyal
21d586cc86
macOS: Fix resizing semi-transparent windows causing the windows to be invisible during the resize
Fixes #941
Workaround for  https://github.com/glfw/glfw/issues/1251
2018-09-12 10:44:24 +05:30
Luflosi
1d91edfb00
dont -> don't 2018-08-29 03:18:25 +02:00
Kovid Goyal
6e34a7559b
Fix one-pixel line appearing at window edges at some window sizes when displaying images with background opacity enabled
Fixes #741
2018-08-12 07:22:25 +05:30
Kovid Goyal
6ed9dccde2
Remove unused parameter 2018-07-24 13:51:45 +05:30
Kovid Goyal
490ae248f8
Render all cursor shapes in the cell shader 2018-07-19 14:05:15 +05:30
Kovid Goyal
2c27316c4a
Get rid of the cursor program
Cursors will now be drawn in the cell program using a sprite
2018-07-19 12:46:25 +05:30
Kovid Goyal
c49dd12855
Pass in cursor shape to cell shader 2018-07-19 12:13:39 +05:30
Kovid Goyal
6a909e0700
Get rid of the last branch in the cell shader 2018-07-19 10:56:28 +05:30
Kovid Goyal
e55cae6192
Fix kitty @ set-colors not working with the window border colors
Fixes #623
2018-06-11 09:03:24 +05:30
Kovid Goyal
6c72c93b02
Fix inactive_text_alpha also applying to the tab bar
Fixes #612
2018-06-07 20:19:29 +05:30
Robert Ricci
8e84b21452 Re-order includes for "_POSIX_C_SOURCE"
One FreeBSD, the build was getting errors about _POSIX_C_SOURCE
being redefined. The fix for this is to make sure that Python.h
gets included before any system libraries.
2018-06-02 11:26:02 -06:00
Kovid Goyal
8dea5b3e3e
Reduce data sent to GPU per draw by 30%
Split up the Cell structure into a CPUCell and a GPUCell. Only the
GPUCell part needs to be sent to the GPU. Should make kitty use even
less system resources and make a performance difference on systems where
the GPU bandwidth is constrained.

Also allows adding more CPU only data in the future without affecting
GPU bandwidth. For example, hyperlinks or more combining characters.
2018-05-27 21:25:09 +05:30
Kovid Goyal
ed44515318
All tests pass 2018-05-27 12:37:05 +05:30
Kovid Goyal
523aadaa3b
Refactor font group handling
Allow kitty to manage multiple groups of fonts with different cell
sizes. Will eventually allow kitty to have different font sizes/dpi per
OSWindow
2018-05-27 12:37:05 +05:30
Kovid Goyal
c0f790c928
Add a remote command to control window opacity
Fixes #569
2018-05-23 08:13:37 +05:30
Kovid Goyal
7282d8edc1
Add an option to control how much dimming SGR dim does 2018-05-20 11:00:13 +05:30
Kovid Goyal
f2afba2ef4
Change the window border color if a bell occurs in an unfocused window. Can be disabled by setting the bell_border_color to be the same as the inactive_border_color. 2018-05-02 22:02:45 +05:30
James McCoy
cf678d8179
Remove unnecessary <sys/sysctl.h> include
The code that required this include was removed in
66803e6873c9f8df1a75265aedc0670fce4411be, and the include is causing
build failures for some of Debian's architectures.
2018-04-19 19:14:40 -04:00
Kovid Goyal
32caea4197
Better error message for unknown uniform in cursor program 2018-04-12 09:11:43 +05:30
Kovid Goyal
faac8649e4
Fix a regression that broke visual bell and invert screen colors escape code. Fixes #419 2018-03-27 10:46:26 +05:30
Kovid Goyal
527255e3a1
Fix compilation with gcc 8
Apparently some nitwit Linux distros have made an unreleased compiler
their default compiler. Fixes #376

Fixes various new warnings that GCC 8 issues
2018-03-12 10:38:12 +05:30
Kovid Goyal
c7506496da
Unify error logging between python and C 2018-03-04 11:55:47 +05:30
Kovid Goyal
2913c1aedc
Change the color of the padding and margins to match the current background color of the window, when only a single window is visible.
Fixes #323
2018-02-20 09:43:49 +05:30
Kovid Goyal
0c7d51dd9d
Avoid unnecessary draw calls with multiple OS Windows
Do not ask the GPU to draw and swap buffers for OS Windows that are not
dirtied. See #313
2018-02-06 19:32:24 +05:30
Kovid Goyal
b01c3483de
Add an option to fade text in inactive windows
Fixes #256
2017-12-28 10:36:48 +05:30
Kovid Goyal
72a1eb237d
Fix regression that broke drawing of hollow cursor when window loses focus
Fixes #255
2017-12-27 07:15:48 +05:30
Kovid Goyal
0fcce6ec58
Remove trailing whitespace from native code files 2017-12-20 08:44:47 +05:30
Kovid Goyal
433640de84
Support running on the "low power" GPU on dual GPU macOS machines
Fixes #136
2017-12-14 06:14:22 +05:30
Kovid Goyal
95683c658b
When hovering over a URL, highlight the URL fully even if it continues over multiple lines. Note that URL detection has not changed. A URL will be detected only if the mouse hovers over the line containing the start of the URL. 2017-12-13 11:11:13 +05:30
Kovid Goyal
9cda51b5a8
Store sprites in an RGBA texture
Needed to support color emoji
2017-12-09 12:01:42 +05:30
Kovid Goyal
466d96c167
Remove spurious call to Py_DECREF 2017-12-06 10:13:57 +05:30
Kovid Goyal
ed9b332da5
Add an option to control the underline style for highlighting URLs on mouse over 2017-12-05 12:28:10 +05:30