<commit_before># Things Todo
## tooltip
Tooltip positions are not correct.. needs investigation.

## panel:
The features on top of my head:

- workspace indicator with workspace snapshot 
- systray

## Notification

## Improve compositor
Currently repaints damage. But needs a mechanism to force redraw.

1. Uses too much CPU (6%) when drawing border + global damage for popup surfaces
2. Surfaces not completely rendered (e.g. QT's title bar)
3. Switching workspace may have a frame remain..


## Out of order closing of multiple windows will crash the compositor

# Done / Partially Done:
- Copy / Paste device (seems to be working now...)
- Popup grab and proactive dismiss
- Take screenshot: Has basic support with Super + P
- Automatically decide screen resolution: partly done, needs code refactor
- scale: partly done, needs to test for non-scalable apps
- keyboard enter to sub surfaces: not perfect.. subsurface is not focused by default<commit_msg>update todo<commit_after># Things Todo
## tooltip
Tooltip positions are not correct.. needs investigation.

## panel:
The features on top of my head:

- workspace indicator with workspace snapshot 
- systray

## Notification

## Improve compositor
Currently repaints damage. But needs a mechanism to force redraw.

1. Uses too much CPU (6%) when drawing border + global damage for popup surfaces
- Cut by half but still needs improvement.

2. Currently a memcpy is issued each time a surface is committed. Needs a way
   to actually only upload texture when necessary aka when surface is absolutely
   visible.

## Improve model
- Pointer / keyboard model could be improved by using seat to track focus instead
  of on per client basis. So that pointer won't remain when leaving the surface.

## Out of order closing of multiple windows will crash the compositor

# Done / Partially Done:
- Copy / Paste device (seems to be working now...)
- Popup grab and proactive dismiss
- Take screenshot: Has basic support with Super + P
- Automatically decide screen resolution: partly done, needs code refactor
- scale: partly done, needs to test for non-scalable apps
- keyboard enter to sub surfaces: not perfect.. subsurface is not focused by default
- Surfaces not completely rendered (e.g. QT's title bar)
- Switching workspace may have a frame remain..
{'fraction_non_alphanumeric': 0.05895101863892501, 'fraction_numerical': 0.003034243606415258, 'mean_word_length': 3.9527896995708156, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2569076', 'n_tokens_mistral': 586, 'n_tokens_neox': 568, 'n_words': 332}