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: 4 additions & 4 deletions plugins.json
Original file line number Diff line number Diff line change
Expand Up @@ -578,10 +578,10 @@
"plugin_path": "plugins/odds-ticker",
"stars": 0,
"downloads": 0,
"last_updated": "2026-05-15",
"last_updated": "2026-07-10",
"verified": true,
"screenshot": "",
"latest_version": "1.1.4"
"latest_version": "1.1.5"
},
{
"id": "of-the-day",
Expand Down Expand Up @@ -777,10 +777,10 @@
"plugin_path": "plugins/ledmatrix-stocks",
"stars": 0,
"downloads": 0,
"last_updated": "2026-07-08",
"last_updated": "2026-07-10",
"verified": true,
"screenshot": "",
"latest_version": "2.3.1",
"latest_version": "2.3.2",
"icon": "fas fa-chart-line"
},
{
Expand Down
4 changes: 2 additions & 2 deletions plugins/ledmatrix-stocks/display_renderer.py
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@ def create_stock_display(self, symbol: str, data: Dict[str, Any]) -> Image.Image
is_crypto = data.get('is_crypto', False)

# Draw large stock/crypto logo on the left
logo_x = 2 # Small margin from left edge (used for logo_right even if logo is missing)
logo_x = 4 # Margin from left edge (used for logo_right even if logo is missing)
logo = self._get_stock_logo(symbol, is_crypto)
if logo:
# Position logo on the left side with minimal spacing - matching old stock_manager
Expand Down Expand Up @@ -259,7 +259,7 @@ def create_stock_display(self, symbol: str, data: Dict[str, Any]) -> Image.Image

# Position text column immediately after the logo's right edge
logo_right = int(logo_x + logo.width) if logo else int(logo_x)
logo_gap = 4 # px between logo right edge and text start
logo_gap = 8 # px between logo right edge and text start
symbol_width_tmp = int(symbol_bbox[2] - symbol_bbox[0])
price_width_tmp = int(price_bbox[2] - price_bbox[0])
change_width_tmp = int(change_bbox[2] - change_bbox[0]) if change_text else 0
Expand Down
10 changes: 8 additions & 2 deletions plugins/ledmatrix-stocks/manifest.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"id": "ledmatrix-stocks",
"name": "Stock & Crypto Ticker",
"version": "2.3.1",
"version": "2.3.2",
"description": "Displays stock tickers with prices, changes, and optional charts for stocks and cryptocurrencies. Supports scroll and switch display modes.",
"author": "LEDMatrix Team",
"homepage": "https://github.com/ChuckBuilds/ledmatrix-plugins/tree/main/plugins/ledmatrix-stocks",
Expand Down Expand Up @@ -39,6 +39,12 @@
}
],
"versions": [
{
"released": "2026-07-10",
"version": "2.3.2",
"notes": "Bump logo_x (2px→4px) and logo_gap (4px→8px) so the ~26px-tall logo isn't cramped against the display edge and the symbol/price text on the 32px-tall display.",
"ledmatrix_min_version": "2.0.0"
},
{
"released": "2026-07-08",
"version": "2.3.1",
Expand Down Expand Up @@ -81,7 +87,7 @@
"ledmatrix_min_version": "2.0.0"
}
],
"last_updated": "2026-07-08",
"last_updated": "2026-07-10",
"stars": 0,
"downloads": 0,
"verified": true,
Expand Down
25 changes: 15 additions & 10 deletions plugins/odds-ticker/manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -1991,24 +1991,29 @@ def _create_game_display(self, game: Dict[str, Any]) -> Image.Image:
elif over_under:
home_odds_text = f"O/U {over_under}"

away_odds_width = int(temp_draw.textlength(away_odds_text, font=odds_font))
home_odds_width = int(temp_draw.textlength(home_odds_text, font=odds_font))
odds_width = max(away_odds_width, home_odds_width)

# For baseball live games, optimize width for graphical bases
# For baseball live games, the odds column draws a small graphical bases
# cluster instead of odds text (see is_baseball_live below) - detect that
# first so we can size the column to the graphic, not to the placeholder
# "Bases: ..." / "Count: ..." text that away_odds_text/home_odds_text hold
# but never actually get drawn.
is_baseball_live = False
if is_live and live_info and hasattr(self, '_bases_data'):
sport = None
league_key = game.get('league')
if league_key and league_key in self.league_configs:
sport = self.league_configs[league_key].get('sport')

if sport == 'baseball':
is_baseball_live = True
# Use a more compact width for baseball games to minimize dead space
# The bases graphic only needs about 24px width, so we can be more efficient
min_bases_width = 24 # Reduced from 30 to minimize dead space
odds_width = max(odds_width, min_bases_width)

if is_baseball_live:
# The bases graphic only needs about 24px width - sizing the column
# to the (unused) placeholder text left a large gap before the next
# column, since that text is much wider than the graphic actually drawn.
odds_width = 24
else:
away_odds_width = int(temp_draw.textlength(away_odds_text, font=odds_font))
home_odds_width = int(temp_draw.textlength(home_odds_text, font=odds_font))
odds_width = max(away_odds_width, home_odds_width)

# --- Calculate total width ---
# Start with the sum of all visible components and consistent padding
Expand Down
13 changes: 8 additions & 5 deletions plugins/odds-ticker/manifest.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"id": "odds-ticker",
"name": "Odds Ticker",
"version": "1.1.4",
"version": "1.1.5",
"description": "Displays scrolling odds and betting lines for upcoming games across multiple sports leagues including NFL, NBA, MLB, NCAA Football, and more",
"author": "ChuckBuilds",
"category": "sports",
Expand All @@ -20,6 +20,12 @@
"branch": "main",
"plugin_path": "plugins/odds-ticker",
"versions": [
{
"released": "2026-07-10",
"version": "1.1.5",
"notes": "Size the odds column to the actual 24px bases-diamond graphic for live baseball games instead of the unused away/home odds text width (up to 104px), removing up to ~80px of dead space before the inning info column.",
"ledmatrix_min_version": "2.0.0"
},
{
"released": "2026-05-15",
"version": "1.1.4",
Expand Down Expand Up @@ -58,16 +64,13 @@
],
"stars": 0,
"downloads": 0,
"last_updated": "2026-05-15",
"last_updated": "2026-07-10",
"verified": true,
"screenshot": "",
"display_modes": [
"odds_ticker"
],
"class_name": "OddsTickerPlugin",
"dependencies": {
"managers": []
},
"compatible_versions": [
">=2.0.0"
],
Expand Down
Loading