[BUG] VS Code is not recognized as window for tiling if tab name starts with '+' (plus) symbol

Aperta
#404 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
28/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
javascript, linux
Ambito
desktop-dev

Direzione di ricerca

The payload names no source files, so start by reproducing: open two VS Code windows, one with a title beginning with '+' (for example '+page.svelte'), and confirm Forge stops tiling it. Then find where Forge matches window titles and check whether the '+' is treated as a regex metacharacter or otherwise mishandled. Done means VS Code tiles normally with a '+'-prefixed title, and a titles-without-'+' case still works. The thread has no maintainer reply and the issue is about 853 days old, so confirm the bug still reproduces on current Forge before writing a fix.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

bug
(1) Issue/Bug Description/Video Capture/Screenshots

https://github.com/forge-ext/forge/assets/46044710/f5784a08-34cf-4fa2-a204-f9e938797aa0

(2) Steps to reproduce
  1. Open VS Code in a standard way.
  2. Open a tab named as '+page.svelte' and open another tab that is not named as previous.
    For example; there are no problem with following names:
    '+page..svelte' (double dotted).
    'page.svelte' (without plus)
    But '++page.svelte' causes problem too. This is the weirdest bug I've ever seen :-D.
  3. Alter between tabs and try both for tiling.

NOT:

  1. I tried another application(standard text editor) that title starts with '+' and it didn't cause any problem. it seems that only happens with vs code.
  2. I also tried in VS code that includes '+' symbol but doesn't starts with '+' and it didn't cause any problem.
(3) Distribution and Linux version
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
Linux livost 6.1.0-17-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.69-1 (2023-12-30) x86_64 GNU/Linux
(4) Journal Logs from the last hour
Hint: You are currently not seeing messages from other users and the system.
      Users in groups 'adm', 'systemd-journal' can see all messages.
      Pass -q to turn off this notice.
Jun 30 16:11:31 livost gnome-shell[2990]: meta_window_set_stack_position_no_sync: assertion 'window->stack_position >= 0' failed
Jun 30 16:45:52 livost gnome-shell[2990]: Can't update stage views actor <unnamed>[<MetaWindowActorX11>:0x55d5032cc700] is on because it needs an allocation.
Jun 30 16:45:52 livost gnome-shell[2990]: Can't update stage views actor <unnamed>[<MetaSurfaceActorX11>:0x55d502f4cfb0] is on because it needs an allocation.
Jun 30 16:46:00 livost gnome-shell[2990]: Can't update stage views actor <unnamed>[<MetaWindowActorX11>:0x55d5032cc700] is on because it needs an allocation.
Jun 30 16:46:00 livost gnome-shell[2990]: Can't update stage views actor <unnamed>[<MetaSurfaceActorX11>:0x55d502f4cfb0] is on because it needs an allocation.
.
. there are 180 lines and goes same...
.
Jun 30 16:46:49 livost gnome-shell[2990]: Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x5200004
... 12 lines 
Jun 30 16:47:27 livost gnome-shell[2990]: Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x2c00004
...185 lines
Jun 30 17:01:37 livost gnome-shell[2990]: meta_window_set_stack_position_no_sync: assertion 'window->stack_position >= 0' failed
... 15 lines
Jun 30 17:01:47 livost gnome-shell[2990]: Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x5200004
Jun 30 17:02:28 livost gnome-shell[2990]: Can't update stage views actor <unnamed>[<MetaWindowActorX11>:0x55d5020fbcb0] is on because it needs an allocation.
Jun 30 17:02:28 livost gnome-shell[2990]: Can't update stage views actor <unnamed>[<MetaSurfaceActorX11>:0x55d5038da7b0] is on because it needs an allocation.
Jun 30 17:02:31 livost gnome-shell[2990]: meta_window_set_stack_position_no_sync: assertion 'window->stack_position >= 0' failed
Jun 30 17:02:31 livost gnome-shell[2990]: Can't update stage views actor <unnamed>[<MetaWindowActorX11>:0x55d5020fbcb0] is on because it needs an allocation.
Jun 30 17:02:31 livost gnome-shell[2990]: Can't update stage views actor <unnamed>[<MetaSurfaceActorX11>:0x55d5038da7b0] is on because it needs an allocation.
Jun 30 17:05:27 livost gnome-shell[2990]: Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW message with a timestamp of 0 for 0x520025e
... 10 lines
Jun 30 17:08:34 livost gnome-shell[2990]: No listeners 212
... 2 lines
GNOME Shell version

GNOME Shell 43.9

Forge version

72

Other installed/enabled extensions
[email protected]
  Name: Clipboard Indicator
  Description: Clipboard Manager extension for Gnome-Shell - Adds a clipboard indicator to the top panel, and caches clipboard history.
  Path: /home/licoder/.local/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/Tudmotu/gnome-shell-extension-clipboard-indicator
  Version: 47
  State: ENABLED

[email protected]
  Name: Dash to Panel
  Description: An icon taskbar for the Gnome Shell. This extension moves the dash into the gnome main panel so that the application launchers and system tray are combined into a single panel, similar to that found in KDE Plasma and Windows 7+. A separate dock is no longer needed for easy access to running and favorited applications.

For a more traditional experience, you may also want to use Tweak Tool to enable Windows > Titlebar Buttons > Minimize & Maximize.

For the best support, please report any issues on Github. Dash-to-panel is developed and maintained by @jderose9 and @charlesg99.
  Path: /home/licoder/.local/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/home-sweet-gnome/dash-to-panel
  Version: 56
  State: ENABLED

desktopicons-neo@darkdemon
  Name: Desktop Icons: Neo
  Description: This adds desktop icons to GNOME. A fork of Desktop Icons NG with a massive amount of customizations (like icon shapes and curved corners), features, bug fixes, and overall polish.
  Path: /home/licoder/.local/share/gnome-shell/extensions/desktopicons-neo@darkdemon
  URL: https://github.com/DEM0NAssissan7/desktop-icons-neo
  Version: 8
  State: ENABLED

Resource_Monitor@Ory0n
  Name: Resource Monitor
  Description: Monitor the use of system resources like cpu, ram, disk, network and display them in gnome shell top bar.
  Path: /home/licoder/.local/share/gnome-shell/extensions/Resource_Monitor@Ory0n
  URL: https://github.com/0ry0n/Resource_Monitor/
  Version: 19
  State: ENABLED

[email protected]
  Name: Tray Icons: Reloaded
  Description: Tray Icons Reloaded is a GNOME Shell extension which bring back Tray Icons to top panel, with additional features.
  Path: /home/licoder/.local/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/MartinPL/Tray-Icons-Reloaded
  Version: 26
  State: ENABLED

[email protected]
  Name: AppIndicator and KStatusNotifierItem Support
  Description: Adds AppIndicator, KStatusNotifierItem and legacy Tray icons support to the Shell
  Path: /home/licoder/.local/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/ubuntu/gnome-shell-extension-appindicator
  Version: 53
  State: ENABLED

[email protected]
  Name: Forge
  Description: Tiling and window manager for GNOME

Please report bugs/issues on https://github.com/forge-ext/forge/issues
  Path: /home/licoder/.local/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/forge-ext/forge
  Version: 72
  State: ENABLED

[email protected]
  Name: Search Light
  Description: Take the apps search out of overview
  Path: /home/licoder/.local/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/icedman/search-light
  Version: 17
  State: ENABLED

[email protected]
  Name: Coverflow Alt-Tab
  Description: Replacement of Alt-Tab, iterates through windows in a cover-flow manner.
  Path: /home/licoder/.local/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/dmo60/CoverflowAltTab
  Version: 61
  State: ENABLED
(6) Monitor Setup

two monitor: 1: 1600x900, 2: 1368x720

Other Notes

No response

Lingua principale
JavaScript
Stelle
1.3k
Fork
112
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di forge-ext/forge

Tutte le issue di forge-ext/forge

Issue simili

Altre issue su JavaScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.