Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions CONTRIBUTING.rst
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,11 @@ Before You Open An Issue...
traceback from the ``Details...`` button.

Thanks for making it easier for me to help you.

Before You Open A PR...
=======================

1. Please open an issue so you don't risk contributing code that won't be
accepted.

2. Read the `Developer's Guide <https://ssokolow.com/quicktile/developing.html>`_.
2 changes: 1 addition & 1 deletion debian/rules
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,4 @@ include /usr/share/dpkg/default.mk

override_dh_auto_install:
dh_auto_install
install -D quicktile.desktop debian/quicktile/etc/xdg/autostart/quicktile.desktop
install -D quicktile/quicktile.desktop debian/quicktile/etc/xdg/autostart/quicktile.desktop
11 changes: 11 additions & 0 deletions docs/developing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -274,6 +274,17 @@ For best results, configure your virtual desktop with the following characterist
best chance of triggering any dead-space-related bugs in the code for
calculating usable regions.

.. note:: The following two behaviours are currently known bugs where a proper
solution is blocked on reworking how window state is tracked and you don't
need to worry that you've caused them:

1. If a window is so far down or to the right that it would be outside the
bounds of the destination monitor, QuickTile will refuse to honor a request to move it to that monitor to avoid the risk of your window manager allowing it to get lost off the edge of the desktop. This can block commands like ``monitor-switch``.
2. If a window's top-left corner is within the bounds of the destination
montiro, but its bottom-right corner extends beyond it, the window will
be resized to fit, but it won't remember its old size if it's moved back
to its original monitor.

Automated Testing
^^^^^^^^^^^^^^^^^

Expand Down
25 changes: 23 additions & 2 deletions quicktile/__main__.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
# pylint: disable=unsubscriptable-object
# pylint: disable=wrong-import-order

import errno, logging, os, signal, sys
import errno, logging, os, platform, signal, sys
from argparse import ArgumentParser
from importlib.resources import files

Expand All @@ -56,7 +56,7 @@
from typing import Optional # NOQA pylint: disable=unused-import
# --

__version__ = files("quicktile").joinpath("VERSION").read_text()
__version__ = files("quicktile").joinpath("VERSION").read_text().strip()

Wnck.set_client_type(Wnck.ClientType.PAGER)

Expand Down Expand Up @@ -204,6 +204,27 @@ def main() -> None:
logging.basicConfig(level=logging.DEBUG if args.debug else logging.INFO,
format='%(levelname)s: %(message)s')

if args.debug:
logging.debug("Starting QuickTile v{} on {} under Python v{}".format(
__version__,
os.environ.get('XDG_CURRENT_DESKTOP', '(unknown DE)').strip(),
platform.python_version()))

uname = platform.uname()
logging.debug("Host OS is {} {} {}".format(
uname.system, uname.release, uname.version))

if hasattr(platform, 'freedesktop_os_release'): # pragma: no branch
try:
logging.debug("Host distro is {}".format(
platform.freedesktop_os_release().get(
'PRETTY_NAME', '(unknown)')))
except OSError: # pragma: no cover
logging.debug("Couldn't identify host distro")

if 'WAYLAND_DISPLAY' in os.environ:
logging.warning("QuickTile appears to be running under Wayland")

cfg_path = os.path.join(XDG_CONFIG_DIR, 'quicktile.cfg')
first_run = not os.path.exists(cfg_path)
config = load_config(cfg_path)
Expand Down
Loading