Skip to content

Commit

Permalink
Use Talon screen ordering (talonhub#1502)
Browse files Browse the repository at this point in the history
  • Loading branch information
AndreasArvidsson authored and MartinRykfors committed Aug 14, 2024
1 parent cdffd9b commit 0ce3aa5
Showing 1 changed file with 3 additions and 13 deletions.
16 changes: 3 additions & 13 deletions core/screens/screens.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,15 @@
class Actions:
def screens_show_numbering():
"""Show screen number on each screen"""
screens = get_sorted_screens()
screens = ui.screens()
number = 1
for screen in screens:
show_screen_number(screen, number)
number += 1

def screens_get_by_number(screen_number: int) -> ui.Screen:
"""Get screen by number"""
screens = get_sorted_screens()
screens = ui.screens()
length = len(screens)
if screen_number < 1 or screen_number > length:
raise Exception(
Expand All @@ -34,21 +34,11 @@ def screens_get_next(screen: ui.Screen) -> ui.Screen:


def get_screen_by_offset(screen: ui.Screen, offset: int) -> ui.Screen:
screens = get_sorted_screens()
screens = ui.screens()
index = (screens.index(screen) + offset) % len(screens)
return screens[index]


def get_sorted_screens():
"""Return screens sorted by their topmost, then leftmost, edge.
Screens will be sorted leftto-right, then top-to-bottom as a tiebreak.
"""
return sorted(
ui.screens(),
key=lambda screen: screen.visible_rect.left,
)


def show_screen_number(screen: ui.Screen, number: int):
def on_draw(c):
c.paint.typeface = "arial"
Expand Down

0 comments on commit 0ce3aa5

Please sign in to comment.