Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc
Commits
e98e8435
Commit
e98e8435
authored
Nov 27, 2007
by
Felix Paul Kühne
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* announce the update facility removal and fix make dist (broken in previous commit)
parent
c663c6d7
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
1 addition
and
357 deletions
+1
-357
Makefile.am
Makefile.am
+0
-7
NEWS
NEWS
+1
-0
modules/gui/macosx/update.h
modules/gui/macosx/update.h
+0
-53
modules/gui/macosx/update.m
modules/gui/macosx/update.m
+0
-297
No files found.
Makefile.am
View file @
e98e8435
...
...
@@ -73,9 +73,6 @@ EXTRA_DIST += \
extras/MacOSX/Resources/English.lproj/Extended.nib/classes.nib
\
extras/MacOSX/Resources/English.lproj/Extended.nib/info.nib
\
extras/MacOSX/Resources/English.lproj/Extended.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/Interaction.nib/classes.nib
\
extras/MacOSX/Resources/English.lproj/Interaction.nib/info.nib
\
extras/MacOSX/Resources/English.lproj/Interaction.nib/keyedobjects.nib
\
...
...
@@ -417,8 +414,6 @@ VLC-release.app: vlc
extended.m
\
bookmarks.h
\
bookmarks.m
\
update.h
\
update.m
\
interaction.h
\
interaction.m
\
embeddedwindow.h
\
...
...
@@ -555,8 +550,6 @@ VLC.app: vlc
extended.m
\
bookmarks.h
\
bookmarks.m
\
update.h
\
update.m
\
interaction.h
\
interaction.m
\
embeddedwindow.h
\
...
...
NEWS
View file @
e98e8435
...
...
@@ -28,6 +28,7 @@ Encoders:
* Improved H.264 encoding speed on Mac OS X
Other changes:
* The automatic updating facility was removed
* You now need to append --m3u-extvlcopt to your command line to enable
EXTVLCOPT options parsing in m3u playlists.
...
...
modules/gui/macosx/update.h
deleted
100644 → 0
View file @
c663c6d7
/*****************************************************************************
* update.h: MacOS X Check-For-Update window
*****************************************************************************
* Copyright (C) 2005-2006 the VideoLAN team
* $Id$
*
* Authors: Felix Khne <fkuehne@users.sf.net>
*
* 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 <Cocoa/Cocoa.h>
#import <vlc_update.h>
@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
;
NSString
*
o_urlOfBinary
;
update_t
*
p_u
;
intf_thread_t
*
p_intf
;
}
-
(
IBAction
)
download
:(
id
)
sender
;
-
(
IBAction
)
okay
:(
id
)
sender
;
-
(
void
)
showUpdateWindow
;
-
(
void
)
initStrings
;
-
(
void
)
checkForUpdate
;
-
(
void
)
performDownload
:(
NSString
*
)
path
;
+
(
VLCUpdate
*
)
sharedInstance
;
@end
modules/gui/macosx/update.m
deleted
100644 → 0
View file @
c663c6d7
/*****************************************************************************
* update.m: MacOS X Check-For-Update window
*****************************************************************************
* Copyright (C) 2005-2006 the VideoLAN team
* $Id$
*
* Authors: Felix Khne <fkuehne@users.sf.net>
*
* 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
{
/* get up */
p_intf
=
VLCIntf
;
/* clean the interface */
[
o_fld_releaseNote
setString
:
@""
];
[
self
initStrings
];
}
-
(
void
)
dealloc
{
if
(
o_urlOfBinary
)
[
o_urlOfBinary
release
];
[
super
dealloc
];
}
-
(
void
)
initStrings
{
/* translate strings to the user's language */
[
o_update_window
setTitle
:
_NS
(
"Check for Updates"
)];
[
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 Updates..."
)];
[
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
];
}
-
(
IBAction
)
download
:(
id
)
sender
{
/* 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
:
\
[[
o_urlOfBinary
componentsSeparatedByString
:
@"/"
]
lastObject
]
\
modalForWindow
:
o_update_window
modalDelegate
:
self
didEndSelector
:
sel
\
contextInfo
:
nil
];
}
-
(
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
(
p_intf
);
update_Check
(
p_u
,
VLC_FALSE
);
update_iterator_t
*
p_uit
=
update_iterator_New
(
p_u
);
BOOL
releaseChecked
=
NO
;
BOOL
gettingReleaseNote
=
NO
;
int
x
=
0
;
NSString
*
pathToReleaseNote
;
pathToReleaseNote
=
[
NSString
stringWithFormat
:
\
@"/tmp/vlc_releasenote_%d.tmp"
,
mdate
()];
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
)
{
msg_Dbg
(
p_intf
,
"parsing available updates, run %i"
,
x
);
/* 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
)
{
msg_Dbg
(
p_intf
,
"release note found, desc = %s"
,
p_uit
->
file
.
psz_description
);
[
o_fld_releaseNote
setString
:
\
[
NSString
stringWithUTF8String
:
\
(
p_uit
->
file
.
psz_description
)]];
/* download our release note
* We will read the temp file after this loop */
update_download
(
p_uit
,
(
char
*
)[
pathToReleaseNote
UTF8String
]
);
gettingReleaseNote
=
YES
;
}
else
if
(
p_uit
->
file
.
i_type
==
UPDATE_FILE_TYPE_BINARY
)
{
msg_Dbg
(
p_intf
,
"binary found, version = %s, "
\
"url=%s, size=%i MB"
,
p_uit
->
release
.
psz_version
,
\
p_uit
->
file
.
psz_url
,
\
(
int
)((
p_uit
->
file
.
l_size
/
1024
)
/
1024
)
);
[
o_fld_currentVersionAndSize
setStringValue
:
[
NSString
\
stringWithFormat
:
\
_NS
(
"The latest VLC media player release "
\
"is %s (%i MB to download)."
),
\
p_uit
->
release
.
psz_version
,
((
p_uit
->
file
.
l_size
\
/
1024
)
/
1024
)]];
if
(
o_urlOfBinary
)
[
o_urlOfBinary
release
];
o_urlOfBinary
=
[[
NSString
alloc
]
initWithUTF8String
:
\
p_uit
->
file
.
psz_url
];
}
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
(
"This version of VLC "
\
"is outdated."
)];
[
o_btn_DownloadNow
setEnabled
:
YES
];
msg_Dbg
(
p_intf
,
"this version of VLC is outdated"
);
/* put the mirror information */
msg_Dbg
(
p_intf
,
"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
(
"This version of VLC "
\
"is latest available."
)];
[
o_btn_DownloadNow
setEnabled
:
NO
];
msg_Dbg
(
p_intf
,
"current version is up-to-date"
);
releaseChecked
=
YES
;
}
}
x
+=
1
;
}
update_iterator_Delete
(
p_uit
);
/* wait for our release notes if necessary, since the download is done
* by another thread -- this does usually take 300000 to 500000 ms */
if
(
gettingReleaseNote
)
{
int
i
=
0
;
while
(
[[
NSFileManager
defaultManager
]
fileExistsAtPath
:
pathToReleaseNote
]
==
NO
)
{
msleep
(
100000
);
i
+=
1
;
if
(
i
==
150
)
{
/* if this takes more than 15 sec, exit */
msg_Warn
(
p_intf
,
"download took more than 15 sec, exiting"
);
break
;
}
}
msg_Dbg
(
p_intf
,
"waited %i ms for the release notes"
,
(
i
*
100000
)
);
msleep
(
500000
);
/* let's open our cached release note and display it
* we can't use NSString stringWithContentsOfFile:encoding:error:
* since it is Tiger only */
NSString
*
releaseNote
=
[[
NSString
alloc
]
initWithData
:
\
[
NSData
dataWithContentsOfFile
:
pathToReleaseNote
]
\
encoding
:
NSISOLatin1StringEncoding
];
if
(
releaseNote
)
[
o_fld_releaseNote
setString
:
releaseNote
];
/* delete the file since it isn't needed anymore */
BOOL
myBOOL
=
NO
;
myBOOL
=
[[
NSFileManager
defaultManager
]
removeFileAtPath
:
\
pathToReleaseNote
handler
:
nil
];
}
else
{
/* don't confuse the user, but make her happy */
[
o_fld_status
setStringValue
:
_NS
(
"This version of VLC "
\
"is latest available."
)];
[
o_btn_DownloadNow
setEnabled
:
NO
];
msg_Dbg
(
p_intf
,
"current version is up-to-date"
);
msg_Warn
(
p_intf
,
"retrieving current release notes failed!"
);
}
}
}
-
(
void
)
performDownload
:(
NSString
*
)
path
{
update_iterator_t
*
p_uit
=
update_iterator_New
(
p_u
);
if
(
p_uit
)
{
update_iterator_Action
(
p_uit
,
UPDATE_MIRROR
);
while
(
update_iterator_Action
(
p_uit
,
UPDATE_FILE
)
!=
UPDATE_FAIL
)
{
if
(
p_uit
->
release
.
i_type
==
UPDATE_RELEASE_TYPE_STABLE
&&
p_uit
->
release
.
i_status
==
UPDATE_RELEASE_STATUS_NEWER
&&
p_uit
->
file
.
i_type
==
UPDATE_FILE_TYPE_BINARY
)
{
/* put the mirror information */
msg_Dbg
(
p_intf
,
"used mirror: %s, %s [%s]"
,
\
p_uit
->
mirror
.
psz_name
,
p_uit
->
mirror
.
psz_location
,
\
p_uit
->
mirror
.
psz_type
);
/* that's our binary */
update_download
(
p_uit
,
(
char
*
)[
path
UTF8String
]
);
}
}
update_iterator_Delete
(
p_uit
);
}
[
o_update_window
close
];
}
@end
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment