Commit graph

132 commits

Author SHA1 Message Date
Johan Malm
bca57213a0 Remove min/max macros
...and replace with a local MAX macro, because:

- They contain a ({}) construct which is a GNU extension and that's
  against Drew's coding style
- min() is not used anyway
- MAX() clashes with cairo's macro, so best to not add this in labwc.h
2021-11-26 19:16:00 +00:00
John Lindgren
c01d1f124c Basic support for Move action
- Add Move as a default mouse binding for a Titlebar Press action
- Remove the hard-coded handling in cursor_button()

Example config snippet:

    <mouse>
      <context name="Titlebar">
        <mousebind button="Left" action="Press">
          <action name="Focus"/>
          <action name="Raise"/>
          <action name="Move"/>
        </mousebind>
      </context>
    </mouse>
2021-11-26 18:25:04 +00:00
ARDiDo
6698ca7300 HiDPI: send enter and leave events to views when switching monitors 2021-11-24 17:33:10 -05:00
ARDiDo
1d92404108 HiDPI: send output_enter events to views when they open 2021-11-24 17:33:10 -05:00
ARDiDo
aa9720f627 Add support for basic idle and idle inhibitor protocols 2021-11-22 21:58:07 +00:00
Jan Beich
3e5458fa24 server: chase swaywm/wlroots@fdf3169b41
ld: error: undefined symbol: wlr_backend_get_renderer
>>> referenced by output.c
>>>               labwc.p/src_output.c.o:(render_rect)
>>> referenced by output.c
>>>               labwc.p/src_output.c.o:(render_rect)
>>> referenced by output.c
>>>               labwc.p/src_output.c.o:(render_texture)
>>> referenced 5 more times

Based on 5865af75cf
Based on a6538ced35
2021-11-21 07:52:19 +00:00
Dima Krasner
04450b5e4d build: fix name collision with wlroots, when linking statically 2021-11-08 19:10:37 +00:00
ARDiDo
91a9f1dec9 resistance: remove bool, add resistance.h + license 2021-10-26 21:15:13 +01:00
ARDiDo
4d5b4be608 resistance: improve readability 2021-10-26 21:15:13 +01:00
ARDiDo
ac58ab10a7 resize resistance support 2021-10-26 21:15:13 +01:00
ARDiDo
a24e17dea7 Improve expandibility 2021-10-26 21:15:13 +01:00
Joshua Ashton
0a7f1b51f7 xwayland: Implement set_decorations
Fixes games going between borderless and normal windowed modes.

Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-10-20 18:49:02 +01:00
Joshua Ashton
89f09567f5 xdg-deco: Respect decoration requests properly
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-10-20 18:49:02 +01:00
Johan Malm
806fdb08bd view: add view_get_string_prop() 2021-10-18 20:01:10 +01:00
Joshua Ashton
846ccb9eb9 action: Implement shift to go backwards in OSD
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-10-18 17:28:34 +01:00
ARDiDo
f5072151a9 add pointer constraints 2021-10-17 22:32:25 +01:00
Joshua Ashton
a6e1ee0a25 include: Add min/max helpers
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-10-17 19:49:05 +01:00
Joshua Ashton
8652f97887 view: Add view_min_size helper function
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-10-17 19:49:05 +01:00
Joshua Ashton
8e3108c032 action: Add 'SnapToEdge'
Implements snap-style edge snapping that works between multiple monitors.

Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-10-17 12:19:35 +01:00
Johan Malm
e2ae63a7cf xdg/wayland-shell: handle set_app_id and set_class events 2021-10-16 21:50:56 +01:00
Johan Malm
e140682528 view: call wlr_foreign_toplevel_handle_v1_set_app_id() on map
Fix issue #74

Add view-impl.c with view_impl_map() containing common code for xdg-shell
and xwayland-shell.
2021-10-16 21:26:57 +01:00
Johan Malm
4d44659c08 desktop: remove deprecated functions
- set_activated()
- desktop_set_focus_view_only()
2021-10-16 19:53:00 +01:00
Johan Malm
9a290feeea desktop: simplify interface for view raise/focus
Split desktop_focus_view() into the following two functions:
  - desktop_focus_and_activate_view()
  - desktop_raise_view()

Always call view_set_activated() rather than using the private
set_activated(). This keeps the code cleaner and ensures
wlr_foreign_toplevel_handle_v1_set_activated() is called.
2021-10-16 19:44:54 +01:00
Johan Malm
70144ac113 view: add view_set_activated()
Call wlr_foreign_toplevel_handle_v1_set_activated() from it in support of
issue #73
2021-10-16 19:24:26 +01:00
Johan Malm
597650b457 theme: add window_(in)active_label_text_color
Support both active and inactive colors for titlebar text
2021-10-15 21:35:41 +01:00
ARDiDo
d4e1791c88 Reconfigure inputs 2021-10-10 21:52:40 +01:00
Johan Malm
6a00166cff Merge branch 'master' of https://github.com/johanmalm/labwc 2021-10-04 06:24:34 +01:00
ARDiDo
6bf3bb97f5 implement basic drag and drop 2021-10-03 21:50:29 +01:00
Johan Malm
1e4598cdce s/desktop_view_at()/desktop_surface_and_view_at()/
Make is clearer what the function does.
2021-09-25 10:04:37 +01:00
Johan Malm
b5addb62e0 labwc.h: fix coding style 2021-09-22 20:24:02 +01:00
Johan Malm
119ef87373 s/focused_view()/desktop_focused_view() 2021-09-20 22:12:34 +01:00
Johan Malm
e4b51fc5e8 desktop.c: make topmost_mapped_view() private 2021-09-20 22:07:19 +01:00
bi4k8
815cd4aa46 define focused_view function and use it for keyboard actions 2021-09-20 21:14:24 +01:00
bi4k8
b7cce58f56 implement ToggleDecorations and ToggleFullscreen actions 2021-09-20 21:14:24 +01:00
Johan Malm
a9042e3cde Fix coding style following 824282dd 2021-08-25 19:59:49 +01:00
Johan Malm
824282dd2e
Merge pull request #54 from telent/lockdown
implement input_inhibit protocol, needed for swaylock
2021-08-24 21:56:13 +01:00
Johan Malm
7bfe350f25 view: fix impl->set_fullscreen() argument bug 2021-08-24 21:53:20 +01:00
Daniel Barlow
ab9838888d implement commented-out bit in seat_disinhibit_input 2021-08-24 21:24:08 +01:00
Johan Malm
645a8e46a6 Support fullscreen mode (issue #53) 2021-08-23 22:05:30 +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
Daniel Barlow
804384368c add support for primary selection 2021-08-18 23:42:56 +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
f857aea8f4 ssd: add application title to title bar 2021-08-07 09:35:53 +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
526ab1ae75 view: add view_toggle_maximize() 2021-08-02 16:49:41 +01:00
Johan Malm
82e47ac1f5 Remove src/common/log.c
Use wlr_log() instead
2021-07-23 21:15:55 +01:00
Johan Malm
22f5073ebd xdg: use "usable_area" when positioning view 2021-07-21 22:04:54 +01:00
Johan Malm
5e83ce6b46 Add view_move_to_edge() to header file 2021-07-20 20:24:39 +01:00