CapSoftware / Cap

Open source Loom alternative. Effortless, instant screen sharing.
https://cap.so
GNU Affero General Public License v3.0
3.63k stars 169 forks source link

Hide recording window when recording, and create tray icon (macOS) #21

Closed richiemcilroy closed 4 months ago

richiemcilroy commented 4 months ago

On starting recording, hide the main Cap window.

Show a stop recording icon in the macOS menu bar tray.

On tray icon click, stop the recording.

This is currently required for macOS only.

Requirements -Create menu bar tray icon. Use Cap logo as icon maybe? This can be changed later. -When recording is active, change icon to a stop icon. Maybe use this icon from Lucide. -When recording is active, hide main Cap app recording window (keep camera overlay window as it is)

You can use this guide to help you get started developing locally as quickly as possible.

richiemcilroy commented 4 months ago

/bounty $50

syedbarimanjan commented 4 months ago

can you assign this to me. /attempt #21

syedbarimanjan commented 4 months ago

This is all needed on mac maybe you should add a label "mac" on it @richiemcilroy.

richiemcilroy commented 4 months ago

@syedbarimanjan done!

Om-jannu commented 4 months ago

/attempt #21

richiemcilroy commented 4 months ago

Anyone have a WIP for this?

syedbarimanjan commented 4 months ago

Anyone have a WIP for this?

I am working on it, will raise the pr.

richiemcilroy commented 4 months ago

/bounty $150

richiemcilroy commented 4 months ago

Upped the bounty to $150.

lukasgjetting commented 4 months ago

In case it's helpful to anyone: I've set up a wip here.

Still missing a few things:

  1. Tray should only be initialized on MacOS
  2. Clicking tray icon to stop recording doesn't sync the UI
  3. Doesn't respect the same "min 5 sec" rule as the frontend (maybe it shouldn't?)
  4. Haven't tested outside local mode, but based on the logging it seems to work correctly
ItsEeleeya commented 4 months ago

All requirements added here

There's a quit and a dedicated show button. Left clicking the tray icon shows the main window as well. Tray icon changes when you start or stop the recording. When recording starts all windows except camera view get hidden. Since handling the tray click event is done in the frontend, the UI reacts correctly.

I'm hoping later I can add the camera and microphone selectors to the tray menu as well.

Cap Tray

richiemcilroy commented 4 months ago

All requirements added here

There's a quit and a dedicated show button. Left clicking the tray icon shows the main window as well.

Tray icon changes when you start or stop the recording.

When recording starts all windows except camera view get hidden.

Since handling the tray click event is done in the frontend, the UI reacts correctly.

I'm hoping later I can add the camera and microphone selectors to the tray menu as well.

Cap Tray

Nice @ItsEeleeya - I'll check when I get to my desktop. If you add the mic / camera selectors there I'll add another $50 to the bounty

ItsEeleeya commented 4 months ago

Nice @ItsEeleeya - I'll check when I get to my desktop. If you add the mic / camera selectors there I'll add another $50 to the bounty

If there are no problems with the current features then that'll probably be for tomorrow!

jemiluv8 commented 4 months ago

@ItsEeleeya I'd suggest you create a draft PR soon. Even with the current version of what you have

ItsEeleeya commented 4 months ago

jemiluv8

It doesn't let me open another Pull Request as draft because it's already open

@richiemcilroy could you please turn the pull request to a draft?

richiemcilroy commented 4 months ago

Done @ItsEeleeya :)

richiemcilroy commented 4 months ago

/bounty $200

richiemcilroy commented 4 months ago
richiemcilroy commented 4 months ago

@ItsEeleeya can you create a claim here please?

ItsEeleeya commented 4 months ago

/claim #22

richiemcilroy commented 4 months ago

/approve

richiemcilroy commented 4 months ago

Sorry @ItsEeleeya it's bugging I think - you may need to do /claim first with the PR linked

Reached out to Algora's support

ItsEeleeya commented 4 months ago

Sorry @ItsEeleeya it's bugging I think - you may need to do /claim first with the PR linked

Reached out to Algora's support

Oh sorry do you mean comment that inside the PR or here? Like <slash>claim #22

richiemcilroy commented 4 months ago

/tip $200 @ItsEeleeya

algora-pbc[bot] commented 4 months ago

👉 @richiemcilroy: Navigate to your dashboard to proceed

algora-pbc[bot] commented 4 months ago

@ItsEeleeya: You just got a $200 tip! 👉 Complete your Algora onboarding to collect your payment.

richiemcilroy commented 4 months ago

Should be done now @ItsEeleeya :) thanks for your help! feel free to tackle another if you want to claim more

ItsEeleeya commented 4 months ago

Thank you, will do! I learnt quite a bit of Rust doing this even though I've been making some private and experimental Tauri apps. It's definitely not priority but I'd like to open some suggestions later on for the UI (the main window frame and design) and a dedicated settings window/view (I think I saw some WIP setting related stuff?).

ItsEeleeya commented 4 months ago

Hey @richiemcilroy Could you please send me a DM on Twitter? @ItsEeleeya

algora-pbc[bot] commented 4 months ago

🎉🎈 @ItsEeleeya has been awarded $200! 🎈🎊