mirror of
https://github.com/genodelabs/genode.git
synced 2025-05-22 02:07:47 +00:00
This patch adds the feature of moving and resizing windows by clicking anywhere within a window while the global window-management key is held. Depending on the position within the window, the click is interpreted as click on the title (when clicking at inner 50% of the window, or as a click on the border (when clicking at an area nearby the window boundary). This mode of interaction requires more flexibility of the handling of key sequences. The formerly hard-wired handling of the drag and drop as response to BTN_LEFT events does not suffice. Therefore, this patch moves the driving of the drag-and-drop state to the config level by introducing the actions "drag" and "drop" Fixes #5403
116 lines
4.6 KiB
Plaintext
116 lines
4.6 KiB
Plaintext
<config rules="rom">
|
|
<report rules="yes"/>
|
|
|
|
<rules>
|
|
<display name="primary"/>
|
|
<display name="secondary"/>
|
|
<display name="ternary"/>
|
|
|
|
<screen name="screen_1" display="primary"/>
|
|
<screen name="screen_2" display="primary"/>
|
|
<screen name="screen_3" display="primary"/>
|
|
<screen name="screen_4" display="secondary"/>
|
|
<screen name="screen_5" display="secondary"/>
|
|
<screen name="screen_6" display="secondary"/>
|
|
<screen name="screen_7" display="ternary"/>
|
|
<screen name="screen_8" display="ternary"/>
|
|
<screen name="screen_9" display="ternary"/>
|
|
<screen name="screen_0"/>
|
|
<assign label_prefix="" target="screen_1" xpos="any" ypos="any"/>
|
|
</rules>
|
|
|
|
<press key="KEY_SCREEN">
|
|
<press key="KEY_TAB" action="next_window">
|
|
<release key="KEY_TAB">
|
|
<release key="KEY_SCREEN" action="raise_window"/>
|
|
</release>
|
|
<release key="KEY_SCREEN" action="raise_window"/>
|
|
</press>
|
|
<press key="KEY_LEFTSHIFT">
|
|
<press key="KEY_TAB" action="prev_window">
|
|
<release key="KEY_TAB">
|
|
<release key="KEY_SCREEN" action="raise_window"/>
|
|
</release>
|
|
</press>
|
|
</press>
|
|
</press>
|
|
|
|
<press key="KEY_SCREEN">
|
|
<press key="KEY_LEFTSHIFT" action="pick_up">
|
|
<press key="KEY_1" action="screen" target="screen_1"/>
|
|
<press key="KEY_2" action="screen" target="screen_2"/>
|
|
<press key="KEY_3" action="screen" target="screen_3"/>
|
|
<press key="KEY_4" action="screen" target="screen_4"/>
|
|
<press key="KEY_5" action="screen" target="screen_5"/>
|
|
<press key="KEY_6" action="screen" target="screen_6"/>
|
|
<press key="KEY_7" action="screen" target="screen_7"/>
|
|
<press key="KEY_8" action="screen" target="screen_8"/>
|
|
<press key="KEY_9" action="screen" target="screen_9"/>
|
|
<press key="KEY_0" action="screen" target="screen_0"/>
|
|
<release key="KEY_LEFTSHIFT" action="place_down"/>
|
|
</press>
|
|
<press key="KEY_1" action="screen" target="screen_1"/>
|
|
<press key="KEY_2" action="screen" target="screen_2"/>
|
|
<press key="KEY_3" action="screen" target="screen_3"/>
|
|
<press key="KEY_4" action="screen" target="screen_4"/>
|
|
<press key="KEY_5" action="screen" target="screen_5"/>
|
|
<press key="KEY_6" action="screen" target="screen_6"/>
|
|
<press key="KEY_7" action="screen" target="screen_7"/>
|
|
<press key="KEY_8" action="screen" target="screen_8"/>
|
|
<press key="KEY_9" action="screen" target="screen_9"/>
|
|
<press key="KEY_0" action="screen" target="screen_0"/>
|
|
</press>
|
|
|
|
<press key="KEY_SCREEN" action="release_grab">
|
|
<press key="KEY_ENTER" action="toggle_fullscreen"/>
|
|
</press>
|
|
|
|
<press key="KEY_SCREEN" action="free_arrange">
|
|
<press key="BTN_LEFT" action="drag">
|
|
<release key="BTN_LEFT" action="drop"/>
|
|
<press key="KEY_1" action="screen" target="screen_1"/>
|
|
<press key="KEY_2" action="screen" target="screen_2"/>
|
|
<press key="KEY_3" action="screen" target="screen_3"/>
|
|
<press key="KEY_4" action="screen" target="screen_4"/>
|
|
<press key="KEY_5" action="screen" target="screen_5"/>
|
|
<press key="KEY_6" action="screen" target="screen_6"/>
|
|
<press key="KEY_7" action="screen" target="screen_7"/>
|
|
<press key="KEY_8" action="screen" target="screen_8"/>
|
|
<press key="KEY_9" action="screen" target="screen_9"/>
|
|
<press key="KEY_0" action="screen" target="screen_0"/>
|
|
</press>
|
|
<release key="KEY_SCREEN" action="strict_arrange"/>
|
|
</press>
|
|
|
|
<press key="BTN_LEFT" action="drag">
|
|
<release key="BTN_LEFT" action="drop"/>
|
|
</press>
|
|
|
|
<!-- support switching screens while dragging a window -->
|
|
<press key="BTN_LEFT">
|
|
<press key="KEY_1" action="screen" target="screen_1"/>
|
|
<press key="KEY_2" action="screen" target="screen_2"/>
|
|
<press key="KEY_3" action="screen" target="screen_3"/>
|
|
<press key="KEY_4" action="screen" target="screen_4"/>
|
|
<press key="KEY_5" action="screen" target="screen_5"/>
|
|
<press key="KEY_6" action="screen" target="screen_6"/>
|
|
<press key="KEY_7" action="screen" target="screen_7"/>
|
|
<press key="KEY_8" action="screen" target="screen_8"/>
|
|
<press key="KEY_9" action="screen" target="screen_9"/>
|
|
<press key="KEY_0" action="screen" target="screen_0"/>
|
|
<press key="KEY_SCREEN">
|
|
<press key="KEY_1" action="screen" target="screen_1"/>
|
|
<press key="KEY_2" action="screen" target="screen_2"/>
|
|
<press key="KEY_3" action="screen" target="screen_3"/>
|
|
<press key="KEY_4" action="screen" target="screen_4"/>
|
|
<press key="KEY_5" action="screen" target="screen_5"/>
|
|
<press key="KEY_6" action="screen" target="screen_6"/>
|
|
<press key="KEY_7" action="screen" target="screen_7"/>
|
|
<press key="KEY_8" action="screen" target="screen_8"/>
|
|
<press key="KEY_9" action="screen" target="screen_9"/>
|
|
<press key="KEY_0" action="screen" target="screen_0"/>
|
|
</press>
|
|
</press>
|
|
|
|
</config>
|