Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: gioui/gio
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: inkeliz/gio
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 5 commits
  • 14 files changed
  • 1 contributor

Commits on Jun 10, 2024

  1. Add deeplink (#2)

    * io,app: add custom scheme support
    
    Now, it's possible to launch one Gio app using a custom URI scheme, such as `gio://some/data`.
    
    This feature is supported on Android, iOS, macOS and Windows, issuing a new transfer.URLEvent,
    containing the URL launched. If the program is already open, one transfer.URLEvent will be
    sent to the current  app.
    
    Limitations:
    On Windows, if the program listen to schemes (compiled with `-schemes`), then just a single
    instance of the app can be open. In other words, just a single `myprogram.exe` can
    be active.
    
    Security:
    Deeplinking have the same level of security of clipboard. Any other software can send such
    information and read the content, without any restriction. That should not be used to transfer
    sensible data, and can't be fully trusted.
    
    Setup/Compiling:
    In order to set the custom scheme, you need to use the new `-schemes` flag in `gogio`, using
    as `-schemes gio` will listen to `gio://`.
    
    If you are not using gogio you need to defined some values, which varies for each OS:
    
    macOS/iOS - You need to define the following Properly List:
    ```
    <key>CFBundleURLTypes</key>
    <array>
      <dict>
            <key>CFBundleURLSchemes</key>
            <array>
              <string>yourCustomScheme</string>
            </array>
      </dict>
    </array>
    ```
    
    Windows - You need to compiling using -X argument:
    ```
    -ldflags="-X "gioui.org/app.schemesDeeplink=yourCustomScheme" -H=windowsgui"
    ```
    
    Android - You need to add IntentFilter in GioActivity:
    ```
    <intent-filter>
            <action android:name="android.intent.action.VIEW"></action>
            <category android:name="android.intent.category.DEFAULT"></category>
            <category android:name="android.intent.category.BROWSABLE"></category>
            <data android:scheme="yourCustomScheme"></data>
    </intent-filter>
    ```
    
    That assumes that you still using GioActivity and GioAppDelegate, otherwise more
    changes are required.
    
    Signed-off-by: inkeliz <[email protected]>
    
    * app: [ios/macos] remove mutex
    
    Signed-off-by: inkeliz <[email protected]>
    
    * io: fix documentation
    
    Signed-off-by: inkeliz <[email protected]>
    
    * app: [windows] change name and value of the scheme message identifier
    
    Signed-off-by: inkeliz <[email protected]>
    
    ---------
    
    Signed-off-by: inkeliz <[email protected]>
    inkeliz authored Jun 10, 2024
    Configuration menu
    Copy the full SHA
    67df14e View commit details
    Browse the repository at this point in the history
  2. app,io,widget: [android/macos] fix focus issues (#3)

    This patch is intended to fix two issues related to focus and
    software-keyboard.
    
    The focus is now reseted if it's lost due to external event,
    such as clicking on non-Gio window/activity/fragment.
    
    The software-keyboard will now re-open when clicked, except
    if it's ReadOnly.
    
    On macOS it will request focus again if the focus is lose
    due to another View in the same Window. However, currently,
    it's done by using ShowTextInput.
    
    Fixes: https://todo.sr.ht/~eliasnaur/gio/591
    
    Signed-off-by: inkeliz <[email protected]>
    inkeliz authored Jun 10, 2024
    Configuration menu
    Copy the full SHA
    8b0f062 View commit details
    Browse the repository at this point in the history

Commits on Sep 9, 2024

  1. app: fix animation request

    inkeliz committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    ff28ced View commit details
    Browse the repository at this point in the history
  2. app: [android] fix compatibility with older Android versions

    Previously, setHighRefreshRate requires APIs restricted
    to Android 30, or higher.
    
    Tested on Android 6.0.1 (released on 2015).
    inkeliz committed Sep 9, 2024
    Configuration menu
    Copy the full SHA
    1757d41 View commit details
    Browse the repository at this point in the history

Commits on May 26, 2025

  1. upgrade: Gio version

    inkeliz committed May 26, 2025
    Configuration menu
    Copy the full SHA
    d100c2c View commit details
    Browse the repository at this point in the history
Loading