Thorsten Ball
8c58bf222d
gtk: move logic of splitting surface in a tab to Tab
2023-11-30 21:43:39 -08:00
Thorsten Ball
9ddf097a03
gtk: Refactor how a new split is created
2023-11-30 21:43:38 -08:00
Thorsten Ball
0add9de0eb
gtk: handle closing of surfaces with sibling being a Paned
2023-11-30 21:43:38 -08:00
Thorsten Ball
142a2f4cb0
gtk: refactor how Paned is created
2023-11-30 21:43:38 -08:00
Thorsten Ball
19f7b37bb3
gtk: move Child/Parent/Position into same file
2023-11-30 21:43:38 -08:00
Thorsten Ball
5e789bf152
gtk: allow splitting when already split
2023-11-30 21:43:38 -08:00
Thorsten Ball
2ed841145b
gtk: take direction into account when creating a new split
2023-11-30 21:43:38 -08:00
Thorsten Ball
98a5016598
gtk: simplify code when creating new split
2023-11-30 21:43:38 -08:00
Thorsten Ball
d88898fc61
gtk: get 1st version of GTK splits working
2023-11-30 21:43:37 -08:00
Nathan Fisher
aba1b85503
Add Parent
and Child
types for tracking splits; Add methods for
...
adding start and end children in `Paned` widget;
2023-11-30 21:41:34 -08:00
Mitchell Hashimoto
eac1731d9d
apprt/gtk: translate modifier-only presses to proper modifier state
2023-11-29 20:37:56 -08:00
Mitchell Hashimoto
2ce3db7dc2
apprt/gtk: set default cursor to be "text" (ibeam)
...
Fixes #933
On startup, we'd set the cursor to "text" but we wouldn't store that as
our cursor so when the mouse was unhidden, we'd go back to "default".
This PR changes it so that on surface startup we set and store the
"text" cursor so as the cursor hides/shows it reverts to the proper
value.
2023-11-21 17:10:44 -08:00
Mitchell Hashimoto
f2c1e18647
apprt/gtk: support IME popups such as Asian language input
...
Fixes #882
This hooks up all the GTK.IMContext things properly so that we support
switching input methods, popups, etc. This should improve our support
for asian languages, emoji input, etc.
2023-11-20 18:08:23 -08:00
Mitchell Hashimoto
080789957a
Merge pull request #903 from mitchellh/macos-update
...
Custom Shaders (Metal and OpenGL)
2023-11-17 22:06:38 -08:00
Mitchell Hashimoto
f2513e0825
Merge pull request #876 from gpanders/notifications
...
Add support for desktop notifications
2023-11-17 21:57:09 -08:00
Mitchell Hashimoto
389712a698
renderer/opengl: switch to new update vs draw
2023-11-17 21:50:34 -08:00
Tim Culverhouse
caf2252144
gtk: implement desktop notifications
2023-11-17 12:59:23 -06:00
Gregory Anders
5290070be9
clipboard: add Clipboard variant for primary clipboard
...
In practice, the primary and selection clipboards are treated exactly
the same, but this allows OSC 52 sequences to use either 's' or 'p' as
the clipboard target.
2023-11-16 16:35:48 -06:00
Mitchell Hashimoto
ad24e5e687
renderer/opengl: use new preedit format
2023-11-15 09:59:08 -08:00
Mitchell Hashimoto
2489ef4c13
stylistic tweaks
2023-11-11 15:15:52 -08:00
Gregory Anders
960a1bb091
gtk: implement OSC 52 prompts
2023-11-10 23:12:39 -05:00
Gregory Anders
86245ff0cf
macos: add option to prompt user for confirmation on OSC 52 commands
2023-11-10 23:12:39 -05:00
Tim Culverhouse
49fb5c8688
gtk(mouse): use "text" enum as default value
...
Use the .text field of the enum as the default value of the mouse shape
instead of renaming .default. Store the default value as the current
value for use in subsequent commits
2023-11-06 14:36:57 -08:00
Mitchell Hashimoto
ab9a9b6eb1
apprt/gtk: copy change for unsafe paste window
2023-11-04 11:24:48 -07:00
David Rubin
44073e4c98
add basic functionality
2023-11-03 10:58:56 -07:00
Mitchell Hashimoto
e188aba7f4
apprt/gtk: if no parent is set on new window, do not inherit wd
2023-10-30 08:50:58 -07:00
Mitchell Hashimoto
c2adf22858
apprt/gtk: comment on what is going on with keyval mapping
2023-10-28 08:42:35 -07:00
Vlad Pănăzan
6b7dd1479d
apprt/gtk: handle non-unicode keyvals
2023-10-28 15:35:16 +02:00
Mitchell Hashimoto
25e3b21eae
apprt/gtk: comment about future API
2023-10-27 15:09:52 -07:00
Mitchell Hashimoto
b985b28918
apprt/gtk: use gtk widget scale to get content scale
2023-10-27 15:03:41 -07:00
Vlad Pănăzan
ffaa7e11e2
apprt/gtk: handle surface scale changes
2023-10-27 23:27:53 +02:00
Gregory Anders
2ee80a52df
macos: set window resizeIncrements when cell size changes
...
The resizeIncrements property is only modified when the cell size of the
focused window changes. If two splits have the same cell size then the
property is not modified when focusing between the two splits.
2023-10-26 20:27:58 -05:00
Mitchell Hashimoto
5a299e14e4
all threads are notified of inspector state, trigger render
2023-10-24 15:27:15 -07:00
Mitchell Hashimoto
afa08ffc02
initial work on basic inspector information
2023-10-24 15:27:15 -07:00
Mitchell Hashimoto
522d6b8ba1
apprt/gtk: destory the inspector properly on close
2023-10-24 15:27:15 -07:00
Mitchell Hashimoto
199e1cae29
apprt/gtk: surface has inspector state
2023-10-24 15:27:15 -07:00
Mitchell Hashimoto
769e7df675
apprt/gtk: implement default window size
2023-09-30 21:41:17 -07:00
Mitchell Hashimoto
abf43ddfcc
apprt/gtk: change default cursor to text
2023-09-30 15:46:03 -07:00
Mitchell Hashimoto
56b0cb51d5
apprt/gtk: previous_tab/next_tab action do not consume if there are no tabs
2023-09-29 22:12:38 -07:00
Tim Culverhouse
4f2d67d8f3
gtk(input): fix value used for lowercase lower_unicode
...
When converting keyval to the unshifted version, gdk_keyval_to_lower
returns a keyval type, not a unicode value. Convert this to unicode
before assigning to keyval_unicode_unshifted.
This fixes a bug where the incorrect keycode is sent in alternate
layouts with kitty keyboard on linux.
2023-09-29 06:36:03 -05:00
Mitchell Hashimoto
8c4d25050a
apprt/gtk: detect keyboard modifier state for mouse events
2023-09-26 12:37:59 -07:00
Mitchell Hashimoto
1f7d567f29
apprt/gtk: use gtk_keyval_to_lower to get unshifted
...
map_keycode was not respecting the keyboard layout!
2023-09-19 17:44:18 -07:00
Mitchell Hashimoto
7748390a7e
apprt/gtk: async clipboard
2023-09-19 10:53:45 -07:00
Mitchell Hashimoto
dcf615022e
apprt/gtk: key file for logic related to keys
2023-09-18 14:27:05 -07:00
Mitchell Hashimoto
f7272d506e
apprt/gtk: handle scenario where OpenGL area becomes unrealized
2023-09-16 09:38:28 -07:00
Mitchell Hashimoto
d5036e78f4
apprt/gtk: refactor into separate files
2023-09-16 08:28:49 -07:00