Warning, /plasma/kwin/doc/windowbehaviour/index.docbook is written in an unsupported language. File is not indexed.

0001 <?xml version="1.0" ?>
0002 <!DOCTYPE article PUBLIC "-//KDE//DTD DocBook XML V4.5-Based Variant V1.1//EN"
0003 "dtd/kdedbx45.dtd" [
0004 <!ENTITY % addindex "IGNORE">
0005 <!ENTITY % English "INCLUDE" > <!-- change language only here -->
0006 ]>
0007 
0008 <!--copy from r308626 Tue May 4 17:11:51 2004 UTC -->
0009 
0010 <article id="windowbehaviour" lang="&language;">
0011 <articleinfo>
0012 <title>Window Behavior</title>
0013 <authorgroup>
0014 <author>&Mike.McBride; &Mike.McBride.mail;</author>
0015 <author>&Jost.Schenck; &Jost.Schenck.mail;</author>
0016 <author><firstname>Natalie</firstname><surname>Clarius</surname><email>natalie_clarius@yahoo.de</email></author>
0017 <!-- TRANS:ROLES_OF_TRANSLATORS -->
0018 </authorgroup>
0019 
0020 <date>2022-08-31</date>
0021 <releaseinfo>Plasma 5.26</releaseinfo>
0022 
0023 <keywordset>
0024 <keyword>KDE</keyword>
0025 <keyword>KControl</keyword>
0026 <keyword>system settings</keyword>
0027 <keyword>actions</keyword>
0028 <keyword>window</keyword>
0029 <keyword>window placement</keyword>
0030 <keyword>window size</keyword>
0031 <keyword>window management</keyword>
0032 <keyword>window behavior</keyword>
0033 <keyword>focus</keyword>
0034 <keyword>raise</keyword>
0035 <keyword>titlebar</keyword>
0036 <keyword>screen</keyword>
0037 <keyword>snap</keyword>
0038 </keywordset>
0039 </articleinfo>
0040 
0041 <sect1 id="window-behavior">
0042 <title>Window Behavior</title>
0043 
0044 <para> In the upper part of this control module you can see several
0045 tabs: <guilabel>Focus</guilabel>, <guilabel>Titlebar Actions</guilabel>,
0046 <guilabel>Window Actions</guilabel>, <guilabel>Movement</guilabel> and
0047 <guilabel>Advanced</guilabel>. In the
0048 <guilabel>Focus</guilabel> panel you can configure how windows gain or
0049 lose focus, &ie; become active or inactive. Using
0050 <guilabel>Titlebar Actions</guilabel> and <guilabel>Window Actions</guilabel>
0051 you can configure how titlebars and windows react to
0052 mouse clicks. <guilabel>Movement</guilabel> allows you to configure how
0053 windows move and place themselves when started. The
0054 <guilabel>Advanced</guilabel> options cover some specialized options
0055 like <quote>window shading</quote>.
0056 </para>
0057 
0058 <note>
0059 <para>
0060 Please note that the configuration in this module will not take effect
0061 if you do not use &plasma;'s native window manager, &kwin;. If you do use a
0062 different window manager, please refer to its documentation for how to
0063 customize window behavior.
0064 </para>
0065 </note>
0066 
0067 <sect2 id="focus">
0068 <title>Focus</title>
0069 
0070 <para>
0071 The <quote>focus</quote> of the workspace refers to the window which the
0072 user is currently working on. The window with focus is often referred to
0073 as the <quote>active window</quote>.
0074 </para>
0075 
0076 <para>
0077 Focus does not necessarily mean the window is the one at the
0078 front &mdash; this is referred to as <quote>raised</quote>, and
0079 although this is configured here as well, focus and raising of windows
0080 are configured independently.
0081 </para>
0082 
0083 <sect3 id="focus-focuspolicy">
0084 <title>Windows activation policy</title>
0085 
0086 <para>
0087 There are six methods &kwin; can use to determine the current focus:
0088 </para>
0089 
0090 <variablelist>
0091 
0092 <varlistentry>
0093 <term><guilabel>Click to focus</guilabel></term>
0094 <listitem>
0095 <para>
0096 A window becomes active when you click into it.
0097 This behaviour is common on other operating systems and likely what you want.</para>
0098 </listitem>
0099 </varlistentry>
0100 
0101 <varlistentry>
0102 <term><guilabel>Click to focus (mouse precedence)</guilabel></term>
0103 <listitem>
0104 <para>
0105 This is mostly the same as <guilabel>Click to focus</guilabel>.
0106 If an active window has to be chosen by the system
0107 (&eg; because the currently active one was closed) 
0108 the window under the mouse is the preferred candidate.
0109 Unusual, but possible variant of <guilabel>Click to focus</guilabel>.
0110 </para>
0111 </listitem>
0112 </varlistentry>
0113 
0114 <varlistentry>
0115 <term><guilabel>Focus follows mouse</guilabel></term>
0116 <listitem>
0117 <para>
0118 Moving the mouse pointer actively over a normal window activates it. New
0119 windows such as the mini command line invoked with
0120 <keycombo action="simul">&Alt;<keycap>F2</keycap></keycombo> will receive the focus,
0121 without you having to point the mouse at them explicitly.
0122 &eg; windows randomly appearing under the mouse will not gain the focus.
0123 Focus stealing prevention takes place as usual.
0124 Think as <guilabel>Click to focus</guilabel> just without having to actually click.
0125 </para>
0126 <para>
0127 In other window managers, this is sometimes known as <quote>Sloppy focus
0128 follows mouse</quote>.
0129 </para>
0130 </listitem>
0131 </varlistentry>
0132 
0133 <varlistentry>
0134 <term><guilabel>Focus follows mouse (mouse precedence)</guilabel></term>
0135 <listitem>
0136 <para>
0137 This is mostly the same as <guilabel>Focus follows mouse</guilabel>.
0138 If an active window has to be chosen by the system
0139 (&eg; because the currently active one was closed) 
0140 the window under the mouse is the preferred candidate.
0141 Choose this, if you want a hover controlled focus.
0142 </para>
0143 </listitem>
0144 </varlistentry>
0145 
0146 <varlistentry>
0147 <term><guilabel>Focus under mouse</guilabel></term>
0148 <listitem>
0149 <para>
0150 The window that happens to be under the mouse pointer becomes active. If
0151 the mouse is not over a window (for instance, it's over the desktop wallpaper) the last
0152 window that was under the mouse has focus. New windows such as the mini
0153 command line invoked with <keycombo action="simul">&Alt;<keycap>F2</keycap></keycombo> will
0154 not receive the focus, you must move the mouse over them to type.
0155 </para>
0156 </listitem>
0157 </varlistentry>
0158 
0159 <varlistentry>
0160 <term><guilabel>Focus strictly under mouse</guilabel></term>
0161 <listitem>
0162 <para>
0163 Similar to <guilabel>Focus under mouse</guilabel>, but even more
0164 strict with its interpretation. Only the window under the mouse pointer is
0165 active. If the mouse pointer is not over a window, no window has focus.
0166 New windows such as the mini command line invoked with
0167 <keycombo action="simul">&Alt;<keycap>F2</keycap></keycombo> will not receive the focus,
0168 you must move the mouse over them to type. 
0169 </para>
0170 </listitem>
0171 </varlistentry>
0172 
0173 </variablelist>
0174 
0175 <note>
0176 <para>
0177 Note that <guilabel>Focus under mouse</guilabel> and
0178 <guilabel>Focus strictly under mouse</guilabel> prevent certain
0179 features, such as <guilabel>Focus stealing prevention</guilabel> and the 
0180 <keycombo action="simul">&Alt;&Tab;</keycombo>
0181 walk-through-windows dialog, from working properly.
0182 </para>
0183 </note>
0184 
0185 </sect3>
0186 
0187 <sect3 id="focus-focusdelay">
0188 <title>Delay focus by</title>
0189 
0190 <para>
0191 This is the delay after which the window the mouse pointer is over will automatically receive focus.
0192 </para>
0193 
0194 </sect3>
0195 
0196 <sect3 id="focus-focusstealing">
0197 <title>Focus stealing prevention</title>
0198 
0199 <para>
0200 This option specifies how much KWin will try to prevent unwanted focus 
0201 stealing caused by unexpected activation of new windows.
0202 </para> 
0203 
0204 <variablelist>
0205 
0206 <varlistentry>
0207 <term><guilabel>None</guilabel></term>
0208 <listitem><para>Prevention is turned off and new windows always become activated.</para></listitem>
0209 </varlistentry>
0210 
0211 <varlistentry>
0212 <term><guilabel>Low</guilabel></term>
0213 <listitem><para>Prevention is enabled; when some window does not have support 
0214 for the underlying mechanism and KWin cannot reliably decide whether to activate 
0215 the window or not, it will be activated. This setting may have both worse and better 
0216 results than the medium level, depending on the applications.</para></listitem>
0217 </varlistentry>
0218 
0219 <varlistentry>
0220 <term><guilabel>Medium</guilabel></term>
0221 <listitem><para>Prevention is enabled.</para></listitem>
0222 </varlistentry>
0223 
0224 <varlistentry>
0225 <term><guilabel>High</guilabel></term>
0226 <listitem><para>New windows get activated only 
0227 if no window is currently active or if they belong to the currently active 
0228 application. This setting is probably not really usable when not using mouse 
0229 focus policy.</para></listitem>
0230 </varlistentry>
0231 
0232 <varlistentry>
0233 <term><guilabel>Extreme</guilabel></term>
0234 <listitem><para>All windows must be explicitly activated by the user.</para></listitem>
0235 </varlistentry>
0236 
0237 </variablelist>
0238 
0239 <para>
0240 Windows that are prevented from stealing focus are marked as demanding 
0241 attention, which by default means their taskbar entry will be highlighted. 
0242 This can be changed in the Notifications control module.
0243 </para>
0244 
0245 </sect3>
0246 
0247 <sect3 id="focus-raisingwindow">
0248 <title>Raising windows</title>
0249 
0250 <para>
0251 Besides receiving focus, you can also control under which conditions windows get raised, &ie; brought to the front.
0252 </para>
0253 
0254 <para>
0255 You should make sure that at least one of the raising options is enabled, otherwise windows will not be raised at all.
0256 </para>
0257 
0258 <para>
0259 <guilabel>Click raises active window</guilabel> will bring a window to the front when it is clicked on. This is enabled by default with a click to focus policy.
0260 </para>
0261 
0262 <para>
0263 By activating <guilabel>Raise on hover, delayed by</guilabel> you can alternatively bring a window to the front if the mouse pointer is over that window for a specified period of time. You can determine the delay for this option by using the spin box control. This auto-raising option is only available with a hover to focus policy.
0264 </para>
0265 
0266 <tip>
0267 <para>
0268 Setting the delay too short will cause a rapid fire changing of
0269 windows, which can be quite distracting. Most people will like a delay
0270 of 100-300 ms. This is responsive, but it will let you slide over the
0271 corners of a window on your way to your destination without bringing
0272 that window to the front. 
0273 </para>
0274 </tip>
0275 
0276 </sect3>
0277 
0278 <sect3 id="focus-multiscreen">
0279 <title>Multiscreen behavior</title>
0280 
0281 <para>
0282 This controls the behavior of window focus with multiple screens. Note that these options appear only when more than one screen is currently connected.
0283 </para>
0284 
0285 <variablelist>
0286 
0287 <varlistentry>
0288 <term><guilabel>Active screen follows mouse</guilabel></term>
0289 <listitem>
0290 <para>
0291 When this option is enabled, the active screen (where new windows appear, for example) is the screen containing the mouse pointer. When disabled, the active screen is the screen containing the focused window.
0292 </para>
0293 </listitem>
0294 </varlistentry>
0295 
0296 <varlistentry>
0297 <term><guilabel>Separate screen focus</guilabel></term>
0298 <listitem>
0299 <para>
0300 When this option is enabled, focus operations are limited only to the active screen. For instance, when you close a window, then the next window to receive focus will be a window on the active screen, even if there is a more recently used window on a different screen.
0301 </para>
0302 </listitem>
0303 </varlistentry>
0304 
0305 </variablelist>
0306 
0307 </sect3>
0308 
0309 </sect2>
0310 
0311 <sect2 id="titlebar-actions">
0312 <title>Titlebar Actions</title>
0313 
0314 <para>
0315 In this panel you can configure what happens to windows when a mousebutton is
0316 clicked on their titlebars.
0317 </para>
0318 
0319 <sect3 id="actions-titlebar">
0320 <title><guilabel>Titlebar Actions</guilabel></title>
0321 
0322 <para>
0323 This section allows you to determine what happens when you double-click
0324 or scroll the mouse wheel on the titlebar of a window.
0325 </para>
0326 
0327 <para>
0328 The following actions are available for <guilabel>Double-click</guilabel>:
0329 </para>
0330 
0331 <variablelist>
0332 
0333 <varlistentry>
0334 <term><guilabel>Maximize</guilabel></term>
0335 <listitem>
0336 <para>
0337 Resizes the window to fill the height and width of the screen.
0338 </para>
0339 </listitem>
0340 </varlistentry>
0341 
0342 <varlistentry>
0343 <term><guilabel>Vertically maximize</guilabel></term>
0344 <listitem>
0345 <para>
0346 Resizes the window to the height of the screen.
0347 </para>
0348 </listitem>
0349 </varlistentry>
0350 
0351 <varlistentry>
0352 <term><guilabel>Horizontally maximize</guilabel></term>
0353 <listitem>
0354 <para>
0355 Resizes the window to the width of the screen.
0356 </para>
0357 </listitem>
0358 </varlistentry>
0359 
0360 <varlistentry>
0361 <term><guilabel>Minimize</guilabel></term>
0362 <listitem>
0363 <para>
0364 Hides the window into its minimized state, from which it can be restored &eg; via the Task Manager or Task Switcher.
0365 </para>
0366 </listitem>
0367 </varlistentry>
0368 
0369 <varlistentry>
0370 <term><guilabel>Shade</guilabel></term>
0371 <listitem>
0372 <para>
0373 Causes the window to be
0374 reduced to simply the titlebar. Double-clicking on the titlebar again
0375 restores the window to its normal size.
0376 </para>
0377 </listitem>
0378 </varlistentry>
0379 
0380 <varlistentry>
0381 <term><guilabel>Close</guilabel></term>
0382 <listitem>
0383 <para>
0384 Closes the window.
0385 </para>
0386 </listitem>
0387 </varlistentry>
0388 
0389 <varlistentry>
0390 <term><guilabel>Show on all desktops</guilabel></term>
0391 <listitem>
0392 <para>
0393 Makes the window be visible on all Virtual Desktops.
0394 </para>
0395 </listitem>
0396 </varlistentry>
0397 
0398 <varlistentry>
0399 <term><guilabel>Do nothing</guilabel></term>
0400 <listitem>
0401 <para>
0402 Nothing happens on double-click.
0403 </para>
0404 </listitem>
0405 </varlistentry>
0406 
0407 </variablelist>
0408 
0409 <para>
0410 The <guilabel>Mouse wheel</guilabel> can be used to trigger an action depending on whether it is scrolled up or down:
0411 </para>
0412 
0413 <variablelist>
0414 
0415 <varlistentry>
0416 <term><guilabel>Raise/lower</guilabel></term>
0417 <listitem>
0418 <para>
0419 Scrolling up will move the window on top of other windows.
0420 </para>
0421 <para>
0422 Scrolling down will move the window below other windows.
0423 </para>
0424 </listitem>
0425 </varlistentry>
0426 
0427 <varlistentry>
0428 <term><guilabel>Shade/unshade</guilabel></term>
0429 <listitem>
0430 <para>
0431 Scrolling up will collapse the window to just its titlebar.
0432 </para>
0433 <para>
0434 Scrolling down will restore the window to its normal size.
0435 </para>
0436 </listitem>
0437 </varlistentry>
0438 
0439 <varlistentry>
0440 <term><guilabel>Maximize/restore</guilabel></term>
0441 <listitem>
0442 <para>
0443 Scrolling up will maximize the window to fill the whole screen.
0444 </para>
0445 <para>
0446 Scrolling down will restore it to its previous size.
0447 </para>
0448 </listitem>
0449 </varlistentry>
0450 
0451 <varlistentry>
0452 <term><guilabel>Keep above/below</guilabel></term>
0453 <listitem>
0454 <para>
0455 Scrolling up will make the window stay on top, covering other windows.
0456 </para>
0457 <para>
0458 Scrolling down will make the window stay covered below other windows.
0459 </para>
0460 </listitem>
0461 </varlistentry>
0462 
0463 <varlistentry>
0464 <term><guilabel>Move to previous/next desktop</guilabel></term>
0465 <listitem>
0466 <para>
0467 Scrolling up will move the window to the previous Virtual Desktop.
0468 </para>
0469 <para>
0470 Scrolling down will move the window to the next Virtual Desktop.
0471 </para>
0472 </listitem>
0473 </varlistentry>
0474 
0475 <varlistentry>
0476 <term><guilabel>Change opacity</guilabel></term>
0477 <listitem>
0478 <para>
0479 Scrolling up will make the window less transparent.
0480 </para>
0481 <para>
0482 Scrolling down will make the window more transparent.
0483 </para>
0484 </listitem>
0485 </varlistentry>
0486 
0487 <varlistentry>
0488 <term><guilabel>Do nothing</guilabel></term>
0489 <listitem>
0490 <para>
0491 Nothing happens when scrolling up or down on the window's titlebar.
0492 </para>
0493 </listitem>
0494 </varlistentry>
0495   
0496 </variablelist>
0497 
0498 <tip>
0499 <para>
0500 You can have windows automatically unshade when you simply place the
0501 mouse over their shaded titlebar. Just check the <link  linkend="advanced-unshading"><guilabel>Window
0502 unshading</guilabel></link> check box in the <guilabel>Advanced</guilabel> tab of
0503 this module. This is a great way to reclaim screen space when you are
0504 cutting and pasting between a lot of windows, for example.
0505 </para>
0506 </tip>
0507 
0508 </sect3>
0509 
0510 <sect3 id="actions-titlebar-frame">
0511 <title><guilabel>Titlebar and Frame Actions</guilabel></title>
0512 
0513 <para>
0514 This section allows you to determine what happens when you single click
0515 on the titlebar or frame of a window. Notice that you can have
0516 different actions associated with the same click depending on whether
0517 the window is active or not.
0518 </para>
0519 
0520 <para> For each combination of mousebuttons, Active and
0521 Inactive, you can select the most appropriate choice. The actions are
0522 as follows:
0523 </para>
0524 
0525 <variablelist>
0526 
0527 <varlistentry>
0528 <term><guilabel>Raise</guilabel></term>
0529 <listitem>
0530 <para>
0531 Will bring the window to the top of the window stack. All other windows
0532 which overlap with this one will be hidden <quote>below</quote> it.
0533 </para>
0534 </listitem>
0535 </varlistentry>
0536 
0537 <varlistentry>
0538 <term><guilabel>Lower</guilabel></term>
0539 <listitem>
0540 <para>
0541 Will move this window to the bottom of the window stack. This will get the
0542 window out of the way.
0543 </para>
0544 </listitem>
0545 </varlistentry>
0546 
0547 <varlistentry>
0548 <term><guilabel>Toggle raise and lower</guilabel></term>
0549 <listitem>
0550 <para>
0551 This will raise windows which are not on top, and lower windows which
0552 are already on top.
0553 </para>
0554 </listitem>
0555 </varlistentry>
0556 
0557 <varlistentry>
0558 <term><guilabel>Minimize</guilabel></term>
0559 <listitem>
0560 <para>
0561 Hides the window into its minimized state, from which it can be restored &eg; via the Task Manager or Task Switcher.
0562 </para>
0563 </listitem>
0564 </varlistentry>
0565 <varlistentry>
0566 
0567 <term><guilabel>Shade</guilabel></term>
0568 <listitem>
0569 <para>
0570 Causes the window to be
0571 reduced to simply the titlebar. Double-clicking on the titlebar again
0572 restores the window to its normal size.
0573 </para>
0574 </listitem>
0575 </varlistentry>
0576 
0577 <varlistentry>
0578 <term><guilabel>Close</guilabel></term>
0579 <listitem>
0580 <para>
0581 Closes the window.
0582 </para>
0583 </listitem>
0584 </varlistentry>
0585 
0586 <varlistentry>
0587 <term><guilabel>Show actions menu</guilabel></term>
0588 <listitem>
0589 <para>
0590 Will bring up a small submenu where you can choose window related
0591 commands (&ie; Move to Desktop, Move to Screen, Maximize, Minimize, Close, &etc;).
0592 </para>
0593 </listitem>
0594 </varlistentry>
0595 
0596 <varlistentry>
0597 <term><guilabel>Do nothing</guilabel></term>
0598 <listitem>
0599 <para>
0600 Nothing happens on click.
0601 </para>
0602 </listitem>
0603 </varlistentry>
0604 
0605 </variablelist>
0606 
0607 </sect3>
0608 
0609 <sect3 id="actions-maximize-button">
0610 <title><guilabel>Maximize Button Actions</guilabel></title>
0611 
0612 <para>
0613 This section allows you to determine the behavior of the three mouse buttons 
0614 onto the maximize button.
0615 </para>
0616 
0617 <variablelist>
0618 
0619 <varlistentry>
0620 <term><guilabel>Maximize</guilabel></term>
0621 <listitem>
0622 <para>
0623 Resizes the window to the height and width of the screen.
0624 </para>
0625 </listitem>
0626 </varlistentry>
0627 
0628 <varlistentry>
0629 <term><guilabel>Vertically maximize</guilabel></term>
0630 <listitem>
0631 <para>
0632 Resizes the window to the height of the screen.
0633 </para>
0634 </listitem>
0635 </varlistentry>
0636 
0637 <varlistentry>
0638 <term><guilabel>Horizontally maximize</guilabel></term>
0639 <listitem>
0640 <para>
0641 Resizes the window to the width of the screen.
0642 </para>
0643 </listitem>
0644 </varlistentry>
0645 
0646 </variablelist>
0647 
0648 </sect3>
0649 
0650 </sect2>
0651 
0652 <sect2 id="window-actions">
0653 <title>Window Actions</title>
0654 
0655 <sect3 id="actions-inactive-inner-window">
0656 <title><guilabel>Inactive Inner Window</guilabel></title>
0657 
0658 <para>
0659 This part of the module, allows you to configure what happens when you
0660 click on an inactive window, with any of the three mouse buttons or use
0661 the mouse wheel.
0662 </para>
0663 
0664 <para>
0665 Your choices are as follows:
0666 </para>
0667 
0668 <variablelist>
0669 
0670 <varlistentry>
0671 <term><guilabel>Activate, raise and pass click</guilabel></term>
0672 <listitem>
0673 <para>
0674 This makes the clicked window active, raises it to the top of the
0675 display, and passes a mouse click to the application within the window.
0676 </para>
0677 </listitem>
0678 </varlistentry>
0679 
0680 <varlistentry>
0681 <term><guilabel>Activate and pass click</guilabel></term>
0682 <listitem>
0683 <para>
0684 This makes the clicked window active and passes a mouse click to the
0685 application within the window.
0686 </para>
0687 </listitem>
0688 </varlistentry>
0689 
0690 <varlistentry>
0691 <term><guilabel>Activate</guilabel></term>
0692 <listitem>
0693 <para>
0694 This simply makes the clicked window active. The mouse click is not
0695 passed on to the application within the window.
0696 </para>
0697 </listitem>
0698 </varlistentry>
0699 
0700 <varlistentry>
0701 <term><guilabel>Activate and raise</guilabel></term>
0702 <listitem>
0703 <para>
0704 This makes the clicked window active and raises the window to the top of
0705 the display. The mouse click is not passed on to the application within
0706 the window.
0707 </para>
0708 </listitem>
0709 </varlistentry>
0710 
0711 </variablelist>
0712 
0713 <para>
0714 Your choices for <guilabel>Mouse wheel</guilabel> are as follows:
0715 </para>
0716 
0717 <variablelist>
0718 
0719 <varlistentry>
0720 <term><guilabel>Scroll</guilabel></term>
0721 <listitem>
0722 <para>
0723 Just scrolls the content within the window.
0724 </para>
0725 </listitem>
0726 </varlistentry>
0727 
0728 <varlistentry>
0729 <term><guilabel>Activate and scroll</guilabel></term>
0730 <listitem>
0731 <para>
0732 This makes the clicked window active and scrolls the content.
0733 </para>
0734 </listitem>
0735 </varlistentry>
0736 
0737 <varlistentry>
0738 <term><guilabel>Activate, raise and scroll</guilabel></term>
0739 <listitem>
0740 <para>
0741 This makes the clicked window active, raises the window to the top of
0742 the display, and scrolls the content.
0743 </para>
0744 </listitem>
0745 </varlistentry>
0746 
0747 </variablelist>
0748 
0749 </sect3>
0750 
0751 <sect3 id="actions-inner-window-titlebar-frame">
0752 <title><guilabel>Inner Window, Titlebar and Frame</guilabel></title>
0753 
0754 <para>
0755 This bottom section allows you to configure additional actions when
0756 clicking on a window with a modifier key pressed.
0757 </para>
0758 
0759 <para>
0760 As a <guilabel>Modifier key</guilabel>, you can select between <guilabel>Meta</guilabel> (default) or <guilabel>Alt</guilabel>.
0761 </para>
0762 
0763 <para>
0764 Once again, you can select different actions for
0765 <mousebutton>Left</mousebutton>, <mousebutton>Middle</mousebutton> and
0766 <mousebutton>Right</mousebutton> button clicks and the <guilabel>Mouse 
0767 wheel</guilabel>.
0768 </para>
0769 
0770 <para>
0771 Your choices for the mouse buttons are:
0772 </para>
0773 
0774 <variablelist>
0775 
0776 <varlistentry>
0777 <term><guilabel>Move</guilabel></term>
0778 <listitem>
0779 <para>
0780 Allows you to drag the selected window around the workspace.
0781 </para>
0782 </listitem>
0783 </varlistentry>
0784 
0785 <varlistentry>
0786 <term><guilabel>Activate, raise and move</guilabel></term>
0787 <listitem>
0788 <para>
0789 This makes the clicked window active, raises it to the top of the
0790 window stack, and drags the window around the workspace.
0791 </para>
0792 </listitem>
0793 </varlistentry>
0794 
0795 <varlistentry>
0796 <term><guilabel>Toggle raise and lower</guilabel></term>
0797 <listitem>
0798 <para>
0799 This will raise windows which are not on top, and lower windows which
0800 are already on top.
0801 </para>
0802 </listitem>
0803 </varlistentry>
0804 
0805 <varlistentry>
0806 <term><guilabel>Resize</guilabel></term>
0807 <listitem>
0808 <para>
0809 Allows you to change the size of the selected window.
0810 </para>
0811 </listitem>
0812 </varlistentry>
0813 
0814 <varlistentry>
0815 <term><guilabel>Raise</guilabel></term>
0816 <listitem>
0817 <para>
0818 Will bring the window to the top of the window stack. All other windows
0819 which overlap with this one will be hidden <quote>below</quote> it.
0820 </para>
0821 </listitem>
0822 </varlistentry>
0823 
0824 <varlistentry>
0825 <term><guilabel>Lower</guilabel></term>
0826 <listitem>
0827 <para>
0828  Will move this window to the bottom of the window stack. This will get the
0829 window out of the way.
0830 </para>
0831 </listitem>
0832 </varlistentry>
0833 
0834 <varlistentry>
0835 <term><guilabel>Minimize</guilabel></term>
0836 <listitem>
0837 <para>
0838 Hides the window into its minimized state, from which it can be restored &eg; via the Task Manager or Task Switcher.
0839 </para>
0840 </listitem>
0841 </varlistentry>
0842 
0843 <varlistentry>
0844 <term><guilabel>Decrease opacity</guilabel></term>
0845 <listitem>
0846 <para>
0847 Makes the window more transparent.
0848 </para>
0849 </listitem>
0850 </varlistentry>
0851 
0852 <varlistentry>
0853 <term><guilabel>Increase opacity</guilabel></term>
0854 <listitem>
0855 <para>
0856 Makes the window less transparent.
0857 </para>
0858 </listitem>
0859 </varlistentry>
0860 
0861 <varlistentry>
0862 <term><guilabel>Do nothing</guilabel></term>
0863 <listitem>
0864 <para>
0865 Nothing happens on click.
0866 </para>
0867 </listitem>
0868 </varlistentry>
0869 
0870 </variablelist>
0871 
0872 <para>
0873 Your choices for the mouse wheel are:
0874 </para>
0875 
0876 <variablelist>
0877 
0878 <varlistentry>
0879 <term><guilabel>Raise/lower</guilabel></term>
0880 <listitem>
0881 <para>
0882 Scrolling up will move the window on top of other windows.
0883 </para>
0884 <para>
0885 Scrolling down will move the window below other windows.
0886 </para>
0887 </listitem>
0888 </varlistentry>
0889 
0890 <varlistentry>
0891 <term><guilabel>Shade/unshade</guilabel></term>
0892 <listitem>
0893 <para>
0894 Scrolling up will collapse the window to just its titlebar.
0895 </para>
0896 <para>
0897 Scrolling down will restore the window to its normal size.
0898 </para>
0899 </listitem>
0900 </varlistentry>
0901 
0902 <varlistentry>
0903 <term><guilabel>Maximize/restore</guilabel></term>
0904 <listitem>
0905 <para>
0906 Scrolling up will maximize the window to fill the whole screen.
0907 </para>
0908 <para>
0909 Scrolling down will restore it to its previous size.
0910 </para>
0911 </listitem>
0912 </varlistentry>
0913 
0914 <varlistentry>
0915 <term><guilabel>Keep above/below</guilabel></term>
0916 <listitem>
0917 <para>
0918 Scrolling up will make the window stay on top, covering other windows.
0919 </para>
0920 <para>
0921 Scrolling down will make the window stay covered below other windows.
0922 </para>
0923 </listitem>
0924 </varlistentry>
0925 
0926 <varlistentry>
0927 <term><guilabel>Move to previous/next desktop</guilabel></term>
0928 <listitem>
0929 <para>
0930 Scrolling up will move the window to the previous Virtual Desktop.
0931 </para>
0932 <para>
0933 Scrolling down will move the window to the next Virtual Desktop.
0934 </para>
0935 </listitem>
0936 </varlistentry>
0937 
0938 <varlistentry>
0939 <term><guilabel>Change opacity</guilabel></term>
0940 <listitem>
0941 <para>
0942 Scrolling up will make the window less transparent.
0943 </para>
0944 <para>
0945 Scrolling down will make the window more transparent.
0946 </para>
0947 </listitem>
0948 </varlistentry>
0949 
0950 <varlistentry>
0951 <term><guilabel>Do nothing</guilabel></term>
0952 <listitem>
0953 <para>
0954 Nothing happens on when scrolling up or down the window's titlebar.
0955 </para>
0956 </listitem>
0957 </varlistentry>
0958 
0959 </variablelist>
0960 
0961 </sect3>
0962 
0963 </sect2>
0964 
0965 <sect2 id="movement">
0966 <title>Movement</title>
0967 
0968 <para>This page allows you to configure the <guilabel>Snap
0969 Zones</guilabel>. These are like a magnetic field along the side of
0970 the screen and each window, which will make windows snap alongside
0971 when moved near.
0972 </para>
0973 
0974 <variablelist>
0975 
0976 <varlistentry>
0977 <term><guilabel>Screen edge snap zone</guilabel></term>
0978 <listitem>
0979 <para>Here you can set the snap zone for screen borders. Moving a
0980 window within the configured distance will make it snap to the edge of
0981 the screen.
0982 </para>
0983 </listitem>
0984 </varlistentry>
0985 
0986 <varlistentry>
0987 <term><guilabel>Window snap zone</guilabel></term>
0988 <listitem>
0989 <para>
0990 Here you can set the snap zone for windows. As with screen
0991 borders, moving a window near to another will make it snap to the edge
0992 as if the windows were magnetized.
0993 </para>
0994 </listitem>
0995 </varlistentry>
0996 
0997 <varlistentry>
0998 <term><guilabel>Center snap zone</guilabel></term>
0999 <listitem>
1000 <para>
1001 Here you can set the snap zone for the screen center, &ie; the 
1002 <quote>strength</quote> of the magnetic field which will make windows snap 
1003 to the center of the screen when moved near it.
1004 </para>
1005 </listitem>
1006 </varlistentry>
1007 
1008 <varlistentry>
1009 <term><guilabel>Snap windows: Only when overlapping</guilabel></term>
1010 <listitem>
1011 <para>
1012 If checked, windows will not snap together if they are only near
1013 each other, they must be overlapping, by the configured amount or
1014 less.
1015 </para>
1016 </listitem>
1017 </varlistentry>
1018 
1019 </variablelist>
1020 
1021 <tip>
1022 <para>
1023 In the <guilabel>Screen Edges</guilabel> settings module in the <guilabel>Workspace Behavior</guilabel> section of the system settings, you can configure windows to be quick-tiled to the whole, half, or quarter of the screen when dragged near the screen edges.
1024 </para>
1025 </tip>
1026 
1027 </sect2>
1028 
1029 <sect2 id="advanced">
1030 <title>Advanced</title>
1031 
1032 <para>
1033 In the <guilabel>Advanced</guilabel> panel you can do more advanced fine
1034 tuning to the window behavior.
1035 </para>
1036 
1037 <sect3 id="advanced-unshading">
1038 <title>Window unshading</title>
1039 
1040 <variablelist>
1041 <varlistentry>
1042 <term><guilabel>On titlebar hover after</guilabel></term>
1043 <listitem>
1044 <para>
1045 If this option is enabled, a shaded window will un-shade automatically
1046 when the mouse pointer has been over the titlebar for some time. Use
1047 the spinbox to configure the delay un-shading.
1048 </para>
1049 </listitem>
1050 </varlistentry>
1051 </variablelist>
1052 </sect3>
1053 
1054 <sect3 id="advanced-placement">
1055 <title>Window placement</title>
1056 
1057 <para>
1058 The placement policy determines where a new window will appear
1059 on the screen.
1060 </para>
1061 
1062 <para>
1063 In a multi-monitor setup, the screen for windows to appear on is always the active screen (that is, the screen that has the mouse pointer or the focused window; see <link linkend="focus-multiscreen">Multiscreen behavior</link>), with the exception of windows remembering their previous position (see <link  linkend="advanced-remember-positions">below</link>).
1064 </para>
1065 
1066 <variablelist>
1067 
1068 <varlistentry>
1069 <term><guilabel>Minimal Overlapping</guilabel></term>
1070 <listitem>
1071 <para>
1072 Will place all new windows in such a manner as to overlap existing windows as little as possible.
1073 </para>
1074 </listitem>
1075 </varlistentry>
1076 
1077 <varlistentry>
1078 <term><guilabel>Maximized</guilabel></term>
1079 <listitem>
1080 <para>
1081 Will try to maximize all new windows to fill the whole screen.
1082 </para>
1083 </listitem>
1084 </varlistentry>
1085 
1086 <varlistentry>
1087 <term><guilabel>Random</guilabel></term>
1088 <listitem>
1089 <para>
1090 Will place all new windows in random locations.
1091 </para>
1092 </listitem>
1093 </varlistentry>
1094 
1095 <varlistentry>
1096 <term><guilabel>Centered</guilabel></term>
1097 <listitem>
1098 <para>
1099 Will place all new windows in the center of the screen.
1100 </para>
1101 </listitem>
1102 </varlistentry>
1103 
1104 <varlistentry>
1105 <term><guilabel>In Top-Left Corner</guilabel></term>
1106 <listitem>
1107 <para>
1108 Will place all new windows with their top left corner in the top left corner of
1109 the screen. 
1110 </para>
1111 </listitem>
1112 </varlistentry>
1113 
1114 <varlistentry>
1115 <term><guilabel>Under Mouse</guilabel></term>
1116 <listitem>
1117 <para>
1118 Will place all new windows centered under the mouse pointer.
1119 </para>
1120 </listitem>
1121 </varlistentry>
1122   
1123 </variablelist>
1124 
1125 <para id="advanced-remember-positions">
1126 Check the <guilabel>Allow apps to remember the positions of
1127 their own windows</guilabel> item to open windows where they previously were rather than by the placement method chosen above. Note that this remembered position includes the screen assignment, so windows may open on a screen other than the active one if this is where they were last located. Note also that this option is only available on X11, not on Wayland, and is only supported by some KDE applications.
1128 </para>
1129 
1130 <tip>
1131 <para>
1132 If you would like some windows to appear on specific positions, screens, or Virtual Desktops, you can set up <guilabel>Window Rules</guilabel> to configure special window or application settings. You can find this by right-clicking on the titlebar of a window and choosing <guimenu>More Actions</guimenu>, or in the <guilabel>Window Rules</guilabel> module in the <guilabel>Window Management</guilabel> section of system settings.
1133 </para>
1134 </tip>
1135 
1136 
1137 </sect3>
1138 
1139 <sect3 id="advanced-special-windows">
1140 <title>Special windows</title>
1141 
1142 <variablelist>
1143 
1144 <varlistentry>
1145 <term><guilabel>Hide utility windows for inactive applications</guilabel></term>
1146 <listitem>
1147 <para>
1148 When turned on, utility windows (tool windows, torn-off menus, ...) of 
1149 inactive applications will be hidden and will be shown only when the 
1150 application becomes active. Note that applications have to mark the windows 
1151 with the proper window type for this feature to work.
1152 </para>
1153 </listitem>
1154 </varlistentry>
1155 
1156 </variablelist>
1157 
1158 </sect3>
1159 
1160 <sect3 id="advanced-virtual-desktop-behavior">
1161 <title>Virtual Desktop behavior</title>
1162 
1163 <para>
1164 Sometimes calling an application will activate an existing window rather than opening a new window. This setting controls what should happen if that activated window is located on a Virtual Desktop other than the current one.
1165 </para>
1166 
1167 <variablelist>
1168 
1169 <varlistentry>
1170 <term><guilabel>Switch to that Virtual Desktop</guilabel></term>
1171 <listitem>
1172 <para>
1173 Will switch to the Virtual Desktop where the window is currently located.
1174 </para>
1175 <para>
1176 Choose this option if you would like the active Virtual Desktop to automatically follow windows to their assigned Virtual Desktop.
1177 </para>
1178 </listitem>
1179 </varlistentry>
1180 
1181 <varlistentry>
1182 <term><guilabel>Bring window to current Virtual Desktop</guilabel></term>
1183 <listitem>
1184 <para>
1185 Will cause the window to jump to the active Virtual Desktop.
1186 </para>
1187 <para>
1188 Choose this option if you would like windows to always open on the current Virtual Desktop, and the active Virtual Desktop to only switch when navigating there manually.
1189 </para>
1190 </listitem>
1191 </varlistentry>
1192 
1193 </variablelist>
1194 
1195 </sect3>
1196 
1197 </sect2>
1198 
1199 </sect1>
1200 
1201 </article>