├── .gitattributes ├── .gitignore ├── .gitmodules ├── .xctool-args ├── AirPlay ├── AirPlay.hpp ├── AirPlay.mm ├── ServiceDiscovery.cpp ├── ServiceDiscovery.hpp ├── Tests │ ├── AirPlayTests.mm │ └── Info.plist ├── reverseHTTP.cpp └── reverseHTTP.hpp ├── BarrageRenderer ├── BarrageEngine │ ├── BarrageCanvas.h │ ├── BarrageCanvas.m │ ├── BarrageClock.h │ ├── BarrageClock.m │ ├── BarrageDescriptor.h │ ├── BarrageDescriptor.m │ ├── BarrageDispatcher.h │ ├── BarrageDispatcher.m │ ├── BarrageRenderer.h │ ├── BarrageRenderer.m │ ├── BarrageSpriteFactory.h │ └── BarrageSpriteFactory.m ├── BarrageHeader.h ├── BarrageLoader │ ├── BarrageLoader.h │ └── BarrageLoader.m ├── BarrageSpirit │ ├── BarrageFloatImageSprite.h │ ├── BarrageFloatImageSprite.m │ ├── BarrageFloatSprite.h │ ├── BarrageFloatSprite.m │ ├── BarrageFloatTextSprite.h │ ├── BarrageFloatTextSprite.m │ ├── BarrageSprite.h │ ├── BarrageSprite.m │ ├── BarrageSpriteProtocol.h │ ├── BarrageSpriteUtility.h │ ├── BarrageSpriteUtility.m │ ├── BarrageWalkImageSprite.h │ ├── BarrageWalkImageSprite.m │ ├── BarrageWalkSprite.h │ ├── BarrageWalkSprite.m │ ├── BarrageWalkTextSprite.h │ └── BarrageWalkTextSprite.m ├── NHDisplayLink.h ├── NHDisplayLink.m ├── NSLabel.h ├── NSLabel.m ├── NSValue+iOS.h ├── NSValue+iOS.m ├── NSView+UIView.h └── NSView+UIView.m ├── Crashlytics.framework ├── Crashlytics ├── Headers ├── Modules ├── Resources ├── Versions │ ├── A │ │ ├── Crashlytics │ │ ├── Headers │ │ │ ├── ANSCompatibility.h │ │ │ ├── Answers.h │ │ │ ├── CLSAttributes.h │ │ │ ├── CLSLogging.h │ │ │ ├── CLSReport.h │ │ │ ├── CLSStackFrame.h │ │ │ └── Crashlytics.h │ │ ├── Modules │ │ │ └── module.modulemap │ │ └── Resources │ │ │ └── Info.plist │ └── Current ├── run ├── submit └── uploadDSYM ├── Fabric.framework ├── Fabric ├── Headers ├── Modules ├── Resources ├── Versions │ ├── A │ │ ├── Fabric │ │ ├── Headers │ │ │ ├── FABAttributes.h │ │ │ └── Fabric.h │ │ ├── Modules │ │ │ └── module.modulemap │ │ └── Resources │ │ │ └── Info.plist │ └── Current ├── run └── uploadDSYM ├── HOW_TO_BUILD.md ├── ISSUE_TEMPLATE.md ├── LICENSE ├── Plug-Ins.md ├── Privacy_Policy.md ├── README.md ├── VideoPolymer.xcworkspace ├── contents.xcworkspacedata └── xcshareddata │ ├── IDEWorkspaceChecks.plist │ ├── VideoPolymer.xcscmblueprint │ └── bilibili.xcscmblueprint ├── bilibili.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── bilibili.xcscmblueprint ├── xcshareddata │ └── xcschemes │ │ └── bilibili.xcscheme └── xcuserdata │ └── typcn.xcuserdatad │ ├── xcdebugger │ └── Breakpoints_v2.xcbkptlist │ └── xcschemes │ └── xcschememanagement.plist ├── bilibili ├── Base.lproj │ ├── AirPlay.xib │ ├── AutoSuggestTable.xib │ ├── Localizable.strings │ ├── Main.storyboard │ ├── NetErr.strings │ ├── PFAboutWindow.xib │ ├── PlayerControl.xib │ ├── PlayerLoader.xib │ └── Toolbar.xib ├── Browser │ ├── AddressBar.h │ ├── AddressBar.m │ ├── AutoSuggestTable.h │ ├── AutoSuggestTable.m │ ├── Browser.h │ ├── Browser.mm │ ├── CloudScript.h │ ├── CloudScript.m │ ├── TWebView.h │ ├── TWebView.mm │ ├── ToolBar.h │ ├── ToolBar.m │ ├── UserContentController.h │ ├── UserContentController.m │ ├── WebTabView.h │ ├── WebTabView.mm │ ├── WebView+SwipeNavigation.h │ └── WebView+SwipeNavigation.m ├── Common.hpp ├── DataStore │ ├── BrowserHistory.h │ ├── BrowserHistory.m │ ├── HotURL.h │ ├── HotURL.m │ ├── PJTernarySearchTree.h │ ├── PJTernarySearchTree.m │ ├── PlayPosition.h │ └── PlayPosition.m ├── Downloader │ ├── DownloadWrapper.h │ └── DownloadWrapper.mm ├── Images.xcassets │ ├── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── Icon_128x128.png │ │ ├── Icon_128x128@2x.png │ │ ├── Icon_16x16.png │ │ ├── Icon_16x16@2x.png │ │ ├── Icon_256x256.png │ │ ├── Icon_256x256@2x.png │ │ ├── Icon_32x32.png │ │ ├── Icon_32x32@2x.png │ │ ├── Icon_512x512.png │ │ └── Icon_512x512@2x.png │ ├── Contents.json │ ├── MovieFileIcon.iconset │ │ ├── icon_128x128.png │ │ ├── icon_128x128@2x.png │ │ ├── icon_16x16.png │ │ ├── icon_16x16@2x.png │ │ ├── icon_256x256.png │ │ ├── icon_256x256@2x.png │ │ ├── icon_32x32.png │ │ ├── icon_32x32@2x.png │ │ ├── icon_512x512.png │ │ └── icon_512x512@2x.png │ └── SubFileIcon.iconset │ │ ├── icon_128x128.png │ │ ├── icon_128x128@2x.png │ │ ├── icon_16x16.png │ │ ├── icon_16x16@2x.png │ │ ├── icon_256x256.png │ │ ├── icon_256x256@2x.png │ │ ├── icon_32x32.png │ │ ├── icon_32x32@2x.png │ │ ├── icon_512x512.png │ │ └── icon_512x512@2x.png ├── Info.plist ├── LiveChat │ ├── BilibiliSocketProvider.h │ ├── BilibiliSocketProvider.m │ ├── LiveChat.h │ ├── LiveChat.m │ ├── SocketProvider.h │ └── SocketProvider.m ├── Notifications │ ├── DynamicView.h │ ├── DynamicView.m │ ├── DynamicView.xib │ ├── Popover.h │ └── Popover.m ├── Others │ ├── Analytics.h │ ├── Analytics.mm │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── CrashReport.h │ ├── CrashReport.m │ ├── Credits.rtf │ ├── DonateView.h │ ├── DonateView.mm │ ├── EULA.rtf │ ├── MBProgressHUD.h │ ├── MBProgressHUD.m │ ├── PFAboutWindowController.h │ ├── PFAboutWindowController.m │ ├── SimpleVideoFormatParser.h │ ├── SimpleVideoFormatParser.mm │ └── main.m ├── Player │ ├── Control │ │ ├── BGHUDSliderCell.h │ │ ├── BGHUDSliderCell.m │ │ ├── BGTheme.h │ │ ├── BGTheme.m │ │ ├── BGThemeManager.h │ │ ├── BGThemeManager.m │ │ ├── ControlsWithVibracy.h │ │ ├── ControlsWithVibracy.m │ │ ├── PlayerControlView.h │ │ ├── PlayerControlView.m │ │ ├── TimeSliderCell.h │ │ └── TimeSliderCell.m │ ├── Player.h │ ├── Player.m │ ├── PlayerEventProxy.h │ ├── PlayerEventProxy.m │ ├── PlayerLoader.h │ ├── PlayerLoader.m │ ├── PlayerManager.h │ ├── PlayerManager.m │ ├── PlayerView.h │ ├── PlayerView.mm │ ├── PlayerWindow.h │ ├── PlayerWindow.m │ └── Util Window │ │ ├── AirPlayView.h │ │ ├── AirPlayView.mm │ │ ├── PlayLocalFile.h │ │ ├── PlayLocalFile.m │ │ ├── PostComment.h │ │ └── PostComment.m ├── RemoteCall │ ├── BrowserExtInterface.h │ ├── BrowserExtInterface.m │ ├── HTTPServer.h │ ├── HTTPServer.mm │ ├── NSBundle+OBCodeSigningInfo.h │ ├── NSBundle+OBCodeSigningInfo.m │ ├── PluginManager.h │ ├── PluginManager.m │ ├── PreloadManager.h │ └── PreloadManager.m ├── Settings │ ├── CommentBlockSettings.h │ ├── CommentBlockSettings.m │ ├── KeywordBlockSettings.h │ ├── KeywordBlockSettings.m │ ├── MPVSettings.h │ ├── MPVSettings.m │ ├── OtherBlockSettings.h │ ├── OtherBlockSettings.m │ ├── Settings.h │ ├── Settings.m │ ├── Tools.h │ └── Tools.m ├── SubHelper │ ├── NSString+LcsDiff.h │ ├── NSString+LcsDiff.m │ ├── SP_Bilibili.h │ ├── SP_Bilibili.m │ ├── SP_Local.h │ ├── SP_Local.m │ ├── SubtitleHelper.h │ └── SubtitleHelper.m ├── VideoProvider │ ├── VP_Bilibili.h │ ├── VP_Bilibili.m │ ├── VP_Local.h │ ├── VP_Local.m │ ├── VP_YouGet.h │ └── VP_YouGet.m ├── WebPages │ ├── autoswitch.js │ ├── blocker.js │ ├── error.html │ ├── inject.js │ ├── jquery.min.js │ ├── masonry.pkgd.min.js │ ├── material.min.css │ ├── material.min.js │ ├── webui.html │ └── widget │ │ ├── css │ │ └── all.css │ │ └── widget.js ├── dsa_pub.pem ├── en.lproj │ ├── AirPlay.strings │ ├── Localizable.strings │ └── Main.strings ├── fontconfig │ ├── cache │ │ └── fontconfig │ │ │ ├── 84c0f976e30e948e99073af70f4ae876-le64.cache-4 │ │ │ └── CACHEDIR.TAG │ ├── fonts │ │ ├── conf.d │ │ │ ├── 10-autohint.conf │ │ │ ├── 10-no-sub-pixel.conf │ │ │ ├── 10-scale-bitmap-fonts.conf │ │ │ ├── 10-sub-pixel-bgr.conf │ │ │ ├── 10-sub-pixel-rgb.conf │ │ │ ├── 10-sub-pixel-vbgr.conf │ │ │ ├── 10-sub-pixel-vrgb.conf │ │ │ ├── 10-unhinted.conf │ │ │ ├── 11-lcdfilter-default.conf │ │ │ ├── 11-lcdfilter-legacy.conf │ │ │ ├── 11-lcdfilter-light.conf │ │ │ ├── 20-unhint-small-vera.conf │ │ │ ├── 25-unhint-nonlatin.conf │ │ │ ├── 30-metric-aliases.conf │ │ │ ├── 30-urw-aliases.conf │ │ │ ├── 40-nonlatin.conf │ │ │ ├── 45-latin.conf │ │ │ ├── 49-sansserif.conf │ │ │ ├── 50-user.conf │ │ │ ├── 51-local.conf │ │ │ ├── 60-latin.conf │ │ │ ├── 65-fonts-persian.conf │ │ │ ├── 65-khmer.conf │ │ │ ├── 65-nonlatin.conf │ │ │ ├── 69-unifont.conf │ │ │ ├── 70-no-bitmaps.conf │ │ │ ├── 70-yes-bitmaps.conf │ │ │ ├── 80-delicious.conf │ │ │ ├── 90-synthetic.conf │ │ │ └── README │ │ └── fonts.conf │ └── share │ │ ├── fontconfig │ │ └── conf.avail │ │ │ ├── 10-autohint.conf │ │ │ ├── 10-no-sub-pixel.conf │ │ │ ├── 10-scale-bitmap-fonts.conf │ │ │ ├── 10-sub-pixel-bgr.conf │ │ │ ├── 10-sub-pixel-rgb.conf │ │ │ ├── 10-sub-pixel-vbgr.conf │ │ │ ├── 10-sub-pixel-vrgb.conf │ │ │ ├── 10-unhinted.conf │ │ │ ├── 11-lcdfilter-default.conf │ │ │ ├── 11-lcdfilter-legacy.conf │ │ │ ├── 11-lcdfilter-light.conf │ │ │ ├── 20-unhint-small-vera.conf │ │ │ ├── 25-unhint-nonlatin.conf │ │ │ ├── 30-metric-aliases.conf │ │ │ ├── 30-urw-aliases.conf │ │ │ ├── 40-nonlatin.conf │ │ │ ├── 45-latin.conf │ │ │ ├── 49-sansserif.conf │ │ │ ├── 50-user.conf │ │ │ ├── 51-local.conf │ │ │ ├── 60-latin.conf │ │ │ ├── 65-fonts-persian.conf │ │ │ ├── 65-khmer.conf │ │ │ ├── 65-nonlatin.conf │ │ │ ├── 69-unifont.conf │ │ │ ├── 70-no-bitmaps.conf │ │ │ ├── 70-yes-bitmaps.conf │ │ │ ├── 80-delicious.conf │ │ │ └── 90-synthetic.conf │ │ └── xml │ │ └── fontconfig │ │ └── fonts.dtd ├── gencache.sh ├── headers │ ├── MediaInfoDLL │ │ ├── MediaInfoDLL.h │ │ └── MediaInfoDLL_Static.h │ ├── aria2.hpp │ ├── mpv.h │ └── mpv_nullsafe.h ├── img │ ├── backwards.png │ ├── copy.png │ ├── credits.txt │ ├── forward.png │ ├── homepage.png │ ├── loading.gif │ ├── menubutton.png │ ├── mpv.icns │ ├── play.png │ ├── player │ │ ├── b_play.pdf │ │ ├── credits.txt │ │ ├── enterfullscreen.pdf │ │ ├── exitfillscreen_lr.pdf │ │ ├── exitfillscreen_ub.pdf │ │ ├── exitfullscreen.pdf │ │ ├── fillscreen_lr.pdf │ │ ├── fillscreen_ub.pdf │ │ ├── fold.pdf │ │ ├── mute.pdf │ │ ├── next-episode.pdf │ │ ├── pause.pdf │ │ ├── prev-episode.pdf │ │ ├── resizeindicator.png │ │ ├── titlebar-corner-left.png │ │ ├── titlebar-corner-right.png │ │ ├── titlebar-middle.png │ │ ├── toolbar_audio.icns │ │ ├── toolbar_video.icns │ │ ├── unfold.pdf │ │ ├── vol_high.pdf │ │ ├── vol_low.pdf │ │ ├── vol_mid.pdf │ │ └── vol_no.pdf │ ├── reload.png │ ├── reloadp.png │ ├── search.png │ └── webpage.png ├── ja.lproj │ ├── Localizable.strings │ └── Main.strings ├── libs │ ├── Sparkle.framework │ │ ├── Headers │ │ ├── Modules │ │ ├── PrivateHeaders │ │ ├── Resources │ │ ├── Sparkle │ │ └── Versions │ │ │ ├── A │ │ │ ├── Headers │ │ │ │ ├── SUAppcast.h │ │ │ │ ├── SUAppcastItem.h │ │ │ │ ├── SUErrors.h │ │ │ │ ├── SUExport.h │ │ │ │ ├── SUStandardVersionComparator.h │ │ │ │ ├── SUUpdater.h │ │ │ │ ├── SUVersionComparisonProtocol.h │ │ │ │ ├── SUVersionDisplayProtocol.h │ │ │ │ └── Sparkle.h │ │ │ ├── Modules │ │ │ │ └── module.modulemap │ │ │ ├── PrivateHeaders │ │ │ │ └── SUUnarchiver.h │ │ │ ├── Resources │ │ │ │ ├── Autoupdate.app │ │ │ │ │ └── Contents │ │ │ │ │ │ ├── Info.plist │ │ │ │ │ │ ├── MacOS │ │ │ │ │ │ └── Autoupdate │ │ │ │ │ │ ├── PkgInfo │ │ │ │ │ │ └── Resources │ │ │ │ │ │ ├── AppIcon.icns │ │ │ │ │ │ ├── SUStatus.nib │ │ │ │ │ │ ├── ar.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── ca.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── cs.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── da.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── de.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── el.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── en.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── es.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── fi.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── fr.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── he.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── is.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── it.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── ja.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── ko.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── nb.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── nl.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── pl.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── pt_BR.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── pt_PT.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── ro.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── ru.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── sk.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── sl.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── sv.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── th.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── tr.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── uk.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ ├── zh_CN.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ │ │ └── zh_TW.lproj │ │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── Info.plist │ │ │ │ ├── SUModelTranslation.plist │ │ │ │ ├── SUStatus.nib │ │ │ │ ├── ar.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── ca.lproj │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── cs.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── da.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── de.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── el.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── en.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── es.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── fi.lproj │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── fr.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── fr_CA.lproj │ │ │ │ ├── he.lproj │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── is.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── it.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── ja.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── ko.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── nb.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── nl.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── pl.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── pt.lproj │ │ │ │ ├── pt_BR.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── pt_PT.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── ro.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── ru.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── sk.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── sl.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── sv.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── th.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── tr.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── uk.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ ├── zh_CN.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ │ └── zh_TW.lproj │ │ │ │ │ ├── SUAutomaticUpdateAlert.nib │ │ │ │ │ ├── SUUpdateAlert.nib │ │ │ │ │ ├── SUUpdatePermissionPrompt.nib │ │ │ │ │ └── Sparkle.strings │ │ │ └── Sparkle │ │ │ └── Current │ ├── aria2c │ ├── libass.5.dylib │ ├── libavcodec.57.dylib │ ├── libavdevice.57.dylib │ ├── libavfilter.6.dylib │ ├── libavformat.57.dylib │ ├── libavresample.3.dylib │ ├── libavutil.55.dylib │ ├── libfontconfig.1.dylib │ ├── libfreetype.6.dylib │ ├── libfribidi.0.dylib │ ├── libglib-2.0.0.dylib │ ├── libharfbuzz.0.dylib │ ├── libintl.8.dylib │ ├── libjpeg.8.dylib │ ├── liblcms2.2.dylib │ ├── liblua.5.2.dylib │ ├── libmediainfo.0.dylib │ ├── libmpv.dylib │ ├── libopus.0.dylib │ ├── libpcre.1.dylib │ ├── libpng16.16.dylib │ ├── libpostproc.54.dylib │ ├── libswresample.2.dylib │ ├── libswscale.4.dylib │ ├── libx264.148.dylib │ └── libz.1.dylib ├── startaria.sh └── zh-Hans.lproj │ ├── Localizable.strings │ └── Main.strings ├── chrome-extension ├── css │ └── custom.css ├── img │ ├── Icon128.png │ ├── Icon16.png │ └── Icon48.png ├── js │ ├── background.js │ ├── custom.js │ └── inject.js ├── manifest.json └── popup.html ├── fabric_submit_script.sh ├── genkey.sh ├── plugin ├── PluginExample │ ├── PluginExample.xcodeproj │ │ ├── project.pbxproj │ │ └── project.xcworkspace │ │ │ └── contents.xcworkspacedata │ └── plugin │ │ ├── Example.h │ │ ├── Example.m │ │ ├── ExamplePanel.xib │ │ ├── Info.plist │ │ └── Inject.js ├── TYPCN_Root_G3.crt └── VPPluginAPI │ ├── VPPlugin.xcodeproj │ └── project.pbxproj │ └── VPPlugin │ ├── Info.plist │ ├── SubtitleProvider.h │ ├── SubtitleProvider.m │ ├── VPPlugin.h │ ├── VPPlugin.m │ ├── VideoAddress.h │ ├── VideoAddress.m │ ├── VideoProvider.h │ └── VideoProvider.m └── tools └── merge_locale_string.py /.gitattributes: -------------------------------------------------------------------------------- 1 | *.dylib filter=lfs diff=lfs merge=lfs -crlf 2 | bilibili/libs/*.dylib filter=lfs diff=lfs merge=lfs -text 3 | bilibili/libs/aria2c filter=lfs diff=lfs merge=lfs -text 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | # 3 | build/ 4 | xcbaselines/ 5 | *.pbxuser 6 | !default.pbxuser 7 | *.mode1v3 8 | !default.mode1v3 9 | *.mode2v3 10 | !default.mode2v3 11 | *.perspectivev3 12 | !default.perspectivev3 13 | xcuserdata 14 | *.xccheckout 15 | *.moved-aside 16 | DerivedData 17 | *.hmap 18 | *.ipa 19 | *.xcuserstate 20 | 21 | APIKey.h 22 | fabric_submit_script.sh 23 | # CocoaPods 24 | # 25 | # We recommend against adding the Pods directory to your .gitignore. However 26 | # you should judge for yourself, the pros and cons are mentioned at: 27 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 28 | # 29 | #Pods/ 30 | 31 | .DS_Store 32 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "commentconvert"] 2 | path = bilibili/CommentConvert 3 | url = https://github.com/typcn/danmaku2ass_native.git 4 | [submodule "chromium-tabs"] 5 | path = chromium-tabs 6 | url = https://github.com/typcn/chromium-tabs.git 7 | [submodule "GCDWebServer"] 8 | path = GCDWebServer 9 | url = https://github.com/typcn/GCDWebServer.git 10 | [submodule "fmdb"] 11 | path = fmdb 12 | url = https://github.com/typcn/fmdb.git 13 | -------------------------------------------------------------------------------- /.xctool-args: -------------------------------------------------------------------------------- 1 | [ 2 | "-scheme","bilibili", 3 | "-workspace","VideoPolymer.xcworkspace" 4 | ] 5 | -------------------------------------------------------------------------------- /AirPlay/AirPlay.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // AirPlay.hpp 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/13. 6 | // 2016 TYPCN. MIT License 7 | // 8 | 9 | #ifndef AirPlay_hpp 10 | #define AirPlay_hpp 11 | 12 | #include "reverseHTTP.hpp" 13 | #include 14 | #include 15 | #include 16 | #include 17 | 18 | #import 19 | 20 | // To use on other platforms , Just change the NSURLSession to libcURL , NSArray to std::map 21 | 22 | class AirPlay{ 23 | private: 24 | PTTH *rhttp; 25 | std::string uuid; 26 | std::string connStr; 27 | NSString *userAgent = @"TYPCNAirPlay/1.00 (like iTunes/12.2.2)"; 28 | public: 29 | NSDictionary *getDeviceList(); 30 | bool selectDevice(const char* deviceName,const char* domain); 31 | bool reverse(); 32 | void playVideo(const char* url,float startpos); 33 | void stop(); 34 | void disconnect(); 35 | void clear(); 36 | }; 37 | 38 | #endif /* AirPlay_hpp */ 39 | -------------------------------------------------------------------------------- /AirPlay/ServiceDiscovery.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // ServiceDiscovery.hpp 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/13. 6 | // 2016 TYPCN. MIT License 7 | // 8 | 9 | #ifndef ServiceDiscovery_hpp 10 | #define ServiceDiscovery_hpp 11 | 12 | #include 13 | #include 14 | #include 15 | 16 | extern std::map SD_Map; 17 | extern struct in_addr SD_inAddr; 18 | 19 | bool SD_Start(const char *regType); 20 | bool SD_Resolve(const char* name,const char *domain); 21 | bool SD_Addr(const char* hostname); 22 | void SD_Wait(int waitTime); 23 | void SD_Clear(); 24 | 25 | #endif /* ServiceDiscovery_hpp */ 26 | -------------------------------------------------------------------------------- /AirPlay/Tests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /AirPlay/reverseHTTP.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // reverseHTTP.hpp 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/16. 6 | // 2016 TYPCN. MIT License 7 | // 8 | 9 | #ifndef reverseHTTP_hpp 10 | #define reverseHTTP_hpp 11 | 12 | #include 13 | #include 14 | #include 15 | 16 | class PTTH{ 17 | private: 18 | int sock; 19 | std::string address; 20 | int port; 21 | struct sockaddr_in server; 22 | 23 | public: 24 | PTTH(); 25 | bool conn(const char *address); 26 | bool send_data(const void *data,int size); 27 | std::string receive(int); 28 | void disconnect(); 29 | }; 30 | 31 | #endif /* reverseHTTP_hpp */ 32 | -------------------------------------------------------------------------------- /BarrageRenderer/NHDisplayLink.h: -------------------------------------------------------------------------------- 1 | // 2 | // NHDisplayLink.h 3 | // CocoaUtils 4 | // 5 | // Created by Nick Hutchinson on 01/05/2013. 6 | // 7 | // 8 | 9 | #import 10 | 11 | @protocol NHDisplayLinkDelegate; 12 | 13 | @interface NHDisplayLink : NSObject 14 | 15 | @property (nonatomic, weak) id delegate; 16 | 17 | /// The queue on which delegate callbacks will be delivered; defaults to the 18 | /// main queue 19 | @property (nonatomic) dispatch_queue_t dispatchQueue; 20 | 21 | - (void)start; 22 | - (void)stop; 23 | 24 | @end 25 | 26 | 27 | @protocol NHDisplayLinkDelegate 28 | - (void)displayLink:(NHDisplayLink *)displayLink didRequestFrameForTime:(const CVTimeStamp *)outputTimeStamp; 29 | @end -------------------------------------------------------------------------------- /BarrageRenderer/NSValue+iOS.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSValue+iOS.h 3 | // MacMapView 4 | // 5 | // Created by David Bainbridge on 5/14/13. 6 | // Copyright (c) 2013 David Bainbridge. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSValue (iOS) 12 | + (NSValue *)valueWithCGPoint:(CGPoint)point; 13 | - (CGPoint)CGPointValue; 14 | + (NSValue *)valueWithCGRect:(CGRect)rect; 15 | - (CGRect)CGRectValue; 16 | + (NSValue *)valueWithCGSize:(CGSize)size; 17 | - (CGSize)CGSizeValue; 18 | @end -------------------------------------------------------------------------------- /BarrageRenderer/NSValue+iOS.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSValue+iOS.m 3 | // MacMapView 4 | // 5 | // Created by David Bainbridge on 5/14/13. 6 | // Copyright (c) 2013 David Bainbridge. All rights reserved. 7 | // 8 | 9 | #import "NSValue+iOS.h" 10 | 11 | @implementation NSValue (iOS) 12 | + (NSValue *)valueWithCGPoint:(CGPoint)point 13 | { 14 | return [NSValue valueWithPoint:NSPointFromCGPoint(point)]; 15 | } 16 | 17 | - (CGPoint)CGPointValue 18 | { 19 | return NSPointToCGPoint([self pointValue]); 20 | } 21 | 22 | + (NSValue *)valueWithCGRect:(CGRect)rect 23 | { 24 | return [NSValue valueWithRect:NSRectFromCGRect(rect)]; 25 | } 26 | 27 | - (CGRect)CGRectValue 28 | { 29 | return NSRectToCGRect([self rectValue]); 30 | } 31 | 32 | + (NSValue *)valueWithCGSize:(CGSize)size 33 | { 34 | return [NSValue valueWithSize:NSSizeFromCGSize(size)]; 35 | } 36 | 37 | - (CGSize)CGSizeValue 38 | { 39 | return NSSizeToCGSize([self sizeValue]); 40 | } 41 | 42 | @end -------------------------------------------------------------------------------- /BarrageRenderer/NSView+UIView.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSView+UIView.h 3 | // MapView 4 | // 5 | // Created by David Bainbridge on 2/17/13. 6 | // 7 | // 8 | 9 | #import 10 | 11 | @interface NSView (UIView) 12 | - (void)insertSubview:(NSView *)subview aboveSubview:(NSView *)above; 13 | - (void)insertSubview:(NSView *)view atIndex:(NSInteger)index; 14 | - (void)exchangeSubviewAtIndex:(NSInteger)index1 withSubviewAtIndex:(NSInteger)index2; 15 | - (void)layoutSubviews; 16 | @end -------------------------------------------------------------------------------- /BarrageRenderer/NSView+UIView.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSView+UIView.m 3 | // MapView 4 | // 5 | // Created by David Bainbridge on 2/17/13. 6 | // 7 | // 8 | 9 | #import "NSView+UIView.h" 10 | 11 | @implementation NSView (UIView) 12 | 13 | - (void)insertSubview:(NSView *)subview aboveSubview:(NSView *)above 14 | { 15 | [self addSubview:subview positioned:NSWindowAbove relativeTo:above]; 16 | } 17 | 18 | - (void)insertSubview:(NSView *)view atIndex:(NSInteger)index 19 | { 20 | //TODO: use index 21 | [self addSubview:view]; 22 | } 23 | 24 | - (void)exchangeSubviewAtIndex:(NSInteger)index1 withSubviewAtIndex:(NSInteger)index2 25 | { 26 | NSMutableArray *subViews = [self.subviews mutableCopy]; 27 | [subViews exchangeObjectAtIndex:index1 withObjectAtIndex:index2]; 28 | [self setSubviews:subViews]; 29 | 30 | } 31 | 32 | - (void) layoutSubviews 33 | { 34 | [self resizeSubviewsWithOldSize:[self frame].size]; 35 | } 36 | 37 | 38 | @end -------------------------------------------------------------------------------- /Crashlytics.framework/Crashlytics: -------------------------------------------------------------------------------- 1 | Versions/Current/Crashlytics -------------------------------------------------------------------------------- /Crashlytics.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /Crashlytics.framework/Modules: -------------------------------------------------------------------------------- 1 | Versions/Current/Modules -------------------------------------------------------------------------------- /Crashlytics.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /Crashlytics.framework/Versions/A/Crashlytics: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/Crashlytics.framework/Versions/A/Crashlytics -------------------------------------------------------------------------------- /Crashlytics.framework/Versions/A/Headers/ANSCompatibility.h: -------------------------------------------------------------------------------- 1 | // 2 | // ANSCompatibility.h 3 | // AnswersKit 4 | // 5 | // Copyright (c) 2015 Crashlytics, Inc. All rights reserved. 6 | // 7 | 8 | #pragma once 9 | 10 | #if !__has_feature(nullability) 11 | #define nonnull 12 | #define nullable 13 | #define _Nullable 14 | #define _Nonnull 15 | #endif 16 | 17 | #ifndef NS_ASSUME_NONNULL_BEGIN 18 | #define NS_ASSUME_NONNULL_BEGIN 19 | #endif 20 | 21 | #ifndef NS_ASSUME_NONNULL_END 22 | #define NS_ASSUME_NONNULL_END 23 | #endif 24 | 25 | #if __has_feature(objc_generics) 26 | #define ANS_GENERIC_NSARRAY(type) NSArray 27 | #define ANS_GENERIC_NSDICTIONARY(key_type,object_key) NSDictionary 28 | #else 29 | #define ANS_GENERIC_NSARRAY(type) NSArray 30 | #define ANS_GENERIC_NSDICTIONARY(key_type,object_key) NSDictionary 31 | #endif 32 | -------------------------------------------------------------------------------- /Crashlytics.framework/Versions/A/Headers/CLSAttributes.h: -------------------------------------------------------------------------------- 1 | // 2 | // CLSAttributes.h 3 | // Crashlytics 4 | // 5 | // Copyright (c) 2015 Crashlytics, Inc. All rights reserved. 6 | // 7 | 8 | #pragma once 9 | 10 | #define CLS_DEPRECATED(x) __attribute__ ((deprecated(x))) 11 | 12 | #if !__has_feature(nullability) 13 | #define nonnull 14 | #define nullable 15 | #define _Nullable 16 | #define _Nonnull 17 | #endif 18 | 19 | #ifndef NS_ASSUME_NONNULL_BEGIN 20 | #define NS_ASSUME_NONNULL_BEGIN 21 | #endif 22 | 23 | #ifndef NS_ASSUME_NONNULL_END 24 | #define NS_ASSUME_NONNULL_END 25 | #endif 26 | 27 | #if __has_feature(objc_generics) 28 | #define CLS_GENERIC_NSARRAY(type) NSArray 29 | #define CLS_GENERIC_NSDICTIONARY(key_type,object_key) NSDictionary 30 | #else 31 | #define CLS_GENERIC_NSARRAY(type) NSArray 32 | #define CLS_GENERIC_NSDICTIONARY(key_type,object_key) NSDictionary 33 | #endif 34 | -------------------------------------------------------------------------------- /Crashlytics.framework/Versions/A/Headers/CLSStackFrame.h: -------------------------------------------------------------------------------- 1 | // 2 | // CLSStackFrame.h 3 | // Crashlytics 4 | // 5 | // Copyright 2015 Crashlytics, Inc. All rights reserved. 6 | // 7 | 8 | #import 9 | #import "CLSAttributes.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | /** 14 | * 15 | * This class is used in conjunction with -[Crashlytics recordCustomExceptionName:reason:frameArray:] to 16 | * record information about non-ObjC/C++ exceptions. All information included here will be displayed 17 | * in the Crashlytics UI, and can influence crash grouping. Be particularly careful with the use of the 18 | * address property. If set, Crashlytics will attempt symbolication and could overwrite other properities 19 | * in the process. 20 | * 21 | **/ 22 | @interface CLSStackFrame : NSObject 23 | 24 | + (instancetype)stackFrame; 25 | + (instancetype)stackFrameWithAddress:(NSUInteger)address; 26 | + (instancetype)stackFrameWithSymbol:(NSString *)symbol; 27 | 28 | @property (nonatomic, copy, nullable) NSString *symbol; 29 | @property (nonatomic, copy, nullable) NSString *library; 30 | @property (nonatomic, copy, nullable) NSString *fileName; 31 | @property (nonatomic, assign) uint32_t lineNumber; 32 | @property (nonatomic, assign) uint64_t offset; 33 | @property (nonatomic, assign) uint64_t address; 34 | 35 | @end 36 | 37 | NS_ASSUME_NONNULL_END 38 | -------------------------------------------------------------------------------- /Crashlytics.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module Crashlytics { 2 | header "Crashlytics.h" 3 | header "Answers.h" 4 | header "ANSCompatibility.h" 5 | header "CLSLogging.h" 6 | header "CLSReport.h" 7 | header "CLSStackFrame.h" 8 | header "CLSAttributes.h" 9 | 10 | export * 11 | 12 | link "z" 13 | link "c++" 14 | } 15 | -------------------------------------------------------------------------------- /Crashlytics.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /Crashlytics.framework/run: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # run 4 | # 5 | # Copyright (c) 2015 Crashlytics. All rights reserved. 6 | 7 | # Figure out where we're being called from 8 | DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) 9 | 10 | # Quote path in case of spaces or special chars 11 | DIR="\"${DIR}" 12 | 13 | PATH_SEP="/" 14 | VALIDATE_COMMAND="uploadDSYM\" $@ validate" 15 | UPLOAD_COMMAND="uploadDSYM\" $@" 16 | 17 | # Ensure params are as expected, run in sync mode to validate 18 | eval $DIR$PATH_SEP$VALIDATE_COMMAND 19 | return_code=$? 20 | 21 | if [[ $return_code != 0 ]]; then 22 | exit $return_code 23 | fi 24 | 25 | # Verification passed, upload dSYM in background to prevent Xcode from waiting 26 | # Note: Validation is performed again before upload. 27 | # Output can still be found in Console.app 28 | eval $DIR$PATH_SEP$UPLOAD_COMMAND > /dev/null 2>&1 & 29 | -------------------------------------------------------------------------------- /Crashlytics.framework/submit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/Crashlytics.framework/submit -------------------------------------------------------------------------------- /Crashlytics.framework/uploadDSYM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/Crashlytics.framework/uploadDSYM -------------------------------------------------------------------------------- /Fabric.framework/Fabric: -------------------------------------------------------------------------------- 1 | Versions/Current/Fabric -------------------------------------------------------------------------------- /Fabric.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /Fabric.framework/Modules: -------------------------------------------------------------------------------- 1 | Versions/Current/Modules -------------------------------------------------------------------------------- /Fabric.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /Fabric.framework/Versions/A/Fabric: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/Fabric.framework/Versions/A/Fabric -------------------------------------------------------------------------------- /Fabric.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module Fabric { 2 | umbrella header "Fabric.h" 3 | 4 | export * 5 | module * { export * } 6 | } -------------------------------------------------------------------------------- /Fabric.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /Fabric.framework/run: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # run 4 | # 5 | # Copyright (c) 2015 Crashlytics. All rights reserved. 6 | 7 | # Figure out where we're being called from 8 | DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) 9 | 10 | # Quote path in case of spaces or special chars 11 | DIR="\"${DIR}" 12 | 13 | PATH_SEP="/" 14 | VALIDATE_COMMAND="uploadDSYM\" $@ validate run-script" 15 | UPLOAD_COMMAND="uploadDSYM\" $@ run-script" 16 | 17 | # Ensure params are as expected, run in sync mode to validate 18 | eval $DIR$PATH_SEP$VALIDATE_COMMAND 19 | return_code=$? 20 | 21 | if [[ $return_code != 0 ]]; then 22 | exit $return_code 23 | fi 24 | 25 | # Verification passed, upload dSYM in background to prevent Xcode from waiting 26 | # Note: Validation is performed again before upload. 27 | # Output can still be found in Console.app 28 | eval $DIR$PATH_SEP$UPLOAD_COMMAND > /dev/null 2>&1 & 29 | -------------------------------------------------------------------------------- /Fabric.framework/uploadDSYM: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/Fabric.framework/uploadDSYM -------------------------------------------------------------------------------- /HOW_TO_BUILD.md: -------------------------------------------------------------------------------- 1 | # Minimum Requirements 2 | 3 | * OS X 10.10 4 | * Git 5 | * Xcode 6 6 | 7 | # Download Sources 8 | 9 | brew install git-lfs 10 | git lfs install 11 | git clone https://github.com/typcn/bilibili-mac-client.git 12 | cd bilibili-mac-client/ 13 | git submodule update --init 14 | 15 | # Open Project in Xcode 16 | 17 | Open `VideoPolymer.xcworkspace` with Xcode. 18 | 19 | Note: Do not just open `bilibili.xcodeproj`. It is incomplete. 20 | 21 | # Change code signing 22 | 23 | If you don't have code signing, please set signing to “None”. 24 | 25 | # Change bundle id 26 | 27 | Project Navigator -> Bilibili: Change “com.typcn” to others. 28 | 29 | # Build 30 | 31 | Select “bilibili” as the active scheme at the upper left corner of the Xcode window. Then click “build”. The app will start automatically. 32 | 33 | # About the video quality 34 | 35 | In Debug build, HTML5 playurl API is used. You can only play low quality videos. 36 | 37 | If you need play high quality video, just build with Release mode. Dynamic video parser will be loaded into memory. 38 | -------------------------------------------------------------------------------- /ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | # 请您阅读 2 | 3 | http://vp-hub.eqoe.cn/faq.html 4 | 5 | 如果您没有找到答案,请向下看 6 | 7 | # 提问的智慧 8 | 如果您不是经常提交 issue,我们建议您阅读这篇文章,它可以有效节省您和开发者的时间。 9 | 10 | http://doc.zengrong.net/smart-questions/cn.html 11 | 12 | 如果您已经准备好,请删除以上文字,填写以下内容。 13 | 14 | ## 基本信息 15 | - 操作系统版本: 16 | - 所在国家: 17 | - 网络运营商: 18 | - 软件版本: 19 | 20 | ## 问题描述 21 | 22 | ## 截图 23 | 24 | -------------------------------------------------------------------------------- /Plug-Ins.md: -------------------------------------------------------------------------------- 1 | # Plugin System 2 | 3 | (Early test , API may change) 4 | 5 | 6 | ## Get Start for new plugin api 7 | 8 | 1. Checkout this plugin: https://github.com/typcn/vp.tucao 9 | 2. Open project 10 | 3. Edit / Run 11 | 12 | ## Info.plist 13 | 14 | - Inject Javascript on domain 15 | 16 | Must be top level domain (example: youku.com) 17 | 18 | - Inject Javascript file prefix 19 | 20 | If set to "FILE" , will load Plugin.bundle/Contents/Resources/FILE.js 21 | 22 | - Principal class 23 | 24 | Main class of plugin , must inherit "VP_Plugin" 25 | 26 | ## Classes 27 | 28 | ``` 29 | - (id)getClassOfType:(NSString *)type{ 30 | if([type isEqualToString:@"SubProvider"]){ 31 | return [[YourSubtitleProvider alloc] init]; 32 | }else{ 33 | return NULL; 34 | } 35 | } 36 | ``` 37 | 38 | ## SubtitleProvider 39 | 40 | See [SP_Local](https://github.com/typcn/bilibili-mac-client/blob/master/bilibili/SubHelper/SP_Local.m) or [SP_Bilibili](https://github.com/typcn/bilibili-mac-client/blob/master/bilibili/SubHelper/SP_Bilibili.m) 41 | 42 | commentFile is XML in bilibili format 43 | 44 | subtitleFile is in ASS subtitle format 45 | 46 | ## Example Code 47 | 48 | https://github.com/typcn/vp.tucao 49 | 50 | https://github.com/typcn/vp.letv 51 | 52 | https://github.com/typcn/vp.youku 53 | 54 | ## Code Signing 55 | 56 | Plugin need valid codesign from Apple or me (plugin/TYPCN\_Root\_G3.crt) , you can submit plugin to Plugin Store( coming soon ) , the server will sign it automaticly. -------------------------------------------------------------------------------- /Privacy_Policy.md: -------------------------------------------------------------------------------- 1 | # 隐私策略 2 | 3 | 如果您决定使用我们的服务,此页面用于通知用户有关我们收集,使用和披露个人信息的政策。 4 | 5 | 如果您选择使用我们的服务,则表示您同意收集和使用与本政策相关的信息。 6 | 我们收集的个人信息用于提供和改进服务,除非本隐私政策中另有说明,否则我们不会向任何人使用或分享您的信息。 7 | 8 | # 信息收集 9 | 10 | ## Google Analytics 11 | 12 | 本产品中使用了 Google Analytics ,Google Analytics 由位于美国境内的 Google LLC 提供,数据将被存储在美国境内,Google 可能将收集到的信息分享给第三方,关于 Google 的信息收集和披露策略,请参阅 https://policies.google.com/privacy 13 | 14 | 您在首次启动本软件时,将会得到提示,根据您的选择不同,我们可以获得的信息也将不同 15 | 16 | 如果您选择“允许”: 17 | 1. 通过随机数产生的用户 ID。 18 | 2. 通过 IP 地址推断出的运营商,国家等信息。 19 | 3. 启动应用程序,新建标签页等操作,将会触发请求,这些信息将被匿名存储,以统计软件被使用的次数和持续时间。 20 | 4. 下载和播放视频等操作,将会触发请求并包含视频的 ID,这些信息将被匿名存储,以统计被播放次数最多的视频等。 21 | 22 | 如果您选择“不允许”: 23 | 1. 通过随机数产生的用户 ID。 24 | 2. 通过 IP 地址推断出的运营商,国家等信息。 25 | 3. 启动应用程序,新建标签页等操作,将会触发请求,这些信息将被匿名存储,以统计软件被使用的次数和持续时间。 26 | 27 | 如果您选择“完全禁止”,大部分情况下,将不会连接 Google Analytics 服务器,执行特定操作时,会包含以下信息: 28 | 1. 通过随机数产生的用户 ID。 29 | 30 | 如果您希望改变您的选择,您可以在终端中运行 ```defaults delete com.typcn.Bilibili acceptAnalytics``` 31 | 如果您希望重置您的随机用户 ID,您可以在终端中运行 ```defaults delete com.typcn.Bilibili UUID``` 32 | 33 | ## Crashlytics 34 | 35 | 本产品中使用了 Crashlytics,Crashlytics 将在应用程序崩溃等情况时时上传错误报告,以改善用户体验,Crashlytics 还会提供一些基础的统计功能,例如活跃用户数量等。 36 | Crashlytics 被集成在 Fabric SDK 中,您可以参阅 https://docs.fabric.io/apple/fabric/data-privacy.html 37 | 38 | ## 浏览器 39 | 40 | 本产品中包含浏览器,浏览器中可能加载任何网站,请参阅这些网站的隐私策略。 41 | 42 | ## 插件系统 43 | 44 | 本产品中包含插件系统,插件系统中可能连接任何服务器,请参阅第三方的隐私策略。 45 | 46 | # 其他内容 47 | 48 | 关于服务器日志,数据删除策略,联系方式等信息,请参阅 TYPCN Privacy Policy https://typcn.com/privacy 49 | 50 | -------------------------------------------------------------------------------- /VideoPolymer.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /VideoPolymer.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /bilibili.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /bilibili.xcodeproj/xcuserdata/typcn.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /bilibili.xcodeproj/xcuserdata/typcn.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | AirPlayTests.xcscheme 8 | 9 | orderHint 10 | 4 11 | 12 | bilibili.xcscheme_^#shared#^_ 13 | 14 | orderHint 15 | 0 16 | 17 | 18 | SuppressBuildableAutocreation 19 | 20 | FD076C4F1AC8CBBB00C893FA 21 | 22 | primary 23 | 24 | 25 | FD076C651AC8CBBB00C893FA 26 | 27 | primary 28 | 29 | 30 | FD4B84331BA5874700DD6F2F 31 | 32 | primary 33 | 34 | 35 | FD90618C1BA575DA0041EF81 36 | 37 | primary 38 | 39 | 40 | FDFCC6E11B41026800B13927 41 | 42 | primary 43 | 44 | 45 | FDFCC6F61B41026900B13927 46 | 47 | primary 48 | 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /bilibili/Browser/AddressBar.h: -------------------------------------------------------------------------------- 1 | // 2 | // AddressBar.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/12/16. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AddressBar : NSTextField < NSTextFieldDelegate , NSControlTextEditingDelegate > 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Browser/AutoSuggestTable.h: -------------------------------------------------------------------------------- 1 | // 2 | // AutoSuggestTable.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/12/16. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AutoSuggestTable : NSObject < NSTableViewDelegate , NSTableViewDataSource > 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Browser/Browser.h: -------------------------------------------------------------------------------- 1 | // 2 | // Browser.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/3. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | #import 12 | #import "MBProgressHUD.h" 13 | 14 | @interface Browser : CTBrowser 15 | 16 | -(CTTabContents*)createTabBasedOn:(CTTabContents*)baseContents withUrl:(NSString*) url; 17 | -(CTTabContents*)createTabBasedOn:(CTTabContents*)baseContents withRequest:(NSURLRequest*) req andConfig:(id)cfg; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /bilibili/Browser/CloudScript.h: -------------------------------------------------------------------------------- 1 | // 2 | // CloudScript.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/9/30. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface CloudScript : NSObject 12 | 13 | + (instancetype)sharedInstance; 14 | - (void)updateScript; 15 | - (NSString *)get; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /bilibili/Browser/ToolBar.h: -------------------------------------------------------------------------------- 1 | // 2 | // ToolBar.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/4. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BLToolBar : CTToolbarController 12 | 13 | @end 14 | 15 | @interface BLToolBarEvents : NSObject 16 | 17 | 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /bilibili/Browser/UserContentController.h: -------------------------------------------------------------------------------- 1 | // 2 | // UserContentController.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/9/30. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UserContentController : WKUserContentController 12 | 13 | + (instancetype)sharedInstance; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /bilibili/Browser/UserContentController.m: -------------------------------------------------------------------------------- 1 | // 2 | // UserContentController.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/9/30. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "UserContentController.h" 10 | 11 | @implementation UserContentController 12 | + (instancetype)sharedInstance { 13 | static id sharedInstance; 14 | static dispatch_once_t onceToken; 15 | dispatch_once(&onceToken, ^{ 16 | sharedInstance = [[self alloc] init]; 17 | }); 18 | return sharedInstance; 19 | } 20 | 21 | - (id) init 22 | { 23 | if (self = [super init]) 24 | { 25 | // TODO: Cloud update block list 26 | NSString *path = [[NSBundle mainBundle] pathForResource:@"webpage/blocker" ofType:@"js"]; 27 | NSString *str = [[NSString alloc] initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil]; 28 | WKUserScript *script = [[WKUserScript alloc] initWithSource:str injectionTime:WKUserScriptInjectionTimeAtDocumentStart forMainFrameOnly:NO]; 29 | [self addUserScript:script]; 30 | 31 | } 32 | return self; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /bilibili/Browser/WebTabView.h: -------------------------------------------------------------------------------- 1 | // 2 | // WebTabView.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/3. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "Browser.h" 10 | #import "Common.hpp" 11 | #import "TWebView.h" 12 | #import "PluginManager.h" 13 | 14 | @interface WebTabView : CTTabContents { 15 | TWebView *webView; 16 | } 17 | 18 | -(id)initWithRequest:(NSURLRequest *)req andConfig:(id)cfg; 19 | -(id)GetWebView; 20 | -(TWebView *)GetTWebView; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /bilibili/Browser/WebView+SwipeNavigation.h: -------------------------------------------------------------------------------- 1 | // 2 | // WebView+SwipeNavigation.h 3 | // bilibili 4 | // 5 | // Created by Carmelo Sui on 6/21/15. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface WebView (SwipeNavigation) 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Browser/WebView+SwipeNavigation.m: -------------------------------------------------------------------------------- 1 | // 2 | // WebView+SwipeNavigation.m 3 | // bilibili 4 | // 5 | // Created by Carmelo Sui on 6/21/15. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "WebView+SwipeNavigation.h" 10 | 11 | @implementation WebView (SwipeNavigation) 12 | 13 | - (void)swipeWithEvent:(NSEvent *)event { 14 | CGFloat deltaX = [event deltaX]; 15 | if (deltaX > 0) { 16 | [self goForward]; 17 | } else if (deltaX < 0) { 18 | [self goBack]; 19 | } 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /bilibili/Common.hpp: -------------------------------------------------------------------------------- 1 | // 2 | // Common.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/4. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #ifndef bilibili_Common_h 10 | #define bilibili_Common_h 11 | 12 | #import "Browser.h" 13 | 14 | #ifdef __cplusplus 15 | #import "downloadWrapper.h" 16 | extern Downloader* DL; 17 | #endif 18 | 19 | extern Browser* browser; 20 | extern NSString *userAgent; 21 | 22 | #endif 23 | -------------------------------------------------------------------------------- /bilibili/DataStore/BrowserHistory.h: -------------------------------------------------------------------------------- 1 | // 2 | // BrowserHistory.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/1/25. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BrowserHistory : NSObject 12 | 13 | + (instancetype)sharedManager; 14 | - (int64_t)insertURL:(NSString *)URL title:(NSString *)title; 15 | - (NSArray *)get:(int)start count:(int)count; 16 | - (NSArray *)getUnclosed; 17 | - (void)resetStatus; 18 | - (bool)setStatus:(int64_t)status forID:(int64_t)ID; 19 | - (bool)deleteItem:(int64_t)ID; 20 | - (bool)deleteAll; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /bilibili/DataStore/HotURL.h: -------------------------------------------------------------------------------- 1 | // 2 | // HotURL.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/1/26. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface HotURL : NSObject 13 | 14 | - (instancetype)initWithDatabase:(FMDatabase *)icdb path:(NSString *)path; 15 | - (BOOL)appendURL:(NSString *)URL; 16 | - (void)trimData; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /bilibili/DataStore/PlayPosition.h: -------------------------------------------------------------------------------- 1 | // 2 | // PlayPosition.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/6/2. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface PlayPosition : NSObject 12 | 13 | + (instancetype)sharedManager; 14 | - (BOOL)addKey:(NSString *)key time:(int64_t)ts; 15 | - (int64_t)getKey:(NSString *)key; 16 | - (BOOL)removeKey:(NSString *)key; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /bilibili/Downloader/DownloadWrapper.h: -------------------------------------------------------------------------------- 1 | // 2 | // DownloadWrapper.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/6/6. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #ifndef bilibili__downloadWrapper 10 | #define bilibili__downloadWrapper 11 | 12 | 13 | #import 14 | 15 | class Downloader { 16 | public: 17 | BOOL newTask(int cid,NSString* aid,NSString *pid,NSString *name); 18 | BOOL downloadComment(int cid,NSString *name); 19 | }; 20 | 21 | #endif /* defined(__bilibili__downloadWrapper__) */ 22 | -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_128x128.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_128x128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_128x128@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_16x16.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_16x16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_16x16@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_256x256.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_256x256@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_256x256@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_32x32.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_32x32@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_32x32@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_512x512.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/AppIcon.appiconset/Icon_512x512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/AppIcon.appiconset/Icon_512x512@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_128x128.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_128x128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_128x128@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_16x16.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_16x16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_16x16@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_256x256.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_256x256@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_256x256@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_32x32.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_32x32@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_32x32@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_512x512.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/MovieFileIcon.iconset/icon_512x512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/MovieFileIcon.iconset/icon_512x512@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_128x128.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_128x128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_128x128@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_16x16.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_16x16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_16x16@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_256x256.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_256x256@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_256x256@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_32x32.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_32x32@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_32x32@2x.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_512x512.png -------------------------------------------------------------------------------- /bilibili/Images.xcassets/SubFileIcon.iconset/icon_512x512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/Images.xcassets/SubFileIcon.iconset/icon_512x512@2x.png -------------------------------------------------------------------------------- /bilibili/LiveChat/BilibiliSocketProvider.h: -------------------------------------------------------------------------------- 1 | // 2 | // BilibiliSocketProvider.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/5/17. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #ifndef bilibili_BilibiliSocketClient_h 10 | #define bilibili_BilibiliSocketClient_h 11 | 12 | #import 13 | #import "LiveChat.h" 14 | #import "SocketProvider.h" 15 | 16 | @interface BilibiliSocketProvider : SocketProvider 17 | 18 | 19 | @end 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /bilibili/LiveChat/LiveChat.h: -------------------------------------------------------------------------------- 1 | // 2 | // LiveChat.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/5/17. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "Player.h" 11 | 12 | // TODO: Allow render comments on external window, avoid to use CALayer 13 | 14 | @interface LiveChat : NSViewController 15 | @property (weak, nonatomic) Player *player; 16 | 17 | - (void)setPlayerAndInit:(Player *)player; 18 | - (void)onNewMessage:(NSString *)cmContent :(NSString *)userName :(int)ftype :(int)fsize :(NSColor *)color; 19 | - (void)onNewError:(NSString *)str; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /bilibili/LiveChat/SocketProvider.h: -------------------------------------------------------------------------------- 1 | // 2 | // SocketProvider.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/8/2. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SocketProvider : NSObject 12 | 13 | - (void)loadWithPlayer: (id)player; 14 | - (void)setDelegate:(id)del; 15 | - (void)disconnect; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /bilibili/LiveChat/SocketProvider.m: -------------------------------------------------------------------------------- 1 | // 2 | // SocketProvider.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/8/2. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "SocketProvider.h" 10 | 11 | 12 | @implementation SocketProvider 13 | 14 | - (void)loadWithPlayer: (id)player{ 15 | 16 | } 17 | - (void)setDelegate:(id)del{ 18 | 19 | } 20 | 21 | - (void)disconnect{ 22 | 23 | } 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /bilibili/Notifications/DynamicView.h: -------------------------------------------------------------------------------- 1 | // 2 | // DynamicView.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/10/8. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DynamicView : NSViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Notifications/DynamicView.m: -------------------------------------------------------------------------------- 1 | // 2 | // DynamicView.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/10/8. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "DynamicView.h" 10 | 11 | @interface DynamicView () 12 | 13 | @end 14 | 15 | @implementation DynamicView 16 | 17 | - (void)viewDidLoad { 18 | [super viewDidLoad]; 19 | // Do view setup here. 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /bilibili/Notifications/DynamicView.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /bilibili/Notifications/Popover.h: -------------------------------------------------------------------------------- 1 | // 2 | // Popover.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/10/8. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "DynamicView.h" 11 | 12 | @interface Popover : NSObject 13 | 14 | - (void)addToStatusBar; 15 | - (void)startMonitor; 16 | - (void)removeMonitor; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /bilibili/Others/Analytics.h: -------------------------------------------------------------------------------- 1 | // 2 | // Analytics.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/6/8. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #ifndef bilibili_Analytics_h 10 | #define bilibili_Analytics_h 11 | 12 | void screenView(const char *view); 13 | void action(const char *type,const char *action,const char *label); 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /bilibili/Others/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/3/30. 6 | // Copyleft 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | #import 12 | #import "Browser.h" 13 | 14 | @interface AppDelegate : NSObject 15 | 16 | @property (strong) NSWindowController* donatew; 17 | @property (strong) NSWindowController* crashw; 18 | 19 | @end 20 | 21 | -------------------------------------------------------------------------------- /bilibili/Others/CrashReport.h: -------------------------------------------------------------------------------- 1 | // 2 | // CrashReport.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/9. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface CrashReport : NSViewController 13 | 14 | - (void)setCallbackHandler:(void (^)(BOOL submit))completionHandler andReport:(CLSReport *)report; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /bilibili/Others/CrashReport.m: -------------------------------------------------------------------------------- 1 | // 2 | // CrashReport.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/9. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "CrashReport.h" 10 | 11 | @interface CrashReport () 12 | 13 | @property (nonatomic, copy) void (^handler)(BOOL submit); 14 | @property (nonatomic) CLSReport *creport; 15 | 16 | @property (unsafe_unretained) IBOutlet NSTextView *textView; 17 | @property (weak) IBOutlet NSTextField *emailField; 18 | @end 19 | 20 | @implementation CrashReport 21 | 22 | @synthesize handler; 23 | @synthesize creport; 24 | 25 | - (void)viewDidLoad { 26 | [super viewDidLoad]; 27 | // Do view setup here. 28 | } 29 | 30 | - (void)setCallbackHandler:(void (^)(BOOL submit))completionHandler andReport:(CLSReport *)report{ 31 | handler = completionHandler; 32 | creport = report; 33 | } 34 | 35 | - (IBAction)doNotSend:(id)sender { 36 | handler(NO); 37 | [self.view.window close]; 38 | } 39 | 40 | 41 | - (IBAction)sendCrashReport:(id)sender { 42 | NSString *customText = self.textView.textStorage.string; 43 | if(customText && customText.length){ 44 | [creport setObjectValue:customText forKey:@"userCustomText"]; 45 | } 46 | NSString *userEmail = self.emailField.stringValue; 47 | if(userEmail && userEmail.length){ 48 | [creport setUserEmail:userEmail]; 49 | } 50 | handler(YES); 51 | [self.view.window close]; 52 | } 53 | 54 | @end 55 | -------------------------------------------------------------------------------- /bilibili/Others/DonateView.h: -------------------------------------------------------------------------------- 1 | // 2 | // DonateView.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/18. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DonateView : NSViewController < NSWindowDelegate > 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Others/DonateView.mm: -------------------------------------------------------------------------------- 1 | // 2 | // DonateView.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/18. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "DonateView.h" 10 | #import "Analytics.h" 11 | 12 | @interface DonateView () 13 | @property (weak) IBOutlet NSTextField *donateCount; 14 | 15 | @end 16 | 17 | @implementation DonateView 18 | 19 | - (void)viewDidLoad { 20 | [super viewDidLoad]; 21 | } 22 | 23 | - (IBAction)alipayDonateBtn:(id)sender { 24 | NSString *url = [NSString stringWithFormat:@"https://typcn.com/pay?type=donate&amount=%d",[_donateCount intValue] ]; 25 | [[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:url]]; 26 | 27 | [[NSUserDefaults standardUserDefaults] setObject:@"opened" forKey:@"donate"]; 28 | action("App","donate","donate"); 29 | } 30 | 31 | - (IBAction)hideBtn:(id)sender { 32 | [[NSUserDefaults standardUserDefaults] setObject:@"hide" forKey:@"donate"]; 33 | action("App","donate","hide"); 34 | [self.view.window close]; 35 | } 36 | 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /bilibili/Others/SimpleVideoFormatParser.h: -------------------------------------------------------------------------------- 1 | // 2 | // SimpleVideoFormatParser.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/12/15. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NSDictionary *readVideoInfoFromURL(NSString *URL); -------------------------------------------------------------------------------- /bilibili/Others/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/3/30. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, const char * argv[]) { 12 | return NSApplicationMain(argc, argv); 13 | } 14 | -------------------------------------------------------------------------------- /bilibili/Player/Control/ControlsWithVibracy.h: -------------------------------------------------------------------------------- 1 | // 2 | // ControlsWithVibracy.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSButtonWithVibracy : NSButton 12 | 13 | @end 14 | 15 | @interface NSViewWithVibracy : NSView 16 | 17 | @end 18 | 19 | 20 | @interface NSTextFieldWithVibracy : NSTextField 21 | 22 | @end -------------------------------------------------------------------------------- /bilibili/Player/Control/ControlsWithVibracy.m: -------------------------------------------------------------------------------- 1 | // 2 | // ControlsWithVibracy.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "ControlsWithVibracy.h" 10 | 11 | @implementation NSButtonWithVibracy 12 | 13 | - (BOOL)allowsVibrancy{ 14 | return YES; 15 | } 16 | 17 | @end 18 | 19 | 20 | @implementation NSViewWithVibracy 21 | 22 | - (BOOL)allowsVibrancy{ 23 | return YES; 24 | } 25 | 26 | @end 27 | 28 | 29 | @implementation NSTextFieldWithVibracy 30 | 31 | - (BOOL)allowsVibrancy{ 32 | return YES; 33 | } 34 | 35 | @end -------------------------------------------------------------------------------- /bilibili/Player/Control/PlayerControlView.h: -------------------------------------------------------------------------------- 1 | // 2 | // PlayerControlView.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/6. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "Player.h" 11 | 12 | @interface PlayerControlView : NSVisualEffectView 13 | 14 | @property (weak, nonatomic) Player *player; 15 | @property (nonatomic) BOOL currentPaused; 16 | @property (nonatomic) BOOL currentMuted; 17 | @property (nonatomic) BOOL currentFullscreen; 18 | @property (nonatomic) BOOL currentSubVis; 19 | 20 | - (void)onMpvEvent:(mpv_event *)event; 21 | 22 | - (void)hide:(BOOL)noAnimation; 23 | - (void)show; 24 | 25 | @end 26 | 27 | // Why do this ? because you can't overlap the apple's opengl view except you enable layer-backed view 28 | // If you enable that , app will take more memory usage, about 2x cpu usage , sometimes hang up / crash 29 | 30 | // I think the best solution is create an borderless window 31 | // I'm going to add vo-metal in the future 32 | 33 | @interface PlayerControlWindow : NSWindow 34 | 35 | @end 36 | 37 | @interface PlayerControlWindowController : NSWindowController 38 | 39 | 40 | @end -------------------------------------------------------------------------------- /bilibili/Player/Control/TimeSliderCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // TimeSliderCell.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/5. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "BGHUDSliderCell.h" 11 | 12 | typedef enum 13 | { 14 | kTSDragStopped = 0, 15 | kTSDragStarted = 1, 16 | kTSDragContinue = 2 17 | } TSDRAG_STATE; 18 | 19 | @interface TimeSliderCell : BGHUDSliderCell 20 | { 21 | BOOL dragging; 22 | TSDRAG_STATE dragState; 23 | } 24 | 25 | @property (readonly, getter=isDragging) BOOL dragging; 26 | 27 | @end -------------------------------------------------------------------------------- /bilibili/Player/Player.h: -------------------------------------------------------------------------------- 1 | // 2 | // Player.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/3. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "PlayerView.h" 12 | #import "BarrageRenderer.h" 13 | 14 | #include "mpv.h" 15 | 16 | @class PlayerControlView; 17 | 18 | @interface Player : NSObject 19 | 20 | @property (nonatomic, readonly, strong) PlayerView *view; 21 | @property (nonatomic, readonly, strong) NSWindowController *windowController; 22 | @property (nonatomic, weak) PlayerControlView *playerControlView; 23 | @property (nonatomic, weak) NSView *videoView; 24 | 25 | @property (nonatomic) NSString *siteName; 26 | @property (nonatomic) NSString *playerName; 27 | 28 | @property (nonatomic) BarrageRenderer *barrageRenderer; 29 | @property (nonatomic) VideoAddress *video; 30 | 31 | @property (nonatomic) BOOL pendingDealloc; 32 | 33 | @property (nonatomic, assign) mpv_handle *mpv; 34 | @property (nonatomic, strong) dispatch_queue_t queue; 35 | 36 | - (id)initWithVideo:(VideoAddress *)m_video attrs:(NSDictionary *)dict; 37 | 38 | - (id)getAttr:(NSString *)key; 39 | - (void)setAttr:(NSString *)key data:(id)data; 40 | 41 | - (void)stopAndDestory; 42 | - (void)destory; 43 | 44 | @end 45 | -------------------------------------------------------------------------------- /bilibili/Player/PlayerEventProxy.h: -------------------------------------------------------------------------------- 1 | // 2 | // PlayerEventProxy.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/9. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface PlayerEventProxy : NSView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Player/PlayerEventProxy.m: -------------------------------------------------------------------------------- 1 | // 2 | // PlayerTouchHandler.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/9. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "PlayerEventProxy.h" 10 | 11 | @implementation PlayerEventProxy 12 | 13 | - (void)drawRect:(NSRect)dirtyRect { 14 | // [[NSColor clearColor] setFill]; 15 | // NSRectFill(dirtyRect); 16 | } 17 | 18 | - (void)rightMouseDown:(NSEvent *)theEvent{ 19 | [self.window rightMouseDown:theEvent]; 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /bilibili/Player/PlayerLoader.h: -------------------------------------------------------------------------------- 1 | // 2 | // PlayerLoader.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/4. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @class Player; 13 | 14 | @interface PlayerLoader : NSWindowController 15 | 16 | + (instancetype)sharedInstance; 17 | 18 | - (void)loadVideoFrom:(VideoProvider *)provider withPageUrl:(NSString *)url; 19 | - (void)loadVideoFrom:(VideoProvider *)provider withData:(NSDictionary *)params; 20 | - (void)loadVideoWithLocalFiles:(NSArray *)files; 21 | - (void)loadVideo:(VideoAddress *)video; 22 | - (void)loadVideo:(VideoAddress *)video withAttrs:(NSDictionary *)attrs; 23 | - (NSString *)lastPlayerId; 24 | 25 | @end -------------------------------------------------------------------------------- /bilibili/Player/PlayerManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // PlayerManager.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/3. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "Player.h" 11 | 12 | @interface PlayerManager : NSObject 13 | 14 | + (instancetype)sharedInstance; 15 | 16 | - (Player *)createPlayer:(NSString *)name withVideo:(VideoAddress *)video attrs:(NSDictionary *)dict; 17 | - (Player *)getPlayer:(NSString *)name; 18 | 19 | - (NSDictionary *)getPlayerList; 20 | 21 | - (BOOL)removePlayer:(Player *)player; 22 | - (BOOL)removePlayerWithName:(NSString *)name; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /bilibili/Player/PlayerView.h: -------------------------------------------------------------------------------- 1 | // 2 | // PlayerView.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/3/30. 6 | // Copyleft 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "WebTabView.h" 12 | 13 | @class Player; 14 | 15 | @interface PlayerView : NSViewController 16 | 17 | @property (weak) IBOutlet NSTextField *textTip; 18 | @property (weak) IBOutlet NSTextField *subtip; 19 | @property (weak) IBOutlet NSImageView *loadingImage; 20 | @property (strong) NSWindowController* liveChatWC; 21 | @property (weak, nonatomic) Player *player; 22 | @property (nonatomic) BOOL windowSetup; 23 | 24 | - (void)loadWithPlayer:(Player *)m_player; 25 | - (void)loadVideo:(VideoAddress *)video; 26 | 27 | @end -------------------------------------------------------------------------------- /bilibili/Player/PlayerWindow.h: -------------------------------------------------------------------------------- 1 | // 2 | // PlayerWindow.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/4. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "Player.h" 11 | 12 | @interface PlayerWindow : NSWindow 13 | 14 | @property (strong) NSWindowController* postCommentWindowC; 15 | @property (weak, nonatomic) Player *player; 16 | @property (weak, nonatomic) NSWindow *lastWindow; 17 | @property (nonatomic) BOOL isActive; 18 | 19 | - (void)keyDown:(NSEvent*)event; 20 | - (void)setPlayerAndInit:(Player *)player; 21 | 22 | @end -------------------------------------------------------------------------------- /bilibili/Player/Util Window/AirPlayView.h: -------------------------------------------------------------------------------- 1 | // 2 | // AirPlayView.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/16. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AirPlayView : NSViewController < NSTableViewDataSource > 12 | 13 | @end 14 | 15 | 16 | @interface AirPlayWindowController : NSWindowController 17 | 18 | @property (nonatomic) NSString *cid; 19 | @property (nonatomic) NSString *url; 20 | @property (nonatomic) NSString *vtitle; 21 | 22 | @end -------------------------------------------------------------------------------- /bilibili/Player/Util Window/PlayLocalFile.h: -------------------------------------------------------------------------------- 1 | // 2 | // playLocalFile.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/4/5. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface playLocalFile : NSViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Player/Util Window/PostComment.h: -------------------------------------------------------------------------------- 1 | // 2 | // PostComment.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/4/4. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | @class Player; 11 | 12 | @interface PostComment : NSViewController 13 | 14 | - (void)setPlayer:(Player *)m_player; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /bilibili/RemoteCall/BrowserExtInterface.h: -------------------------------------------------------------------------------- 1 | // 2 | // BrowserExtInterface.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/10/12. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BrowserExtInterface : NSObject 12 | 13 | - (NSArray *)GetScriptList; 14 | - (NSArray *)GetHistory:(int)page; 15 | - (BOOL)DelHistory:(NSString *)ids; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /bilibili/RemoteCall/HTTPServer.h: -------------------------------------------------------------------------------- 1 | // 2 | // HTTPServer.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/7. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "PlayerControlView.h" 11 | #import "AirPlayView.h" 12 | #import "PluginManager.h" 13 | #import "BrowserExtInterface.h" 14 | 15 | @interface HTTPServer : NSObject 16 | @property (strong) NSWindowController* airplayWindowController; 17 | @property (strong) NSWindowController* settingsWindowController; 18 | - (void)startHTTPServer; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /bilibili/RemoteCall/NSBundle+OBCodeSigningInfo.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSBundle+OBCodeSigningInfo.h 3 | // 4 | // Created by Ole Begemann on 22.02.12. 5 | // Copyright (c) 2012 Ole Begemann. All rights reserved. 6 | // 7 | 8 | #import 9 | 10 | 11 | typedef enum { 12 | OBCodeSignStateUnsigned = 1, 13 | OBCodeSignStateSignatureValid, 14 | OBCodeSignStateSignatureInvalid, 15 | OBCodeSignStateSignatureNotVerifiable, 16 | OBCodeSignStateSignatureUnsupported, 17 | OBCodeSignStateError 18 | } OBCodeSignState; 19 | 20 | 21 | @interface NSBundle (OBCodeSigningInfo) 22 | 23 | - (BOOL)ob_comesFromAppStore; 24 | - (BOOL)ob_isSandboxed; 25 | - (OBCodeSignState)ob_codeSignState; 26 | 27 | @end -------------------------------------------------------------------------------- /bilibili/RemoteCall/PluginManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // PluginManager.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/9/20. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface PluginManager : NSObject < NSURLSessionDownloadDelegate > 13 | 14 | + (instancetype)sharedInstance; 15 | - (void)reloadList; 16 | - (NSArray *)getList; 17 | - (NSDictionary *)getScript; 18 | 19 | 20 | - (id)Get:(NSString *)action; 21 | - (void)install:(NSString *)name :(id)view :(int)instType; 22 | - (void)enable:(NSString *)name; 23 | - (void)disable:(NSString *)name; 24 | 25 | 26 | - (NSString *)javascriptForDomain:(NSString *)domain; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /bilibili/RemoteCall/PreloadManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // PreloadManager.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/12/16. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface PreloadManager : NSObject 12 | 13 | + (instancetype)sharedInstance; 14 | 15 | 16 | - (void)preloadComment:(NSString *)cid; 17 | - (NSData *)GetComment:(NSString *)cid; 18 | - (void)removeComment:(NSString *)cid; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /bilibili/Settings/CommentBlockSettings.h: -------------------------------------------------------------------------------- 1 | // 2 | // CommentBlockSettings.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/4/6. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface CommentBlockSettings : NSTabViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Settings/CommentBlockSettings.m: -------------------------------------------------------------------------------- 1 | // 2 | // CommentBlockSettings.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/4/6. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "CommentBlockSettings.h" 10 | 11 | @interface CommentBlockSettings () 12 | 13 | @end 14 | 15 | @implementation CommentBlockSettings 16 | 17 | - (void)viewDidLoad { 18 | [super viewDidLoad]; 19 | 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /bilibili/Settings/KeywordBlockSettings.h: -------------------------------------------------------------------------------- 1 | // 2 | // KeywordBlockSettings.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/4/6. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface KeywordBlockSettings : NSViewController 12 | @property (unsafe_unretained) IBOutlet NSTextView *textView; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /bilibili/Settings/MPVSettings.h: -------------------------------------------------------------------------------- 1 | // 2 | // MPVSettings.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/10/31. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MPVSettings : NSViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Settings/OtherBlockSettings.h: -------------------------------------------------------------------------------- 1 | // 2 | // OtherBlockSettings.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/6/9. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface OtherBlockSettings : NSViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/Settings/Settings.h: -------------------------------------------------------------------------------- 1 | // 2 | // Settings.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2015/4/6. 6 | // Copyright (c) 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface Settings : NSViewController 12 | 13 | @property (weak) IBOutlet NSButton *autoPlay; 14 | @property (weak) IBOutlet NSComboBox *qualityBox; 15 | @property (weak) IBOutlet NSButton *autoFullscreen; 16 | @property (weak) IBOutlet NSSlider *transparency; 17 | @property (weak) IBOutlet NSComboBox *FakeIP; 18 | @property (weak) IBOutlet NSTextField *fontsize; 19 | @property (weak) IBOutlet NSTextField *fontName; 20 | @property (weak) IBOutlet NSButton *playMP4; 21 | @property (weak) IBOutlet NSButton *DownloadMP4; 22 | @property (weak) IBOutlet NSButton *disableKeepAspect; 23 | @property (weak) IBOutlet NSSlider *commentMoveSpeed; 24 | @property (weak) IBOutlet NSButton *disableHwDec; 25 | @property (weak) IBOutlet NSButton *disableWriteHistory; 26 | @property (weak) IBOutlet NSTextField *maxBufferSize; 27 | @property (weak) IBOutlet NSButton *changeGestureDirection; 28 | @property (weak) IBOutlet NSButton *enableFSBugWorkaround; 29 | @property (weak) IBOutlet NSButton *enableZeroCopy; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /bilibili/Settings/Tools.h: -------------------------------------------------------------------------------- 1 | // 2 | // Tools.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/2/10. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface Tools : NSViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/SubHelper/NSString+LcsDiff.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+LcsDiff.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (LcsDiff) 12 | 13 | - (NSArray *) lcsDiff:(NSString *)string; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /bilibili/SubHelper/SP_Bilibili.h: -------------------------------------------------------------------------------- 1 | // 2 | // SP_Bilibili.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SP_Bilibili : SubtitleProvider 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/SubHelper/SP_Local.h: -------------------------------------------------------------------------------- 1 | // 2 | // SP_Local.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SP_Local : SubtitleProvider 12 | 13 | @end -------------------------------------------------------------------------------- /bilibili/SubHelper/SubtitleHelper.h: -------------------------------------------------------------------------------- 1 | // 2 | // SubtitleHelper.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface SubtitleHelper : SubtitleProvider 13 | 14 | + (instancetype)sharedInstance; 15 | - (void)addProvider: (SubtitleProvider *)prov; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /bilibili/VideoProvider/VP_Bilibili.h: -------------------------------------------------------------------------------- 1 | // 2 | // VP_Bilibili.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/3. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #ifndef vp_bilibili_h 12 | #define vp_bilibili_h 13 | 14 | #define VP_BILI_API_ERROR "Bilibili API Error" 15 | #define VP_BILI_JSON_ERROR "Bilibili API JSON Error" 16 | #define VP_BILI_DYN_PARSER_ERROR "Bilibili Dynamic Parser Error" 17 | 18 | #endif 19 | 20 | @interface VP_Bilibili : VideoProvider 21 | 22 | @property NSString *hwid; 23 | @property NSString *userAgent; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /bilibili/VideoProvider/VP_Local.h: -------------------------------------------------------------------------------- 1 | // 2 | // VP_Local.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface VP_Local : VideoProvider 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /bilibili/VideoProvider/VP_Local.m: -------------------------------------------------------------------------------- 1 | // 2 | // VP_Local.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "VP_Local.h" 10 | 11 | @implementation VP_Local 12 | 13 | + (instancetype)sharedInstance { 14 | static id sharedInstance; 15 | static dispatch_once_t onceToken; 16 | dispatch_once(&onceToken, ^{ 17 | sharedInstance = [[self alloc] init]; 18 | }); 19 | return sharedInstance; 20 | } 21 | 22 | - (NSDictionary *)generateParamsFromURL: (NSString *)URL{ 23 | return NULL; 24 | } 25 | 26 | - (VideoAddress *) getVideoAddress: (NSDictionary *)params{ 27 | if(!params[@"files"]){ 28 | [NSException raise:@VP_PARAM_ERROR format:@"Files cannot be empty"]; 29 | return NULL; 30 | } 31 | 32 | NSArray *selectedFiles = params[@"files"]; 33 | 34 | VideoAddress *video = [[VideoAddress alloc] init]; 35 | 36 | for(int i = 0; i < [selectedFiles count]; i++ ) 37 | { 38 | NSString *path = [selectedFiles objectAtIndex:i]; 39 | 40 | if(![[path pathExtension] isEqualToString:@"xml"] && 41 | ![[path pathExtension] isEqualToString:@"ass"]){ 42 | 43 | if(![video firstFragmentURL]){ 44 | [video setFirstFragmentURL:path]; 45 | } 46 | 47 | [video addDefaultPlayURL:path]; 48 | } 49 | } 50 | 51 | return video; 52 | } 53 | 54 | @end 55 | -------------------------------------------------------------------------------- /bilibili/VideoProvider/VP_YouGet.h: -------------------------------------------------------------------------------- 1 | // 2 | // VP_YouGet.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/4. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #ifndef vp_youget_h 12 | #define vp_youget_h 13 | 14 | #define VP_YG_NOT_INSTALLED "You-Get Not Installed" 15 | 16 | #endif 17 | 18 | @interface VP_YouGet : VideoProvider 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /bilibili/WebPages/autoswitch.js: -------------------------------------------------------------------------------- 1 | function attachAutoSwitch(){ 2 | if($('#v_bgm_list_data .active').length > 0){ 3 | _attachBGM() 4 | }else if($('.v-plist .curPage').length > 0){ 5 | _attachPRG(); 6 | }else if($('.v1-bangumi-list-part-child.cur').length > 0){ 7 | _attachBGMNew(); 8 | } 9 | 10 | } 11 | 12 | function _attachBGM(){ 13 | var active = parseInt($('#v_bgm_list_data .active').attr('idx')); 14 | if(active > -1){ 15 | var target = active + 1; 16 | var url = $('#v_bgm_list_data a[idx=' + target + ']').attr('href'); 17 | if(url && url.length > 0){ 18 | url += '?autoplay=1'; 19 | window.sendToView({'action':'goURL','data':'https://www.bilibili.com' + url}); 20 | } 21 | } 22 | } 23 | 24 | function _attachPRG(){ 25 | var nextUrl = $('.v-plist .curPage').next().attr('href'); 26 | if(nextUrl && nextUrl.length > 1){ 27 | window.sendToView({'action':'goURL','data':'https://www.bilibili.com' + nextUrl + '?autoplay=1'}); 28 | } 29 | } 30 | 31 | function _attachBGMNew(){ 32 | try{ 33 | $('.v1-bangumi-list-part-child.cur').next().children('a').click(); 34 | }catch(e){ 35 | 36 | } 37 | } 38 | 39 | attachAutoSwitch() 40 | -------------------------------------------------------------------------------- /bilibili/WebPages/blocker.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | var blockList = ['cnzz','tajs.qq.com','data.bilibili.com']; 3 | 4 | if(document.head){ 5 | headLoaded(); 6 | }else{ 7 | var observer = new MutationObserver(function(mutations) { 8 | if(document.head){ 9 | observer.disconnect(); 10 | headLoaded(); 11 | } 12 | }); 13 | observer.observe(document, { 14 | childList: true, 15 | subtree: true 16 | }); 17 | } 18 | 19 | function headLoaded(){ 20 | var hooked_ib = document.head.insertBefore; 21 | document.head.insertBefore = function(a){ 22 | if(a.src && checkBlock(a.src)){ 23 | return console.log('Blocked script insert: ' + a.src); 24 | } 25 | return hooked_ib.apply(this, arguments); 26 | } 27 | } 28 | 29 | function checkBlock(str){ 30 | for(var i = 0; i < blockList.length; i++){ 31 | if(str.indexOf(blockList[i]) > -1){ 32 | return true; 33 | } 34 | } 35 | return false; 36 | } 37 | })(); 38 | -------------------------------------------------------------------------------- /bilibili/WebPages/widget/css/all.css: -------------------------------------------------------------------------------- 1 | #bm_menu{ 2 | position: fixed; 3 | right: 1em; 4 | bottom: 1em; 5 | } 6 | #bm_tip{ 7 | position: fixed; 8 | right: 1em; 9 | bottom: 1em; 10 | background: #00A1D6; 11 | border-radius: 5px; 12 | padding: 5px; 13 | color: #ffffff; 14 | font-family:"Helvetica Neue"; 15 | font-size:1.2em; 16 | font-weight:bold; 17 | } 18 | .index_online{ 19 | height: 75px; 20 | } 21 | .round-button { 22 | width:5em; 23 | } 24 | .round-button-circle { 25 | width: 100%; 26 | height:0; 27 | padding-bottom: 100%; 28 | border-radius: 50%; 29 | overflow:hidden; 30 | background: #00A1D6; 31 | } 32 | .round-button-circle:hover { 33 | background:#30588e; 34 | } 35 | .round-button a { 36 | display:block; 37 | float:left; 38 | width:100%; 39 | padding-top:50%; 40 | padding-bottom:50%; 41 | line-height:1em; 42 | margin-top:-0.5em; 43 | 44 | text-align:center; 45 | color:#ffffff; 46 | font-family:"Helvetica Neue"; 47 | font-size:1.2em; 48 | font-weight:bold; 49 | text-decoration:none; 50 | } -------------------------------------------------------------------------------- /bilibili/en.lproj/AirPlay.strings: -------------------------------------------------------------------------------- 1 | 2 | /* Class = "NSTableColumn"; headerCell.title = "Address"; ObjectID = "3wQ-ES-pHP"; */ 3 | "3wQ-ES-pHP.headerCell.title" = "Address"; 4 | 5 | /* Class = "NSButtonCell"; title = "Quit"; ObjectID = "7Xw-IJ-rQj"; */ 6 | "7Xw-IJ-rQj.title" = "Quit"; 7 | 8 | /* Class = "NSTextFieldCell"; title = "Log"; ObjectID = "IAx-Ml-kBu"; */ 9 | "IAx-Ml-kBu.title" = "Log"; 10 | 11 | /* Class = "NSWindow"; title = "AirPlay Control ( TEST )"; ObjectID = "QvC-M9-y7g"; */ 12 | "QvC-M9-y7g.title" = "AirPlay Control ( TEST )"; 13 | 14 | /* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "aFL-Pm-uJD"; */ 15 | "aFL-Pm-uJD.title" = "Text Cell"; 16 | 17 | /* Class = "NSTableColumn"; headerCell.title = "Device"; ObjectID = "cgF-CO-0sw"; */ 18 | "cgF-CO-0sw.headerCell.title" = "Device"; 19 | 20 | /* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "k8a-yi-nUd"; */ 21 | "k8a-yi-nUd.title" = "Text Cell"; 22 | 23 | /* Class = "NSButtonCell"; title = "Play with QuickTime"; ObjectID = "dOX-1w-UUV"; */ 24 | "dOX-1w-UUV.title" = "Play with QuickTime"; 25 | 26 | /* Class = "NSButtonCell"; title = "Refresh"; ObjectID = "nle-RQ-e8f"; */ 27 | "nle-RQ-e8f.title" = "Refresh"; 28 | 29 | /* Class = "NSButtonCell"; title = "Connect"; ObjectID = "p0U-2v-EsG"; */ 30 | "p0U-2v-EsG.title" = "Connect"; 31 | -------------------------------------------------------------------------------- /bilibili/fontconfig/cache/fontconfig/84c0f976e30e948e99073af70f4ae876-le64.cache-4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/fontconfig/cache/fontconfig/84c0f976e30e948e99073af70f4ae876-le64.cache-4 -------------------------------------------------------------------------------- /bilibili/fontconfig/cache/fontconfig/CACHEDIR.TAG: -------------------------------------------------------------------------------- 1 | Signature: 8a477f597d28d172789f06886806bc55 2 | # This file is a cache directory tag created by fontconfig. 3 | # For information about cache directory tags, see: 4 | # http://www.brynosaurus.com/cachedir/ 5 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/10-autohint.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | true 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/10-no-sub-pixel.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | none 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/10-sub-pixel-bgr.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | bgr 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/10-sub-pixel-rgb.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | rgb 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/10-sub-pixel-vbgr.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | vbgr 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/10-sub-pixel-vrgb.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | vrgb 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/10-unhinted.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | false 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/11-lcdfilter-default.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | 13 | lcddefault 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/11-lcdfilter-legacy.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | 13 | lcdlegacy 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/11-lcdfilter-light.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | 13 | lcdlight 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/20-unhint-small-vera.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | 13 | 14 | Bitstream Vera Sans 15 | 16 | 17 | 7.5 18 | 19 | 20 | false 21 | 22 | 23 | 24 | 25 | 26 | Bitstream Vera Serif 27 | 28 | 29 | 7.5 30 | 31 | 32 | false 33 | 34 | 35 | 36 | 37 | 38 | Bitstream Vera Sans Mono 39 | 40 | 41 | 7.5 42 | 43 | 44 | false 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/30-urw-aliases.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | Zapf Dingbats 10 | Dingbats 11 | 12 | 13 | ITC Zapf Dingbats 14 | Dingbats 15 | 16 | 17 | 18 | Symbol 19 | 20 | 21 | Standard Symbols L 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/49-sansserif.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | sans-serif 10 | 11 | 12 | serif 13 | 14 | 15 | monospace 16 | 17 | 18 | sans-serif 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/50-user.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | fontconfig/conf.d 11 | fontconfig/fonts.conf 12 | 13 | ~/.fonts.conf.d 14 | ~/.fonts.conf 15 | 16 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/51-local.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | local.conf 6 | 7 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/65-khmer.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | serif 6 | 7 | Khmer OS" 8 | 9 | 10 | 11 | sans-serif 12 | 13 | Khmer OS" 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/69-unifont.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | serif 6 | 7 | FreeSerif 8 | Code2000 9 | Code2001 10 | 11 | 12 | 13 | sans-serif 14 | 15 | FreeSans 16 | Arial Unicode MS 17 | Arial Unicode 18 | Code2000 19 | Code2001 20 | 21 | 22 | 23 | monospace 24 | 25 | FreeMono 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/70-no-bitmaps.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | false 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/70-yes-bitmaps.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | false 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/80-delicious.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Delicious 10 | 11 | 12 | Heavy 13 | 14 | 15 | heavy 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /bilibili/fontconfig/fonts/conf.d/README: -------------------------------------------------------------------------------- 1 | conf.d/README 2 | 3 | Each file in this directory is a fontconfig configuration file. Fontconfig 4 | scans this directory, loading all files of the form [0-9][0-9]*.conf. 5 | These files are normally installed in /Users/Shared/.fc/share/fontconfig/conf.avail 6 | and then symlinked here, allowing them to be easily installed and then 7 | enabled/disabled by adjusting the symlinks. 8 | 9 | The files are loaded in numeric order, the structure of the configuration 10 | has led to the following conventions in usage: 11 | 12 | Files begining with: Contain: 13 | 14 | 00 through 09 Font directories 15 | 10 through 19 system rendering defaults (AA, etc) 16 | 20 through 29 font rendering options 17 | 30 through 39 family substitution 18 | 40 through 49 generic identification, map family->generic 19 | 50 through 59 alternate config file loading 20 | 60 through 69 generic aliases, map generic->family 21 | 70 through 79 select font (adjust which fonts are available) 22 | 80 through 89 match target="scan" (modify scanned patterns) 23 | 90 through 99 font synthesis 24 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/10-autohint.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | true 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/10-no-sub-pixel.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | none 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/10-sub-pixel-bgr.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | bgr 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/10-sub-pixel-rgb.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | rgb 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/10-sub-pixel-vbgr.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | vbgr 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/10-sub-pixel-vrgb.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | vrgb 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/10-unhinted.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | false 13 | 14 | 15 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/11-lcdfilter-default.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | 13 | lcddefault 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/11-lcdfilter-legacy.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | 13 | lcdlegacy 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/11-lcdfilter-light.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 12 | 13 | lcdlight 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/20-unhint-small-vera.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | 13 | 14 | Bitstream Vera Sans 15 | 16 | 17 | 7.5 18 | 19 | 20 | false 21 | 22 | 23 | 24 | 25 | 26 | Bitstream Vera Serif 27 | 28 | 29 | 7.5 30 | 31 | 32 | false 33 | 34 | 35 | 36 | 37 | 38 | Bitstream Vera Sans Mono 39 | 40 | 41 | 7.5 42 | 43 | 44 | false 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/30-urw-aliases.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | Zapf Dingbats 10 | Dingbats 11 | 12 | 13 | ITC Zapf Dingbats 14 | Dingbats 15 | 16 | 17 | 18 | Symbol 19 | 20 | 21 | Standard Symbols L 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/49-sansserif.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | sans-serif 10 | 11 | 12 | serif 13 | 14 | 15 | monospace 16 | 17 | 18 | sans-serif 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/50-user.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | fontconfig/conf.d 11 | fontconfig/fonts.conf 12 | 13 | ~/.fonts.conf.d 14 | ~/.fonts.conf 15 | 16 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/51-local.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | local.conf 6 | 7 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/65-khmer.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | serif 6 | 7 | Khmer OS" 8 | 9 | 10 | 11 | sans-serif 12 | 13 | Khmer OS" 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/69-unifont.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | serif 6 | 7 | FreeSerif 8 | Code2000 9 | Code2001 10 | 11 | 12 | 13 | sans-serif 14 | 15 | FreeSans 16 | Arial Unicode MS 17 | Arial Unicode 18 | Code2000 19 | Code2001 20 | 21 | 22 | 23 | monospace 24 | 25 | FreeMono 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/70-no-bitmaps.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | false 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/70-yes-bitmaps.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | false 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /bilibili/fontconfig/share/fontconfig/conf.avail/80-delicious.conf: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Delicious 10 | 11 | 12 | Heavy 13 | 14 | 15 | heavy 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /bilibili/gencache.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # gencache.sh 4 | # bilibili 5 | # 6 | # Created by TYPCN on 2015/4/21. 7 | # Copyright (c) 2016 TYPCN. All rights reserved. 8 | 9 | mkdir "/Users/Shared/.fc" 10 | chmod 777 "/Users/Shared/.fc" 11 | cp -r "/Applications/Bilibili.app/Contents/Resources/fontconfig/" "/Users/Shared/.fc" -------------------------------------------------------------------------------- /bilibili/headers/mpv_nullsafe.h: -------------------------------------------------------------------------------- 1 | // 2 | // mpv_nullsafe.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/7. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #ifndef mpv_nullsafe_h 10 | #define mpv_nullsafe_h 11 | 12 | #define mpv_command if(!self.player.mpv){return;} mpv_command 13 | #define mpv_command_async if(!self.player.mpv){return;} mpv_command_async 14 | #define mpv_set_property_async if(!self.player.mpv){return;} mpv_set_property_async 15 | #define mpv_set_property if(!self.player.mpv){return;} mpv_set_property 16 | #define mpv_get_property_async if(!self.player.mpv){return;} mpv_get_property_async 17 | #define mpv_get_property if(!self.player.mpv){return;} mpv_set_property 18 | 19 | #endif /* mpv_nullsafe_h */ 20 | -------------------------------------------------------------------------------- /bilibili/img/backwards.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/backwards.png -------------------------------------------------------------------------------- /bilibili/img/copy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/copy.png -------------------------------------------------------------------------------- /bilibili/img/credits.txt: -------------------------------------------------------------------------------- 1 | http://www.flaticon.com/free-icon/round-right-arrow_61794 2 | 3 | http://www.flaticon.com/free-icon/copy-file_73547 4 | 5 | http://www.flaticon.com/free-icon/search-interface-symbol_54481 6 | 7 | http://www.flaticon.com/free-icon/blank-document_79017 -------------------------------------------------------------------------------- /bilibili/img/forward.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/forward.png -------------------------------------------------------------------------------- /bilibili/img/homepage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/homepage.png -------------------------------------------------------------------------------- /bilibili/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/loading.gif -------------------------------------------------------------------------------- /bilibili/img/menubutton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/menubutton.png -------------------------------------------------------------------------------- /bilibili/img/mpv.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/mpv.icns -------------------------------------------------------------------------------- /bilibili/img/play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/play.png -------------------------------------------------------------------------------- /bilibili/img/player/b_play.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/b_play.pdf -------------------------------------------------------------------------------- /bilibili/img/player/credits.txt: -------------------------------------------------------------------------------- 1 | From mplayerx 2 | 3 | https://github.com/niltsh/MPlayerX -------------------------------------------------------------------------------- /bilibili/img/player/enterfullscreen.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/enterfullscreen.pdf -------------------------------------------------------------------------------- /bilibili/img/player/exitfillscreen_lr.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/exitfillscreen_lr.pdf -------------------------------------------------------------------------------- /bilibili/img/player/exitfillscreen_ub.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/exitfillscreen_ub.pdf -------------------------------------------------------------------------------- /bilibili/img/player/exitfullscreen.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/exitfullscreen.pdf -------------------------------------------------------------------------------- /bilibili/img/player/fillscreen_lr.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/fillscreen_lr.pdf -------------------------------------------------------------------------------- /bilibili/img/player/fillscreen_ub.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/fillscreen_ub.pdf -------------------------------------------------------------------------------- /bilibili/img/player/fold.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/fold.pdf -------------------------------------------------------------------------------- /bilibili/img/player/mute.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/mute.pdf -------------------------------------------------------------------------------- /bilibili/img/player/next-episode.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/next-episode.pdf -------------------------------------------------------------------------------- /bilibili/img/player/pause.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/pause.pdf -------------------------------------------------------------------------------- /bilibili/img/player/prev-episode.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/prev-episode.pdf -------------------------------------------------------------------------------- /bilibili/img/player/resizeindicator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/resizeindicator.png -------------------------------------------------------------------------------- /bilibili/img/player/titlebar-corner-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/titlebar-corner-left.png -------------------------------------------------------------------------------- /bilibili/img/player/titlebar-corner-right.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/titlebar-corner-right.png -------------------------------------------------------------------------------- /bilibili/img/player/titlebar-middle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/titlebar-middle.png -------------------------------------------------------------------------------- /bilibili/img/player/toolbar_audio.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/toolbar_audio.icns -------------------------------------------------------------------------------- /bilibili/img/player/toolbar_video.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/toolbar_video.icns -------------------------------------------------------------------------------- /bilibili/img/player/unfold.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/unfold.pdf -------------------------------------------------------------------------------- /bilibili/img/player/vol_high.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/vol_high.pdf -------------------------------------------------------------------------------- /bilibili/img/player/vol_low.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/vol_low.pdf -------------------------------------------------------------------------------- /bilibili/img/player/vol_mid.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/vol_mid.pdf -------------------------------------------------------------------------------- /bilibili/img/player/vol_no.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/player/vol_no.pdf -------------------------------------------------------------------------------- /bilibili/img/reload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/reload.png -------------------------------------------------------------------------------- /bilibili/img/reloadp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/reloadp.png -------------------------------------------------------------------------------- /bilibili/img/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/search.png -------------------------------------------------------------------------------- /bilibili/img/webpage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/img/webpage.png -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Modules: -------------------------------------------------------------------------------- 1 | Versions/Current/Modules -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/PrivateHeaders: -------------------------------------------------------------------------------- 1 | Versions/Current/PrivateHeaders -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Resources: -------------------------------------------------------------------------------- 1 | Versions/Current/Resources -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Sparkle: -------------------------------------------------------------------------------- 1 | Versions/Current/Sparkle -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Headers/SUAppcast.h: -------------------------------------------------------------------------------- 1 | // 2 | // SUAppcast.h 3 | // Sparkle 4 | // 5 | // Created by Andy Matuschak on 3/12/06. 6 | // Copyright 2006 Andy Matuschak. All rights reserved. 7 | // 8 | 9 | #ifndef SUAPPCAST_H 10 | #define SUAPPCAST_H 11 | 12 | #import 13 | #import "SUExport.h" 14 | 15 | @class SUAppcastItem; 16 | SU_EXPORT @interface SUAppcast : NSObject 17 | 18 | @property (copy) NSString *userAgentString; 19 | @property (copy) NSDictionary *httpHeaders; 20 | 21 | - (void)fetchAppcastFromURL:(NSURL *)url completionBlock:(void (^)(NSError *))err; 22 | 23 | @property (readonly, copy) NSArray *items; 24 | @end 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Headers/SUErrors.h: -------------------------------------------------------------------------------- 1 | // 2 | // SUErrors.h 3 | // Sparkle 4 | // 5 | // Created by C.W. Betts on 10/13/14. 6 | // Copyright (c) 2014 Sparkle Project. All rights reserved. 7 | // 8 | 9 | #ifndef SUERRORS_H 10 | #define SUERRORS_H 11 | 12 | #import 13 | #import "SUExport.h" 14 | 15 | /** 16 | * Error domain used by Sparkle 17 | */ 18 | SU_EXPORT extern NSString *const SUSparkleErrorDomain; 19 | 20 | typedef NS_ENUM(OSStatus, SUError) { 21 | // Appcast phase errors. 22 | SUAppcastParseError = 1000, 23 | SUNoUpdateError = 1001, 24 | SUAppcastError = 1002, 25 | SURunningFromDiskImageError = 1003, 26 | 27 | // Downlaod phase errors. 28 | SUTemporaryDirectoryError = 2000, 29 | 30 | // Extraction phase errors. 31 | SUUnarchivingError = 3000, 32 | SUSignatureError = 3001, 33 | 34 | // Installation phase errors. 35 | SUFileCopyFailure = 4000, 36 | SUAuthenticationFailure = 4001, 37 | SUMissingUpdateError = 4002, 38 | SUMissingInstallerToolError = 4003, 39 | SURelaunchError = 4004, 40 | SUInstallationError = 4005, 41 | SUDowngradeError = 4006, 42 | 43 | // System phase errors 44 | SUSystemPowerOffError = 5000 45 | }; 46 | 47 | #endif 48 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Headers/SUExport.h: -------------------------------------------------------------------------------- 1 | // 2 | // SUExport.h 3 | // Sparkle 4 | // 5 | // Created by Jake Petroules on 2014-08-23. 6 | // Copyright (c) 2014 Sparkle Project. All rights reserved. 7 | // 8 | 9 | #ifndef SUEXPORT_H 10 | #define SUEXPORT_H 11 | 12 | #ifdef BUILDING_SPARKLE 13 | #define SU_EXPORT __attribute__((visibility("default"))) 14 | #else 15 | #define SU_EXPORT 16 | #endif 17 | 18 | #endif 19 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Headers/SUStandardVersionComparator.h: -------------------------------------------------------------------------------- 1 | // 2 | // SUStandardVersionComparator.h 3 | // Sparkle 4 | // 5 | // Created by Andy Matuschak on 12/21/07. 6 | // Copyright 2007 Andy Matuschak. All rights reserved. 7 | // 8 | 9 | #ifndef SUSTANDARDVERSIONCOMPARATOR_H 10 | #define SUSTANDARDVERSIONCOMPARATOR_H 11 | 12 | #import 13 | #import "SUExport.h" 14 | #import "SUVersionComparisonProtocol.h" 15 | 16 | /*! 17 | Sparkle's default version comparator. 18 | 19 | This comparator is adapted from MacPAD, by Kevin Ballard. 20 | It's "dumb" in that it does essentially string comparison, 21 | in components split by character type. 22 | */ 23 | SU_EXPORT @interface SUStandardVersionComparator : NSObject 24 | 25 | /*! 26 | Returns a singleton instance of the comparator. 27 | */ 28 | + (SUStandardVersionComparator *)defaultComparator; 29 | 30 | /*! 31 | Compares version strings through textual analysis. 32 | 33 | See the implementation for more details. 34 | */ 35 | - (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB; 36 | @end 37 | 38 | #endif 39 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SUVersionComparisonProtocol.h 3 | // Sparkle 4 | // 5 | // Created by Andy Matuschak on 12/21/07. 6 | // Copyright 2007 Andy Matuschak. All rights reserved. 7 | // 8 | 9 | #ifndef SUVERSIONCOMPARISONPROTOCOL_H 10 | #define SUVERSIONCOMPARISONPROTOCOL_H 11 | 12 | #import 13 | #import "SUExport.h" 14 | 15 | /*! 16 | Provides version comparison facilities for Sparkle. 17 | */ 18 | @protocol SUVersionComparison 19 | 20 | /*! 21 | An abstract method to compare two version strings. 22 | 23 | Should return NSOrderedAscending if b > a, NSOrderedDescending if b < a, 24 | and NSOrderedSame if they are equivalent. 25 | */ 26 | - (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB; // *** MAY BE CALLED ON NON-MAIN THREAD! 27 | 28 | @end 29 | 30 | #endif 31 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h: -------------------------------------------------------------------------------- 1 | // 2 | // SUVersionDisplayProtocol.h 3 | // EyeTV 4 | // 5 | // Created by Uli Kusterer on 08.12.09. 6 | // Copyright 2009 Elgato Systems GmbH. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SUExport.h" 11 | 12 | /*! 13 | Applies special display formatting to version numbers. 14 | */ 15 | @protocol SUVersionDisplay 16 | 17 | /*! 18 | Formats two version strings. 19 | 20 | Both versions are provided so that important distinguishing information 21 | can be displayed while also leaving out unnecessary/confusing parts. 22 | */ 23 | - (void)formatVersion:(NSString **)inOutVersionA andVersion:(NSString **)inOutVersionB; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Headers/Sparkle.h: -------------------------------------------------------------------------------- 1 | // 2 | // Sparkle.h 3 | // Sparkle 4 | // 5 | // Created by Andy Matuschak on 3/16/06. (Modified by CDHW on 23/12/07) 6 | // Copyright 2006 Andy Matuschak. All rights reserved. 7 | // 8 | 9 | #ifndef SPARKLE_H 10 | #define SPARKLE_H 11 | 12 | #import 13 | 14 | // This list should include the shared headers. It doesn't matter if some of them aren't shared (unless 15 | // there are name-space collisions) so we can list all of them to start with: 16 | 17 | #import "SUAppcast.h" 18 | #import "SUAppcastItem.h" 19 | #import "SUStandardVersionComparator.h" 20 | #import "SUUpdater.h" 21 | #import "SUVersionComparisonProtocol.h" 22 | #import "SUVersionDisplayProtocol.h" 23 | #import "SUErrors.h" 24 | 25 | #endif 26 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Modules/module.modulemap: -------------------------------------------------------------------------------- 1 | framework module Sparkle { 2 | umbrella header "Sparkle.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/PrivateHeaders/SUUnarchiver.h: -------------------------------------------------------------------------------- 1 | // 2 | // SUUnarchiver.h 3 | // Sparkle 4 | // 5 | // Created by Andy Matuschak on 3/16/06. 6 | // Copyright 2006 Andy Matuschak. All rights reserved. 7 | // 8 | 9 | #ifndef SUUNARCHIVER_H 10 | #define SUUNARCHIVER_H 11 | 12 | #import 13 | 14 | @class SUHost; 15 | @protocol SUUnarchiverDelegate; 16 | 17 | @interface SUUnarchiver : NSObject 18 | 19 | @property (copy, readonly) NSString *archivePath; 20 | @property (copy, readonly) NSString *updateHostBundlePath; 21 | @property (weak) id delegate; 22 | 23 | + (SUUnarchiver *)unarchiverForPath:(NSString *)path updatingHostBundlePath:(NSString *)host; 24 | 25 | - (void)start; 26 | @end 27 | 28 | @protocol SUUnarchiverDelegate 29 | - (void)unarchiverDidFinish:(SUUnarchiver *)unarchiver; 30 | - (void)unarchiverDidFail:(SUUnarchiver *)unarchiver; 31 | @optional 32 | - (void)unarchiver:(SUUnarchiver *)unarchiver extractedProgress:(double)progress; 33 | @end 34 | 35 | #endif 36 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/MacOS/Autoupdate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/MacOS/Autoupdate -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/PkgInfo: -------------------------------------------------------------------------------- 1 | APPL???? -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/AppIcon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/AppIcon.icns -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/SUStatus.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/SUStatus.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ar.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ar.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ca.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ca.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/cs.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/cs.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/da.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/da.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/de.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/de.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/el.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/el.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/en.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/en.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/es.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/es.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/fi.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/fi.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/fr.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/fr.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/he.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/he.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/is.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/is.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/it.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/it.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ja.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ja.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ko.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ko.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/nb.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/nb.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/nl.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/nl.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pl.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pl.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pt_BR.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pt_BR.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pt_PT.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/pt_PT.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ro.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ro.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ru.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/ru.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sk.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sk.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sl.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sl.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sv.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/sv.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/th.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/th.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/tr.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/tr.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/uk.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/uk.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/zh_CN.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/zh_CN.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/zh_TW.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/Autoupdate.app/Contents/Resources/zh_TW.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | BuildMachineOSBuild 6 | 15E27e 7 | CFBundleDevelopmentRegion 8 | en 9 | CFBundleExecutable 10 | Sparkle 11 | CFBundleIdentifier 12 | org.sparkle-project.Sparkle 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | Sparkle 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.13.1 git-2afc553 21 | CFBundleSignature 22 | ???? 23 | CFBundleSupportedPlatforms 24 | 25 | MacOSX 26 | 27 | CFBundleVersion 28 | 1.13.1 29 | DTCompiler 30 | com.apple.compilers.llvm.clang.1_0 31 | DTPlatformBuild 32 | 7C68 33 | DTPlatformVersion 34 | GM 35 | DTSDKBuild 36 | 15C43 37 | DTSDKName 38 | macosx10.11 39 | DTXcode 40 | 0720 41 | DTXcodeBuild 42 | 7C68 43 | 44 | 45 | -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/SUStatus.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/SUStatus.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ar.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ar.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ar.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ar.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ar.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ca.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ca.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/el.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/el.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/el.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/el.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/el.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/el.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/el.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/el.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/fi.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/fi.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/fr_CA.lproj: -------------------------------------------------------------------------------- 1 | fr.lproj -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/he.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/he.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ko.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ko.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ko.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ko.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/nb.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/nb.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/nb.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/nb.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/nb.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/nb.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/nb.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/nb.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pt.lproj: -------------------------------------------------------------------------------- 1 | pt_BR.lproj -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/pt_PT.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ro.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ro.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ro.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ro.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ro.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sk.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sk.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sk.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sk.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sl.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sl.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sl.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sl.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sl.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/th.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/th.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/th.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/th.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/th.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/tr.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/tr.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/tr.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/tr.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/tr.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/uk.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/uk.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/uk.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/uk.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/uk.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/A/Sparkle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/bilibili/libs/Sparkle.framework/Versions/A/Sparkle -------------------------------------------------------------------------------- /bilibili/libs/Sparkle.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /bilibili/libs/aria2c: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:f3649fbe44d98c65dc8e5017bd321c5386e197ddf34c50d5afd6923d6ab6e4ed 3 | size 3472032 4 | -------------------------------------------------------------------------------- /bilibili/libs/libass.5.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:aa5d1e3fead95cbbe4b125ec2768330c2ce3aca7ec3c466b3b760f88582affc6 3 | size 209248 4 | -------------------------------------------------------------------------------- /bilibili/libs/libavcodec.57.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1dabddee92a1bf507c3688a1f54e2420935152c86b3a16bf1de53c9ced94ef30 3 | size 13496736 4 | -------------------------------------------------------------------------------- /bilibili/libs/libavdevice.57.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9d8a9f70af6612910aacf29d16ccb2d985328f5b81f7c9fa25c35606b7387472 3 | size 53136 4 | -------------------------------------------------------------------------------- /bilibili/libs/libavfilter.6.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3664922760cef94c00e1afb0f384bcefae62bae77f364482f34f009bc8b7d9ad 3 | size 1896308 4 | -------------------------------------------------------------------------------- /bilibili/libs/libavformat.57.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:09992f9e98b05a83900efb73b4fdb98065a810f7bbf9b1f6023149c6ea8ffe70 3 | size 1891980 4 | -------------------------------------------------------------------------------- /bilibili/libs/libavresample.3.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:eb1e59ef4f8183e1d57d2c450753cdafa760bc722955c4e4403ca300dca8cfe4 3 | size 143244 4 | -------------------------------------------------------------------------------- /bilibili/libs/libavutil.55.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4e626be14416bc54c394ee455f5c376cc1bc5d8a0fe4c1d539edd4c1d2fd0ed1 3 | size 409752 4 | -------------------------------------------------------------------------------- /bilibili/libs/libfontconfig.1.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:2ba9041844bfea41b97a92461aba5d85bcf0935a7cd3058b785469376ebfb3f9 3 | size 296076 4 | -------------------------------------------------------------------------------- /bilibili/libs/libfreetype.6.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9d63840f26dd176d3604da8373684193345cdcb607d2f14fd8bfcf5241e0ab85 3 | size 561516 4 | -------------------------------------------------------------------------------- /bilibili/libs/libfribidi.0.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:0d56ff36dc503345a8864672c4a5b548f3a1fcb86f6122859383b1d41ad017cd 3 | size 90948 4 | -------------------------------------------------------------------------------- /bilibili/libs/libglib-2.0.0.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:85cfbf568e0b214900f72c9f5ff0b6deea73cb92e82d1569b88732173dc6d23a 3 | size 958064 4 | -------------------------------------------------------------------------------- /bilibili/libs/libharfbuzz.0.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:37e6ccbfffd76b3d1f45db098936f1c86434e5ddfcaea9aa39f1171714838f90 3 | size 535280 4 | -------------------------------------------------------------------------------- /bilibili/libs/libintl.8.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:4c577dc5e6eaee3f8934fea1419ecd209c349881747f7b6af7806951241ab329 3 | size 50148 4 | -------------------------------------------------------------------------------- /bilibili/libs/libjpeg.8.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:e2dafd9aad9dcec5e92acd5d6e1eca46af3f96628ffc5bc23e6528ca3081d552 3 | size 207136 4 | -------------------------------------------------------------------------------- /bilibili/libs/liblcms2.2.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:33651219574dcf10c03871fbe62371ad57e338617eba5111b0f0d40d9e125e82 3 | size 295448 4 | -------------------------------------------------------------------------------- /bilibili/libs/liblua.5.2.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3dc575bf525ffae88fd6ec93015b098488c7489520a5dae57e2a2a48408f7598 3 | size 164208 4 | -------------------------------------------------------------------------------- /bilibili/libs/libmediainfo.0.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:1397e8b635799910f99444e8fcc1fa42a5bdba49177cc4e55bf248a01a2cde3d 3 | size 6794808 4 | -------------------------------------------------------------------------------- /bilibili/libs/libmpv.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:47e1bea03d837fe336b430376d60df3afd37490dd8dabcde3f7321ad1eb79fd0 3 | size 2555804 4 | -------------------------------------------------------------------------------- /bilibili/libs/libopus.0.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:207e9e49e5fed147ecfd7c99b63e02e3610260ebb0e80beedc4e36d491d624b0 3 | size 278860 4 | -------------------------------------------------------------------------------- /bilibili/libs/libpcre.1.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:188446f433811b2b68a3af2d71fd06ec5c93b2c25a4372817ae451532f2c9b4e 3 | size 447888 4 | -------------------------------------------------------------------------------- /bilibili/libs/libpng16.16.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:73c03978c366164d1b3b0c8ffb0f9127ced5c35451f95ce0be4d684e1e4ae885 3 | size 177068 4 | -------------------------------------------------------------------------------- /bilibili/libs/libpostproc.54.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:9e4ad18a87d1a52c4f4d3bdbc6d204db718c9dac352470814c640c97f5e08b35 3 | size 140932 4 | -------------------------------------------------------------------------------- /bilibili/libs/libswresample.2.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:28f41a13cd58126827a9cdc9475292233f752e232389616600c90714f7ebf845 3 | size 129012 4 | -------------------------------------------------------------------------------- /bilibili/libs/libswscale.4.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:03a345d6d6f991d41f304b47a57e062e6b6355453b2a660cfa07a3e9ee0e89a3 3 | size 627708 4 | -------------------------------------------------------------------------------- /bilibili/libs/libx264.148.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:d1bb650ff1c21a4fa620a21c073f43e9060a88aca0919181c82a3645aed18836 3 | size 1016224 4 | -------------------------------------------------------------------------------- /bilibili/libs/libz.1.dylib: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:319a72dce85b00951b6ebbd51e10467f45593ec979aecb4f18f5eee42aa72a65 3 | size 88324 4 | -------------------------------------------------------------------------------- /bilibili/startaria.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # startaria.sh 4 | # bilibili 5 | # 6 | # Created by TYPCN on 2015/9/6. 7 | # Copyright (c) 2016 TYPCN. All rights reserved. 8 | 9 | mkdir -p "$HOME/Library/Application Support/com.typcn.bilibili/conf/" 10 | touch "$HOME/Library/Application Support/com.typcn.bilibili/aria2.session" 11 | touch "$HOME/Library/Application Support/com.typcn.bilibili/conf/aria2.conf" 12 | /Applications/Bilibili.app/Contents/Resources/aria2c --conf-path="$HOME/Library/Application Support/com.typcn.bilibili/conf/aria2.conf" -s10 -k1M -x10 --input-file="$HOME/Library/Application Support/com.typcn.bilibili/aria2.session" --save-session="$HOME/Library/Application Support/com.typcn.bilibili/aria2.session" --save-session-interval=10 --dir="$HOME/Movies/Bilibili/" --enable-rpc=true --rpc-listen-all=false --rpc-listen-port=23336 --rpc-allow-origin-all --user-agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_4) AppleWebKit/601.1.43 (KHTML, like Gecko) Version/9.0 Safari/601.1.43" -c -D 13 | -------------------------------------------------------------------------------- /chrome-extension/css/custom.css: -------------------------------------------------------------------------------- 1 | html, body{ 2 | width: 500px; 3 | height: 420px; 4 | padding: 0; 5 | margin: 0; 6 | overflow-x: hidden; 7 | -webkit-user-select:none; 8 | } 9 | 10 | :focus { 11 | outline: 0; 12 | outline: none; 13 | } 14 | 15 | /* Basic style tweaks */ 16 | section { padding: 5px;} 17 | .navbar { margin-bottom: 2px; } 18 | 19 | #loading{ 20 | width: 100%; 21 | height: 100%; 22 | display: flex; 23 | justify-content: center; 24 | align-items: center; 25 | } 26 | 27 | #loading .mdl-spinner{ 28 | position: absolute; 29 | top: 50%; 30 | left: 50%; 31 | 32 | margin: -70px 0 0 -14px; 33 | } 34 | 35 | #loading p{ 36 | display: block; 37 | } 38 | 39 | .mdl-layout__header .mdl-layout__drawer-button{ 40 | display: none; 41 | } 42 | 43 | .mdl-layout__header-row{ 44 | padding-left: 20px; 45 | } 46 | 47 | /* Scroll Bar */ 48 | /*::-webkit-scrollbar { width: 6px; } 49 | ::-webkit-scrollbar-track { -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); } 50 | ::-webkit-scrollbar-thumb, ::-webkit-scrollbar-thumb:window-inactive { background: red; }*/ -------------------------------------------------------------------------------- /chrome-extension/img/Icon128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/chrome-extension/img/Icon128.png -------------------------------------------------------------------------------- /chrome-extension/img/Icon16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/chrome-extension/img/Icon16.png -------------------------------------------------------------------------------- /chrome-extension/img/Icon48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/typcn/bilibili-mac-client/b959abc17b260bcabbacdbbe41a69535deda3062/chrome-extension/img/Icon48.png -------------------------------------------------------------------------------- /chrome-extension/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "manifest_version": 2, 3 | "name": "Bilibili Mac Client Helper", 4 | "description": "Chrome Helper for Bilibili Mac Client", 5 | "version": "1.51", 6 | "permissions": [ 7 | "storage", 8 | "tabs", 9 | "http://*/*", 10 | "notifications" 11 | ], 12 | "icons": { 13 | "16": "img/icon16.png", 14 | "48": "img/icon48.png", 15 | "128": "img/icon128.png" 16 | }, 17 | "browser_action": { 18 | "default_icon": { 19 | "19": "img/icon48.png", 20 | "38": "img/icon48.png" 21 | }, 22 | "default_popup": "popup.html" 23 | }, 24 | "background": { 25 | "scripts": ["js/background.js"] 26 | }, 27 | "content_scripts": [ 28 | { 29 | "matches": ["http://*/*","https://*/*"], 30 | "js": ["js/inject.js"] 31 | } 32 | ], 33 | "content_security_policy": "script-src 'self' blob: filesystem: chrome-extension-resource: http://localhost:23330 https://www.google-analytics.com; object-src 'self'", 34 | "web_accessible_resources": [ 35 | "img/icon128.png" 36 | ] 37 | } -------------------------------------------------------------------------------- /fabric_submit_script.sh: -------------------------------------------------------------------------------- 1 | echo "You can set fabric build command here(./Farbic run APIKey BuildSecret)" 2 | -------------------------------------------------------------------------------- /genkey.sh: -------------------------------------------------------------------------------- 1 | rm -rf bilibili/APIKey.h; 2 | echo "NSString *APIKey = @\"\";" >> bilibili/APIKey.h; 3 | echo "NSString *APISecret = @\"\";" >> bilibili/APIKey.h; -------------------------------------------------------------------------------- /plugin/PluginExample/PluginExample.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /plugin/PluginExample/plugin/Example.h: -------------------------------------------------------------------------------- 1 | // 2 | // Example.h 3 | // PluginExample 4 | // 5 | // Created by TYPCN on 2015/9/20. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #ifndef Example_h 10 | #define Example_h 11 | 12 | #import 13 | #import 14 | 15 | @interface Example : VP_Plugin 16 | 17 | // trigger on load , version is program build number ( eg: 206 ) 18 | - (bool)load:(int)version; 19 | 20 | // trigger on unload , do cleanup 21 | - (bool)unload; 22 | 23 | // trigger when event from javascript , return true or false 24 | - (bool)canHandleEvent:(NSString *)eventName; 25 | 26 | // trigger when event from javascript , return video url to play , reutrn NULL won't do anything 27 | - (NSString *)processEvent:(NSString *)eventName :(NSString *)eventData; 28 | 29 | // trigger when user click "settings" 30 | - (void)openSettings; 31 | 32 | @end 33 | 34 | 35 | #endif /* Example_h */ 36 | -------------------------------------------------------------------------------- /plugin/PluginExample/plugin/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | Inject Javascript on domain 24 | example.com 25 | Inject Javascript file prefix 26 | Inject 27 | NSHumanReadableCopyright 28 | Copyright © 2016 TYPCN. All rights reserved. 29 | NSPrincipalClass 30 | Example 31 | 32 | 33 | -------------------------------------------------------------------------------- /plugin/PluginExample/plugin/Inject.js: -------------------------------------------------------------------------------- 1 | 2 | window.sendToPlugin = function(data){ 3 | var request = new XMLHttpRequest(); 4 | request.open('POST', 'http://localhost:23330/pluginCall', true); 5 | request.setRequestHeader('Content-Type', 'application/json'); 6 | request.send(JSON.stringify(data)); 7 | } 8 | 9 | 10 | document.body.innerHTML = 'Click to test'; 11 | 12 | document.getElementById('test').addEventListener('click',testclick); 13 | 14 | function testclick(){ 15 | // action ( event name ) format is pluginName-str 16 | sendToPlugin({ action:'Example-ShowExamplePanel', data:'123' }); 17 | } -------------------------------------------------------------------------------- /plugin/VPPluginAPI/VPPlugin/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | $(CURRENT_PROJECT_VERSION) 23 | NSHumanReadableCopyright 24 | Copyright © 2016 TYPCN. All rights reserved. 25 | NSPrincipalClass 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /plugin/VPPluginAPI/VPPlugin/SubtitleProvider.h: -------------------------------------------------------------------------------- 1 | // 2 | // SubtitleProvider.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SubtitleProvider : NSObject 12 | 13 | - (BOOL) canHandle: (NSDictionary *)dict; 14 | - (NSDictionary *) getSubtitle: (NSDictionary *)dict; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /plugin/VPPluginAPI/VPPlugin/SubtitleProvider.m: -------------------------------------------------------------------------------- 1 | // 2 | // SubtitleProvider.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/6. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "SubtitleProvider.h" 10 | 11 | @implementation SubtitleProvider 12 | 13 | - (BOOL) canHandle: (NSDictionary *)dict{ 14 | return NO; 15 | } 16 | - (NSDictionary *) getSubtitle: (NSDictionary *)dict{ 17 | return dict; 18 | } 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /plugin/VPPluginAPI/VPPlugin/VPPlugin.m: -------------------------------------------------------------------------------- 1 | // 2 | // Plugin common API 3 | // 4 | // Created by TYPCN on 2015/9/21. 5 | // Copyright © 2016 TYPCN. All rights reserved. 6 | // 7 | 8 | #import "VPPlugin.h" 9 | 10 | @implementation VP_Plugin 11 | 12 | - (bool)load:(int)version{ 13 | return false; 14 | } 15 | - (bool)unload{ 16 | return false; 17 | } 18 | - (bool)canHandleEvent:(NSString *)eventName{ 19 | return false; 20 | } 21 | - (NSString *)processEvent:(NSString *)eventName :(NSString *)eventData{ 22 | return NULL; 23 | } 24 | - (void)openSettings{ 25 | return; 26 | } 27 | - (id)getClassOfType:(NSString *)type{ 28 | return NULL; 29 | } 30 | @end 31 | -------------------------------------------------------------------------------- /plugin/VPPluginAPI/VPPlugin/VideoAddress.h: -------------------------------------------------------------------------------- 1 | // 2 | // VideoAddress.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/3. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface VideoAddress : NSObject 12 | 13 | @property NSString *firstFragmentURL; // First fragment of default play url 14 | @property NSMutableArray *defaultPlayURL; // All fragments [Frag1,Frag2,...] 15 | @property NSMutableArray *backupPlayURLs; // Backup URLs [ [B1F1,B1F2,...], [B2F1,B2F2,...], ... ] 16 | 17 | @property NSString *userAgent; 18 | @property NSString *cookie; 19 | 20 | - (NSString *)nextPlayURL; 21 | 22 | - (void)addDefaultPlayURL:(NSString *)URL; 23 | 24 | - (void)addBackupURL:(NSArray *)URL; // Multi fragments 25 | - (NSString *)processMultiFragment:(NSArray *)URLs; // Multi fragments 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /plugin/VPPluginAPI/VPPlugin/VideoProvider.h: -------------------------------------------------------------------------------- 1 | // 2 | // VideoProvider.h 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/3. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | 10 | // Don't use this class directly , Inherit it 11 | 12 | #import 13 | #import "VideoAddress.h" 14 | 15 | #ifndef vp_h 16 | #define vp_h 17 | 18 | #define VP_RESOLVE_ERROR "Video Resolve Error" 19 | #define VP_PARAM_ERROR "Input Param Error" 20 | 21 | #endif 22 | 23 | 24 | @interface VideoProvider : NSObject 25 | 26 | + (instancetype) sharedInstance; 27 | 28 | - (NSDictionary *) generateParamsFromURL: (NSString *)url; 29 | - (VideoAddress *) getVideoAddress: (NSDictionary *)params; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /plugin/VPPluginAPI/VPPlugin/VideoProvider.m: -------------------------------------------------------------------------------- 1 | // 2 | // VideoProvider.m 3 | // bilibili 4 | // 5 | // Created by TYPCN on 2016/3/3. 6 | // Copyright © 2016 TYPCN. All rights reserved. 7 | // 8 | 9 | #import "VideoProvider.h" 10 | 11 | 12 | #pragma clang diagnostic push 13 | // This is only a placeholder class, disable warning for it 14 | #pragma clang diagnostic ignored "-Wincomplete-implementation" 15 | 16 | @implementation VideoProvider 17 | 18 | - (NSDictionary *) generateParamsFromURL: (NSString *)url{ 19 | return NULL; 20 | } 21 | 22 | - (VideoAddress *) getVideoAddress: (NSDictionary *)params{ 23 | return NULL; 24 | } 25 | 26 | @end 27 | 28 | #pragma clang diagnostic pop --------------------------------------------------------------------------------