[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-10851-g50815da

paroga at webkit.org paroga at webkit.org
Wed Dec 22 17:51:04 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 59a7d7623fa3b85b61db6828633d39aefdc106a4
Author: paroga at webkit.org <paroga at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Dec 1 16:49:35 2010 +0000

    2010-12-01  Patrick Gansterer  <paroga at webkit.org>
    
            Reviewed by Adam Roben.
    
            [WINCE] Add WinCELauncher
            https://bugs.webkit.org/show_bug.cgi?id=50217
    
            * WinCELauncher/main.cpp: Added.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@73026 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index e6c0053..0e7fc9b 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,12 @@
+2010-12-01  Patrick Gansterer  <paroga at webkit.org>
+
+        Reviewed by Adam Roben.
+
+        [WINCE] Add WinCELauncher
+        https://bugs.webkit.org/show_bug.cgi?id=50217
+
+        * WinCELauncher/main.cpp: Added.
+
 2010-11-30  Benjamin Poulain  <benjamin.poulain at nokia.com>
 
         Reviewed by Kenneth Rohde Christiansen.
diff --git a/WebKitTools/WinCELauncher/main.cpp b/WebKitTools/WinCELauncher/main.cpp
new file mode 100644
index 0000000..36c6606
--- /dev/null
+++ b/WebKitTools/WinCELauncher/main.cpp
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 2010 Patrick Gansterer <paroga at paroga.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "WebView.h"
+#include <windows.h>
+
+static const LPCWSTR kMainWindowTitle = L"WebKit for WinCE";
+static const LPCWSTR kMainWindowClassName = L"MainWindowClass";
+
+
+static LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+{
+    switch (message) {
+    case WM_DESTROY:
+        PostQuitMessage(0);
+        break;
+
+    default:
+        return DefWindowProc(hWnd, message, wParam, lParam);
+    }
+
+    return 0;
+}
+
+int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
+{
+    UNREFERENCED_PARAMETER(hPrevInstance);
+
+    CoInitializeEx(0, COINIT_MULTITHREADED);
+    WebView::initialize(hInstance);
+
+    LPCWSTR homeUrl = lpCmdLine;
+    bool enableDoubleBuffer = true;
+    bool fullscreen = false;
+
+    if (homeUrl[0] == '-') {
+        for (; *homeUrl && *homeUrl != ' '; ++homeUrl) {
+            switch (*homeUrl) {
+            case 'd':
+                enableDoubleBuffer = false;
+                break;
+            case 'f':
+                fullscreen = true;
+                break;
+            default:
+                break;
+            }
+        }
+        if (*homeUrl)
+            ++homeUrl;
+    }
+
+    DWORD styles = WS_VISIBLE;
+
+    if (!fullscreen) {
+        styles |= WS_CAPTION
+            | WS_MAXIMIZEBOX
+            | WS_MINIMIZEBOX
+            | WS_OVERLAPPED
+            | WS_SYSMENU
+            | WS_THICKFRAME;
+    }
+
+    WNDCLASSW wc;
+    wc.style          = CS_HREDRAW | CS_VREDRAW;
+    wc.lpfnWndProc    = WndProc;
+    wc.cbClsExtra     = 0;
+    wc.cbWndExtra     = 0;
+    wc.hInstance      = hInstance;
+    wc.hIcon          = 0;
+    wc.hCursor        = 0;
+    wc.hbrBackground  = static_cast<HBRUSH>(GetStockObject(WHITE_BRUSH));
+    wc.lpszMenuName   = 0;
+    wc.lpszClassName  = kMainWindowClassName;
+    RegisterClass(&wc);
+
+    HWND hMainWindow = CreateWindowW(kMainWindowClassName, kMainWindowTitle, styles,
+        CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, 0, 0, hInstance, 0);
+
+    if (fullscreen) {
+        SetWindowPos(hMainWindow, HWND_TOPMOST, 0, 0, GetSystemMetrics(SM_CXSCREEN),
+            GetSystemMetrics(SM_CYSCREEN), SWP_SHOWWINDOW);
+    }
+
+    ShowWindow(hMainWindow, nCmdShow);
+    UpdateWindow(hMainWindow);
+
+    WTF::OwnPtr<WebView> webView = WTF::adoptPtr(new WebView(hMainWindow, enableDoubleBuffer ? WebView::EnableDoubleBuffering : WebView::NoFeature));
+    webView->load(homeUrl);
+
+    // Main message loop:
+    MSG msg;
+    BOOL bRet;
+    while (bRet = GetMessage(&msg, 0, 0, 0)) {
+        if (bRet == -1) {
+            // FIXME: Handle the error and possibly exit.
+        } else {
+            TranslateMessage(&msg);
+            DispatchMessage(&msg);
+        }
+    }
+
+    webView.clear();
+    DestroyWindow(hMainWindow);
+
+    WebView::cleanup();
+    CoUninitialize();
+
+    return msg.wParam;
+}

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list