Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PiP (Picture-in-Picture) - Implement a two-click method to enable it quickly like how it has done in Linux Elementary-OS #313

Closed
gileli121 opened this issue Aug 9, 2023 · 10 comments
Labels
enhancement New feature or request Feature-Picture-in-Picture Picture in Picture feature Feature-PiP-Crop

Comments

@gileli121
Copy link
Member

After finishing implementing the crop function (#133) for the PiP (Picture in Picture) feature, we can add a method to run this function, as shown in Linux-based OS - Elementary OS, and demonstrated in the following video and article:
https://www.youtube.com/watch?v=TtPxix5qIcM
https://averagelinuxuser.com/picture-in-picture-elementary/

In this proposal, you can quickly enable the PiP and the Crop functions while "Show original window" is enabled, and you do it by simply pressing a hotkey, then selecting a region, and that's it. After that, you basically get to the point.

In the implementation of #133 (comment) you can achieve it, but in extra steps:

  1. Enable PiP via toolbar/hotkey
  2. Enable "Show original window" (if disabled by default)
  3. Enable crop on the PiP preview using the toolbar and select the region
@gileli121 gileli121 added enhancement New feature or request Feature-Picture-in-Picture Picture in Picture feature labels Aug 9, 2023
@gileli121
Copy link
Member Author

The task was recreated... I made some mistake...
It got two votes before

@gileli121
Copy link
Member Author

gileli121 commented Aug 17, 2023

Progress so far

Crop.finish.webm

@gileli121 gileli121 pinned this issue Aug 17, 2023
@gileli121
Copy link
Member Author

After 2 weeks of development, so far, it works well and looks good.

Cropping.some.text.and.typing.webm
Cropping.and.adjusting.on.the.fly.and.clontrolling.window.webm

Beta release

https://github.com/WindowTop/WindowTop-App/releases/tag/v5.22.0

The core feature was developed.
I only left with minor stuff in settings for the feature.

You can feel free to try.

@gileli121
Copy link
Member Author

gileli121 commented Sep 2, 2023

New development

  • Ability to adjust the crop from the original window
Showing.how.we.can.adjust.the.crop.from.the.native.window.in.addition.to.the.PIP.window.webm

Note: To use this feature, you need to activate the option "Show original window" via settings or via the toolbar here
image

Included in Beta 3 from here

https://github.com/WindowTop/WindowTop-App/releases/tag/v5.22.0

@gileli121
Copy link
Member Author

Bugfix

Fixed bug that when resizing the source window of the PIP view, the PIP view size and ratio were not updated to the updated size and ratio of the source window

Before

PIP.-.Fix.source.win.resize.-.Before.webm

After (Fixed)

PIP.-.Fix.source.win.resize.-.After.webm

Included in Beta 4 from here

https://github.com/WindowTop/WindowTop-App/releases/tag/v5.22.0

@gileli121
Copy link
Member Author

gileli121 commented Sep 5, 2023

Development progress (Beta 5)

PIP + Crop can be enabled on an admin window:

You can enable crop on an admin window without running WindowTop with admin privileges. Once you start activating the crop, the OS will prompt for admin privilege permission. (Note: The admin privilege request prompt was not recorded due to issues with the recorder application.)

PIP.with.Crop.-.Showing.example.of.enabling.PIP.with.Crop.on.Admin.window.webm

Bugfixes

  • Fixed wrong behavior with the auto-move feature of Anchors that happens while using it with a combination of PIP / Crop
  • Fixed wrong behavior when enabling the crop editor from a native window state while one of these features enabled - dark-mode / glass-mode / red-border around an always-on-top window
  • Fixed issue with how the crop selector looks when the OS theme is in light mode

Included in Beta 5 from here

https://github.com/WindowTop/WindowTop-App/releases/tag/v5.22.0

@gileli121
Copy link
Member Author

gileli121 commented Sep 9, 2023

Development progress (Beta 6)

Improvments

  • Added "Spotify.exe" and "Slack.exe" to the default list of applications where the mouse interaction is enabled by default when activating PIP mode (these apps work perfectly with the mode)
  • Toolbar - removed the "Disable when maximized" option when showing it on PIP view (PIP can't be maximized)
  • Toolbar - added "elevated" icon when it shows on PIP view that is owned by an elevated window while the program is not elevated yet (can happen after the recovery...)
• Global exception handler - added more information in the error window

image

Bugfixes

  • Fixed bug in PIP that when you minimize the PIP window (directly from PIP mode), the window was not minimized correctly (Set top problem #314)
  • Fixed bug (regression from beta 5) that sometimes the app added in its memory to the same window more than once and as a result, it caused a lot of issues (with Anchors, PIP, and everything else)
  • Fixed bug (regression from beta 5) that when closing an elevated window with PIP view, the app was unable to detect it and did not remove the PIP view
  • Fixed bug that when having an anchor of a PIP view of an elevated window, the anchor shows the icon of WindowTop with the wrong title
  • Fixed bug with PIP crop selector and anchors that sometimes, while dragging the selected crop region, it may drag the anchor
  • Fixed hotkey bug for PIP that the hotkey did not work for PIP view owned by elevated window
  • Fixed bug in PIP + Interact mode that the mouse scroll working only after the mouse entered the PIP window a second time
  • Fixed a few null exceptions caused by PIP + CROP features
  • Fixed PIP recovery logic when the program crashes while having PIP view to an elevated window. In such case, when you open the program again, it will able to recover that window
  • Fixed bug in PIP mode that sometimes the window was un-hidden (even if the option "Hide original window enabled")

Included in Beta 6 from here

https://github.com/WindowTop/WindowTop-App/releases/tag/v5.22.0

@gileli121
Copy link
Member Author

Development progress (Beta 7)

Improvments

None

Bugfixes

  • Fixed (regression from beta 6) issue that the app failed to start when it was configured to start as an admin user
  • Fixed wrong behavior when the user enables crop from the toolbar - the app asks to run as admin, and it should not ask it (because you already know it by the "elevated" icon...). (The OS will prompt the admin permission request anyway.)

Included in Beta 7 from here

https://github.com/WindowTop/WindowTop-App/releases/tag/v5.22.0

@gileli121
Copy link
Member Author

Development progress (Beta 8)

Improvments

None

Bugfixes

  • Fixed (regression from last betas) exception System.ArgumentException: '-127.648435918202' is not a valid value for property 'MinHeight'. that originated from the PIP feature
  • Fixed (regression from last betas) exception System.ArgumentException: 'NaN' is not a valid value for property 'MinWidth'. that originated from the PIP feature
  • Fixed bug in PIP that when you apply a crop region directly on the PIP view (not native window), the PIP view may move to the top-left of the screen
  • Fixed bug that in some cases PIP mode causes some windows to open on the bottom of the screen, and the issue was that the app did not "recover" it (did not move the window back to the center)

Included in Beta 8 from here

https://github.com/WindowTop/WindowTop-App/releases/tag/v5.22.0

@gileli121
Copy link
Member Author

Released

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Feature-Picture-in-Picture Picture in Picture feature Feature-PiP-Crop
Projects
None yet
Development

No branches or pull requests

1 participant