From 155ea0e45f8b0d11b4012cb6fd421f4227df17f7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Felix=20Paul=20K=C3=BChne?= Date: Sat, 18 Feb 2006 18:40:04 +0000 Subject: [PATCH] * new CheckForUpdate panel (closes #310) - the actual download is currently done by your default browser since the needed notification window isn't available on OSX yet - download through VLC is implemented, but commented for the moment - needs some checking once a complete Status.xml is available --- Makefile.am | 3 + .../English.lproj/MainMenu.nib/classes.nib | 2 + .../English.lproj/MainMenu.nib/info.nib | 4 +- .../MainMenu.nib/keyedobjects.nib | Bin 83071 -> 83365 bytes .../English.lproj/Update.nib/classes.nib | 21 ++ .../English.lproj/Update.nib/info.nib | 16 ++ .../English.lproj/Update.nib/keyedobjects.nib | Bin 0 -> 10009 bytes extras/MacOSX/vlc.pbproj/project.pbxproj | 22 +- modules/gui/macosx/intf.h | 8 +- modules/gui/macosx/intf.m | 10 +- modules/gui/macosx/update.h | 54 ++++ modules/gui/macosx/update.m | 253 ++++++++++++++++++ 12 files changed, 380 insertions(+), 13 deletions(-) create mode 100644 extras/MacOSX/Resources/English.lproj/Update.nib/classes.nib create mode 100644 extras/MacOSX/Resources/English.lproj/Update.nib/info.nib create mode 100644 extras/MacOSX/Resources/English.lproj/Update.nib/keyedobjects.nib create mode 100644 modules/gui/macosx/update.h create mode 100644 modules/gui/macosx/update.m diff --git a/Makefile.am b/Makefile.am index 1317d7358b..325ca394a4 100644 --- a/Makefile.am +++ b/Makefile.am @@ -194,6 +194,9 @@ EXTRA_DIST += \ extras/MacOSX/Resources/English.lproj/SFilters.nib/classes.nib \ extras/MacOSX/Resources/English.lproj/SFilters.nib/info.nib \ extras/MacOSX/Resources/English.lproj/SFilters.nib/keyedobjects.nib \ + extras/MacOSX/Resources/English.lproj/Update.nib/classes.nib \ + extras/MacOSX/Resources/English.lproj/Update.nib/info.nib \ + extras/MacOSX/Resources/English.lproj/Update.nib/keyedobjects.nib \ extras/MacOSX/Resources/English.lproj/InfoPlist.strings \ extras/MacOSX/Resources/a52.icns \ extras/MacOSX/Resources/aac.icns \ diff --git a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib index c32c5aaff1..ea70647344 100644 --- a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib +++ b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib @@ -113,6 +113,7 @@ }, { ACTIONS = { + checkForUpdate = id; clearRecentItems = id; closeError = id; intfOpenDisc = id; @@ -171,6 +172,7 @@ "o_mi_bwd" = id; "o_mi_channels" = id; "o_mi_chapter" = id; + "o_mi_checkForUpdate" = id; "o_mi_clear" = id; "o_mi_close_window" = id; "o_mi_controller" = id; diff --git a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib index f42644ee8d..5088df28d1 100644 --- a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib +++ b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib @@ -21,11 +21,11 @@ IBOpenObjects + 2197 29 21 - 2197 IBSystem Version - 8G32 + 8H14 diff --git a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/keyedobjects.nib b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/keyedobjects.nib index 8317dac0443dd983cf9d1270f98f3e9195fda641..87d50b9ad2742948971c2c8312c37a3c6e1d2e2c 100644 GIT binary patch delta 54165 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�OI6bIw>Ox|Q0%7{9Z)1c;bwmbPudKK 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 MmH+1dJTm3~0DPjzd;kCd delta 54014 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

-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∾bGyC;W6Q<`6xdxU(8qX^?WPe&HpM!iG{^tVo9--SXQhc#)z?E zb+MLMS8O0Q7MqDJ#WrG`7%wJ>oyBfqPcc#KCwc~oL&Ra?NO6ofUYsOO6=#UE#W~_! zah|wPTq355D@2dDMqDp$61R#w#NFaPF-<%y9urT9r^R#P1@V%2RlFf)hQ3Q0w!5+3OXsf<)!sw7pB zs!27aI#PY9k zN|6>wi>0N~a%rWsT3RP40=dIw~EPPDy8_Kc&BN@a#%U0oKQ|H=adV|CFQDeL&;F?DEE|y z$`j?e@=AHD{HtUsxI!wl;#YE%{}fgclut^&A}g9=Dvt6+Eua?is72Kh>JMrewY*wM zt)f;_YpQkB`f4M!soFwqt+rF!s~y!&YFD*~+FR|b4p0ZHL)8)LXmy-AQJtbrS7)h7 zYOIV%OV#D-N_DlmPTi<(QMaqR)V=Bf^^kg0J+7Wo&#Hf_f2mj0>*_7_wt826 zpgvYT&(xRd8#Pn)s+dZs*{V+ss<|puc{QwlRwY$c4b@g7>No8>Sf~}(qP5amIjy2r zS*xnm&}wV-w1!#}t-01pYpeaJbZL_vb+o|o*_G<^VBU-w4Qahua*Dh+8wQJf&^6*dK*1XkJl6Q&ic@9dQUx3@23ychv>ufk@^^Yygo^vs?X48 z>vQzE`aFH1zC=&eSLhynjlN#rq;J)C=)3iOdYXP%Kc=71PwVIO3;HGfs(wSy(C?(p z?DpML5p_k^bxU{kuSS$n$S7)*Fn%z~80C#hMirx~QNyTh)H50yO^oJ7E2E7OXT%!` zMrWg&(bGsY`WXX_!NyQygfZF}XG}Dv7}JeeMv{?iq!{y!MaB{%)mUzo zW2>>l*lp}H(u~8#G2?`B+GCtEE*O`LtHuo@!?Sj%|j#=MqWHvQhn61pV zW}F#sCYYVgZe~w2(d=gqG>4eO%#r38bG+Ggk~zhkZq723%w#jgoNq2Ne>azzf0(Px zwdMwMv$@UOY3?!in+MG!X1aOOJZ+vcFPN9itL6v&FX0-TK%kn z)(~r$HPRYwjk6|NQ>^LMEGx-Mwo@hVuZ3BJm2ELr!1`!~EY3n!o+Vm} zrCXNeT3_ubyRco%E@_vt%i0y}7(3RkZr8Hw+70Z+b~C%B-P&$vx3@dmo$Ri554*SB z*B)RGwujmy?9sMooITN=Vo$ec*-3V?onkMr7u&zv%j`ewRrXqYgT2|_X79B3*!%1Q z_96SIecV1}pSAzA|FW;x*X>*OZTqhMz`dEhV>V%D+deyJ=i1QbZDi-! zqOI7vZP~8<)roQnJH?!mPAR91Q{LlLa;iAhoSIG@r@qt3Y3j6aT08BW_D)Bqlhf7d z;q-R;Is=@+&QNEBGuj#FOmwC=)16sPl9TMDI18M`&QfQ&v(j1ZtaCOxTb%9AE@!WE zz&Yd`b&flyoU_iK&R@b@UE-#?D_oDe+Fj>v^tfBx z?d~pjuY15fqsS&9isTXM&X%cB3X%%T3 r`6<#V(k0R-(l^p + + + + IBDocumentLocation + 19 61 356 240 0 0 1440 878 + IBFramework Version + 443.0 + IBOpenObjects + + 5 + + IBSystem Version + 8H14 + + diff --git a/extras/MacOSX/Resources/English.lproj/Update.nib/keyedobjects.nib b/extras/MacOSX/Resources/English.lproj/Update.nib/keyedobjects.nib new file mode 100644 index 0000000000000000000000000000000000000000..de6aa359131a64250285cc86e510c029657d6eb6 GIT binary patch literal 10009 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 + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + *****************************************************************************/ + +#import +#import + +@interface VLCUpdate : NSObject +{ + IBOutlet id o_btn_DownloadNow; + IBOutlet id o_btn_okay; + IBOutlet id o_fld_releaseNote; + IBOutlet id o_fld_source; + IBOutlet id o_fld_currentVersionAndSize; + IBOutlet id o_fld_status; + IBOutlet id o_update_window; + IBOutlet id o_bar_checking; + IBOutlet id o_lbl_checkForUpdate; + + NSString * o_hashOfOurBinary; + NSString * o_urlOfBinary; + update_t * p_u; +} + +- (IBAction)download:(id)sender; +- (IBAction)okay:(id)sender; + +- (void)showUpdateWindow; +- (void)initStrings; +- (void)checkForUpdate; +- (void)performDownload:(NSString *)path; + ++ (VLCUpdate *)sharedInstance; + +@end diff --git a/modules/gui/macosx/update.m b/modules/gui/macosx/update.m new file mode 100644 index 0000000000..3045b3a6a3 --- /dev/null +++ b/modules/gui/macosx/update.m @@ -0,0 +1,253 @@ +/***************************************************************************** + * update.m: MacOS X Check-For-Update window + ***************************************************************************** + * Copyright (C) 2005 the VideoLAN team + * $Id$ + * + * Authors: Felix KŸhne + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + *****************************************************************************/ + + +/***************************************************************************** + * Note: the code used to communicate with VLC's core was inspired by + * ../wxwidgets/dialogs/updatevlc.cpp, written by Antoine Cellerier. + *****************************************************************************/ + + +/***************************************************************************** + * Preamble + *****************************************************************************/ +#import "update.h" +#import "intf.h" + + +/***************************************************************************** + * VLCExtended implementation + *****************************************************************************/ + +@implementation VLCUpdate + +static VLCUpdate *_o_sharedInstance = nil; + ++ (VLCUpdate *)sharedInstance +{ + return _o_sharedInstance ? _o_sharedInstance : [[self alloc] init]; +} + +- (id)init +{ + if (_o_sharedInstance) { + [self dealloc]; + } else { + _o_sharedInstance = [super init]; + } + + return _o_sharedInstance; +} + +- (void)awakeFromNib +{ + /* clean the interface */ + [o_fld_releaseNote setString: @""]; + + [self initStrings]; +} + +- (void)dealloc +{ + if( o_hashOfOurBinary ) + [o_hashOfOurBinary release]; + if( o_urlOfBinary ) + [o_urlOfBinary release]; + [super dealloc]; +} + +- (void)initStrings +{ + /* translate strings to the user's language */ + [o_update_window setTitle: _NS("Check for update")]; + [o_btn_DownloadNow setTitle: _NS("Download now")]; + [o_btn_okay setTitle: _NS("OK")]; +} + +- (void)showUpdateWindow +{ + /* show the window and check for a potential update */ + [o_fld_status setStringValue: _NS("Checking for Update...")]; + [o_fld_currentVersionAndSize setStringValue: @""]; + [o_fld_releaseNote setString: @""]; + + [o_update_window center]; + [o_update_window displayIfNeeded]; + [o_update_window makeKeyAndOrderFront:nil]; + + [o_bar_checking startAnimation: self]; + [self checkForUpdate]; + [o_bar_checking stopAnimation: self]; + [o_lbl_checkForUpdate setHidden: YES]; +} + +- (IBAction)download:(id)sender +{ + /* enable the following once full notification support is available + * provide a save dialogue * + SEL sel = @selector(getLocationForSaving:returnCode:contextInfo:); + NSSavePanel * saveFilePanel = [[NSSavePanel alloc] init]; + + [saveFilePanel setRequiredFileType: @"dmg"]; + [saveFilePanel setCanSelectHiddenExtension: YES]; + [saveFilePanel setCanCreateDirectories: YES]; + [saveFilePanel beginSheetForDirectory:nil file:nil modalForWindow: \ + o_update_window modalDelegate:self didEndSelector:sel contextInfo:nil];*/ + + /* delete this afterwards */ + [self performDownload: @""]; +} + +- (void)getLocationForSaving: (NSSavePanel *)sheet returnCode: \ + (int)returnCode contextInfo: (void *)contextInfo +{ + if (returnCode == NSOKButton) + { + /* perform download and pass the selected path */ + [self performDownload: [sheet filename]]; + } + [sheet release]; +} + +- (IBAction)okay:(id)sender +{ + /* just close the window */ + [o_update_window close]; +} + +- (void)checkForUpdate +{ + p_u = update_New( VLCIntf ); + update_Check( p_u, VLC_FALSE ); + update_iterator_t *p_uit = update_iterator_New( p_u ); + BOOL releaseChecked = NO; + int x = 0; + + if( p_uit ) + { + p_uit->i_rs = UPDATE_RELEASE_STATUS_NEWER; + p_uit->i_t = UPDATE_FILE_TYPE_ALL; + update_iterator_Action( p_uit, UPDATE_MIRROR ); + + while( update_iterator_Action( p_uit, UPDATE_FILE) != UPDATE_FAIL ) + { + /* if the announced item is of the type "binary", keep it and display + * its details to the user. Do similar stuff on "info". Do both + * only if the file is announced as stable */ + if( p_uit->release.i_type == UPDATE_RELEASE_TYPE_STABLE ) + { + if( p_uit->file.i_type == UPDATE_FILE_TYPE_INFO ) + { + [o_fld_releaseNote setString: \ + [NSString stringWithUTF8String: \ + (p_uit->file.psz_description)]]; + } + else if( p_uit->file.i_type == UPDATE_FILE_TYPE_BINARY ) + { + msg_Dbg( VLCIntf, "binary found, version = %s" \ + ", hash=%s", p_uit->release.psz_version, \ + p_uit->file.psz_md5 ); + [o_fld_currentVersionAndSize setStringValue: \ + [NSString stringWithFormat: \ + @"The current release is %s (%i MB to download).", \ + p_uit->release.psz_version, p_uit->file.l_size]]; + + if( o_urlOfBinary ) + [o_urlOfBinary release]; + o_urlOfBinary = [[NSString alloc] initWithUTF8String: \ + p_uit->file.psz_url]; + + /* save the hash of our file, if available */ + if( p_uit->file.psz_md5 ) + { + if( o_hashOfOurBinary ) + [o_hashOfOurBinary release]; + o_hashOfOurBinary = [[NSString alloc] \ + initWithUTF8String: p_uit->file.psz_md5]; + } + } + if( p_uit->release.i_status == UPDATE_RELEASE_STATUS_NEWER && + !releaseChecked ) + { + /* our version is outdated, let the user download the new + * release */ + [o_fld_status setStringValue: _NS("Your version of VLC " \ + "is outdated.")]; + [o_btn_DownloadNow setEnabled: YES]; + msg_Dbg( VLCIntf, "this version of VLC is outdated" ); + /* put the mirror information */ + msg_Dbg( VLCIntf, "used mirror: %s, %s [%s]", \ + p_uit->mirror.psz_name, p_uit->mirror.psz_location,\ + p_uit->mirror.psz_type ); + /* make sure that we perform this check only once */ + releaseChecked = YES; + } + else if(! releaseChecked ) + { + [o_fld_status setStringValue: _NS("Your version of VLC " \ + "is up-to-date.")]; + [o_btn_DownloadNow setEnabled: NO]; + msg_Dbg( VLCIntf, "current version is up-to-date" ); + releaseChecked = YES; + } + } + x += 1; + } + update_iterator_Delete( p_uit ); + } +} + +- (void)performDownload:(NSString *)path +{ + /* enable this once notifications are completely available on OSX + update_iterator_t *p_uit = update_iterator_New( p_u ); + if( p_uit ) + { + update_iterator_Action( p_uit, UPDATE_MIRROR ); + + int i_count = 0; + while( update_iterator_Action( p_uit, UPDATE_FILE ) != UPDATE_FAIL ) + { + if( p_uit->file.psz_url == [o_hashOfOurBinary UTF8String] ) + break; + i_count += 1; + } + + + update_download( p_uit, (char *)[path UTF8String] ); + + update_iterator_Delete( p_uit ); + }*/ + + /* delete the following afterwards */ + msg_Dbg( VLCIntf, "url is %s, using default browser for download", \ + [o_urlOfBinary UTF8String] ); + + NSURL * o_url = [NSURL URLWithString: o_urlOfBinary]; + + [[NSWorkspace sharedWorkspace] openURL: o_url]; + + [o_update_window close]; +} + +@end -- 2.39.2