Skip to content

fix: Default to full screen window on the first run #17836

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

alexjba
Copy link
Contributor

@alexjba alexjba commented Apr 23, 2025

What does the PR do

Closes #17835

This is especially useful for devices with virtual keyboard. When the app is full screen, the default behavior would be for the keyboard to push the content up when showing so that the text input area isn't covered by the virtual keyboard.

The window size and position is still saved to settings.

Affected areas

Window default size

Architecture compliance

Screenshot of functionality (including design for comparison)

  • I've checked the design and this PR matches it
Untitled.mov

This is especially useful for devices with virtual keyboard. When the app is full screen, the default behavior would be for the keyboard to push the content up when showing so that the text input area isn't covered by the virtual keyboard.
@alexjba alexjba requested a review from a team as a code owner April 23, 2025 15:12
@alexjba alexjba requested review from richard-ramos, caybro, micieslak and noeliaSD and removed request for a team and richard-ramos April 23, 2025 15:12
@status-im-auto
Copy link
Member

status-im-auto commented Apr 23, 2025

Jenkins Builds

Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 7862c91 #1 2025-04-23 15:21:35 ~9 min tests/nim 📄log
✔️ 7862c91 #1 2025-04-23 15:23:19 ~10 min macos/aarch64 🍎dmg
7862c91 #1 2025-04-23 15:26:18 ~13 min windows/x86_64 📄log
✔️ 7862c91 #1 2025-04-23 15:26:23 ~13 min tests/ui 📄log
✔️ 7862c91 #1 2025-04-23 15:27:46 ~15 min macos/x86_64 🍎dmg
✔️ 7862c91 #1 2025-04-23 15:37:05 ~24 min linux/x86_64 📦tgz
✔️ 7862c91 #1 2025-04-23 15:37:50 ~25 min linux-nix/x86_64 📦tgz
7862c91 #2 2025-04-23 15:40:40 ~10 min windows/x86_64 📄log
7862c91 #3 2025-04-24 06:38:09 ~11 min windows/x86_64 📄log

@@ -15,7 +15,7 @@ const DEFAULT_SCROLL_VELOCITY = 0 # unset
const DEFAULT_SCROLL_DECELERATION = 0 # unset
const LAS_KEY_CUSTOM_MOUSE_SCROLLING_ENABLED = "global/custom_mouse_scroll_enabled"
const DEFAULT_CUSTOM_MOUSE_SCROLLING_ENABLED = false
const DEFAULT_VISIBILITY = 2 #windowed visibility, from qml
const DEFAULT_VISIBILITY = 5 #full screen visibility, from qml
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Almost sure this will result, at least on Linux, in the window not having any decoration at all

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
const DEFAULT_VISIBILITY = 5 #full screen visibility, from qml
const DEFAULT_VISIBILITY = 1 #automatic visibility, from qml

This should default to either Fullscreen (supposedly on mobile OSs), or to Windowed otherwise; see https://doc.qt.io/qt-6.8/qwindow.html#Visibility-enum

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar to what I'm showing in the description?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See the suggestion above

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That was my first intention. But unfortunately it doesn't work. It's still windowed.

What about defaulting to maximized then? It should still have the window decorations 🤔

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That was my first intention. But unfortunately it doesn't work. It's still windowed.

What about defaulting to maximized then? It should still have the window decorations 🤔

Yeah that's a better idea :) Or you could make the DEFAULT_VISIBILITY conditional based on the runtime OS

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, I think I'll do that. Maximized is not going to work on all configurations and screen sizes.

Copy link
Contributor

@noeliaSD noeliaSD Apr 24, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested on iOS pad and with const DEFAULT_VISIBILITY = 1 I can state that it does not fit the requirement. I agree also in making it conditional and use 5 when necessary.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Touch] Start the app in full screen by default
4 participants