Johan Malm
645a8e46a6
Support fullscreen mode (issue #53 )
2021-08-23 22:05:30 +01:00
Daniel Barlow
eb2d0918ba
cleanup per PR review comments
2021-08-23 20:33:42 +01:00
Daniel Barlow
39b1d92f9b
implement input_inhibit protocol, needed for swaylock
...
this is in "it appears to work" state, though I blindly copy-pasted a little
more code than I'm happy with, so might benefit from a review
2021-08-22 21:30:42 +01:00
Johan Malm
5563cd1b20
foreign: handle output error gracefully
2021-08-22 19:14:15 +01:00
Johan Malm
b7573c8d36
rcxml: load default keybinds on <keyboard><default />
...
This is an addition to the openbox specification and provides a way to
keep config files simpler whilst allowing user-specific keybinds.
docs/rc.xml shows a simple config file with <default />
docs/rc.xml.full shows the full config
2021-08-22 19:09:31 +01:00
Johan Malm
93244cfbe1
rcxml: add some default keybinds
...
super-return - alacritty
alt-F4 - close window
super-a - toggle maximize
alt-arrow - move window to edge
2021-08-22 17:00:22 +01:00
Johan Malm
0aee42473b
view: update title width when resizing view
2021-08-22 14:35:34 +01:00
Johan Malm
a6eb29ad33
config: add <core><gap>
...
Specify the distance in pixels between views and output edges when using
movement actions such as MoveToEdge
2021-08-22 14:32:19 +01:00
Johan Malm
5cf4539827
output: fallback to other output modes if preferred mode fails
...
See sway@4cdc4ac6
Sometimes the preferred mode is not available due to hardware
constraints. In these cases it is better to fallback to lower modes than
to end up with a black screen.
2021-08-22 14:14:50 +01:00
Johan Malm
8c96c65018
ssd: refactor in preparation for making ssd_visible_box() private
...
Prepare to move code from output/render functions to ssd. We want
rendering functions to just render, not calculate decoration geometry
and such like.
2021-08-22 14:12:05 +01:00
Johan Malm
5f01c49b72
ssd: refactor and position title nearer left hand edge
...
Put title deco at the end of linked list to render it on top of corner
edges.
2021-08-22 14:06:11 +01:00
Johan Malm
ec5603dbd0
Merge pull request #49 from telent/primary-selection-gtk-workaround
...
workaround Gtk primary selection bug by changing order of globals
2021-08-21 11:38:22 +01:00
Johan Malm
c13a520673
ssd: handle font texture creation when view->width not yet set
2021-08-21 11:16:15 +01:00
Daniel Barlow
44082ad80a
workaround Gtk primary selection bug by changing order of globals
...
This makes primary selections work at least with Emacs (pgtk backend)
and Firefox. I haven't tested others.
2021-08-21 00:17:15 +01:00
Johan Malm
3990018bb9
config: support setting menu item font
...
In rc.xml, support
<font place="MenuItem">
<name></name>
<size></size>
</font>
2021-08-20 20:27:52 +01:00
Johan Malm
a668f6f73d
font: font_texture_create() support font size argument
2021-08-20 20:20:49 +01:00
Daniel Barlow
804384368c
add support for primary selection
2021-08-18 23:42:56 +01:00
Johan Malm
3efcfaf145
view: scale correctly in view_maximize()
2021-08-17 07:25:57 +01:00
Johan Malm
620cd84a8a
view: apply output scale in view_center()
2021-08-17 07:24:27 +01:00
Johan Malm
9e2af19caf
layer-shell: replace close() with destroy()
...
Update for the wlroots breaking change in
https://github.com/swaywm/wlroots/pull/3108
2021-08-16 07:18:08 +01:00
Johan Malm
77ade08158
osd: support 'alt-tab' on screen display
...
The osd window shows title, app_id/class and shell of all views that can
be cycled between.
2021-08-16 07:16:56 +01:00
Johan Malm
86c384b227
server: update view->margin after theme change
2021-08-11 21:04:22 +01:00
Johan Malm
dff6dba54b
theme: support different colored buttons
...
Add the following theme keys:
- window.active.button.iconify.unpressed.image.color
- window.active.button.max.unpressed.image.color
- window.active.button.close.unpressed.image.color
- window.inactive.button.iconify.unpressed.image.color
- window.inactive.button.max.unpressed.image.color
- window.inactive.button.close.unpressed.image.color
As far as I can tell, the openbox documentation does not mention the
entries listed above, but openbox does support them and some themes
do use them.
2021-08-11 20:58:35 +01:00
Johan Malm
9a9cd609f6
menu: fix breakage caused by f857aea8
2021-08-09 17:28:39 +01:00
Johan Malm
f857aea8f4
ssd: add application title to title bar
2021-08-07 09:35:53 +01:00
Johan Malm
5ecf0e1e7e
Make font_texture_create() more generic
...
Move font_texture_create() to font.c so it can be used for purposes other
than rendering the menu, for example server side decoration.
Refactor menu.c and menu.h to use this more generic font_texture_create()
2021-08-07 08:35:46 +01:00
Johan Malm
9cf0608aba
foreign: handle minimize request
2021-08-05 13:00:34 +01:00
Johan Malm
b4722d988e
foreign: handle maximize request
2021-08-05 12:52:42 +01:00
Johan Malm
042ea266a5
Add simple foreign toplevel implementation
2021-08-05 12:18:10 +01:00
Johan Malm
7dc4ae36ca
view: initialise x+y variables to handle edge case
2021-08-04 21:43:07 +01:00
Johan Malm
6a5deb628e
cursor: handle double click on title
2021-08-02 17:30:34 +01:00
Johan Malm
526ab1ae75
view: add view_toggle_maximize()
2021-08-02 16:49:41 +01:00
Johan Malm
d6376808b8
server: add missing header file
2021-08-02 16:45:49 +01:00
Johan Malm
2aeb4ee643
server: update ssd on re-configure
2021-07-30 19:42:56 +01:00
Johan Malm
fc542e6da1
cursor: simplify process_cursor_motion()
...
...by using wlr_xcursor_get_resize_name() instead of handling each
'resize_edge' case.
2021-07-30 14:26:54 +01:00
Johan Malm
1dc3059707
ssd: add support for interacting with bottom corners
2021-07-26 20:37:36 +01:00
Johan Malm
399322052b
ssd: add ssd_interactive_box()
...
...which is used by desktop_view_at() and ssd_at() to determine which
decoration part is under the cursor.
ssd_interactive_box() allows deocoration parts to extend outside the
visible regions, and therefore supports a wider 'resize-edges' area than
the border itself.
2021-07-26 20:06:52 +01:00
Johan Malm
82e47ac1f5
Remove src/common/log.c
...
Use wlr_log() instead
2021-07-23 21:15:55 +01:00
Johan Malm
20fd8f59a7
Remove info() and die()
2021-07-22 21:30:17 +01:00
Johan Malm
22f5073ebd
xdg: use "usable_area" when positioning view
2021-07-21 22:04:54 +01:00
Johan Malm
0eac290d54
Handle alt + cursor button outside view
2021-07-21 19:27:11 +01:00
Johan Malm
2b9c6a503c
view.c: assign struct rather than using memcpy
...
Suggested-by: @xerpi
2021-07-21 19:25:34 +01:00
Johan Malm
7bd2576138
theme: reset theme values on reconfigure
2021-07-20 21:27:41 +01:00
Johan Malm
5e83ce6b46
Add view_move_to_edge() to header file
2021-07-20 20:24:39 +01:00
Johan Malm
fa13f8f197
view: remove duplicate code
2021-07-20 20:06:26 +01:00
Johan Malm
49a73befdb
action: add 'MoveToEdge'
...
Currently only moves view to edges of outputs
Example keybind:
<keybind key="A-Left">
<action name="MoveToEdge">
<direction>left</direction>
</action>
</keybind>
2021-07-20 19:54:57 +01:00
Johan Malm
10264110f1
view: add view_output() and view_wlr_output()
2021-07-20 19:40:37 +01:00
Johan Malm
2e4f931469
rcxml: allow <theme><font> without place="" attribute
...
The construct below will set the font for all supported places. Currently
that's only ActiveWindow, but is likely to include InactiveWindow,
MenuHeader, MenuItem and OnScreenDisplay at some point.
<theme>
<font>
<name></name>
<size></size>
</font>
</theme>
2021-07-19 20:46:32 +01:00
Johan Malm
ec2c67338a
rcxml.c: survive incorrect keybind
2021-07-19 07:07:33 +01:00
Johan Malm
3bc379cc08
desktop: handle missing output safely
2021-07-19 07:06:36 +01:00