Changeset 7615b92 for launchers


Ignore:
Timestamp:
Sep 18, 2018 3:36:38 PM (19 months ago)
Author:
meeh <meeh@…>
Branches:
master
Children:
f76874a
Parents:
1bddf55
Message:

Adding all new code, removed a lot obsolete code and fixed import paths etc.
Mac OS X launcher:

  • UI built on Swift
    • Why?
      • Apple seems to on purpose make it harder to get into Objective-C these days
      • Swift is compiled to native code, but has easiness of Javascript in programming
      • Perfect for the OS X UI, many guides & tutorials as well
  • "Backend" in Objective-C++ / C++14
    • Why?
      • Originally written in Objective-C / C++14 with C++17 backports
      • Only for backend because of the time the development takes *

Short summary of features:

  • Java
    • It can detect java from:
      • JAVA_HOME environment variable
      • "Internet Plug-Ins" Apple stuff
      • By the /usr/libexec/java_home binary helper
    • It can unpack a new version of I2P
      • Unpacks to ~/Library/I2P
      • Can check currently unpacked version in ~/Library/I2P via i2p.jar's "net.i2p.CoreVersion?"
  • User Interface (a popover, see https://youtu.be/k8L3lQ5rUq0 for example of this concept)
    • Router control tab view
      • It can start the router
      • It can stop the router
      • It can detect already running router, then avoid fireing up one
      • It can show basic information about the router state & version
    • Log view tab (not yet done)
  • While left-click triggers popover, right-click draws a minimal context menu
Location:
launchers/macosx
Files:
25 added
1 deleted
1 edited
20 moved

Legend:

Unmodified
Added
Removed
  • launchers/macosx/I2PLauncher/Info.plist

    r1bddf55 r7615b92  
    44<dict>
    55        <key>CFBundleDevelopmentRegion</key>
    6         <string>English</string>
     6        <string>$(DEVELOPMENT_LANGUAGE)</string>
    77        <key>CFBundleExecutable</key>
    8         <string>I2PLauncher</string>
    9         <key>NSHumanReadableCopyright</key>
    10         <string>Public Domain</string>
    11         <key>CFBundleGetInfoString</key>
    12         <string>0.9.35-experimental</string>
     8        <string>$(EXECUTABLE_NAME)</string>
    139        <key>CFBundleIconFile</key>
    14         <string>images/AppIcon.icns</string>
     10        <string></string>
    1511        <key>CFBundleIdentifier</key>
    16         <string>net.i2p.launcher</string>
     12        <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
    1713        <key>CFBundleInfoDictionaryVersion</key>
    1814        <string>6.0</string>
    1915        <key>CFBundleName</key>
    20         <string>I2P</string>
     16        <string>$(PRODUCT_NAME)</string>
    2117        <key>CFBundlePackageType</key>
    2218        <string>APPL</string>
    2319        <key>CFBundleShortVersionString</key>
    24         <string>0.0.1</string>
    25         <key>CFBundleSignature</key>
    26         <string>I2P</string>
     20        <string>1.0</string>
     21        <key>CFBundleURLTypes</key>
     22        <array>
     23                <dict>
     24                        <key>CFBundleTypeRole</key>
     25                        <string>Editor</string>
     26                        <key>CFBundleURLIconFile</key>
     27                        <string>ItoopieTransparent</string>
     28                        <key>CFBundleURLName</key>
     29                        <string>http+i2p</string>
     30                        <key>CFBundleURLSchemes</key>
     31                        <array>
     32                                <string>http+i2p</string>
     33                        </array>
     34                </dict>
     35        </array>
    2736        <key>CFBundleVersion</key>
    28         <string>0.0.1</string>
    29     <key>NSUserNotificationAlertStyle</key>
    30     <string>alert</string>
     37        <string>1</string>
     38        <key>LSMinimumSystemVersion</key>
     39        <string>$(MACOSX_DEPLOYMENT_TARGET)</string>
     40        <key>LSUIElement</key>
     41        <true/>
    3142        <key>NSAppleScriptEnabled</key>
    3243        <true/>
    33         <key>CGDisableCoalescedUpdates</key>
    34         <true/>
    35         <key>LSMinimumSystemVersion</key>
    36         <string>10.5</string>
    37         <key>CFBundleDisplayName</key>
    38         <string>I2P</string>
    39         <key>LSMinimumSystemVersionByArchitecture</key>
    40         <dict>
    41                 <key>i386</key>
    42                 <string>10.5.0</string>
    43                 <key>x86_64</key>
    44                 <string>10.6.0</string>
    45         </dict>
    46     <key>LSUIElement</key>
    47     <string>1</string>
     44        <key>NSHumanReadableCopyright</key>
     45        <string>Copyright © 2018 The I2P Project. All rights reserved.</string>
     46        <key>NSMainNibFile</key>
     47        <string>UserInterfaces</string>
     48        <key>NSPrincipalClass</key>
     49        <string>NSApplication</string>
     50        <key>NSServices</key>
     51        <array>
     52                <dict/>
     53        </array>
    4854</dict>
    4955</plist>
Note: See TracChangeset for help on using the changeset viewer.