#πŸ”’ Unfocusable window (Windows user32 API)

4 messages Β· Page 1 of 1 (latest)

wispy canopy
#
def create_webview():
    return webview.create_window(
        title="ValoKit",
        url="http://localhost:8900/index.html",
        vibrancy=True,
        hidden=True,
        on_top=True,
        frameless=True
    )

how is it possible that pywebview can make it so that the application can receive mouse clicks but cannot be focused???
I looked at their Github which had the following code to handle this. Looking at the code I replicated the same thing using the ctypes library but I could not make it so that the window is unfocusable.

if not window.focus:
                win32gui.SetWindowLong(self.Handle.ToInt32(), win32con.GWL_EXSTYLE, win32gui.GetWindowLong(self.Handle.ToInt32(), win32con.GWL_EXSTYLE) | win32con.WS_EX_NOACTIVATE)

def on_activated(self, sender, args):
            if not self.pywebview_window.focus:
                win32gui.SetWindowLong(self.Handle.ToInt32(), win32con.GWL_EXSTYLE, win32gui.GetWindowLong(self.Handle.ToInt32(), win32con.GWL_EXSTYLE) | win32con.WS_EX_NOACTIVATE)
            
            if self.browser:
                self.browser.web_view.Focus()

            if is_cef:
                CEF.focus(self.uid)
celest mangoBOT
#

@wispy canopy

Python help channel opened

Remember to:

  • Ask your Python question, not if you can ask or if there's an expert who can help.
  • Show a code sample as text (rather than a screenshot) and the error message, if you've got one.
  • Explain what you expect to happen and what actually happens.

:warning: Do not pip install anything that isn't related to your question, especially if asked to over DMs.

celest mangoBOT
#

@wispy canopy

Python help channel closed

This help channel has been closed and it's no longer possible to send messages here. If your question wasn't answered, feel free to create a new post in #1035199133436354600. To maximize your chances of getting a response, check out this guide on asking good questions.