Coder Social home page Coder Social logo

tvosbrowser's Introduction

tvOS Browser

Very simplistic browser for tvOS using private API (aka UIWebView). This is about as complete as this project is ever going to get, so just treat it as sample code.

You'll need to redefine the following in Availability.h to build successfully.

__TVOS_UNAVAILABLE
__TVOS_PROHIBITED

How to Use

Tap the top of the touch area on the Apple TV Remote to switch between cursor & scroll mode.

Click the touch area to click.

Menu will navigate back.

The Play/Pause button will let you input URLs (no fuzzy matching or auto-search).

tvosbrowser's People

Contributors

steventroughtonsmith avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tvosbrowser's Issues

Hitting the play/pause button shows more options

Can we have a list of recently visited websites here?
That would save a lot of time on frequently visited websites.
an option to 'star' a visited website to pin it to the top of the list. (sort of like a bookmark) would be nice as well.
also the option to star the current URL.
in the keyboard section, is there a way to add the keyboard that has .com as one of the buttons?
I think that's the email keyboard. (but i'm not so sure)

Videos don't play

When attempting to load a .mp4 file (which works fine in iOS), you see the little Play icon, but it doesn't actually play the video when you click it. I have verified that HTML5 audio elements play correctly, but video does not.

Cannot log in to Discord

When i type my email and password, then click on the “login” button, my mail and password disappears and Discord says “wrong password or email”

I've extracted from TCA's [#1086](https://github.com/pointfreeco/swift-composable-architecture/issues/1086) the following minimal suite that doesn't pass when built in `Release` mode:

I've extracted from TCA's #1086 the following minimal suite that doesn't pass when built in Release mode:

import CasePaths
import XCTest

public enum RootAction: Equatable {
  case branch(BranchAction)
//  case noop // Add this and extraction succeeds
}

public enum BranchAction: Equatable {
  case firstAction(Bool)
  case secondAction(Bool)
  case leaf(LeafAction) // Remove this and extraction succeeds
}

public enum LeafAction: Equatable {
  case value(Value) // Or case value(Any) with explicit `Equatable` conformance.
}

public struct Value: Equatable {
  var value: Any
  public static func == (lhs: Value, rhs: Value) -> Bool { true }
}

class CasePathIssueTests: XCTestCase {
  func testFirst() throws {
    XCTAssertEqual(
      (/RootAction.branch).extract(from: .branch(.firstAction(true))),
      .firstAction(true)
    )
  }
  func testSecond() throws {
    XCTAssertEqual(
      (/RootAction.branch).extract(from: .branch(.secondAction(true))),
      .secondAction(true)
    )
  }
}

A few comments:

  • It passes in Debug mode
  • If .firstAction has no associated value, it becomes the one that fails to extract, and second passes.

I'm not knowledgeable enough with runtime and the intricacies of the extraction algorithm to fix this issue.

Originally posted by @tgrapperon in pointfreeco/swift-case-paths#71

Certain websites dont allow cursor

When I try to go to our dashboard on powerbi.microsoft.com, I am unable to get the cursor to show up so I can login to the page. Is this caused by a script running on the site that is preventing the cursor from working? Is there a fix for this?

Thanx

Own HTTPS Certificate not working

Hello,

we're using a internal Site which has a force redirect to HTTPS for security reasons.
This site has a HTTPS Certificate which is issued by our own Domain Controller so the tvOS Browser isn't recognizing it as "trusted". We can't open this site this way.

Is there a way to modify the source code to bypass this behaviour?

3 Build Errors

Hi, I'm new in programming and I tried to build the TV browser and after following all steps, I still have those errors:
Showing Recent Issues
Check dependencies

Code Signing Error: No account for team "NKQ4HJ66PX". Add a new account in the Accounts preference pane or verify that your accounts have valid credentials.
Code Signing Error: No profiles for 'com.Moballo.tvbrowser' were found: Xcode couldn't find any tvOS App Development provisioning profiles matching 'com.Moballo.tvbrowser'.
Code Signing Error: Code signing is required for product type 'Application' in SDK 'tvOS 11.4'

Please Help!

Thank's in advance.

**Describe the bug**

Describe the bug

Configured default cascades appear to have no effect.

To Reproduce

Set default cascade to ['persist'] and persist a relation.

Expected behavior

Default cascade.

Originally posted by @RWOverdijk in SpoonX/wetland#278

TABS TABS TABS

I need tabs to use this browser otherwise will be useless. Why we cannot open at least 5/10 tabs?

Changes to Availability.h

Could you please elaborate on how to redefine __TVOS_UNAVAILABLE
and __TVOS_PROHIBITED in Availability.h?
I've located the Availability.h file but not sure what to change.
I tried setting them to 'available' as below but that globally enables everything and caused too many errors.

#define __TVOS_UNAVAILABLE                    __OS_AVAILABILITY(tvos,unavailable)
#define __TVOS_PROHIBITED                     __OS_AVAILABILITY(tvos,unavailable)

Keyboard needs work

The on-screen keyboard rarely pops up when entering text on websites. More specifically, Facebook and twitter. Also videos could use some work. Really good app overall though.

mouse movement

can we change cursor movement to something similar to the trackpad?
I find the current behaviour rather odd and hard to get used to.
(i'm not a developer so please don't hate on me :) )

Build Failed - missing required architecture arm64

ld: in

/System/Library/PrivateFrameworks/UIFoundation.framework/UIFoundation', missing required architecture arm64 in file
/System/Library/PrivateFrameworks/UIFoundation.framework/UIFoundation (2 slices) for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

Could not build module 'UIKit'

I'm getting these errors when trying to build to an Apple TV 4K (2nd generation):

Could not build module 'UIKit'

API_AVAILABLE(ios(3.2)) __TVOS_PROHIBITED @interface UIDocumentInteractionController : NSObject

Website not compatible

Hi!

I am using a website called dtsv.co.za to stream their online content. I have the browser working on the apple tv, but when it comes to playing the content, I get this:

The following browsers are supported for online streaming:

Chrome version 35+
Firefox version 47+
Internet Explorer 11+ on Windows 8.1+
Microsoft Edge on Windows 10+
Safari 9+ on Mac OS X 10.11+
Opera 33+ on Windows 10+

Is there anyway to change the user agent or something to allow the content to play?
Any help would be appreciated.

Thanks,
Courtney

Tabs? Cycle through tabs?

Hello,

We'd love to leverage this to cycle through tabs. Is there any way to add this functionality?

Gray border around web view

After following the instructions to load the app, everything worked and Google.com showed up but the browser was down and to the the right of top left. It almost appears as if a thick gray border is around the web view. I've experimented with full screen but it appears that full screen is already set but the border is preventing it.

I'm in XCode 9.2 running on Apple TV (not the 4K version).

App won't open on Apple TV

I've been running the app in almost a year. But in December it stopped working. I can't seem to open the app. When I try to open it, it just closes straight away.

Do you guys know if there's any issues with the latest update? Not sure the update is what caused it.

'UIWebView' has been explicitly marked unavailable

Hello,
I am getting to following issues. It looks like something has changed on the tvOS side?

loading:/Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/SDKs/AppleTVSimulator9.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWebView.h:40:58: 'UIWebView' has been explicitly marked unavailable

here/Applications/Xcode.app/Contents/Developer/Platforms/AppleTVSimulator.platform/Developer/SDKs/AppleTVSimulator9.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWebView

App Crash

when opening stream url the app crash
-[AVPlayerLayer setPIPModeEnabled:]: unrecognized selector sent to instance 0x1c022b240

App Crash tvOS 16

The app crashes on an Apple TV 4K (1st gen) since the update to tvOS 16 as soon as you want to play a video. Before that it worked without problems

New tvOS 11 Update

After buying a new Apple TV, it is running tvOS 11. The click once to click on a link no longer works. Can go to website but cannot do anything after that

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.