[Sugar-devel] [PATCH browse] Append the current Sugar (Sucrose) version to the user agent

Thomas C Gilliard satellit at bendbroadband.com
Mon Jan 23 10:25:57 EST 2012



On 01/23/2012 07:07 AM, Manuel Quiñones wrote:
> El día 16 de enero de 2012 08:52, Simon Schampijer
> <simon at schampijer.de>  escribió:
>> This identifier is used in ASLO to determine which activities
>> can be downloaded (ASLO is parsing the user agent of the Browser
>> to provide an appropriate activity version, if it fails to get
>> the Sugar version from the agent string, it uses the last stable version,
>> which is 0.94 at the moment).
> Tested, previously I got:
>
> Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.4+ (KHTML, like Gecko)
> Version/5.0 Safari/535.4+
>
> Now I got:
>
> Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.4+ (KHTML, like Gecko)
> Version/5.0 Safari/535.4+ Sugar Labs/0.96
>
> And works in activities.sugarlabs.org .
>
Comment: If a user wants to download the activity.xo file to a USB-stick 
for  installation later to a different version of Sugar?
Maybe a check-box to bypass the filter on the ASLO page should be added.

Tom Gilliard
>> One thing that is not perfectly handled by this patch is that we
>> need to modify the user agent for every WebView (see [1]).
> I don't find a problem adding the user agent to each webview, at least
> until the webkit hackers add a global setting.
>
>> Furthermore we need to modify the Sugar version in Browse accordingly
>> with each Sugar release as the Sugar version is only availble in the
>> shell and not in the toolkit.
> I hope the tookit changes accordingly so we don't have to hardcore
> that in activities.
>
> Acked-by: Manuel Quiñones<manuq at laptop.org>
>
>> [1] https://lists.webkit.org/pipermail/webkit-gtk/2012-January/000893.html
>>
>> Signed-off-by: Simon Schampijer<simon at laptop.org>
>> ---
>>   browser.py |    7 +++++++
>>   1 files changed, 7 insertions(+), 0 deletions(-)
>>
>> diff --git a/browser.py b/browser.py
>> index 83cc7ea..c5165db 100644
>> --- a/browser.py
>> +++ b/browser.py
>> @@ -383,9 +383,16 @@ class Browser(WebKit.WebView):
>>                      ([str])),
>>      }
>>
>> +    CURRENT_SUGAR_VERSION = '0.96'
>> +
>>      def __init__(self):
>>          WebKit.WebView.__init__(self)
>>
>> +        web_settings = self.get_settings()
>> +        identifier = ' Sugar Labs/' + self.CURRENT_SUGAR_VERSION
>> +        web_settings.props.user_agent += identifier
>> +        self.set_settings(web_settings)
>> +
>>          # Reference to the global history and callbacks to handle it:
>>          self._global_history = globalhistory.get_global_history()
>>          self.connect('notify::load-status', self.__load_status_changed_cb)
>> --
>> 1.7.7.5
>>
>> _______________________________________________
>> Sugar-devel mailing list
>> Sugar-devel at lists.sugarlabs.org
>> http://lists.sugarlabs.org/listinfo/sugar-devel
>
>


More information about the Sugar-devel mailing list